1 2017-12-28 Fujii Hironori <Hironori.Fujii@sony.com>
3 [Win][CMake] Use add_custom_command to copy each forwarding header files
4 https://bugs.webkit.org/show_bug.cgi?id=180921
6 Reviewed by Brent Fulgham.
8 TestWTFLib needs forwarding headers of WebCore. Use
9 add_dependencies instead of invoking the DerivedSources/WebCore/preBuild.cmd.
11 * TestWebKitAPI/PlatformWin.cmake:
13 2017-12-22 Wenson Hsieh <wenson_hsieh@apple.com>
15 Unreviewed, try to fix the Sierra build again after r226277.
17 The macOS 10.12 SDK does not know about NSControlStateValue. Apply the same tweak in r226279, but to MiniBrowser
20 * MiniBrowser/AppKitCompatibilityDeclarations.h:
22 2017-12-22 Wenson Hsieh <wenson_hsieh@apple.com>
24 Fix build failures due to using deprecated AppKit symbols
25 https://bugs.webkit.org/show_bug.cgi?id=181110
26 <rdar://problem/36162865>
28 Reviewed by Dan Bernstein and Tim Horton.
30 Transition to non-deprecated AppKit constants in MiniBrowser.
32 * MiniBrowser/AppKitCompatibilityDeclarations.h: Added.
33 * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
34 * MiniBrowser/mac/SettingsController.m:
35 (-[SettingsController validateMenuItem:]):
36 * MiniBrowser/mac/WK1BrowserWindowController.m:
37 (-[WK1BrowserWindowController validateMenuItem:]):
38 * MiniBrowser/mac/WK2BrowserWindowController.m:
39 (-[WK2BrowserWindowController validateMenuItem:]):
41 2017-12-21 Michael Catanzaro <mcatanzaro@igalia.com>
43 [WPE][GTK] Deprecate and replace webkit_form_submission_request_get_text_fields
44 https://bugs.webkit.org/show_bug.cgi?id=176725
46 Reviewed by Carlos Garcia Campos.
48 Test the new function.
50 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
51 (testWebViewSubmitForm):
53 2017-12-22 Jonathan Bedard <jbedard@apple.com>
55 webkitpy: Refactor simulator code (Part 1)
56 https://bugs.webkit.org/show_bug.cgi?id=180555
57 <rdar://problem/36131381>
59 Reviewed by Alexey Proskuryakov.
61 The new SimulatedDeviceManager defined in this patch is designed to
62 act as a singleton. Consumers may request devices with certain
63 attributes, the the manager will then return a list of devices fulfilling the
64 request. The manager will pick between:
65 - Existing and booted simulators
66 - Existing simulators currently shut down
67 - Custom constructed simulators
68 These simulators will then be globally available.
70 This patch duplicates code in webkitpy/xcode/simulated_device.py,
71 webkitpy/xcode/simulator.py and webkitpy/port/ios_simulator.py. This duplicated
72 code will be removed in parts 2 and 3.
74 * Scripts/webkitpy/common/version_name_map.py:
75 (VersionNameMap.__init__): Add tvOS and watchOS.
76 * Scripts/webkitpy/xcode/device_type.py: Added.
77 (DeviceType): Holds the software and hardware information for a specific device.
78 Designed to allow for partial matching.
79 (DeviceType.from_string): Parses a string (such as iPhone 6s) into a DeviceType
81 (DeviceType._define_software_variant_from_hardware_family): The software_variant
82 of a device can usually be implied from its hardware_family.
83 (DeviceType.check_consistency): Verify that the software_variant matches the
84 hardware_family and that software_version and hardware_variant have their
85 respective prerequisites.
86 (DeviceType.__init__):
87 (DeviceType.__str__): Converts a DeviceType object into a human readable string.
88 (DeviceType.__eq__): Compares two DeviceType objects treating None as a wildcard.
89 (DeviceType.__contains__): Allow partial version mapping.
90 * Scripts/webkitpy/xcode/device_type_unittest.py: Added.
92 (DeviceTypeTest.test_iphone_initialization):
93 (DeviceTypeTest.test_ipad_initialization):
94 (DeviceTypeTest.test_generic_ios_device):
95 (DeviceTypeTest.test_watch_initialization):
96 (DeviceTypeTest.test_tv_initialization):
97 (DeviceTypeTest.test_from_string):
98 (DeviceTypeTest.test_comparison):
99 (DeviceTypeTest.test_contained_in):
100 * Scripts/webkitpy/xcode/new_simulated_device.py: Added.
101 (DeviceRequest): Adds additional options to be used when requesting a device.
102 (DeviceRequest.__init__):
103 (SimulatedDeviceManager):
104 (SimulatedDeviceManager.Runtime): Representation of a supported simulated runtime.
105 Designed as an internal representation, not to be used outside this class.
106 (SimulatedDeviceManager.Runtime.__init__):
107 (SimulatedDeviceManager._create_runtimes): Extract a list of available runtimes.
108 (SimulatedDeviceManager._create_device_with_runtime): Return a new or existing device
109 with the provided runtime matching the provided dictionary.
110 (SimulatedDeviceManager.populate_available_devices): Use simctl to update the list of devices
111 available on this machine.
112 (SimulatedDeviceManager.available_devices): Populate the list of available device if empty
113 and return that list.
114 (SimulatedDeviceManager._find_exisiting_device_for_request): Return an existing device matching
115 the provided request if one exists.
116 (SimulatedDeviceManager._find_available_name): Given a name base, return a string which
117 does not match the name of an initialized device.
118 (SimulatedDeviceManager. get_runtime_for_device_type): Map device type to runtime object.
119 (SimulatedDeviceManager._disambiguate_device_type): The user may have requested a DeviceType
120 with only partial definitions. In this case, use existing runtimes and devices to generate
121 a DeviceType to build.
122 (SimulatedDeviceManager._get_device_identifier_for_type): Return a simctl device type string
123 given a DeviceType object.
124 (SimulatedDeviceManager._create_or_find_device_for_request): Given a DeviceRequest object,
125 either find an existing device which matches the request or create one matching
126 (SimulatedDeviceManager._does_fulfill_request): Given a device and list of requests, return
127 the request which the provided device matches, if there are any.
128 (SimulatedDeviceManager._wait_until_device_in_state): Wait until a device enters a specific
130 (SimulatedDeviceManager.initialize_devices): Given a list of requests, return a list
131 of devices which fulfill the requests. This function will use both existing devices
132 and create devices. This function will also start the Simulator.app.
133 (SimulatedDeviceManager.max_supported_simulators): Uses the number of available cores,
134 maximum number of processes and the available RAM to calculate the number of
135 simulated devices this machine can support.
136 (SimulatorManager.swap): Shuts down the specified device and boots a new one which
137 matches the specified request.
138 (SimulatorManager.tear_down): Shut down any simulators managed by this class.
140 (SimulatedDevice.DeviceState): Copied from webkitpy/xcode/simulator.py.
141 (SimulatedDevice.__init__):
142 (SimulatedDevice.state): Use the device's plist to determine the current state of
143 the device. Note that this function will cache the result for a second.
144 (SimulatedDevice.is_booted_or_booting):
145 (SimulatedDevice._shut_down): Shut down this device and remove it from the list of
147 (SimulatedDevice._delete): Delete this device and remove it from the list of
149 (SimulatedDevice._tear_down): Shut down and delete this device, if it is managed by
150 the SimulatorManager.
151 (SimulatedDevice.install_app): Copied from webkitpy/xcode/simulated_device.py.
152 (SimulatedDevice.launch_app): Ditto.
153 (SimulatedDevice.__eq__): Ditto.
154 (SimulatedDevice.__ne__): Ditto.
155 (SimulatedDevice.__repr__): Map state to string and include device type.
156 * Scripts/webkitpy/xcode/new_simulated_device_unittest.py: Added.
157 (SimulatedDeviceTest):
158 (SimulatedDeviceTest.reset_simulated_device_manager):
159 (SimulatedDeviceTest.tear_down):
160 (SimulatedDeviceTest.mock_host_for_simctl):
161 (device_by_criteria):
162 (test_available_devices):
163 (test_existing_simulator):
165 (test_swapping_devices):
167 2017-12-21 Ling Ho <lingcherd_ho@apple.com>
169 "Release 32-bit Build EWS" queue should be moved up to macOS High Sierra on Bot Watcher's Dashboard
170 https://bugs.webkit.org/show_bug.cgi?id=181071
172 Reviewed by Alexey Proskuryakov.
175 2017-12-21 Mark Lam <mark.lam@apple.com>
177 Add WTF::PoisonedUniquePtr to replace std::unique_ptr when poisoning is desired.
178 https://bugs.webkit.org/show_bug.cgi?id=181062
179 <rdar://problem/36167040>
181 Reviewed by Chris Dumez.
183 * TestWebKitAPI/CMakeLists.txt:
184 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
186 * TestWebKitAPI/Tests/WTF/ConstExprPoisoned.cpp:
187 - Removed an unneeded #include.
189 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp: Added.
190 (TestWebKitAPI::TEST):
191 (TestWebKitAPI::poisonedPtrFoo):
192 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp: Added.
193 (TestWebKitAPI::TEST):
194 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp: Added.
195 (TestWebKitAPI::TEST):
197 2017-12-21 Jeremy Jones <jeremyj@apple.com>
199 Update FULLSCREEN_API feature defines.
200 https://bugs.webkit.org/show_bug.cgi?id=181015
202 Reviewed by Tim Horton.
204 Change enabled iphone sdk for FULLSCREEN_API.
206 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
208 2017-12-21 Don Olmstead <don.olmstead@sony.com>
210 [AppleWin] Auxiliary libraries should be updated within build-webkit
211 https://bugs.webkit.org/show_bug.cgi?id=181065
213 Reviewed by Alex Christensen.
215 * EWSTools/Start-Queue.ps1:
216 * Scripts/build-webkit:
217 (cMakeArgsFromFeatures): Deleted.
218 (writeCongrats): Deleted.
219 * Scripts/update-webkit:
221 2017-12-21 Jer Noble <jer.noble@apple.com>
223 Add initial DOM support for Media Capabilities
224 https://bugs.webkit.org/show_bug.cgi?id=181064
226 Reviewed by Eric Carlson.
228 * DumpRenderTree/mac/DumpRenderTree.mm:
229 (resetWebPreferencesToConsistentValues):
230 * WebKitTestRunner/TestController.cpp:
231 (WTR::TestController::resetPreferencesToConsistentValues):
233 2017-12-21 Guillaume Emont <guijemont@igalia.com>
235 build-jsc: allow to build out of tree
236 https://bugs.webkit.org/show_bug.cgi?id=180810
238 Reviewed by Carlos Alberto Lopez Perez.
242 2017-12-20 Jonathan Bedard <jbedard@apple.com>
244 webkitpy: simctl cannot handle partial runtime version matches
245 https://bugs.webkit.org/show_bug.cgi?id=181055
246 <rdar://problem/36163798>
248 Reviewed by Alexey Proskuryakov.
250 A request for a simulator runtime of iOS 11 should be fulfilled by
253 * Scripts/webkitpy/xcode/simulator.py:
254 (Simulator.runtime): Allow for partial matching of iOS runtime versions.
255 * Scripts/webkitpy/xcode/simulator_unittest.py:
256 (test_failed_partial_version_match): Test that partial version mapping does
257 not give false positives.
259 2017-12-20 Daniel Bates <dabates@apple.com>
261 MarkerSubrange.SubdivideGrammarAndSelectionOverlap{Frontmost, FrontmostWithLongestEffectiveRange} are failing
262 https://bugs.webkit.org/show_bug.cgi?id=181014
264 Reviewed by Simon Fraser.
266 Adds a new test to ensure we compute overlapping subranges in paint order for the default
267 overlap strategy. Enable tests MarkerSubrange.SubdivideGrammarAndSelectionOverlap{Frontmost, FrontmostWithLongestEffectiveRange}
270 * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp:
271 (TestWebKitAPI::TEST):
273 2017-12-20 Daniel Bates <dabates@apple.com>
275 Remove Alternative Presentation Button
276 https://bugs.webkit.org/show_bug.cgi?id=180500
277 <rdar://problem/35891047>
279 Reviewed by Simon Fraser.
281 We no longer need the alternative presentation button.
283 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
284 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
285 * TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm: Removed.
286 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
288 (-[AlternativePresentationButtonDelegate _webView:didClickAlternativePresentationButtonWithUserInfo:]): Deleted.
289 (-[AlternativePresentationButtonDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
291 2017-12-20 Ryosuke Niwa <rniwa@webkit.org>
293 REGRESSION(r222699): Drag & drop from a web page to Gmail fails
294 https://bugs.webkit.org/show_bug.cgi?id=181019
296 Reviewed by Wenson Hsieh.
298 Added assertions for filenames.
300 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
302 2017-12-19 Daniel Bates <dabates@apple.com>
304 MarkerSubrange.SubdivideGrammarAndSelectionOverlap{Frontmost, FrontmostWithLongestEffectiveRange} are failing
305 https://bugs.webkit.org/show_bug.cgi?id=181014
307 Temporarily disable tests while I investigate offline.
309 * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp:
310 (TestWebKitAPI::TEST):
312 2017-12-19 Wenson Hsieh <wenson_hsieh@apple.com>
314 Unreviewed, rebaseline an API test result for El Capitan and Sierra.
316 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
317 (TestWebKitAPI::TEST):
319 2017-12-19 Ryosuke Niwa <rniwa@webkit.org>
321 Don't convert pasted content to use blob URL in WebKit1
322 https://bugs.webkit.org/show_bug.cgi?id=180969
324 Reviewed by Wenson Hsieh.
326 Added API tests to make sure we can access the images in the pasted content.
328 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
329 * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html:
330 * TestWebKitAPI/Tests/WebKitLegacy/mac: Added.
331 * TestWebKitAPI/Tests/WebKitLegacy/mac/AccessingPastedImage.mm: Added.
332 (writeRTFDToPasteboard):
333 (-[SubresourceForBlobURLFrameLoadDelegate webView:didFinishLoadForFrame:]):
334 (-[SubresourceForBlobURLFrameLoadDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
335 (TestWebKitAPI::TEST):
337 2017-12-19 Daniel Bates <dabates@apple.com>
339 Implement InlineTextBox painting using marker subranges
340 https://bugs.webkit.org/show_bug.cgi?id=180984
341 <rdar://problem/36139364>
343 Reviewed by David Hyatt.
345 Update unit tests now that we use subranges for the painting of dragged content.
347 * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp:
348 (WebCore::operator<<):
349 (WebCore::operator==): Deleted; moved to class MarkerSubrange.
351 2017-12-19 Daniel Bates <dabates@apple.com>
353 Add support for computing the frontmost longest effective marker subrange
354 https://bugs.webkit.org/show_bug.cgi?id=180985
356 Reviewed by Dave Hyatt.
358 Adds a test case to ensure that we compute the minimum list of maximal length non-
359 overlapping subranges when using strategy OverlapStrategy::FrontmostWithLongestEffectiveRange.
361 * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp:
362 (TestWebKitAPI::TEST):
364 2017-12-18 Wenson Hsieh <wenson_hsieh@apple.com>
366 [Attachment Support] The 'webkitattachmentbloburl' attribute should not persist after markup serialization
367 https://bugs.webkit.org/show_bug.cgi?id=180924
368 <rdar://problem/36099093>
370 Reviewed by Tim Horton.
372 Tweaks some existing tests to check that temporary attachment serialization attributes don't stick around on the
375 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
376 (-[TestWKWebView hasAttribute:forQuerySelector:]):
377 (TestWebKitAPI::TEST):
379 2017-12-18 Wenson Hsieh <wenson_hsieh@apple.com>
381 [Attachment Support] Support representing pasted or dropped content using attachment elements
382 https://bugs.webkit.org/show_bug.cgi?id=180892
383 <rdar://problem/36064210>
385 Reviewed by Tim Horton.
387 Adds a new API test to exercise pasting an attributed string with multiple attachments of different types.
389 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
391 (platformCopyRichTextWithMultipleAttachments):
392 (TestWebKitAPI::TEST):
394 2017-12-18 Brady Eidson <beidson@apple.com>
396 Add ability to API test Service Workers via a custom protocol.
397 https://bugs.webkit.org/show_bug.cgi?id=180911
399 Reviewed by Chris Dumez.
401 Adds a very basic SW test:
402 - Verify WebsiteDataStore can wipe all SW registration data.
403 - Fire up a web page with a service worker
404 - Verify SW registration data for that page exists in the WebsiteDataStore.
406 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
407 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm: Added.
409 2017-12-18 Wenson Hsieh <wenson_hsieh@apple.com>
411 [Attachment Support] Insert images as inline attachments when pasting and dropping
412 https://bugs.webkit.org/show_bug.cgi?id=180853
413 <rdar://problem/35756268>
415 Reviewed by Tim Horton.
417 Adds new WKAttachment API tests and test support. See comments below for more detail.
419 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
421 Tweak the editing test page markup, such that document.body.innerHTML doesn't additionally contain the contents
424 (webViewForTestingAttachments):
429 (platformCopyRichTextWithAttachment):
431 (platformImageWithData):
433 Add some platform helper functions, which some of the platform-agnostic tests below use to resolve differences
434 between iOS and macOS when writing to the pasteboard and creating an image from data.
436 (TestWebKitAPI::TEST):
438 Add new API tests to exercise drag and drop/copy and paste of rich content (namely, images and files) on iOS and
439 macOS. iOS attachment tests use DataInteractionSimulator to simulate UIKit drag and drop coordination. On macOS,
440 handling of dropped content is much closer to handling of pasted content (they use the same codepaths to read
441 from the platform pasteboard), so exercising paste codepaths on Mac is sufficient.
443 * TestWebKitAPI/ios/DataInteractionSimulator.h:
444 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
445 (-[DataInteractionSimulator _resetSimulatedState]):
446 (-[DataInteractionSimulator insertedAttachments]):
447 (-[DataInteractionSimulator removedAttachments]):
449 Teach the iOS drag and drop simulator to keep track of attachment elements that are inserted during a drop. We
450 also keep track of removed attachments here too, though no default drop handling scenario should trigger
451 attachment removal, so we simply use this to check that no _WKAttachments were removed during a drop.
453 (-[DataInteractionSimulator _webView:didInsertAttachment:]):
454 (-[DataInteractionSimulator _webView:didRemoveAttachment:]):
456 2017-12-18 Fujii Hironori <Hironori.Fujii@sony.com>
458 [WinCairo] Move the destination of WinCairoRequirements.zip into WebKitLibraries and register it and related files as git ignore files.
459 https://bugs.webkit.org/show_bug.cgi?id=180875
460 <rdar://problem/36091434>
462 Reviewed by Darin Adler.
464 update-webkit-wincairo-libs.py gets broken by r226002. Downloaded
465 WinCairoRequirements.zip can not be found to unzip because the
466 destination was changed.
468 * Scripts/update-webkit-wincairo-libs.py: Specify the correct zip path to unzip.
470 2017-12-18 Alexey Proskuryakov <ap@apple.com>
472 BitVector::OutOfLineBits is always reported as a leak
473 https://bugs.webkit.org/show_bug.cgi?id=121662
475 Adding one more signature to ignore list.
477 * Scripts/webkitpy/port/leakdetector.py:
478 (LeakDetector._callstacks_to_exclude_from_leaks):
480 2017-12-18 Carlos Garcia Campos <cgarcia@igalia.com>
482 [GTK][WPE] Add WebKitWebView::web-process-terminated signal and deprecate web-process-crashed
483 https://bugs.webkit.org/show_bug.cgi?id=180862
485 Reviewed by Michael Catanzaro.
487 Use WebKitWebView::web-process-terminated instead of web-process-crashed in tests. I'm not adding a test for
488 WEBKIT_WEB_PROCESS_EXCEEDED_MEMORY_LIMIT because we would need to allocate more than 1GB in the test and wait
489 30 seconds, and we don't want to do either in unit tests.
491 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
492 (webProcessTerminatedCallback):
493 (testWebKitWebViewProcessCrashed):
494 (webProcessCrashedCallback): Deleted.
495 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
496 (WebViewTest::initializeWebView):
497 (WebViewTest::webProcessTerminated):
498 (WebViewTest::webProcessCrashed): Deleted.
499 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
501 2017-12-17 Mark Lam <mark.lam@apple.com>
503 Enhance Ref and RefPtr to be able to work with smart pointers.
504 https://bugs.webkit.org/show_bug.cgi?id=180762
505 <rdar://problem/36027122>
507 Reviewed by JF Bastien and Darin Adler.
509 * TestWebKitAPI/CMakeLists.txt:
510 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
511 * TestWebKitAPI/Tests/WTF/ConstExprPoisoned.cpp:
512 (TestWebKitAPI::TEST):
513 * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
514 (TestWebKitAPI::TEST):
515 * TestWebKitAPI/Tests/WTF/PoisonedRef.cpp: Added.
516 (TestWebKitAPI::TEST):
517 (TestWebKitAPI::passWithRef):
518 (TestWebKitAPI::PoisonedRefCheckingRefLogger::PoisonedRefCheckingRefLogger):
519 (TestWebKitAPI::PoisonedRefCheckingRefLogger::ref):
520 (TestWebKitAPI::PoisonedRefCheckingRefLogger::deref):
521 (TestWebKitAPI::DerivedPoisonedRefCheckingRefLogger::DerivedPoisonedRefCheckingRefLogger):
522 * TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp: Added.
523 (TestWebKitAPI::TEST):
525 (TestWebKitAPI::ConstRefCounted::create):
526 (TestWebKitAPI::returnConstRefCountedRef):
527 (TestWebKitAPI::returnRefCountedRef):
528 (TestWebKitAPI::PoisonedRefPtrCheckingRefLogger::PoisonedRefPtrCheckingRefLogger):
529 (TestWebKitAPI::loggerName):
530 (TestWebKitAPI::PoisonedRefPtrCheckingRefLogger::ref):
531 (TestWebKitAPI::PoisonedRefPtrCheckingRefLogger::deref):
533 2017-12-16 Youenn Fablet <youenn@apple.com>
535 Add a script to automate W3c web-platform-tests pull request creations from WebKit commits
536 https://bugs.webkit.org/show_bug.cgi?id=169462
538 Reviewed by Darin Adler.
540 Adding some git helper routines used by WPT exporter.
541 Copying WPT github utility files from Chromium.
542 Updating web.py/web_mock.py to cope with these new files.
544 Implementing test exporter in test_exporter.py.
545 This script takes a WebKit commit as input and will create a WPT commit in a local WPT clone.
546 It will then push the commit to a public GitHub repository identified by a username parameter.
547 This parameter is passed through the command line or searched through git config/environment variables.
549 The script can optionally create a pull request to the official WPT GitHub repository.
550 User must provide a GitHub token to allow the script to make the PR on behalf of the user.
551 In that case, a comment is added to the corresponding bugzilla if a bug ID is given or can be found from the change log,
552 to easily link the pull request with the bugzilla bug.
554 * Scripts/export-w3c-test-changes: Added.
555 * Scripts/webkitpy/common/checkout/scm/git.py:
564 (Git.checkout_new_branch):
565 * Scripts/webkitpy/common/net/web.py:
566 (Web.request): Copied from Chromium.
567 * Scripts/webkitpy/common/net/web_mock.py: Copied needed code from Chromium.
568 * Scripts/webkitpy/w3c/test_exporter.py: Added.
570 (TestExporter.__init__):
571 (TestExporter._init_repository):
572 (TestExporter.download_and_commit_patch):
573 (TestExporter.clean):
574 (TestExporter.create_branch_with_patch):
575 (TestExporter.push_to_public_repository):
576 (TestExporter.make_pull_request):
577 (TestExporter.delete_local_branch):
578 (TestExporter.create_git_patch):
579 (TestExporter.create_upload_remote_if_needed):
580 (TestExporter.do_export):
583 (configure_logging.LogHandler):
584 (configure_logging.LogHandler.format):
586 * Scripts/webkitpy/w3c/test_exporter_unittest.py: Added.
588 (TestExporterTest.MockBugzilla):
589 (TestExporterTest.MockBugzilla.__init__):
590 (TestExporterTest.MockBugzilla.fetch_bug_dictionary):
591 (TestExporterTest.MockBugzilla.post_comment_to_bug):
592 (TestExporterTest.MockGit):
593 (TestExporterTest.MockGit.clone):
594 (TestExporterTest.MockGit.__init__):
595 (TestExporterTest.MockGit.fetch):
596 (TestExporterTest.MockGit.checkout):
597 (TestExporterTest.MockGit.reset_hard):
598 (TestExporterTest.MockGit.push):
599 (TestExporterTest.MockGit.format_patch):
600 (TestExporterTest.MockGit.delete_branch):
601 (TestExporterTest.MockGit.checkout_new_branch):
602 (TestExporterTest.MockGit.am):
603 (TestExporterTest.MockGit.commit):
604 (TestExporterTest.MockGit.remote):
605 (TestExporterTest.test_export):
606 * Scripts/webkitpy/w3c/common.py: Copied from chromium.
607 * Scripts/webkitpy/w3c/wpt_github.py: Copied from chromium.
608 * Scripts/webkitpy/w3c/wpt_github_mock.py: Copied from chromium.
609 * Scripts/webkitpy/w3c/wpt_github_unittest.py: Copied from chromium.
611 2017-12-16 Dan Bernstein <mitz@apple.com>
613 WKWebView has no equivalent of -[WebView setAlwaysShowVerticalScroller:]
614 https://bugs.webkit.org/show_bug.cgi?id=180613
615 <rdar://problem/35946124>
617 Reviewed by Geoff Garen.
619 * MiniBrowser/mac/MainMenu.xib: Added Always Show {Horizontal,Vertical} Scroller menu items
622 * MiniBrowser/mac/WK1BrowserWindowController.m:
623 (-[WK1BrowserWindowController validateMenuItem:]): Set the state of the new menu items based
624 on -alwaysShow{Horizontal,Vertical}Scroller.
625 (-[WK1BrowserWindowController toggleAlwaysShowsHorizontalScroller:]): Toggle the value.
626 (-[WK1BrowserWindowController toggleAlwaysShowsVerticalScroller:]): Ditto.
628 * MiniBrowser/mac/WK2BrowserWindowController.m:
629 (-[WK2BrowserWindowController validateMenuItem:]): Set the state of the new menu items based
631 (-[WK2BrowserWindowController toggleAlwaysShowsHorizontalScroller:]): Toggle the property.
632 (-[WK2BrowserWindowController toggleAlwaysShowsVerticalScroller:]): Ditto.
634 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
635 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewAlwaysShowsScroller.mm: Added.
638 2017-12-16 Basuke Suzuki <Basuke.Suzuki@sony.com>
640 [WinCairo] Move the destination of WinCairoRequirements.zip into WebKitLibraries and register it and related files as git ignore files.
641 https://bugs.webkit.org/show_bug.cgi?id=180875
643 Reviewed by Alex Christensen.
645 Bug fix. Specify the download destination correctly.
647 * Scripts/update-webkit-wincairo-libs.py:
649 2017-12-16 Brent Fulgham <bfulgham@apple.com>
651 Plugin processes are repeatedly spun up to do nothing
652 https://bugs.webkit.org/show_bug.cgi?id=180885
653 <rdar://problem/36082564>
655 Reviewed by Geoffrey Garen.
657 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
658 (runTestWithWebsiteDataStore): Check that deleting website data did not
659 trigger any plugin processes to start up.
661 2017-12-16 Yusuke Suzuki <utatane.tea@gmail.com>
663 Remove unnecessary boolean result of start() functions
664 https://bugs.webkit.org/show_bug.cgi?id=180856
666 Reviewed by Darin Adler.
668 * TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
670 2017-12-15 David Quesada <david_quesada@apple.com>
672 Unreviewed, adding myself to contributors.json
674 * Scripts/webkitpy/common/config/contributors.json:
676 2017-12-15 Ryan Haddad <ryanhaddad@apple.com>
678 Unreviewed, rolling out r225941.
680 This change introduced LayoutTest crashes and assertion
685 "Web Inspector: replace HTMLCanvasElement with
686 CanvasRenderingContext for instrumentation logic"
687 https://bugs.webkit.org/show_bug.cgi?id=180770
688 https://trac.webkit.org/changeset/225941
690 2017-12-15 Alex Christensen <achristensen@webkit.org>
692 Introduce SPI _WKWebsitePolicies.websiteDataStore
693 https://bugs.webkit.org/show_bug.cgi?id=180880
694 <rdar://problem/35535328>
696 Reviewed by Andy Estes.
698 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
699 (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
700 (-[WebsitePoliciesWebsiteDataStoreDelegate webView:startURLSchemeTask:]):
701 (-[WebsitePoliciesWebsiteDataStoreDelegate webView:stopURLSchemeTask:]):
704 2017-12-15 Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
706 [GTK] Add proxy option to Minibrowser
707 https://bugs.webkit.org/show_bug.cgi?id=180750
709 Reviewed by Michael Catanzaro.
711 Add command line option to set proxy settings in GTK minibrowser.
713 * MiniBrowser/gtk/main.c:
716 2017-12-14 Basuke Suzuki <Basuke.Suzuki@sony.com>
718 [webkitpy, Windows] Remove unnecessary debug message
719 https://bugs.webkit.org/show_bug.cgi?id=180844
721 Reviewed by Ryosuke Niwa.
723 * Scripts/webkitpy/common/system/crashlogs.py:
724 (CrashLogs._find_newest_log_win): Delete debug print
726 2017-12-14 David Kilzer <ddkilzer@apple.com>
728 check-webkit-style: Stop warning about underscores in webrtc source
729 <https://webkit.org/b/180848>
731 Reviewed by Joseph Pecoraro.
733 * Scripts/webkitpy/style/checker.py:
734 (_PATH_RULES_SPECIFIER): Suppress readability/naming/underscores
735 warnings under Source/ThirdParty/libwebrtc/Source/webrtc.
737 2017-12-14 Jonathan Bedard <jbedard@apple.com>
739 webkitpy: Replace Version.contained_in with Version.__contains__
740 https://bugs.webkit.org/show_bug.cgi?id=180772
741 <rdar://problem/36033555>
743 Reviewed by David Kilzer.
745 Using __contains__ instead of contained_in allows for the more
746 Pythonic 'in' operator to be used.
748 * Scripts/webkitpy/common/version.py:
750 (Version.__contains__): Replace contained_in. Note that self is now
752 (Version.contained_in): Deleted.
753 * Scripts/webkitpy/common/version_name_map.py:
754 (VersionNameMap.to_name):
755 * Scripts/webkitpy/common/version_unittest.py:
756 (VersionTestCase.test_contained_in):
758 2017-12-14 Ryan Haddad <ryanhaddad@apple.com>
760 Unreviewed, rolling out r225931.
762 Breaks internal builds.
766 "Fix Mac CMake build"
767 https://bugs.webkit.org/show_bug.cgi?id=180835
768 https://trac.webkit.org/changeset/225931
770 2017-12-14 Devin Rousso <webkit@devinrousso.com>
772 Web Inspector: replace HTMLCanvasElement with CanvasRenderingContext for instrumentation logic
773 https://bugs.webkit.org/show_bug.cgi?id=180770
775 Reviewed by Joseph Pecoraro.
777 * Scripts/webkitpy/common/config/watchlist:
779 2017-12-14 Alexey Proskuryakov <ap@apple.com>
781 Improve leaks detector output
782 https://bugs.webkit.org/show_bug.cgi?id=180828
784 Reviewed by Joseph Pecoraro.
787 1. run-leaks omits many lines from leaks tool output, making it incompatible with
788 other tools. Notably, symbolication cannot be performed.
789 2. run-leaks output goes to "run-webkit-tests --debug-rwt-logging" output. This
790 makes it much longer than needed, sometimes even overloading buildbot. We don't
791 need full output in test log, as separate files are created for each of these.
793 * Scripts/run-leaks: Represent each line in leaks output when parsing, and print
794 everything except for explicitly excluded leaks. From my testing and reading
795 the code, it looks like none of our tools should be broken by this change.
797 * Scripts/webkitpy/port/leakdetector.py: I couldn't find a way to run a helper tool
798 without dumping all of its output to debug log, so switched to using a file for leaks.
800 * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v1.0.pl:
801 * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-new.pl:
802 * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-old.pl:
803 * Scripts/webkitpy/port/leakdetector_unittest.py:
804 Updated tests for new behavior.
806 2017-12-14 Brady Eidson <beidson@apple.com>
808 REGRESSION (r225789): API tests WKProcessPool.InitialWarmedProcessUsed and WebKit.WebsiteDataStoreCustomPaths are failing.
809 https://bugs.webkit.org/show_bug.cgi?id=180722
811 Reviewed by Chris Dumez.
813 * TestWebKitAPI/Tests/WebKitCocoa/InitialWarmedProcessUsed.mm:
816 2017-12-14 Alex Christensen <achristensen@webkit.org>
819 https://bugs.webkit.org/show_bug.cgi?id=180835
821 Reviewed by Andy Estes.
823 * DumpRenderTree/mac/DumpRenderTree.mm:
824 * MiniBrowser/mac/WK1BrowserWindowController.m:
826 2017-12-14 Jonathan Bedard <jbedard@apple.com>
828 webkitpy: Better name-version mapping (Follow-up fix)
829 https://bugs.webkit.org/show_bug.cgi?id=179621
830 <rdar://problem/35589585>
832 Unreviewed infrastructure fix.
834 r225856 caused some undesired logging on Linux and Windows.
836 * Scripts/webkitpy/port/mac.py:
837 (MacPort.__init__): Use most recent OS release if not on a Mac.
838 (MacPort.default_baseline_search_path): Make platform explicit.
839 (MacPort.configuration_specifier_macros): Ditto.
841 2017-12-14 Carlos Garcia Campos <cgarcia@igalia.com>
843 WebDriver: add a common way to run tests with pytest
844 https://bugs.webkit.org/show_bug.cgi?id=180800
846 Reviewed by Carlos Alberto Lopez Perez.
848 We currently use pytestrunner from wpt for w3c tests and our own code for selenium tests. Using the same code
849 for both would simplify everything, but also allows us to have a custom results recorder to support other test
850 expectations like TIMEOUT. The code to run selenium tests with pytest has been moved to a new file
851 pytest_runner.py and made generic to be used also for w3c tests.
853 * Scripts/webkitpy/webdriver_tests/pytest_runner.py: Added.
854 (TemporaryDirectory):
855 (TemporaryDirectory.__enter__):
856 (TemporaryDirectory.__exit__):
858 (CollectRecorder.__init__):
859 (CollectRecorder.pytest_collectreport):
860 (HarnessResultRecorder):
861 (HarnessResultRecorder.__init__):
862 (HarnessResultRecorder.pytest_collectreport):
863 (SubtestResultRecorder):
864 (SubtestResultRecorder.__init__):
865 (SubtestResultRecorder.pytest_runtest_logreport):
866 (SubtestResultRecorder._was_timeout):
867 (SubtestResultRecorder.record_pass):
868 (SubtestResultRecorder.record_fail):
869 (SubtestResultRecorder.record_error):
870 (SubtestResultRecorder.record_skip):
871 (SubtestResultRecorder.record):
874 * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
875 (do_delayed_imports): Import pytest_runner here to avoid cycles.
876 (WebDriverSeleniumExecutor.__init__): Save the driver parameter as args member and call do_delayed_imports() if
878 (WebDriverSeleniumExecutor.collect): Use pytest_runner.
879 (WebDriverSeleniumExecutor.run): Ditto.
880 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
881 (WebDriverTestRunner.print_results): Handle all possible tests results.
882 (WebDriverTestRunner.print_results.report): Helper to dump test results.
883 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
884 (WebDriverTestRunnerSelenium.run):
885 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
886 (WebDriverTestRunnerW3C.__init__): Do not set PYTEST_TIMEOUT env var.
887 (WebDriverTestRunnerW3C._is_test): Fix check for support files.
888 (WebDriverTestRunnerW3C.run): Pass the timeout as parameter to WebDriverW3CExecutor.run().
889 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
890 (do_delayed_imports): Import pytest_runner here to avoid cycles.
891 (WebDriverW3CExecutor.__init__): Call do_delayed_imports() if needed.
892 (WebDriverW3CExecutor.run): Use pytest_runner.
894 2017-12-13 Matt Lewis <jlewis3@apple.com>
896 Unreviewed, rolling out r225864.
898 This caused the Layout test step to crash out on Debug testers
902 "REGRESSION (r225789): API tests
903 WKProcessPool.InitialWarmedProcessUsed and
904 WebKit.WebsiteDataStoreCustomPaths are failing."
905 https://bugs.webkit.org/show_bug.cgi?id=180722
906 https://trac.webkit.org/changeset/225864
908 2017-12-13 Youenn Fablet <youenn@apple.com>
910 Update ContentFiltering.LazilyLoadPlatformFrameworks test to account for libwebrtc using VideoProcessing framework
911 https://bugs.webkit.org/show_bug.cgi?id=180713
912 <rdar://problem/36003031>
914 Reviewed by Andy Estes.
916 Reenable the check for non High Sierra builds.
918 * TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:
919 (-[LazilyLoadPlatformFrameworksController expectParentalControlsLoaded:networkExtensionLoaded:]):
921 2017-12-13 Brady Eidson <beidson@apple.com>
923 REGRESSION (r225789): API tests WKProcessPool.InitialWarmedProcessUsed and WebKit.WebsiteDataStoreCustomPaths are failing.
924 https://bugs.webkit.org/show_bug.cgi?id=180722
926 Reviewed by Chris Dumez.
928 * TestWebKitAPI/Tests/WebKitCocoa/InitialWarmedProcessUsed.mm:
929 (TEST): Call a new SPI to get the count of WebProcesses hosting WebPages.
931 2017-12-13 Mark Lam <mark.lam@apple.com>
933 Fill out some Poisoned APIs, fix some bugs, and add some tests.
934 https://bugs.webkit.org/show_bug.cgi?id=180724
935 <rdar://problem/36006884>
937 Reviewed by JF Bastien.
939 * TestWebKitAPI/CMakeLists.txt:
940 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
941 * TestWebKitAPI/Tests/WTF/ConstExprPoisoned.cpp: Added.
942 (TestWebKitAPI::TEST):
943 * TestWebKitAPI/Tests/WTF/Poisoned.cpp: Added.
944 (TestWebKitAPI::initializeTestPoison):
945 (TestWebKitAPI::TEST):
947 2017-12-13 Jonathan Bedard <jbedard@apple.com>
949 webkitpy: Better name-version mapping (Part 2)
950 https://bugs.webkit.org/show_bug.cgi?id=179621
951 <rdar://problem/35589585>
953 Reviewed by David Kilzer.
955 Now that we have a central mapping of version numbers to version names, this
956 mapping should be used to compute version names. This patch treats passes versions
957 as objects, only mapping them to names when strings are needed.
959 * Scripts/webkitpy/common/system/platforminfo.py:
960 (PlatformInfo.__init__): Store os_version as a version object instead of a string.
961 (PlatformInfo.os_version_name): Convert os_version to a string through the VersionNameMap.
962 * Scripts/webkitpy/common/system/platforminfo_mock.py:
963 (MockPlatformInfo.__init__): Store os_version as a version object.
964 (MockPlatformInfo.os_version_name): Mirror PlatformInfo.
965 * Scripts/webkitpy/common/system/platforminfo_unittest.py:
966 (TestPlatformInfo.test_real_code): Only Mac and Windows have defined version objects.
967 (TestPlatformInfo.test_os_version): Deleted, this behavior is now managed by VersionNameMap.
968 * Scripts/webkitpy/common/version.py:
969 (Version.__cmp__): Allow a version object to be compared with 'None'.
970 * Scripts/webkitpy/common/version_name_map.py:
971 (VersionNameMap.map): Check for the apple_additions VersionNameMap.
972 (VersionNameMap.__init__): Add a wincairo mapping, the same as the win mapping.
973 * Scripts/webkitpy/common/version_unittest.py:
974 (VersionTestCase.test_compare_versions): Test comparing a version object to 'None'.
975 * Scripts/webkitpy/layout_tests/models/test_configuration.py:
976 (TestConfiguration.__init__): Strip formatting from version name. Note that this object still
977 accepts a string because the version string implicitly contains the platform as well.
978 * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py: Win7 should be 7SP0 as
979 it is in the VersionNameMap.
980 * Scripts/webkitpy/port/apple.py:
981 (ApplePort): Replace VERSION_FALLBACK_ORDER with a minimum and maximum version. This is required
982 because it may be the case that scripts are aware of more versions than the port actually supports.
983 (ApplePort.determine_full_port_name): Use the host operating system to compute the full port name.
984 (ApplePort._allowed_versions): Return a list of valid port versions by iterating through the
986 (ApplePort._generate_all_test_configurations): Compute a list of configurations by iterating through
987 _allowed_versions and converting each version to a string.
988 (ApplePort._apple_baseline_path): Return a layout test expectation directory inside apple_additions.
989 (ApplePort._skipped_file_search_paths): Deleted.
990 (ApplePort._allowed_port_names): Deleted.
991 (ApplePort._future_port_name): Deleted.
992 * Scripts/webkitpy/port/base.py:
993 (Port.__init__): Replace _version string with _os_version object.
994 (Port.version_name): Convert version object to string.
995 (Port.test_configuration): Pass version string to TestConfiguration.
996 (Port.version): Deleted.
997 * Scripts/webkitpy/port/darwin_testcase.py:
998 (DarwinTest.assert_name): Convert an os_version_string to a version object and construct a port.
999 * Scripts/webkitpy/port/factory_unittest.py:
1000 (FactoryTest.test_mac): Replace version strings with version objects.
1001 (FactoryTest.test_win): Ditto.
1002 * Scripts/webkitpy/port/gtk.py:
1003 (GtkPort._generate_all_test_configurations): Replace _version with version_name().
1004 * Scripts/webkitpy/port/ios.py:
1005 (IOSPort.version_name): Both Simulator and device share the same version-name convention.
1006 (IOSPort._generate_all_test_configurations): Replace _version with version_name().
1007 (IOSPort.default_baseline_search_path): Use the internal mapping of version names to construct
1008 apple_additions expectations.
1009 (IOSPort._apple_additions_path): Deleted.
1010 * Scripts/webkitpy/port/ios_device.py:
1011 (IOSDevicePort.ios_version): Return None if no version is defined.
1012 * Scripts/webkitpy/port/ios_device_unittest.py:
1014 (IOSDeviceTest.test_layout_test_searchpath_with_apple_additions): Conform with the new mock
1016 (IOSDeviceTest.make_port): Deleted.
1017 * Scripts/webkitpy/port/ios_simulator.py:
1018 (IOSSimulatorPort._create_devices): Use Version object over list of version strings.
1019 * Scripts/webkitpy/port/ios_simulator_unittest.py:
1021 (IOSSimulatorTest.make_port): Use iOS 11 as the default version for testing.
1022 (IOSSimulatorTest.test_layout_test_searchpath_with_apple_additions): Conform with the new
1023 mock apple_additions.
1024 * Scripts/webkitpy/port/ios_testcase.py:
1025 (IOSTest.make_port): Use iOS 11 as the default version for testing.
1026 * Scripts/webkitpy/port/mac.py:
1028 (MacPort.__init__): Use Version object for _os_version.
1029 (MacPort.default_baseline_search_path): Use the internal mapping of version names to construct
1030 apple_additions expectations.
1031 (MacPort.configuration_specifier_macros): Automatically construct macros based on VersionNameMap.
1032 (MacPort._apple_additions_path): Deleted.
1033 * Scripts/webkitpy/port/mac_unittest.py:
1034 (MacTest): Use Version object instead of version string.
1035 (MacTest.test_version):
1036 * Scripts/webkitpy/port/port_testcase.py:
1037 (bind_mock_apple_additions): Add a mock VersionNameMap to mock apple_additions.
1038 (bind_mock_apple_additions.MockAppleAdditions):
1039 (bind_mock_apple_additions.MockAppleAdditions.version_name_mapping):
1040 * Scripts/webkitpy/port/test.py:
1042 (TestPort.__init__): Use VersionNameMap to compute the correct Version from a port name.
1043 (TestPort.version_name): Mirror Port object.
1044 (TestPort.baseline_search_path): Replace win7 with 7sp0.
1045 (TestPort._all_systems): Ditto.
1046 (TestPort.configuration_specifier_macros): Ditto.
1047 * Scripts/webkitpy/port/win.py:
1049 (WinPort.__init__): Construct Version object from port name.
1050 (WinPort.default_baseline_search_path): Use the internal mapping of version names to construct
1051 apple_additions expectations.
1053 (WinCairoPort.default_baseline_search_path): Use MIN/MAX instead of the VERSION_FALLBACK_ORDER.
1054 (WinCairoPort._future_port_name): Deleted.
1055 * Scripts/webkitpy/port/win_unittest.py:
1056 (WinPortTest.test_baseline_search_path): Add new Windows versions not previously included.
1057 (WinPortTest._assert_version): Handle expected_version as a Version object.
1058 (WinPortTest.test_versions): Pass Version objects instead of version strings.
1059 * Scripts/webkitpy/port/wpe.py:
1060 (WPEPort._generate_all_test_configurations): Replace _version with version_name().
1061 * Scripts/webkitpy/tool/commands/queries_unittest.py:
1062 (PrintExpectationsTest.test_multiple): Replace win7 with 7sp0.
1063 (PrintBaselinesTest.test_multiple): Ditto.
1064 * Scripts/webkitpy/tool/commands/queues.py:
1065 (PatchProcessingQueue._new_port_name_from_old): Use os_version_name() instead of Version object.
1067 2017-12-12 Daniel Bates <dabates@apple.com>
1069 [WK] Add modern WebKit SPI to set auto fill button type and query if the auto fill button is enabled
1070 https://bugs.webkit.org/show_bug.cgi?id=180686
1072 Reviewed by Alex Christensen.
1074 * TestWebKitAPI/Tests/WebKitCocoa/ClickAutoFillButton.mm:
1075 (-[ClickAutoFillButton webProcessPlugIn:didCreateBrowserContextController:]):
1077 2017-12-12 Alex Christensen <achristensen@webkit.org>
1079 Fix possible out-of-bounds read in protocolIsInHTTPFamily
1080 https://bugs.webkit.org/show_bug.cgi?id=180688
1082 Reviewed by Daniel Bates.
1084 * TestWebKitAPI/Tests/WebCore/URL.cpp:
1085 (TestWebKitAPI::TEST_F):
1087 2017-12-12 JF Bastien <jfbastien@apple.com>
1089 makeString: support more integral types
1090 https://bugs.webkit.org/show_bug.cgi?id=180720
1092 Reviewed by Sam Weinig.
1094 Test a few more types can be made string'd.
1096 * TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
1097 (TestWebKitAPI::TEST):
1099 2017-12-12 Alicia Boya García <aboya@igalia.com>
1101 Flakiness dashboard: Make GTK and WPE builds inherit expectations from WK2
1102 https://bugs.webkit.org/show_bug.cgi?id=178782
1104 Reviewed by Michael Catanzaro.
1106 * TestResultServer/static-dashboards/flakiness_dashboard.js:
1108 2017-12-12 Jonathan Bedard <jbedard@apple.com>
1110 MobileMiniBrowser using the wrong toolchain
1111 https://bugs.webkit.org/show_bug.cgi?id=180716
1112 <rdar://problem/36002951>
1114 Reviewed by Tim Horton.
1116 Move Debug/Release configurations from xcodeproj into Base.xcconfig.
1118 * MobileMiniBrowser/Configurations/Base.xcconfig:
1119 * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj:
1121 2017-12-12 Youenn Fablet <youenn@apple.com>
1123 Update ContentFiltering.LazilyLoadPlatformFrameworks test to account for libwebrtc using VideoProcessing framework
1124 https://bugs.webkit.org/show_bug.cgi?id=180713
1126 Reviewed by Andy Estes.
1128 Temporarily disabling a subcheck until we make the test more robust and/or libwebrtc weak linking VideoProcessing framework.
1130 * TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:
1131 (-[LazilyLoadPlatformFrameworksController expectParentalControlsLoaded:networkExtensionLoaded:]):
1133 2017-12-12 Caio Lima <ticaiolima@gmail.com>
1135 [ESNext][BigInt] Implement BigInt literals and JSBigInt
1136 https://bugs.webkit.org/show_bug.cgi?id=179000
1138 Reviewed by Darin Adler and Yusuke Suzuki.
1140 * Scripts/run-jsc-stress-tests:
1142 2017-12-12 Carlos Alberto Lopez Perez <clopez@igalia.com>
1144 [GTK][WPE] Bump GStreamer version to 1.12 in jhbuild
1145 https://bugs.webkit.org/show_bug.cgi?id=171677
1147 Reviewed by Carlos Garcia Campos.
1149 Bump gstreamer related modules and rebase patches still needed and not merged
1151 * gstreamer/jhbuild.modules:
1152 * gstreamer/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch: Removed. This was needed for OpenWebRTC. Not longer supported.
1153 * gstreamer/patches/gst-plugins-good-0005-souphttpsrc-cookie-jar-and-context-query-support.patch: Rebased.
1154 * gstreamer/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch: Rebased.
1155 * gstreamer/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch: Rebased.
1156 * gstreamer/patches/gst-plugins-good-0009-qtdemux-fix-assert-when-moof-contains-one-sample.patch: Added a note about merge commit not still in 1.12.4.
1158 2017-12-12 Yusuke Suzuki <utatane.tea@gmail.com>
1160 [WTF] Thread::create should have Thread::tryCreate
1161 https://bugs.webkit.org/show_bug.cgi?id=180333
1163 Reviewed by Darin Adler.
1165 * TestWebKitAPI/Tests/WTF/Condition.cpp:
1166 * TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
1167 * TestWebKitAPI/Tests/WTF/Signals.cpp:
1169 * TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:
1170 (TestWebKitAPI::testThreadGroup):
1171 (TestWebKitAPI::TEST):
1173 2017-12-11 Basuke Suzuki <Basuke.Suzuki@sony.com>
1175 [WinCairo] Enable running sharded tests
1176 https://bugs.webkit.org/show_bug.cgi?id=180660
1178 Reviewed by Alex Christensen.
1180 The sharder splits the test inputs into groups of test based on the directory,
1181 but separation of base name and directory name was wrong because of this bug.
1182 Once sharded correctly, the execution of layout test on native Windows environment
1183 is in parallel and much less time to run.
1185 * Scripts/webkitpy/port/win.py:
1188 2017-12-11 Fujii Hironori <Hironori.Fujii@sony.com>
1190 [WinCairo] DLLLauncherMain should use SetDllDirectory
1191 https://bugs.webkit.org/show_bug.cgi?id=180642
1193 Reviewed by Alex Christensen.
1195 Windows have icuuc.dll in the system directory. WebKit should find
1196 one in WebKitLibraries directory, not one in the system directory.
1198 * win/DLLLauncher/DLLLauncherMain.cpp:
1199 (modifyPath): Use SetDllDirectory for WebKitLibraries directory instead of modifying path.
1200 Do not add a path for GStreamer because nobody is using now.
1202 2017-12-11 David Quesada <david_quesada@apple.com>
1204 Turn on ENABLE_APPLICATION_MANIFEST
1205 https://bugs.webkit.org/show_bug.cgi?id=180562
1206 rdar://problem/35924737
1208 Reviewed by Geoffrey Garen.
1210 * Configurations/FeatureDefines.xcconfig:
1212 2017-12-11 Zan Dobersek <zdobersek@igalia.com>
1214 Unreviewed, rolling out r225737.
1216 Breaks Git clones of the repository, including EWSs and webkitbot.
1220 "Add a script to automate W3c web-platform-tests pull request
1221 creations from WebKit commits"
1222 https://bugs.webkit.org/show_bug.cgi?id=169462
1223 https://trac.webkit.org/changeset/225737
1225 2017-12-11 Carlos Garcia Campos <cgarcia@igalia.com>
1227 [GTK] WebDriver: run-webdriver-tests is leaking a DumpRenderTree directory in tmp
1228 https://bugs.webkit.org/show_bug.cgi?id=180426
1230 Reviewed by Michael Catanzaro.
1232 This happens when running the tests with Xvfb driver, because _setup_environ_for_test() is called twice and the
1233 DTR temp directory is created there every time. Only the last directory created is cleaned up by the driver
1234 destructor. The DRT temp directory is only needed for layout tests, so we could even avoid its creation by
1235 moving it to the start() method like other drivers do (included the base driver implementation). Since API and
1236 WebDriver tests don't call start(), the directory is not even created, and the required env vars are not set
1237 either in that case. Weston driver was behaving differently for some reason, it's now consistent with all other
1240 * Scripts/webkitpy/port/headlessdriver.py:
1241 (HeadlessDriver._setup_environ_for_test): Do not set DUMPRENDERTREE_TEMP and XDG_CACHE_HOME if _driver_tempdir is None.
1242 (HeadlessDriver._start): Use Port._driver_tempdir() to create the driver temp directory.
1243 * Scripts/webkitpy/port/waylanddriver.py:
1244 (WaylandDriver._setup_environ_for_test): Do not set DUMPRENDERTREE_TEMP and XDG_CACHE_HOME if _driver_tempdir is None.
1245 (WaylandDriver._start): Use Port._driver_tempdir() to create the driver temp directory.
1246 * Scripts/webkitpy/port/westondriver.py:
1247 (WestonDriver._setup_environ_for_test): Do not set DUMPRENDERTREE_TEMP and XDG_CACHE_HOME if _driver_tempdir is None.
1248 (WestonDriver._start): Use Port._driver_tempdir() to create the driver temp directory.
1249 (WestonDriver.stop): Do not delete the temp directory, it's done by the parent class.
1250 (WestonDriver._ensure_driver_tmpdir_subdirectory): Deleted.
1251 * Scripts/webkitpy/port/westondriver_unittest.py:
1252 (WestonDriverTest.make_driver):
1253 (WestonDriverTest.test_stop):
1254 * Scripts/webkitpy/port/xorgdriver.py:
1255 (XorgDriver._setup_environ_for_test): Do not set DUMPRENDERTREE_TEMP and XDG_CACHE_HOME if _driver_tempdir is None.
1256 (XorgDriver._start): Use Port._driver_tempdir() to create the driver temp directory.
1257 * Scripts/webkitpy/port/xvfbdriver.py:
1258 (XvfbDriver._setup_environ_for_test): Do not set DUMPRENDERTREE_TEMP and XDG_CACHE_HOME if _driver_tempdir is None.
1259 (XvfbDriver._start): Use Port._driver_tempdir() to create the driver temp directory.
1261 2017-12-10 Zan Dobersek <zdobersek@igalia.com>
1263 Unreviewed webkitpy fix on Linux platforms after r225721.
1265 Add an empty 'linux' entry to the PUBLIC_TABLE mapping in the
1266 VersionNameMap class. This avoids asserting in this class's
1267 mapping_for_platform() method when the code is evaluated on a Linux
1268 system, which happens when the static VERSION_FALLBACK_ORDER member in
1269 the WinCairoPort class is constructed. This can occur during a
1270 test-webkitpy run or when trying to construct a WPEPort instance in
1271 PortFactory, which isn't possible because again the WinCairoPort
1272 instance is constructed first, leading to the same assert in both cases.
1274 * Scripts/webkitpy/common/version_name_map.py:
1275 (VersionNameMap.__init__):
1277 2017-12-10 Youenn Fablet <youenn@apple.com>
1279 Add a script to automate W3c web-platform-tests pull request creations from WebKit commits
1280 https://bugs.webkit.org/show_bug.cgi?id=169462
1282 Reviewed by Darin Adler.
1284 Adding some git helper routines used by WPT exporter.
1285 Copying WPT github utility files from Chromium.
1286 Updating web.py/web_mock.py to cope with these new files.
1288 Implementing test exporter in test_exporter.py.
1289 This script takes a WebKit commit as input and will create a WPT commit in a local WPT clone.
1290 It will then push the commit to a public GitHub repository identified by a username parameter.
1291 This parameter is passed through the command line or searched through git config/environment variables.
1293 The script can optionally create a pull request to the official WPT GitHub repository.
1294 User must provide a GitHub token to allow the script to make the PR on behalf of the user.
1295 In that case, a comment is added to the corresponding bugzilla if a bug ID is given or can be found from the change log,
1296 to easily link the pull request with the bugzilla bug.
1298 * Scripts/export-w3c-test-changes: Added.
1299 * Scripts/webkitpy/common/checkout/scm/git.py:
1308 (Git.checkout_new_branch):
1309 * Scripts/webkitpy/common/net/web.py:
1310 (Web.request): Copied from Chromium.
1311 * Scripts/webkitpy/common/net/web_mock.py: Copied needed code from Chromium.
1312 * Scripts/webkitpy/w3c/test_exporter.py: Added.
1314 (TestExporter.__init__):
1315 (TestExporter._init_repository):
1316 (TestExporter.download_and_commit_patch):
1317 (TestExporter.clean):
1318 (TestExporter.create_branch_with_patch):
1319 (TestExporter.push_to_public_repository):
1320 (TestExporter.make_pull_request):
1321 (TestExporter.delete_local_branch):
1322 (TestExporter.create_git_patch):
1323 (TestExporter.create_upload_remote_if_needed):
1324 (TestExporter.do_export):
1326 (configure_logging):
1327 (configure_logging.LogHandler):
1328 (configure_logging.LogHandler.format):
1330 * Scripts/webkitpy/w3c/test_exporter_unittest.py: Added.
1332 (TestExporterTest.MockBugzilla):
1333 (TestExporterTest.MockBugzilla.__init__):
1334 (TestExporterTest.MockBugzilla.fetch_bug_dictionary):
1335 (TestExporterTest.MockBugzilla.post_comment_to_bug):
1336 (TestExporterTest.MockGit):
1337 (TestExporterTest.MockGit.clone):
1338 (TestExporterTest.MockGit.__init__):
1339 (TestExporterTest.MockGit.fetch):
1340 (TestExporterTest.MockGit.checkout):
1341 (TestExporterTest.MockGit.reset_hard):
1342 (TestExporterTest.MockGit.push):
1343 (TestExporterTest.MockGit.format_patch):
1344 (TestExporterTest.MockGit.delete_branch):
1345 (TestExporterTest.MockGit.checkout_new_branch):
1346 (TestExporterTest.MockGit.am):
1347 (TestExporterTest.MockGit.commit):
1348 (TestExporterTest.MockGit.remote):
1349 (TestExporterTest.test_export):
1350 * Scripts/webkitpy/w3c/common.py: Copied from chromium.
1351 * Scripts/webkitpy/w3c/wpt_github.py: Copied from chromium.
1352 * Scripts/webkitpy/w3c/wpt_github_mock.py: Copied from chromium.
1353 * Scripts/webkitpy/w3c/wpt_github_unittest.py: Copied from chromium.
1355 2017-12-10 Konstantin Tokarev <annulen@yandex.ru>
1357 [python] Modernize "except" usage for python3 compatibility
1358 https://bugs.webkit.org/show_bug.cgi?id=180612
1360 Reviewed by Michael Catanzaro.
1362 * BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
1363 (CommitterAuth.auth_json):
1364 (CommitterAuth.authenticate):
1365 (CommitterAuth.is_webkit_committer):
1366 (CommitterAuth.is_webkit_trac_user):
1367 * BuildSlaveSupport/wait-for-SVN-server.py:
1368 (getLatestSVNRevision):
1369 * QueueStatusServer/handlers/updatebase.py:
1370 (UpdateBase._int_from_request):
1371 * Scripts/webkitpy/bindings/main.py:
1372 (BindingsTests.generate_from_idl):
1373 (BindingsTests.generate_supplemental_dependency):
1374 (BindingsTests.detect_changes):
1375 * Scripts/webkitpy/codegen/main.py:
1376 (BuiltinsGeneratorTests.generate_from_js_builtins):
1377 (BuiltinsGeneratorTests.detect_changes):
1378 * Scripts/webkitpy/common/checkout/changelog.py:
1379 (ChangeLog.parse_latest_entry_from_file):
1380 * Scripts/webkitpy/common/checkout/checkout.py:
1381 (Checkout.bug_id_for_this_commit):
1382 * Scripts/webkitpy/common/checkout/scm/git.py:
1383 (Git.in_working_directory):
1385 (Git._string_to_int_or_none):
1386 (Git._commit_on_branch):
1387 * Scripts/webkitpy/common/checkout/scm/svn.py:
1388 (SVN.revisions_changing_file):
1389 * Scripts/webkitpy/common/config/committers.py:
1390 (CommitterList.load_json):
1391 * Scripts/webkitpy/common/message_pool.py:
1393 * Scripts/webkitpy/common/net/buildbot/buildbot.py:
1394 (Builder.force_build.predicate):
1395 (Builder._fetch_revision_to_build_map):
1396 (BuildBot._fetch_build_dictionary):
1397 * Scripts/webkitpy/common/net/credentials.py:
1398 (Credentials._credentials_from_git):
1399 * Scripts/webkitpy/common/net/networktransaction.py:
1400 (NetworkTransaction.run):
1401 * Scripts/webkitpy/common/net/networktransaction_unittest.py:
1402 (NetworkTransactionTest.test_exception):
1403 (NetworkTransactionTest.test_timeout):
1404 * Scripts/webkitpy/common/net/statusserver.py:
1405 (StatusServer._fetch_url):
1406 * Scripts/webkitpy/common/net/unittestresults.py:
1407 (UnitTestResults.results_from_string):
1408 * Scripts/webkitpy/common/prettypatch.py:
1409 (PrettyPatch.check_pretty_patch):
1410 (PrettyPatch.pretty_patch_text):
1411 * Scripts/webkitpy/common/prettypatch_unittest.py:
1412 (PrettyPatchTest.check_ruby):
1413 * Scripts/webkitpy/common/system/autoinstall.py:
1414 (AutoInstaller._extract_tar):
1415 (AutoInstaller._unzip):
1416 (AutoInstaller._replace_domain_with_next_mirror):
1417 (AutoInstaller._download_to_stream):
1418 (AutoInstaller.install):
1419 * Scripts/webkitpy/common/system/crashlogs.py:
1420 (CrashLogs._find_newest_log_darwin):
1421 (CrashLogs._find_newest_log_win):
1422 (CrashLogs._find_all_logs_darwin):
1423 * Scripts/webkitpy/common/system/executive.py:
1424 (Executive.kill_process):
1425 (Executive.running_pids):
1426 * Scripts/webkitpy/common/system/filesystem.py:
1427 (FileSystem.maybe_make_directory):
1428 (FileSystem.remove):
1429 * Scripts/webkitpy/common/system/user.py:
1430 (User._wait_on_list_response):
1433 (User.can_open_url):
1434 * Scripts/webkitpy/common/system/workspace.py:
1435 (Workspace.create_zip):
1436 * Scripts/webkitpy/common/watchlist/watchlistparser.py:
1437 (WatchListParser._parse_definition_section):
1438 * Scripts/webkitpy/common/webkitunittest.py:
1439 (TestCase._assertRaisesRegexp):
1440 * Scripts/webkitpy/inspector/main.py:
1441 (InspectorGeneratorTests.generate_from_json):
1442 (InspectorGeneratorTests.detect_changes):
1443 * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
1444 (LayoutTestFinder._read_test_names_from_file):
1445 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
1446 (LayoutTestRunner.run_tests):
1447 * Scripts/webkitpy/layout_tests/controllers/manager.py:
1448 (Manager.upload_results):
1449 * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
1450 (JSONResultsGenerator.upload_json_files):
1451 (JSONResultsGenerator._get_archived_json_results):
1452 * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
1453 (MiscTests.test_parse_warning):
1454 (SemanticTests.test_bad_bugid):
1455 * Scripts/webkitpy/layout_tests/models/test_run_results.py:
1456 (summarize_results):
1457 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1459 * Scripts/webkitpy/layout_tests/servers/http_server.py:
1460 (Lighttpd._remove_stale_logs):
1461 * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
1462 (HttpServerBase._is_running_on_port):
1463 (HttpServerBase._check_that_all_ports_are_available):
1464 * Scripts/webkitpy/layout_tests/servers/http_server_integrationtest.py:
1465 (BaseTest.assert_servers_are_down):
1466 (BaseTest.assert_servers_are_up):
1467 (BaseTest.integration_test_server__fails):
1468 (BaseTest.maybe_make_dir):
1469 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
1471 * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
1472 * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
1473 (PyWebSocket.is_running):
1474 (PyWebSocket._remove_stale_logs):
1475 * Scripts/webkitpy/performance_tests/perftestsrunner.py:
1476 (_merge_slave_config_json):
1477 (_merge_outputs_if_needed):
1479 * Scripts/webkitpy/port/base.py:
1480 (Port._build_driver):
1481 (Port._build_image_diff):
1482 (Port._symbols_string):
1483 * Scripts/webkitpy/port/leakdetector.py:
1484 (LeakDetector.count_total_bytes_and_unique_leaks):
1485 (LeakDetector.check_for_leaks):
1486 * Scripts/webkitpy/port/leakdetector_valgrind.py:
1487 (LeakDetectorValgrind._parse_leaks_output):
1488 * Scripts/webkitpy/port/mac.py:
1489 (MacPort.reset_preferences):
1490 (MacPort.stop_helper):
1491 * Scripts/webkitpy/port/port_testcase.py:
1492 (PortTestCase.assert_servers_are_down):
1493 (PortTestCase.assert_servers_are_up):
1494 (PortTestCase.integration_test_http_server__fails):
1495 (PortTestCase.integration_test_websocket_server__fails):
1496 * Scripts/webkitpy/port/server_process.py:
1497 (ServerProcess.write):
1498 (ServerProcess._wait_for_data_and_update_buffers_using_select):
1499 (ServerProcess._non_blocking_read_win32):
1500 * Scripts/webkitpy/port/win.py:
1501 (WinPort._runtime_feature_list):
1502 * Scripts/webkitpy/port/xvfbdriver.py:
1503 (XvfbDriver._xvfb_read_display_id):
1504 * Scripts/webkitpy/style/checkers/jsonchecker.py:
1505 (JSONChecker.check):
1506 * Scripts/webkitpy/style/checkers/xml.py:
1508 * Scripts/webkitpy/style/filereader.py:
1509 (TextFileReader.process_file):
1510 * Scripts/webkitpy/style/filereader_unittest.py:
1511 (TextFileReaderTest.test_process_file__does_not_exist):
1512 * Scripts/webkitpy/style/optparser.py:
1513 (ArgumentParser.parse):
1514 * Scripts/webkitpy/tool/bot/irc_command.py:
1515 (CreateBug.execute):
1517 * Scripts/webkitpy/tool/bot/ircbot.py:
1518 (IRCBot.process_message):
1519 * Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
1520 (LayoutTestResultsReader._read_file_contents):
1521 * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1522 (PatchAnalysisTask._run_command):
1523 * Scripts/webkitpy/tool/bot/queueengine.py:
1525 * Scripts/webkitpy/tool/commands/abstractsequencedcommand.py:
1526 (AbstractSequencedCommand.execute):
1527 * Scripts/webkitpy/tool/commands/download.py:
1528 (AbstractPatchSequencingCommand._prepare_to_process):
1529 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1530 (AbstractEarlyWarningSystem.review_patch):
1531 * Scripts/webkitpy/tool/commands/queries.py:
1532 (FailureReason._blame_line_for_revision):
1533 * Scripts/webkitpy/tool/commands/queues.py:
1534 (AbstractQueue._cc_watchers):
1535 (AbstractQueue.run_webkit_patch):
1536 (CommitQueue.process_work_item):
1537 (StyleQueue.review_patch):
1538 * Scripts/webkitpy/tool/commands/rebaseline.py:
1539 (AbstractParallelRebaselineCommand._run_webkit_patch):
1540 * Scripts/webkitpy/tool/commands/stepsequence.py:
1541 (StepSequence.run_and_handle_errors):
1542 * Scripts/webkitpy/tool/commands/suggestnominations.py:
1543 (SuggestNominations._count_recent_patches):
1544 * Scripts/webkitpy/tool/multicommandtool.py:
1545 (MultiCommandTool.main):
1546 * Scripts/webkitpy/tool/servers/rebaselineserver.py:
1548 (_move_test_baselines):
1549 * Scripts/webkitpy/tool/steps/addsvnmimetypeforpng_unittest.py:
1550 (AddSvnMimetypeForPngTest.test_run):
1551 * Scripts/webkitpy/tool/steps/checkstyle.py:
1553 * Scripts/webkitpy/tool/steps/commit.py:
1554 (Commit._check_test_expectations):
1556 * Scripts/webkitpy/tool/steps/confirmdiff.py:
1557 (ConfirmDiff._show_pretty_diff):
1558 * Scripts/webkitpy/tool/steps/haslanded.py:
1559 (HasLanded.diff_diff):
1560 * Scripts/webkitpy/tool/steps/preparechangelog.py:
1561 (PrepareChangeLog.run):
1562 * Scripts/webkitpy/tool/steps/promptforbugortitle.py:
1563 (PromptForBugOrTitle.run):
1564 * Scripts/webkitpy/tool/steps/sortxcodeprojectfiles.py:
1565 (SortXcodeProjectFiles.run):
1566 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
1567 (WebDriverW3CWebServer._wait_for_server.check_port):
1568 * TestResultServer/model/datastorefile.py:
1569 (DataStoreFile.save_data):
1570 * jhbuild/jhbuildutils.py:
1571 (enter_jhbuild_environment_if_available):
1573 2017-12-09 Yusuke Suzuki <utatane.tea@gmail.com>
1575 Fix WTF::Hasher tuple expansion with variadic args
1576 https://bugs.webkit.org/show_bug.cgi?id=180623
1578 Reviewed by JF Bastien.
1580 * TestWebKitAPI/Tests/WTF/Hasher.cpp:
1581 (TestWebKitAPI::TEST):
1583 2017-12-09 Konstantin Tokarev <annulen@yandex.ru>
1585 [python] Replace print >> operator with print() function for python3 compatibility
1586 https://bugs.webkit.org/show_bug.cgi?id=180611
1588 Reviewed by Michael Catanzaro.
1590 * CygwinDownloader/cygwin-downloader.py:
1591 (download_url_to_file):
1592 * Scripts/webkitpy/common/system/profiler.py:
1593 (Perf.profile_after_exit):
1594 * Scripts/webkitpy/common/version_check.py:
1595 * Scripts/webkitpy/layout_tests/lint_test_expectations.py:
1597 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1599 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
1601 * Scripts/webkitpy/tool/commands/analyzechangelog.py:
1602 (ChangeLogAnalyzer._print_status):
1603 * Scripts/webkitpy/tool/commands/queries.py:
1604 (BugsToCommit.execute):
1605 (PatchesInCommitQueue.execute):
1606 (PatchesToCommitQueue.execute):
1607 (PatchesToReview._print_report):
1608 (WhatBroke._print_builder_line):
1609 (WhatBroke._print_blame_information_for_builder):
1610 (WhatBroke.execute):
1611 (ResultsFor._print_layout_test_results):
1612 (ResultsFor.execute):
1613 (FailureReason._print_blame_information_for_transition):
1614 (FailureReason._explain_failures_for_builder):
1615 (FailureReason._builder_to_explain):
1616 (FailureReason.execute):
1617 (FindFlakyTests._find_failures):
1618 (FindFlakyTests._print_statistics):
1619 (FindFlakyTests._walk_backwards_from):
1621 (PrintExpectations.execute):
1622 (PrintBaselines.execute):
1623 (PrintBaselines._print_baselines):
1624 (FindResolvedBugs.execute):
1625 * Scripts/webkitpy/tool/commands/rebaseline.py:
1626 (AbstractParallelRebaselineCommand._run_webkit_patch):
1627 (AbstractParallelRebaselineCommand._rebaseline):
1628 * Scripts/webkitpy/tool/servers/gardeningserver.py:
1629 (GardeningHTTPRequestHandler.rebaselineall):
1630 * Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
1631 (GardeningServerTest.disabled_test_rebaselineall.run_command):
1632 (GardeningServerTest):
1634 2017-12-08 Basuke Suzuki <Basuke.Suzuki@sony.com>
1636 [Win] The way to detect Windows 10 is wrong
1637 https://bugs.webkit.org/show_bug.cgi?id=179344
1638 <rdar://problem/35562264>
1640 Reviewed by Alex Christensen.
1642 Python2.7 doesn't return correct information on Windows 10.
1643 Use platform.win32_ver() instead of sys.getwindowsversion().
1645 * Scripts/webkitpy/common/system/platforminfo.py:
1646 (PlatformInfo._win_version):
1647 (PlatformInfo._win_version_str):
1648 * Scripts/webkitpy/common/system/platforminfo_unittest.py:
1650 (fake_sys.FakeSysModule):
1652 (fake_platform.FakePlatformModule.win32_ver):
1653 (TestPlatformInfo.test_os_name_and_wrappers):
1654 (TestPlatformInfo.test_os_version):
1655 (TestPlatformInfo.test_display_name):
1656 (TestPlatformInfo.test_total_bytes_memory):
1658 2017-12-08 Basuke Suzuki <Basuke.Suzuki@sony.com>
1660 [WinCairo] Fix runtime error after r225229
1661 https://bugs.webkit.org/show_bug.cgi?id=180614
1663 Reviewed by Alex Christensen.
1665 The list of fallback versions doesn't match with version name mapping introduced recently.
1666 It should be safe by creating the list automatically from the name map for consistency.
1668 * Scripts/webkitpy/common/version_name_map.py:
1669 (VersionNameMap.__init__):
1670 (VersionNameMap.to_name):
1671 (VersionNameMap.from_name):
1673 (VersionNameMap.names):
1674 (VersionNameMap.mapping_for_platform):
1675 * Scripts/webkitpy/port/win.py:
1677 (WinCairoPort.default_baseline_search_path):
1679 2017-12-08 David Quesada <david_quesada@apple.com>
1681 ApplicationManifestParser should strip whitespace from the raw input
1682 https://bugs.webkit.org/show_bug.cgi?id=180539
1683 rdar://problem/35915075
1685 Reviewed by Joseph Pecoraro.
1687 Added an API test for parsing manifests with surrounding whitespace.
1689 Also drive-by fix ApplicationManifestParserTest.Display. Earlier versions of the
1690 manifest spec explicitly stated that the "display" value should be treated as if
1691 it were run through String.prototype.trim(), which allowed for the really weird
1692 edge case of an array containing one string. This behavior was lost when I changed
1693 ApplicationManifestParser's JSON parsing from using JavaScriptCore to WTF's JSON
1694 parsing. Update the unit test accordingly.
1696 * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
1699 2017-12-08 Konstantin Tokarev <annulen@yandex.ru>
1701 [python] Replace print operator with print() function for python3 compatibility
1702 https://bugs.webkit.org/show_bug.cgi?id=180592
1704 Reviewed by Michael Catanzaro.
1706 * BuildSlaveSupport/wait-for-SVN-server.py:
1707 (getLatestSVNRevision):
1708 (waitForSVNRevision):
1709 * Scripts/download-latest-github-release.py:
1710 (find_latest_release):
1712 * Scripts/update-wasm-gcc-torture.py:
1716 (waterfall_known_failures):
1717 * Scripts/update-webkit-wincairo-libs.py:
1718 * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
1719 (BenchmarkRunner.show_results):
1720 * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
1721 (SimpleHTTPServerDriver.fetch_result):
1722 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
1723 (list_benchmark_plans):
1724 * Scripts/webkitpy/bindings/main.py:
1725 (BindingsTests.generate_from_idl):
1726 (BindingsTests.generate_supplemental_dependency):
1727 (BindingsTests.detect_changes):
1728 (BindingsTests.run_tests):
1729 (BindingsTests.main):
1730 * Scripts/webkitpy/codegen/main.py:
1731 (BuiltinsGeneratorTests.generate_from_js_builtins):
1732 (BuiltinsGeneratorTests.detect_changes):
1733 (BuiltinsGeneratorTests.single_builtin_test):
1734 (BuiltinsGeneratorTests.run_test):
1735 (BuiltinsGeneratorTests.run_tests):
1736 (BuiltinsGeneratorTests.main):
1737 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
1738 (MockBugzilla.fetch_attachment):
1739 * Scripts/webkitpy/common/net/buildbot/buildbot.py:
1740 (Builder._fetch_revision_to_build_map):
1741 * Scripts/webkitpy/common/system/crashlogs.py:
1742 (CrashLogs._find_newest_log_win):
1743 * Scripts/webkitpy/common/system/outputcapture_unittest.py:
1744 (OutputCaptureTest.test_output_capture_scope):
1745 * Scripts/webkitpy/common/system/profiler.py:
1746 (GooglePProf.profile_after_exit):
1747 (Perf.profile_after_exit):
1748 * Scripts/webkitpy/common/system/user.py:
1749 (User.prompt_with_multiple_lists):
1750 (User.prompt_with_list):
1751 (User._warn_if_application_is_xcode):
1752 (User.edit_changelog):
1753 * Scripts/webkitpy/inspector/main.py:
1754 (InspectorGeneratorTests.generate_from_json):
1755 (InspectorGeneratorTests.detect_changes):
1756 (InspectorGeneratorTests.run_tests):
1757 (InspectorGeneratorTests.main):
1758 * Scripts/webkitpy/layout_tests/controllers/manager.py:
1759 (Manager._print_expectation_line_for_test):
1760 (Manager._print_expectations_for_subset):
1761 (Manager._print_expectations_for_subset.if):
1762 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
1764 * Scripts/webkitpy/port/config_standalone.py:
1766 * Scripts/webkitpy/port/darwin_testcase.py:
1767 (DarwinTest.test_spindump.logging_run_command):
1768 (DarwinTest.test_sample_process.logging_run_command):
1769 * Scripts/webkitpy/port/ios.py:
1770 (IOSPort.clean_up_test_run):
1771 * Scripts/webkitpy/port/ios_device_unittest.py:
1772 (IOSDeviceTest.test_spindump.logging_run_command):
1773 (IOSDeviceTest.test_sample_process.logging_run_command):
1774 * Scripts/webkitpy/port/ios_simulator_unittest.py:
1775 (IOSSimulatorTest.test_xcrun.throwing_run_command):
1776 * Scripts/webkitpy/port/leakdetector_unittest.py:
1777 (test_count_total_bytes_and_unique_leaks.mock_run_script):
1778 * Scripts/webkitpy/port/mac_unittest.py:
1779 (MacTest.test_xcrun.throwing_run_command):
1780 * Scripts/webkitpy/style/checkers/contributors.py:
1781 (ContributorsChecker.check):
1782 * Scripts/webkitpy/tool/commands/abstractlocalservercommand.py:
1783 (AbstractLocalServerCommand.execute):
1784 * Scripts/webkitpy/tool/commands/adduserstogroups.py:
1785 (AddUsersToGroups.execute):
1786 * Scripts/webkitpy/tool/commands/analyzechangelog.py:
1787 (AnalyzeChangeLog._generate_jsons):
1788 (AnalyzeChangeLog.execute):
1789 (ChangeLogAnalyzer._set_filename):
1790 (ChangeLogAnalyzer.analyze):
1791 * Scripts/webkitpy/tool/commands/bugfortest.py:
1792 (BugForTest.execute):
1793 * Scripts/webkitpy/tool/commands/bugsearch.py:
1795 * Scripts/webkitpy/tool/commands/findusers.py:
1796 (FindUsers.execute):
1797 * Scripts/webkitpy/tool/commands/gardenomatic.py:
1798 (GardenOMatic.execute):
1799 * Scripts/webkitpy/tool/commands/rebaseline.py:
1800 (RebaselineTest.execute):
1801 * Scripts/webkitpy/tool/commands/rebaselineserver.py:
1802 (RebaselineServer._prepare_config):
1803 * Scripts/webkitpy/tool/commands/setupgitclone.py:
1804 (SetupGitClone.execute):
1805 (SetupGitClone._get_username_and_email):
1806 * Scripts/webkitpy/tool/commands/suggestnominations.py:
1807 (SuggestNominations._print_nominations):
1808 (SuggestNominations._print_counts):
1809 * Scripts/webkitpy/tool/commands/upload.py:
1810 (CommitMessageForCurrentDiff.execute):
1811 (CreateBug.prompt_for_bug_title_and_comment):
1812 * Scripts/webkitpy/tool/multicommandtool.py:
1813 (HelpCommand.execute):
1814 * Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
1815 (TestGardeningHTTPRequestHandler._serve_text):
1816 (TestGardeningHTTPRequestHandler._serve_json):
1817 * Scripts/webkitpy/tool/steps/addsvnmimetypeforpng.py:
1818 (AddSvnMimetypeForPng.run):
1819 * Scripts/webkitpy/tool/steps/suggestreviewers.py:
1820 (SuggestReviewers.run):
1821 * Scripts/webkitpy/w3c/test_importer.py:
1822 (TestImporter.update_tests_options):
1823 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
1824 (WebDriverTestRunnerSelenium.run):
1825 * TestResultServer/model/jsonresults_unittest.py:
1826 * gtk/ycm_extra_conf.py:
1828 * lldb/lldb_webkit.py:
1831 2017-12-08 Eric Carlson <eric.carlson@apple.com>
1833 Move Logger from PAL to WTF so it can be used outside of WebCore
1834 https://bugs.webkit.org/show_bug.cgi?id=180561
1836 Reviewed by Alex Christensen.
1838 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
1839 (TestWebKitAPI::TEST_F):
1841 2017-12-08 Chris Dumez <cdumez@apple.com>
1843 Different WebKitTestRunner instances should use different service worker registrations databases
1844 https://bugs.webkit.org/show_bug.cgi?id=180589
1846 Reviewed by Brady Eidson.
1848 * WebKitTestRunner/TestController.cpp:
1849 (WTR::TestController::generateContextConfiguration const):
1851 2017-12-08 Fujii Hironori <Hironori.Fujii@sony.com>
1853 Tools/ImageDiff/cg/PlatformImageCG.cpp doesn't need to include <wtf/MathExtras.h>
1854 https://bugs.webkit.org/show_bug.cgi?id=180578
1856 Reviewed by Konstantin Tokarev.
1858 * ImageDiff/cg/PlatformImageCG.cpp: Removed unnecessary #include <wtf/MathExtras.h>.
1860 2017-12-08 Zan Dobersek <zdobersek@igalia.com>
1862 Unreviewed WPE build fix after r225671.
1864 * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
1865 Include the ActivateFonts.h header to have a usable
1866 WTR::installFakeHelvetica() function declaration.
1868 2017-12-07 Zan Dobersek <zdobersek@igalia.com>
1870 Unreviewed GTK+ and WPE build fix.
1872 Add TestRunner::installFakeHelvetica(), WTR::installFakeHelvetica()
1873 and WTF::uninstallFakeHelvetica() definitions, filling out the
1874 declarations added in r225641. This fills up missing symbols in the
1875 WKTR's InjectedBundle library, unbreaking layout tests for both
1878 * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
1879 (WTR::installFakeHelvetica):
1880 (WTR::uninstallFakeHelvetica):
1881 * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
1882 (WTR::TestRunner::inspectorTestStubURL):
1883 (WTR::TestRunner::installFakeHelvetica):
1884 * WebKitTestRunner/InjectedBundle/wpe/ActivateFontsWPE.cpp:
1885 (WTR::installFakeHelvetica):
1886 (WTR::uninstallFakeHelvetica):
1887 * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
1888 (WTR::TestRunner::installFakeHelvetica):
1890 2017-12-07 Yusuke Suzuki <utatane.tea@gmail.com>
1892 Use StaticLock instead of NeverDestroyed<Lock>
1893 https://bugs.webkit.org/show_bug.cgi?id=180507
1895 Reviewed by Saam Barati.
1897 * DumpRenderTree/JavaScriptThreading.cpp:
1898 (javaScriptThreads):
1899 (runJavaScriptThread):
1900 (startJavaScriptThreads):
1901 (stopJavaScriptThreads):
1902 (javaScriptThreadsMutex): Deleted.
1904 2017-12-07 Alex Christensen <achristensen@webkit.org>
1906 Always synchronously continue with fragment navigations
1907 https://bugs.webkit.org/show_bug.cgi?id=180544
1908 <rdar://problem/34815986> and <rdar://problem/35126690>
1910 Reviewed by Geoffrey Garen.
1912 * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
1913 (-[DecidePolicyForNavigationActionFragmentDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1915 Add a test that verifies that decidePolicyForNavigationAction is called for fragment navigations.
1917 2017-12-07 Myles C. Maxfield <mmaxfield@apple.com>
1919 [Cocoa] Add SPI to disallow user-installed fonts
1920 https://bugs.webkit.org/show_bug.cgi?id=180062
1921 <rdar://problem/35042408>
1923 Reviewed by Simon Fraser.
1925 * WebKitTestRunner/InjectedBundle/ActivateFonts.h:
1926 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1927 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1928 (WTR::InjectedBundlePage::resetAfterTest):
1929 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1930 * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
1931 (WTR::resourcesDirectoryURL):
1932 (WTR::activateFonts):
1933 (WTR::installFakeHelvetica):
1934 (WTR::uninstallFakeHelvetica):
1935 * WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
1936 (WTR::TestRunner::installFakeHelvetica):
1937 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1938 * WebKitTestRunner/fonts/FakeHelvetica-Helvetica-400.ttf: Added.
1939 * WebKitTestRunner/fonts/FakeHelvetica-Helvetica-500.ttf: Added.
1940 * WebKitTestRunner/fonts/FakeHelvetica-Helvetica2-400.ttf: Added.
1941 * WebKitTestRunner/fonts/FakeHelvetica-Helvetica2-500.ttf: Added.
1943 2017-12-07 David Quesada <david_quesada@apple.com>
1945 [Web App Manifest] Support display-mode media feature
1946 https://bugs.webkit.org/show_bug.cgi?id=180376
1947 rdar://problem/35837993
1949 Reviewed by Geoffrey Garen.
1951 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1952 * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
1953 (WebCore::operator<<):
1954 (ApplicationManifestParserTest::testDisplay):
1956 Add unit tests for the parsing of the 'display' manifest property.
1958 * TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm:
1959 (TestWebKitAPI::TEST):
1960 * TestWebKitAPI/Tests/WebKitCocoa/display-mode.html: Added.
1961 Update API tests to include _WKApplicationManifest.displayMode.
1963 * WebKitTestRunner/TestController.cpp:
1964 (WTR::parseStringTestHeaderValueAsRelativePath):
1965 (WTR::updateTestOptionsFromTestHeader):
1966 * WebKitTestRunner/TestOptions.h:
1967 (WTR::TestOptions::hasSameInitializationOptions const):
1968 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1969 (WTR::TestController::platformCreateWebView):
1970 Teach WKTR to look for and apply an app manifest. A new <!--webkit-test-runner-->
1971 directive 'applicationManifest' can specify a path (relative to the test file itself)
1972 to a JSON app manifest to be applied to the web view before running the test.
1974 2017-12-07 Eric Carlson <eric.carlson@apple.com>
1976 Add WebRTC watchlist rule, update MediaStream rule
1977 https://bugs.webkit.org/show_bug.cgi?id=180536
1978 <rdar://problem/35914066>
1980 Reviewed by Youenn Fablet.
1982 * Scripts/webkitpy/common/config/watchlist:
1984 2017-12-06 Chris Dumez <cdumez@apple.com>
1986 We should be able to recover after a Service Worker process crash
1987 https://bugs.webkit.org/show_bug.cgi?id=180477
1989 Reviewed by Brady Eidson and Youenn Fablet.
1991 Add testRunner API to terminate the Service Worker process.
1993 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1994 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1995 (WTR::TestRunner::terminateServiceWorkerProcess):
1996 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1997 * WebKitTestRunner/TestController.cpp:
1998 (WTR::TestController::terminateServiceWorkerProcess):
1999 * WebKitTestRunner/TestController.h:
2000 * WebKitTestRunner/TestInvocation.cpp:
2001 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2003 2017-12-02 Darin Adler <darin@apple.com>
2005 Modernize some aspects of text codecs, eliminate WebKit use of strcasecmp
2006 https://bugs.webkit.org/show_bug.cgi?id=180009
2008 Reviewed by Alex Christensen.
2010 * DumpRenderTree/cg/PixelDumpSupportCG.cpp: Removed include of StringExtras.h.
2012 * TestWebKitAPI/CMakeLists.txt: Added LineEnding.cpp.
2013 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
2014 * TestWebKitAPI/Tests/WTF/LineEnding.cpp: Added. Has tests for the LineEnding
2015 functions rewritten in this patch.
2017 * TestWebKitAPI/Tests/WebCore/TextCodec.cpp: Updated test now that the decode
2018 function doesn't have defaults for as many arguments any more. Also changed so
2019 that the tests log the fact that the decode function returns an error and updated
2020 expected results to expect all the errors.
2022 * WebKitTestRunner/cg/TestInvocationCG.cpp: Ditto.
2024 2017-12-06 Alexey Proskuryakov <ap@apple.com>
2026 Exclude another leak callstack.
2028 * Scripts/webkitpy/port/leakdetector.py: (LeakDetector._callstacks_to_exclude_from_leaks):
2030 2017-12-06 Jeff Miller <jeffm@apple.com>
2032 -[WKWebViewConfiguration copyWithZone] doesn't copy _groupIdentifier
2033 https://bugs.webkit.org/show_bug.cgi?id=180504
2035 Reviewed by Geoffrey Garen.
2037 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm:
2038 Add a test to verify that the _groupIdentifier is copied.
2040 2017-12-06 David Quesada <david_quesada@apple.com>
2042 [Web App Manifest] Add SPI for fetching the manifest
2043 https://bugs.webkit.org/show_bug.cgi?id=180294
2044 rdar://problem/34747968
2046 Reviewed by Geoffrey Garen.
2048 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2049 * TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm: Added.
2050 Added two API tests for _WKApplicationManifest:
2051 - Testing _WKApplicationManifest's conformance to NSCoding.
2052 - Testing -[WKWebView _getApplicationManifestWithCompletionHandler:], verifying the
2053 values of the resulting _WKApplicationManifest.
2054 (TestWebKitAPI::TEST):
2056 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2057 Added a new testRunner method getApplicationManifestThen(), used by the LayoutTests
2058 to request the document load its associated manifest. The layout tests formerly called
2059 an unimplemented function getManifestThen(), but I added 'Application' to somewhat
2060 differentiate this from the app cache manifest.
2062 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2063 (WTR::InjectedBundle::didReceiveMessageToPage):
2064 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2065 (WTR::TestRunner::getApplicationManifestThen):
2066 (WTR::TestRunner::didGetApplicationManifest):
2067 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2068 * WebKitTestRunner/TestInvocation.cpp:
2069 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2071 2017-12-05 Stephan Szabo <stephan.szabo@sony.com>
2073 Switch windows build to Visual Studio 2017
2074 https://bugs.webkit.org/show_bug.cgi?id=172412
2076 Reviewed by Per Arne Vollan.
2078 * Scripts/build-webkit:
2079 * Scripts/webkitdirs.pm:
2080 (visualStudioInstallDir):
2081 (visualStudioInstallDirFallback):
2082 (msBuildInstallDir):
2085 (generateBuildSystemFromCMakeProject):
2086 (pickLegacyVisualStudioInstallation): Deleted.
2087 (visualStudioInstallDirLegacy): Deleted.
2088 (visualStudioVersion): Deleted.
2089 (visualStudioVersionFromInstallDir): Deleted.
2091 2017-12-05 Alex Christensen <achristensen@webkit.org>
2093 Fix crash when loading a file URL that does not have a fileSystemPath representation
2094 https://bugs.webkit.org/show_bug.cgi?id=180448
2095 <rdar://problem/22805921>
2097 Reviewed by Chris Dumez.
2099 * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
2101 Test opening a URL that used to crash WebKit.
2103 2017-12-05 Michael Saboff <msaboff@apple.com>
2105 Make WebKit build for ARM64_32
2106 https://bugs.webkit.org/show_bug.cgi?id=180447
2108 Reviewed by Mark Lam.
2110 Add an instance of the _TestWTFAlwaysMissing for arm64_32 architecture.
2112 * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd:
2114 2017-12-05 Aakash Jain <aakash_jain@apple.com>
2116 [build.webkit.org] Rename mastercfg_unittest to steps_unittest
2117 https://bugs.webkit.org/show_bug.cgi?id=180432
2119 Rubber-stamped by Alexey Proskuryakov.
2121 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Removed.
2122 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Copied from BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py.
2124 2017-12-05 Aakash Jain <aakash_jain@apple.com>
2126 [build.webkit.org] Fix style issues in mastercfg_unittest.py
2127 https://bugs.webkit.org/show_bug.cgi?id=180439
2129 Reviewed by Alexey Proskuryakov.
2131 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Added imports directly instead of relying
2132 on imports from other files. We will try to import minimum required modules. Currently we are importing
2133 everything from master.cfg, loadConfig.py, factories.py and steps.py
2135 2017-12-05 Aakash Jain <aakash_jain@apple.com>
2137 [build.webkit.org] Rename MasterCfgTest to RunWebKitTestsTest
2138 https://bugs.webkit.org/show_bug.cgi?id=180391
2140 Rubber-stamped by Alexey Proskuryakov.
2142 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2143 (RunWebKitTestsTest): Renamed from MasterCfgTest.
2145 2017-12-01 Filip Pizlo <fpizlo@apple.com>
2147 GC constraint solving should be parallel
2148 https://bugs.webkit.org/show_bug.cgi?id=179934
2150 Reviewed by JF Bastien.
2152 * Scripts/run-jsc-benchmarks: Add splay-latency test, since this change needed to be carefully validated with that benchmark.
2153 * TestWebKitAPI/CMakeLists.txt:
2154 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2155 * TestWebKitAPI/Tests/WTF/ConcurrentPtrHashSet.cpp: Added. This has unit tests of the new concurrent data structure. The tests focus on correctness under serial execution, which appears to be enough for now (it's so easy to catch a concurrency bug by just running the GC).
2156 (TestWebKitAPI::TEST):
2158 2017-12-04 Nan Wang <n_wang@apple.com>
2160 AX: AOM: Implement relation type properties
2161 https://bugs.webkit.org/show_bug.cgi?id=179500
2163 Reviewed by Ryosuke Niwa.
2165 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2166 (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
2167 (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
2168 (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
2169 (WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
2170 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2171 (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
2172 (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
2174 2017-12-04 Simon Fraser <simon.fraser@apple.com>
2176 Minor DisplayRefreshMonitor-related cleanup
2177 https://bugs.webkit.org/show_bug.cgi?id=179802
2179 Reviewed by Sam Weinig.
2181 New trace point for when the CVDisplayLink fires on its own thread.
2183 * Tracing/SystemTracePoints.plist:
2185 2017-12-04 David Quesada <david_quesada@apple.com>
2187 Add a class for parsing application manifests
2188 https://bugs.webkit.org/show_bug.cgi?id=177973
2189 rdar://problem/34747949
2191 Reviewed by Geoffrey Garen.
2193 Add basic unit tests for ApplicationManifestParser. For each of the implemented top-level properties,
2194 attempt to parse manifests with varying types of valid and invalid data to ensure the resulting
2195 ApplicationManifest is configured with the appropriate values per the spec.
2197 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Add ENABLE_APPLICATION_MANIFEST feature flag.
2198 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2199 * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp: Added.
2200 (ApplicationManifestParserTest::SetUp):
2201 (ApplicationManifestParserTest::parseString):
2202 (ApplicationManifestParserTest::parseTopLevelProperty):
2203 (ApplicationManifestParserTest::testStartURL):
2204 (ApplicationManifestParserTest::testName):
2205 (ApplicationManifestParserTest::testDescription):
2206 (ApplicationManifestParserTest::testShortName):
2207 (ApplicationManifestParserTest::testScope):
2208 (assertManifestHasDefaultValues):
2211 2017-12-04 Aakash Jain <aakash_jain@apple.com>
2213 Add docstring in EarlyWarningSystemTask to explain return values
2214 https://bugs.webkit.org/show_bug.cgi?id=180303
2216 Reviewed by Daniel Bates.
2218 * Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
2219 (EarlyWarningSystemTask.run): Added docstring to explain return values.
2220 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
2221 (AbstractEarlyWarningSystem.review_patch): Added comment to explain the result of unlocking a patch.
2223 2017-12-04 JF Bastien <jfbastien@apple.com>
2225 Update std::expected to match libc++ coding style
2226 https://bugs.webkit.org/show_bug.cgi?id=180264
2228 Reviewed by Alex Christensen.
2230 Update tests according to name changes as well as removal of
2233 * TestWebKitAPI/Tests/WTF/Expected.cpp:
2234 (std::experimental::fundamentals_v3::operator<<):
2235 (TestWebKitAPI::TEST):
2236 (WTF::operator<<): Deleted.
2237 * TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp:
2238 (TestWebKitAPI::testParseHTMLInteger):
2239 (TestWebKitAPI::testParseHTMLNonNegativeInteger):
2241 2017-12-04 Ross Kirsling <ross.kirsling@sony.com>
2243 download-latest-github-release.py should use existing release ANY time latest is not found
2244 https://bugs.webkit.org/show_bug.cgi?id=180293
2246 Reviewed by Per Arne Vollan.
2248 * Scripts/download-latest-github-release.py:
2249 (find_latest_release):
2250 Handle all URLErrors, not just HTTPErrors. Stop special-casing 404s.
2253 Rearrange logic so any failure to detect a latest release falls back to an existing release. Improve logging.
2257 (load_version_info): Renamed from existing_version info.
2258 (has_latest_release): Deleted.
2261 2017-12-04 Joseph Pecoraro <pecoraro@apple.com>
2263 Exclude some more leak callstacks
2264 https://bugs.webkit.org/show_bug.cgi?id=180379
2266 Reviewed by Alexey Proskuryakov.
2268 * Scripts/webkitpy/port/leakdetector.py:
2269 (LeakDetector._types_to_exclude_from_leaks):
2270 (LeakDetector._callstacks_to_exclude_from_leaks):
2271 (LeakDetector._leaks_args):
2272 (LeakDetector._types_to_exlude_from_leaks): Deleted.
2273 * Scripts/webkitpy/port/leakdetector_unittest.py:
2274 (LeakDetectorTest.test_leaks_args):
2276 2017-12-03 Yusuke Suzuki <utatane.tea@gmail.com>
2278 WTF shouldn't have both Thread and ThreadIdentifier
2279 https://bugs.webkit.org/show_bug.cgi?id=180308
2281 Reviewed by Darin Adler.
2283 * DumpRenderTree/mac/DumpRenderTree.mm:
2285 (runThread): Deleted.
2286 (runPthread): Deleted.
2287 (testThreadIdentifierMap): Deleted.
2288 * TestWebKitAPI/CMakeLists.txt:
2289 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2290 * TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
2291 * TestWebKitAPI/Tests/WTF/Threading.cpp: Added.
2292 (TestWebKitAPI::TEST):
2294 2017-12-03 Aakash Jain <aakash_jain@apple.com>
2296 webkitpy EWS keeps retrying a failing patch
2297 https://bugs.webkit.org/show_bug.cgi?id=180302
2299 Reviewed by Alexey Proskuryakov.
2301 * Scripts/webkitpy/tool/bot/patchanalysistask.py:
2302 (PatchAnalysisTask._test_patch): Instead of returning false, call report_failure()
2303 which raises an exception, this exception is catched by earlywarningsystem.py and
2304 it posts a comment on bugzilla. Returning false simply unlocks the patch and returns
2307 2017-12-03 Darin Adler <darin@apple.com>
2309 Add WTF::Hasher, an easier to use replacement for WTF::IntegerHasher
2310 https://bugs.webkit.org/show_bug.cgi?id=180318
2312 Reviewed by JF Bastien.
2314 * TestWebKitAPI/CMakeLists.txt: Added Hasher.cpp.
2315 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
2317 * TestWebKitAPI/Tests/WTF/Hasher.cpp: Added. Contains tests of the new
2320 * TestWebKitAPI/Tests/WTF/StringHasher.cpp: Include StringHasher.h instead of
2323 2017-12-01 Carlos Garcia Campos <cgarcia@igalia.com>
2325 WebDriver: auto-install pytest instead of importing it from wpt tools directory
2326 https://bugs.webkit.org/show_bug.cgi?id=180243
2328 Reviewed by Brian Burg.
2330 We don't really need the (old) version included in wpt tools dir, so we can simply remove it and use autoinstall
2333 * Scripts/webkitpy/thirdparty/__init__.py:
2334 (AutoinstallImportHook.find_module): Check pytest.
2335 (AutoinstallImportHook._install_pytest): Install pytest.
2336 * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py: Import autoinstalled pytest.
2337 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
2338 (WebDriverTestRunnerW3C.run): Update the subtest path since the new pytest uses a different strategy for
2340 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py: Import autoinstalled pytest.
2342 2017-12-01 Dewei Zhu <dewei_zhu@apple.com>
2344 Hardcoded python path is not compatible with virtual environment.
2345 https://bugs.webkit.org/show_bug.cgi?id=180300
2347 Reviewed by Stephanie Lewis.
2349 Hardcoding '/usr/bin/python' does not work with python virtual environment.
2350 Use 'python' instead.
2352 * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
2353 (SimpleHTTPServerDriver.serve):
2355 2017-12-01 Aakash Jain <aakash_jain@apple.com>
2357 [build.webkit.org] Move python code to load config from master.cfg in separate file
2358 https://bugs.webkit.org/show_bug.cgi?id=180278
2360 Reviewed by Daniel Bates.
2362 * BuildSlaveSupport/build.webkit.org-config/master.cfg: Moved appropriate code to loadConfig.py
2363 * BuildSlaveSupport/build.webkit.org-config/loadConfig.py: Ditto.
2364 * BuildSlaveSupport/build.webkit.org-config/steps.py: Removed extra import.
2366 2017-12-01 Brian Burg <bburg@apple.com>
2368 Web Inspector: move Inspector::Protocol::Array<T> to JSON namespace
2369 https://bugs.webkit.org/show_bug.cgi?id=173662
2371 Reviewed by Joseph Pecoraro.
2373 Add duplicate test cases for JSON::ArrayOf<T> based on JSON::Array.
2375 * TestWebKitAPI/Tests/WTF/JSONValue.cpp:
2376 (TestWebKitAPI::TEST):
2378 2017-12-01 Wenson Hsieh <wenson_hsieh@apple.com>
2380 [Attachment Support] Implement SPI for clients to update a given attachment's data
2381 https://bugs.webkit.org/show_bug.cgi?id=180184
2382 <rdar://problem/35355731>
2384 Reviewed by Tim Horton.
2386 Adds two new API tests to exercise the attachment data update flow.
2388 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2389 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
2390 (-[_WKAttachment synchronouslySetDisplayOptions:error:]):
2391 (-[_WKAttachment synchronouslyRequestData:]):
2392 (-[_WKAttachment synchronouslySetData:newContentType:newFilename:error:]):
2393 (TestWebKitAPI::TEST):
2395 2017-12-01 Alicia Boya García <aboya@igalia.com>
2397 [GTK] Add SampleMap.cpp API tests to CMake
2398 https://bugs.webkit.org/show_bug.cgi?id=180252
2400 Reviewed by Žan Doberšek.
2402 * TestWebKitAPI/PlatformGTK.cmake:
2404 2017-11-30 Carlos Garcia Campos <cgarcia@igalia.com>
2406 WebDriver: add support for importing and running selenium tests
2407 https://bugs.webkit.org/show_bug.cgi?id=180145
2409 Reviewed by Brian Burg.
2411 We currently import and run W3C tests, which are the best ones to ensure our implementation is spec
2412 compliant. However, the selenium API is what user will actually use in the end, so it's important to ensure that
2413 we don't break the selenium support. This patch adds webdriver_test_runner_selenium.py and
2414 webdriver_selenium_executor.py to run selenium tests. The script import-w3c-webdriver-tests has been renamed as
2415 import-webdriver-tests and it can now import selenium tests too.
2417 * Scripts/import-w3c-webdriver-tests: Removed.
2418 * Scripts/import-webdriver-tests: Added.
2420 (Importer.__init__):
2421 (Importer.download_tests):
2422 (Importer.import_tests):
2423 (Importer.import_tests.should_skip_file):
2424 * Scripts/webkitpy/webdriver_tests/webdriver_driver.py:
2425 (WebDriver.browser_path):
2427 (WebDriver.browser_args):
2428 (WebDriver.selenium_name):
2429 * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py:
2430 (WebDriverGtk.browser_path):
2432 (WebDriverGtk.browser_args):
2433 (WebDriverGtk.capabilities):
2434 (WebDriverGtk.selenium_name):
2435 * Scripts/webkitpy/webdriver_tests/webdriver_driver_wpe.py:
2436 (WebDriverWPE.browser_args):
2437 (WebDriverWPE.capabilities):
2438 * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py: Added.
2439 (_ensure_directory_in_path):
2441 (CollectRecorder.__init__):
2442 (CollectRecorder.pytest_collectreport):
2443 (WebDriverSeleniumExecutor):
2444 (WebDriverSeleniumExecutor.__init__):
2445 (WebDriverSeleniumExecutor.collect):
2446 (WebDriverSeleniumExecutor.run):
2447 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
2448 (WebDriverTestRunner):
2449 (WebDriverTestRunner.__init__):
2450 (WebDriverTestRunner.run):
2451 (WebDriverTestRunner.print_results):
2452 (WebDriverTestRunner.dump_results_to_json_file):
2453 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py: Added.
2454 (WebDriverTestRunnerSelenium):
2455 (WebDriverTestRunnerSelenium.__init__):
2456 (WebDriverTestRunnerSelenium._tests_dir):
2457 (WebDriverTestRunnerSelenium.collect_tests):
2458 (WebDriverTestRunnerSelenium.run):
2459 (WebDriverTestRunnerSelenium.results):
2460 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
2461 (WebDriverTestRunnerW3C.__init__):
2462 (WebDriverTestRunnerW3C.run):
2463 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
2465 2017-11-30 Alex Christensen <achristensen@webkit.org>
2467 REGRESSION (r224791): cookies are shared between ephemeral sessions in the same process pool
2468 https://bugs.webkit.org/show_bug.cgi?id=180235
2470 Reviewed by Joseph Pecoraro.
2472 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2473 * TestWebKitAPI/Tests/WebKitCocoa/CookiePrivateBrowsing.mm: Added.
2474 (-[CookiePrivateBrowsingDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2477 2017-11-30 Stephan Szabo <stephan.szabo@sony.com>
2479 Make LegacyCustomProtocolManager optional for network process
2480 https://bugs.webkit.org/show_bug.cgi?id=176230
2482 Reviewed by Alex Christensen.
2484 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2486 2017-11-30 Dewei Zhu <dewei_zhu@apple.com>
2488 HTTP server driver is responsible for ensuring the dependencies of HTTP server.
2489 https://bugs.webkit.org/show_bug.cgi?id=180231
2491 Reviewed by Stephanie Lewis.
2493 Added the logic to ensure system environment meet the requirments of launching the http server.
2495 * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
2496 (SimpleHTTPServerDriver.serve):
2497 (SimpleHTTPServerDriver.set_device_id):
2498 (SimpleHTTPServerDriver):
2499 (SimpleHTTPServerDriver._ensure_http_server_dependencies):
2501 2017-11-30 Basuke Suzuki <Basuke.Suzuki@sony.com>
2503 [WinCairo] Cannot build without Internet connection
2504 https://bugs.webkit.org/show_bug.cgi?id=180068
2506 Reviewed by Alex Christensen
2508 With no Internet connection, if libraries has been downloaded
2509 before, trust that version and keep building.
2511 * Scripts/download-latest-github-release.py:
2514 (has_latest_release):
2517 2017-11-30 Alex Christensen <achristensen@webkit.org>
2519 WKURLSchemeHandler.request should include HTTPBody
2520 https://bugs.webkit.org/show_bug.cgi?id=180220
2522 Reviewed by Brady Eidson.
2524 * TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm:
2525 (-[FormSubmissionDelegate webView:startURLSchemeTask:]):
2527 2017-11-30 Carlos Alberto Lopez Perez <clopez@igalia.com>
2529 Add a script for automatically running the buildbot configurations on a test environment.
2530 https://bugs.webkit.org/show_bug.cgi?id=169084
2532 Reviewed by Michael Catanzaro.
2534 This new script does the following:
2535 - Creates a temporal workingdir.
2536 - Installs buildbot and its dependencies there (very same version used by the webkit.org buildbot master https://build.webkit.org/about ).
2537 This is important as there are problems that that may not be detected if you don't test with the same version that will be used on production.
2538 - Copies the buildmaster config files to the temporal workingdir.
2539 - Performs the required steps to start a buildmaster.
2540 - Creates the required config for each slave and starts all of them.
2542 The test buildmaster should be accessible at http://localhost:8710/ allowing to trigger manual builds.
2543 This allows to test any configuration changes on this test environment that is pretty much identical to the production one.
2545 * BuildSlaveSupport/build.webkit.org-config/run-buildbot-test.py: Added.
2546 (check_tcp_port_open):
2547 (upgrade_db_needed):
2549 (print_if_error_stdout_stderr):
2550 (setup_master_workdir):
2551 (wait_for_master_ready):
2557 (check_buildbot_installed):
2559 (configdir_is_valid):
2562 2017-11-30 Aakash Jain <aakash_jain@apple.com>
2564 [build.webkit.org] Move python code from master.cfg in separate files
2565 https://bugs.webkit.org/show_bug.cgi?id=180180
2567 Reviewed by Alexey Proskuryakov.
2569 * BuildSlaveSupport/build.webkit.org-config/master.cfg: Moved code to steps.py and master.cfg appropriately.
2570 * BuildSlaveSupport/build.webkit.org-config/factories.py: Moved all factory related code from master.cfg.
2571 * BuildSlaveSupport/build.webkit.org-config/steps.py: Moved all steps related code from master.cfg
2573 2017-11-30 Wenson Hsieh <wenson_hsieh@apple.com>
2575 WKAttachmentTests.InPlaceImageAttachmentToggleDisplayMode times out on macOS bots
2576 https://bugs.webkit.org/show_bug.cgi?id=180200
2578 Reviewed by Alexey Proskuryakov.
2580 Rewrites an API test to avoid checking against the hard-coded platform-dependent size of an attachment element.
2581 Instead, first insert the attachment element as an icon and compute its size, and then check that the size of
2582 the element is restored to this original value after toggling the display mode to in-place mode and back.
2584 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2585 (-[TestWKWebView attachmentElementSize]):
2586 (-[TestWKWebView waitForAttachmentElementSizeToBecome:]):
2587 (TestWebKitAPI::TEST):
2588 (platformAttachmentIconElementSize): Deleted.
2590 2017-11-30 Michael Catanzaro <mcatanzaro@igalia.com>
2592 [WPE] Stop building Wayland in JHBuild moduleset
2593 https://bugs.webkit.org/show_bug.cgi?id=179951
2595 Reviewed by Žan Doberšek.
2597 Since Wayland is not used for running tests, and since it does not seem to depend on
2598 anything in the JHBuild moduleset, I think we can remove it safely without having to worry
2599 that the system version of Wayland might use libraries in the JHBuild environment (which
2602 * wpe/install-dependencies: Install Wayland.
2603 * wpe/jhbuild.modules: Stop building Wayland.
2605 2017-11-30 Alexey Proskuryakov <ap@apple.com>
2607 Silence the BitVector leak for
2608 https://bugs.webkit.org/show_bug.cgi?id=121662
2610 The out of line data pointer isn't stored directly, so the leaks tool cannot see it.
2612 * Scripts/webkitpy/port/leakdetector.py:
2613 (LeakDetector._callstacks_to_exclude_from_leaks):
2615 2017-11-29 Aakash Jain <aakash_jain@apple.com>
2617 Fix build.webkit.org broken unit-test after r225080
2618 https://bugs.webkit.org/show_bug.cgi?id=180176
2620 Reviewed by Carlos Garcia Campos.
2622 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Updated expected_build_steps.
2624 2017-11-29 Wenson Hsieh <wenson_hsieh@apple.com>
2626 [Attachment Support] Implement SPI for clients to make an attachment element display in-place
2627 https://bugs.webkit.org/show_bug.cgi?id=180153
2628 <rdar://problem/35735252>
2630 Reviewed by Tim Horton.
2632 Adds new API tests to cover inserting in-place attachments and updating the display mode of existing attachments,
2633 as well as performing a few editing operations (paragraph insertion, cut/paste, list insertion) on attachment
2636 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2637 (platformAttachmentIconElementSize):
2640 (displayOptionsWithMode):
2641 (-[TestWKWebView waitForAttachmentElementSizeToBecome:]):
2642 (-[_WKAttachment synchronouslySetDisplayOptions:error:]):
2643 (TestWebKitAPI::TEST):
2645 2017-11-29 Simon Fraser <simon.fraser@apple.com>
2647 API test fix after r225288.
2649 Make the test work on iOS.
2651 * TestWebKitAPI/Tests/WebKit/NoHistoryItemScrollToFragment.mm:
2652 (-[DidScrollToFragmentScrollViewDelegate scrollViewDidScroll:]):
2653 (TestWebKitAPI::TEST):
2655 2017-11-29 Simon Fraser <simon.fraser@apple.com>
2657 REGRESSION (r213590): Scrolling to anchors broken in web views when content loaded via HTML string
2658 https://bugs.webkit.org/show_bug.cgi?id=180155
2659 rdar://problem/34220827
2661 Reviewed by Zalan Bujtas.
2663 API test that loads a page with a relative anchor, and simulates a click to scroll to it.
2665 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2666 * TestWebKitAPI/Tests/WebKit/MediaStreamTrackDetached.mm:
2667 (TestWebKitAPI::TEST):
2668 * TestWebKitAPI/Tests/WebKit/NoHistoryItemScrollToFragment.mm: Added.
2669 (-[DidScrollToFragmentDelegate _webViewDidScroll:]):
2670 (TestWebKitAPI::TEST):
2671 * TestWebKitAPI/Tests/WebKit/scroll-to-anchor.html: Added.
2673 2017-11-29 Ryan Haddad <ryanhaddad@apple.com>
2675 webkitpy EWS should be present on the dashboard.
2676 https://bugs.webkit.org/show_bug.cgi?id=179801
2678 Reviewed by Aakash Jain.
2680 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2681 (BubbleQueueServer): Add Webkitpy EWS.
2683 2017-11-29 Simon Fraser <simon.fraser@apple.com>
2685 Viewport unit values affected by Comand-+ zoom
2686 https://bugs.webkit.org/show_bug.cgi?id=145614
2688 Reviewed by Zalan Bujtas.
2690 Fix Command+ and Command- in MiniBrowser to do zooming, rather than being tied
2691 to editing commands.
2693 * MiniBrowser/mac/MainMenu.xib:
2695 2017-11-29 Alex Christensen <achristensen@webkit.org>
2697 Add test for _WKVisitedLinkStore.addVisitedLinkWithString
2698 https://bugs.webkit.org/show_bug.cgi?id=180152
2700 Reviewed by Chris Dumez.
2702 * TestWebKitAPI/Tests/WebKitCocoa/VisitedLinkStore.mm:
2703 (TestWebKitAPI::TEST):
2705 2017-11-29 Jonathan Bedard <jbedard@apple.com>
2707 webkitpy: Trying to use iOS versions from machines without iOS SDKs doesn't make sense
2708 https://bugs.webkit.org/show_bug.cgi?id=179534
2709 <rdar://problem/35469509>
2711 Reviewed by Brent Fulgham.
2713 Provide more specific information in builders.py so that machines do not try and calculate
2714 an iOS SDK version while running tests.
2716 * Scripts/webkitpy/port/builders.py: Explicitly specify a version for iOS Simulator.
2717 * Scripts/webkitpy/port/ios_simulator.py:
2718 (IOSSimulatorPort._version_from_name): Attempt to extract the iOS version from the name
2720 (IOSSimulatorPort.ios_version): Use specified iOS version if a version is detected in
2721 in the provided name string (just like Mac).
2723 2017-11-29 Robin Morisset <rmorisset@apple.com>
2725 The recursive tail call optimisation is wrong on closures
2726 https://bugs.webkit.org/show_bug.cgi?id=179835
2728 Reviewed by Saam Barati.
2730 This just includes merge-sort-cps.js to the list of benchmarks ran by run-jsc-benchmarks --tail-bench
2732 * Scripts/run-jsc-benchmarks:
2734 2017-11-28 Carlos Garcia Campos <cgarcia@igalia.com>
2736 WebDriver: add an option to dump test results to a json file
2737 https://bugs.webkit.org/show_bug.cgi?id=180082
2739 Reviewed by Brian Burg.
2741 Add --json-output command line option to run-webdriver-tests to dump test results to a json file in a format
2742 compatible with the W3C report. WebDriverTestResult now represents a test file and contains a list of
2743 subtests, instead of having one WebDriverTestResult per subtest. This way we can store also the harness result
2744 and dump the results to different formats.
2746 * Scripts/run-webdriver-tests:
2747 * Scripts/webkitpy/webdriver_tests/webdriver_test_result.py:
2748 (WebDriverTestResult.__init__):
2749 (WebDriverTestResult):
2750 (WebDriverTestResult.add_subtest_results):
2751 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
2752 (WebDriverTestRunner.print_results):
2753 (WebDriverTestRunner):
2754 (WebDriverTestRunner.dump_results_to_json_file):
2755 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
2756 (WebDriverTestRunnerW3C.run):
2758 2017-11-28 Alexey Proskuryakov <ap@apple.com>
2760 Stop silencing leaks in TextCodecICU::registerCodecs, as the problem was fixed a while ago.
2761 https://bugs.webkit.org/show_bug.cgi?id=118505
2763 Reviewed by Joseph Pecoraro.
2765 * Scripts/valgrind/suppressions.txt:
2766 * Scripts/webkitpy/port/leakdetector.py:
2767 (LeakDetector._callstacks_to_exclude_from_leaks):
2769 2017-11-28 Ms2ger <Ms2ger@igalia.com>
2771 Stop modifying self.expectations in TestExpectationLine.expected_behavior.
2772 https://bugs.webkit.org/show_bug.cgi?id=180074
2774 Reviewed by Simon Fraser.
2776 In particular, getting the property multiple times on a skipped test
2777 expectation line (which happens when using
2778 `Tools/Scripts/run-webkit-tests --print-expectations` if a directory
2779 containing multiple tests is skipped) would yield [pass, skip], then
2780 [pass, skip, skip], then [pass, skip, skip, skip], and so on.
2782 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2783 (TestExpectationLine.expected_behavior): copy self.expectations before modifying it.
2785 2017-11-14 Carlos Garcia Campos <cgarcia@igalia.com>
2787 Move JSONValues to WTF and convert uses of InspectorValues.h to JSONValues.h
2788 https://bugs.webkit.org/show_bug.cgi?id=173793
2790 Reviewed by Joseph Pecoraro.
2792 * TestWebKitAPI/CMakeLists.txt:
2793 * TestWebKitAPI/PlatformGTK.cmake:
2794 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2795 * TestWebKitAPI/Tests/WTF/JSONValue.cpp: Renamed from Tools/TestWebKitAPI/Tests/JavaScriptCore/InspectorValue.cpp.
2796 (TestWebKitAPI::TEST):
2798 2017-11-28 Ryan Haddad <ryanhaddad@apple.com>
2800 Bugs filed from the flakiness dashboard should include a link to the dashboard
2801 https://bugs.webkit.org/show_bug.cgi?id=180090
2803 Reviewed by Aakash Jain.
2805 * TestResultServer/static-dashboards/flakiness_dashboard.js:
2807 Open the bug compose page in a new tab and include a link
2808 to the flakiness dashboard results for the selected test.
2810 2017-11-28 Jonathan Bedard <jbedard@apple.com>
2812 webkitpy: Standardize Version representation
2813 https://bugs.webkit.org/show_bug.cgi?id=179677
2814 <rdar://problem/35711277>
2816 Reviewed by Alex Christensen.
2818 Standardize a single method of representing versions in the Version object
2819 constructor. Provide static methods for converting string and lists/tuples
2822 * Scripts/webkitpy/common/system/platforminfo.py:
2823 (PlatformInfo.__init__): Parse Version object from string instead of using
2825 (PlatformInfo.xcode_sdk_version): Ditto.
2826 (PlatformInfo.xcode_version): Ditto.
2827 (PlatformInfo._win_version): Construct Version object from list.
2828 * Scripts/webkitpy/common/system/platforminfo_mock.py:
2829 (MockPlatformInfo.xcode_sdk_version):
2830 (MockPlatformInfo.xcode_version):
2831 * Scripts/webkitpy/common/version.py:
2833 (Version.from_string): Parse string of the form 'x.x.x'.
2834 (Version.from_iterable): Construct a version object from a list, tuple or
2835 other indexable object.
2836 (Version.__init__): Construct a Version object from integers.
2837 * Scripts/webkitpy/common/version_name_map.py:
2838 (VersionNameMap.__init__): Use integer Version constructor.
2839 (VersionNameMap._automap_to_major_version): Ditto.
2840 (VersionNameMap.to_name):
2841 (VersionNameMap.strip_name_formatting): Construct Version from string.
2842 * Scripts/webkitpy/common/version_name_map_unittest.py:
2843 (VersionMapTestCase.test_mac_version_by_name): Use integer Version constructor.
2844 (VersionMapTestCase.test_mac_name_by_version): Ditto.
2845 (VersionMapTestCase.test_ios_name_by_version): Ditto.
2846 * Scripts/webkitpy/common/version_unittest.py:
2847 (VersionTestCase.test_string_constructor):
2848 (VersionTestCase.test_from_list):
2849 (VersionTestCase.test_from_tuple):
2850 (VersionTestCase.test_int_constructor):
2851 (VersionTestCase.test_len):
2852 (VersionTestCase.test_set_by_int):
2853 (VersionTestCase.test_set_by_string):
2854 (VersionTestCase.test_get_by_int):
2855 (VersionTestCase.test_get_by_string):
2856 (VersionTestCase.test_string):
2857 (VersionTestCase.test_contained_in):
2858 (VersionTestCase.test_compare_versions):
2859 (VersionTestCase.test_list_constructor): Deleted.
2860 (VersionTestCase.test_tuple_constructor): Deleted.
2861 (VersionTestCase.test_copy_constructor): Deleted.
2862 (VersionTestCase.test_none_constructor): Deleted.
2863 * Scripts/webkitpy/port/ios.py:
2864 (IOSPort.default_baseline_search_path): Handle case where ios_version is None.
2865 * Scripts/webkitpy/port/ios_device.py:
2866 (IOSDevicePort.ios_version): Return None rather than an empty version.
2867 * Scripts/webkitpy/port/ios_simulator.py:
2868 (IOSSimulatorPort.simulator_runtime): Parse Version object from string instead
2869 of using the constructor.
2870 (IOSSimulatorPort.ios_version): Return None rather than an empty version.
2871 * Scripts/webkitpy/xcode/simulator.py:
2872 (Simulator._parse_runtimes): Parse Version object from string instead of using
2874 (Simulator._parse_devices): Ditto.
2875 * Scripts/webkitpy/xcode/simulator_unittest.py:
2877 2017-11-28 Daniel Bates <dabates@apple.com>
2879 [Cocoa] First pass at implementing alternative presentation button element
2880 https://bugs.webkit.org/show_bug.cgi?id=179785
2881 Part of <rdar://problem/34917108>
2883 Reviewed by Brent Fulgham.
2885 Add a test that substitutes the alternative presentation button for an element in
2886 the page and clicks it.
2888 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test.
2889 * TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm: Added.
2890 (didClickAlternativePresentationButton):
2891 (-[ClickAlternativePresentationButton webProcessPlugIn:didCreateBrowserContextController:]):
2892 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
2894 (-[AlternativePresentationButtonDelegate _webView:didClickAlternativePresentationButtonWithUserInfo:]):
2895 (-[AlternativePresentationButtonDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2897 2017-11-28 Carlos Garcia Campos <cgarcia@igalia.com>
2899 REGRESSION(r225166): [GTK] Skipped unit tests are considered failures after glib upgrade
2900 https://bugs.webkit.org/show_bug.cgi?id=180072
2902 Reviewed by Michael Catanzaro.
2904 This is a bug in GLib that has already been fixed. Backport the patch to fix it until there's a new GLib release
2907 * gtk/jhbuild.modules:
2908 * gtk/patches/glib-gtester-do-not-consider-skipped-tests-as-failures.patch: Added.
2910 2017-11-28 Fujii Hironori <Hironori.Fujii@sony.com>
2912 webkitpy: PlatformInfo raises AssertionError "assert self.os_version is not None" in Cygwin since Bug 179621
2913 https://bugs.webkit.org/show_bug.cgi?id=180069
2915 Reviewed by Daniel Bates.
2917 "Version 10.0.16299" was interpreted as 0.0.16299. Fix the wrong
2918 regexp for 'ver' command.
2920 * Scripts/webkitpy/common/system/platforminfo.py:
2921 (PlatformInfo._win_version_from_cmd): Replace \d with \d+.
2923 2017-11-28 Carlos Garcia Campos <cgarcia@igalia.com>
2925 [GTK] WebDriver: disable XSS auditor when running WebDriver tests
2926 https://bugs.webkit.org/show_bug.cgi?id=180075
2928 Reviewed by Carlos Alberto Lopez Perez.
2930 Some tests are now doing inline('<script>window.alert()</script>') which is rejected by the XSS auditor because
2931 the script source is part of the request URL.
2933 * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py:
2934 (WebDriverGtk.capabilities): Disable XSS auditor.
2936 2017-11-28 Carlos Garcia Campos <cgarcia@igalia.com>
2938 WebDriver: add timeout option to run-webdriver-tests script
2939 https://bugs.webkit.org/show_bug.cgi?id=179940
2941 Reviewed by Carlos Alberto Lopez Perez.
2943 We need to handle timeouts to be able to run the tests in the bots. pytest doesn't support timeouts, but there's
2944 a plugin pytest_timeout that can be used for that.
2946 * Scripts/run-webdriver-tests: Add --timeout command line option.
2947 * Scripts/webkitpy/thirdparty/__init__.py:
2948 (AutoinstallImportHook.find_module): Check if pytest_timeout is imported to install it.
2949 (AutoinstallImportHook._install_pytest_timeout): Install pytest_timeout from pypi.
2950 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
2951 (WebDriverTestRunnerW3C.__init__): Set PYTEST_TIMEOUT env var with the timeout given.
2952 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
2953 (WebDriverW3CExecutor.run): Clarify that the timeout received by do_wdspec() is ignored, and pass 0 instead of 25.
2955 2017-11-27 Aakash Jain <aakash_jain@apple.com>
2957 Do not run webkitpy tests on multiple EWSes
2958 https://bugs.webkit.org/show_bug.cgi?id=179834
2960 Reviewed by Alexey Proskuryakov.
2962 Do not run webkitpy tests in every EWS. We now have
2963 a dedicated webkitpy test EWS.
2965 * Scripts/webkitpy/tool/steps/runtests.py:
2966 (RunTests.run): Do not run webkitpy tests in EWSes. These tests will still run
2967 when --non-interactive option is not passed.
2969 2017-11-27 Jonathan Bedard <jbedard@apple.com>
2971 webkitpy: Better name-version mapping (Part 1)
2972 https://bugs.webkit.org/show_bug.cgi?id=179621
2973 <rdar://problem/35589585>
2975 Reviewed by David Kilzer.
2977 Mapping version numbers to version names should occur in a central location.
2978 This has a few advantages. First, it makes iterating through versions easier.
2979 Second, it allows for apple_additions to define an additional set of name
2980 mappings. Lastly, it will allow, in a future patch, for us to track version
2981 instead of version name, only mapping version to version name when required.
2983 * Scripts/webkitpy/common/system/platforminfo.py:
2984 (PlatformInfo.__init__):
2985 (PlatformInfo._determine_os_name): Use VersionNameMap instead of custom functions
2986 mapping version to name.
2987 (PlatformInfo._determine_linux_version): Deleted.
2988 (PlatformInfo._determine_mac_version): Deleted.
2989 (PlatformInfo._determine_win_version): Deleted.
2990 * Scripts/webkitpy/common/system/platforminfo_unittest.py:
2991 (TestPlatformInfo.test_os_name_and_wrappers):
2992 (TestPlatformInfo.test_os_version):
2993 (TestPlatformInfo.test_display_name):
2994 (TestPlatformInfo.test_total_bytes_memory):
2995 * Scripts/webkitpy/common/version.py:
2996 (Version.contained_in): Add partial version mapping.
2997 * Scripts/webkitpy/common/version_name_map.py: Added.
2998 (VersionNameMap): Holds a mapping of version name to version object.
2999 (VersionNameMap.map): Don't re-create VersionNameMap every time.
3000 (VersionNameMap.__init__): Initialize mapping, use platform to
3001 define the default system platform.
3002 (VersionNameMap._automap_to_major_version): Some operating systems, such
3003 as iOS, have a naming scheme based on their major version and os name.
3004 Automatically generate such mappings.
3005 (VersionNameMap.to_name): Given a version object, platform name and
3006 table, find the closest matching version name.
3007 (VersionNameMap.strip_name_formatting): Remove spaces and extract the major version,
3008 if a version string is included in the name.
3009 (VersionNameMap.from_name): Return an os name and version given a version name.
3010 * Scripts/webkitpy/common/version_name_map_unittest.py: Added.
3011 (VersionMapTestCase):
3012 (VersionMapTestCase.test_default_system_platform):
3013 (VersionMapTestCase.test_mac_version_by_name):
3014 (VersionMapTestCase.test_ios_version_by_name):
3015 (VersionMapTestCase.test_mac_name_by_version):
3016 (VersionMapTestCase.test_ios_name_by_version):
3017 * Scripts/webkitpy/common/version_unittest.py:
3018 (VersionTestCase.test_contained_in):
3019 * Scripts/webkitpy/port/ios_device.py:
3020 (IOSDevicePort.ios_version): Map os_version name to version number.
3022 2017-11-27 Don Olmstead <don.olmstead@sony.com>
3024 [CMake][Win] Conditionally select DLL CRT or static CRT
3025 https://bugs.webkit.org/show_bug.cgi?id=170594
3027 Reviewed by Alex Christensen.
3029 * DumpRenderTree/PlatformWin.cmake:
3030 * MiniBrowser/win/CMakeLists.txt:
3032 2017-11-27 Yacine Bandou <yacine.bandou_ext@softathome.com>
3034 [GTK][WPE] Add "enable-encrypted-media" property to WebKitWebSettings
3035 https://bugs.webkit.org/show_bug.cgi?id=18005
3037 Reviewed by Michael Catanzaro.
3039 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
3040 (testWebKitSettings):
3042 2017-11-27 Tim Horton <timothy_horton@apple.com>
3044 One too many zeroes in macOS version number in FeatureDefines
3045 https://bugs.webkit.org/show_bug.cgi?id=180011
3047 Reviewed by Dan Bernstein.
3049 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3051 2017-11-27 Per Arne Vollan <pvollan@apple.com>
3053 [Win] The number of webkit-patch iterations on EWS should be configurable.
3054 https://bugs.webkit.org/show_bug.cgi?id=178517
3056 Reviewed by Darin Adler.
3058 Add a new RESET_AFTER_ITERATION argument to the EWS shell script.
3060 * EWSTools/start-queue-win.sh:
3062 2017-11-27 Per Arne Vollan <pvollan@apple.com>
3064 [Win] Switch to VS2017 on EWS bots.
3065 https://bugs.webkit.org/show_bug.cgi?id=178516
3067 Reviewed by Darin Adler.
3069 * EWSTools/start-queue-win.sh:
3071 2017-11-27 Carlos Garcia Campos <cgarcia@igalia.com>
3073 [SOUP] Layout test media/track/track-text-track-cue-list.html crash with g_source_set_ready_time: assertion 'source->ref_count > 0' failed
3074 https://bugs.webkit.org/show_bug.cgi?id=176806
3076 Reviewed by Carlos Alberto Lopez Perez.
3078 This was caused by a GLib bug that has already been fixed. Upgrade glib to 2.54.2.
3080 * gtk/jhbuild.modules:
3081 * gtk/patches/gdate-suppress-string-format-literal-warning.patch: Removed.
3083 2017-11-24 Darin Adler <darin@apple.com>
3085 * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
3086 (TestWebKitAPI::TEST): Added a test for OptionSet operator|.
3088 2017-11-24 Mark Lam <mark.lam@apple.com>
3090 Move unsafe jsc shell test functions to the $vm object.
3091 https://bugs.webkit.org/show_bug.cgi?id=179980
3093 Reviewed by Yusuke Suzuki.
3095 Always set --useDollarVM=true for jsc runs of benchmarks. This is needed because
3096 some microbenchmarks relies on createBuiltin().
3098 Also set --useDollarVM=true for runExceptionFuzz and runExecutableAllocationFuzz.
3100 * Scripts/run-jsc-benchmarks:
3101 * Scripts/run-jsc-stress-tests:
3103 2017-11-23 Darin Adler <darin@apple.com>
3105 Reduce WTF::String operations that do unnecessary Unicode operations instead of ASCII
3106 https://bugs.webkit.org/show_bug.cgi?id=179907
3108 Reviewed by Sam Weinig.
3110 * DumpRenderTree/mac/DumpRenderTree.mm:
3111 (changeWindowScaleIfNeeded): Use containsIgnoringASCIICase.
3112 * WebKitTestRunner/TestInvocation.cpp:
3113 (WTR::TestInvocation::urlContains const): Ditto.
3115 2017-11-22 Ali Juma <ajuma@chromium.org>
3117 Implement VisualViewport API attributes
3118 https://bugs.webkit.org/show_bug.cgi?id=179385
3120 Reviewed by Frédéric Wang.
3122 Enable the VisualViewportAPI in layout tests.
3124 * DumpRenderTree/mac/DumpRenderTree.mm:
3125 (enableExperimentalFeatures):
3126 * DumpRenderTree/win/DumpRenderTree.cpp:
3127 (enableExperimentalFeatures):
3129 2017-11-22 Tim Horton <timothy_horton@apple.com> and Michael Catanzaro <mcatanzaro@igalia.com>
3131 Remove build-webkit's notion of feature flags having a default value
3132 https://bugs.webkit.org/show_bug.cgi?id=177338
3134 Reviewed by Carlos Alberto Lopez Perez.
3136 Delegate feature flag default values to the build system.
3137 (FeatureDefines.xcconfig for Xcode, WebKitFeatures.cmake and Options*.cmake for CMake, and FeatureDefines.h for everyone)
3139 * BuildSlaveSupport/build.webkit.org-config/config.json:
3140 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3142 Update GTK and WPE buildbot configuration to use --no-experimental-features on old stable
3143 bots instead of --default-cmake-features.
3145 * Scripts/build-webkit:
3146 (cMakeArgsFromFeatures): Deleted.
3147 Default feature values to 'undef'.
3148 Remove the --default-cmake-features argument; it is now the default.
3149 Add --no-experimental-features to replace it.
3150 Stop printing the default feature flag value in the help.
3151 Avoid propagating undefined values to the build system;
3152 only mention flags that are overridden on the command line.
3154 This has the nice side effect of using the default CMake features
3155 for CMake builds, but still allowing toggling of them using the
3156 prettier --FEATURE and --no-FEATURE arguments.
3158 * Scripts/webkitdirs.pm:
3159 (generateBuildSystemFromCMakeProject):
3160 No longer need to suppress CMake warnings about unused arguments.
3162 * Scripts/webkitperl/FeatureList.pm:
3163 Remove the default values from the feature list.
3165 2017-11-22 Mark Lam <mark.lam@apple.com>
3167 [Re-landing] Pass --useDollarVM=true to all JSC tests.
3168 https://bugs.webkit.org/show_bug.cgi?id=179647
3170 Reviewed by Saam Barati.
3172 * Scripts/run-jsc-stress-tests:
3174 2017-11-22 Commit Queue <commit-queue@webkit.org>
3176 Unreviewed, rolling out r225093.
3177 https://bugs.webkit.org/show_bug.cgi?id=179938
3179 Compilation failed on WinCairo 64-bit Release (Requested by
3184 "Implement VisualViewport API attributes"
3185 https://bugs.webkit.org/show_bug.cgi?id=179385
3186 https://trac.webkit.org/changeset/225093
3188 2017-11-21 Ali Juma <ajuma@chromium.org>
3190 Implement VisualViewport API attributes
3191 https://bugs.webkit.org/show_bug.cgi?id=179385
3193 Reviewed by Frédéric Wang.
3195 Enable the VisualViewportAPI in layout tests.
3197 * DumpRenderTree/mac/DumpRenderTree.mm:
3198 (enableExperimentalFeatures):
3199 * DumpRenderTree/win/DumpRenderTree.cpp:
3200 (enableExperimentalFeatures):
3202 2017-11-21 Carlos Garcia Campos <cgarcia@igalia.com>
3204 [WPE] Run unit tests in the bots
3205 https://bugs.webkit.org/show_bug.cgi?id=179910
3207 Reviewed by Michael Catanzaro.
3209 Add a step to run unit tests in WPE test bots.
3211 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3215 (TestFactory.__init__):
3216 (RunGtkAPITests.start): Deleted.
3217 (RunGtkAPITests.commandComplete): Deleted.
3218 (RunGtkAPITests.evaluateCommand): Deleted.
3219 (RunGtkAPITests.getText): Deleted.
3220 (RunGtkAPITests.getText2): Deleted.
3221 * wpe/jhbuild.modules: Upgrade WPEBackend-mesa to fix crashes when running unit tests.
3223 2017-11-21 Tomas Popela <tpopela@redhat.com>
3225 Fix WebKitGTK+ compilation
3227 Reviewed by Carlos Garcia Campos.
3229 File "/builddir/build/BUILD/webkitgtk-2.19.2/Tools/gtk/generate-gtkdoc", line 31, in <module>
3231 ImportError: No module named common
3233 * gtk/manifest.txt.in:
3234 Add Tools/glib/common.py to the tarball.
3236 2017-11-21 Ms2ger <Ms2ger@igalia.com>
3238 [GTK] Avoid warning in jhbuildrc.
3239 https://bugs.webkit.org/show_bug.cgi?id=179913
3241 Reviewed by Carlos Garcia Campos.
3243 Apparently this is not quite a real python file; this declaration causes
3245 I: unknown keys defined in configuration file: top_level_directory
3246 which break run-webkit-tests.
3250 2017-11-21 Carlos Garcia Campos <cgarcia@igalia.com>
3252 Unreviewed. Fix WPE make distcheck.
3254 * wpe/manifest.txt.in: Add generate-inspector-gresource-manifest.py to the tarball.
3256 2017-11-20 Carlos Garcia Campos <cgarcia@igalia.com>
3258 Unreviewed. Fix GTK+ make distcheck.
3260 * gtk/manifest.txt.in: Add generate-inspector-gresource-manifest.py to the tarball.
3262 2017-11-20 Michael Catanzaro <mcatanzaro@igalia.com>
3264 [WPE] Disable ACCELERATED_2D_CANVAS in FeatureList.pm
3265 https://bugs.webkit.org/show_bug.cgi?id=179889
3267 Reviewed by Darin Adler.
3269 * Scripts/webkitperl/FeatureList.pm:
3271 2017-11-20 Michael Catanzaro <mcatanzaro@igalia.com>
3273 Unreviewed, speculative attempt to fix run-gtk-tests after r225047
3274 https://bugs.webkit.org/show_bug.cgi?id=173772
3276 * jhbuild/jhbuildutils.py:
3277 (enter_jhbuild_environment_if_available):
3279 2017-11-20 Mario Sanchez Prada <mario@endlessm.com>
3281 [GTK] New API to add, retrieve and delete cookies via WebKitCookieManager
3282 https://bugs.webkit.org/show_bug.cgi?id=177932
3284 Reviewed by Carlos Garcia Campos.
3286 Added new test cases to cover the newly added API for WebKitCookieManager:
3287 webkit_cookie_manager_add_cookie, webkit_cookie_manager_get_cookies and
3288 webkit_cookie_manager_delete_cookie.
3290 * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
3291 (testCookieManagerAddCookie): Added.
3292 (testCookieManagerGetCookies): Added.
3293 (testCookieManagerDeleteCookie): Added.
3294 (serverCallback): Small update to avoid hardcoding strings we reuse.
3295 (beforeAll): Added the new test cases to the test suite.
3297 2017-11-20 Stephan Szabo <stephan.szabo@sony.com>
3299 [Win] Update ruby JSC test writer for gigacage changes
3300 https://bugs.webkit.org/show_bug.cgi?id=178757
3302 Reviewed by Keith Miller.
3304 * Scripts/webkitruby/jsc-stress-test-writer-ruby.rb:
3305 Add additionalEnv to ruby test writer Plan
3307 2017-11-20 Michael Catanzaro <mcatanzaro@igalia.com>
3309 Remove ENABLE_ALLINONE_BUILD option
3310 https://bugs.webkit.org/show_bug.cgi?id=179823
3312 Reviewed by Darin Adler.
3314 * Scripts/webkitperl/FeatureList.pm:
3316 2017-11-20 Carlos Garcia Campos <cgarcia@igalia.com>
3318 Unreviewed. Fix WPE build after r225047.
3320 Remove changes from an old patch committed by mistake in r225047.
3322 * WebKitTestRunner/PlatformWebView.h:
3323 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
3324 (WTR::PlatformWebView::windowSnapshotImage):
3326 2017-11-20 Carlos Garcia Campos <cgarcia@igalia.com>
3328 [WPE] Add run-wpe-tests script to run WPE glib API tests
3329 https://bugs.webkit.org/show_bug.cgi?id=173772
3331 Reviewed by Michael Catanzaro.
3333 Move common code from run-gtk-tests to api_test_runner.py, to be shared by both run-gtk-tests and un-wpe-tests.
3335 * Scripts/run-gtk-tests:
3337 (GtkTestRunner.__init__):
3338 (GtkTestRunner._start_accessibility_daemons):
3339 (GtkTestRunner._setup_testing_environment):
3340 (GtkTestRunner._tear_down_testing_environment):
3341 (GtkTestRunner.is_glib_test):
3342 (GtkTestRunner.is_google_test):
3343 * Scripts/run-wpe-tests: Added.
3345 (WPETestRunner.__init__):
3346 (WPETestRunner.is_glib_test):
3347 (WPETestRunner.is_google_test):
3348 * Scripts/webkitpy/port/headlessdriver.py: Added.
3350 (HeadlessDriver._setup_environ_for_test):
3351 (HeadlessDriver._start):
3352 * Scripts/webkitpy/port/headlessdriver_unittest.py: Added.
3353 (HeadlessDriverTest):
3354 (HeadlessDriverTest.make_driver):
3355 (HeadlessDriverTest.make_environment):
3356 (HeadlessDriverTest.test_environment_needed_variables):
3357 (HeadlessDriverTest.test_environment_forbidden_variables):
3358 * Scripts/webkitpy/port/wpe.py:
3359 (WPEPort._driver_class):
3360 * WebKitTestRunner/PlatformWebView.h:
3361 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
3362 (WTR::PlatformWebView::windowSnapshotImage):
3363 * glib/api_test_runner.py: Copied from Tools/Scripts/run-gtk-tests.
3365 (SkippedTest.__init__):
3366 (SkippedTest.__str__):
3367 (SkippedTest.skip_entire_suite):
3368 (SkippedTest.skip_for_build_type):
3371 (TestRunner.__init__):
3372 (TestRunner._test_programs_base_dir):
3373 (TestRunner._get_tests_from_dir):
3374 (TestRunner._get_tests):
3375 (TestRunner._create_driver):
3376 (TestRunner._setup_testing_environment):
3377 (TestRunner._tear_down_testing_environment):
3378 (TestRunner._test_cases_to_skip):
3379 (TestRunner._should_run_test_program):
3380 (TestRunner._kill_process):
3381 (TestRunner._start_timeout):
3382 (TestRunner._start_timeout._alarm_handler):
3383 (TestRunner._stop_timeout):
3384 (TestRunner._waitpid):
3385 (TestRunner._run_test_glib):
3386 (TestRunner._run_test_glib.parse_line):
3387 (TestRunner._run_test_glib.parse_line.set_test_result):
3388 (TestRunner._get_tests_from_google_test_suite):
3389 (TestRunner._run_google_test):
3390 (TestRunner._run_google_test_suite):
3391 (TestRunner.is_glib_test):
3392 (TestRunner.is_google_test):
3393 (TestRunner._run_test):
3394 (TestRunner.run_tests):
3396 * glib/common.py: Renamed from Tools/gtk/common.py.
3397 (get_build_path.is_valid_build_directory):
3398 * gtk/generate-gtkdoc:
3400 * gtk/ycm_extra_conf.py:
3402 2017-11-20 Carlos Garcia Campos <cgarcia@igalia.com>
3404 [WPE] Build C API tests
3405 https://bugs.webkit.org/show_bug.cgi?id=179817
3407 Reviewed by Michael Catanzaro.
3409 * TestWebKitAPI/CMakeLists.txt:
3410 * TestWebKitAPI/PlatformGTK.cmake:
3411 * TestWebKitAPI/PlatformWPE.cmake:
3412 * TestWebKitAPI/PlatformWebView.h:
3413 * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp:
3414 (TestWebKitAPI::Util::URLForNonExistentResource):
3415 (TestWebKitAPI::Util::isKeyDown):
3416 * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp: Added.
3417 (TestWebKitAPI::PlatformWebView::PlatformWebView):
3418 (TestWebKitAPI::PlatformWebView::~PlatformWebView):
3419 (TestWebKitAPI::PlatformWebView::initialize):
3420 (TestWebKitAPI::PlatformWebView::page const):
3421 (TestWebKitAPI::PlatformWebView::resizeTo):
3422 (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
3423 (TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
3424 (TestWebKitAPI::PlatformWebView::simulateRightClick):
3425 (TestWebKitAPI::PlatformWebView::simulateMouseMove):
3427 2017-11-20 Carlos Garcia Campos <cgarcia@igalia.com>
3429 [WPE] Add env var WPE_USE_HEADLESS_VIEW_BACKEND
3430 https://bugs.webkit.org/show_bug.cgi?id=173770
3432 Reviewed by Michael Catanzaro.
3434 Move HeadlessViewBackend implementation to a common place and build it as a private static library to be used by
3435 WTR, GLib API tests and eventually C API tests too. WTR uses the HeadlessViewBackend unconditionally, but GLib
3436 API tests use it only when WPE_USE_HEADLESS_VIEW_BACKEND environment variable is present and not "0".
3438 * CMakeLists.txt: Include wpe/HeadlessViewBackend directory for developer builds.
3439 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
3440 (testAutomationSessionRequestSession):
3441 * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
3442 (testCookieManagerEphemeral):
3443 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
3444 (testPrivateBrowsing):
3445 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
3446 (testWebContextProxySettings):
3447 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
3448 (testWebViewWebContext):
3449 (testWebViewEphemeral):
3450 * TestWebKitAPI/glib/PlatformWPE.cmake:
3451 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3452 (Test::createWebViewBackend):
3453 (Test::createWebView):
3454 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
3455 (WebViewTest::initializeWebView):
3456 * WebKitTestRunner/PlatformWPE.cmake:
3457 * wpe/HeadlessViewBackend/CMakeLists.txt: Added.
3458 * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp: Renamed from Tools/WebKitTestRunner/wpe/HeadlessViewBackend.cpp.
3459 (HeadlessViewBackend::HeadlessViewBackend):
3460 * wpe/HeadlessViewBackend/HeadlessViewBackend.h: Renamed from Tools/WebKitTestRunner/wpe/HeadlessViewBackend.h.
3462 2017-11-20 Carlos Garcia Campos <cgarcia@igalia.com>
3464 [WPE] webkit_web_view_new() should enable specifying wpe_view_backend object
3465 https://bugs.webkit.org/show_bug.cgi?id=178655
3467 Reviewed by Michael Catanzaro.
3469 Update unit tests to create web views using helper methods that have a different implementation for GTK and
3470 WPE. Also add a new test case to check the new API to create a WebKitWebView with a WPE backend. Use
3471 WKViewCreate in WTR and fix a memory leak in HeadlessViewBackend.
3473 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
3474 (testAutomationSessionRequestSession):
3475 * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
3476 (testWebKitWebViewSessionState):
3477 (testWebKitWebViewSessionStateWithFormData):
3478 (testWebKitWebViewNavigationAfterSessionRestore):
3479 * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
3480 * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
3481 (testWebResourceGetDataError):
3482 * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
3483 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
3484 (testWebViewNewWithUserContentManager):
3485 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
3486 (testWebContextEphemeral):
3487 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
3488 (testWebViewWebContext):
3489 (testWebViewWebContextLifetime):
3490 (testWebViewWebBackend):
3491 (testWebViewSettings):
3493 * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
3494 (testWebsiteDataEphemeral):
3495 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3496 (Test::createWebView):
3497 * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
3498 (HeadlessViewBackend::~HeadlessViewBackend):
3499 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
3500 (WTR::PlatformWebView::PlatformWebView):
3502 2017-11-20 Carlos Garcia Campos <cgarcia@igalia.com>
3504 [GTK][WPE] webkit_cookie_manager_delete_all_cookies doesn't delete the cookies if called before a web process is running
3505 https://bugs.webkit.org/show_bug.cgi?id=175265
3507 Reviewed by Michael Catanzaro.
3511 * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
3512 (testCookieManagerPersistentStorageDeleteAll):
3516 2017-11-19 Tim Horton <timothy_horton@apple.com>
3518 Remove unused TOUCH_ICON_LOADING feature flag
3519 https://bugs.webkit.org/show_bug.cgi?id=179873
3521 Reviewed by Simon Fraser.
3523 * Scripts/webkitperl/FeatureList.pm:
3524 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3526 2017-11-19 Tim Horton <timothy_horton@apple.com>
3528 Remove unused LEGACY_VENDOR_PREFIXES feature flag
3529 https://bugs.webkit.org/show_bug.cgi?id=179872
3531 Reviewed by Darin Adler.
3533 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3535 2017-11-19 Yusuke Suzuki <utatane.tea@gmail.com>
3537 Unreviewed, rolling out r225016.
3539 Break webkit-patch on Ubuntu and Debian Linux
3543 "webkitpy: Better name-version mapping (Part 1)"
3544 https://bugs.webkit.org/show_bug.cgi?id=179621
3545 https://trac.webkit.org/changeset/225016
3547 2017-11-18 Jonathan Bedard <jbedard@apple.com>
3549 webkitpy: Better name-version mapping (Part 1)
3550 https://bugs.webkit.org/show_bug.cgi?id=179621
3551 <rdar://problem/35589585>
3553 Reviewed by David Kilzer.
3555 Mapping version numbers to version names should occur in a central location.
3556 This has a few advantages. First, it makes iterating through versions easier.
3557 Second, it allows for apple_additions to define an additional set of name
3558 mappings. Lastly, it will allow, in a future patch, for us to track version
3559 instead of version name, only mapping version to version name when required.
3561 * Scripts/webkitpy/common/system/platforminfo.py:
3562 (PlatformInfo.__init__):
3563 (PlatformInfo._determine_os_name): Use VersionNameMap instead of custom functions
3564 mapping version to name.
3565 (PlatformInfo._determine_linux_version): Deleted.
3566 (PlatformInfo._determine_mac_version): Deleted.
3567 (PlatformInfo._determine_win_version): Deleted.
3568 * Scripts/webkitpy/common/system/platforminfo_unittest.py:
3569 (TestPlatformInfo.test_os_name_and_wrappers):
3570 (TestPlatformInfo.test_os_version):
3571 (TestPlatformInfo.test_display_name):
3572 (TestPlatformInfo.test_total_bytes_memory):
3573 * Scripts/webkitpy/common/version.py:
3574 (Version.contained_in): Add partial version mapping.
3575 * Scripts/webkitpy/common/version_name_map.py: Added.
3576 (VersionNameMap): Holds a mapping of version name to version object.
3577 (VersionNameMap.map): Don't re-create VersionNameMap every time.
3578 (VersionNameMap.__init__): Initialize mapping, use platform to
3579 define the default system platform.
3580 (VersionNameMap._automap_to_major_version): Some operating systems, such
3581 as iOS, have a naming scheme based on their major version and os name.
3582 Automatically generate such mappings.
3583 (VersionNameMap.to_name): Given a version object, platform name and
3584 table, find the closest matching version name.
3585 (VersionNameMap.strip_name_formatting): Remove spaces and extract the major version,
3586 if a version string is included in the name.
3587 (VersionNameMap.from_name): Return an os name and version given a version name.
3588 * Scripts/webkitpy/common/version_name_map_unittest.py: Added.
3589 (VersionMapTestCase):
3590 (VersionMapTestCase.test_default_system_platform):
3591 (VersionMapTestCase.test_mac_version_by_name):
3592 (VersionMapTestCase.test_ios_version_by_name):
3593 (VersionMapTestCase.test_mac_name_by_version):
3594 (VersionMapTestCase.test_ios_name_by_version):
3595 * Scripts/webkitpy/common/version_unittest.py:
3596 (VersionTestCase.test_contained_in):
3598 2017-11-17 John Wilander <wilander@apple.com>
3600 Storage Access API: UI process should update network process about granted access
3601 https://bugs.webkit.org/show_bug.cgi?id=176943
3602 <rdar://problem/34440612>
3604 Reviewed by Alex Christensen.
3606 This adds the TestRunner function setStatisticsHasHadNonRecentUserInteraction()
3607 which enables testing of prevalent resources with user interaction outside the
3610 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3611 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3612 (WTR::TestRunner::setStorageAccessAPIEnabled):
3613 (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction):
3614 * WebKitTestRunner/InjectedBundle/TestRunner.h:
3615 * WebKitTestRunner/TestController.cpp:
3616 (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction):
3617 * WebKitTestRunner/TestController.h:
3618 * WebKitTestRunner/TestInvocation.cpp:
3619 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3620 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3621 (WTR::initializeWebViewConfiguration):
3622 (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction):
3624 2017-11-17 Ryan Haddad <ryanhaddad@apple.com>
3626 Disable failing API tests for rdar://problem/35344202.
3628 Unreviewed test gardening.
3630 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
3632 2017-11-17 Joanmarie Diggs <jdiggs@igalia.com>
3634 AX: [ATK] Fix WKTR's methods for testing row header and column header presence and count
3635 https://bugs.webkit.org/show_bug.cgi?id=179837
3637 Reviewed by Chris Fleizach.
3639 Add support to rowHeaders() for tables. Return an empty array in rowHeaders()
3640 and columnHeaders() upon failure. Rename getRowHeaders() and getColumnHeaders()
3641 to getTableRowHeaders() and getTableColumnHeaders() respectively.
3643 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3644 (WTR::AccessibilityUIElement::rowHeaders const):
3645 (WTR::AccessibilityUIElement::columnHeaders const):
3646 (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
3647 (WTR::AccessibilityUIElement::attributesOfRowHeaders):
3649 2017-11-16 Don Olmstead <don.olmstead@sony.com>
3651 [WinCairo] Update WinCairoRequirements
3652 https://bugs.webkit.org/show_bug.cgi?id=179790
3654 Reviewed by Alex Christensen.
3656 * TestWebKitAPI/PlatformWin.cmake:
3658 2017-11-16 Daniel Bates <dabates@apple.com>
3660 Add feature define for alternative presentation button element
3661 https://bugs.webkit.org/show_bug.cgi?id=179692
3662 Part of <rdar://problem/34917108>
3664 Reviewed by Andy Estes.
3666 Only enabled on Cocoa platforms by default.
3668 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3670 2017-11-16 Per Arne Vollan <pvollan@apple.com>
3672 Win EWS bots should reboot after N webkit-patch iterations.
3673 https://bugs.webkit.org/show_bug.cgi?id=177970
3675 Reviewed by Brent Fulgham.
3677 * EWSTools/start-queue-win.sh:
3679 2017-11-15 Carlos Garcia Campos <cgarcia@igalia.com>
3681 [WPE] Add initial support for WebDriver
3682 https://bugs.webkit.org/show_bug.cgi?id=179727
3684 Reviewed by Michael Catanzaro.
3686 Make it possible to run WebDriver tests with WPE.
3688 * Scripts/run-webdriver-tests: Add --wpe alias for --platform=wpe.
3689 * Scripts/webkitpy/port/wpe.py:
3690 (WPEPort.__init__): Initialize _display_server from options.
3691 (WPEPort._driver_class): Use WaylandDriver when wayland is passed as display server option.
3692 * Scripts/webkitpy/webdriver_tests/webdriver_driver.py:
3693 (WebDriver.browser_env): Add virtual method to get the environment that should be used.
3694 * Scripts/webkitpy/webdriver_tests/webdriver_driver_wpe.py: Copied from Tools/Scripts/webkitpy/webdriver_tests/webdriver_driver.py.
3696 (WebDriverWPE.__init__):
3697 (WebDriverWPE.binary_path):
3698 (WebDriverWPE.browser_name):
3699 (WebDriverWPE.capabilities):
3700 (WebDriverWPE.browser_env):
3701 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
3702 (WebDriverW3CExecutor.__init__): Update the environment with the one provided by the driver.
3703 * wpe/jhbuild.modules: Upgrade dyz to newer version that supports automation.
3705 2017-11-15 Alex Christensen <achristensen@webkit.org>
3707 WebViews scheduled in custom run loop modes should be able to do more than 50ms of work at a time
3708 https://bugs.webkit.org/show_bug.cgi?id=179742
3709 <rdar://problem/35519421>
3711 Reviewed by Jer Noble.
3713 * TestWebKitAPI/Tests/mac/WebViewScheduleInRunLoop.mm:
3714 (-[ScheduleInRunLoopDelegate webView:didFinishLoadForFrame:]):
3715 (TestWebKitAPI::TEST):
3716 Load more than one scheduled WebView to test work that typically takes more than 50 ms.
3718 2017-11-15 Ryan Haddad <ryanhaddad@apple.com>
3720 Unreviewed, rolling out r223781.
3722 The test is now returning false, so the FIXME is not needed
3727 "WebsiteDataStoreCustomPaths.mm is failing after r223718"
3728 https://bugs.webkit.org/show_bug.cgi?id=178596
3729 https://trac.webkit.org/changeset/223781
3731 2017-11-15 Ryan Haddad <ryanhaddad@apple.com>
3733 Unreviewed, rolling out r224863.
3735 Introduced LayoutTest crashes on iOS Simulator.
3739 "Move JSONValues to WTF and convert uses of InspectorValues.h
3741 https://bugs.webkit.org/show_bug.cgi?id=173793
3742 https://trac.webkit.org/changeset/224863
3744 2017-11-15 Michael Catanzaro <mcatanzaro@igalia.com>
3746 Remove GTK web inspector images
3747 https://bugs.webkit.org/show_bug.cgi?id=179716
3749 Reviewed by Carlos Garcia Campos.
3751 * Scripts/webkitdirs.pm:
3752 (shouldRemoveCMakeCache):
3753 * glib/generate-inspector-gresource-manifest.py:
3754 (get_filenames.should_ignore_resource):
3755 * gtk/manifest.txt.in:
3756 * wpe/manifest.txt.in:
3758 2017-11-15 Jonathan Bedard <jbedard@apple.com>
3760 REGRESSION(r221877): 'future' handled incorrectly for mac
3761 https://bugs.webkit.org/show_bug.cgi?id=179711
3762 <rdar://problem/35546604>
3764 Reviewed by Alex Christensen.
3766 * Scripts/webkitpy/port/mac.py:
3767 (MacPort.default_baseline_search_path): Use platform/mac-<version> instead of
3768 platform/<version> as the baseline search path.
3770 2017-11-14 Nan Wang <n_wang@apple.com>
3772 AX: AOM: Implement AccessibleNode class and support label and role attributes
3773 https://bugs.webkit.org/show_bug.cgi?id=179494
3775 Reviewed by Ryosuke Niwa.
3777 * DumpRenderTree/mac/DumpRenderTree.mm:
3778 (enableExperimentalFeatures):
3779 * WebKitTestRunner/TestController.cpp:
3780 (WTR::TestController::resetPreferencesToConsistentValues):
3782 2017-11-14 Basuke Suzuki <Basuke.Suzuki@sony.com>
3784 [Windows] Fix error while launching subprocess on Windows Python
3785 https://bugs.webkit.org/show_bug.cgi?id=179637
3787 Reviewed by Alex Christensen.
3789 To pass environment variables to subprocess.popen on Windows Python 2,
3790 the dict values must be str not unicode.
3791 Also is_native_win() method is added to port.
3793 * Scripts/webkitpy/common/system/platforminfo.py:
3794 (PlatformInfo.is_native_win):
3795 * Scripts/webkitpy/common/system/platforminfo_mock.py:
3796 (MockPlatformInfo.is_native_win):
3797 * Scripts/webkitpy/common/system/platforminfo_unittest.py:
3798 (TestPlatformInfo.test_os_name_and_wrappers):
3799 * Scripts/webkitpy/port/server_process.py:
3800 (ServerProcess.__init__):
3802 2017-11-14 Carlos Garcia Campos <cgarcia@igalia.com>
3804 Move JSONValues to WTF and convert uses of InspectorValues.h to JSONValues.h
3805 https://bugs.webkit.org/show_bug.cgi?id=173793
3807 Reviewed by Brian Burg.
3809 * TestWebKitAPI/CMakeLists.txt:
3810 * TestWebKitAPI/PlatformGTK.cmake:
3811 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3812 * TestWebKitAPI/Tests/WTF/JSONValue.cpp: Renamed from Tools/TestWebKitAPI/Tests/JavaScriptCore/InspectorValue.cpp.
3813 (TestWebKitAPI::TEST):
3815 2017-11-14 Jonathan Bedard <jbedard@apple.com>
3817 webkitpy: Use more verbose version info from simctl
3818 https://bugs.webkit.org/show_bug.cgi?id=179687
3819 <rdar://problem/35539392>
3821 Reviewed by Tim Horton.
3823 * Scripts/webkitpy/xcode/simulator.py:
3824 (Simulator): Address FIXME, use more verbose version.
3825 (Simulator._parse_runtimes): 'Internal' no longer stands along, check os for this
3827 * Scripts/webkitpy/xcode/simulator_unittest.py: Mock simctl output specifies iOS
3830 2017-11-14 Daniel Bates <dabates@apple.com>
3832 Update comment in FeatureDefines.xcconfig to reflect location of Visual Studio property files
3835 Following r195498 and r201917 the Visual Studio property files for feature defines have
3836 moved from directory WebKitLibraries/win/tools/vsprops to directory Source/cmake/tools/vsprops.
3837 Update the comment in FeatureDefines.xcconfig to reflect the new location and names of these
3840 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3842 2017-11-14 Jer Noble <jer.noble@apple.com>
3844 Enable Modern EME tests in DumpRenderTree
3845 https://bugs.webkit.org/show_bug.cgi?id=179544
3847 Reviewed by Alex Christensen.
3849 * DumpRenderTree/mac/DumpRenderTree.mm:
3850 (enableExperimentalFeatures):
3852 2017-11-14 Commit Queue <commit-queue@webkit.org>
3854 Unreviewed, rolling out r224800.
3855 https://bugs.webkit.org/show_bug.cgi?id=179684
3857 "Broke CLoop test mozilla/js1_6/Array/regress-304828.js"
3858 (Requested by mlam on #webkit).
3862 "Pass --useDollarVM=true to all JSC tests."
3863 https://bugs.webkit.org/show_bug.cgi?id=179647
3864 https://trac.webkit.org/changeset/224800
3866 2017-11-14 Antti Koivisto <antti@apple.com>
3868 Enable display:contents by default
3869 https://bugs.webkit.org/show_bug.cgi?id=179655
3871 Reviewed by Sam Weinig.
3873 No need to enable this specifically for tests anymore.
3875 * DumpRenderTree/mac/DumpRenderTree.mm:
3876 (enableExperimentalFeatures):
3877 * WebKitTestRunner/TestController.cpp:
3878 (WTR::TestController::resetPreferencesToConsistentValues):
3880 2017-11-14 Tim Horton <timothy_horton@apple.com>
3882 Long pressing a phone number with spaces in it results in a link sheet instead of a data detectors sheet
3883 https://bugs.webkit.org/show_bug.cgi?id=179646
3884 <rdar://problem/35337288>
3886 Reviewed by Simon Fraser.
3888 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
3889 (-[ActionSheetObserver _dataDetectionContextForWebView:]):
3890 (TestWebKitAPI::TEST):
3891 Add a test that ensures that a phone number with spaces in it
3892 invokes a data detectors sheet, not a normal link sheet.
3894 2017-11-14 Emilio Cobos Álvarez <emilio@crisal.io>
3896 Add committer status for Emilio Cobos Álvarez.
3897 https://bugs.webkit.org/show_bug.cgi?id=179667
3901 * Scripts/webkitpy/common/config/contributors.json:
3903 2017-11-13 Mark Lam <mark.lam@apple.com>
3905 Pass --useDollarVM=true to all JSC tests.
3906 https://bugs.webkit.org/show_bug.cgi?id=179647
3908 Reviewed by Saam Barati.
3910 * Scripts/run-jsc-stress-tests:
3912 2017-11-13 Simon Fraser <simon.fraser@apple.com>
3914 When navigating back to a page, compositing layers may not use accelerated drawing
3915 https://bugs.webkit.org/show_bug.cgi?id=178749
3916 rdar://problem/35158946
3918 Reviewed by Dean Jackson.
3920 Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
3921 and use it to set the state of the web view.
3923 * DumpRenderTree/TestOptions.h:
3924 * DumpRenderTree/TestOptions.mm:
3925 (TestOptions::TestOptions):
3926 * DumpRenderTree/mac/DumpRenderTree.mm:
3927 (setWebPreferencesForTestOptions):
3928 * WebKitTestRunner/TestController.cpp:
3929 (WTR::TestController::resetPreferencesToConsistentValues):
3930 (WTR::updateTestOptionsFromTestHeader):
3931 * WebKitTestRunner/TestOptions.h:
3932 (WTR::TestOptions::hasSameInitializationOptions const):
3934 2017-11-13 Basuke Suzuki <Basuke.Suzuki@sony.com>
3936 [Windows] Fix Python error for subprocess.popen with close_fds
3937 https://bugs.webkit.org/show_bug.cgi?id=179553
3939 Reviewed by Per Arne Vollan.
3941 * Scripts/webkitpy/port/server_process.py:
3942 (ServerProcess._start):
3943 (ServerProcess._should_close_fds):
3945 2017-11-13 Michael Catanzaro <mcatanzaro@igalia.com>
3947 [GTK] Require woff2 1.0.2 and drop direct brotli dependency
3948 https://bugs.webkit.org/show_bug.cgi?id=179630
3950 Reviewed by Frédéric Wang.
3952 * gtk/jhbuild.modules:
3954 2017-11-08 Keith Miller <keith_miller@apple.com>
3956 Async iteration should only fetch the next method once and add feature flag
3957 https://bugs.webkit.org/show_bug.cgi?id=179451
3959 Reviewed by Geoffrey Garen.
3961 Add feature flag for Async iteration.
3963 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3965 2017-11-13 Gabriel Ivascu <givascu@igalia.com>
3967 [GTK] Automatically adjust font size when gtk-xft-dpi changes
3968 https://bugs.webkit.org/show_bug.cgi?id=142673
3970 Reviewed by Michael Catanzaro.
3972 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
3973 (testWebKitSettings):
3975 2017-11-13 Jonathan Bedard <jbedard@apple.com>
3977 check-webkit-style cannot construct valid iOS version without an iOS SDK
3978 https://bugs.webkit.org/show_bug.cgi?id=179616
3979 <rdar://problem/35507018>
3981 Reviewed by David Kilzer.
3983 Instead of throwing an exception when we ask for an unavailable SDK on Mac,
3984 we should return None.
3986 * Scripts/webkitpy/common/system/platforminfo.py:
3987 (PlatformInfo.xcode_sdk_version): Return 'None' version if the machine does not
3988 have the requested SDK.
3990 2017-11-13 Keith Miller <keith_miller@apple.com>
3992 Uninitialized variable in sort-Xcode-project-file
3993 https://bugs.webkit.org/show_bug.cgi?id=179581
3995 Reviewed by Simon Fraser.
3997 Previously all the unified source files were named
3998 UnifiedSource<some-number>.mm. This was changed to
3999 UnifiedSource<some-number>-mm.mm to stop Xcode from creating
4000 hashes for mm and cpp unified source files with the same
4001 number. This broke the expectations in sort-Xcode-project-file.
4003 * Scripts/sort-Xcode-project-file:
4004 (sortChildrenByFileName):
4005 (sortFilesByFileName):
4007 2017-11-13 JF Bastien <jfbastien@apple.com>
4009 std::expected: fix and test move
4010 https://bugs.webkit.org/show_bug.cgi?id=179617
4012 Reviewed by Alex Christensen.
4014 Test that unique_ptr can be moved around properly, both has a
4015 value and an error (and in a <void, unique> specialization).
4017 * TestWebKitAPI/Tests/WTF/Expected.cpp:
4018 (TestWebKitAPI::snowflake::reset):
4019 (TestWebKitAPI::snowflake::snowflake):
4020 (TestWebKitAPI::snowflake::~snowflake):
4021 (TestWebKitAPI::TEST):
4023 2017-11-13 Basuke Suzuki <Basuke.Suzuki@sony.com>
4025 [Windows] Make the port's normalize_test_name() method platform independent.
4026 https://bugs.webkit.org/show_bug.cgi?id=179572
4028 Reviewed by Alexey Proskuryakov.
4030 * Scripts/webkitpy/port/base.py:
4031 (Port.normalize_test_name):
4033 2017-11-13 Wenson Hsieh <wenson_hsieh@apple.com>
4035 [Attachment Support] Implement SPI for clients to request data for a given attachment
4036 https://bugs.webkit.org/show_bug.cgi?id=179586
4037 <rdar://problem/35355720>
4039 Reviewed by Darin Adler.
4041 Augments existing API tests in WKAttachmentTests to additionally check that -requestData: yields the correct
4042 result when performing various editing operations. Also adds a new API test that cuts and pastes an attachment
4043 inserted using WKWebView attachment SPI, and expects that the data of the attachment can still be fetched using
4044 the _WKAttachment SPI, as well as another test that inserts an empty NSData and expects that requestData: also
4045 yields an empty NSData result.
4047 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
4048 (-[NSData shortDescription]):
4049 (-[_WKAttachment synchronouslyRequestData:]):
4050 (-[_WKAttachment expectRequestedDataToBe:]):
4051 (TestWebKitAPI::TEST):
4053 2017-11-12 Gabriel Ivascu <givascu@igalia.com>
4055 [GTK] Add functionality to handle font sizes in points
4056 https://bugs.webkit.org/show_bug.cgi?id=179285
4058 Reviewed by Carlos Garcia Campos and Michael Catanzaro.
4060 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
4061 (testWebKitSettings):
4063 2017-11-10 Fujii Hironori <Hironori.Fujii@sony.com>
4065 check-webkit-style: AttributeError: 'NoneType' object has no attribute 'major'
4066 https://bugs.webkit.org/show_bug.cgi?id=179522
4068 Reviewed by Aakash Jain.
4070 IOSSimulatorPort.ios_version should return a Version object.
4072 * Scripts/webkitpy/port/ios_simulator.py:
4073 (IOSSimulatorPort.ios_version): Return a Version object.
4075 2017-11-10 Basuke Suzuki <Basuke.Suzuki@sony.com>
4077 [Win] The way to detect Windows 10 is wrong
4078 https://bugs.webkit.org/show_bug.cgi?id=179344
4080 Reviewed by Alex Christensen.
4082 * Scripts/webkitpy/common/system/platforminfo.py:
4083 (PlatformInfo._determine_win_version):
4085 2017-11-10 Basuke Suzuki <Basuke.Suzuki@sony.com>
4087 [WinCairo] LayoutTests doesn't read TextExpectations files correctly
4088 https://bugs.webkit.org/show_bug.cgi?id=179219
4090 Reviewed by Alex Christensen.
4092 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
4093 (TestExpectationParser._parse_line):
4094 * Scripts/webkitpy/port/apple.py:
4095 (ApplePort.__init__):
4096 (ApplePort._allowed_port_names):
4098 (ApplePort._future_port_name):
4099 (ApplePort._generate_all_test_configurations):
4100 * Scripts/webkitpy/port/win.py:
4101 (WinCairoPort.default_baseline_search_path):
4103 (WinCairoPort._future_port_name):
4105 2017-11-10 Basuke Suzuki <Basuke.Suzuki@sony.com>
4107 [WinCairo] Treat 'future' version correctly
4108 https://bugs.webkit.org/show_bug.cgi?id=179345
4110 Reviewed by Alex Christensen.
4112 * Scripts/webkitpy/port/win.py:
4113 (WinCairoPort.default_baseline_search_path):
4115 2017-11-10 Wenson Hsieh <wenson_hsieh@apple.com>
4117 Finish rolling out r224544
4119 Rubber-stamped by Tim Horton.
4121 Now that https://bugs.webkit.org/show_bug.cgi?id=179431 has been fixed, we can once again allow one of the API
4122 tests added in r224512 (WKAttachmentTests.AttachmentUpdatesWhenChangingFontStyles) to test toggling underline
4123 style with a selected attachment element.
4125 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
4126 (TestWebKitAPI::TEST):
4128 2017-11-10 Alex Christensen <achristensen@webkit.org>
4130 _WKThumbnailView initialization with WKWebView needs to call correct initWithFrame
4131 https://bugs.webkit.org/show_bug.cgi?id=179537
4132 <rdar://problem/35275219>
4134 Reviewed by Darin Adler.
4136 * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
4137 (-[WKThumbnailViewDelegate webView:didFinishNavigation:]):
4138 (TestWebKitAPI::TEST):
4140 2017-11-10 Jonathan Bedard <jbedard@apple.com>
4142 webkitpy: Remove find_system_pid from port classes
4143 https://bugs.webkit.org/show_bug.cgi?id=179514
4144 <rdar://problem/35456900>
4146 Reviewed by David Kilzer.
4150 * Scripts/webkitpy/port/base.py:
4151 (Port.find_system_pid): Deleted.
4152 * Scripts/webkitpy/port/server_process.py:
4153 (ServerProcess._start):
4154 * Scripts/webkitpy/port/win.py:
4155 (WinPort.find_system_pid): Deleted.
4157 2017-11-10 Aakash Jain <aakash_jain@apple.com>
4159 fix style failures in webkitpy: multiple statements on one line (semicolon)
4160 https://bugs.webkit.org/show_bug.cgi?id=179530
4162 Reviewed by Alex Christensen.
4164 * Scripts/webkitpy/common/net/buildbot/buildbot.py: Removed semicolon.
4165 * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py: Ditto.
4166 * Scripts/webkitpy/tool/steps/runtests.py: Ditto.
4168 2017-11-10 Aakash Jain <aakash_jain@apple.com>
4170 fix style failures in webkitpy: expected 2 blank lines found 1
4171 https://bugs.webkit.org/show_bug.cgi?id=179529
4173 Reviewed by Alex Christensen.
4175 * Scripts/webkitpy/benchmark_runner/run_benchmark.py: Added a blank line to follow style guidelines.
4176 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py: Ditto.
4177 * Scripts/webkitpy/common/system/platforminfo_mock.py: Ditto.
4178 * Scripts/webkitpy/common/version.py: Ditto.
4179 * Scripts/webkitpy/layout_tests/models/test_failures.py: Ditto.
4180 * Scripts/webkitpy/port/mac_unittest.py: Ditto.
4181 * Scripts/webkitpy/port/simulator_process.py: Ditto.
4183 2017-11-10 Alex Christensen <achristensen@webkit.org>
4185 REGRESSION(r224267): WebViews scheduled with custom run loop modes don't load
4186 https://bugs.webkit.org/show_bug.cgi?id=179515
4188 Reviewed by Andy Estes.
4190 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4191 * TestWebKitAPI/Tests/mac/WebViewScheduleInRunLoop.mm: Added.
4192 (-[ScheduleInRunLoopDelegate webView:didFinishLoadForFrame:]):
4193 (TestWebKitAPI::TEST):
4195 2017-11-10 Fujii Hironori <Hironori.Fujii@sony.com>
4197 [webkitpy] Fix PlatformInfo._win_version since r224657
4198 https://bugs.webkit.org/show_bug.cgi?id=179520
4200 Reviewed by Aakash Jain.
4202 There are two problems.
4204 The return value of sys.getwindowsversion() doesn't match with
4205 Version.__init__ expects. Truncate the 4th and 5th of it.
4207 _win_version_tuple_from_cmd was deleted in r224657. But, it is
4208 still needed for Cygwin Python.
4210 * Scripts/webkitpy/common/system/platforminfo.py:
4211 (PlatformInfo._win_version): Return [0:3] of getwindowsversion().
4212 Call _win_version_from_cmd for Cygwin Python.
4213 (PlatformInfo._win_version_from_cmd): Restored.
4215 2017-11-10 Guillaume Emont <guijemont@igalia.com>
4217 build-jsc: build testmasm for all platforms using cmake
4218 https://bugs.webkit.org/show_bug.cgi?id=179512
4220 Reviewed by Michael Catanzaro.
4222 * Scripts/build-jsc:
4224 2017-11-09 Jonathan Bedard <jbedard@apple.com>
4226 webkitpy: Unify version parsing code
4227 https://bugs.webkit.org/show_bug.cgi?id=179426
4228 <rdar://problem/35415191>
4230 Unreviewed fix to r224657.
4232 * Scripts/webkitpy/common/version.py:
4233 (Version.__init__): Check if an object is iterable.
4235 2017-11-09 Jonathan Bedard <jbedard@apple.com>
4237 webkitpy: Unify version parsing code
4238 https://bugs.webkit.org/show_bug.cgi?id=179426
4239 <rdar://problem/35415191>
4241 Reviewed by David Kilzer.
4243 webkitpy needs to parse version strings or version lists frequently. Rather than
4244 duplicate this code each time it's needed, unify it in a Version class.
4246 * Scripts/webkitpy/common/system/platforminfo.py:
4247 (PlatformInfo.__init__): Convert mac version string to version object and
4248 use _win_version instead of _win_version_tuple.
4249 (PlatformInfo.xcode_sdk_version): Convert SDK version string to Version object
4250 before returning it.
4251 (PlatformInfo.xcode_version): Return Version object instead of version string.
4252 (PlatformInfo._determine_mac_version): Accept Version object instead of string,
4254 (PlatformInfo._determine_win_version): Accept Version object instead of tuple.
4255 (PlatformInfo._win_version): Return Version object instead of tuple, have Version
4256 object own version string parsing.
4257 (PlatformInfo._win_version_tuple): Renamed to _win_version().
4258 (PlatformInfo._win_version_tuple_from_cmd): Deleted.
4259 * Scripts/webkitpy/common/system/platforminfo_mock.py:
4260 (MockPlatformInfo.xcode_sdk_version): Return Version object instead of string.
4261 (MockPlatformInfo.xcode_version): Dittio.
4262 * Scripts/webkitpy/common/version.py: Added.
4263 (Version): Version object.
4264 (Version.__init__): Initialize the Version object with a string, integer,
4265 tuple of integers, list of integers or another Version object.
4266 (Version.__len__): Return 5 so that the Version object can be treated as
4268 (Version.__getitem__): Get item in Version object by index or string.
4269 (Version.__setitem__): Set item in Version object by index or string.
4270 (Version.__str__): Convert version to printable string, omitting trailing 0's.
4271 (Version.__cmp__): Compare two version strings, major taking precedence over
4272 minor, minor taking precedence over build.
4273 * Scripts/webkitpy/common/version_unittest.py: Added.
4274 (VersionTestCase): Test behavior of Version object.
4275 * Scripts/webkitpy/port/ios.py:
4276 (IOSPort.default_baseline_search_path): ios_version now returns a Version object.
4277 (IOSPort._is_valid_ios_version): Deleted.
4278 (IOSPort.get_option): Deleted.
4279 * Scripts/webkitpy/port/ios_device.py:
4280 (IOSDevicePort.determine_full_port_name): Use Version object instead of owning parsing.
4281 (IOSDevicePort.ios_version): Return Version object instead of string.
4282 * Scripts/webkitpy/port/ios_simulator.py:
4283 (IOSSimulatorPort.simulator_runtime): Use from_version instead of from_version_string.
4284 (IOSSimulatorPort.ios_version): Return Version object instead of string.
4285 (IOSSimulatorPort.use_multiple_simulator_apps): Use Version object instead of string.
4286 * Scripts/webkitpy/xcode/simulator.py:
4287 (Runtime.from_version): Accept Version object instead of string.
4288 (Runtime.from_version_string): Replaced by from_version.
4289 (Runtime.__repr__): When printing, a runtime's version will be a Version object instead
4291 (Simulator._parse_runtimes): Use Version object instead of tuple.
4292 (Simulator._parse_devices): Ditto.
4293 * Scripts/webkitpy/xcode/simulator_unittest.py: Use Version object instead of tuples.
4295 2017-11-09 Basuke Suzuki <Basuke.Suzuki@sony.com>
4297 [WinCairo] Cannot find ImageDiff executable
4298 https://bugs.webkit.org/show_bug.cgi?id=179508
4300 Reviewed by Per Arne Vollan.
4302 * Scripts/webkitpy/port/win.py:
4303 (WinPort.is_cygwin):
4304 (WinPort._path_to_image_diff):
4305 (WinPort.find_system_pid):
4307 2017-11-09 Fujii Hironori <Hironori.Fujii@sony.com>
4309 [WinCairo EWS] svn-apply: 'cp' is not recognized as an internal or external command
4310 https://bugs.webkit.org/show_bug.cgi?id=179469
4312 Reviewed by Per Arne Vollan.
4314 WinCairo EWS bots haven't installed Cygwin.
4316 * Scripts/svn-apply:
4317 (scmCopy): Use 'copy' function instead of 'cp' command.
4319 2017-11-09 Carlos Alberto Lopez Perez <clopez@igalia.com>
4321 [WPE] Update dyz (WPE MiniBrowser)
4322 https://bugs.webkit.org/show_bug.cgi?id=179492
4324 Reviewed by Michael Catanzaro.
4326 Update it to the last version as of today.
4327 This version not longer uses the C API.
4329 * wpe/jhbuild.modules:
4331 2017-11-09 Christopher Reid <chris.reid@sony.com>
4333 Use enum classes within FileSystem
4334 https://bugs.webkit.org/show_bug.cgi?id=175172
4336 Reviewed by Darin Adler.
4338 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
4339 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
4341 2017-11-09 Brent Fulgham <bfulgham@apple.com>
4343 Test fix after r224609
4344 https://bugs.webkit.org/show_bug.cgi?id=178565
4345 <rdar://problem/11115901>
4347 Unreviewed test fix after r224609.
4349 Correct two test cases that attempt to push local file URLs in violation of our
4350 same origin policies. The fix is to grant universal file access, as we do for similar
4353 * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
4354 (TestWebKitAPI::TEST):
4355 * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
4356 (TestWebKitAPI::TEST):
4358 2017-11-09 Michael Catanzaro <mcatanzaro@igalia.com>
4360 Unreviewed, remove Dan from the soup network watchlist
4362 Per his request. It's not Hotel California; we should probably let him leave.
4364 * Scripts/webkitpy/common/config/watchlist:
4366 2017-11-08 Don Olmstead <don.olmstead@sony.com>
4368 Add Windows powershell EWS script
4369 https://bugs.webkit.org/show_bug.cgi?id=179453
4371 Reviewed by Brent Fulgham.
4373 * EWSTools/Start-Queue.ps1: Added.
4375 2017-11-08 Jeremy Jones <jeremyj@apple.com>
4377 HTMLMediaElement should not use element fullscreen on iOS
4378 https://bugs.webkit.org/show_bug.cgi?id=179418
4379 rdar://problem/35409277
4381 Reviewed by Eric Carlson.
4383 Add ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN to determine if HTMLMediaElement should use element full screen or not.
4385 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4387 2017-11-08 Tim Horton <timothy_horton@apple.com>
4389 [ios-simulator] API test WebKit.BundleParameters is a flaky failure
4390 https://bugs.webkit.org/show_bug.cgi?id=178363
4391 <rdar://problem/35043144>
4393 Reviewed by Brent Fulgham.
4395 * TestWebKitAPI/Tests/WTF/RefCounter.cpp:
4396 (TestWebKitAPI::TEST):
4399 2017-11-08 Wenson Hsieh <wenson_hsieh@apple.com>
4401 [Attachment Support] Implement delegate hooks for attachment element insertion and removal
4402 https://bugs.webkit.org/show_bug.cgi?id=179016
4403 <rdar://problem/35250890>
4405 Reviewed by Tim Horton.
4407 See WebCore/ChangeLog for more details.
4409 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
4410 (-[AttachmentUpdateObserver init]):
4411 (-[AttachmentUpdateObserver inserted]):
4412 (-[AttachmentUpdateObserver removed]):
4413 (-[AttachmentUpdateObserver _webView:didInsertAttachment:]):
4414 (-[AttachmentUpdateObserver _webView:didRemoveAttachment:]):
4415 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
4416 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::~ObserveAttachmentUpdatesForScope):
4417 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::observer const):
4418 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
4419 (-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]):
4420 (-[TestWKWebView expectUpdatesAfterCommand:withArgument:expectedRemovals:expectedInsertions:]):
4421 (TestWebKitAPI::TEST):
4423 2017-11-08 Carlos Garcia Campos <cgarcia@igalia.com>
4425 Web Inspector: use JSON::{Array,Object,Value} instead of Inspector{Array,Object,Value}
4426 https://bugs.webkit.org/show_bug.cgi?id=173619
4428 Reviewed by Brian Burg.
4430 Update InspectorValue unit tests to use JSON namespace and add more basic tests to cover all the API.
4432 * TestWebKitAPI/PlatformGTK.cmake:
4433 * TestWebKitAPI/Tests/JavaScriptCore/InspectorValue.cpp:
4434 (TestWebKitAPI::TEST):
4436 2017-11-07 Carlos Garcia Campos <cgarcia@igalia.com>
4438 REGRESSION(r224179): [GTK] Several WebViewEditor tests are failing since r224179
4439 https://bugs.webkit.org/show_bug.cgi?id=179366
4441 Reviewed by Michael Catanzaro.
4443 Use always a toplevel window for WebViewEditor tests instead of creating and destroying one only to flush editor
4446 * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
4448 2017-11-07 Carlos Garcia Campos <cgarcia@igalia.com>
4450 [GTK][WPE] Build inspector resources using copy-user-interface-resources.pl script
4451 https://bugs.webkit.org/show_bug.cgi?id=179317
4453 Reviewed by Michael Catanzaro.
4455 Move generate-inspector-gresource-manifest.py to glib dir to be shared by GTK+ and WPE ports and update it to
4456 receive an input directory instead of a list of patterns.
4457 File::Copy::Recursive is required by copy-user-interface-resources.pl, so make sure it's installed.
4459 * glib/generate-inspector-gresource-manifest.py: Renamed from Tools/gtk/generate-inspector-gresource-manifest.py.
4461 (get_filenames.should_ignore_resource):
4462 * gtk/install-dependencies:
4463 * wpe/generate-inspector-gresource-manifest.py: Removed.
4464 * wpe/install-dependencies:
4466 2017-11-07 Don Olmstead <don.olmstead@sony.com>
4468 Fix webkitpy tests after rev 224549.
4470 Unreviewed build fix.
4472 * Scripts/webkitpy/common/config/ports.py:
4473 (WinCairoPort.run_webkit_tests_command):
4474 * Scripts/webkitpy/common/config/ports_unittest.py:
4475 (DeprecatedPortTest.test_wincairo_port):
4477 2017-11-07 Aakash Jain <aakash_jain@apple.com>
4479 Enable webkitpy EWS bubbles
4480 https://bugs.webkit.org/show_bug.cgi?id=178539
4482 Reviewed by Alexey Proskuryakov.
4484 * QueueStatusServer/config/queues.py: Added webkitpy EWS.
4486 2017-11-07 Don Olmstead <don.olmstead@sony.com>
4488 Add a WinCairo EWS queue
4489 https://bugs.webkit.org/show_bug.cgi?id=179390
4491 Reviewed by Lucas Forschler.
4493 * QueueStatusServer/config/queues.py:
4494 * QueueStatusServer/model/queues.py:
4495 * Scripts/webkitpy/common/config/ews.json:
4496 * Scripts/webkitpy/common/config/ports.py:
4497 * Scripts/webkitpy/common/config/ports_unittest.py:
4498 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
4500 2017-11-07 Aakash Jain <aakash_jain@apple.com>
4502 fix check-webkit-style errors in webkitpy about not having two spaces before inline comment
4503 https://bugs.webkit.org/show_bug.cgi?id=171506
4505 Reviewed by Alexey Proskuryakov.
4507 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
4508 (SCMTest._shared_test_reverse_diff): Added two spaces before inline comment.
4509 (test_create_patch_is_full_patch): Ditto.
4510 * Scripts/webkitpy/common/thread/messagepump.py:
4511 (MessagePump): Ditto.
4512 * Scripts/webkitpy/layout_tests/servers/http_server.py:
4513 (Lighttpd._prepare_config): Ditto.
4514 * Scripts/webkitpy/style/checker.py: Ditto.
4515 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
4516 (OrderOfIncludesTest.test_check_preprocessor_in_include_section): Ditto.
4518 2017-11-07 Aakash Jain <aakash_jain@apple.com>
4520 Add support for webkitpy tests EWS
4521 https://bugs.webkit.org/show_bug.cgi?id=178480
4523 Reviewed by Alexey Proskuryakov.
4525 * Scripts/webkitpy/common/config/ews.json: Added webkitpy EWS.
4526 * Scripts/webkitpy/common/net/generictestresults.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults.py.
4527 * Scripts/webkitpy/common/net/generictestresults_unittest.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults_unittest.py.
4528 * Scripts/webkitpy/tool/bot/patchanalysistask.py:
4529 (PatchAnalysisTask._test_patch): Do not retry webkitpy test since they are not flaky.
4530 * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Updated import for BindingsTestResult.
4531 * Scripts/webkitpy/tool/bot/retrylogic_unittest.py: Ditto.
4532 * Scripts/webkitpy/tool/bot/webkitpytestresultsreader.py: Copied from Scripts/webkitpy/tool/bot/bindingstestresultsreader.py.
4533 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
4534 (AbstractEarlyWarningSystem.begin_work_queue): Added webkitpy test result reader.
4535 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: Updated unit-tests.
4536 * Scripts/webkitpy/tool/steps/checkpatchrelevance.py: Run webkitpy EWS only for relevant changes.
4537 * Scripts/webkitpy/tool/steps/runtests.py:
4538 (RunTests.run): Run webkitpy tests when --group=webkitpy is passed.
4539 (RunTests._run_webkitpy_tests): Method to invoke webkitpy tests.
4540 * Scripts/webkitpy/tool/steps/steps_unittest.py:
4541 (test_runtests_webkitpy): Added unit-test.
4543 2017-11-07 Commit Queue <commit-queue@webkit.org>
4545 Unreviewed, rolling out r224512 and r224521.
4546 https://bugs.webkit.org/show_bug.cgi?id=179388
4548 An API test added with this change is failing an assertion on
4549 the bots. (Requested by ryanhaddad on #webkit).
4551 Reverted changesets:
4553 "[Attachment Support] Implement delegate hooks for attachment
4554 element insertion and removal"
4555 https://bugs.webkit.org/show_bug.cgi?id=179016
4556 https://trac.webkit.org/changeset/224512
4558 "Remove stray logging from a newly added API test"
4559 https://trac.webkit.org/changeset/224521
4561 2017-11-06 Wenson Hsieh <wenson_hsieh@apple.com>
4563 Remove stray logging from a newly added API test
4565 This was only for debugging purposes, and should have been removed before landing.
4567 Rubber-stamped by Tim Horton.
4569 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
4570 (TestWebKitAPI::TEST):
4572 2017-11-06 Jonathan Bedard <jbedard@apple.com>
4574 Only build ImageDiff for mac
4575 https://bugs.webkit.org/show_bug.cgi?id=179349
4576 <rdar://problem/35376237>
4578 Reviewed by Tim Horton.
4580 * ImageDiff/Makefile:
4582 2017-11-06 Wenson Hsieh <wenson_hsieh@apple.com>
4584 Unreviewed, fix the internal build after updating to a newer SDK
4586 There shouldn't be any need to include and implement these method stubs anymore,
4587 even when building against the shipping iOS 11 SDK.
4589 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
4590 (-[MockDropSession session]): Deleted.
4592 2017-11-06 Wenson Hsieh <wenson_hsieh@apple.com>
4594 [Attachment Support] Implement delegate hooks for attachment element insertion and removal
4595 https://bugs.webkit.org/show_bug.cgi?id=179016
4596 <rdar://problem/35250890>
4598 Reviewed by Tim Horton.
4600 Introduces new API tests to check that various editing operations will or won't result in the new attachment
4601 insertion and removal delegate hooks being fired. Additionally refactors an existing test to verify that
4602 attachments insertion and removal is observable by the UI delegate.
4604 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
4605 (-[AttachmentUpdateObserver init]):
4606 (-[AttachmentUpdateObserver inserted]):
4607 (-[AttachmentUpdateObserver removed]):
4608 (-[AttachmentUpdateObserver _webView:didInsertAttachment:]):
4609 (-[AttachmentUpdateObserver _webView:didRemoveAttachment:]):
4610 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
4611 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::~ObserveAttachmentUpdatesForScope):
4612 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
4614 Implement a testing mechanism to temporarily bind a UI delegate to a given WKWebView and listen for inserted or
4615 removed attachments over the course of a particular scope. The API tests use this mechanism to check that the UI
4616 delegate hooks added in this patch are invoked with the right attachments when performing edit commands.
4618 (-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]):
4619 (-[TestWKWebView expectUpdatesAfterCommand:withArgument:expectedRemovals:expectedInsertions:]):
4620 (TestWebKitAPI::TEST):
4622 2017-11-06 Christopher Reid <chris.reid@sony.com>
4624 Use enum classes within FileSystem
4625 https://bugs.webkit.org/show_bug.cgi?id=175172
4627 Reviewed by Myles C. Maxfield.
4629 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
4630 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
4632 2017-11-06 Michael Catanzaro <mcatanzaro@igalia.com>
4634 [WPE] -Wsign-compare warning in EventSenderProxyWPE.cpp
4635 https://bugs.webkit.org/show_bug.cgi?id=179039
4637 Reviewed by Žan Doberšek.
4639 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
4640 (WTR::EventSenderProxy::updateTouchPoint):
4641 (WTR::EventSenderProxy::releaseTouchPoint):
4643 2017-11-06 Robin Morisset <rmorisset@apple.com>
4645 Add a third benchmark to TailBench
4646 https://bugs.webkit.org/show_bug.cgi?id=178815
4648 Reviewed by Saam Barati.
4650 Add a new benchmark to TailBench: a BF interpreter written in a weird kinda functional style
4652 * Scripts/run-jsc-benchmarks:
4654 2017-11-04 Michael Catanzaro <mcatanzaro@igalia.com>
4656 [GTK] Fix gtk-doc generation with gtk-doc master
4657 https://bugs.webkit.org/show_bug.cgi?id=179252
4659 Reviewed by Carlos Garcia Campos.
4661 gtkdoc-scangobj has changed to no longer use a shell when executing its subcommands. In
4662 particular, this means we can no longer rely on shell stuff in our run command that we use
4663 to run the scanner. We currently use the RUN envvar to set LD_LIBRARY_PATH, and the end
4664 result is gtkdoc-scangobj now attempts to execute our environment variable instead of the
4665 scanner itself. We can just set LD_LIBRARY_PATH directly, instead of using RUN, in order to
4666 make documentation generation work again.
4669 (GTKDoc._run_gtkdoc_scangobj):
4671 2017-11-04 Aishwarya Nirmal <anirmal@apple.com>
4673 [Touch Bar Web API] Add support for menuitem tag
4674 https://bugs.webkit.org/show_bug.cgi?id=179020
4676 Reviewed by Ryosuke Niwa.
4678 Defines flags for the menu item test so that the element is recognized
4679 only while its test is being run.
4681 * DumpRenderTree/TestOptions.h:
4682 * DumpRenderTree/TestOptions.mm:
4683 (TestOptions::TestOptions):
4684 * DumpRenderTree/mac/DumpRenderTree.mm:
4685 (setWebPreferencesForTestOptions):
4686 * WebKitTestRunner/TestController.cpp:
4687 (WTR::TestController::resetPreferencesToConsistentValues):
4688 (WTR::updateTestOptionsFromTestHeader):
4689 * WebKitTestRunner/TestOptions.h:
4690 (WTR::TestOptions::hasSameInitializationOptions const):
4692 2017-11-03 Andy Estes <aestes@apple.com>
4694 [iOS] Append the platform name to the product directory on all embedded platforms
4695 https://bugs.webkit.org/show_bug.cgi?id=179271
4697 Reviewed by Joseph Pecoraro.
4699 * Scripts/webkitdirs.pm:
4700 (determineConfigurationProductDir):
4702 2017-11-03 Basuke Suzuki <Basuke.Suzuki@sony.com>
4704 [WinCairo] Add --wincairo option to run-webkit-tests
4705 https://bugs.webkit.org/show_bug.cgi?id=179217
4707 Reviewed by Alex Christensen.
4709 * Scripts/webkitpy/port/factory.py:
4712 2017-11-03 Michael Catanzaro <mcatanzaro@igalia.com>
4714 [WPE][GTK] Avoid duplicating code for dist and distcheck targets
4715 https://bugs.webkit.org/show_bug.cgi?id=179154
4717 Reviewed by Carlos Garcia Campos.
4719 Move the script out of Tools/gtk because it is already used by WPE. Also, drop the .py
4720 prefix because it is executable.
4722 * Scripts/make-dist: Renamed from Tools/gtk/make-dist.py.
4724 2017-11-03 Jonathan Bedard <jbedard@apple.com>
4726 TestController platformAdjustContext should use provided WKContext for Mac
4727 https://bugs.webkit.org/show_bug.cgi?id=179124
4728 <rdar://problem/35295176>
4730 Reviewed by Darin Adler.
4732 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
4733 (WTR::initializeWebViewConfiguration): Use the provided WKContext, since that is
4734 a WebProcessPool, instead of creating a second one.
4736 2017-11-02 Christopher Reid <chris.reid@sony.com>
4738 Add a FileSystem namespace to FileSystem.cpp
4739 https://bugs.webkit.org/show_bug.cgi?id=179063
4741 Reviewed by Darin Adler.
4743 * DumpRenderTree/win/DumpRenderTree.cpp:
4744 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
4745 * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
4746 * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
4747 * TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp:
4748 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
4749 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4751 2017-11-02 Carlos Alberto Lopez Perez <clopez@igalia.com>
4753 [WPE][JHBuild] Update WPEBackend and WPEBackend-mesa
4754 https://bugs.webkit.org/show_bug.cgi?id=179169
4756 Reviewed by Michael Catanzaro.
4758 Update WPEBackend and WPEBackend-mesa to last master as of today.
4760 * wpe/jhbuild.modules:
4762 2017-11-02 Frederic Wang <fwang@igalia.com>
4764 Add references to bug 179167 in FIXME comments
4765 https://bugs.webkit.org/show_bug.cgi?id=179168
4767 Reviewed by Daniel Bates.
4769 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4771 2017-11-01 Jeremy Jones <jeremyj@apple.com>
4773 Implement WKFullscreenWindowController for iOS.
4774 https://bugs.webkit.org/show_bug.cgi?id=178924
4775 rdar://problem/34697120
4777 Reviewed by Simon Fraser.
4779 Enable ENABLE_FULLSCREEN_API for iOS.
4781 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4783 2017-11-01 Simon Fraser <simon.fraser@apple.com>
4785 Misc display list and other cleanup
4786 https://bugs.webkit.org/show_bug.cgi?id=179150
4788 Reviewed by Tim Horton.
4790 Add system trace points for display list recording.
4792 * Tracing/SystemTracePoints.plist:
4794 2017-11-01 Stephan Szabo <stephan.szabo@sony.com>
4796 [Win] Detect Visual Studio 2017 location
4797 https://bugs.webkit.org/show_bug.cgi?id=175275
4799 Reviewed by Yusuke Suzuki.
4801 * Scripts/build-jsc:
4802 * Scripts/build-webkit:
4803 * Scripts/update-vswhere.py: Added.
4804 * Scripts/webkitdirs.pm:
4805 (requireModulesForVSWhere):
4806 (pickCurrentVisualStudioInstallation):
4807 (pickLegacyVisualStudioInstallation):
4808 (visualStudioInstallDir):
4809 (visualStudioInstallDirVSWhere):
4810 (visualStudioInstallDirLegacy):
4811 (visualStudioInstallDirFallback):
4812 (msBuildInstallDir):
4813 (visualStudioVersion):
4814 (visualStudioVersionFromInstallDir):
4815 (generateBuildSystemFromCMakeProject):
4817 2017-11-01 Tim Horton <timothy_horton@apple.com>
4819 Fix the !USE(QUICKLOOK) build
4820 https://bugs.webkit.org/show_bug.cgi?id=179128
4822 Reviewed by Wenson Hsieh.
4824 * TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
4826 2017-11-01 Frederic Wang <fwang@igalia.com>
4828 Make iOS Find UI reveal matches in scrollable elements
4829 https://bugs.webkit.org/show_bug.cgi?id=178789
4831 Reviewed by Tim Horton.
4833 This patch exposes WKWebView's findString function in order to test the fix for bug 178789.
4835 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
4836 (WTR::UIScriptController::findString): Dummy implementation of findString.
4837 * DumpRenderTree/mac/UIScriptControllerMac.mm:
4838 (WTR::UIScriptController::findString): Ditto.
4839 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: Declare findString.
4840 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
4841 (WTR::UIScriptController::findString): Dummy implementation of findString.
4842 * TestRunnerShared/UIScriptContext/UIScriptController.h: Declare findString.
4843 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
4844 (WTR::UIScriptController::findString): Implement findString by forwarding the call to the
4846 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
4847 (WTR::UIScriptController::findString): Dummy implementation of findString.
4849 2017-11-01 Alex Christensen <achristensen@webkit.org>
4851 Add a test for _WKInputDelegate.willSubmitFormValues
4852 https://bugs.webkit.org/show_bug.cgi?id=179086
4854 Reviewed by Darin Adler.
4856 Hidden input types are not included in this submission because FormSubmission::create ignores them
4857 because input.isTextField() returns false. This is existing behavior that wasn't shown by a test.
4858 HTTPBodies are also not sent to WKURLSchemeHandlers. This is existing behavior that wasn't shown by a test.
4860 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4861 * TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm: Added.
4862 (-[FormSubmissionDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]):
4865 2017-10-31 Ross Kirsling <ross.kirsling@sony.com>
4867 Web Inspector: Add Inspector menu items to Mac MiniBrowser
4868 https://bugs.webkit.org/show_bug.cgi?id=65218
4870 Reviewed by Joseph Pecoraro.
4872 Add Option-Command-I shortcut and corresponding Show/Close Web Inspector menu item to Mac MiniBrowser.
4873 Only works when browser window is focused, but at least WI can be opened without having to Inspect Element.
4875 * MiniBrowser/mac/BrowserWindowController.h:
4876 * MiniBrowser/mac/BrowserWindowController.m:
4877 (-[BrowserWindowController showHideWebInspector:]):
4878 * MiniBrowser/mac/MainMenu.xib:
4879 * MiniBrowser/mac/WK1BrowserWindowController.m:
4880 (-[WK1BrowserWindowController validateMenuItem:]):
4881 (-[WK1BrowserWindowController showHideWebInspector:]):
4882 * MiniBrowser/mac/WK2BrowserWindowController.m:
4883 (-[WK2BrowserWindowController validateMenuItem:]):
4884 (-[WK2BrowserWindowController showHideWebInspector:]):
4886 2017-10-31 Alex Christensen <achristensen@webkit.org>
4888 Use asynchronous ResourceHandleClient calls for WebKit1
4889 https://bugs.webkit.org/show_bug.cgi?id=160677
4891 Reviewed by Brady Eidson.
4893 * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:
4894 (TestWebKitAPI::TEST):
4895 The HTML being loaded contains an iframe, so testing if the main resource has loaded doesn't necessarily mean all subresources are loaded.
4896 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.
4898 2017-10-31 Commit Queue <commit-queue@webkit.org>
4900 Unreviewed, rolling out r224143.
4901 https://bugs.webkit.org/show_bug.cgi?id=179091
4903 The patch requires non-standard perl modules in macOS and
4904 breaks AWFY (Requested by yusukesuzuki on #webkit).
4908 "[Win] Detect Visual Studio 2017 location"
4909 https://bugs.webkit.org/show_bug.cgi?id=175275
4910 https://trac.webkit.org/changeset/224143
4912 2017-10-31 Tim Horton <timothy_horton@apple.com>
4914 Clean up some drag and drop feature flags
4915 https://bugs.webkit.org/show_bug.cgi?id=179082
4917 Reviewed by Simon Fraser.
4919 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4920 * TestWebKitAPI/ios/UIKitSPI.h:
4922 2017-10-31 Tim Horton <timothy_horton@apple.com>
4924 Fix up some content filtering feature flags
4925 https://bugs.webkit.org/show_bug.cgi?id=179079
4927 Reviewed by Simon Fraser.
4929 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4930 * TestWebKitAPI/Tests/WebKitCocoa/ContentFilteringPlugIn.mm:
4931 (-[MockContentFilterEnabler initWithCoder:]):
4932 (-[MockContentFilterEnabler dealloc]):
4934 2017-10-31 Youenn Fablet <youenn@apple.com>
4936 rwt should allow service worker to load localhost HTTPS resources with any certificate
4937 https://bugs.webkit.org/show_bug.cgi?id=179018
4939 Reviewed by Chris Dumez.
4941 * WebKitTestRunner/TestController.cpp:
4942 (WTR::TestController::resetStateToConsistentValues): allowing any SSL certificate for service workers.
4944 2017-10-31 Wenson Hsieh <wenson_hsieh@apple.com>
4946 [Attachment Support] Implement WKWebView SPI for inserting attachment elements
4947 https://bugs.webkit.org/show_bug.cgi?id=179013
4948 <rdar://problem/35249668>
4950 Reviewed by Tim Horton.
4952 Adds a new API test suite to exercise attachment element insertion and manipulation.
4954 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4955 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm: Added.
4956 (webViewForTestingAttachments):
4959 (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:options:]):
4960 (-[TestWKWebView valueOfAttribute:forQuerySelector:]):
4961 (TestWebKitAPI::TEST):
4963 2017-10-31 Alex Christensen <achristensen@webkit.org>
4965 Fix custom header field setting with reloads and asynchronous navigation action policy decisions
4966 https://bugs.webkit.org/show_bug.cgi?id=179064
4968 Reviewed by Tim Horton.
4970 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
4971 (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
4974 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
4976 WKBundlePageWillSendSubmitEventCallback is called with incorrect frame parameter
4977 https://bugs.webkit.org/show_bug.cgi?id=176719
4979 Reviewed by Chris Dumez.
4981 Test that WKBundlePageWillSendSubmitEventCallback is called with separate frame and
4982 sourceFrame parameters when the target frame of the form submission is not the source frame.
4984 * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
4985 (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
4986 * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent_Bundle.cpp:
4987 (TestWebKitAPI::willSendSubmitEvent):
4988 * TestWebKitAPI/Tests/WebKit/auto-submitting-form.html:
4990 2017-10-30 Alex Christensen <achristensen@webkit.org>
4992 ASSERTION FAILED: internalValuesConsistent(m_url) in WebCore::URLParser::URLParser
4993 https://bugs.webkit.org/show_bug.cgi?id=178861
4995 Reviewed by Tim Horton.
4997 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
4998 (TestWebKitAPI::TEST_F):
5000 2017-10-30 Commit Queue <commit-queue@webkit.org>
5002 Unreviewed, rolling out r224078.
5003 https://bugs.webkit.org/show_bug.cgi?id=179026
5005 MotionMark regression (Requested by shallawa on #webkit).
5009 "When navigating back to a page, compositing layers may not
5010 use accelerated drawing"
5011 https://bugs.webkit.org/show_bug.cgi?id=178749
5012 https://trac.webkit.org/changeset/224078
5014 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
5016 [WPE] Fix build warnings
5017 https://bugs.webkit.org/show_bug.cgi?id=178899
5019 Reviewed by Carlos Alberto Lopez Perez.
5021 * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
5022 (testContextMenuDownloadActions):
5025 * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
5026 * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
5027 (testWebViewJavaScriptDialogs):
5028 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
5029 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
5030 * WebKitTestRunner/PlatformWPE.cmake:
5031 * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
5032 * WebKitTestRunner/wpe/TestControllerWPE.cpp:
5033 (WTR::threadDefaultContext): Deleted.
5035 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
5037 [WPE] Upstream or stop using cairo-egl-device-create-for-egl-surface.patch
5038 https://bugs.webkit.org/show_bug.cgi?id=178898
5040 Reviewed by Žan Doberšek.
5042 This patch seems to be unused.
5044 * wpe/jhbuild.modules:
5045 * wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Removed.
5047 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
5049 [WPE] Build more files under WebCore as unified sources and get rid of WebCorePlatformWPE build target
5050 https://bugs.webkit.org/show_bug.cgi?id=178964
5052 Reviewed by Carlos Alberto Lopez Perez.
5054 * TestWebKitAPI/PlatformWPE.cmake:
5056 2017-10-12 Frederic Wang <fwang@igalia.com>
5058 Remove support for running safari on the iOS simulator with Xcode < 9.0
5059 https://bugs.webkit.org/show_bug.cgi?id=178203
5061 Reviewed by Alexey Proskuryakov.
5063 This is a follow-up of r223234. We no longer support iOS WebKit development for Xcode < 9.0
5064 and do not have any iOS simulator builders in our infrastructure. Hence we can remove the
5065 special case to calculate the iOS simulator applications path for these old versions.
5067 * Scripts/webkitdirs.pm:
5068 (iosSimulatorApplicationsPath): Remove special case for XCode < 9.0
5070 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
5072 [WPE][GTK] Expose availability of certain editing commands in WebKitEditorState
5073 https://bugs.webkit.org/show_bug.cgi?id=168219
5075 Reviewed by Ryosuke Niwa.
5079 * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
5080 (testWebViewEditorCutCopyPasteNonEditable):
5081 (testWebViewEditorCutCopyPasteEditable):
5082 (testWebViewEditorSelectAllNonEditable):
5083 (testWebViewEditorSelectAllEditable):
5084 (loadContentsAndTryToCutSelection):
5085 (testWebViewEditorNonEditable):
5086 (testWebViewEditorEditorStateTypingAttributes):
5087 (testWebViewEditorInsertImage):
5088 (testWebViewEditorCreateLink):
5090 2017-10-28 Michael Catanzaro <mcatanzaro@igalia.com>
5092 [WPE] Build gst-plugins-base without pango support
5093 https://bugs.webkit.org/show_bug.cgi?id=178918
5095 Reviewed by Carlos Garcia Campos.
5097 We need to build gst-plugins-base without pango support for WPE. Let's use JHBuild
5098 conditions so we can make platform-specific changes in the shared GStreamer moduleset.
5100 * gstreamer/jhbuild.modules:
5104 2017-10-27 Stephan Szabo <stephan.szabo@sony.com>
5106 [Win] Detect Visual Studio 2017 location
5107 https://bugs.webkit.org/show_bug.cgi?id=175275
5109 Reviewed by Per Arne Vollan.
5111 * Scripts/build-jsc:
5112 * Scripts/build-webkit:
5113 * Scripts/update-vswhere.py: Added.
5114 * Scripts/webkitdirs.pm:
5115 (pickCurrentVisualStudioInstallation):
5116 (pickLegacyVisualStudioInstallation):
5117 (visualStudioInstallDir):
5118 (visualStudioInstallDirVSWhere):
5119 (visualStudioInstallDirLegacy):
5120 (visualStudioInstallDirFallback):
5121 (msBuildInstallDir):
5122 (visualStudioVersion):
5123 (visualStudioVersionFromInstallDir):
5124 (generateBuildSystemFromCMakeProject):
5126 2017-10-27 Devin Rousso <webkit@devinrousso.com>
5128 Create watchlist for files related WebInspector Recording
5129 https://bugs.webkit.org/show_bug.cgi?id=178965
5131 Reviewed by Joseph Pecoraro.
5133 * Scripts/webkitpy/common/config/watchlist:
5135 2017-10-27 Jonathan Bedard <jbedard@apple.com>
5137 Windows and WebViews are retained after re-configure
5138 https://bugs.webkit.org/show_bug.cgi?id=178902
5139 <rdar://problem/35211518>
5141 Reviewed by Alexey Proskuryakov.
5143 The test runner effectively leaks windows every time a test changes configuration.
5144 We give each test it's own AutoreleasePool to fix this problem.
5146 * WebKitTestRunner/TestController.cpp:
5147 (WTR::TestController::runTest): Add an AutoRelease pool scoping a test run
5148 so that when a configuration changes, the old window and WebView are released.
5150 2017-10-27 Eric Carlson <eric.carlson@apple.com>
5152 NowPlayingInfo should contain a unique identifier
5153 https://bugs.webkit.org/show_bug.cgi?id=178872
5154 <rdar://problem/34924012>
5156 Unreviewed, fix a flakey test.
5158 * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
5159 (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Update _lastUpdatedElapsedTime.
5160 (-[NowPlayingTestWebView _handleActiveNowPlayingSessionInfoResponse:title:duration:elapsedTime:]): Deleted.
5162 2017-10-27 Fujii Hironori <Hironori.Fujii@sony.com>
5164 autoinstall can't download from http://pypi.python.org
5165 https://bugs.webkit.org/show_bug.cgi?id=178925
5167 Reviewed by Ryosuke Niwa.
5169 The web server pypi.python.org rejects non secure http.
5171 * Scripts/webkitpy/thirdparty/__init__.py:
5172 (AutoinstallImportHook._install_mechanize): Use https instead of http.
5173 (AutoinstallImportHook._install_pep8): Ditto.
5174 (AutoinstallImportHook._install_pylint): Ditto.
5175 (AutoinstallImportHook._install_buildbot): Ditto.
5176 (AutoinstallImportHook._install_coverage): Ditto.
5178 2017-10-26 Fujii Hironori <Hironori.Fujii@sony.com>
5180 [GTK][WPE] install-dependencies can't find libapache2-mod-php7.0 on Ubuntu 17.10
5181 https://bugs.webkit.org/show_bug.cgi?id=178854
5183 Reviewed by Michael Catanzaro.
5185 * Scripts/webkitpy/port/base.py:
5186 (Port._debian_php_version): Return "-php7.1" if libphp7.1.so found.
5187 (Port._is_debian_php_version_7): Deleted.
5188 * gtk/install-dependencies: Install libapache2-mod-php instead of libapache2-mod-php7.0.
5189 * wpe/install-dependencies: Ditto.
5191 2017-10-25 Simon Fraser <simon.fraser@apple.com>
5193 When navigating back to a page, compositing layers may not use accelerated drawing
5194 https://bugs.webkit.org/show_bug.cgi?id=178749
5195 rdar://problem/35158946
5197 Reviewed by Dean Jackson.
5199 Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
5200 and use it to set the state of the web view.
5202 * DumpRenderTree/TestOptions.h:
5203 * DumpRenderTree/TestOptions.mm:
5204 (TestOptions::TestOptions):
5205 * DumpRenderTree/mac/DumpRenderTree.mm:
5206 (setWebPreferencesForTestOptions):
5207 * WebKitTestRunner/TestController.cpp:
5208 (WTR::TestController::resetPreferencesToConsistentValues):
5209 (WTR::updateTestOptionsFromTestHeader):
5210 * WebKitTestRunner/TestOptions.h:
5211 (WTR::TestOptions::hasSameInitializationOptions const):
5213 2017-10-26 Alex Christensen <achristensen@webkit.org>
5215 Move WKWebViewConfiguration validation to WKWebView construction
5216 https://bugs.webkit.org/show_bug.cgi?id=178840
5218 Reviewed by Tim Horton.
5220 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
5221 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm: Added.
5224 2017-10-26 Myles C. Maxfield <mmaxfield@apple.com>
5226 Demonstrate a possible structure of the WebGPU API
5227 https://bugs.webkit.org/show_bug.cgi?id=178874
5229 Reviewed by Dean Jackson.
5231 Over the past few weeks, we've been putting together an example showing that a WebGPU API
5232 which has implicit barriers can work on all three low-level graphics APIs. We've implemented
5233 it on top of Vulkan first, because this is the API which has the strictest requirements and
5234 is most difficult to use.
5236 With this API, this is a valid WebGPU snippet:
5238 auto device = WebGPU::Device::create(hInstance, hWnd);
5239 auto& commandQueue = device->getCommandQueue();
5240 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { }, nullptr);
5242 … later, in the draw() function …
5244 auto renderPass = commandQueue->createRenderPass(nullptr);
5245 renderPass->setRenderState(renderState);
5246 renderPass->setViewport(0, 0, width, height);
5247 renderPass->setScissorRect(0, 0, width, height);
5248 renderPass->draw(3);
5249 commandQueue->commitRenderPass(std::move(renderPass));
5250 commandQueue->present();
5252 This snippet doesn’t hook up any vertex attributes or resources, which means the vertex
5253 shader has to say something like ({vec4(…), vec4(…), vec4(…)})[gl_VertexIndex]. It also
5254 passes in “nullptr” when creating the render pass, which means “render to the screen, rather
5255 than to a frame buffer.” You can also see that it doesn’t attach any resources to the draw
5258 In Direct3D 12 and Vulkan, resources are bound in sets, rather than individually. For
5259 example, a set might contain two uniform buffers, a texture, and another uniform buffer. At
5260 draw time, you swap in whole sets of resources with a single call. A shader invocation can
5261 access a collection of sets. Because all shader resource accesses are indirected through
5262 these sets, the shape of these sets needs to be supplied at the time you compile the render
5263 state. Here is a snippet which bounds a single set which contains a uniform buffer and a
5266 auto buffer = device->getBuffer(bufferInitialContents);
5267 auto texture = device->getTexture(buffer width, height, WebGPU::PixelFormat::RGBA8, textureInitialContents);
5268 // One resource set, which holds a single uniform buffer object and a single texture
5269 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { { WebGPU::ResourceType::UniformBufferObject, WebGPU::ResourceType::Texture } }, nullptr);
5271 … later, in the draw() function …
5273 auto renderPass = commandQueue->createRenderPass(nullptr);
5274 renderPass->setRenderState(renderState);
5275 renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()), WebGPU::TextureReference(texture.get()) });
5277 renderPass->draw(3);
5278 commandQueue->commitRenderPass(std::move(renderPass));
5279 commandQueue->present();
5281 The first argument to the setResources() call identifies which set to populate with the supplied resources.
5283 One tenant of the low-level graphics APIs is that, if you’ve enabled double buffering (or
5284 triple buffering), the GPU is executing one frame at the same time you are recording the
5285 next frame. This often means that you need duplicate resources so the CPU and GPU don’t step
5286 on each other’s toes. However, platforms have platform-specific requirements about whether
5287 or not they can be double / triple buffered, and we don’t want to expose this to the Web for
5288 fear of badly-authored programs.
5290 To solve this, resources are reference counted, and the return type of getBuffer() is an
5291 RAII type called BufferHolder which increments and decrements the reference count
5292 automatically. The reference count is also incremented and decremented when the GPU is using
5293 the resource in a Pass. When the reference count reaches 0, the resource isn’t destroyed;
5294 instead, it’s simply moved to a “free list” which getBuffer() may pull from. Therefore,
5295 applications don’t need to know whether the frame buffer is double buffered or triple
5296 buffered; they can just getBuffer() each frame, and the correct number of buffers will be
5297 created and recycled.
5300 auto buffer = device->getBuffer(bufferSize); // These get recycled
5301 … populate the buffer …
5302 auto renderPass = commandQueue->createRenderPass(nullptr);
5303 renderPass->setRenderState(renderState);
5304 renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()) });
5306 renderPass->draw(…);
5307 commandQueue->commitRenderPass(std::move(renderPass));
5309 commandQueue->present();
5311 In Direct3D and Vulkan, vertex buffers and index buffers are not part of the resource sets
5312 mentioned above. Instead, you tell the render state about the shape of the vertex and index
5313 buffers, and you swap them out independently in the draw loop. Metal and Vulkan have almost
5314 identical API to specify this shape of the vertex buffers, so I’ve mostly copied it. In this
5315 example, we have two vertex attributes, a vec2 and a vec3, which both come from the same
5318 // { Attribute format, offset within stride, buffer to pull from }
5319 std::vector<WebGPU::RenderState::VertexAttribute> vertexAttributes = { {WebGPU::RenderState::VertexFormat::Float2, 0, 0}, {WebGPU::RenderState::VertexFormat::Float3, sizeof(float) * 2, 0} };
5320 // A single vertex buffer, with a stride of 5 floats
5321 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { sizeof(float) * 5 }, vertexAttributes, resourceTypes, nullptr);
5323 … later, in the draw() function …
5325 auto renderPass = commandQueue->createRenderPass(nullptr);
5326 renderPass->setRenderState(renderState);
5327 renderPass->setVertexAttributeBuffers({ vertexBuffer.get() }); // The one vertex buffer which both attributes pull from
5328 renderPass->setResources(…);
5330 renderPass->draw(…);
5331 commandQueue->commitRenderPass(std::move(renderPass));
5332 commandQueue->present();
5334 You can also tell the RenderState about how many render targets you have and their formats,
5335 and then when you create the RenderPass, you specify the specific textures you want to
5338 std::vector<WebGPU::PixelFormat> colorPixelFormats = { WebGPU::PixelFormat::RGBA8, WebGPU::PixelFormat::RGBA8 }; // Two render targets, with these formats
5339 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", vertexBufferStrides, vertexAttributes, resourceTypes, &colorPixelFormats);
5341 … later, in the draw() function …
5343 std::vector<std::reference_wrapper<WebGPU::Texture>> destinationTextures = { texture1->get(), texture2->get() };
5344 auto renderPass = commandQueue->createRenderPass(&destinationTextures);
5345 renderPass->setRenderState(renderState);
5347 renderPass->draw(…);
5348 commandQueue->commitRenderPass(std::move(renderPass));
5350 // Now, draw one of the textures to the screen. Note that no synchronization is necessary here!
5351 auto renderPass = commandQueue->createRenderPass(nullptr);
5352 renderPass->setRenderState(renderState2);
5353 renderPass->setResources(0, { WebGPU:: TextureReference(texture1.get()) });
5355 renderPass->draw(…);
5356 commandQueue->commitRenderPass(std::move(renderPass));
5357 commandQueue->present();
5359 Just like how in Metal has Render Encoders and Compute Encoders, WebGPU has RenderPasses
5362 auto& computeState = device->getComputeState(computeShader, "main", resourceTypes);
5364 auto computePass = commandQueue->createComputePass();
5365 computePass->setComputeState(computeState);
5366 computePass->setResources(0, resources);
5367 computePass->dispatch(width, height, depth);
5368 commandQueue->commitComputePass(std::move(computePass));
5370 // Now, draw the resources we just computed. Note that no synchronization is necessary here!
5371 auto renderPass = commandQueue->createRenderPass(nullptr);
5372 renderPass->setRenderState(renderState);
5373 renderPass->setResources(0, resources });
5375 renderPass->draw(…);
5376 commandQueue->commitRenderPass(std::move(renderPass));
5377 commandQueue->present();
5379 There are also two other types of passes: one that corresponds to a Metal blit encoder, and
5380 one that allows the CPU to change the contents of GPU buffers and textures. This last kind
5381 of pass is a little interesting: you can’t just change the contents of a buffer at any time
5382 you feel like it, because that resource might be in use by the GPU. Therefore, we need to do
5383 the same kind of synchronization that we already do at render pass boundaries.
5385 In addition, both Vulkan and Direct3D have a concept of a memory heap. A resource might
5386 exist inside a heap which is fast, but invisible from the CPU, or in a heap which is slow,
5387 but visible by the CPU. Certain operations are not possible from some types of images (e.g.
5388 non-tiled textures may not be able to be sampled from). The usual way to get around this
5389 problem is to have two resources: a slow staging resource which the CPU can see, and a fast
5390 resource which the CPU can’t see. Uploading data is a two-pass algorithm, where the CPU
5391 memcpy()s into the slow staging resource, and then a blit command is enqueued on the GPU to
5392 copy the contents of the staging resource to the real resource. This requires that the
5393 upload have access to the commandQueue so it can possibly enqueue a blit between the staging
5394 and real resources. Therefore, a pass is the right level of abstraction for these facilities.
5396 std::queue<boost::unique_future<std::vector<uint8_t>>> futureQueue; // Promises for data downloads from the GPU
5398 … later, in the draw() function …
5400 // See if any of the previously-enqueued downloads are finished
5401 while (!futureQueue.empty() && futureQueue.front(). has_value()) {
5402 std::vector<uint8_t>& data = futureQueue.front().get();
5403 // Use the downloaded data
5407 auto hostAccessPass = commandQueue->createHostAccessPass();
5408 hostAccessPass->overwriteBuffer(buffer->get(), bufferContents); // Upload data to a resource
5410 futureQueue.emplace(hostAccessPass->getBufferContents(buffer->get()));
5411 commandQueue->commitHostAccessPass(std::move(hostAccessPass));
5413 You can also issue copy commands between resources entirely on the GPU:
5415 auto blitPass = commandQueue->createBlitPass();
5416 blitPass->copyTexture(source->get(), destination->get(), sourceX, sourceY, destinationX, destinationY, width, height);
5417 commandQueue->commitBlitPass(std::move(blitPass));
5419 * Scripts/webkitpy/style/checker.py:
5420 * WebGPUAPIStructure/Example/Example.cpp: Added.
5427 * WebGPUAPIStructure/Example/Example.h: Added.
5428 * WebGPUAPIStructure/Example/Example.ico: Added.
5429 * WebGPUAPIStructure/Example/Example.rc: Added.
5430 * WebGPUAPIStructure/Example/Example.vcxproj: Added.
5431 * WebGPUAPIStructure/Example/Example.vcxproj.filters: Added.
5432 * WebGPUAPIStructure/Example/Example.vcxproj.user: Added.
5433 * WebGPUAPIStructure/Example/resource.h: Added.
5434 * WebGPUAPIStructure/Example/small.ico: Added.
5435 * WebGPUAPIStructure/Example/stdafx.cpp: Added.
5436 * WebGPUAPIStructure/Example/stdafx.h: Added.
5437 * WebGPUAPIStructure/Example/targetver.h: Added.
5438 * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj: Added.
5439 * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj.filters: Added.
5440 * WebGPUAPIStructure/WebGPU-Common/WebGPU.cpp: Added.
5441 (WebGPU::BufferHolder::BufferHolder):
5442 (WebGPU::BufferHolder::~BufferHolder):
5443 (WebGPU::TextureHolder::TextureHolder):
5444 (WebGPU::TextureHolder::~TextureHolder):
5445 (WebGPU::SamplerHolder::SamplerHolder):
5446 (WebGPU::SamplerHolder::~SamplerHolder):
5447 * WebGPUAPIStructure/WebGPU-Common/WebGPU.h: Added.
5448 (WebGPU::Queue::~Queue):
5449 (WebGPU::RenderState::~RenderState):
5450 (WebGPU::ComputeState::~ComputeState):
5451 (WebGPU::Buffer::~Buffer):
5452 (WebGPU::Texture::~Texture):
5453 (WebGPU::Sampler::~Sampler):
5454 (WebGPU::TextureReference::TextureReference):
5455 (WebGPU::TextureReference::get const):
5456 (WebGPU::SamplerReference::SamplerReference):
5457 (WebGPU::SamplerReference::get const):
5458 (WebGPU::UniformBufferObjectReference::UniformBufferObjectReference):
5459 (WebGPU::UniformBufferObjectReference::get const):
5460 (WebGPU::ShaderStorageBufferObjectReference::ShaderStorageBufferObjectReference):
5461 (WebGPU::ShaderStorageBufferObjectReference::get const):
5462 (WebGPU::RenderPass::~RenderPass):
5463 (WebGPU::ComputePass::~ComputePass):
5464 (WebGPU::BlitPass::~BlitPass):
5465 (WebGPU::HostAccessPass::~HostAccessPass):
5466 (WebGPU::BufferHolder::get):
5467 (WebGPU::TextureHolder::get):
5468 (WebGPU::SamplerHolder::get):
5469 (WebGPU::Device::~Device):
5470 * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.cpp: Added.
5471 (WebGPU::BlitPassImpl::BlitPassImpl):
5472 (WebGPU::BlitPassImpl::copyTexture):
5473 * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.h: Added.
5474 * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.cpp: Added.
5475 (WebGPU::BufferImpl::BufferImpl):
5476 (WebGPU::BufferImpl::decrementReferenceCount):
5477 * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.h: Added.
5478 (WebGPU::BufferImpl::getBuffer const):
5479 (WebGPU::BufferImpl::getDeviceMemory const):
5480 (WebGPU::BufferImpl::incrementReferenceCount):
5481 (WebGPU::BufferImpl::getLength const):
5482 * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.cpp: Added.
5483 (WebGPU::ComputePassImpl::ComputePassImpl):
5484 (WebGPU::ComputePassImpl::setComputeState):
5485 (WebGPU::ComputePassImpl::setResources):
5486 (WebGPU::ComputePassImpl::dispatch):
5487 * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.h: Added.
5488 * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.cpp: Added.
5489 (WebGPU::ComputeStateImpl::ComputeStateImpl):
5490 * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.h: Added.
5491 (WebGPU::ComputeStateImpl::getPipeline const):
5492 (WebGPU::ComputeStateImpl::getPipelineLayout const):
5493 (WebGPU::ComputeStateImpl::getDescriptorSetLayouts const):
5494 * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.cpp: Added.
5495 (WebGPU::Device::create):
5496 (WebGPU::convertPixelFormat):
5497 (WebGPU::convertFormat):
5498 (WebGPU::debugReport):
5499 (WebGPU::DeviceImpl::DeviceImpl):
5500 (WebGPU::DeviceImpl::getCommandQueue):
5501 (WebGPU::DeviceImpl::prepareShader):
5502 (WebGPU::DeviceImpl::createPipelineLayout):
5503 (WebGPU::DeviceImpl::createCompatibleRenderPass):
5504 (WebGPU::convertVertexFormat):
5505 (WebGPU::DeviceImpl::getRenderState):
5506 (WebGPU::DeviceImpl::getComputeState):
5507 (WebGPU::DeviceImpl::getBuffer):
5508 (WebGPU::DeviceImpl::returnBuffer):
5509 (WebGPU::DeviceImpl::getTexture):
5510 (WebGPU::DeviceImpl::returnTexture):
5511 (WebGPU::DeviceImpl::getSampler):
5512 (WebGPU::DeviceImpl::returnSampler):
5513 (WebGPU::DeviceImpl::~DeviceImpl):
5514 * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.h: Added.
5515 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::UniqueDebugReportCallbackEXT):
5516 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::operator=):
5517 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::~UniqueDebugReportCallbackEXT):
5518 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::destroy):
5519 (WebGPU::DeviceImpl::TextureParameters::operator== const):
5520 (WebGPU::DeviceImpl::TextureParametersHash::operator() const):
5521 * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.cpp: Added.
5522 (WebGPU::HostAccessPassImpl::HostAccessPassImpl):
5523 (WebGPU::HostAccessPassImpl::overwriteBuffer):
5524 (WebGPU::HostAccessPassImpl::getBufferContents):
5525 (WebGPU::HostAccessPassImpl::execute):
5526 * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.h: Added.
5527 (WebGPU::HostAccessPassImpl::getFinishedEvent const):
5528 * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.cpp: Added.
5529 (WebGPU::PassImpl::PassImpl):
5530 (WebGPU::ResourceVisitor::operator()):
5531 (WebGPU::ResourceVisitor::getBindings const):
5532 (WebGPU::ResourceVisitor::releaseWriteDescriptorSets):
5533 (WebGPU::ResourceVisitor::getDescriptorImageInfos const):
5534 (WebGPU::ResourceVisitor::getDescriptorBufferInfos const):
5535 (WebGPU::ResourceVisitor::getBuffers const):
5536 (WebGPU::ResourceVisitor::getTextures const):
5537 (WebGPU::ResourceVisitor::getSamplers const):
5538 (WebGPU::ResourceVisitor::getImageCount const):
5539 (WebGPU::ResourceVisitor::getSamplerCount const):
5540 (WebGPU::ResourceVisitor::getUniformBufferCount const):
5541 (WebGPU::ResourceVisitor::getStorageBufferCount const):
5542 (WebGPU::PassImpl::setResources):
5543 (WebGPU::PassImpl::insertBuffer):
5544 (WebGPU::PassImpl::insertTexture):
5545 (WebGPU::PassImpl::insertSampler):
5546 * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.h: Added.
5547 (WebGPU::PassImpl::getCommandBuffer const):
5548 (WebGPU::PassImpl::iterateBuffers):
5549 (WebGPU::PassImpl::iterateTextures):
5550 (WebGPU::PassImpl::ResourceReference::ResourceReference):
5551 (WebGPU::PassImpl::ResourceReference::~ResourceReference):
5552 (WebGPU::PassImpl::ResourceReference::operator=):
5553 (WebGPU::PassImpl::ResourceReference::operator== const):
5554 (WebGPU::PassImpl::ResourceReference::get const):
5555 (WebGPU::PassImpl::ResourceReference::release):
5556 (WebGPU::PassImpl::ResourceReferenceHash::operator() const):
5557 * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.cpp: Added.
5558 (WebGPU::QueueImpl::QueueImpl):
5559 (WebGPU::QueueImpl::prepareCurrentFrame):
5560 (WebGPU::QueueImpl::createSpecificRenderPass):
5561 (WebGPU::QueueImpl::createFramebuffer):
5562 (WebGPU::QueueImpl::createRenderPass):
5563 (WebGPU::QueueImpl::commitRenderPass):
5564 (WebGPU::QueueImpl::createComputePass):
5565 (WebGPU::QueueImpl::commitComputePass):
5566 (WebGPU::QueueImpl::createBlitPass):
5567 (WebGPU::QueueImpl::commitBlitPass):
5568 (WebGPU::QueueImpl::createHostAccessPass):
5569 (WebGPU::QueueImpl::commitHostAccessPass):
5570 (WebGPU::QueueImpl::present):
5571 (WebGPU::QueueImpl::commitPass):
5572 (WebGPU::QueueImpl::synchronizeResources):
5573 (WebGPU::QueueImpl::~QueueImpl):
5574 * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.h: Added.
5575 * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.cpp: Added.
5576 (WebGPU::RenderPassImpl::RenderPassImpl):
5577 (WebGPU::RenderPassImpl::setRenderState):
5578 (WebGPU::RenderPassImpl::setVertexAttributeBuffers):
5579 (WebGPU::RenderPassImpl::setResources):
5580 (WebGPU::RenderPassImpl::setViewport):
5581 (WebGPU::RenderPassImpl::setScissorRect):
5582 (WebGPU::RenderPassImpl::draw):
5583 * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.h: Added.
5584 * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.cpp: Added.
5585 (WebGPU::RenderStateImpl::RenderStateImpl):
5586 * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.h: Added.
5587 (WebGPU::RenderStateImpl::getPipeline const):
5588 (WebGPU::RenderStateImpl::getPipelineLayout const):
5589 (WebGPU::RenderStateImpl::getDescriptorSetLayouts const):
5590 * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.cpp: Added.
5591 (WebGPU::SamplerImpl::SamplerImpl):
5592 (WebGPU::SamplerImpl::decrementReferenceCount):
5593 * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.h: Added.
5594 (WebGPU::SamplerImpl::getSampler):
5595 (WebGPU::SamplerImpl::incrementReferenceCount):
5596 (WebGPU::SamplerImpl::getFilter):
5597 (WebGPU::SamplerImpl::getMipmapMode):
5598 (WebGPU::SamplerImpl::getAddressMode):
5599 * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.cpp: Added.
5600 (WebGPU::TextureImpl::TextureImpl):
5601 (WebGPU::TextureImpl::decrementReferenceCount):
5602 * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.h: Added.
5603 (WebGPU::TextureImpl::getImage const):
5604 (WebGPU::TextureImpl::getImageView const):
5605 (WebGPU::TextureImpl::getFormat const):
5606 (WebGPU::TextureImpl::incrementReferenceCount):
5607 (WebGPU::TextureImpl::getWidth const):
5608 (WebGPU::TextureImpl::getHeight const):
5609 (WebGPU::TextureImpl::getTransferredToGPU const):
5610 (WebGPU::TextureImpl::setTransferredToGPU):
5611 * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj: Added.
5612 * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj.filters: Added.
5613 * WebGPUAPIStructure/WebGPU.sln: Added.
5615 2017-10-26 Eric Carlson <eric.carlson@apple.com>
5617 NowPlayingInfo should contain a unique identifier
5618 https://bugs.webkit.org/show_bug.cgi?id=178872
5620 Reviewed by Jer Noble.
5622 * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
5623 (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Use completion handler.
5624 (TestWebKitAPI::TEST): Cleanup tests. Use new API.
5625 (-[NowPlayingTestWebView waitForNowPlayingInfoToChange]): Deleted.
5627 2017-10-26 Eric Carlson <eric.carlson@apple.com>
5629 [MediaStream] Clear cached gUM prompt state
5630 https://bugs.webkit.org/show_bug.cgi?id=178754
5631 <rdar://problem/32742356>
5633 Unreviewed, fix a flakey test.
5635 * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm:
5636 (-[GetUserMediaRepromptTestView haveStream:]): New, check several times for expected state.
5637 (TestWebKitAPI::TEST): Don't assume stream state changes in the page immediately.
5639 2017-10-26 Andy Estes <aestes@apple.com>
5641 [Payment Request] Enable Payment Request whenever Apple Pay is enabled
5642 https://bugs.webkit.org/show_bug.cgi?id=178880
5644 Reviewed by Tim Horton.
5646 * WebKitTestRunner/TestController.cpp:
5647 (WTR::TestController::resetPreferencesToConsistentValues):
5649 2017-10-26 Joseph Pecoraro <pecoraro@apple.com>
5651 Add and update some watchlists
5652 https://bugs.webkit.org/show_bug.cgi?id=178304
5654 Reviewed by Simon Fraser.
5656 * Scripts/webkitpy/common/config/watchlist:
5658 2017-10-26 Ryan Haddad <ryanhaddad@apple.com>
5660 Unreviewed, rolling out r223984.
5662 Caused LayoutTest assertion failures.
5666 "When navigating back to a page, compositing layers may not
5667 use accelerated drawing"
5668 https://bugs.webkit.org/show_bug.cgi?id=178749
5669 https://trac.webkit.org/changeset/223984
5671 2017-10-26 Christopher Reid <chris.reid@sony.com>
5673 Remove scopeguard from platform
5674 https://bugs.webkit.org/show_bug.cgi?id=178681
5676 Reviewed by Brady Eidson.
5678 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
5680 2017-09-21 Carlos Garcia Campos <cgarcia@igalia.com>
5682 WebDriver: Add support to import and run W3C tests
5683 https://bugs.webkit.org/show_bug.cgi?id=177304
5685 Reviewed by Brian Burg.
5687 WPT has now several WebDriver tests, and new ones are going to be added to cover the whole spec. This patch
5688 adds the initial support for running W3C tests. The script import-w3c-webdriver-tests reuses parts of the W3C
5689 test downloader to download the tests and required tools from WPT repository into WebDriverTests
5690 directory. Tests can be run with run-webdriver-tests, a new script that works similar to other test runner
5691 scripts. For now it shows a summary at the end of the execution, there aren't expectations yet, since we are not
5692 ready to run those tests in the bots. Once we are ready to properly run the tests, we can add the expectations
5693 support and run the tests in the bots.
5695 * Scripts/import-w3c-webdriver-tests: Added.
5696 * Scripts/run-webdriver-tests: Added.
5697 * Scripts/webkitpy/style/checker.py: Skip WebDriverTests directory since it only contains third-party python
5699 * Scripts/webkitpy/thirdparty/__init__.py: Add support to autodownload mozlog and mozprocess since they are
5700 required by the WebDriver tests.
5701 * Scripts/webkitpy/webdriver_tests/__init__.py: Added.
5702 * Scripts/webkitpy/webdriver_tests/webdriver_driver.py: Added.
5703 * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py: Added.
5704 * Scripts/webkitpy/webdriver_tests/webdriver_test_result.py: Added.
5705 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py: Added.
5706 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py: Added.
5707 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py: Added.
5708 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py: Added.
5710 2017-10-25 Eric Carlson <eric.carlson@apple.com>
5712 [MediaStream] Clear cached gUM prompt state
5713 https://bugs.webkit.org/show_bug.cgi?id=178754
5714 <rdar://problem/32742356>
5716 Reviewed by Youenn Fablet.
5718 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new test
5720 * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm: Added.
5721 (-[GetUserMediaRepromptUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
5722 (-[GetUserMediaRepromptUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
5723 (TestWebKitAPI::TEST):
5725 * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
5727 2017-10-25 Ross Kirsling <ross.kirsling@sony.com>
5729 Add committer status for Ross Kirsling
5730 https://bugs.webkit.org/show_bug.cgi?id=178832
5734 * Scripts/webkitpy/common/config/contributors.json:
5736 2017-10-25 Simon Fraser <simon.fraser@apple.com>
5738 When navigating back to a page, compositing layers may not use accelerated drawing
5739 https://bugs.webkit.org/show_bug.cgi?id=178749
5740 rdar://problem/35158946
5742 Reviewed by Dean Jackson.
5744 Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
5745 and use it to set the state of the web view.
5747 * DumpRenderTree/TestOptions.h:
5748 * DumpRenderTree/TestOptions.mm:
5749 (TestOptions::TestOptions):
5750 * DumpRenderTree/mac/DumpRenderTree.mm:
5751 (setWebPreferencesForTestOptions):
5752 * WebKitTestRunner/TestController.cpp:
5753 (WTR::TestController::resetPreferencesToConsistentValues):
5754 (WTR::updateTestOptionsFromTestHeader):
5755 * WebKitTestRunner/TestOptions.h:
5756 (WTR::TestOptions::hasSameInitializationOptions const):
5758 2017-10-25 Robin Morisset <rmorisset@apple.com>
5760 Support the TailBench9000 benchmark in run-jsc-benchmarks
5761 https://bugs.webkit.org/show_bug.cgi?id=178451
5763 Reviewed by Saam Barati.
5765 * Scripts/run-jsc-benchmarks:
5767 2017-10-25 Adrian Perez de Castro <aperez@igalia.com>
5769 [WPE] Remove GLib API functions which use Cairo
5770 https://bugs.webkit.org/show_bug.cgi?id=178205
5772 Reviewed by Michael Catanzaro.
5774 Add PLATFORM(GTK) guards for the API tests (or parts of them) which use cairo_surface_t (web
5775 page snapshots and favicons) which are not available in the WPE version of the GLib API.
5777 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
5778 (testNotInitialized):
5779 (testPrivateBrowsing):
5780 (testFaviconDatabase):
5781 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
5782 (testFindControllerHide):
5784 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
5785 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
5787 2017-10-25 Zan Dobersek <zdobersek@igalia.com>
5789 Make SERVICE_WORKER feature buildable on GTK, WPE
5790 https://bugs.webkit.org/show_bug.cgi?id=178574
5792 Reviewed by Carlos Garcia Campos.
5794 * Scripts/webkitperl/FeatureList.pm: Add the --service-worker option
5795 that enables the SERVICE_WORKER feature flag. For now it's enabled
5796 on Apple's Cocoa ports (even when build-webkit isn't used for those
5797 builds, the flag is enabled here for consistency).
5799 2017-10-24 Michael Catanzaro <mcatanzaro@igalia.com>
5801 Unreviewed, fix name of Perl LibXML package on Fedora
5802 https://bugs.webkit.org/show_bug.cgi?id=178206
5803 <rdar://problem/35028586>
5805 * gtk/install-dependencies:
5806 * wpe/install-dependencies:
5808 2017-10-24 Alex Christensen <achristensen@webkit.org>
5810 Selecting and right-clicking URL-like strings with IDNA-disallowed characters in host or authority causes rendering engine crash
5811 https://bugs.webkit.org/show_bug.cgi?id=174267
5813 Reviewed by Tim Horton.
5815 * TestWebKitAPI/Tests/WebKit/CanHandleRequest_Bundle.cpp:
5816 (TestWebKitAPI::runTest):
5818 2017-10-24 Eric Carlson <eric.carlson@apple.com>
5820 Web Inspector: Enable WebKit logging configuration and display
5821 https://bugs.webkit.org/show_bug.cgi?id=177027
5822 <rdar://problem/33964767>
5824 Reviewed by Joseph Pecoraro.
5826 Allow new 'dumpJSConsoleLogInStdErr' test header to redirect log console output to stderr.
5828 * DumpRenderTree/TestOptions.h:
5829 * DumpRenderTree/TestOptions.mm:
5830 (TestOptions::TestOptions):
5831 * DumpRenderTree/mac/DumpRenderTree.mm:
5833 * WebKitTestRunner/TestController.cpp:
5834 (WTR::updateTestOptionsFromTestHeader):
5835 (WTR::TestController::runTest):
5836 * WebKitTestRunner/TestOptions.h:
5837 (WTR::TestOptions::hasSameInitializationOptions const):
5839 2017-10-24 Alex Christensen <achristensen@webkit.org>
5841 Apply custom header fields from WebsitePolicies to same-domain requests
5842 https://bugs.webkit.org/show_bug.cgi?id=178356
5844 Reviewed by Brady Eidson.
5846 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
5849 2017-10-24 Stephan Szabo <stephan.szabo@sony.com>
5851 [Win][JSCOnly] Make jsconly build testapi and dlls and copy dlls when running tests
5852 https://bugs.webkit.org/show_bug.cgi?id=177279
5854 Reviewed by Yusuke Suzuki.
5856 * Scripts/build-jsc:
5857 * Scripts/run-jsc-stress-tests:
5859 2017-10-23 Lucas Forschler <lforschler@apple.com>
5861 <rdar://problem/35045445>
5862 Update README to reference WebKit build archives, instead of 'nightly'
5864 Reviewed by Aakash Jain.
5866 * WebKitArchiveSupport/README:
5868 2017-10-21 Tim Horton <timothy_horton@apple.com>
5870 Turn on ccache for Mac cmake builds by default
5871 https://bugs.webkit.org/show_bug.cgi?id=177059
5873 Reviewed by Sam Weinig.
5875 * ccache/ccache-clang:
5876 * ccache/ccache-wrapper: Added.
5877 Add a pass-through ccache wrapper to be used with CMake, in addition
5878 to the existing faux-clang wrappers.
5880 * Scripts/build-webkit:
5881 Add --use-ccache and --no-use-ccache option, which will define
5882 WK_USE_CCACHE to YES or NO, respectively, which the underlying
5883 build systems respect. We do not define WK_USE_CCACHE if the option
5884 is not specified, because the underlying build systems have different
5887 2017-10-20 Aakash Jain <aakash_jain@apple.com>
5889 Do not run binding tests on multiple EWSes
5890 https://bugs.webkit.org/show_bug.cgi?id=178599
5892 Reviewed by Alexey Proskuryakov.
5894 Remove old code which runs bindings tests and ignore it's result. We now have
5895 a dedicated bindings test EWS.
5897 * Scripts/webkitpy/tool/steps/runtests.py:
5898 (RunTests.run): Removed bindings tests code.
5899 * Scripts/webkitpy/tool/steps/runtests_unittest.py: Updated unit-tests.
5900 (RunTestsTest.test_webkit_run_unit_tests): Ditto.
5901 * Scripts/webkitpy/tool/steps/steps_unittest.py: Ditto.
5902 * Scripts/webkitpy/tool/commands/download_unittest.py: Ditto.
5904 2017-10-20 Youenn Fablet <youenn@apple.com>
5906 WebsiteDataStoreCustomPaths.mm is failing after r223718
5907 https://bugs.webkit.org/show_bug.cgi?id=178596
5911 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
5912 (TEST): Making default web site data store creation expected at the end of the test.
5913 We should probably not need need to create it.
5914 This should be fixed as a follow-up.
5916 2017-10-20 Antoine Quint <graouts@apple.com>
5918 [Web Animations] Provide basic timeline and animation interfaces
5919 https://bugs.webkit.org/show_bug.cgi?id=178526
5921 Reviewed by Dean Jackson.
5923 Remove the WEB_ANIMATIONS compile-time flag.
5925 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
5927 2017-10-20 Tomas Popela <tpopela@redhat.com>
5929 Missing some perl packages in install-dependencies
5930 https://bugs.webkit.org/show_bug.cgi?id=178571
5932 Reviewed by Žan Doberšek.
5934 Install per-version and perl-Time-HiRes so we can use build-webkit
5935 script. Also add missing backlashes.
5937 * wpe/install-dependencies:
5939 2017-10-20 Commit Queue <commit-queue@webkit.org>
5941 Unreviewed, rolling out r222709 and r223572.
5942 https://bugs.webkit.org/show_bug.cgi?id=178587
5944 Still getting mac-wk2 EWS bots stuck (Requested by ap on
5947 Reverted changesets:
5949 "Log stack-trace for run-webkit-tests when interrupted"
5950 https://bugs.webkit.org/show_bug.cgi?id=176393
5951 https://trac.webkit.org/changeset/222709
5953 "webkitpy: Hang when workers write to the same stack trace
5955 https://bugs.webkit.org/show_bug.cgi?id=178402
5956 https://trac.webkit.org/changeset/223572
5958 2017-10-19 Nan Wang <n_wang@apple.com>
5960 AX: Provide a way for Accessibility to cache the selection while retrieving rects for speak selection
5961 https://bugs.webkit.org/show_bug.cgi?id=176247
5962 <rdar://problem/34217143>
5964 Reviewed by Ryosuke Niwa.
5966 * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
5967 (TestWebKitAPI::TEST):
5969 2017-10-19 Sam Weinig <sam@webkit.org>
5971 [Settings] Move global settings into their own file
5972 https://bugs.webkit.org/show_bug.cgi?id=178512
5974 Reviewed by Darin Adler.
5976 * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
5977 (TestWebKitAPI::TEST):
5979 2017-10-19 Andy Estes <aestes@apple.com>
5981 [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
5982 https://bugs.webkit.org/show_bug.cgi?id=178181
5983 <rdar://problem/33660282>
5985 Reviewed by Dan Bernstein.
5987 * WebKitTestRunner/TestController.cpp:
5988 (WTR::TestController::databaseProcessName):
5990 2017-10-19 Saam Barati <sbarati@apple.com>
5992 Turn poly proto back on by default and remove the option
5993 https://bugs.webkit.org/show_bug.cgi?id=178525
5995 Reviewed by Mark Lam.
5997 * Scripts/run-jsc-stress-tests:
5999 2017-10-18 Ryosuke Niwa <rniwa@webkit.org>
6001 Don't expose raw HTML in pasteboard to the web content
6002 https://bugs.webkit.org/show_bug.cgi?id=178422
6004 Reviewed by Wenson Hsieh.
6006 Added a test case for sanitizing web archive in the system pasteboard to strip privacy sensitive information
6007 such as local file paths and potentially harmful scripts like event handlers serialized by WebKit prior to r223462.
6009 * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
6010 (PasteWebArchive.SanitizesHTML):
6012 2017-10-18 Youenn Fablet <youenn@apple.com>
6014 TestController should clear all fetch caches when resetting its state
6015 https://bugs.webkit.org/show_bug.cgi?id=178486
6017 Reviewed by Chris Dumez.
6019 Adding clearDOMCaches test runner method.
6020 Using that method when resetting state.
6022 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6023 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6024 (WTR::TestRunner::clearDOMCaches):
6025 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6026 * WebKitTestRunner/TestInvocation.cpp:
6027 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
6029 2017-10-18 Chelsea Pugh <cpugh@apple.com>
6031 [iOS] Use new class name from UIKit when checking UITextSuggestion type
6032 https://bugs.webkit.org/show_bug.cgi?id=178416
6034 Reviewed by Tim Horton.
6036 This updates our test using/mocking out UITextAutofillSuggestion instead of UIKeyboardLoginCredentialsSuggestion.
6038 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
6039 (-[UITextAutofillSuggestion initWithUsername:password:]): Copied from UIKit's implementation. This will serve as
6040 a mock of this method for builds not containingit.
6041 (+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Ditto.
6042 (TestWebKitAPI::TEST): Use +[UITextAutofillSuggestion autofillSuggestionWithUsername:password:] inline instead of
6043 helper function for creating a new suggestion.
6044 (newUIKeyboardLoginCredentialsSuggestion): Deleted.
6046 * TestWebKitAPI/ios/UIKitSPI.h:
6048 2017-10-18 Fujii Hironori <Hironori.Fujii@sony.com>
6050 update-webkit-auxiliary-libs can't download WebKitAuxiliaryLibrary.zip due to 403 Forbidden
6051 https://bugs.webkit.org/show_bug.cgi?id=178381
6053 Reviewed by Alexey Proskuryakov.
6055 The web server developer.apple.com seems to reject HTTP requests
6056 without Accept header field.
6058 * Scripts/update-webkit-dependency: Add 'Accept' header field to requests.
6060 2017-10-18 Aakash Jain <aakash_jain@apple.com>
6062 webkitpy tests should have --json-output option
6063 https://bugs.webkit.org/show_bug.cgi?id=178481
6065 Reviewed by Alexey Proskuryakov.
6067 * Scripts/webkitpy/test/main.py:
6068 (Tester._parse_args): Added json-output argument.
6069 (Tester._run_tests): Write output to json file.
6071 2017-10-18 Wenson Hsieh <wenson_hsieh@apple.com>
6073 Unreviewed, rolling out r223291.
6075 See WebCore ChangeLog for more detail.
6079 "Remove Editor::simplifyMarkup"
6080 https://bugs.webkit.org/show_bug.cgi?id=178271
6081 https://trac.webkit.org/changeset/223291
6083 2017-10-18 Chris Dumez <cdumez@apple.com>
6085 Add an efficient data structure for WebCore to query if there is a Service Worker registered for a given origin
6086 https://bugs.webkit.org/show_bug.cgi?id=177876
6087 <rdar://problem/34813129>
6089 Reviewed by Ryosuke Niwa.
6091 Clear service worker registrations between test runs to avoid flakiness.
6093 * WebKitTestRunner/TestController.cpp:
6094 (WTR::TestController::resetStateToConsistentValues):
6096 2017-10-18 Zan Dobersek <zdobersek@igalia.com>
6098 Remove remnants of OpenWebRTC
6099 https://bugs.webkit.org/show_bug.cgi?id=178437
6101 Reviewed by Alejandro G. Castro.
6103 Drop OpenWebRTC packages from the GTK's Jhbuild modules file. Relevant
6104 patches are also removed.
6106 * gtk/jhbuild.modules:
6107 * gtk/patches/libnice-0001-TURN-allow-REALM-to-be-empty.patch: Removed.
6108 * gtk/patches/libnice-0001-nicesrc-spin-the-agent-mainloop-in-a-separate-thread.patch: Removed.
6109 * gtk/patches/rtspsrc-timeout-on-udpsrc-is-in-nanoseconds.patch: Removed.
6110 * gtk/patches/udpsrc-improve-timeouts.patch: Removed.
6112 2017-10-17 Jonathan Bedard <jbedard@apple.com>
6114 webkitpy: Hang when workers write to the same stack trace file
6115 https://bugs.webkit.org/show_bug.cgi?id=178402
6116 <rdar://problem/35033432>
6118 Reviewed by Aakash Jain.
6120 Workers can hang if they all write to the same stack trace file when receiving
6121 a SIGTERM. Attach the pid to the stack trace file name so that each worker
6122 writes to a different file.
6124 * Scripts/webkitpy/common/interupt_debugging.py:
6125 (log_stack_trace_on_term.handler): Name stack trace file path/<pid>-filename.
6126 (log_stack_trace_on_cntrl_c.handler): Ditto.
6128 2017-10-17 John Wilander <wilander@apple.com>
6130 Add and remove cookie partition accordingly in intermediary redirect requests
6131 https://bugs.webkit.org/show_bug.cgi?id=178369
6132 <rdar://problem/34467603>
6134 Reviewed by Brent Fulgham.
6136 Adds the function statisticsNotifyObserver().
6138 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6139 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
6140 (WTR::InjectedBundle::statisticsNotifyObserver):
6141 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
6142 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6143 (WTR::TestRunner::statisticsNotifyObserver):
6144 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6146 2017-10-17 Youenn Fablet <youenn@apple.com>
6148 Cache API implementation should be able to compute storage size for WebKit client applications.
6149 https://bugs.webkit.org/show_bug.cgi?id=178350
6151 Reviewed by Chris Dumez.
6153 Adding support for a domCacheSize getter.
6155 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6156 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6157 (WTR::TestRunner::domCacheSize):
6158 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6159 * WebKitTestRunner/TestController.cpp:
6160 (WTR::FetchCacheSizeForOriginCallbackContext::FetchCacheSizeForOriginCallbackContext):
6161 (WTR::fetchCacheSizeForOriginCallback):
6162 (WTR::TestController::domCacheSize):
6163 * WebKitTestRunner/TestController.h:
6164 * WebKitTestRunner/TestInvocation.cpp:
6165 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
6167 2017-10-17 Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
6169 [GStreamer][GTK][WPE] update-webkit-libs-jhbuild fails to detect changes in included moduleset files
6170 https://bugs.webkit.org/show_bug.cgi?id=178206
6172 Reviewed by Michael Catanzaro.
6174 The update-webkit-libs-jhbuild scripts computes MD5 sum of GTK/WPE jhbuild configuration files to check if it
6175 needs to rebuild the dependencies libraries. This patch fixes a bug when main GTK/WPE jhbuild modules
6176 configuration file includes additional files (for example GStreamer module). It parses jhbuild.modules file to
6177 check if additional files are included. If any, it computes MD5 sum for each of these included files.
6179 * Scripts/update-webkit-libs-jhbuild:
6180 (getJhbuildIncludedFilePaths): New function that returns included files in jhbuild.modules
6181 (jhbuildConfigurationCheckFile): New function to check if MD5 sum file changes.
6182 (jhbuildConfigurationChanged): Add MD5 sum check for included files.
6183 (saveMd5File): New function to save MD5 sum of a file.
6184 (saveJhbuildMd5): Add saving included files MD5 sum.
6185 (deleteJhbuildMd5): Delete included files MD5 sum
6186 * gtk/install-dependencies: Add perl-libXML lib that is used to parse jhbuild file.
6187 * wpe/install-dependencies: Ditto.
6189 2017-10-17 Tomas Popela <tpopela@redhat.com>
6191 Undefined WK_API_ENABLED warning when compiling COCOA content on WebKitGTK+
6192 https://bugs.webkit.org/show_bug.cgi?id=178208
6194 Check whether we are on COCOA platform before checking for
6197 Reviewed by Ryosuke Niwa.
6199 * WebKitTestRunner/TestController.cpp:
6200 (WTR::TestController::clearDOMCache):
6202 2017-10-17 Keith Miller <keith_miller@apple.com>
6204 Change WebCore sources to work with unified source builds
6205 https://bugs.webkit.org/show_bug.cgi?id=178229
6207 Rubber stamped by Tim Horton.
6209 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
6211 2017-10-16 Christopher Reid <chris.reid@sony.com>
6213 [Win] Webkit should still be able to build when unable to check if libraries are up to date
6214 https://bugs.webkit.org/show_bug.cgi?id=178367
6216 Adding a option to skip the check to see if windows libraries are up to date.
6217 This option is useful when testing modified libraries. This option also allows
6218 building webkit when GitHub blocks requests to verify the latest library version.
6221 Reviewed by Per Arne Vollan.
6223 * Scripts/build-webkit:
6225 2017-10-12 Matt Rajca <mrajca@apple.com>
6227 Add API support for quirk that lets an arbitrary click allow auto-play.
6228 https://bugs.webkit.org/show_bug.cgi?id=178227
6230 Reviewed by Alex Christensen.
6232 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
6233 (TEST): Added API test.
6235 2017-10-16 Maureen Daum <mdaum@apple.com>
6237 If an origin doesn't have databases in the Databases table we should still remove its information from disk in DatabaseTracker::deleteOrigin()
6238 https://bugs.webkit.org/show_bug.cgi?id=178281
6239 <rdar://problem/34576132>
6241 Reviewed by Brent Fulgham.
6243 Verify that if there is an entry in the Origins table but no entries in the Databases
6244 table that we still remove the directory for the origin, and that we remove the
6245 entry from the Origins table.
6247 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
6248 (TestWebKitAPI::TEST):
6250 2017-10-15 Ryosuke Niwa <rniwa@webkit.org>
6252 Cannot access images included in the content pasted from Microsoft Word
6253 https://bugs.webkit.org/show_bug.cgi?id=124391
6254 <rdar://problem/26862741>
6256 Reviewed by Antti Koivisto.
6258 Added tests for sanitizing HTML contents for copy & paste and drag & drop.
6260 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6261 * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm: Added.
6262 (readHTMLFromPasteboard): Added.
6263 (createWebViewWithCustomPasteboardDataEnabled): Added.
6264 (CopyHTML.Sanitizes): Added.
6266 * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
6267 (createWebViewWithCustomPasteboardDataEnabled): Added to enable more tests on bots.
6269 * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
6270 (writeRTFToPasteboard): Added.
6271 (createWebViewWithCustomPasteboardDataEnabled): Added.
6272 (createHelloWorldString): Added.
6273 (PasteRTF.ExposesHTMLTypeInDataTransfer): Added.
6274 (PasteRTFD.ExposesHTMLTypeInDataTransfer): Added.
6275 (PasteRTFD.ImageElementUsesBlobURLInHTML): Added.
6277 * TestWebKitAPI/Tests/WebKitCocoa/copy-html.html: Added.
6278 * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html: Store the clipboardData contents for
6279 PasteRTF.ExposesHTMLTypeInDataTransfer and PasteRTFD.ExposesHTMLTypeInDataTransfer.
6281 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
6282 (DataInteractionTests.DataTransferSanitizeHTML):
6284 2017-10-16 Youenn Fablet <youenn@apple.com>
6286 Activate Cache API by default
6287 https://bugs.webkit.org/show_bug.cgi?id=178186
6289 Reviewed by Chris Dumez.
6291 Removing explicit activation of cache api.
6293 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
6294 (WTR::InjectedBundle::beginTesting):
6295 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6296 (WTR::TestRunner::setCacheAPIEnabled): Deleted.
6297 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6299 2017-10-16 Ross Kirsling <ross.kirsling@sony.com>
6301 run-webkit-tests help text should mention arguments too
6302 https://bugs.webkit.org/show_bug.cgi?id=178352
6304 Reviewed by Tim Horton.
6306 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
6309 2017-10-16 Maureen Daum <mdaum@apple.com>
6311 If we fail to delete any database file, don't remove its information from the tracker database
6312 <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
6314 Reviewed by Brady Eidson.
6316 Add tests that verify we correctly delete databases and remove their information from
6317 the tracker database, even if the database doesn't exist. Verify that if we fail to
6318 delete a database, we don't remove its information from the tracker database.
6320 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6321 Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
6322 method for creating a temporary directory in the tests.
6323 * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
6324 The existing test was copied to DatabaseTrackerTest.mm.
6325 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
6326 (TestWebKitAPI::TEST):
6327 (TestWebKitAPI::addToDatabasesTable):
6328 (TestWebKitAPI::removeDirectoryAndAllContents):
6329 (TestWebKitAPI::createFileAtPath):
6331 2017-10-16 Ryan Haddad <ryanhaddad@apple.com>
6333 Unreviewed, rolling out r223422.
6335 These tests are for a change that was rolled out in r223420
6339 "If we fail to delete any database file, don't remove its
6340 information from the tracker database"
6341 https://bugs.webkit.org/show_bug.cgi?id=178251
6342 https://trac.webkit.org/changeset/223422
6344 2017-10-16 Maureen Daum <mdaum@apple.com>
6346 If we fail to delete any database file, don't remove its information from the tracker database
6347 <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
6349 Reviewed by Brady Eidson.
6351 Add tests that verify we correctly delete databases and remove their information from
6352 the tracker database, even if the database doesn't exist. Verify that if we fail to
6353 delete a database, we don't remove its information from the tracker database.
6355 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6356 Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
6357 method for creating a temporary directory in the tests.
6358 * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
6359 The existing test was copied to DatabaseTrackerTest.mm.
6360 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
6361 (TestWebKitAPI::TEST):
6362 (TestWebKitAPI::addToDatabasesTable):
6363 (TestWebKitAPI::removeDirectoryAndAllContents):
6364 (TestWebKitAPI::createFileAtPath):
6366 2017-10-16 David Kilzer <ddkilzer@apple.com>
6368 Add RELEASE_ASSERT_WITH_SECURITY_IMPLICATION() macro
6369 <https://webkit.org/b/178269>
6371 Reviewed by Alex Christensen.
6373 * Scripts/webkitpy/style/checkers/cpp.py:
6374 (check_language): Add checker to warn about using
6375 ASSERT_WITH_SECURITY_IMPLICATION().
6376 (CppChecker.categories): Add 'security/assertion' to list of
6378 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
6379 (CppStyleTest.test_debug_security_assertion): Add tests for
6382 2017-10-16 Chris Dumez <cdumez@apple.com>
6384 Clicks on Link with download attribute causes all (other) links to trigger download when clicked
6385 https://bugs.webkit.org/show_bug.cgi?id=178267
6386 <rdar://problem/34985016>
6388 Reviewed by Darin Adler.
6390 Use PassThrough policy in WKTR's InjectedBundle's decidePolicyForNewWindowAction so that the
6391 request is sent to the UIProcess. This gets WKTR's closer to Safari behavior and helps
6392 reproduce the bug. Without this change, I would not be able to write a regression test for
6393 this bug that is very easily reproducible in Safari.
6395 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
6396 (WTR::InjectedBundlePage::decidePolicyForNewWindowAction):
6398 2017-10-16 Emilio Cobos Álvarez <emilio@crisal.io>
6400 Add Emilio Cobos Álvarez to the contributors list.
6401 https://bugs.webkit.org/show_bug.cgi?id=178334
6403 Reviewed by Antti Koivisto.
6405 * Scripts/webkitpy/common/config/contributors.json:
6407 2017-10-07 Maciej Stachowiak <mjs@apple.com>
6409 Improve --help documentation and add --list-plans to show available benchmarks.
6410 https://bugs.webkit.org/show_bug.cgi?id=178059
6412 Reviewed by Ryosuke Niwa.
6414 * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
6415 (BenchmarkRunner.available_plans): New function that returns the list of available plans.
6416 (BenchmarkRunner.plan_directory): New method to centralize knowledge of where the plan files live.
6417 (BenchmarkRunner._find_plan_file): Updated to use BenchmarkRunner.plan_directory
6419 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
6421 (parse_args): Help cleanup: Reordered options to put more common
6422 ones at the top. Fixed wording. Added help for each
6423 option. Explained default for each option that has one.
6425 New option: --list-plans which tells you the available benchmarks.
6427 Code cleanup: Removed use of dest where redundant, made variable
6428 names conforming to Python coding style.
6430 (run_benchmark_plan): Adapted for new variable names.
6431 (list_benchmark_plans): New helper for --list-plans option.
6432 (start): Account for --list-plans. Also use
6433 BechmarkRunner.available_plans and use
6434 BenchmarkRunner.plan_directory instead of duplicating
6435 code/knowledge here.
6437 2017-10-16 Wenson Hsieh <wenson_hsieh@apple.com>
6439 On ToT, event.dataTransfer.getData("text/uri-list") returns an empty string when dragging an image
6440 https://bugs.webkit.org/show_bug.cgi?id=178301
6441 <rdar://problem/34990050>
6443 Reviewed by Darin Adler.
6445 Fixes issues in DumpRenderTree's LocalPasteboard to ensure that drag-drop-href-as-url.html exposes files, and
6446 also adds a new iOS drag and drop API test.
6448 * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
6449 (-[LocalPasteboard addTypes:owner:]):
6450 (-[LocalPasteboard setData:forType:]):
6452 Fixes LocalPasteboard's implementation of changeCount to incremement when the pasteboard owner changes, rather
6453 than every time data is changed. This is consistent with NSPasteboard behavior.
6455 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
6456 (TestWebKitAPI::TEST):
6458 Adds a new API test to verify that an image and HTTP URL written by the platform is correctly web exposed.
6460 2017-10-15 Darin Adler <darin@apple.com>
6462 UTF-8 decoding produces one replacement character per byte; Encoding standard requires one replacement character per illegal sequence instead
6463 https://bugs.webkit.org/show_bug.cgi?id=178207
6465 Reviewed by Sam Weinig.
6467 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added test.
6468 * TestWebKitAPI/Tests/WebCore/TextCodec.cpp: Added.
6469 (TestWebKitAPI::decodeHexTestBytes): Decodes a string so we can write readable tests.
6470 (TestWebKitAPI::escapeNonPrintableASCIICharacters): Encodes a string so we can write readable tests.
6471 (TestWebKitAPI::TEST): Added some UTF-8 tests and UTF-8 invalid sequences tests.
6472 Would be smart to add more tests for other cases, exercising the fast ASCII loop for example, and
6475 2017-10-14 Adrian Perez de Castro <aperez@igalia.com>
6477 [WPE] JHBuild build directory DependenciesWPE/Build is not removed by update-webkit-libs-jhbuild
6478 https://bugs.webkit.org/show_bug.cgi?id=178212
6480 Reviewed by Michael Catanzaro.
6482 * Scripts/update-webkit-libs-jhbuild:
6483 (cleanJhbuild): The WPE JHBuild also uses a separate "Build" subdirectory, so do not skip
6484 cleaning it when "--wpe" is passed to the script.
6486 2017-10-13 Adrian Perez de Castro <aperez@igalia.com>
6488 [WPE] Fontconfig fails build in JHBuild with “error: conflicting types for ‘FcObjectTypeHash’”
6489 https://bugs.webkit.org/show_bug.cgi?id=178283
6491 Reviewed by Žan Doberšek.
6493 * wpe/jhbuild.modules: Flag Fontconfig to be built inside the source directory, otherwise
6494 compilation fails. While at it, pass "--disable-docs" to cut a bit on build time.
6496 2017-10-13 Youenn Fablet <youenn@apple.com>
6498 Implement listing origins for which CacheStorage is storing data
6499 https://bugs.webkit.org/show_bug.cgi?id=178236
6501 Reviewed by Chris Dumez.
6503 Adding hasDOMCache API for checking whether origin is storing data through Cache API.
6505 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6506 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6507 (WTR::TestRunner::hasDOMCache):
6508 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6509 * WebKitTestRunner/TestController.cpp:
6510 (WTR::FetchCacheOriginsCallbackContext::FetchCacheOriginsCallbackContext):
6511 (WTR::fetchCacheOriginsCallback):
6512 (WTR::TestController::hasDOMCache):
6513 * WebKitTestRunner/TestController.h:
6514 * WebKitTestRunner/TestInvocation.cpp:
6515 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
6517 2017-10-13 Alex Christensen <achristensen@webkit.org>
6519 Remove Editor::simplifyMarkup
6520 https://bugs.webkit.org/show_bug.cgi?id=178271
6522 Reviewed by Wenson Hsieh.
6524 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6525 * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Removed.
6527 2017-10-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
6529 [GLib] WebKitNavigationAction should tell whether it is a redirect
6530 https://bugs.webkit.org/show_bug.cgi?id=178178
6532 Test that WebKitNavigationAction properly reports being a redirect.
6534 Reviewed by Carlos Garcia Campos.
6536 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
6537 (testNavigationPolicy): test that loading /redirect leads to a redirect WebKitNavigationAction.
6538 (serverCallback): add a /redirect path to the server, which causes a redirect.
6540 2017-10-13 Chris Dumez <cdumez@apple.com>
6542 Unreviewed, fix webkitpy failure after r223273
6544 * Scripts/webkitpy/w3c/test_importer_unittest.py:
6545 (TestImporterTest.test_harnesslinks_conversion):
6547 2017-10-12 Chris Dumez <cdumez@apple.com>
6549 import-w3c-tests modifies test sources and sometimes causes them to fail
6550 https://bugs.webkit.org/show_bug.cgi?id=178234
6552 Reviewed by Ryosuke Niwa.
6554 Update import-w3c-tests to stop rewriting tests as this is causing some tests
6555 to fail unexpectedly.
6557 * Scripts/webkitpy/w3c/test_importer.py:
6558 (TestImporter.import_tests):
6560 2017-10-12 Youenn Fablet <youenn@apple.com>
6562 Layout Test http/tests/cache-storage/cache-clearing.https.html is failing
6563 https://bugs.webkit.org/show_bug.cgi?id=178200
6565 Reviewed by Chris Dumez.
6567 Making clearDOMCache wait for removal completion to exit.
6568 This removes the risk to interact with the cache while deleting it which will end up be racy in tests.
6570 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6571 (WTR::TestRunner::clearDOMCache):
6572 * WebKitTestRunner/TestController.cpp:
6573 (WTR::ClearDOMCacheCallbackContext::ClearDOMCacheCallbackContext):
6574 (WTR::clearDOMCacheCallback):
6575 (WTR::TestController::clearDOMCache):
6576 * WebKitTestRunner/TestInvocation.cpp:
6577 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
6578 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
6580 2017-10-12 John Wilander <wilander@apple.com>
6582 ResourceLoadObserver::logFrameNavigation() should use redirectResponse.url()
6583 https://bugs.webkit.org/show_bug.cgi?id=175257
6584 <rdar://problem/33359866>
6586 Reviewed by Brent Fulgham.
6588 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6589 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6590 (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
6591 (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
6592 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6593 * WebKitTestRunner/TestController.cpp:
6594 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
6596 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
6598 * WebKitTestRunner/TestController.h:
6599 * WebKitTestRunner/TestInvocation.cpp:
6600 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
6601 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
6602 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
6603 Implemented platform-specific.
6604 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
6605 Implemented platform-specific.
6607 2017-10-12 Andy Estes <aestes@apple.com>
6609 [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
6610 https://bugs.webkit.org/show_bug.cgi?id=178181
6611 <rdar://problem/33660282>
6613 Reviewed by Dan Bernstein.
6615 * WebKitTestRunner/TestController.cpp:
6616 (WTR::TestController::databaseProcessName):
6618 2017-10-12 Myles C. Maxfield <mmaxfield@apple.com>
6620 Emit SPIR-V from WSL compiler (Part 1)
6621 https://bugs.webkit.org/show_bug.cgi?id=177998
6623 Reviewed by Filip Pizlo.
6625 This patch implements the first half of a SPIR-V codegen phase for WSL.
6626 This includes all the operations which aren't actually emitting the contents
6627 of functions themselves. For example, this includes things like representing
6628 WSL types with SPIR-V types, and declaring shaders' inputs and outputs. A
6629 future patch will actually emit the contents of functions.
6631 There are two helper visitors here: SPIRVTypeAnalyzer which generates SPIR-V
6632 types from WSL types, and SPIRVPrimitiveVariableAnalyzer which identifies
6633 input and output variables from a shader (and assigns location values to
6636 This patch is currently pursuing the "logical mode" detailed in
6637 https://bugs.webkit.org/show_bug.cgi?id=176967. In this mode, each pointer and
6638 array reference operation can be statically traced to the variable or array it
6641 This has the interesting property where accessing a pointer inside an array is
6642 forbidden, because the array index may be computed at runtime, so the compiler
6643 can't know at compile time which variable the pointer operation will be
6644 accessing. However, this isn't true for structs; the program must statically
6645 state which struct member it is accessing. Therefore, pointers or array
6646 references must not transitively appear within an array, but they may appear
6647 within a struct. The same logic applies to array references; those get lowered
6648 to just two indexes in SPIR-V (a lower bound and an upper bound).
6650 So, outside of an array, SPIR-V types don't need to include any pointers because
6651 any operation with the pointer doesn't need access to the runtime value of the
6652 pointer. Inside of an array, pointers are forbidden. Therefore, SPIR-V types
6653 will never include any pointers.
6655 This means that, for example, WSL can represent a linked list in logical mode.
6656 However, a WSL program cannot iterate across the list, because that would require
6657 assigning to a pointer. So instead, a program using a linked list could only say
6658 something like "list.ptr->ptr->ptr->value".
6660 * WebGPUShadingLanguageRI/LateChecker.js:
6661 (LateChecker.prototype._checkShaderType):
6662 * WebGPUShadingLanguageRI/SPIR-V.js:
6663 (SPIRV.OperandChecker.prototype._isStar):
6664 (SPIRV.OperandChecker.prototype.nextComparisonType):
6665 (SPIRV.OperandChecker.prototype.finalize):
6666 (SPIRV.OperandChecker):
6667 * WebGPUShadingLanguageRI/SPIRV.html:
6668 * WebGPUShadingLanguageRI/SPIRVCodegen.js: Added.
6670 (emitTypes.doEmitTypes):
6672 (ConstantFinder.prototype.visitGenericLiteralType):
6675 * WebGPUShadingLanguageRI/SPIRVTypeAnalyzer.js: Added.
6676 (SPIRVTypeAnalyzer):
6677 (SPIRVTypeAnalyzer.prototype.get program):
6678 (SPIRVTypeAnalyzer.prototype.get typeMap):
6679 (SPIRVTypeAnalyzer.prototype.get currentId):
6680 (SPIRVTypeAnalyzer.prototype.get stack):
6681 (SPIRVTypeAnalyzer.prototype.visitTypeRef):
6682 (SPIRVTypeAnalyzer.prototype._encounterType):
6683 (SPIRVTypeAnalyzer.prototype.visitNullType):
6684 (SPIRVTypeAnalyzer.prototype.visitGenericLiteralType):
6685 (SPIRVTypeAnalyzer.prototype.visitNativeType):
6686 (SPIRVTypeAnalyzer.prototype.visitEnumType):
6687 (SPIRVTypeAnalyzer.prototype.visitPtrType):
6688 (SPIRVTypeAnalyzer.prototype.visitArrayRefType):
6689 (SPIRVTypeAnalyzer.prototype.visitArrayType):
6690 (SPIRVTypeAnalyzer.prototype.visitStructType):
6691 * WebGPUShadingLanguageRI/SPIRVVariableAnalyzer.js: Added.
6692 (SPIRVPrimitiveVariableAnalyzer):
6693 (SPIRVPrimitiveVariableAnalyzer.prototype.get program):
6694 (SPIRVPrimitiveVariableAnalyzer.prototype.get typeMap):
6695 (SPIRVPrimitiveVariableAnalyzer.prototype.get currentId):
6696 (SPIRVPrimitiveVariableAnalyzer.prototype.get currentLocation):
6697 (SPIRVPrimitiveVariableAnalyzer.prototype.get nameComponents):
6698 (SPIRVPrimitiveVariableAnalyzer.prototype.get result):
6699 (SPIRVPrimitiveVariableAnalyzer.prototype.visitTypeRef):
6700 (SPIRVPrimitiveVariableAnalyzer.prototype.visitNullType):
6701 (SPIRVPrimitiveVariableAnalyzer.prototype.visitGenericLiteralType):
6702 (SPIRVPrimitiveVariableAnalyzer.prototype.visitNativeType):
6703 (SPIRVPrimitiveVariableAnalyzer.prototype.visitEnumType):
6704 (SPIRVPrimitiveVariableAnalyzer.prototype.visitPtrType):
6705 (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayRefType):
6706 (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayType):
6707 (SPIRVPrimitiveVariableAnalyzer.prototype.visitStructType):
6708 * WebGPUShadingLanguageRI/WSL.md:
6709 * WebGPUShadingLanguageRI/index.html:
6711 2017-09-29 Filip Pizlo <fpizlo@apple.com>
6713 Enable gigacage on iOS
6714 https://bugs.webkit.org/show_bug.cgi?id=177586
6716 Reviewed by JF Bastien.
6718 Add a mode to test disabling Gigacage.
6720 * Scripts/run-jsc-stress-tests:
6721 * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
6723 2017-10-11 Sam Weinig <sam@webkit.org>
6725 Remove out-parameter variants of copyToVector
6726 https://bugs.webkit.org/show_bug.cgi?id=178155
6728 Reviewed by Tim Horton.
6730 * DumpRenderTree/JavaScriptThreading.cpp:
6731 (stopJavaScriptThreads):
6733 2017-10-12 Sam Weinig <sam@webkit.org>
6735 It should be possible to iterate just the values (and not the counts) of a HashCountedSet
6736 https://bugs.webkit.org/show_bug.cgi?id=178169
6738 Reviewed by Daniel Bates.
6740 * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp:
6741 (TestWebKitAPI::TEST):
6742 Add test for HashCountedSet's new values() range.
6744 2017-10-11 Frederic Wang <fwang@igalia.com>
6746 run-safari --ios-simulator is no longer working with Xcode 9
6747 https://bugs.webkit.org/show_bug.cgi?id=177595
6749 Reviewed by Daniel Bates.
6751 In Xcode 9, the path of the simulator application is now in a new CoreSimulator subdirectory
6752 of the iphoneOS SDK platform. This patch updates webkitdirs.pm to use the new path in
6753 Xcode 9 or higher so that it is possible to run Safari on the iOS simulator again. It also
6754 does some minor code refactoring to improve code reuse.
6756 * Scripts/configure-xcode-for-ios-development: Move sdkDirectory() and sdkPlatformDirectory()
6758 (sdkDirectory): Deleted.
6759 (sdkPlatformDirectory): Deleted.
6760 * Scripts/webkitdirs.pm: Expose new sdkDirectory() and sdkPlatformDirectory().
6761 (sdkDirectory): Moved from configure-xcode-for-ios-development.
6762 (sdkPlatformDirectory): Ditto.
6763 (XcodeSDKPath): Rely on sdkDirectory() to implement this function.
6764 (iosSimulatorApplicationsPath): In Xcode 9 or higher use the new path. It is calculated
6765 by relying on sdkPlatformDirectory().
6767 2017-10-11 Dewei Zhu <dewei_zhu@apple.com>
6769 run-benchmark script should set '__XPC_DYLD_FRAMEWORK_PATH' while launching local-built Safari on Mac.
6770 https://bugs.webkit.org/show_bug.cgi?id=178199
6772 Reviewed by Saam Barati.
6774 '__XPC_DYLD_FRAMEWORK_PATH' should be set while launching Safari on run-benchmark script.
6775 'force_remove' function should support both file and directory.
6777 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
6778 (OSXSafariDriver.launch_url):
6779 * Scripts/webkitpy/benchmark_runner/utils.py:
6782 2017-10-11 Saam Barati <sbarati@apple.com>
6784 Runtime disable poly proto because it may be a 3-4% Speedometer regression
6785 https://bugs.webkit.org/show_bug.cgi?id=178192
6787 Reviewed by JF Bastien.
6789 * Scripts/run-jsc-stress-tests:
6791 2017-10-11 Youenn Fablet <youenn@apple.com>
6793 Add API to clean CacheStorage data
6794 https://bugs.webkit.org/show_bug.cgi?id=178034
6796 Reviewed by Chris Dumez.
6798 Adding internals API to trigger deleting all or origin-persistent cache storage persistent data.
6800 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6801 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6802 (WTR::TestRunner::clearDOMCache):
6803 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6804 * WebKitTestRunner/TestController.cpp:
6805 (WTR::TestController::clearDOMCache):
6806 * WebKitTestRunner/TestController.h:
6807 * WebKitTestRunner/TestInvocation.cpp:
6808 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
6810 2017-10-11 Chris Dumez <cdumez@apple.com>
6812 [Geolocation] Expose Coordinates.floorLevel
6813 https://bugs.webkit.org/show_bug.cgi?id=178173
6814 <rdar://problem/34918936>
6816 Reviewed by Ryosuke Niwa.
6818 Add test infrastructure for testing Coordinates.floorLevel.
6820 * DumpRenderTree/TestRunner.cpp:
6821 (setMockGeolocationPositionCallback):
6822 * DumpRenderTree/TestRunner.h:
6823 * DumpRenderTree/mac/TestRunnerMac.mm:
6824 (TestRunner::setMockGeolocationPosition):
6825 * DumpRenderTree/win/TestRunnerWin.cpp:
6826 (TestRunner::setMockGeolocationPosition):
6827 * WebKitTestRunner/GeolocationProviderMock.cpp:
6828 (WTR::GeolocationProviderMock::setPosition):
6829 * WebKitTestRunner/GeolocationProviderMock.h:
6830 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6831 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
6832 (WTR::InjectedBundle::setMockGeolocationPosition):
6833 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
6834 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6835 (WTR::TestRunner::setMockGeolocationPosition):
6836 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6837 * WebKitTestRunner/TestController.cpp:
6838 (WTR::TestController::setMockGeolocationPosition):
6839 * WebKitTestRunner/TestController.h:
6840 * WebKitTestRunner/TestInvocation.cpp:
6841 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
6843 2017-10-11 Youenn Fablet <youenn@apple.com>
6845 Bump default cache storage quota to 20MB
6846 https://bugs.webkit.org/show_bug.cgi?id=178132
6848 Reviewed by Alex Christensen.
6850 * WebKitTestRunner/TestController.cpp:
6851 (WTR::TestController::generateContextConfiguration const):
6852 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
6853 (WTR::initializeWebViewConfiguration): Setting quota to 400kb
6855 2017-10-11 Commit Queue <commit-queue@webkit.org>
6857 Unreviewed, rolling out r223113 and r223121.
6858 https://bugs.webkit.org/show_bug.cgi?id=178182
6860 Reintroduced 20% regression on Kraken (Requested by rniwa on
6863 Reverted changesets:
6865 "Enable gigacage on iOS"
6866 https://bugs.webkit.org/show_bug.cgi?id=177586
6867 https://trac.webkit.org/changeset/223113
6869 "Use one virtual allocation for all gigacages and their
6871 https://bugs.webkit.org/show_bug.cgi?id=178050
6872 https://trac.webkit.org/changeset/223121
6874 2017-10-11 Ryosuke Niwa <rniwa@webkit.org>
6876 Sanitize URL in pasteboard for other applications and cross origin content
6877 https://bugs.webkit.org/show_bug.cgi?id=178060
6878 <rdar://problem/34874518>
6880 Reviewed by Wenson Hsieh.
6882 Added API tests for sanitizing URLs copied from web content, and that the original URL is exposed to the web content.
6884 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6885 * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm: Added.
6886 (readURLFromPasteboard): A helper function.
6887 * TestWebKitAPI/Tests/WebKitCocoa/copy-url.html: Added.
6888 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
6889 (DataInteractionTests.DataTransferGetDataWhenDroppingCustomData): Rebaselined. https://www.apple.com is no longer
6890 normalized to https://www.apple.com/ by NSURL / UIPasteboard as expected.
6891 (DataInteractionTests.DataTransferSetDataValidURL): Added.
6892 (DataInteractionTests.DataTransferSetDataUnescapedURL): Added.
6893 (DataInteractionTests.qDataTransferSetDataInvalidURL): Added.
6895 2017-10-11 Chris Dumez <cdumez@apple.com>
6897 Modernize Geolocation code
6898 https://bugs.webkit.org/show_bug.cgi?id=178148
6900 Reviewed by Ryosuke Niwa.
6902 * DumpRenderTree/mac/TestRunnerMac.mm:
6903 (TestRunner::setMockGeolocationPosition):
6905 2017-10-11 Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
6907 [GStreamer] Many media source tests crashing with GStreamer-CRITICAL **: _gst_util_uint64_scale: assertion 'denom != 0' failed in gst_qtdemux_configure_stream()
6908 https://bugs.webkit.org/show_bug.cgi?id=176804
6910 Reviewed by Michael Catanzaro.
6912 Add patch to fix assert in qtdemux.
6914 * gstreamer/jhbuild.modules:
6915 * gstreamer/patches/gst-plugins-good-0009-qtdemux-fix-assert-when-moof-contains-one-sample.patch: Added.
6917 2017-10-11 Tomas Popela <tpopela@redhat.com>
6919 Use https for trac changeset and browser links
6920 https://bugs.webkit.org/show_bug.cgi?id=178167
6922 Reviewed by Alexey Proskuryakov.
6924 Switch the http://trac.webkit.org/changeset and
6925 http://trac.webkit.org/browser links that are printed by webkitpy to
6926 https. Also update the test expectations.
6928 * Scripts/webkitpy/common/checkout/checkout_unittest.py:
6929 * Scripts/webkitpy/common/config/committervalidator_unittest.py:
6930 (CommitterValidatorTest.test_flag_permission_rejection_message):
6931 * Scripts/webkitpy/common/config/urls.py:
6933 (view_revision_url):
6934 * Scripts/webkitpy/common/net/bugzilla/bug_unittest.py:
6935 (BugTest.test_commit_revision):
6936 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
6937 * Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
6938 * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
6940 (MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):
6941 * Scripts/webkitpy/style/checkers/changelog_unittest.py:
6942 (ChangeLogCheckerTest.test_missing_bug_number):
6943 * Scripts/webkitpy/tool/bot/feeders_unittest.py:
6944 * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
6945 * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
6946 (IRCBotTest.test_rollout):
6947 (IRCBotTest.test_revert):
6948 (IRCBotTest.test_multi_rollout):
6949 (IRCBotTest.test_rollout_with_r_in_svn_revision):
6950 (IRCBotTest.test_multi_rollout_with_r_in_svn_revision):
6951 (IRCBotTest.test_rollout_invalidate_reason):
6952 (test_multi_rollout_invalidate_reason):
6953 * Scripts/webkitpy/tool/bot/sheriff_unittest.py:
6954 * Scripts/webkitpy/tool/commands/download_unittest.py:
6955 * Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
6956 * Scripts/webkitpy/tool/commands/queues_unittest.py:
6957 * Scripts/webkitpy/tool/commands/suggestnominations.py:
6958 (SuggestNominations._count_commit):
6959 * Scripts/webkitpy/tool/commands/upload_unittest.py:
6960 * Scripts/webkitpy/tool/servers/data/rebaselineserver/util.js:
6963 * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
6964 (CloseBugForLandDiffTest.test_empty_state):
6965 * Scripts/webkitpy/tool/steps/commit_unittest.py:
6966 (CommitTest._test_check_test_expectations):
6967 * Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:
6968 (UpdateChangeLogsForRevertTest):
6970 2017-10-10 Ryosuke Niwa <rniwa@webkit.org>
6972 Enable custom pasteboard data in DumpRenderTree and WebKitTestRunner
6973 https://bugs.webkit.org/show_bug.cgi?id=178154
6975 Reviewed by Wenson Hsieh.
6977 Fixed the bug that LocalPasteboard would fail to load the promise type if data is set after declaring types
6978 by delaying the call to provideDataForType until when dataForType is called.
6980 Without this fix, fast/events/dropzone-002.html would start failing after enabling custom pasteboard data.
6981 With this fix, fast/events/dropzone-005.html also starts passing.
6983 * DumpRenderTree/mac/DumpRenderTree.mm:
6984 (resetWebPreferencesToConsistentValues):
6985 * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
6986 (-[LocalPasteboard addTypes:owner:]):
6987 (-[LocalPasteboard dataForType:]):
6988 * WebKitTestRunner/TestController.cpp:
6989 (WTR::TestController::resetPreferencesToConsistentValues):
6991 2017-10-10 Joanmarie Diggs <jdiggs@igalia.com>
6993 AX: [ATK] ARIA form role should be mapped to ATK_ROLE_LANDMARK; not ATK_ROLE_FORM
6994 https://bugs.webkit.org/show_bug.cgi?id=178137
6996 Reviewed by Chris Fleizach.
6998 Add handling for ATK_ROLE_LANDMARK resulting from the ARIA form role.
7000 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
7002 2017-10-10 Jonathan Bedard <jbedard@apple.com>
7004 run-webkit-tests: upload test results to multiple servers
7005 https://bugs.webkit.org/show_bug.cgi?id=178012
7006 <rdar://problem/34856501>
7008 Reviewed by Lucas Forschler.
7010 Allowing uploading of results to multiple servers makes developing new results
7011 databases much easier, and does not complicate uploading logic.
7013 * Scripts/webkitpy/layout_tests/controllers/manager.py:
7014 (Manager.upload_results): Iterate through the list of results server hosts and
7015 send results to each one.
7016 * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
7017 (JSONLayoutResultsGenerator.__init__): Accept a list of test results servers.
7018 * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
7019 (JSONResultsGenerator.__init__): Accept a list of test results servers.
7020 (JSONResultsGenerator.get_json): Pick which server to download from by index.
7021 (JSONResultsGenerator.upload_json_files): Upload the JSON to each results server.
7022 (JSONResultsGenerator._get_archived_json_results): Pick which server to download from.
7023 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
7024 (parse_args): Allow multiple test-results-servers and results-server-hosts to be
7025 passed to run-webkit-tests.
7027 2017-10-09 Youenn Fablet <youenn@apple.com>
7029 Vector should be able to easily create from a list of movable only items
7030 https://bugs.webkit.org/show_bug.cgi?id=176432
7032 Reviewed by Darin Adler.
7034 * TestWebKitAPI/Tests/WTF/Vector.cpp:
7035 (TestWebKitAPI::TEST):
7037 2017-09-29 Filip Pizlo <fpizlo@apple.com>
7039 Enable gigacage on iOS
7040 https://bugs.webkit.org/show_bug.cgi?id=177586
7042 Reviewed by JF Bastien.
7044 Add a mode to test disabling Gigacage.
7046 * Scripts/run-jsc-stress-tests:
7047 * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
7049 2017-10-09 Commit Queue <commit-queue@webkit.org>
7051 Unreviewed, rolling out r223015 and r223025.
7052 https://bugs.webkit.org/show_bug.cgi?id=178093
7054 Regressed Kraken on iOS by 20% (Requested by keith_mi_ on
7057 Reverted changesets:
7059 "Enable gigacage on iOS"
7060 https://bugs.webkit.org/show_bug.cgi?id=177586
7061 http://trac.webkit.org/changeset/223015
7063 "Unreviewed, disable Gigacage on ARM64 Linux"
7064 https://bugs.webkit.org/show_bug.cgi?id=177586
7065 http://trac.webkit.org/changeset/223025
7067 2017-10-09 Sam Weinig <sam@webkit.org>
7069 Make HashMap::keys() and HashMap::values() work with WTF::map/WTF::copyToVector
7070 https://bugs.webkit.org/show_bug.cgi?id=178072
7072 Reviewed by Darin Adler.
7074 * TestWebKitAPI/Tests/WTF/Vector.cpp:
7075 (TestWebKitAPI::TEST):
7077 Add tests for HashMap::keys() and HashMap::values() working with copyToVector.
7079 2017-10-05 Frederic Wang <fwang@igalia.com>
7081 Remove WOFF2 from Source/ThirdParty.
7082 https://bugs.webkit.org/show_bug.cgi?id=177862
7084 Reviewed by Michael Catanzaro.
7086 * Scripts/webkitpy/style/checker.py: Remove woff2.
7087 * gtk/jhbuild.modules: Add new jhbuild module for woff2.
7089 2017-10-08 Sam Weinig <sam@webkit.org>
7091 It should be possible to create a ListHashSet with a std::initializer_list.
7092 https://bugs.webkit.org/show_bug.cgi?id=178070
7094 Reviewed by Darin Adler.
7096 * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
7097 (TestWebKitAPI::TEST):
7098 Add a test for using std::initializer_list with ListHashSet.
7100 2017-10-08 Sam Weinig <sam@webkit.org>
7102 There should be a version of copyToVector that returns a Vector, rather than using an out parameter
7103 https://bugs.webkit.org/show_bug.cgi?id=177732
7105 Reviewed by Saam Barati.
7107 * TestWebKitAPI/Tests/WTF/Vector.cpp:
7108 (TestWebKitAPI::TEST):
7109 Add tests for the new copyToVector and copyToVectorOf functions.
7111 2017-10-08 Darin Adler <darin@apple.com>
7113 Fix bugs related to setting reflected floating point DOM attributes
7114 https://bugs.webkit.org/show_bug.cgi?id=178061
7116 Reviewed by Sam Weinig.
7118 * TestWebKitAPI/Tests/WTF/AtomicString.cpp: Added a test of the
7119 AtomicString::number function, based on the test cases we already
7120 had for String::numberToStringECMAScript, and with some additional
7121 cases with powers of 10 that check handling of trailng zeroes.
7123 * TestWebKitAPI/Tests/WTF/WTFString.cpp: Added test cases to the
7124 existing tests of the String::numberToStringECMAScript function
7125 as above. Also added tests for String::number and for
7126 String::numberToStringFixedWidth. Also changed the tests to all use
7127 EXPECT instead of ASSERT macros since these are all non-fatal.
7129 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
7130 (WTR::dumpFrameScrollPosition): Use StringBuilder::appendECMAScriptNumber
7131 instead of String::number.
7133 2017-10-08 Dean Jackson <dino@apple.com>
7135 Make sort-Xcode-project file handle UnifiedSources
7136 https://bugs.webkit.org/show_bug.cgi?id=178042
7138 Reviewed by Sam Weinig.
7140 Sort the UnifiedSource(\d+) files by number rather
7141 than alphabetically.
7143 * Scripts/sort-Xcode-project-file:
7144 (sortChildrenByFileName):
7145 (sortFilesByFileName):
7147 2017-09-29 Filip Pizlo <fpizlo@apple.com>
7149 Enable gigacage on iOS
7150 https://bugs.webkit.org/show_bug.cgi?id=177586
7152 Reviewed by JF Bastien.
7154 Add a mode to test disabling Gigacage.
7156 * Scripts/run-jsc-stress-tests:
7157 * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
7159 2017-10-06 Aishwarya Nirmal <anirmal@apple.com>
7161 [iOS] Respect the "caret-color" CSS property when editing
7162 https://bugs.webkit.org/show_bug.cgi?id=177489
7163 <rdar://problem/34600419>
7165 Reviewed by Tim Horton.
7167 Adds test for iOS caret color support.
7169 * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
7170 (TestWebKitAPI::TEST):
7171 * TestWebKitAPI/ios/UIKitSPI.h:
7173 2017-10-06 Alex Christensen <achristensen@webkit.org>
7175 Add more infrastructure to apply custom header fields to same-origin requests
7176 https://bugs.webkit.org/show_bug.cgi?id=177629
7178 Reviewed by Ryosuke Niwa.
7180 * TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp:
7181 (canonicalizeHTTPHeader):
7182 (shouldRemainUnchanged):
7185 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
7188 (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
7189 (-[CustomHeaderFieldsDelegate webView:startURLSchemeTask:]):
7190 (-[CustomHeaderFieldsDelegate webView:stopURLSchemeTask:]):
7192 Test main resource requests, subresource requests, and cross-origin requests.
7194 2017-10-06 Wenson Hsieh <wenson_hsieh@apple.com>
7196 [iOS] Tweak support for classifying form controls (followup to r222487)
7197 https://bugs.webkit.org/show_bug.cgi?id=177917
7198 <rdar://problem/34820122>
7200 Reviewed by Dean Jackson.
7202 Minor cleanup around autofill API tests added in r222487. Additionally, augments some of these API tests to
7203 verify that after blurring the focused element, the content view no longer accepts autofill credentials (see
7204 WebKit ChangeLog for more details). Also augments tests to verify that the URL in the autofill context matches
7207 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
7209 Remove the USE(APPLE_INTERNAL_SDK) guard for these API tests.
7211 (newUIKeyboardLoginCredentialsSuggestion):
7213 Add a stub implementation of UIKeyboardLoginCredentialsSuggestion. This allows
7214 [UIKeyboardLoginCredentialsSuggestion new] to return a nonnull object, which allows these API tests to verify
7215 that the credential filling codepath works as intended without any additional UIKit changes. Currently, tests
7216 for the value of username and password fields are passing even though the fields are not being populated because
7217 the expected string values are null, and the observed value is an empty string. We instead check the literal
7218 string values here instead of credentialSuggestion's properties, so that tests verifying the behavior of
7219 -insertTextSuggestion: will require username and password inputs to be populated.
7221 (-[TestInputDelegate _webView:focusShouldStartInputSession:]):
7222 (-[AutofillTestView initWithFrame:]):
7223 (-[AutofillTestView _autofillInputView]):
7224 (-[AutofillTestView textInputHasAutofillContext]):
7225 (TestWebKitAPI::TEST):
7227 Add an additional API test to verify that programmatic focus without user interaction (and also without testing
7228 overrides) does not activate autofill.
7230 (createUIKeyboardLoginCredentialsSuggestion): Deleted.
7231 (-[WKWebView _privateTextInput]): Deleted.
7232 * TestWebKitAPI/ios/UIKitSPI.h:
7234 Minor gardening to remove iOS version >= 11 guards that are now unnecessary. Additionally, add some more private
7235 header imports (with corresponding interface definitions for building and running with the public SDK).
7237 2017-10-06 Antti Koivisto <antti@apple.com>
7239 Minor WeakPtr improvements
7240 https://bugs.webkit.org/show_bug.cgi?id=177958
7242 Reviewed by Sam Weinig.
7244 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
7245 (TestWebKitAPI::TEST):
7246 (TestWebKitAPI::Base::createWeakPtr): Deleted.
7248 2017-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
7250 Unreviewed. Fix parsing of GTK unit tests output in bot configuration.
7252 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
7253 (RunGtkAPITests.commandComplete): Remove trailing ':' from the regular expression.
7255 2017-10-06 Charles Turner <cturner@igalia.com>
7257 Disable bmalloc when running Valgrind
7258 https://bugs.webkit.org/show_bug.cgi?id=177923
7260 Reviewed by Carlos Alberto Lopez Perez.
7262 * Scripts/webkitpy/port/gtk.py:
7263 (GtkPort.setup_environ_for_server):
7265 2017-10-06 Zan Dobersek <zdobersek@igalia.com>
7267 Implement TestController::platformContext() for WPE, returning the
7268 m_context pointer as the GTK+ port does. This fixes the crashes on
7271 Rubber-stamped by Carlos Garcia Campos.
7273 * WebKitTestRunner/wpe/TestControllerWPE.cpp:
7274 (WTR::TestController::platformContext):
7276 2017-10-05 Carlos Garcia Campos <cgarcia@igalia.com>
7278 [GTK][WPE] Add API to configure and enable resource load statistics
7279 https://bugs.webkit.org/show_bug.cgi?id=177943
7281 Reviewed by Michael Catanzaro.
7283 Add a command line option to enable intelligent tracking prevention to MiniBrowser and tests cases to check the
7286 * MiniBrowser/gtk/main.c:
7288 * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
7290 (testWebsiteDataConfiguration):
7291 (testWebsiteDataEphemeral):
7292 (testWebsiteDataResourceLoadStats):
7294 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
7296 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
7297 (directoryChangedCallback):
7298 (WebViewTest::waitUntilFileExists):
7299 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
7301 2017-10-05 Carlos Garcia Campos <cgarcia@igalia.com>
7303 [GTK][WPE] All resource load statistics tests added in r212183 crash in GTK bots, timeout in GTK and WPE bots since r219049
7304 https://bugs.webkit.org/show_bug.cgi?id=168171
7306 Reviewed by Chris Dumez.
7308 Implement all resource load statistics functions in TestController using the C API. Also enable the FileMonitor
7309 unit test. This test requires a platform implementation of Util::run(), so I've added UtilitiesGLib.cpp with an
7310 iplementation common to glib based ports using WTF RunLoop abstraction.
7312 * TestWebKitAPI/PlatformGTK.cmake:
7313 * TestWebKitAPI/PlatformWPE.cmake:
7314 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
7315 * TestWebKitAPI/glib/UtilitiesGLib.cpp: Copied from Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h.
7316 (TestWebKitAPI::Util::run):
7317 (TestWebKitAPI::Util::spinRunLoop):
7318 (TestWebKitAPI::Util::sleep):
7319 * TestWebKitAPI/gtk/PlatformUtilitiesGtk.cpp:
7320 * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp:
7321 * WebKitTestRunner/TestController.cpp:
7322 (WTR::TestController::platformAdjustContext):
7323 (WTR::TestController::setStatisticsLastSeen):
7324 (WTR::TestController::setStatisticsPrevalentResource):
7325 (WTR::ResourceStatisticsCallbackContext::ResourceStatisticsCallbackContext):
7326 (WTR::resourceStatisticsCallback):
7327 (WTR::TestController::isStatisticsPrevalentResource):
7328 (WTR::TestController::setStatisticsHasHadUserInteraction):
7329 (WTR::TestController::isStatisticsHasHadUserInteraction):
7330 (WTR::TestController::setStatisticsGrandfathered):
7331 (WTR::TestController::isStatisticsGrandfathered):
7332 (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
7333 (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
7334 (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
7335 (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
7336 (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree):
7337 (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
7338 (WTR::TestController::statisticsUpdateCookiePartitioning):
7339 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
7340 (WTR::TestController::statisticsSubmitTelemetry):
7341 (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
7342 (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
7343 (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
7344 (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
7345 (WTR::TestController::setStatisticsGrandfatheringTime):
7346 (WTR::TestController::setStatisticsMaxStatisticsEntries):
7347 (WTR::TestController::setStatisticsPruneEntriesDownTo):
7348 (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
7349 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
7350 (WTR::TestController::statisticsClearThroughWebsiteDataRemovalCallback):
7351 (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
7352 (WTR::TestController::statisticsResetToConsistentState):
7353 * WebKitTestRunner/TestController.h:
7355 2017-10-05 Jer Noble <jer.noble@apple.com>
7357 [Cocoa] Enable ENABLE_ENCRYPTED_MEDIA build-time setting
7358 https://bugs.webkit.org/show_bug.cgi?id=177261
7360 Reviewed by Eric Carlson.
7362 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
7364 2017-10-05 Alex Christensen <achristensen@webkit.org>
7366 Add ObjC equivalent of WKPageNavigationClient.didChangeBackForwardList
7367 https://bugs.webkit.org/show_bug.cgi?id=177966
7368 <rdar://problem/22387135>
7370 Reviewed by Tim Horton.
7372 * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
7373 (-[ListItemDelegate _webView:backForwardListItemAdded:removed:]):
7374 (-[ListItemDelegate webView:didFinishNavigation:]):
7377 2017-10-04 Megan Gardner <megan_gardner@apple.com>
7379 check-webkit-style erroneously requires a space between the carrot and brace in obj-c blocks.
7380 https://bugs.webkit.org/show_bug.cgi?id=177897
7382 Reviewed by Dan Bernstein and Jonathan Bedard.
7384 Remove the check for a space between ^ and {,
7385 as this is valid and expected Obj-C. Now check to make sure there is
7386 no space at all between ^ and {, and also that there is a space between
7387 the end of an argument list and the {.
7389 * Scripts/webkitpy/style/checkers/cpp.py:
7390 (regex_for_lambdas_and_blocks):
7392 2017-10-05 Carlos Garcia Campos <cgarcia@igalia.com>
7394 Unreviewed. Run WebKit2 C API tests in GTK+ bots again after the last WebKit2 -> WebKit rename.
7396 * Scripts/run-gtk-tests:
7398 (TestRunner._run_test):
7400 2017-10-05 Darin Adler <darin@apple.com>
7402 Remove additional WebKitSystemInterface remnants
7403 https://bugs.webkit.org/show_bug.cgi?id=177948
7405 Reviewed by Andy Estes.
7407 * DumpRenderTree/PlatformMac.cmake: Removed code to link the
7408 WebKitSystemInterface library. Left in code that points to
7409 the WebKitLibraries directory, but maybe that can be removed by
7410 someone who is more certain it's no longer needed.
7412 * Scripts/copy-webkitlibraries-to-product-directory: Removed code
7413 to copy and delete WebKitSystemInterface libraries and headers.
7415 * WebKitTestRunner/PlatformMac.cmake: Removed code to link the
7416 WebKitSystemInterface library. Left in code that points to
7417 the WebKitLibraries directory, but maybe that can be removed by
7418 someone who is more certain it's no longer needed.
7420 2017-10-05 Saam Barati <sbarati@apple.com>
7422 Unreviewed. Try to make debug type profiler tests stop timing out.
7424 * Scripts/run-jsc-stress-tests:
7426 2017-10-03 Frederic Wang <fwang@igalia.com>
7428 Remove Brotli from Source/ThirdParty
7429 https://bugs.webkit.org/show_bug.cgi?id=177804
7431 Reviewed by Michael Catanzaro.
7433 * gtk/jhbuild.modules: Build brotli 1.0.1 from the official github repository.
7434 * Scripts/webkitpy/style/checker.py: Remove brotli.
7436 2017-10-04 Alex Christensen <achristensen@webkit.org>
7438 Stop linking with WebKitSystemInterface
7439 https://bugs.webkit.org/show_bug.cgi?id=177915
7441 Reviewed by Antti Koivisto.
7443 * DumpRenderTree/mac/Configurations/Base.xcconfig:
7444 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
7445 * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
7446 * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
7447 * WebKitTestRunner/Configurations/Base.xcconfig:
7448 * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
7449 * WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
7450 * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig:
7451 * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
7453 2017-10-04 Alex Christensen <achristensen@webkit.org>
7455 Remove unnecessary includes of WebKitSystemInterface on Cocoa platforms
7456 https://bugs.webkit.org/show_bug.cgi?id=177912
7458 Reviewed by Saam Barati.
7460 * DumpRenderTree/mac/DumpRenderTree.mm:
7462 2017-10-04 Megan Gardner <megan_gardner@apple.com>
7464 Break out new touch debugging code into seperate file
7465 https://bugs.webkit.org/show_bug.cgi?id=177796
7467 Reviewed by Simon Fraser.
7469 Encapsulate the new debug touch code into it's own file.
7470 This allows for cleaner code and a better way to show the touches
7471 in a completely separate window, which should also be in screen
7472 coordinates, and not subject to any transforms that get put on the
7475 * TestRunnerShared/spi/UIKitTestSPI.h:
7476 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
7477 * WebKitTestRunner/ios/HIDDebugTouchWindow.h: Added.
7478 * WebKitTestRunner/ios/HIDDebugTouchWindow.mm: Added.
7479 (+[HIDDebugTouchWindow sharedHIDDebugTouchWindow]):
7480 (-[HIDDebugTouchWindow init]):
7481 (-[HIDDebugTouchWindow dealloc]):
7482 (-[HIDDebugTouchWindow updateDebugIndicatorForTouch:withPointInWindowCoordinates:isTouching:]):
7483 (-[HIDDebugTouchWindow initDebugViewsIfNeeded]):
7484 * WebKitTestRunner/ios/HIDEventGenerator.h:
7485 * WebKitTestRunner/ios/HIDEventGenerator.mm:
7486 (-[HIDEventGenerator init]):
7487 (-[HIDEventGenerator _createIOHIDEventWithInfo:]):
7488 (-[HIDEventGenerator _createIOHIDEventType:]):
7489 (-[HIDEventGenerator _updateTouchPoints:count:]):
7490 (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
7491 (-[HIDEventGenerator touchDown:touchCount:]):
7492 (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
7493 (-[HIDEventGenerator liftUp:touchCount:]):
7494 (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
7495 (-[HIDEventGenerator initDebugViewsIfNeeded]): Deleted.
7496 (-[HIDEventGenerator updateDebugIndicatorForTouch:withPoint:isTouching:]): Deleted.
7497 * WebKitTestRunner/ios/TestControllerIOS.mm:
7498 (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
7500 2017-10-04 JF Bastien <jfbastien@apple.com>
7502 WTF: Update std::expected to match current proposal
7503 https://bugs.webkit.org/show_bug.cgi?id=177881
7505 Reviewed by Mark Lam.
7507 The proposal is likely to be in C++20 and I've been asked to help co-champion
7508 it. I'm therefore updating our implementation to more closely match the current
7509 proposal, and to make sure it'll work for us if standardized.
7511 - Rename UnexpectedType to Unexpected to match the proposal.
7512 - Remove relational operators, only equality / inequality remains.
7513 - Fix minor type signatures.
7514 - Add UnexpectedType typedef.
7515 - Uncomment rebind implementation.
7516 - Add in-place construction tag, as well as explicit error construction tag.
7517 - Add template unexpected constructor.
7518 - Note that make_unexpected isn't in the proposal anymore, but we keep it because we don't have C++17 deduction guides.
7519 - Remove hashing, which isn't in the proposal anymore.
7521 * TestWebKitAPI/Tests/WTF/Expected.cpp:
7523 (TestWebKitAPI::TEST):
7525 2017-10-04 Lucas Forschler <lforschler@apple.com>
7527 https://bugs.webkit.org/show_bug.cgi?id=177888
7528 WebKitArchiveSupport - add API Gateway to source control
7529 This is a swagger configuration export via AWS API Gateway console.
7531 Rubber-stamped by Alexey Proskuryakov.
7533 * WebKitArchiveSupport/AWS-APIGateway: Added.
7534 * WebKitArchiveSupport/AWS-APIGateway/stage-v2.json: Added.
7536 2017-10-04 Mark Lam <mark.lam@apple.com>
7538 Add support for using Probe DFG OSR Exit behind a runtime flag.
7539 https://bugs.webkit.org/show_bug.cgi?id=177844
7540 <rdar://problem/34801425>
7542 Reviewed by Saam Barati.
7544 Enable --useProbeOSrExit=true for dfg-eager and ftl-no-cjit-validate-sampling-profiler
7545 test configurations.
7547 * Scripts/run-jsc-stress-tests:
7549 2017-10-04 Jonathan Bedard <jbedard@apple.com>
7551 webkitpy.tool.steps.steps_unittest.StepsTest.test_runtests_api is flakey
7552 https://bugs.webkit.org/show_bug.cgi?id=177751
7553 <rdar://problem/34769470>
7555 Reviewed by Daniel Bates.
7557 Port._build_path() calls Tools/Scripts/webkit-build-directory and caches this
7558 result. When capturing output from the MockExecutive, the first invocation of
7559 Port._build_path() will log the running of Tools/Scripts/webkit-build-directory
7560 but subsequent invocations will not.
7562 * Scripts/webkitpy/tool/steps/steps_unittest.py:
7564 (StepsTest.setUp): Cache the build path before running tests.
7566 2017-10-04 Carlos Alberto Lopez Perez <clopez@igalia.com>
7568 [JHBuild][GTK][WKE] Circular dependency between harfbuzz and freetype6
7569 https://bugs.webkit.org/show_bug.cgi?id=177865
7571 Reviewed by Michael Catanzaro.
7573 Build freetype6 without harfbuzz support.
7574 This seems to be what distros like Fedora, Debian or OpenEmbedded do.
7575 Also explicitly enable support for freetype and fontconfig on harfbuzz.
7577 * gtk/jhbuild.modules: Enable also support for icu.
7578 * wpe/jhbuild.modules:
7580 2017-10-04 Yusuke Suzuki <utatane.tea@gmail.com>
7582 [Test262] Update Test262 to Oct 4 version
7583 https://bugs.webkit.org/show_bug.cgi?id=177859
7585 Reviewed by Sam Weinig.
7587 * Scripts/import-test262-tests:
7589 2017-10-04 Ryosuke Niwa <rniwa@webkit.org>
7591 Use blob URL when pasting RTFD instead of overriding DocumentLoader
7592 https://bugs.webkit.org/show_bug.cgi?id=177801
7593 <rdar://problem/34542270>
7595 Reviewed by Wenson Hsieh.
7597 Added a regression test for an assertion failure when pasting an empty RTFD as well as a test for pasting
7598 RTFD with an image, which should result in an image element with a blob URL.
7600 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7601 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
7602 * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
7603 * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html:
7605 2017-10-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
7607 [GLib] Let WebCore know of low power situations
7608 https://bugs.webkit.org/show_bug.cgi?id=177810
7610 Reviewed by Carlos Garcia Campos.
7612 * gtk/install-dependencies: add upower-glib dev packages for Debian, Arch and Fedora.
7614 2017-10-03 Saam Barati <sbarati@apple.com>
7616 Implement polymorphic prototypes
7617 https://bugs.webkit.org/show_bug.cgi?id=176391
7619 Reviewed by Filip Pizlo.
7621 * Scripts/run-jsc-stress-tests:
7623 2017-10-03 Myles C. Maxfield <mmaxfield@apple.com>
7625 Create a SPIR-V assembler
7626 https://bugs.webkit.org/show_bug.cgi?id=177726
7628 Reviewed by Filip Pizlo.
7630 Khronos has released a json file containing every SPIR-V opcode and operand at
7631 https://github.com/KhronosGroup/SPIRV-Headers/blob/master/include/spirv/1.2/spirv.core.grammar.json
7632 This patch creates a function which loads this file (via the fetch API), parses it, and creates
7633 an object which holds two things:
7634 - For each opcode, a class which accepts the appropriate operands
7635 - For each enum type, an object which holds each enum value
7636 The constructor for each opcode is smart enough to do some basic type-checking of the argument,
7637 according to the types listed in Khronos's json file.
7639 This patch also includes an example .html file which outputs a dummy SPIR-V program,
7640 which happens to be compatible with the SPIR-V demo at
7641 https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/blob/master/demos/cube.cpp
7642 If you modify this demo to use the generated SPIR-V program, you can see the result in
7645 This patch also commits a copy of Khronos's json file mentioned above. This isn't the first
7646 Khronos file we've committed into our repository with this license, so there shouldn't be any
7649 * WebGPUShadingLanguageRI/SPIR-V.js: Added.
7652 (SPIRVAssembler.prototype.append):
7653 (SPIRVAssembler.prototype.get size):
7654 (SPIRVAssembler.prototype.get storage):
7655 (SPIRVAssembler.prototype.get result):
7656 * WebGPUShadingLanguageRI/SPIRV.html: Added.
7657 * WebGPUShadingLanguageRI/spirv.core.grammar.json: Added.
7659 2017-10-03 Chris Dumez <cdumez@apple.com>
7661 SharedStringHashStore should support removing hashes
7662 https://bugs.webkit.org/show_bug.cgi?id=177770
7664 Reviewed by Alex Christensen.
7666 Add API test coverage.
7668 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7669 * TestWebKitAPI/Tests/WebKitCocoa/VisitedLinkStore.mm: Added.
7670 (TestWebKitAPI::TEST):
7672 2017-10-03 Dewei Zhu <dewei_zhu@apple.com>
7674 Fix missing import for BenchmarkRunner.
7675 https://bugs.webkit.org/show_bug.cgi?id=177842
7677 Reviewed by Ryosuke Niwa.
7679 'show_results' requires BenchmarkRunner.
7681 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
7683 2017-10-03 Olivier Blin <olivier.blin@softathome.com>
7685 [WPE] Bump deps to add support for xdg-shell-unstable-v6 protocol
7686 https://bugs.webkit.org/show_bug.cgi?id=177820
7688 Reviewed by Žan Doberšek.
7690 gnome-shell does not advertize the xdg-shell protocol anymore, but xdg-shell-unstable-v6 instead.
7691 Support has been added in WPEBackend-mesa, we need to update the requirements.
7692 wayland-1.10 is needed for wl_proxy_get_version(), used in the generated headers.
7694 * wpe/jhbuild.modules:
7696 2017-10-03 Alex Christensen <achristensen@webkit.org>
7698 Add ObjC SPI equivalent to WKPageLoaderClient.willGoToBackForwardListItem
7699 https://bugs.webkit.org/show_bug.cgi?id=177825
7700 <rdar://problem/22387505>
7702 Reviewed by Tim Horton.
7704 * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
7705 (-[BackForwardDelegate _webView:willGoToBackForwardListItem:inPageCache:]):
7706 (-[BackForwardDelegate webView:didFinishNavigation:]):
7709 2017-10-03 Antti Koivisto <antti@apple.com>
7711 Allow assigning WeakPtr<Derived> to WeakPtr<Base>
7712 https://bugs.webkit.org/show_bug.cgi?id=177817
7714 Reviewed by Geoff Garen.
7716 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
7717 (TestWebKitAPI::Base::weakPtrFactory):
7718 (TestWebKitAPI::TEST):
7720 2017-10-03 Youenn Fablet <youenn@apple.com>
7722 Remove no longer needed WebRTC build infrastructure
7723 https://bugs.webkit.org/show_bug.cgi?id=177756
7725 Reviewed by Alejandro G. Castro.
7727 * Scripts/generate-libwebrtc-cmake: Removed.
7728 * Scripts/webkitpy/libwebrtc/__init__.py: Removed.
7729 * Scripts/webkitpy/libwebrtc/generate_cmake.py: Removed.
7731 2017-10-03 Joanmarie Diggs <jdiggs@igalia.com>
7733 AX: [ATK] ARIA drag-and-drop attribute values should be exposed via AtkObject attributes
7734 https://bugs.webkit.org/show_bug.cgi?id=177763
7736 Reviewed by Chris Fleizach.
7738 Implement ariaIsGrabbed() and ariaDropEffects() for ATK.
7740 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
7741 (WTR::AccessibilityUIElement::ariaIsGrabbed const):
7742 (WTR::AccessibilityUIElement::ariaDropEffects const):
7744 2017-10-02 Myles C. Maxfield <mmaxfield@apple.com>
7746 Make WSL demo compatible with Microsoft Edge
7747 https://bugs.webkit.org/show_bug.cgi?id=177643
7749 Reviewed by Saam Barati.
7751 This patch does two things. The first is it migrates a loop over ParentNode.children to a legacy style loop
7752 because Microsoft Edge throws an exception when trying to use a for...of loop with it. This patch also hides
7753 the compilation behind a setTimeout(0) so there is some indication that something is happening during a
7757 * Tools/WebGPUShadingLanguageRI/index.html:
7759 2017-10-02 Joanmarie Diggs <jdiggs@igalia.com>
7761 AX: [ATK] The value of aria-level is not exposed on non-heading roles
7762 https://bugs.webkit.org/show_bug.cgi?id=177775
7764 Reviewed by Chris Fleizach.
7766 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
7767 (WTR::AccessibilityUIElement::hierarchicalLevel const):
7769 2017-10-02 Geoffrey Garen <ggaren@apple.com>
7771 WeakPtr should have a move constructor
7772 https://bugs.webkit.org/show_bug.cgi?id=177789
7774 Reviewed by Chris Dumez.
7776 Chris made me write an API test. It wasn't that painful.
7778 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
7779 (TestWebKitAPI::TEST):
7781 2017-10-02 Filip Pizlo <fpizlo@apple.com>
7784 https://bugs.webkit.org/show_bug.cgi?id=177705
7786 Rubber stamped by Keith Miller.
7788 When I first wrote the prototype, I thought it would be cool to use ^ for pointers. Nobody agrees. I've
7789 gotten so much feedback to use *. This changes pointers to use *.
7791 * WebGPUShadingLanguageRI/DereferenceExpression.js:
7792 (DereferenceExpression.prototype.toString):
7793 (DereferenceExpression):
7794 * WebGPUShadingLanguageRI/Intrinsics.js:
7796 * WebGPUShadingLanguageRI/Parse.js:
7798 (parsePossiblePrefix):
7799 * WebGPUShadingLanguageRI/PtrType.js:
7800 (PtrType.prototype.toString):
7802 * WebGPUShadingLanguageRI/StandardLibrary.js:
7803 * WebGPUShadingLanguageRI/Test.js:
7804 (tests.simpleDereference):
7805 (tests.dereferenceStore):
7806 (tests.simpleMakePtr):
7810 (tests.dereferenceDefaultNull):
7811 (tests.defaultInitializedNull):
7812 (tests.passNullToPtrMonomorphic):
7813 (tests.passNullToPtrPolymorphic):
7814 (tests.passNullAndNotNull):
7815 (tests.passNullAndNotNullFullPoly):
7816 (tests.passNullAndNotNullFullPolyReverse):
7817 (tests.chainGeneric):
7818 (tests.chainStruct):
7819 (tests.chainStructNewlyValid):
7820 (tests.chainStructDevice):
7821 (tests.paramChainStructDevice):
7822 (tests.simpleProtocolExtends):
7823 (tests.protocolExtendsTwo):
7824 (tests.overrideSubscriptStruct):
7825 (tests.overrideSubscriptStructAndDoStores):
7826 (tests.overrideSubscriptStructAndUsePointers):
7827 (tests.overrideSubscriptStructAndUsePointersIncorrectly):
7828 (tests.makeArrayRefFromPointer):
7829 (tests.nonArrayRefArrayLengthFail):
7830 (tests.constexprIsNotLValuePtr):
7831 (tests.genericAccessors):
7832 (tests.nestedSubscriptLValueEmulationSimple):
7833 (tests.nestedSubscriptLValueEmulationGeneric):
7834 (tests.shaderTypes):
7835 (tests.enumPtrBase):
7836 (tests.mutuallyRecursiveStructWithPointersBroken):
7837 (tests.mutuallyRecursiveStructWithPointers):
7839 (tests.pointerToPointer):
7840 (tests.pointerGetter):
7841 (tests.operatorCastWithTypeVariableInferredFromReturnType):
7842 (tests.loneSetterPointer):
7843 (tests.anderWithNothingWrong):
7844 (tests.anderWithWrongNumberOfArguments):
7845 (tests.anderDoesntReturnPointer):
7846 (tests.anderDoesntTakeReference):
7847 (tests.anderWithArrayRef):
7848 (tests.pointerIndexGetter):
7849 (tests.loneIndexSetterPointer):
7850 (tests.indexAnderWithNothingWrong):
7851 (tests.indexAnderWithWrongNumberOfArguments):
7852 (tests.indexAnderDoesntReturnPointer):
7853 (tests.indexAnderDoesntTakeReference):
7854 (tests.indexAnderWithArrayRef):
7855 (tests.devicePtrPtr):
7856 (tests.threadgroupPtrPtr):
7857 (tests.constantPtrPtr):
7858 (tests.pointerIndexGetterInProtocol):
7859 (tests.loneIndexSetterPointerInProtocol):
7860 (tests.indexAnderWithNothingWrongInProtocol):
7861 (tests.indexAnderWithWrongNumberOfArgumentsInProtocol):
7862 (tests.indexAnderDoesntReturnPointerInProtocol):
7863 (tests.indexAnderDoesntTakeReferenceInProtocol):
7864 (tests.indexAnderWithArrayRefInProtocol):
7865 (tests.andReturnedArrayRef):
7867 2017-10-02 Filip Pizlo <fpizlo@apple.com>
7869 WSL should be fine with &foo()[i] if foo() returns a []
7870 https://bugs.webkit.org/show_bug.cgi?id=177704
7872 Reviewed by Saam Barati.
7874 Previously, we'd determine if a property access expression (base.field or base[index]) was an lvalue by
7875 asking if its base was an lvalue. This is right in all cases except if the base is of type []. Then, the
7876 property access expression is an lvalue so long as there is a setter or ander.
7878 This fixes the issue and adds a test.
7880 Also, this makes error messages in the case that something is not an lvalue a lot better. If something
7881 is not an lvalue because we could not find anders or setters, then we will tell you why we could not
7884 * WebGPUShadingLanguageRI/Checker.js:
7885 (Checker.prototype.visitAssignment):
7886 (Checker.prototype.visitReadModifyWriteExpression):
7887 (Checker.prototype.visitMakePtrExpression):
7888 (Checker.prototype._finishVisitingPropertyAccess):
7889 * WebGPUShadingLanguageRI/DotExpression.js:
7890 (DotExpression.prototype.get fieldName):
7891 (DotExpression.prototype.get isLValue): Deleted.
7892 (DotExpression.prototype.get addressSpace): Deleted.
7893 * WebGPUShadingLanguageRI/IndexExpression.js:
7894 (IndexExpression.prototype.get index):
7895 (IndexExpression.prototype.get isLValue): Deleted.
7896 (IndexExpression.prototype.get addressSpace): Deleted.
7897 * WebGPUShadingLanguageRI/PropertyAccessExpression.js:
7898 (PropertyAccessExpression):
7899 (PropertyAccessExpression.prototype.get isLValue):
7900 (PropertyAccessExpression.prototype.set isLValue):
7901 * WebGPUShadingLanguageRI/PropertyResolver.js:
7902 (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder.prototype.visitMakeArrayRefExpression):
7903 (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder):
7904 (PropertyResolver.prototype._visitRValuesWithinLValue):
7905 * WebGPUShadingLanguageRI/Test.js:
7906 (tests.storeNullArrayRef):
7907 (tests.andReturnedArrayRef):
7909 2017-10-02 Wenson Hsieh <wenson_hsieh@apple.com>
7911 Guard iOS webkitGetAsEntry API tests on older iOS versions
7913 Unreviewed test gardening. After r222688, these tests require custom pasteboard data to be enabled by default,
7914 so don't run them against shipping iOS.
7916 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
7918 2017-10-02 Carlos Garcia Campos <cgarcia@igalia.com>
7920 [WPE][GTK] Crash in webkit_web_resource_get_data_finish()
7921 https://bugs.webkit.org/show_bug.cgi?id=177107
7923 Reviewed by Michael Catanzaro.
7925 Add a test case to check we handle errors when webkit_web_resource_get_data() fails.
7927 * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
7928 (webViewloadChanged):
7929 (testWebResourceGetDataError):
7932 2017-10-02 Alex Christensen <achristensen@webkit.org>
7934 Fix build after r222715
7935 https://bugs.webkit.org/show_bug.cgi?id=177697
7937 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
7939 Use the public API instead of the removed SPI.
7941 2017-10-02 Alex Christensen <achristensen@webkit.org>
7943 REGRESSION(r214201): WebProcess hangs during policy decisions
7944 https://bugs.webkit.org/show_bug.cgi?id=177590
7945 <rdar://problem/33362929>
7947 Reviewed by Andy Estes.
7949 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7950 * TestWebKitAPI/Tests/WebKitCocoa/JavaScriptDuringNavigation.mm: Added.
7951 (-[JSNavigationDelegate webView:didFinishNavigation:]):
7952 (-[JSNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
7953 (-[JSNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
7954 (-[JSNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
7957 2017-10-02 Jonathan Bedard <jbedard@apple.com>
7959 Log stack-trace for run-webkit-tests when interrupted
7960 https://bugs.webkit.org/show_bug.cgi?id=176393
7961 <rdar://problem/34262310>
7963 Reviewed by Darin Adler.
7965 When run-webkit-tests is stuck, it is difficult to immediately tell
7966 why. Saving a stack-trace when run-webkit-tests is terminated
7967 or stopped with CNTRL-C will make such issues easier to debug.
7969 * Scripts/webkitpy/common/interupt_debugging.py: Added.
7970 (log_stack_trace): Given a Python frame object, log a stack trace to
7972 (log_stack_trace_on_term): Attach a listener to SIGTERM so that a
7973 stack-trace can be logged when a program is terminated.
7974 (log_stack_trace_on_cntrl_c): Attach a listener to SIGINT so that a
7975 stack-trace can be logged when a program is CNTRL-Ced.
7976 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
7977 (main): Set handlers to log stack trace on interruption.
7979 2017-10-02 Michael Catanzaro <mcatanzaro@igalia.com>
7981 Remove ENABLE_CSS_REGIONS
7982 https://bugs.webkit.org/show_bug.cgi?id=177689
7984 Reviewed by Darin Adler.
7986 * Scripts/webkitperl/FeatureList.pm:
7988 2017-09-30 Carlos Garcia Campos <cgarcia@igalia.com>
7990 Unreviewed. Upgrade webkitgtk-test-fonts to version 0.0.7.
7992 This version upgrades liberation fonts to version 2, that has a wider glyph coverage.
7994 * gtk/jhbuild.modules:
7996 2017-09-29 Alex Christensen <achristensen@webkit.org>
7998 Expose WebPreferences::webGLEnabled through WKPreferences
7999 https://bugs.webkit.org/show_bug.cgi?id=177692
8000 <rdar://problem/24110556>
8002 Reviewed by Andy Estes.
8004 * TestWebKitAPI/Tests/WebKitCocoa/Preferences.mm:
8005 (-[AlertSaver alert]):
8006 (-[AlertSaver webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
8009 2017-09-29 Alex Christensen <achristensen@webkit.org>
8011 Fix WKWebViewConfigurationPrivate after r222663
8012 https://bugs.webkit.org/show_bug.cgi?id=177644
8014 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8015 * TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm: Added.
8018 2017-09-28 Ryosuke Niwa <rniwa@webkit.org>
8020 Image pasting is not working on tineye.com / gmail.com / GitHub.com due to lack of support for DataTransfer.items
8021 https://bugs.webkit.org/show_bug.cgi?id=170449
8022 <rdar://problem/31432525>
8024 Reviewed by Wenson Hsieh.
8026 Added an API test to paste an image from pasteboard. The test is shared between iOS and macOS.
8028 The tests to paste image files are only enabled on macOS since putting files into pasteboard isn't a thing on iOS.
8030 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8031 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm: Added.
8032 (writeImageDataToPasteboard):
8033 (writeBundleFileToPasteboard):
8034 * TestWebKitAPI/Tests/WebKitCocoa/paste-image.html: Added.
8035 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-100px.tiff: Added.
8036 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-200px.png: Added.
8037 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-400px.gif: Added.
8038 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-600px.jpg: Added.
8039 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: Rebaselined the test now that types contain "Files".
8041 2017-09-29 Wenson Hsieh <wenson_hsieh@apple.com>
8043 [iOS WK2] Implement -[WKContentView hasText] for compatibility with the UITextInput protocol
8044 https://bugs.webkit.org/show_bug.cgi?id=177662
8045 <rdar://problem/33410373>
8047 Reviewed by Tim Horton.
8049 Add EditorState API tests to check that the value of -[WKContentView hasText] is correct when editing both plain
8050 and rich text areas.
8052 * TestWebKitAPI/EditingTestHarness.h:
8053 * TestWebKitAPI/EditingTestHarness.mm:
8054 (-[EditingTestHarness insertParagraph]):
8055 (-[EditingTestHarness insertText:]):
8056 (-[EditingTestHarness insertHTML:]):
8057 (-[EditingTestHarness selectAll]):
8058 (-[EditingTestHarness deleteBackwards]):
8059 * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
8061 Add versions of EditingTestHarness helpers that don't require us to expect any editor state after executing the
8064 (TestWebKitAPI::checkContentViewHasTextWithFailureDescription):
8065 (TestWebKitAPI::TEST):
8066 * TestWebKitAPI/cocoa/TestWKWebView.h:
8067 * TestWebKitAPI/cocoa/TestWKWebView.mm:
8068 (-[TestWKWebView textInputContentView]):
8070 2017-09-29 Charles Turner <cturner@igalia.com>
8076 * Scripts/webkitpy/common/config/contributors.json:
8078 2017-09-28 Commit Queue <commit-queue@webkit.org>
8080 Unreviewed, rolling out r222639.
8081 https://bugs.webkit.org/show_bug.cgi?id=177630
8083 Breaks AppleWin build (Requested by dolmstead on #webkit).
8087 "[WinCairo][MiniBrowser] Add ca-bundle to display secure
8089 https://bugs.webkit.org/show_bug.cgi?id=168486
8090 http://trac.webkit.org/changeset/222639
8092 2017-09-28 Joanmarie Diggs <jdiggs@igalia.com>
8094 AX: [ATK] object:state-changed notifications missing for multiple ARIA attributes
8095 https://bugs.webkit.org/show_bug.cgi?id=177542
8097 Add platform support for the notifications. Also add support for getting the
8098 boolean argument indicating whether the state has been set or unset.
8100 Reviewed by Chris Fleizach.
8102 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
8104 2017-09-28 Basuke Suzuki <Basuke.Suzuki@sony.com>
8106 [WinCairo][MiniBrowser] Add ca-bundle to display secure pages.
8107 Copy cacert.pem file into bundle directory.
8108 https://bugs.webkit.org/show_bug.cgi?id=168486
8110 Reviewed by Brent Fulgham.
8112 * MiniBrowser/win/CMakeLists.txt:
8114 2017-09-28 Lucas Forschler <lforschler@apple.com>
8116 check in AWS Lambda code used for WebKitArchiveSupport
8117 https://bugs.webkit.org/show_bug.cgi?id=177614
8119 Rubber-stamped by Alexey Proskuryakov.
8121 * WebKitArchiveSupport/lambda: Added.
8122 * WebKitArchiveSupport/lambda/delete-minified-s3-archive-from-dynamodb.py: Added.
8124 * WebKitArchiveSupport/lambda/delete-s3-archive-from-dynamodb.py: Added.
8126 * WebKitArchiveSupport/lambda/register-archive-in-dynamodb.py: Added.
8128 * WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py: Added.
8131 2017-09-28 Jiewen Tan <jiewen_tan@apple.com>
8133 WeakPtrFactory should allow downcasting
8134 https://bugs.webkit.org/show_bug.cgi?id=177389
8135 <rdar://problem/34604174>
8137 Reviewed by Geoffrey Garen.
8139 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8140 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
8141 (TestWebKitAPI::Base::foo):
8142 (TestWebKitAPI::Base::createWeakPtr):
8143 (TestWebKitAPI::Derived::foo):
8144 (TestWebKitAPI::TEST):
8146 2017-09-28 Megan Gardner <megan_gardner@apple.com>
8148 Add debug flag to WebKitTestRunner to show where touches are being generated
8149 https://bugs.webkit.org/show_bug.cgi?id=177583
8151 Reviewed by Tim Horton and Wenson Hsieh.
8153 Add a flag, and the ability to paint a dot where the HIDEventGenerator is creating fake touches to
8154 send through UIKit. This will help in debugging touch tests, because it will be easier to see if
8155 one is actually sending the touches at the locations that they expect. This will help differentiate between
8156 problems in the locations of the touches, and other problems that can come up when writing tests.
8158 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
8160 * Scripts/webkitpy/port/driver.py:
8162 * WebKitTestRunner/Options.cpp:
8163 (WTR::Options::Options):
8164 (WTR::handleOptionShowTouches):
8165 (WTR::OptionsHandler::OptionsHandler):
8166 * WebKitTestRunner/Options.h:
8167 * WebKitTestRunner/TestController.cpp:
8168 (WTR::TestController::initialize):
8169 * WebKitTestRunner/TestController.h:
8170 (WTR::TestController::shouldShowTouches const):
8171 * WebKitTestRunner/TestOptions.h:
8172 * WebKitTestRunner/ios/HIDEventGenerator.h:
8173 * WebKitTestRunner/ios/HIDEventGenerator.mm:
8174 (-[DebugTouchView pointInside:withEvent:]):
8175 (-[HIDEventGenerator setShouldShowTouches:]):
8176 (-[HIDEventGenerator initDebugViews]):
8177 (-[HIDEventGenerator updateDebugUI:withPoint:isTouching:]):
8178 (-[HIDEventGenerator _createIOHIDEventWithInfo:]):
8179 (-[HIDEventGenerator _createIOHIDEventType:]):
8180 (-[HIDEventGenerator _updateTouchPoints:count:]):
8181 (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
8182 (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
8183 (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
8184 (-[HIDEventGenerator markerEventReceived:]):
8185 * WebKitTestRunner/ios/TestControllerIOS.mm:
8186 (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
8187 * WebKitTestRunner/ios/mainIOS.mm:
8188 (-[WebKitTestRunnerApp _runTestController]):
8190 2017-09-28 Mark Lam <mark.lam@apple.com>
8192 [Re-landing] Turn on exception scope verification for JSC tests.
8193 https://bugs.webkit.org/show_bug.cgi?id=162351
8194 <rdar://problem/29563911>
8196 Reviewed by Saam Barati.
8198 Update: I'm re-landing this patch now that test262 exception check validation
8199 failures have been fixed in r222617. testapi still has some validation failures,
8200 but this patch does not affect testapi.
8202 Added the option to --validateExceptionChecks=true option to BASE_OPTIONS in
8203 run-jsc-stress-tests. This turns on exception scope verification on JSC test
8204 runs (which currently does not include testapi).
8206 Some stats on time to run JSC stress and mozilla tests:
8207 1. Release build w/o --validateExceptionChecks=true: real 16m22.544s, user 156m24.080s, sys 123m3.649s
8208 2. Debug build w/o --validateExceptionChecks=true: real 78m34.206s, user 1661m57.008s, sys 73m21.177s
8209 3. Debug build w/ --validateExceptionChecks=true: real 77m41.106s, user 1656m13.924s, sys 73m42.309s
8210 4. Debug build w/ --validateExceptionChecks=true --dumpSimulatedThrows=true: real 92m56.918s, user 2012m56.441s, sys 75m14.174s
8212 The stats shows that (2) and (3) has effectively no time difference. Hence, the
8213 cost of enabling --validateExceptionChecks=true is not significant.
8215 It would be nice to enable --dumpSimulatedThrows=true as well, but (4) is about
8216 21% slower than (3). To avoid making debug test runs a lot slower, we'll leave
8217 --dumpSimulatedThrows=true off. We can manually add that when we see a regression
8218 and need to debug the issue. Otherwise, we wont pay the price for it.
8220 * Scripts/run-jsc-stress-tests:
8222 2017-09-27 Alex Christensen <achristensen@webkit.org>
8224 Add WKContentRuleList notify action type
8225 https://bugs.webkit.org/show_bug.cgi?id=177013
8226 <rdar://problem/31073936>
8228 Reviewed by Darin Adler.
8230 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8231 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
8232 (WebCore::ContentExtensions::operator<<):
8233 (TestWebKitAPI::InMemoryCompiledContentExtension::create):
8234 (TestWebKitAPI::InMemoryCompiledContentExtension::data):
8235 (TestWebKitAPI::InMemoryCompiledContentExtension::InMemoryCompiledContentExtension):
8236 (TestWebKitAPI::makeBackend):
8237 (TestWebKitAPI::TEST_F):
8238 (TestWebKitAPI::actionsEqual):
8239 (TestWebKitAPI::sequenceInstances):
8240 (TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter): Deleted.
8241 (TestWebKitAPI::InMemoryCompiledContentExtension::~InMemoryCompiledContentExtension): Deleted.
8242 * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: Added.
8243 (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
8244 (-[ContentRuleListNotificationDelegate webView:startURLSchemeTask:]):
8245 (-[ContentRuleListNotificationDelegate webView:stopURLSchemeTask:]):
8246 (-[ContentRuleListNotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
8247 (makeWarnContentRuleList):
8250 2017-09-27 Wenson Hsieh <wenson_hsieh@apple.com>
8252 Drag event DataTransfer has unexpected types "dyn.ah62d4..."
8253 https://bugs.webkit.org/show_bug.cgi?id=172526
8254 <rdar://problem/32396081>
8256 Reviewed by Ryosuke Niwa.
8258 Adds new API tests on iOS to cover various cases of using DataTransfer.setData, DataTransfer.getData, and
8259 DataTransfer.types, as well as their interaction with platform objects (source NSItemProviders in the case of
8260 drag and drop, and the general UIPasteboard for copy and paste).
8262 * TestWebKitAPI/PlatformUtilities.h:
8263 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8264 * TestWebKitAPI/Tests/WebKitCocoa/dump-datatransfer-types.html: Added.
8266 Introduce a new API test harness that both drag-and-drop and copy-and-paste tests use to dump DataTransfer's
8267 web-exposed types and values.
8269 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
8270 (checkFirstTypeIsPresentAndSecondTypeIsMissing):
8271 (checkJSONWithLogging):
8272 (TestWebKitAPI::TEST):
8273 (checkTypeIdentifierAndIsNotOtherTypeIdentifier): Deleted.
8274 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
8275 (TestWebKitAPI::checkJSONWithLogging):
8276 (TestWebKitAPI::setUpWebViewForPasteboardTests):
8277 (TestWebKitAPI::TEST):
8278 * TestWebKitAPI/cocoa/PlatformUtilitiesCocoa.mm:
8279 (TestWebKitAPI::Util::jsonMatchesExpectedValues):
8281 2017-09-27 Lucas Forschler <lforschler@apple.com>
8283 Add macOS High Sierra and iOS Simulator 11 support to bisect-builds.
8284 https://bugs.webkit.org/show_bug.cgi?id=177578
8286 Reviewed by Alexey Proskuryakov.
8288 * Scripts/bisect-builds:
8289 (minified_platforms):
8290 (unminified_platforms):
8292 2017-09-27 Ryan Haddad <ryanhaddad@apple.com>
8294 Update TestResultsServer for High Sierra queues.
8295 https://bugs.webkit.org/show_bug.cgi?id=177500
8297 Reviewed by Alexey Proskuryakov.
8299 * TestResultServer/static-dashboards/builders.jsonp:
8301 2017-09-27 Lucas Forschler <lforschler@apple.com>
8303 bisect-builds:add a README to the archive.
8304 https://bugs.webkit.org/show_bug.cgi?id=177376
8306 Reviewed by Alexey Proskuryakov & Jon Davis.
8308 * BuildSlaveSupport/built-product-archive:
8309 (addFilesToArchive): refactor function (was previously addLauncherToArchive)
8310 (createZip): Teach function to add the README
8311 (addLauncherToArchive): Deleted. (refactored to addFilesToArchive)
8312 * BuildSlaveSupport/run-webkit-archive: Deleted. (Moved to WebKitArchiveSupport)
8313 * WebKitArchiveSupport: Added.
8314 * WebKitArchiveSupport/README: Added. README which will be packaged up with the archive.
8315 * WebKitArchiveSupport/run-webkit-archive: Added. (Moved from BuildSlaveSupport)
8317 2017-09-26 Tim Horton <timothy_horton@apple.com>
8319 Mac CMake bot should provide verbose build output
8320 https://bugs.webkit.org/show_bug.cgi?id=177512
8322 Reviewed by Alexey Proskuryakov.
8324 * BuildSlaveSupport/build.webkit.org-config/config.json:
8325 It's hard to diagnose weird bot-only build problems without the
8326 full verbose build output, so turn that on. The Xcode builders
8327 do it too, so why not CMake!
8329 2017-09-26 Tim Horton <timothy_horton@apple.com>
8331 Make it possible to easily get verbose ninja output from build-webkit
8332 https://bugs.webkit.org/show_bug.cgi?id=177511
8334 Reviewed by Sam Weinig.
8336 * Scripts/build-webkit:
8337 Add a -v/--verbose argument to build-webkit, which sets the environment
8338 variable VERBOSE=1, which buildCMakeGeneratedProject already checks.
8340 * Scripts/webkitdirs.pm:
8341 (buildCMakeGeneratedProject):
8342 Add ninja verbosity arguments to @makeArgs, which are appended
8343 after the -- and thus handed to ninja; the previous implementation
8344 (appending to @args) would only work if @makeArgs was non-empty and thus
8345 the -- was included.
8347 2017-09-26 Said Abou-Hallawa <sabouhallawa@apple.com>
8349 Followup (r222427): SynchronizedFixedQueue should not have a public constructor
8350 https://bugs.webkit.org/show_bug.cgi?id=177458
8352 Reviewed by Tim Horton.
8354 Fix the definition and the creation of SynchronizedFixedQueue.
8356 * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
8357 (TestWebKitAPI::ToUpperConverter::ToUpperConverter):
8358 (TestWebKitAPI::ToUpperConverter::startProducing):
8359 (TestWebKitAPI::ToUpperConverter::startConsuming):
8360 (TestWebKitAPI::ToUpperConverter::stopProducing):
8361 (TestWebKitAPI::ToUpperConverter::stopConsuming):
8362 (TestWebKitAPI::ToUpperConverter::enqueueLower):
8364 2017-09-26 Wenson Hsieh <wenson_hsieh@apple.com>
8366 [ios-simulator] API test DataInteractionTests.ExternalSourceDataTransferItemGetFolderAsEntry is failing
8367 https://bugs.webkit.org/show_bug.cgi?id=177271
8369 Reviewed by Tim Horton and Megan Gardner.
8371 Rebaseline a failing API test.
8373 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
8374 (TestWebKitAPI::TEST):
8376 2017-09-26 Per Arne Vollan <pvollan@apple.com>
8378 Set LF eol-style on Windows shell script, because the script failed on one of the EWS
8379 bots, when it had the 'native' style.
8381 Unreviewed Windows EWS fix.
8383 * EWSTools/start-queue-win.sh: Modified property svn:eol-style.
8385 2017-09-26 Jonathan Bedard <jbedard@apple.com>
8387 webkitpy: Notify parent process when a worker is spawned
8388 https://bugs.webkit.org/show_bug.cgi?id=177467
8389 <rdar://problem/34660194>
8391 Reviewed by Daniel Bates.
8393 When we fork the parent process, there may be resources in that process
8394 which workers will take ownership of. Notify ports when a new worker is created
8395 so that these resources can be correctly managed.
8397 * Scripts/webkitpy/common/message_pool.py:
8398 (_MessagePool._start_workers): After all workers are started, notify the caller
8399 that a worker has been created, unless we are running inline, in which case the
8400 parent process is still the worker.
8401 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
8402 (LayoutTestRunner._handle_did_spawn_worker): Notify the port that a worker process
8404 * Scripts/webkitpy/port/base.py:
8405 (Port.did_spawn_worker): Add function so that ports may manage any
8406 resources created on the parent process but managed by the provided worker.
8407 * Scripts/webkitpy/port/device.py:
8408 (Device.release_worker_resources): Call release_worker_resources on the
8409 platform_device if such a function is defined.
8410 * Scripts/webkitpy/port/ios.py:
8411 (IOSPort.did_spawn_worker): Release any worker resources on the iOS
8412 device object associated with the spawned worker.
8413 * Scripts/webkitpy/test/runner.py:
8414 (Runner.handle): Ignore the did_spawn_worker message during testing.
8416 2017-09-26 Jer Noble <jer.noble@apple.com>
8418 Thrown ObjC exception when right clicking on <img> containing mp4 link
8419 https://bugs.webkit.org/show_bug.cgi?id=177370
8421 Reviewed by Darin Adler.
8423 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8424 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.html: Added.
8425 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.mm: Added.
8426 (-[ContextMenuImgWithVideoDelegate _webView:contextMenu:forElement:]):
8427 (TestWebKitAPI::TEST):
8429 2017-09-26 Per Arne Vollan <pvollan@apple.com>
8431 [Win] 'webkit-patch clean' is failing on bot.
8432 https://bugs.webkit.org/show_bug.cgi?id=177488
8434 Reviewed by Brent Fulgham.
8436 If 'os.remove' throws an exception, catch it.
8438 * Scripts/webkitpy/common/checkout/scm/svn.py:
8439 (SVN.discard_working_directory_changes):
8441 2017-09-25 Frederik Riedel <riedel@apple.com>
8443 Expose way to set values of classified form controls as {Legacy WebKit, WebKit} SPI
8444 https://bugs.webkit.org/show_bug.cgi?id=174394
8445 <rdar://problem/33183504>
8447 Reviewed by Ryosuke Niwa.
8449 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8450 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm: Added.
8451 (-[WKWebView _privateTextInput]): Testing helpers.
8452 (TestWebKitAPI::TEST): Added test cases to test AutoFill for web views.
8453 * TestWebKitAPI/ios/UIKitSPI.h:
8455 2017-09-25 Frederic Wang <fwang@igalia.com>
8457 Change my status to reviewer and reformat with validate-committer-lists
8461 * Scripts/webkitpy/common/config/contributors.json:
8463 2017-09-25 Ryan Haddad <ryanhaddad@apple.com>
8465 Add High Sierra bots to buildbot and dashboard.
8466 https://bugs.webkit.org/show_bug.cgi?id=177437
8468 Reviewed by Alexey Proskuryakov.
8470 * BuildSlaveSupport/build.webkit.org-config/config.json: Add High Sierra queues, move Leaks and JSC queues over from Sierra.
8471 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Update expected results.
8472 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js: Add High Sierra.
8475 2017-09-25 Chris Dumez <cdumez@apple.com>
8477 [WK2] Add API to query if a download was user-initiated
8478 https://bugs.webkit.org/show_bug.cgi?id=177435
8479 <rdar://problem/34498422>
8481 Reviewed by Alex Christensen.
8483 Add API test coverage.
8485 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
8486 (TestWebKitAPI::decideDestinationWithSuggestedFilename):
8487 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
8488 (-[DownloadDelegate _downloadDidStart:]):
8489 (-[DownloadDelegate _downloadDidFinish:]):
8492 (-[BlobDownloadDelegate _downloadDidStart:]):
8493 (-[BlobDownloadDelegate _downloadDidFinish:]):
8494 (-[RedirectedDownloadDelegate _downloadDidStart:]):
8495 (-[RedirectedDownloadDelegate _downloadDidFinish:]):
8497 2017-09-25 Commit Queue <commit-queue@webkit.org>
8499 Unreviewed, rolling out r222455.
8500 https://bugs.webkit.org/show_bug.cgi?id=177460
8502 broke iOS build (Requested by alexchristensen on #webkit).
8506 "Add WKContentRuleList notify action type"
8507 https://bugs.webkit.org/show_bug.cgi?id=177013
8508 http://trac.webkit.org/changeset/222455
8510 2017-09-25 Per Arne Vollan <pvollan@apple.com>
8512 [Win] run-api-tests is failing.
8513 https://bugs.webkit.org/show_bug.cgi?id=177454
8515 Reviewed by Brent Fulgham.
8517 TestWebKit.exe has changed name to TestWebKitLegacy.exe.
8519 * Scripts/run-api-tests:
8522 2017-09-25 Per Arne Vollan <pvollan@apple.com>
8524 [Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
8525 https://bugs.webkit.org/show_bug.cgi?id=177244
8527 Reviewed by Alex Christensen.
8529 The 64-bit EWS shell process should try to find Visual Studio in the 32-bit program files folder.
8531 * EWSTools/start-queue-win.sh:
8533 2017-09-25 Alex Christensen <achristensen@webkit.org>
8535 Add WKContentRuleList notify action type
8536 https://bugs.webkit.org/show_bug.cgi?id=177013
8537 <rdar://problem/31073936>
8539 Reviewed by Darin Adler.
8541 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8542 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
8543 (WebCore::ContentExtensions::operator<<):
8544 (TestWebKitAPI::InMemoryCompiledContentExtension::create):
8545 (TestWebKitAPI::InMemoryCompiledContentExtension::data):
8546 (TestWebKitAPI::InMemoryCompiledContentExtension::InMemoryCompiledContentExtension):
8547 (TestWebKitAPI::makeBackend):
8548 (TestWebKitAPI::TEST_F):
8549 (TestWebKitAPI::actionsEqual):
8550 (TestWebKitAPI::sequenceInstances):
8551 (TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter): Deleted.
8552 (TestWebKitAPI::InMemoryCompiledContentExtension::~InMemoryCompiledContentExtension): Deleted.
8553 * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: Added.
8554 (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
8555 (-[ContentRuleListNotificationDelegate webView:startURLSchemeTask:]):
8556 (-[ContentRuleListNotificationDelegate webView:stopURLSchemeTask:]):
8557 (-[ContentRuleListNotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
8558 (makeWarnContentRuleList):
8561 2017-09-25 Carlos Alberto Lopez Perez <clopez@igalia.com>
8563 REGRESSION(r222160) [GTK] [Debug] Internal compiler error on the buildbot (huge memory usage by GCC)
8564 https://bugs.webkit.org/show_bug.cgi?id=177223
8566 Reviewed by Carlos Garcia Campos.
8568 When the user environment sets the variable NUMBER_OF_PROCESSORS
8569 this should be passed down to the build system (ninja or make) always.
8571 Playing with the number of this variable is needed when using icecc
8572 (as you usually want to launch more parallel build process than your
8573 number of cores), or when you want to limit the number of parallel
8574 build process for hardware capacity reasons.
8576 * Scripts/build-webkit:
8578 2017-09-24 Fujii Hironori <Hironori.Fujii@sony.com>
8580 [GTK] Incremental builds fail every time Web Inspector icons are removed
8581 https://bugs.webkit.org/show_bug.cgi?id=177349
8583 Reviewed by Carlos Garcia Campos.
8585 Removing GTK WebInspector image files always breaks the GTK and
8586 WPE ports incremental builds.
8588 * Scripts/webkitdirs.pm:
8589 (shouldRemoveCMakeCache): Check the timestamp of
8590 Source/WebInspectorUI/UserInterface/Images/gtk directory if
8593 2017-09-24 Joanmarie Diggs <jdiggs@igalia.com>
8595 [ATK] Object attributes are missing for ARIA live region roles
8596 https://bugs.webkit.org/show_bug.cgi?id=171174
8598 Reviewed by Chris Fleizach.
8600 Add support for testing property values for AXARIALive, AXARIAAtomic, and
8601 AXARIARelevant. Also add handling for testing whether AXElementBusy is
8602 "supported" (in ATK, busy is a state and is supported on all elements
8603 regardless of whether the state is present or absent from the state set).
8605 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
8606 (WTR::AccessibilityUIElement::boolAttributeValue):
8607 (WTR::AccessibilityUIElement::isAttributeSupported):
8609 2017-09-23 Michael Catanzaro <mcatanzaro@igalia.com>
8611 Unreviewed Mac CMake build fixup after r222194
8613 * DumpRenderTree/PlatformMac.cmake:
8615 2017-09-22 Zalan Bujtas <zalan@apple.com>
8617 WeakPtrFactory should populate m_ref lazily.
8618 https://bugs.webkit.org/show_bug.cgi?id=177375
8620 Reviewed by Geoffrey Garen.
8622 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
8623 (TestWebKitAPI::TEST):
8625 2017-09-22 Filip Pizlo <fpizlo@apple.com>
8627 WSL should report an error if you try to create an operator overload that will never be called
8628 https://bugs.webkit.org/show_bug.cgi?id=177092
8630 Reviewed by JF Bastien.
8632 This adds all kinds of checks to ensure that your operator overloads make sense. This adds all
8633 kinds of tests for those checks.
8635 In the process of writing those tests, I hit an awesome bug: function instantiation was
8636 instantiating all types, which meant that if that instantiated function needed to resolve calls
8637 to protocol functions, we'd fail because we would have cloned top-level struct types. We need
8638 to preserve the uninstantiated argument types, type arguments, and return type (for casts) in
8639 order to be able to resolve protocol calls. But we also need the instantiated version of the
8640 type arguments for execution. So, this adds some more stuff to the CallExpression class.
8642 * WebGPUShadingLanguageRI/All.js:
8643 * WebGPUShadingLanguageRI/ArrayRefType.js:
8644 (ArrayRefType.prototype.unifyImpl):
8645 * WebGPUShadingLanguageRI/ArrayType.js:
8646 (ArrayType.prototype.get isArray):
8647 * WebGPUShadingLanguageRI/CallExpression.js:
8648 (CallExpression.resolve):
8649 (CallExpression.prototype.resolve):
8650 (CallExpression.prototype.resolveToOverload):
8651 * WebGPUShadingLanguageRI/Checker.js:
8652 (Checker.prototype._checkOperatorOverload):
8653 (Checker.prototype.visitFuncDef):
8654 (Checker.prototype.visitProtocolDecl):
8655 (Checker.prototype.visitMakeArrayRefExpression):
8656 * WebGPUShadingLanguageRI/EBufferBuilder.js:
8657 (EBufferBuilder.prototype._createEPtr):
8658 * WebGPUShadingLanguageRI/EPtr.js:
8660 * WebGPUShadingLanguageRI/Evaluator.js:
8661 (Evaluator.prototype._snapshot):
8662 (Evaluator.prototype._runBody):
8663 (Evaluator.prototype.visitFunctionLikeBlock):
8664 (Evaluator.prototype.visitCallExpression):
8666 (Evaluator.prototype.runFunc): Deleted.
8667 * WebGPUShadingLanguageRI/ExternalOrigin.js: Added.
8668 * WebGPUShadingLanguageRI/Func.js:
8669 (Func.prototype.toDeclString):
8670 * WebGPUShadingLanguageRI/FuncInstantiator.js:
8671 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
8672 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
8673 (FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates.prototype.visitCallExpression):
8674 (FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates):
8675 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
8676 * WebGPUShadingLanguageRI/Intrinsics.js:
8678 * WebGPUShadingLanguageRI/LateChecker.js:
8679 (LateChecker.prototype.visitReferenceType):
8680 (LateChecker.prototype._checkShaderType):
8681 * WebGPUShadingLanguageRI/Lexer.js:
8682 (Lexer._textIsIdentifierImpl):
8683 (Lexer.textIsIdentifier):
8684 (Lexer.prototype.next):
8686 * WebGPUShadingLanguageRI/NameResolver.js:
8687 (NameResolver.prototype.visitProtocolDecl):
8688 * WebGPUShadingLanguageRI/Parse.js:
8689 (parseType.getAddressSpace):
8691 * WebGPUShadingLanguageRI/Prepare.js:
8693 * WebGPUShadingLanguageRI/PtrType.js:
8694 (PtrType.prototype.unifyImpl):
8695 * WebGPUShadingLanguageRI/ReferenceType.js:
8697 * WebGPUShadingLanguageRI/Rewriter.js:
8698 (Rewriter.prototype.visitReferenceType):
8699 (Rewriter.prototype.processDerivedCallData):
8700 * WebGPUShadingLanguageRI/StandardLibrary.js:
8702 * WebGPUShadingLanguageRI/StatementCloner.js:
8703 (StatementCloner.prototype.visitFuncDef):
8704 * WebGPUShadingLanguageRI/StructLayoutBuilder.js:
8705 (StructLayoutBuilder.prototype.visitCallExpression):
8706 (StructLayoutBuilder):
8707 * WebGPUShadingLanguageRI/Substitution.js:
8708 (Substitution.prototype.visitTypeRef):
8709 * WebGPUShadingLanguageRI/Test.html:
8710 * WebGPUShadingLanguageRI/Test.js:
8713 (tests.literalBool):
8714 (tests.identityBool):
8715 (tests.intSimpleMath):
8716 (tests.uintSimpleMath):
8717 (tests.uint8SimpleMath):
8719 (tests.logicalNegation):
8720 (tests.notEquality):
8721 (tests.equalityTypeFailure):
8722 (tests.generalNegation):
8724 (tests.simpleGeneric):
8725 (tests.nameResolutionFailure):
8726 (tests.simpleVariable):
8727 (tests.simpleAssignment):
8728 (tests.simpleDefault):
8729 (tests.simpleDereference):
8730 (tests.dereferenceStore):
8731 (tests.simpleMakePtr):
8732 (tests.threadArrayLoad):
8733 (tests.threadArrayLoadIntLiteral):
8734 (tests.deviceArrayLoad):
8735 (tests.threadArrayStore):
8736 (tests.deviceArrayStore):
8737 (tests.deviceArrayStoreIntLiteral):
8738 (tests.simpleProtocol):
8739 (tests.typeMismatchReturn):
8740 (tests.typeMismatchVariableDecl):
8741 (tests.typeMismatchAssignment):
8742 (tests.typeMismatchReturnParam):
8744 (tests.lexerKeyword):
8745 (tests.simpleNoReturn):
8746 (tests.simpleUnreachableCode):
8747 (tests.simpleStruct):
8748 (tests.genericStructInstance):
8749 (tests.doubleGenericCallsDoubleGeneric):
8750 (tests.doubleGenericCallsSingleGeneric):
8754 (tests.dereferenceDefaultNull):
8755 (tests.defaultInitializedNull):
8756 (tests.passNullToPtrMonomorphic):
8757 (tests.passNullToPtrPolymorphic):
8758 (tests.passNullToPolymorphic):
8759 (tests.loadNullArrayRef):
8760 (tests.storeNullArrayRef):
8761 (tests.returnNullArrayRef):
8762 (tests.dereferenceDefaultNullArrayRef):
8763 (tests.defaultInitializedNullArrayRef):
8764 (tests.defaultInitializedNullArrayRefIntLiteral):
8765 (tests.passNullToPtrMonomorphicArrayRef):
8766 (tests.passNullToPtrPolymorphicArrayRef):
8767 (tests.returnIntLiteralUint):
8768 (tests.returnIntLiteralDouble):
8769 (tests.badIntLiteralForInt):
8770 (tests.badIntLiteralForUint):
8771 (tests.badIntLiteralForDouble):
8772 (tests.passNullAndNotNull):
8773 (tests.passNullAndNotNullFullPoly):
8774 (tests.passNullAndNotNullFullPolyReverse):
8775 (tests.nullTypeVariableUnify):
8777 (tests.simpleRecursion):
8778 (tests.protocolMonoSigPolyDef):
8779 (tests.protocolPolySigPolyDef):
8780 (tests.protocolDoublePolySigDoublePolyDef):
8781 (tests.protocolDoublePolySigDoublePolyDefExplicit):
8782 (tests.variableShadowing):
8783 (tests.ifStatement):
8784 (tests.ifElseStatement):
8785 (tests.ifElseIfStatement):
8786 (tests.ifElseIfElseStatement):
8788 (tests.simpleWhile):
8789 (tests.protocolMonoPolySigDoublePolyDefExplicit):
8790 (tests.ambiguousOverloadSimple):
8791 (tests.ambiguousOverloadOverlapping):
8792 (tests.ambiguousOverloadTieBreak):
8793 (tests.intOverloadResolution):
8794 (tests.intOverloadResolutionReverseOrder):
8795 (tests.intOverloadResolutionGeneric):
8796 (tests.intLiteralGeneric):
8797 (tests.intLiteralGenericWithProtocols):
8798 (tests.uintLiteralGeneric):
8799 (tests.uintLiteralGenericWithProtocols):
8800 (tests.intLiteralGenericSpecific):
8801 (tests.simpleConstexpr):
8806 (tests.chainConstexpr):
8807 (tests.chainGeneric):
8808 (tests.chainStruct):
8809 (tests.chainStructNewlyValid):
8810 (tests.chainStructDevice):
8811 (tests.paramChainStructDevice):
8812 (tests.simpleProtocolExtends):
8813 (tests.protocolExtendsTwo):
8814 (tests.prefixPlusPlus):
8815 (tests.prefixPlusPlusResult):
8816 (tests.postfixPlusPlus):
8817 (tests.postfixPlusPlusResult):
8818 (tests.prefixMinusMinus):
8819 (tests.prefixMinusMinusResult):
8820 (tests.postfixMinusMinus):
8821 (tests.postfixMinusMinusResult):
8823 (tests.plusEqualsResult):
8824 (tests.minusEquals):
8825 (tests.minusEqualsResult):
8826 (tests.timesEquals):
8827 (tests.timesEqualsResult):
8828 (tests.divideEquals):
8829 (tests.divideEqualsResult):
8830 (tests.twoIntLiterals):
8831 (tests.unifyDifferentLiterals):
8832 (tests.unifyDifferentLiteralsBackwards):
8833 (tests.unifyVeryDifferentLiterals):
8834 (tests.unifyVeryDifferentLiteralsBackwards):
8835 (tests.assignUintToInt):
8836 (tests.buildArrayThenSumIt):
8837 (tests.buildArrayThenSumItUsingArrayReference):
8838 (tests.overrideSubscriptStruct):
8839 (tests.overrideSubscriptStructAndDoStores):
8840 (tests.overrideSubscriptStructAndUsePointers):
8841 (tests.overrideSubscriptStructAndUsePointersIncorrectly):
8842 (tests.makeArrayRefFromLocal):
8843 (tests.makeArrayRefFromPointer):
8844 (tests.makeArrayRefFromArrayRef):
8845 (tests.simpleLength):
8846 (tests.nonArrayRefArrayLengthSucceed):
8847 (tests.nonArrayRefArrayLengthFail):
8848 (tests.constexprIsNotLValuePtr):
8849 (tests.constexprIsNotLValueAssign):
8850 (tests.constexprIsNotLValueRMW):
8851 (tests.assignLength):
8852 (tests.assignLengthHelper):
8853 (tests.simpleGetter):
8854 (tests.simpleSetter):
8855 (tests.genericAccessors):
8856 (tests.bitSubscriptAccessor):
8857 (tests.nestedSubscriptLValueEmulationSimple):
8858 (tests.nestedSubscriptLValueEmulationGeneric):
8875 (tests.uint8BitAnd):
8877 (tests.uint8BitXor):
8878 (tests.uint8BitNot):
8879 (tests.uint8LShift):
8880 (tests.uint8RShift):
8882 (tests.genericCastInfer):
8883 (tests.booleanMath):
8884 (tests.typedefArray):
8885 (tests.shaderTypes):
8886 (tests.builtinVectors):
8887 (tests.instantiateStructInStruct):
8888 (tests.instantiateStructInStructWithInt2):
8890 (tests.enumWithManualValues):
8891 (tests.enumWithoutZero):
8892 (tests.enumDuplicates):
8893 (tests.enumWithSomeManualValues):
8894 (tests.enumConstexprGenericFunction):
8895 (tests.enumConstexprGenericStruct):
8898 (tests.enumWithExplicitIntBase):
8899 (tests.enumWithUintBase):
8900 (tests.enumFloatBase):
8901 (tests.enumPtrBase):
8902 (tests.enumArrayRefBase):
8903 (tests.emptyStruct):
8904 (tests.enumStructBase):
8905 (tests.enumNoMembers):
8906 (tests.simpleSwitch):
8907 (tests.exhaustiveUint8Switch):
8908 (tests.notQuiteExhaustiveUint8Switch):
8909 (tests.notQuiteExhaustiveUint8SwitchWithDefault):
8910 (tests.switchFallThrough):
8911 (tests.switchBreak):
8912 (tests.enumSwitchBreakExhaustive):
8913 (tests.enumSwitchBreakNotQuiteExhaustive):
8914 (tests.enumSwitchBreakNotQuiteExhaustiveWithDefault):
8915 (tests.simpleRecursiveStruct):
8916 (tests.mutuallyRecursiveStruct):
8917 (tests.mutuallyRecursiveStructWithPointersBroken):
8918 (tests.mutuallyRecursiveStructWithPointers):
8920 (tests.pointerToPointer):
8921 (tests.arrayRefToArrayRef):
8922 (tests.pointerGetter):
8924 (tests.setterWithMismatchedType):
8925 (tests.setterWithMatchedType):
8926 (tests.operatorWithUninferrableTypeVariable):
8927 (tests.operatorWithoutUninferrableTypeVariable):
8928 (tests.operatorCastWithUninferrableTypeVariable):
8929 (tests.operatorCastWithTypeVariableInferredFromReturnType):
8930 (tests.incWrongArgumentLength):
8931 (tests.decWrongArgumentLength):
8932 (tests.incWrongTypes):
8933 (tests.decWrongTypes):
8934 (tests.plusWrongArgumentLength):
8935 (tests.minusWrongArgumentLength):
8936 (tests.timesWrongArgumentLength):
8937 (tests.divideWrongArgumentLength):
8938 (tests.moduloWrongArgumentLength):
8939 (tests.bitAndWrongArgumentLength):
8940 (tests.bitOrWrongArgumentLength):
8941 (tests.bitXorWrongArgumentLength):
8942 (tests.lShiftWrongArgumentLength):
8943 (tests.rShiftWrongArgumentLength):
8944 (tests.bitNotWrongArgumentLength):
8945 (tests.equalsWrongArgumentLength):
8946 (tests.lessThanWrongArgumentLength):
8947 (tests.lessEqualWrongArgumentLength):
8948 (tests.greaterWrongArgumentLength):
8949 (tests.greaterEqualWrongArgumentLength):
8950 (tests.equalsWrongReturnType):
8951 (tests.notEqualsOverload):
8952 (tests.lessThanWrongReturnType):
8953 (tests.lessEqualWrongReturnType):
8954 (tests.greaterThanWrongReturnType):
8955 (tests.greaterEqualWrongReturnType):
8956 (tests.dotOperatorWrongArgumentLength):
8957 (tests.dotOperatorSetterWrongArgumentLength):
8958 (tests.loneSetterPointer):
8959 (tests.setterWithNoGetterOverload):
8960 (tests.setterWithNoGetterOverloadFixed):
8961 (tests.anderWithNothingWrong):
8962 (tests.anderWithWrongNumberOfArguments):
8963 (tests.anderDoesntReturnPointer):
8964 (tests.anderDoesntTakeReference):
8965 (tests.anderWithArrayRef):
8966 (tests.pointerIndexGetter):
8967 (tests.loneIndexSetter):
8968 (tests.notLoneIndexSetter):
8969 (tests.indexSetterWithMismatchedType):
8970 (tests.indexOperatorWrongArgumentLength):
8971 (tests.indexOperatorSetterWrongArgumentLength):
8972 (tests.loneIndexSetterPointer):
8973 (tests.indexSetterWithNoGetterOverload):
8974 (tests.indexSetterWithNoGetterOverloadFixed):
8975 (tests.indexAnderWithNothingWrong):
8976 (tests.indexAnderWithWrongNumberOfArguments):
8977 (tests.indexAnderDoesntReturnPointer):
8978 (tests.indexAnderDoesntTakeReference):
8979 (tests.indexAnderWithArrayRef):
8980 (tests.devicePtrPtr):
8981 (tests.threadgroupPtrPtr):
8982 (tests.constantPtrPtr):
8983 (tests.pointerIndexGetterInProtocol):
8984 (tests.loneIndexSetterInProtocol):
8985 (tests.notLoneIndexSetterInProtocol):
8986 (tests.indexSetterWithMismatchedTypeInProtocol):
8987 (tests.indexOperatorWrongArgumentLengthInProtocol):
8988 (tests.indexOperatorSetterWrongArgumentLengthInProtocol):
8989 (tests.loneIndexSetterPointerInProtocol):
8990 (tests.indexSetterWithNoGetterOverloadInProtocol):
8991 (tests.indexSetterWithNoGetterOverloadFixedInProtocol):
8992 (tests.indexAnderWithNothingWrongInProtocol):
8993 (tests.indexAnderWithWrongNumberOfArgumentsInProtocol):
8994 (tests.indexAnderDoesntReturnPointerInProtocol):
8995 (tests.indexAnderDoesntTakeReferenceInProtocol):
8996 (tests.indexAnderWithArrayRefInProtocol):
8998 (this.window.let._.of.doTest):
8999 (TEST_literalBool): Deleted.
9000 (TEST_identityBool): Deleted.
9001 (TEST_intSimpleMath): Deleted.
9002 (TEST_uintSimpleMath): Deleted.
9003 (TEST_uint8SimpleMath): Deleted.
9004 (TEST_equality): Deleted.
9005 (TEST_logicalNegation): Deleted.
9006 (TEST_notEquality): Deleted.
9007 (TEST_equalityTypeFailure): Deleted.
9009 (TEST_add1): Deleted.
9010 (TEST_simpleGeneric): Deleted.
9011 (TEST_nameResolutionFailure): Deleted.
9012 (TEST_simpleAssignment): Deleted.
9013 (TEST_simpleDefault): Deleted.
9014 (TEST_simpleDereference): Deleted.
9015 (TEST_dereferenceStore): Deleted.
9016 (TEST_simpleMakePtr): Deleted.
9017 (TEST_threadArrayLoad): Deleted.
9018 (TEST_threadArrayLoadIntLiteral): Deleted.
9019 (TEST_deviceArrayLoad): Deleted.
9020 (TEST_threadArrayStore): Deleted.
9021 (TEST_deviceArrayStore): Deleted.
9022 (TEST_deviceArrayStoreIntLiteral): Deleted.
9023 (TEST_simpleProtocol): Deleted.
9024 (TEST_typeMismatchReturn): Deleted.
9025 (TEST_simpleNoReturn): Deleted.
9026 (TEST_genericStructInstance): Deleted.
9027 (TEST_doubleGenericCallsDoubleGeneric): Deleted.
9028 (TEST_doubleGenericCallsSingleGeneric): Deleted.
9029 (TEST_dereferenceDefaultNull): Deleted.
9030 (TEST_dereferenceDefaultNullArrayRef): Deleted.
9031 (TEST_returnIntLiteralDouble): Deleted.
9032 (TEST_badIntLiteralForInt): Deleted.
9033 (TEST_passNullAndNotNullFullPoly): Deleted.
9034 (TEST_passNullAndNotNullFullPolyReverse): Deleted.
9035 (TEST_nullTypeVariableUnify.recurse): Deleted.
9036 (TEST_nullTypeVariableUnify.everyOrder): Deleted.
9037 (TEST_nullTypeVariableUnify.everyPair): Deleted.
9038 (TEST_nullTypeVariableUnify): Deleted.
9039 (TEST_simpleRecursion): Deleted.
9040 (TEST_protocolPolySigPolyDef): Deleted.
9041 (TEST_protocolDoublePolySigDoublePolyDef): Deleted.
9042 (TEST_protocolDoublePolySigDoublePolyDefExplicit): Deleted.
9043 (TEST_variableShadowing): Deleted.
9044 (TEST_ifStatement): Deleted.
9045 (TEST_ifElseStatement): Deleted.
9046 (TEST_ifElseIfStatement): Deleted.
9047 (TEST_ifElseIfElseStatement): Deleted.
9048 (TEST_returnIf): Deleted.
9049 (TEST_simpleWhile): Deleted.
9050 (TEST_protocolMonoPolySigDoublePolyDefExplicit): Deleted.
9051 (TEST_intOverloadResolution): Deleted.
9052 (TEST_intOverloadResolutionReverseOrder): Deleted.
9053 (TEST_intOverloadResolutionGeneric): Deleted.
9054 (TEST_intLiteralGeneric): Deleted.
9055 (TEST_intLiteralGenericWithProtocols): Deleted.
9056 (TEST_uintLiteralGeneric): Deleted.
9057 (TEST_uintLiteralGenericWithProtocols): Deleted.
9058 (TEST_intLiteralGenericSpecific): Deleted.
9059 (TEST_simpleConstexpr): Deleted.
9060 (TEST_break): Deleted.
9061 (TEST_forLoop): Deleted.
9062 (TEST_chainConstexpr): Deleted.
9063 (TEST_chainGeneric): Deleted.
9064 (TEST_chainStruct): Deleted.
9065 (TEST_chainStructNewlyValid): Deleted.
9066 (TEST_chainStructDevice): Deleted.
9067 (TEST_paramChainStructDevice): Deleted.
9068 (TEST_simpleProtocolExtends): Deleted.
9069 (TEST_protocolExtendsTwo): Deleted.
9070 (TEST_prefixPlusPlus): Deleted.
9071 (TEST_prefixPlusPlusResult): Deleted.
9072 (TEST_postfixPlusPlus): Deleted.
9073 (TEST_postfixPlusPlusResult): Deleted.
9074 (TEST_prefixMinusMinus): Deleted.
9075 (TEST_prefixMinusMinusResult): Deleted.
9076 (TEST_postfixMinusMinus): Deleted.
9077 (TEST_postfixMinusMinusResult): Deleted.
9078 (TEST_plusEquals): Deleted.
9079 (TEST_plusEqualsResult): Deleted.
9080 (TEST_minusEquals): Deleted.
9081 (TEST_minusEqualsResult): Deleted.
9082 (TEST_timesEquals): Deleted.
9083 (TEST_timesEqualsResult): Deleted.
9084 (TEST_divideEquals): Deleted.
9085 (TEST_divideEqualsResult): Deleted.
9086 (TEST_twoIntLiterals): Deleted.
9087 (TEST_unifyDifferentLiterals): Deleted.
9088 (TEST_buildArrayThenSumItUsingArrayReference): Deleted.
9089 (TEST_overrideSubscriptStruct): Deleted.
9090 (TEST_overrideSubscriptStructAndDoStores): Deleted.
9091 (TEST_overrideSubscriptStructAndUsePointers): Deleted.
9092 (TEST_overrideSubscriptStructAndUsePointersIncorrectly): Deleted.
9093 (TEST_makeArrayRefFromPointer): Deleted.
9094 (TEST_makeArrayRefFromArrayRef): Deleted.
9095 (TEST_nonArrayRefArrayLengthSucceed): Deleted.
9096 (TEST_nonArrayRefArrayLengthFail): Deleted.
9097 (TEST_simpleSetter): Deleted.
9098 (TEST_genericAccessors): Deleted.
9099 (TEST_bitSubscriptAccessor): Deleted.
9100 (TEST_nestedSubscriptLValueEmulationSimple): Deleted.
9101 (TEST_nestedSubscriptLValueEmulationGeneric): Deleted.
9102 (TEST_boolBitAnd): Deleted.
9103 (TEST_boolBitOr): Deleted.
9104 (TEST_boolBitXor): Deleted.
9105 (TEST_boolBitNot): Deleted.
9106 (TEST_intBitAnd): Deleted.
9107 (TEST_intBitOr): Deleted.
9108 (TEST_intBitXor): Deleted.
9109 (TEST_intBitNot): Deleted.
9110 (TEST_intLShift): Deleted.
9111 (TEST_intRShift): Deleted.
9112 (TEST_uintBitAnd): Deleted.
9113 (TEST_uintBitOr): Deleted.
9114 (TEST_uintBitXor): Deleted.
9115 (TEST_uintBitNot): Deleted.
9116 (TEST_uintLShift): Deleted.
9117 (TEST_uintRShift): Deleted.
9118 (TEST_uint8BitAnd): Deleted.
9119 (TEST_uint8BitOr): Deleted.
9120 (TEST_uint8BitXor): Deleted.
9121 (TEST_uint8BitNot): Deleted.
9122 (TEST_uint8LShift): Deleted.
9123 (TEST_uint8RShift): Deleted.
9124 (TEST_floatMath): Deleted.
9125 (TEST_booleanMath): Deleted.
9126 (TEST_typedefArray): Deleted.
9127 (TEST_shaderTypes): Deleted.
9128 (TEST_instantiateStructInStruct): Deleted.
9129 (TEST_instantiateStructInStructWithInt2): Deleted.
9130 (TEST_simpleEnum): Deleted.
9131 (TEST_enumWithManualValues): Deleted.
9132 (TEST_enumWithoutZero): Deleted.
9133 (TEST_enumConstexprGenericFunction): Deleted.
9134 (TEST_enumConstexprGenericStruct): Deleted.
9135 (TEST_trap): Deleted.
9136 (TEST_enumWithExplicitIntBase): Deleted.
9137 (TEST_enumWithUintBase): Deleted.
9138 (TEST_enumFloatBase): Deleted.
9139 (TEST_enumStructBase): Deleted.
9140 (TEST_simpleSwitch): Deleted.
9141 (TEST_exhaustiveUint8Switch): Deleted.
9142 (TEST_notQuiteExhaustiveUint8Switch): Deleted.
9143 (TEST_switchFallThrough): Deleted.
9144 (TEST_switchBreak): Deleted.
9145 (TEST_enumSwitchBreakExhaustive): Deleted.
9146 (TEST_enumSwitchBreakNotQuiteExhaustive): Deleted.
9147 (TEST_simpleRecursiveStruct): Deleted.
9148 (TEST_linkedList): Deleted.
9149 * WebGPUShadingLanguageRI/Type.js:
9150 (Type.prototype.get isArray):
9151 * WebGPUShadingLanguageRI/TypeRef.js:
9153 * WebGPUShadingLanguageRI/TypeVariableTracker.js:
9154 (TypeVariableTracker.prototype.set get return):
9155 (TypeVariableTracker.prototype.visitVariableRef):
9156 (TypeVariableTracker):
9157 * WebGPUShadingLanguageRI/Visitor.js:
9158 (Visitor.prototype.visitProtocolDecl):
9159 * WebGPUShadingLanguageRI/index.html:
9161 2017-09-22 Matt Lewis <jlewis3@apple.com>
9163 Unreviewed, rolling out r222394.
9165 This broke the Windows Debug Build.
9169 "Remove build-webkit's notion of feature flags having a
9171 https://bugs.webkit.org/show_bug.cgi?id=177338
9172 http://trac.webkit.org/changeset/222394
9174 2017-09-22 Tim Horton <timothy_horton@apple.com> and Michael Catanzaro <mcatanzaro@igalia.com>
9176 Remove build-webkit's notion of feature flags having a default value
9177 https://bugs.webkit.org/show_bug.cgi?id=177338
9179 Reviewed by Alex Christensen.
9181 Delegate feature flag default values to the build system.
9182 (FeatureDefines.xcconfig for Xcode, WebKitFeatures.cmake and Options*.cmake for CMake, and FeatureDefines.h for everyone)
9184 * BuildSlaveSupport/build.webkit.org-config/config.json:
9185 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
9187 Update GTK and WPE buildbot configuration to use --no-experimental-features on old stable
9188 bots instead of --default-cmake-features.
9190 * Scripts/build-webkit:
9191 (cMakeArgsFromFeatures):
9192 Default feature values to 'undef'.
9193 Remove the --default-cmake-features argument; it is now the default.
9194 Add --no-experimental-features to replace it.
9195 Stop printing the default feature flag value in the help.
9196 Avoid propagating undefined values to the build system;
9197 only mention flags that are overridden on the command line.
9199 This has the nice side effect of using the default CMake features
9200 for CMake builds, but still allowing toggling of them using the
9201 prettier --FEATURE and --no-FEATURE arguments.
9203 * Scripts/webkitdirs.pm:
9204 (generateBuildSystemFromCMakeProject):
9205 No longer need to suppress CMake warnings about unused arguments.
9207 * Scripts/webkitperl/FeatureList.pm:
9208 Remove the default values from the feature list.
9210 2017-09-21 Joseph Pecoraro <pecoraro@apple.com>
9212 Unreviewed, add the ability to skip a test262 test.
9214 * Scripts/run-jsc-stress-tests:
9215 Other handlers have :skip but a few didn't.
9217 2017-09-21 Ryan Haddad <ryanhaddad@apple.com>
9219 Change architecture for ios-ews queue to arm64.
9220 https://bugs.webkit.org/show_bug.cgi?id=177332
9222 Reviewed by Alexey Proskuryakov.
9224 * Scripts/webkitpy/common/config/ews.json:
9226 2017-09-21 Tim Horton <timothy_horton@apple.com>
9228 Use 'ninja' from the SDK if it exists
9229 https://bugs.webkit.org/show_bug.cgi?id=177330
9231 Reviewed by Alex Christensen.
9233 * Scripts/webkitdirs.pm:
9235 Check for ninja with xcrun in addition to commandExists() for Cocoa platforms.
9237 (generateBuildSystemFromCMakeProject):
9238 (canUseNinjaGenerator): Deleted.
9239 Remove canUseNinjaGenerator; as noted in bug 177057, the Ninja generator
9240 is available in all versions of CMake supported by WebKit.
9242 2017-09-21 Chris Dumez <cdumez@apple.com>
9244 Regression(r222308): new API tests are failing for !NETWORK_SESSION
9245 https://bugs.webkit.org/show_bug.cgi?id=177321
9247 Reviewed by Alex Christensen.
9249 Unskip API tests now that they pass everywhere.
9251 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
9254 2017-09-21 Filip Pizlo <fpizlo@apple.com>
9256 Unreviewed, fix ability to run tests in browser.
9258 * WebGPUShadingLanguageRI/Test.html:
9259 * WebGPUShadingLanguageRI/index.html:
9261 2017-09-21 Jonathan Bedard <jbedard@apple.com>
9263 webkitpy: Ignore failure to get updated selenium version
9264 https://bugs.webkit.org/show_bug.cgi?id=177205
9265 <rdar://problem/34531669>
9267 Reviewed by Lucas Forschler.
9269 Sometime asking PyPI for the latest version of Selenium fails. We should try and
9270 fallback to, at a minimum, version 3.5.0 or a newer installed version.
9272 * Scripts/webkitpy/thirdparty/__init__.py:
9273 (AutoinstallImportHook.greater_than_equal_to_version): Return true if the second
9274 version string is greater than or equal to the first version string.
9275 (AutoinstallImportHook._install_selenium): If we can't get the latest PyPI url,
9276 fallback to version 3.5.0 or a newer installed version.
9278 2017-09-21 Filip Pizlo <fpizlo@apple.com>
9280 WSL should have some post-instantiation type checking
9281 https://bugs.webkit.org/show_bug.cgi?id=177303
9283 Reviewed by Keith Miller.
9285 This patch removes the Primitive protocol! Yay!
9287 The Primitive protocol was an attempt to handle the fact that Metal wouldn't allow us to point a
9288 non-thread pointer at data structures that have pointers. This type checking rule interacts badly with
9289 generics. I was able to get it to mostly work by making Primitive into a dynamic protocol - a type
9290 belongs to it if it happens to be isPrimitive.
9292 But that was a mistake, since it makes it hard to create pointers that are generic over address space.
9293 Also, it's not an appropriate rule for targeting SPIR-V logical mode. That rule will be different, and
9294 possibly more complicated.
9296 All of these kinds of rules are easier to implement of we run them after instantiation, since then they
9297 don't get in the way of generics. That's what this patch does.
9299 This means that we get all of the same type checking power as before, and we still can catch the errors
9300 that Metal requires us to check for. It's easier to do those checks now.
9302 Finally, this removes the shader type checker's incomplete reimplementation of isPrimitive (which was
9303 called NonNumericSearcher). The shader type checker calls isPrimitive now.
9305 * WebGPUShadingLanguageRI/AddressSpace.js:
9306 (needsPrimitiveProtocol): Deleted.
9307 (protocolSuffix): Deleted.
9308 * WebGPUShadingLanguageRI/All.js:
9309 * WebGPUShadingLanguageRI/Checker.js:
9310 (Checker.prototype._checkShaderType):
9311 (Checker.prototype._checkShaderType.NonNumericSearcher): Deleted.
9312 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType): Deleted.
9313 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType): Deleted.
9314 (Checker.prototype.visitReferenceType): Deleted.
9315 * WebGPUShadingLanguageRI/FuncInstantiator.js:
9316 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
9317 * WebGPUShadingLanguageRI/Inline.js:
9319 * WebGPUShadingLanguageRI/Intrinsics.js:
9321 * WebGPUShadingLanguageRI/LateChecker.js: Added.
9323 (LateChecker.prototype.visitReferenceType):
9324 (LateChecker.prototype._checkShaderType):
9325 (LateChecker.prototype.visitFuncDef):
9326 * WebGPUShadingLanguageRI/LexerToken.js:
9327 (LexerToken.prototype.get isInternal): Deleted.
9328 * WebGPUShadingLanguageRI/NativeType.js:
9330 (NativeType.prototype.get name):
9331 (NativeType.prototype.get isPrimitive):
9332 (NativeType.prototype.set isPrimitive):
9333 (NativeType.prototype.toString):
9334 * WebGPUShadingLanguageRI/Parse.js:
9336 * WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js:
9337 (programWithUnnecessaryThingsRemoved):
9338 * WebGPUShadingLanguageRI/ProtocolDecl.js:
9339 * WebGPUShadingLanguageRI/ReferenceType.js:
9340 (ReferenceType.prototype.get elementType):
9341 (ReferenceType.prototype.get isPrimitive): Deleted.
9342 * WebGPUShadingLanguageRI/StandardLibrary.js:
9343 * WebGPUShadingLanguageRI/StatementCloner.js:
9344 (StatementCloner.prototype.visitNativeType):
9345 * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
9346 (synthesizeStructAccessors):
9347 * WebGPUShadingLanguageRI/Test.js:
9348 (TEST_passNullAndNotNullFullPoly):
9349 (TEST_passNullAndNotNullFullPolyReverse):
9350 (TEST_nullTypeVariableUnify):
9351 (TEST_chainStructNewlyValid):
9352 (TEST_chainStructDevice):
9353 (TEST_chainStructInvalid): Deleted.
9354 * WebGPUShadingLanguageRI/Type.js:
9355 (Type.prototype.get isPrimitive):
9357 2017-09-21 Chris Dumez <cdumez@apple.com>
9359 Unreviewed, temporarily disable new API tests introduced in r222308 until they pass on El Capitan
9361 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
9364 2017-09-21 Commit Queue <commit-queue@webkit.org>
9366 Unreviewed, rolling out r222272.
9367 https://bugs.webkit.org/show_bug.cgi?id=177316
9369 This patch broke builds on some Win EWS bots. (Requested by
9370 perarne on #webkit).
9374 "[Win] Cygwin 64-bit EWS process cannot find Visual Studio
9376 https://bugs.webkit.org/show_bug.cgi?id=177244
9377 http://trac.webkit.org/changeset/222272
9379 2017-09-21 Filip Pizlo <fpizlo@apple.com>
9381 Unreviewed, fix a bug in the interactive app that was introduced by bad merging.
9383 * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
9384 (FlattenedStructOffsetGatherer.prototype.visitTypeRef):
9385 (FlattenedStructOffsetGatherer):
9386 * WebGPUShadingLanguageRI/index.html:
9388 2017-09-20 Filip Pizlo <fpizlo@apple.com>
9390 WSL should support switch
9391 https://bugs.webkit.org/show_bug.cgi?id=176978
9393 Reviewed by Keith Miller.
9395 This adds fairly complete support for switch statements. This includes things like verifying
9396 whether or not a default statement is needed. This even works when the programmer lists all of
9397 the values of an integer type.
9399 To test that last part, this patch adds uint8 support. It's easy add it, but of course it
9400 meant adding a lot of tests.
9402 This also fixes enum bugs, since switch does things to enums that we previously didn't test.
9404 * WebGPUShadingLanguageRI/All.js:
9405 * WebGPUShadingLanguageRI/Checker.js:
9406 (Checker.prototype.visitSwitchStatement):
9407 * WebGPUShadingLanguageRI/EnumLiteral.js:
9408 (EnumLiteral.prototype.get valueForSelectedType):
9409 * WebGPUShadingLanguageRI/EnumType.js:
9410 (EnumType.prototype.allValues):
9411 (EnumType.prototype.valuesEqual):
9412 * WebGPUShadingLanguageRI/Evaluator.js:
9413 (Evaluator.prototype.visitSwitchStatement):
9414 * WebGPUShadingLanguageRI/Inliner.js:
9415 (Inliner.prototype.visitCallExpression):
9417 (Inliner.prototype.visitCastExpression): Deleted.
9418 * WebGPUShadingLanguageRI/Intrinsics.js:
9421 * WebGPUShadingLanguageRI/LoopChecker.js:
9423 (LoopChecker.prototype.visitFuncDef):
9424 (LoopChecker.prototype.visitWhileLoop):
9425 (LoopChecker.prototype.visitDoWhileLoop):
9426 (LoopChecker.prototype.visitForLoop):
9427 (LoopChecker.prototype.visitSwitchStatement):
9428 (LoopChecker.prototype.visitBreak):
9429 (LoopChecker.prototype.visitContinue):
9430 * WebGPUShadingLanguageRI/Node.js:
9431 (Node.prototype.commit):
9432 * WebGPUShadingLanguageRI/Parse.js:
9434 (parseSwitchStatement):
9438 * WebGPUShadingLanguageRI/Prepare.js:
9440 * WebGPUShadingLanguageRI/ReturnChecker.js:
9441 (ReturnChecker.prototype._mergeReturnStyle):
9442 (ReturnChecker.prototype.visitIfStatement):
9443 (ReturnChecker.prototype.visitWhileLoop):
9444 (ReturnChecker.prototype.visitDoWhileLoop):
9445 (ReturnChecker.prototype.visitForLoop):
9446 (ReturnChecker.prototype.visitSwitchStatement):
9447 (ReturnChecker.prototype.visitContinue):
9449 * WebGPUShadingLanguageRI/Rewriter.js:
9450 (Rewriter.prototype.visitSwitchStatement):
9451 (Rewriter.prototype.visitSwitchCase):
9452 * WebGPUShadingLanguageRI/StandardLibrary.js:
9456 * WebGPUShadingLanguageRI/SwitchCase.js: Added.
9458 (SwitchCase.prototype.get origin):
9459 (SwitchCase.prototype.get isDefault):
9460 (SwitchCase.prototype.get value):
9461 (SwitchCase.prototype.get body):
9462 (SwitchCase.prototype.toString):
9463 * WebGPUShadingLanguageRI/SwitchStatement.js: Added.
9465 (SwitchStatement.prototype.get origin):
9466 (SwitchStatement.prototype.get value):
9467 (SwitchStatement.prototype.add):
9468 (SwitchStatement.prototype.get switchCases):
9469 (SwitchStatement.prototype.toString):
9470 * WebGPUShadingLanguageRI/Test.html:
9471 * WebGPUShadingLanguageRI/Test.js:
9475 (TEST_uint8SimpleMath):
9484 (TEST_enumWithExplicitIntBase):
9485 (TEST_enumWithUintBase):
9486 (TEST_enumFloatBase):
9487 (TEST_enumStructBase):
9488 (TEST_simpleSwitch):
9489 (TEST_exhaustiveUint8Switch):
9490 (TEST_notQuiteExhaustiveUint8Switch):
9491 (TEST_switchFallThrough):
9493 (TEST_enumSwitchBreakExhaustive):
9494 (TEST_enumSwitchBreakNotQuiteExhaustive):
9496 * WebGPUShadingLanguageRI/UnificationContext.js:
9497 (UnificationContext):
9498 (UnificationContext.prototype.addExtraNode):
9499 (UnificationContext.prototype.get nodes):
9500 * WebGPUShadingLanguageRI/Visitor.js:
9501 (Visitor.prototype.visitProtocolDecl):
9502 * WebGPUShadingLanguageRI/index.html:
9504 2017-09-20 Filip Pizlo <fpizlo@apple.com>
9506 WSL needs a way to verify that structs are not cyclic
9507 https://bugs.webkit.org/show_bug.cgi?id=177044
9509 Reviewed by Myles Maxfield.
9511 This adds a recursive type checking phase. Even before adding this phase, the compiler would
9512 successfully detect recursive types - but at the cost of also rejecting programs that had
9513 recursive types indirectly through pointers. To make both things work, I had to change Visitor
9514 to no longer visit TypeRef.type by default. This resulted in some other changes in a few other
9515 parts of the code that previously relied on that behavior.
9517 * WebGPUShadingLanguageRI/All.js:
9518 * WebGPUShadingLanguageRI/CheckRecursiveTypes.js: Added.
9519 (checkRecursiveTypes):
9520 * WebGPUShadingLanguageRI/Checker.js:
9521 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType):
9522 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType):
9523 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitTypeRef):
9524 (Checker.prototype._checkShaderType.NonNumericSearcher):
9525 (Checker.prototype._checkShaderType):
9526 (Checker.prototype.visitTypeRef):
9527 * WebGPUShadingLanguageRI/NameResolver.js:
9528 (NameResolver.prototype.visitProtocolDecl):
9529 * WebGPUShadingLanguageRI/Prepare.js:
9531 * WebGPUShadingLanguageRI/RecursiveTypeChecker.js: Added.
9532 (RecursiveTypeChecker):
9533 (RecursiveTypeChecker.prototype.visitFuncDef):
9534 (RecursiveTypeChecker.prototype.visitNativeFunc):
9535 (RecursiveTypeChecker.prototype.visitStructType):
9536 (RecursiveTypeChecker.prototype.visitReferenceType):
9537 (RecursiveTypeChecker.prototype.visitTypeRef):
9538 * WebGPUShadingLanguageRI/StructLayoutBuilder.js:
9539 (StructLayoutBuilder.prototype.visitTypeRef):
9540 (StructLayoutBuilder):
9541 * WebGPUShadingLanguageRI/Test.html:
9542 * WebGPUShadingLanguageRI/Test.js:
9543 (TEST_simpleRecursiveStruct):
9544 * WebGPUShadingLanguageRI/TypeDefResolver.js:
9545 (TypeDefResolver.prototype.visitTypeRef):
9547 * WebGPUShadingLanguageRI/Visitor.js:
9548 (Visitor.prototype.visitProtocolDecl):
9549 * WebGPUShadingLanguageRI/index.html:
9551 2017-09-21 Ryan Haddad <ryanhaddad@apple.com>
9553 Update TestResultsServer for iOS 11 queues.
9554 https://bugs.webkit.org/show_bug.cgi?id=177285
9556 Reviewed by Alexey Proskuryakov.
9558 * TestResultServer/static-dashboards/builders.jsonp:
9560 2017-09-21 Alex Christensen <achristensen@webkit.org>
9562 REGRESSION(r221465) WKWebViews without WebGL delegate callbacks crash when WebGL contexts are created
9563 https://bugs.webkit.org/show_bug.cgi?id=177306
9564 <rdar://problem/34351988>
9566 Reviewed by Chris Dumez.
9568 * TestWebKitAPI/Tests/WebKitCocoa/WebGLPolicy.mm:
9569 (-[WebGLTestDelegate webView:startURLSchemeTask:]):
9570 (-[DelegateWithoutWebGL webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
9573 2017-09-20 Joseph Pecoraro <pecoraro@apple.com>
9575 Update test262 tests
9576 https://bugs.webkit.org/show_bug.cgi?id=177220
9578 Reviewed by Saam Barati and Yusuke Suzuki.
9580 * Scripts/import-test262-tests:
9581 - better detect upstream git repository url from import location
9582 - update JSTest test262 resources when importing from repository
9583 - take seconds instead of 20+ minutes to write yaml with --failures
9584 - update "negative" command to only include just the exception type
9586 2017-09-20 Chris Dumez <cdumez@apple.com>
9588 [WK2] Add API to get the redirect chain of a WKDownload
9589 https://bugs.webkit.org/show_bug.cgi?id=176628
9590 <rdar://problem/34338279>
9592 Reviewed by Alex Christensen.
9594 Add API test coverage for the 2 cases:
9595 1. Download started as a download and is redirected while
9597 2. Download started as a load and was redirected during the
9600 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
9601 (-[RedirectedDownloadDelegate _download:didReceiveServerRedirectToURL:]):
9602 (-[RedirectedDownloadDelegate _downloadDidFinish:]):
9605 2017-09-20 Alex Christensen <achristensen@webkit.org>
9607 Add infrastructure for adding custom headers to requests per website
9608 https://bugs.webkit.org/show_bug.cgi?id=177255
9610 Reviewed by Geoffrey Garen.
9612 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
9613 * TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp: Added.
9614 (shouldRemainUnchanged):
9618 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
9621 2017-09-20 Daniel Bates <dabates@apple.com>
9623 Spelling and grammar dots should not overlap
9624 https://bugs.webkit.org/show_bug.cgi?id=177265
9625 <rdar://problem/34556424>
9627 Reviewed by David Hyatt.
9629 Add unit tests for the subdivision algorithm.
9631 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
9632 * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp: Added.
9633 (WebCore::operator<<):
9634 (WebCore::operator==):
9635 (TestWebKitAPI::TEST):
9637 2017-09-20 Filip Pizlo <fpizlo@apple.com>
9639 WSL should not type-check functions in the standard library that it does not use
9640 https://bugs.webkit.org/show_bug.cgi?id=177269
9642 Reviewed by JS Bastien.
9644 Once we added all of the swizzling operators, the size of the standard library ballooned to the point
9645 where it's just not practical to compile anything anymore. If you want to compile
9646 "int foo(int x) { return x}" then it will take some ridiculous amount of time (many seconds) because WSL
9647 will have to type check all of those swizzling operators.
9649 This change makes it so that after parsing the whole program, we remove the things that we aren't using.
9650 We can make a really good estimate of what we need even before doing any name resolution. In practice,
9651 this change removes almost all of the things from Program before we get to the hard work of type
9652 checking. That's true because the standard library contains _many_ things and you'd have to try very
9653 hard to use all of them.
9655 This is a 13x speed-up for Test.js. It went from 155 seconds to 12 seconds on my machine.
9657 * WebGPUShadingLanguageRI/All.js:
9658 * WebGPUShadingLanguageRI/ConstexprTypeParameter.js:
9659 (ConstexprTypeParameter.prototype.get origin):
9660 * WebGPUShadingLanguageRI/Intrinsics.js:
9661 * WebGPUShadingLanguageRI/Lexer.js:
9663 (Lexer.prototype.get originKind):
9664 * WebGPUShadingLanguageRI/LexerToken.js:
9665 (LexerToken.prototype.get lexer):
9666 (LexerToken.prototype.get origin):
9667 (LexerToken.prototype.get originKind):
9668 (LexerToken.prototype.get isInternal):
9669 * WebGPUShadingLanguageRI/NameContext.js:
9671 (NameContext.prototype.add):
9672 (NameContext.prototype.get let):
9673 (NameContext.prototype.mapFor): Deleted.
9674 * WebGPUShadingLanguageRI/NameFinder.js: Added.
9676 (NameFinder.get worklist):
9677 * WebGPUShadingLanguageRI/NameResolver.js:
9678 (NameResolver.prototype.visitProtocolDecl):
9679 * WebGPUShadingLanguageRI/OriginKind.js: Added.
9681 * WebGPUShadingLanguageRI/Prepare.js:
9683 * WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js: Added.
9684 (programWithUnnecessaryThingsRemoved):
9685 * WebGPUShadingLanguageRI/Test.html:
9686 * WebGPUShadingLanguageRI/Test.js:
9688 * WebGPUShadingLanguageRI/index.html:
9690 2017-09-20 Alex Christensen <achristensen@webkit.org>
9692 Remove ActionType::CSSDisplayNoneStyleSheet
9693 https://bugs.webkit.org/show_bug.cgi?id=177275
9695 Reviewed by Andy Estes.
9697 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
9698 (WebCore::ContentExtensions::operator<<):
9699 (TestWebKitAPI::testRequest):
9700 (TestWebKitAPI::TEST_F):
9702 2017-09-20 Jonathan Bedard <jbedard@apple.com>
9704 Device iOS 11 builds fail with FileProvider linker errors
9705 https://bugs.webkit.org/show_bug.cgi?id=177272
9706 <rdar://problem/34557680>
9708 Reviewed by David Kilzer.
9710 For iOS device and simulator, the SYSTEM_LIBRARY_DIR should never
9711 be on the framework search path as neither platform should ever link
9712 with Mac frameworks.
9714 * DumpRenderTree/mac/Configurations/Base.xcconfig:
9715 * WebKitTestRunner/Configurations/Base.xcconfig:
9717 2017-09-20 Alex Christensen <achristensen@webkit.org>
9719 Remove ActionType::InvalidAction
9720 https://bugs.webkit.org/show_bug.cgi?id=177262
9722 Reviewed by Tim Horton.
9724 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
9725 (WebCore::ContentExtensions::operator<<):
9727 2017-09-20 Myles C. Maxfield <mmaxfield@apple.com>
9729 Make a playground where people can try WSL
9730 https://bugs.webkit.org/show_bug.cgi?id=177125
9732 Reviewed by Filip Pizlo.
9734 This patch creates a webpage, index.html, which lets users type in a WSL program and
9735 run it, and see the results.
9737 * WebGPUShadingLanguageRI/All.js:
9738 * WebGPUShadingLanguageRI/CallFunction.js:
9740 * WebGPUShadingLanguageRI/Checker.js:
9742 (Checker.prototype._checkShaderType.NonNumericSearcher):
9743 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType):
9744 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType):
9745 (Checker.prototype._checkShaderType):
9746 (Checker.prototype.visitFuncDef):
9747 (Checker.prototype._requireBool):
9748 * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js: Copied from Tools/WebGPUShadingLanguageRI/CallFunction.js.
9749 (FlattenedStructOffsetGatherer):
9750 (FlattenedStructOffsetGatherer.prototype.get result):
9751 (FlattenedStructOffsetGatherer.prototype.visitReferenceType):
9752 (FlattenedStructOffsetGatherer.prototype.visitField):
9753 (FlattenedStructOffsetGatherer.prototype.visitNativeType):
9754 * WebGPUShadingLanguageRI/Func.js:
9755 (Func.prototype.toDeclString):
9756 * WebGPUShadingLanguageRI/Inline.js:
9757 (resolveInlinedFunction):
9758 * WebGPUShadingLanguageRI/NameContext.js:
9759 (NameContext.prototype.get let):
9760 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
9761 (resolveOverloadImpl):
9762 * WebGPUShadingLanguageRI/StandardLibrary.js:
9763 * WebGPUShadingLanguageRI/Test.html:
9764 * WebGPUShadingLanguageRI/Test.js:
9766 * WebGPUShadingLanguageRI/index.html: Added.
9768 2017-09-20 Myles C. Maxfield <mmaxfield@apple.com>
9770 [WSL] Restrict vertex and fragment entry points according to WSL.md
9771 https://bugs.webkit.org/show_bug.cgi?id=177253
9773 Reviewed by Filip Pizlo.
9775 Entry points can't have template arguments, and their argument/return types need to be restricted.
9777 * WebGPUShadingLanguageRI/Checker.js:
9779 (Checker.prototype._checkShaderType.NonNumericSearcher):
9780 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitArrayRefType):
9781 (Checker.prototype._checkShaderType.NonNumericSearcher.prototype.visitPtrType):
9782 (Checker.prototype._checkShaderType):
9783 (Checker.prototype.visitFuncDef):
9784 (Checker.prototype._requireBool):
9785 * WebGPUShadingLanguageRI/Func.js:
9786 (Func.prototype.toDeclString):
9787 * WebGPUShadingLanguageRI/Test.js:
9790 2017-09-20 Per Arne Vollan <pvollan@apple.com>
9792 [Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
9793 https://bugs.webkit.org/show_bug.cgi?id=177244
9795 Reviewed by Alex Christensen.
9797 The 64-bit EWS shell process should try to find Visual Studio in the 32-bit program files folder.
9799 * EWSTools/start-queue-win.sh:
9801 2017-09-20 Myles C. Maxfield <mmaxfield@apple.com>
9803 Create vector swizzle operators in WSL's standard library
9804 https://bugs.webkit.org/show_bug.cgi?id=177116
9806 Reviewed by Filip Pizlo.
9808 Because there are 481 possible swizzling operators, StandardLibrary.js generates them
9809 instead of including them by hand.
9811 Adding so many functions slows down the compiler quite a bit.
9813 * WebGPUShadingLanguageRI/Prepare.js:
9815 * WebGPUShadingLanguageRI/StandardLibrary.js:
9819 2017-09-20 Ms2ger <Ms2ger@igalia.com>
9821 [WPE] Update fontconfig to 2.12.4.
9822 https://bugs.webkit.org/show_bug.cgi?id=177228
9824 Reviewed by Carlos Garcia Campos.
9826 * wpe/jhbuild.modules:
9827 * wpe/patches/fontconfig-avoid-conflicts-with-integer-width-macros-from-TS-18.patch: Removed.
9829 2017-09-19 Myles C. Maxfield <mmaxfield@apple.com>
9831 WSL should be able to trap when something fatal happens
9832 https://bugs.webkit.org/show_bug.cgi?id=177110
9834 Reviewed by Filip Pizlo.
9836 WSL programs can include a statement "trap;" which causes the entry
9837 point to immediately return the default value of its return type.
9838 This is implemented by throw/catch and populateDefaultValue().
9840 * WebGPUShadingLanguageRI/All.js:
9841 * WebGPUShadingLanguageRI/EvaluationCommon.js:
9842 * WebGPUShadingLanguageRI/Evaluator.js:
9843 (Evaluator.prototype.visitTrapStatement):
9844 * WebGPUShadingLanguageRI/Parse.js:
9846 * WebGPUShadingLanguageRI/ReturnChecker.js:
9847 (ReturnChecker.prototype.visitTrapStatement):
9848 * WebGPUShadingLanguageRI/Rewriter.js:
9849 (Rewriter.prototype.visitTrapStatement):
9850 * WebGPUShadingLanguageRI/StandardLibrary.js:
9851 * WebGPUShadingLanguageRI/Test.html:
9852 * WebGPUShadingLanguageRI/Test.js:
9853 * WebGPUShadingLanguageRI/TrapStatement.js: Copied from Tools/WebGPUShadingLanguageRI/EvaluationCommon.js.
9855 (TrapStatement.prototype.get origin):
9856 (TrapStatement.prototype.toString):
9857 * WebGPUShadingLanguageRI/Visitor.js:
9858 (Visitor.prototype.visitProtocolDecl):
9860 2017-09-19 Ryan Haddad <ryanhaddad@apple.com>
9862 Unreviewed follow-up to r222229, remove invalid triggers.
9864 * BuildSlaveSupport/build.webkit.org-config/config.json:
9866 2017-09-19 Simon Fraser <simon.fraser@apple.com>
9868 tiled-drawing/tiled-backing-in-window.html fails on Retina displays
9869 https://bugs.webkit.org/show_bug.cgi?id=177113
9871 Reviewed by Tim Horton.
9873 This test removes the view from the window, and then dumps the layer tree, at which point
9874 some layers would report a contentsScale of 2 on Retina displays.
9876 This occurs because WebKitTestRunner overrides the default device scale factor on NSWindow,
9877 but windowless views fall back to [NSScreen mainScreen].backingScaleFactor (in WebViewImpl::intrinsicDeviceScaleFactor()).
9879 Fix by having PlatformWebView::changeWindowScaleIfNeeded() call -_setOverrideDeviceScaleFactor: on the view.
9881 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
9882 (WTR::PlatformWebView::changeWindowScaleIfNeeded):
9884 2017-09-19 Wenson Hsieh <wenson_hsieh@apple.com>
9886 REGRESSION (r215613): Incorrect corners clipping with border-radius
9887 https://bugs.webkit.org/show_bug.cgi?id=176498
9888 <rdar://problem/34112607>
9890 Reviewed by Tim Horton.
9892 Add WebCore API tests for RoundedRect::contains().
9894 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
9895 * TestWebKitAPI/Tests/WebCore/RoundedRectTests.cpp: Added.
9896 (TestWebKitAPI::layoutRect):
9897 (TestWebKitAPI::TEST):
9899 2017-09-19 Youenn Fablet <youenn@apple.com>
9901 Allow WTF::map to use any class that is iterable and has a size getter
9902 https://bugs.webkit.org/show_bug.cgi?id=177026
9904 Reviewed by Darin Adler.
9906 * TestWebKitAPI/Tests/WTF/Vector.cpp:
9907 (TestWebKitAPI::TEST):
9909 2017-09-19 Ryan Haddad <ryanhaddad@apple.com>
9911 Update bot configuration for iOS 11.
9912 https://bugs.webkit.org/show_bug.cgi?id=177165
9914 Reviewed by Alexey Proskuryakov.
9916 * BuildSlaveSupport/build.webkit.org-config/config.json:
9917 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
9918 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
9919 (BubbleQueueServer):
9920 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
9921 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
9923 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
9924 (table.queue-grid tr.platform.ios-simulator-10 img.logo): Deleted.
9925 (table.queue-grid tr.platform.ios-10 img.logo): Deleted.
9926 * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
9927 (_should_file_trigger_build):
9928 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
9930 (ShouldBuildTest.test_should_build):
9932 2017-09-19 Filip Pizlo <fpizlo@apple.com>
9934 Primitive protocol should have capital name
9935 https://bugs.webkit.org/show_bug.cgi?id=177097
9937 Reviewed by JF Bastien.
9939 As soon as I started programming in WSL, I found that I preferred to capitalize protocol names. So, my
9940 early decision to call the primitive protocol "primitive" instead of "Primitive" seems absurd now. This
9941 change reverses that decision.
9943 Aesthetically, this is a slight improvement. For example:
9945 struct Bar<T:Primitive> {
9949 This makes more sense since all of the non-keyword type identifiers are capital.
9951 The one place where this is an aesthetic regression is native primitive typedefs, which now look like:
9953 native Primitive typedef bool;
9955 I'm happy with that tradeoff, since native typedefs are only in the standard library. Users don't see
9958 * WebGPUShadingLanguageRI/AddressSpace.js:
9960 * WebGPUShadingLanguageRI/Intrinsics.js:
9962 * WebGPUShadingLanguageRI/NativeType.js:
9963 (NativeType.prototype.toString):
9965 * WebGPUShadingLanguageRI/Parse.js:
9967 * WebGPUShadingLanguageRI/StandardLibrary.js:
9968 * WebGPUShadingLanguageRI/Test.js:
9969 (TEST_passNullAndNotNullFullPoly):
9970 (TEST_passNullAndNotNullFullPolyReverse):
9972 2017-09-18 Filip Pizlo <fpizlo@apple.com>
9974 Cannot put typedefs of templated structs inside structs
9975 https://bugs.webkit.org/show_bug.cgi?id=177123
9977 Reviewed by Michael Saboff.
9979 Ever since I wrote the generic type instantiation code in WSL, it had a bizarre stink to it. I
9980 did not know what it was, until I met this test case:
9982 struct Foo { int2 x; }
9984 The problem was that Type has a getter called instantiatedType, which invoked
9985 InstantiateImmediates. That's great. Where we went wrong was that TypeRef overrode
9986 instantiatedType, and then InstantiateImmediates called TypeRef.instantiatedType from its
9987 visitTypeRef. What a mess. None of that was necessary for anything, and it was just wrong. This
9988 patch fixes it so that:
9990 - Type has an instantiatedType getter, which does InstantiateImmediates. I didn't change this.
9991 This was the only part of the status quo that really made sense.
9993 - TypeRef no longer overrides instantiatedType.
9995 - InstantianteImmediates.prototype.visitTypeRef now does what TypeRef's instantiatedType would
9998 And voila! This test case passes and so do all of the other test cases.
10000 The reason why that specific test case did not work was that the use of a TypeDef (int2) for
10001 a generic type instantiation (vec2<int>) caused there to be two TypeRef's in a row, sorta like
10002 this, if we could use wrap() to denote a TypeRef that just wrapped another type:
10006 We would call instantiatedType on this monstrosity. Since TypeRef overrode instantiatedType,
10007 we would stop there because that TypeRef has no type arguments - it's just a wrapper. Well,
10008 actually, we'd do something a bit stranger than stopping there - there's more to the story -
10009 but the effect was the same. Now we do InstantiateImmediates, which recursively builds a new
10010 type. This chews through the wrapper and then instantiates the wrapped type, as we want it to.
10011 Also, this approach no longer has the stink. instantiatedType isn't overriden by anyone
10014 * WebGPUShadingLanguageRI/Checker.js:
10015 * WebGPUShadingLanguageRI/InstantiateImmediates.js:
10016 (InstantiateImmediates.prototype.visitTypeRef):
10017 (InstantiateImmediates.prototype.visitReferenceType): Deleted.
10018 * WebGPUShadingLanguageRI/Test.js:
10019 (TEST_instantiateStructInStructWithInt2):
10020 * WebGPUShadingLanguageRI/TypeRef.js:
10022 (TypeRef.prototype.setTypeAndArguments):
10023 (TypeRef.prototype.toString):
10025 (TypeRef.prototype.get instantiatedType): Deleted.
10027 2017-09-19 Per Arne Vollan <pvollan@apple.com>
10029 [Win] WebKit fails to build with 64-bit Perl.
10030 https://bugs.webkit.org/show_bug.cgi?id=177106
10032 Reviewed by Brent Fulgham.
10034 Visual Studio is installed in the 32-bit program files folder.
10036 * Scripts/webkitdirs.pm:
10037 (programFilesPathX86):
10038 (visualStudioInstallDir):
10039 (msBuildInstallDir):
10041 2017-09-18 Filip Pizlo <fpizlo@apple.com>
10043 [WSL] Cannot put templated structs inside structs
10044 https://bugs.webkit.org/show_bug.cgi?id=177120
10046 Reviewed by Myles Maxfield.
10048 It turns out that we still need to instantiate structs even if not passing type arguments,
10049 since its fields may need to be instantiated.
10051 This makes Myles's test case pass. When writing the test case, I encountered parser bugs, and
10054 * WebGPUShadingLanguageRI/CallFunction.js:
10056 * WebGPUShadingLanguageRI/Checker.js:
10057 (Checker.prototype.visitReferenceType):
10058 * WebGPUShadingLanguageRI/FuncInstantiator.js:
10059 (FuncInstantiator.prototype.getUnique):
10060 (FuncInstantiator):
10061 * WebGPUShadingLanguageRI/Parse.js:
10062 (parseSuffixOperator):
10063 (parsePossibleSuffix):
10064 (parsePostIncrement):
10065 * WebGPUShadingLanguageRI/StructType.js:
10066 (StructType.prototype.instantiate):
10067 * WebGPUShadingLanguageRI/Test.js:
10070 (TEST_instantiateStructInStruct):
10071 * WebGPUShadingLanguageRI/TypeRef.js:
10072 (TypeRef.prototype.get instantiatedType):
10073 (TypeRef.prototype.get isPrimitive):
10075 2017-09-18 Filip Pizlo <fpizlo@apple.com>
10077 WSL should support enum
10078 https://bugs.webkit.org/show_bug.cgi?id=176977
10080 Reviewed by Myles Maxfield.
10082 This implements enum. Enums members are referenced Java-style. For example, if we have an enum like:
10089 Then you refer to the members by saying Bank.GP and Bank.FP.
10091 Also adds a hack that makes operator- on a literal fold the literal. This fixes two issues:
10093 - Lets you use negative literals in constexprs.
10094 - Means that negative literals also get literal type unification.
10096 WSL's constexpr support is really thin, but I think it's all we really need for now.
10098 * WebGPUShadingLanguageRI/All.js:
10099 * WebGPUShadingLanguageRI/Checker.js:
10100 (Checker.prototype.visitEnumType):
10101 (Checker.prototype.visitEnumLiteral):
10102 * WebGPUShadingLanguageRI/ConstexprFolder.js: Added.
10103 (ConstexprFolder.prototype.visitCallExpression):
10104 (ConstexprFolder.prototype.visitTypeOrVariableRef):
10106 * WebGPUShadingLanguageRI/CreateLiteral.js:
10107 (createLiteral.GenericLiteral.prototype.get valueForSelectedType):
10108 (createLiteral.GenericLiteral.prototype.get negConstexpr):
10109 * WebGPUShadingLanguageRI/DoubleLiteral.js:
10110 (let.DoubleLiteral.createLiteral.negConstexpr):
10111 * WebGPUShadingLanguageRI/EBufferBuilder.js:
10112 (EBufferBuilder.prototype.visitEnumLiteral):
10113 * WebGPUShadingLanguageRI/EnumLiteral.js: Added.
10115 (EnumLiteral.prototype.get member):
10116 (EnumLiteral.prototype.get type):
10117 (EnumLiteral.prototype.get isConstexpr):
10118 (EnumLiteral.prototype.unifyImpl):
10119 (EnumLiteral.prototype.toString):
10120 * WebGPUShadingLanguageRI/EnumMember.js: Added.
10122 (EnumMember.prototype.get origin):
10123 (EnumMember.prototype.get name):
10124 (EnumMember.prototype.toString):
10125 * WebGPUShadingLanguageRI/EnumType.js: Added.
10127 (EnumType.prototype.add):
10128 (EnumType.prototype.get origin):
10129 (EnumType.prototype.get name):
10130 (EnumType.prototype.get baseType):
10131 (EnumType.prototype.get memberNames):
10132 (EnumType.prototype.memberByName):
10133 (EnumType.prototype.get members):
10134 (EnumType.prototype.get memberMap):
10135 (EnumType.prototype.get isPrimitive):
10136 (EnumType.prototype.populateDefaultValue):
10137 (EnumType.prototype.get size):
10138 (EnumType.prototype.toString):
10139 * WebGPUShadingLanguageRI/Evaluator.js:
10140 (Evaluator.prototype.visitGenericLiteral):
10141 (Evaluator.prototype.visitEnumLiteral):
10142 * WebGPUShadingLanguageRI/FloatLiteral.js:
10143 (let.FloatLiteral.createLiteral.negConstexpr):
10144 * WebGPUShadingLanguageRI/FoldConstexprs.js: Added.
10146 * WebGPUShadingLanguageRI/IntLiteral.js:
10147 (let.IntLiteral.createLiteral.negConstexpr):
10148 * WebGPUShadingLanguageRI/Intrinsics.js:
10150 * WebGPUShadingLanguageRI/NameResolver.js:
10151 (NameResolver.prototype.visitProtocolDecl):
10152 * WebGPUShadingLanguageRI/Parse.js:
10154 (parsePossibleSuffix):
10158 * WebGPUShadingLanguageRI/Prepare.js:
10160 * WebGPUShadingLanguageRI/Rewriter.js:
10161 (Rewriter.prototype.visitEnumType):
10162 (Rewriter.prototype.visitEnumMember):
10163 (Rewriter.prototype.visitEnumLiteral):
10164 * WebGPUShadingLanguageRI/StructType.js:
10165 (StructType.prototype.get origin):
10166 (StructType.prototype.instantiate):
10167 * WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js: Added.
10168 (synthesizeEnumFunctions):
10169 * WebGPUShadingLanguageRI/Test.html:
10170 * WebGPUShadingLanguageRI/Test.js:
10173 (TEST_enumWithManualValues):
10174 (TEST_enumWithoutZero):
10175 (TEST_enumConstexprGenericFunction):
10176 (TEST_enumConstexprGenericStruct):
10177 * WebGPUShadingLanguageRI/UintLiteral.js:
10178 (let.UintLiteral.createLiteral.negConstexpr):
10179 * WebGPUShadingLanguageRI/Visitor.js:
10180 (Visitor.prototype.visitProtocolDecl):
10182 2017-09-18 Filip Pizlo <fpizlo@apple.com>
10184 WSL prepare() should cache the parsed standard library
10185 https://bugs.webkit.org/show_bug.cgi?id=177118
10187 Reviewed by Myles Maxfield.
10189 The execution time of Test.js is too damn high!
10191 So I made it 2x faster by caching the parsed standard library.
10193 * WebGPUShadingLanguageRI/All.js:
10194 * WebGPUShadingLanguageRI/CloneProgram.js: Added.
10196 * WebGPUShadingLanguageRI/Prepare.js:
10198 (prepare): Deleted.
10199 * WebGPUShadingLanguageRI/StatementCloner.js: Added.
10200 (StatementCloner.prototype.visitFuncDef):
10201 (StatementCloner.prototype.visitNativeFunc):
10202 (StatementCloner.prototype.visitNativeType):
10203 (StatementCloner.prototype.visitTypeDef):
10204 (StatementCloner.prototype.visitStructType):
10205 (StatementCloner.prototype.visitConstexprTypeParameter):
10206 (StatementCloner.prototype.visitProtocolDecl):
10207 * WebGPUShadingLanguageRI/Test.html:
10208 * WebGPUShadingLanguageRI/Test.js:
10211 2017-09-18 Michael Catanzaro <mcatanzaro@igalia.com>
10213 [CMake] Rename WebKit target to WebKitLegacy and rename WebKit2 target to WebKit
10214 https://bugs.webkit.org/show_bug.cgi?id=174558
10216 Reviewed by Alex Christensen.
10218 With help from Stephan Szabo, thanks!
10220 * DumpRenderTree/PlatformMac.cmake:
10221 * DumpRenderTree/PlatformWin.cmake:
10222 * DumpRenderTree/win/AccessibilityControllerWin.cpp:
10223 * DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
10224 * DumpRenderTree/win/DumpRenderTree.cpp:
10225 * DumpRenderTree/win/EditingDelegate.h:
10226 * DumpRenderTree/win/EventSender.cpp:
10227 * DumpRenderTree/win/FrameLoadDelegate.cpp:
10228 * DumpRenderTree/win/FrameLoadDelegate.h:
10229 * DumpRenderTree/win/GCControllerWin.cpp:
10230 * DumpRenderTree/win/HistoryDelegate.cpp:
10231 * DumpRenderTree/win/HistoryDelegate.h:
10232 * DumpRenderTree/win/PolicyDelegate.h:
10233 * DumpRenderTree/win/ResourceLoadDelegate.cpp:
10234 * DumpRenderTree/win/ResourceLoadDelegate.h:
10235 * DumpRenderTree/win/TestRunnerWin.cpp:
10236 * DumpRenderTree/win/TextInputControllerWin.cpp:
10237 * DumpRenderTree/win/UIDelegate.cpp:
10238 * DumpRenderTree/win/UIDelegate.h:
10239 * DumpRenderTree/win/WorkQueueItemWin.cpp:
10240 * MiniBrowser/gtk/CMakeLists.txt:
10241 * MiniBrowser/mac/CMakeLists.txt:
10242 * MiniBrowser/win/AccessibilityDelegate.cpp:
10243 * MiniBrowser/win/AccessibilityDelegate.h:
10244 * MiniBrowser/win/CMakeLists.txt:
10245 * MiniBrowser/win/Common.cpp:
10246 * MiniBrowser/win/DOMDefaultImpl.h:
10247 * MiniBrowser/win/MiniBrowser.cpp:
10248 * MiniBrowser/win/MiniBrowser.h:
10249 * MiniBrowser/win/MiniBrowserWebHost.cpp:
10250 * MiniBrowser/win/MiniBrowserWebHost.h:
10251 * MiniBrowser/win/PageLoadTestClient.h:
10252 * MiniBrowser/win/PrintWebUIDelegate.cpp:
10253 * MiniBrowser/win/PrintWebUIDelegate.h:
10254 * MiniBrowser/win/ResourceLoadDelegate.cpp:
10255 * MiniBrowser/win/ResourceLoadDelegate.h:
10256 * MiniBrowser/win/WebDownloadDelegate.h:
10257 * TestWebKitAPI/CMakeLists.txt:
10258 * TestWebKitAPI/PlatformGTK.cmake:
10259 * TestWebKitAPI/PlatformWPE.cmake:
10260 * TestWebKitAPI/PlatformWin.cmake:
10261 * TestWebKitAPI/Tests/WebKitLegacy/win/ScaleWebView.cpp:
10262 * TestWebKitAPI/Tests/WebKitLegacy/win/WebViewDestruction.cpp:
10263 * TestWebKitAPI/glib/CMakeLists.txt:
10264 * WebKitTestRunner/CMakeLists.txt:
10265 * WebKitTestRunner/PlatformGTK.cmake:
10266 * WebKitTestRunner/PlatformWPE.cmake:
10268 2017-09-18 Myles C. Maxfield <mmaxfield@apple.com>
10270 Fill out vector types in WSL's standard library
10271 https://bugs.webkit.org/show_bug.cgi?id=177063
10273 Reviewed by Filip Pizlo.
10275 Now that we have struct types, operator&[], and operator==, fill out a few of the builtin vector types in the
10276 standard library. This patch creates three new types: vec2, vec3, and vec4, each of which takes a type
10277 argument, so you can say vec4<float>. This patch also adds typedefs of int4, uint4, float4, and double4 (along
10278 with their 2- and 3- length siblings).
10280 This patch does not include the swizzling operators, so you can't say float4.yzw.
10282 * WebGPUShadingLanguageRI/StandardLibrary.js:
10283 (operator.T.vec2.T):
10284 (bool.operator.T.Equatable):
10285 (thread.T.operator.T):
10286 (operator.T.vec3.T):
10287 (operator.T.vec4.T):
10288 * WebGPUShadingLanguageRI/Test.js:
10289 (TEST_builtinVectors):
10291 2017-09-18 Myles C. Maxfield <mmaxfield@apple.com>
10293 WSL needs to annotate vertex shaders and fragment shaders
10294 https://bugs.webkit.org/show_bug.cgi?id=177066
10296 Reviewed by Filip Pizlo.
10298 Metal Shading Language requires annotating vertex and fragment shaders, so this information needs to be in
10299 the source WSL file.
10301 * WebGPUShadingLanguageRI/Func.js:
10303 (Func.prototype.get shaderType):
10304 * WebGPUShadingLanguageRI/FuncDef.js:
10306 * WebGPUShadingLanguageRI/NativeFunc.js:
10308 * WebGPUShadingLanguageRI/Parse.js:
10310 (parseProtocolFuncDecl):
10313 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
10314 (resolveOverloadImpl):
10315 * WebGPUShadingLanguageRI/Test.js:
10317 2017-09-18 Filip Pizlo <fpizlo@apple.com>
10319 WSL should know that constexpr parameters are not lvalues
10320 https://bugs.webkit.org/show_bug.cgi?id=177104
10322 Reviewed by Saam Barati.
10324 This should be an error:
10331 Previously, it wasn't, because VariableRef always thought that it was an LValue. This patch
10332 teaches the type checker that not all VariableRefs are LValues.
10334 * WebGPUShadingLanguageRI/ConstexprTypeParameter.js:
10335 (ConstexprTypeParameter.prototype.get varIsLValue):
10336 * WebGPUShadingLanguageRI/FuncParameter.js:
10337 (FuncParameter.prototype.get varIsLValue):
10338 * WebGPUShadingLanguageRI/Test.js:
10339 (TEST_nonArrayRefArrayLengthSucceed):
10340 (TEST_nonArrayRefArrayLengthFail):
10341 (TEST_nonArrayRefArrayLength): Deleted.
10342 (TEST_assignLength): Deleted.
10343 * WebGPUShadingLanguageRI/VariableDecl.js:
10344 (VariableDecl.prototype.get varIsLValue):
10345 * WebGPUShadingLanguageRI/VariableRef.js:
10346 (VariableRef.prototype.get isLValue):
10348 2017-09-18 Ryan Haddad <ryanhaddad@apple.com>
10350 Unreviewed, rolling out r222170.
10352 The API test added with this change is failing.
10354 Reverted changeset:
10356 "Allow WTF::map to use any class that is iterable and has a
10358 https://bugs.webkit.org/show_bug.cgi?id=177026
10359 http://trac.webkit.org/changeset/222170
10361 2017-09-18 Myles C. Maxfield <mmaxfield@apple.com>
10363 Add a section in WSL's documentation about how API objects and WSL interact
10364 https://bugs.webkit.org/show_bug.cgi?id=177089
10366 Reviewed by Filip Pizlo.
10368 No global variables; entry points accept arguments. Buffers are array references ([]),
10369 and texture and sampler opaque types exist. Data is passed between stages in return
10372 * WebGPUShadingLanguageRI/WSL.md:
10374 2017-09-18 Filip Pizlo <fpizlo@apple.com>
10376 Unreviewed, fix typo.
10378 * WebGPUShadingLanguageRI/WSL.md:
10380 2017-09-18 Filip Pizlo <fpizlo@apple.com>
10382 WSL cannot use typedefs of arrays
10383 https://bugs.webkit.org/show_bug.cgi?id=177061
10385 Reviewed by Saam Barati.
10387 This test case didn't work before because of a missing visit call in Checker.
10389 * WebGPUShadingLanguageRI/Checker.js:
10390 (Checker.prototype.visitTypeRef):
10391 * WebGPUShadingLanguageRI/Test.js:
10392 (TEST_typedefArray):
10394 2017-09-18 Youenn Fablet <youenn@apple.com>
10396 Allow WTF::map to use any class that is iterable and has a size getter
10397 https://bugs.webkit.org/show_bug.cgi?id=177026
10399 Reviewed by Darin Adler.
10401 * TestWebKitAPI/Tests/WTF/Vector.cpp:
10402 (TestWebKitAPI::TEST):
10404 2017-09-16 Filip Pizlo <fpizlo@apple.com>
10406 Figure out how WSL will support field overloads like float4.xz and friends
10407 https://bugs.webkit.org/show_bug.cgi?id=177031
10409 Reviewed by JF Bastien.
10411 WSL needs to support getters and setters, so that we can do things like:
10414 vec.zx = float2(1, 2);
10417 There's no way to express this float4.zx returning a pointer to something, since it's doing swizzling.
10418 It could return a crazy smart pointer, but that sounds like a lot of work. So, I decided to go for
10419 lvalue emulation instead.
10421 The idea of lvalue emulation is that when we try to make an lvalue work for an assignment or RMW
10422 operation (like += and friends), we consider the possibility that we have to first load the value using
10423 a getter and then store it with a setter. This patch makes this work recursively, so that this will
10430 This works because we decompose it automatically:
10433 float3 tmp = vec.zwx;
10437 This'll work to any depth.
10439 To check if this works, this patch adds two substantial new tests called TEST_genericAccessors() and
10440 TEST_bitSubscriptAccessor(). This tests that this stuff works with a lot of generic types, and that it's
10441 possible to turn integers into bitvectors using subscript overloading. This patch also adds smaller unit
10444 Oh, and it's now possible to get an array's length.
10446 * WebGPUShadingLanguageRI/AddressSpace.js:
10447 (needsPrimitiveProtocol):
10449 * WebGPUShadingLanguageRI/All.js:
10450 * WebGPUShadingLanguageRI/AnonymousVariable.js: Added.
10451 (AnonymousVariable):
10452 (AnonymousVariable.prototype.get origin):
10453 (AnonymousVariable.prototype.get name):
10454 (AnonymousVariable.prototype.toString):
10455 * WebGPUShadingLanguageRI/ArrayRefType.js:
10456 (ArrayRefType.prototype.argumentForAndOverload):
10457 (ArrayRefType.prototype.argumentTypeForAndOverload):
10458 * WebGPUShadingLanguageRI/ArrayType.js:
10459 (ArrayType.prototype.argumentForAndOverload):
10460 (ArrayType.prototype.argumentTypeForAndOverload):
10462 * WebGPUShadingLanguageRI/Assignment.js:
10464 * WebGPUShadingLanguageRI/CallAssignment.js: Removed.
10465 * WebGPUShadingLanguageRI/CallExpression.js:
10466 (CallExpression.resolve):
10467 (CallExpression.prototype.resolve):
10468 (CallExpression.prototype.resolveToOverload):
10469 * WebGPUShadingLanguageRI/Checker.js:
10470 (Checker.prototype.visitProgram):
10471 (Checker.prototype.visitFuncDef):
10472 (Checker.prototype.visitNativeFunc):
10473 (Checker.prototype.visitProtocolDecl):
10474 (Checker.prototype.visitIdentityExpression):
10475 (Checker.prototype.visitReadModifyWriteExpression):
10476 (Checker.prototype.visitAnonymousVariable):
10477 (Checker.prototype.visitMakeArrayRefExpression):
10478 (Checker.prototype._finishVisitingPropertyAccess):
10479 (Checker.prototype.visitDotExpression):
10480 (Checker.prototype.visitIndexExpression):
10481 (Checker.prototype.visitCallExpression):
10483 (Checker.prototype.visitProtocolDecl.NoticeTypeVariable.prototype.visitTypeRef): Deleted.
10484 (Checker.prototype.visitProtocolDecl.NoticeTypeVariable.prototype.visitVariableRef): Deleted.
10485 (Checker.prototype.visitProtocolDecl.NoticeTypeVariable): Deleted.
10486 (Checker.prototype.visitProtocolDecl.set throw): Deleted.
10487 * WebGPUShadingLanguageRI/CommaExpression.js:
10488 * WebGPUShadingLanguageRI/DotExpression.js:
10490 (DotExpression.prototype.get struct):
10491 (DotExpression.prototype.get getFuncName):
10492 (DotExpression.prototype.get andFuncName):
10493 (DotExpression.prototype.get setFuncName):
10494 * WebGPUShadingLanguageRI/EBuffer.js:
10495 * WebGPUShadingLanguageRI/EBufferBuilder.js:
10496 (EBufferBuilder.prototype.visitAnonymousVariable):
10497 (EBufferBuilder.prototype.visitLetExpression): Deleted.
10498 * WebGPUShadingLanguageRI/Evaluator.js:
10499 (Evaluator.prototype.visitIdentityExpression):
10500 (Evaluator.prototype.visitMakePtrExpression):
10501 (Evaluator.prototype.visitAnonymousVariable):
10502 (Evaluator.prototype.visitDotExpression): Deleted.
10503 (Evaluator.prototype.visitLetExpression): Deleted.
10504 * WebGPUShadingLanguageRI/ExpressionFinder.js:
10505 (ExpressionFinder.prototype.visitReadModifyWriteExpression):
10506 (ExpressionFinder.prototype.visitIdentityExpression):
10507 * WebGPUShadingLanguageRI/ForLoop.js:
10508 (ForLoop.prototype.toString):
10510 * WebGPUShadingLanguageRI/Func.js:
10512 * WebGPUShadingLanguageRI/FuncInstantiator.js:
10513 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
10514 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
10515 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
10516 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitNativeFunc):
10517 (FuncInstantiator.prototype.getUnique.Instantiate):
10518 (FuncInstantiator.prototype.getUnique):
10519 (FuncInstantiator):
10520 * WebGPUShadingLanguageRI/IdentityExpression.js: Added.
10521 (IdentityExpression):
10522 (IdentityExpression.prototype.get target):
10523 (IdentityExpression.prototype.get unifyNode):
10524 (IdentityExpression.prototype.get isConstexpr):
10525 (IdentityExpression.prototype.get isLValue):
10526 (IdentityExpression.prototype.get addressSpace):
10527 (IdentityExpression.prototype.toString):
10528 * WebGPUShadingLanguageRI/IndexExpression.js: Added.
10530 (IndexExpression.prototype.get array):
10531 (IndexExpression.prototype.get index):
10532 (IndexExpression.prototype.get isLValue):
10533 (IndexExpression.prototype.get addressSpace):
10534 (IndexExpression.prototype.get getFuncName):
10535 (IndexExpression.prototype.get andFuncName):
10536 (IndexExpression.prototype.get setFuncName):
10537 (IndexExpression.prototype.toString):
10538 * WebGPUShadingLanguageRI/InferTypesForCall.js:
10539 (inferTypesForCall):
10540 * WebGPUShadingLanguageRI/Inline.js:
10542 * WebGPUShadingLanguageRI/Inliner.js:
10543 (Inliner.prototype.visitCallExpression):
10544 (Inliner.prototype.visitDotExpression): Deleted.
10545 * WebGPUShadingLanguageRI/Intrinsics.js:
10547 * WebGPUShadingLanguageRI/LetExpression.js: Removed.
10548 * WebGPUShadingLanguageRI/MakeArrayRefExpression.js:
10549 (MakeArrayRefExpression.prototype.becomeConvertPtrToArrayRefExpression): Deleted.
10550 * WebGPUShadingLanguageRI/NameContext.js:
10552 (NameContext.prototype.add):
10553 (NameContext.prototype.doStatement):
10554 (NameContext.prototype.handleDefining): Deleted.
10555 (NameContext.prototype.isDefined): Deleted.
10556 (NameContext.prototype.define): Deleted.
10557 (NameContext.prototype.defineAll): Deleted.
10558 * WebGPUShadingLanguageRI/NameResolver.js:
10559 (NameResolver.prototype.doStatement):
10560 (NameResolver.prototype.visitProtocolDecl):
10561 (NameResolver.prototype.visitProgram): Deleted.
10562 * WebGPUShadingLanguageRI/NativeFunc.js:
10564 * WebGPUShadingLanguageRI/NativeFuncInstance.js:
10565 (NativeFuncInstance):
10566 (NativeFuncInstance.prototype.get implementationData):
10567 * WebGPUShadingLanguageRI/Node.js:
10568 (Node.prototype.visit):
10570 (Node.unify): Deleted.
10571 * WebGPUShadingLanguageRI/NormalUsePropertyResolver.js: Added.
10572 (NormalUsePropertyResolver.prototype.visitDotExpression):
10573 (NormalUsePropertyResolver.prototype.visitIndexExpression):
10574 (NormalUsePropertyResolver):
10575 * WebGPUShadingLanguageRI/Parse.js:
10576 (finishParsingPostIncrement):
10577 (parsePossibleSuffix):
10578 (finishParsingPreIncrement):
10579 (genericParseCommaExpression):
10581 * WebGPUShadingLanguageRI/Prepare.js:
10583 * WebGPUShadingLanguageRI/Program.js:
10585 (Program.prototype.get globalNameContext):
10586 (Program.prototype.add):
10587 * WebGPUShadingLanguageRI/PropertyAccessExpression.js: Added.
10588 (PropertyAccessExpression):
10589 (PropertyAccessExpression.prototype.get resultType):
10590 (PropertyAccessExpression.prototype.rewriteAfterCloning):
10591 (PropertyAccessExpression.prototype.updateCallsAfterChangingBase):
10592 (PropertyAccessExpression.prototype.emitGet):
10593 (PropertyAccessExpression.prototype.emitSet):
10594 * WebGPUShadingLanguageRI/PropertyResolver.js: Added.
10595 (PropertyResolver.prototype._visitPropertyAccess):
10596 (PropertyResolver.prototype.visitDotExpression):
10597 (PropertyResolver.prototype.visitIndexExpression):
10598 (PropertyResolver.prototype._handleReadModifyWrite):
10599 (PropertyResolver.prototype.visitReadModifyWriteExpression):
10600 (PropertyResolver.prototype.visitAssignment):
10601 (PropertyResolver.visitMakePtrExpression):
10602 (PropertyResolver.prototype.visitMakeArrayRefExpression):
10603 (PropertyResolver):
10604 * WebGPUShadingLanguageRI/PtrType.js:
10605 (PtrType.prototype.argumentForAndOverload):
10606 (PtrType.prototype.argumentTypeForAndOverload):
10607 (PtrType.prototype.returnTypeFromAndOverload):
10608 * WebGPUShadingLanguageRI/ReadModifyWriteExpression.js: Added.
10609 (ReadModifyWriteExpression):
10610 (ReadModifyWriteExpression.prototype.get lValue):
10611 (ReadModifyWriteExpression.prototype.oldValueRef):
10612 (ReadModifyWriteExpression.prototype.newValueRef):
10613 (ReadModifyWriteExpression.prototype.toString):
10614 * WebGPUShadingLanguageRI/ResolveNames.js:
10615 (createNameResolver):
10616 (resolveNamesInTypes):
10617 (resolveNamesInProtocols):
10618 (resolveNamesInFunctions):
10619 (resolveNames): Deleted.
10620 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
10621 (resolveOverloadImpl):
10622 * WebGPUShadingLanguageRI/ResolveProperties.js: Added.
10623 (resolveProperties):
10624 * WebGPUShadingLanguageRI/ResolveTypeDefs.js:
10625 (resolveTypeDefsInTypes):
10626 (resolveTypeDefsInProtocols):
10627 (resolveTypeDefsInFunctions):
10628 (resolveTypeDefs): Deleted.
10629 * WebGPUShadingLanguageRI/ReturnChecker.js:
10630 (ReturnChecker.prototype._isBoolCastFromLiteralTrue):
10631 * WebGPUShadingLanguageRI/Rewriter.js:
10633 (Rewriter.prototype.visitVariableDecl):
10634 (Rewriter.prototype.visitTypeRef):
10635 (Rewriter.prototype.visitAssignment):
10636 (Rewriter.prototype.visitReadModifyWriteExpression):
10637 (Rewriter.prototype.visitDereferenceExpression):
10638 (Rewriter.prototype._handlePropertyAccessExpression):
10639 (Rewriter.prototype.visitDotExpression):
10640 (Rewriter.prototype.visitIndexExpression):
10641 (Rewriter.prototype.visitReturn):
10642 (Rewriter.prototype.visitGenericLiteralType):
10643 (Rewriter.prototype.visitNullType):
10644 (Rewriter.prototype.processDerivedCallData):
10645 (Rewriter.prototype.visitCallExpression):
10646 (Rewriter.prototype.visitFunctionLikeBlock):
10647 (Rewriter.prototype.visitIfStatement):
10648 (Rewriter.prototype.visitForLoop):
10649 (Rewriter.prototype.visitAnonymousVariable):
10650 (Rewriter.prototype.visitIdentityExpression):
10651 (Rewriter.prototype.visitLetExpression): Deleted.
10652 * WebGPUShadingLanguageRI/StandardLibrary.js:
10653 * WebGPUShadingLanguageRI/StructLayoutBuilder.js:
10654 (StructLayoutBuilder.prototype.visitNativeFuncInstance):
10655 (StructLayoutBuilder):
10656 * WebGPUShadingLanguageRI/StructType.js:
10657 (StructType.prototype.instantiate):
10658 * WebGPUShadingLanguageRI/Substitution.js:
10659 (Substitution.prototype.get map):
10660 * WebGPUShadingLanguageRI/SuffixCallAssignment.js: Removed.
10661 * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: Added.
10662 (synthesizeStructAccessors.createTypeParameters):
10663 (synthesizeStructAccessors.):
10664 (synthesizeStructAccessors.createFieldType):
10665 (synthesizeStructAccessors.createTypeRef):
10666 (synthesizeStructAccessors.setupAnder):
10667 (synthesizeStructAccessors):
10668 * WebGPUShadingLanguageRI/Test.html:
10669 * WebGPUShadingLanguageRI/Test.js:
10671 (TEST_simpleProtocol):
10672 (TEST_assignLength):
10673 (TEST_simpleSetter):
10674 (TEST_genericAccessors):
10675 * WebGPUShadingLanguageRI/Type.js:
10676 (Type.prototype.get isRef):
10677 (Type.prototype.argumentForAndOverload):
10678 (Type.prototype.argumentTypeForAndOverload):
10679 (Type.prototype.returnTypeFromAndOverload):
10681 * WebGPUShadingLanguageRI/TypeParameterRewriter.js: Added.
10682 (TypeParameterRewriter.prototype.visitConstexprTypeParameter):
10683 (TypeParameterRewriter.prototype.visitTypeVariable):
10684 (TypeParameterRewriter):
10685 * WebGPUShadingLanguageRI/TypeVariableTracker.js: Added.
10686 (TypeVariableTracker):
10687 * WebGPUShadingLanguageRI/Value.js:
10688 (Value.prototype.become):
10690 * WebGPUShadingLanguageRI/VariableRef.js:
10691 (VariableRef.prototype.get unifyNode):
10692 (VariableRef.prototype.get addressSpace):
10693 * WebGPUShadingLanguageRI/Visitor.js:
10694 (Visitor.prototype.visitNativeFuncInstance):
10695 (Visitor.prototype.visitProtocolDecl):
10696 (Visitor): Deleted.
10697 * WebGPUShadingLanguageRI/VisitorBase.js: Removed.
10699 2017-09-18 Andy Estes <aestes@apple.com>
10701 [Cocoa] Upstream WKSetCrashReportApplicationSpecificInformation() from WebKitSystemInterface
10702 https://bugs.webkit.org/show_bug.cgi?id=177048
10704 Reviewed by Alex Christensen.
10706 * DumpRenderTree/mac/DumpRenderTree.mm:
10708 * WebKitTestRunner/cocoa/CrashReporterInfo.mm:
10709 (WTR::setCrashReportApplicationSpecificInformationToURL):
10711 2017-09-18 Tim Horton <timothy_horton@apple.com>
10713 build-webkit spawns fewer subprocesses than ninja uses by default
10714 https://bugs.webkit.org/show_bug.cgi?id=177057
10716 Reviewed by Alex Christensen.
10718 * Scripts/build-webkit:
10719 By default, ninja will parallelize over (cores + 2) jobs. build-webkit
10720 specifies -j(cores), which overrides this. Remove our override if building
10721 with ninja; just let it do its own thing. In my testing, this minor
10722 change is the difference between ~10% idle CPU time and 0.
10724 2017-09-18 Lucas Forschler <lforschler@apple.com>
10726 Land a patch to verify svn->git update is working.
10728 2017-09-18 Ms2ger <Ms2ger@igalia.com>
10734 * Scripts/webkitpy/common/config/contributors.json:
10736 2017-09-17 Filip Pizlo <fpizlo@apple.com>
10738 Start working on WSL documentation
10739 https://bugs.webkit.org/show_bug.cgi?id=177064
10741 Reviewed by Mylex Maxfield.
10743 This is a work in progress. I'd like to check it in and then keep adding to it.
10745 * WebGPUShadingLanguageRI/WSL.md: Added.
10747 2017-09-17 Myles C. Maxfield <mmaxfield@apple.com>
10749 WSL needs to understand && and ||
10750 https://bugs.webkit.org/show_bug.cgi?id=177062
10752 Reviewed by Filip Pizlo.
10754 Very similar to LogicalNot.
10756 * WebGPUShadingLanguageRI/All.js:
10757 * WebGPUShadingLanguageRI/Checker.js:
10758 * WebGPUShadingLanguageRI/EBufferBuilder.js:
10759 (EBufferBuilder.prototype.visitLogicalExpression):
10760 * WebGPUShadingLanguageRI/Evaluator.js:
10761 (Evaluator.prototype.visitLogicalExpression):
10762 * WebGPUShadingLanguageRI/Lexer.js:
10763 (Lexer.prototype.next):
10765 * WebGPUShadingLanguageRI/LogicalExpression.js: Added.
10766 (LogicalExpression):
10767 (LogicalExpression.prototype.get text):
10768 (LogicalExpression.prototype.get left):
10769 (LogicalExpression.prototype.get right):
10770 (LogicalExpression.prototype.toString):
10771 * WebGPUShadingLanguageRI/Parse.js:
10772 (parseLeftLogicalExpression):
10773 * WebGPUShadingLanguageRI/Rewriter.js:
10774 (Rewriter.prototype.visitLogicalExpression):
10775 * WebGPUShadingLanguageRI/Test.html:
10776 * WebGPUShadingLanguageRI/Test.js:
10777 * WebGPUShadingLanguageRI/Visitor.js:
10778 (Visitor.prototype.visitProtocolDecl):
10780 2017-09-18 Ms2ger <Ms2ger@igalia.com>
10786 * Scripts/webkitpy/common/config/contributors.json:
10788 2017-09-17 Filip Pizlo <fpizlo@apple.com>
10790 Start working on WSL documentation
10791 https://bugs.webkit.org/show_bug.cgi?id=177064
10793 Reviewed by Mylex Maxfield.
10795 This is a work in progress. I'd like to check it in and then keep adding to it.
10797 * WebGPUShadingLanguageRI/WSL.md: Added.
10799 2017-09-17 Myles C. Maxfield <mmaxfield@apple.com>
10801 WSL needs to understand && and ||
10802 https://bugs.webkit.org/show_bug.cgi?id=177062
10804 Reviewed by Filip Pizlo.
10806 Very similar to LogicalNot.
10808 * WebGPUShadingLanguageRI/All.js:
10809 * WebGPUShadingLanguageRI/Checker.js:
10810 * WebGPUShadingLanguageRI/EBufferBuilder.js:
10811 (EBufferBuilder.prototype.visitLogicalExpression):
10812 * WebGPUShadingLanguageRI/Evaluator.js:
10813 (Evaluator.prototype.visitLogicalExpression):
10814 * WebGPUShadingLanguageRI/Lexer.js:
10815 (Lexer.prototype.next):
10817 * WebGPUShadingLanguageRI/LogicalExpression.js: Added.
10818 (LogicalExpression):
10819 (LogicalExpression.prototype.get text):
10820 (LogicalExpression.prototype.get left):
10821 (LogicalExpression.prototype.get right):
10822 (LogicalExpression.prototype.toString):
10823 * WebGPUShadingLanguageRI/Parse.js:
10824 (parseLeftLogicalExpression):
10825 * WebGPUShadingLanguageRI/Rewriter.js:
10826 (Rewriter.prototype.visitLogicalExpression):
10827 * WebGPUShadingLanguageRI/Test.html:
10828 * WebGPUShadingLanguageRI/Test.js:
10829 * WebGPUShadingLanguageRI/Visitor.js:
10830 (Visitor.prototype.visitProtocolDecl):
10832 2017-09-17 Myles C. Maxfield <mmaxfield@apple.com>
10834 WSL needs float and double support
10835 https://bugs.webkit.org/show_bug.cgi?id=177058
10837 Reviewed by Filip Pizlo.
10839 Use the existing int and uint types as a model. The types themselves are straighforward. Just like int and uint,
10840 you can't pass a float as a double argument and vice-versa. This patch adds operator+, -, *, and / for floats
10843 Float literals are more complicated. If your number has a "." character in it, it is treated as a float literal.
10844 You can add a suffix of "f" or "d" to force the literal to pretend to be a float or a double. These literals are
10845 able to masquerade as either floats or doubles (unlike an explicit type). However, these literals are not able
10846 to masquerade as ints or uints. There's also a nice check that your float literal can actually fit in a float.
10848 * WebGPUShadingLanguageRI/All.js:
10849 * WebGPUShadingLanguageRI/DoubleLiteral.js: Copied from Tools/WebGPUShadingLanguageRI/Type.js.
10850 (let.DoubleLiteral.createLiteral.createType):
10851 * WebGPUShadingLanguageRI/DoubleLiteralType.js: Copied from Tools/WebGPUShadingLanguageRI/Type.js.
10852 (let.DoubleLiteralType.createLiteralType.verifyAsArgument):
10853 * WebGPUShadingLanguageRI/FloatLiteral.js: Copied from Tools/WebGPUShadingLanguageRI/Type.js.
10854 (let.FloatLiteral.createLiteral.createType):
10855 * WebGPUShadingLanguageRI/FloatLiteralType.js: Copied from Tools/WebGPUShadingLanguageRI/Type.js.
10856 (let.FloatLiteralType.createLiteralType.verifyAsArgument):
10857 * WebGPUShadingLanguageRI/Intrinsics.js:
10859 * WebGPUShadingLanguageRI/Lexer.js:
10860 (Lexer.prototype.next):
10862 * WebGPUShadingLanguageRI/NativeType.js:
10864 (NativeType.prototype.get isFloating):
10865 (NativeType.prototype.set isFloating):
10866 (NativeType.prototype.get isFloat): Deleted.
10867 (NativeType.prototype.set isFloat): Deleted.
10868 * WebGPUShadingLanguageRI/Parse.js:
10870 * WebGPUShadingLanguageRI/Rewriter.js:
10871 (Rewriter.prototype.visitGenericLiteral):
10872 * WebGPUShadingLanguageRI/StandardLibrary.js:
10875 * WebGPUShadingLanguageRI/Test.html:
10876 * WebGPUShadingLanguageRI/Test.js:
10882 * WebGPUShadingLanguageRI/Type.js:
10883 (Type.prototype.get isFloating):
10884 (Type.prototype.get isFloat): Deleted.
10886 2017-09-17 Michael Saboff <msaboff@apple.com>
10888 https://bugs.webkit.org/show_bug.cgi?id=177038
10889 Add an option to run-jsc-stress-tests to limit tests variations to a basic set
10891 Reviewed by JF Bastien.
10893 Added the --basic option that runs defaults tests with the following modes, default, no-llint,
10894 no-cjit-validate-phases, no-cjit-collect-continuously, dfg-eager and for FTL platforms: no-ftl,
10895 ftl-eager-no-cjit and ftl-no-cjit-small-pool. This takes about half the time as running all
10896 16 modes of a full run.
10898 * Scripts/run-jsc-stress-tests:
10900 2017-09-16 Tim Horton <timothy_horton@apple.com>
10902 Fix the Tools build with CMake on macOS
10903 https://bugs.webkit.org/show_bug.cgi?id=177030
10905 Reviewed by Geoffrey Garen.
10907 * TestWebKitAPI/CMakeLists.txt:
10908 Add a workaround identical to what the gtest CMakeLists has.
10910 2017-09-16 Carlos Garcia Campos <cgarcia@igalia.com>
10912 [GTK] Bump fontconfig version to 2.12.4
10913 https://bugs.webkit.org/show_bug.cgi?id=176997
10915 Reviewed by Michael Catanzaro.
10917 It's the latest stable version and we can get rid of the patches we have.
10919 * WebKitTestRunner/gtk/fonts/fonts.conf: Remove hinting config we no longer need with newer FreeType and
10920 deprecated <blank> that current fontconfig just ignores.
10921 * gtk/jhbuild.modules:
10922 * gtk/patches/fontconfig-2.11.1-add-autogen.patch: Removed.
10923 * gtk/patches/fontconfig-Avoid-conflicts-with-integer-width-macros-from-TS-18661-1-2014.patch: Removed.
10924 * gtk/patches/fontconfig-Fix-the-build-issue-with-gperf-3.1.patch: Removed.
10925 * gtk/patches/fontconfig-fix-osx-cache.diff: Removed.
10927 2017-09-15 Lucas Forschler <lforschler@apple.com>
10929 Move run-webkit-archive from Tools/Scripts to Tools/BuildSlaveSupport
10931 Reviewed by Alexey Proskuryakov.
10933 * Scripts/run-webkit-archive: Removed.
10935 2017-09-15 Lucas Forschler <lforschler@apple.com>
10937 teach build.webkit.org to include run-webkit-archive in the root folder of uploaded macOS archives.
10938 https://bugs.webkit.org/show_bug.cgi?id=176965
10940 Reviewed by Alexey Proskuryakov.
10942 * BuildSlaveSupport/built-product-archive:
10943 (addLauncherToArchive): Helper function to add the launcher script
10944 (createZip): teach function about addLauncherToArchive
10945 * BuildSlaveSupport/run-webkit-archive: Added.
10946 (check_for_valid_platform): Add logic to ensure platform is Darwin
10947 (find_dyld_framework_path): Find the dyld framework path
10948 (run_safari_for_webkit_development): launch SafariForWebKitDevelopment
10949 (set_dyld_framework_path): export the environment for dydl framework path
10951 2017-09-15 Myles C. Maxfield <mmaxfield@apple.com>
10953 [WSL] Small cleanup in Evaluator
10954 https://bugs.webkit.org/show_bug.cgi?id=176971
10956 Reviewed by Filip Pizlo.
10958 Use the symbols for break and continue instead of the objects themselves.
10960 No tests because there is no behavior change.
10962 * WebGPUShadingLanguageRI/Evaluator.js:
10963 (Evaluator.prototype.visitWhileLoop):
10964 (Evaluator.prototype.visitDoWhileLoop):
10965 (Evaluator.prototype.visitForLoop):
10966 (Evaluator.prototype.visitBreak):
10967 (Evaluator.prototype.visitContinue):
10969 2017-09-15 Filip Pizlo <fpizlo@apple.com>
10971 WSL Evaluator should only allocate EBuffers when dealing with intrinsics
10972 https://bugs.webkit.org/show_bug.cgi?id=176973
10974 Reviewed by Myles Maxfield.
10976 Whether or not two temporary values share the same EBuffer is ultimately observable in WSL,
10977 because you can do this:
10979 thread int^ operator&[](thread int^ ptr, uint index)
10985 And then this is a thing:
10988 // g_ptr now points to 42's location
10990 Normally this would have a lot of bad implications. But in WSL, if you did choose to do this,
10991 you'd get a pointer to something well-defined: the EBuffer of 42's GenericLiteral. Each static
10992 occurrence of a literal gets its own location, and the semantics of the language call for
10993 42 to be stored into this location when `42` "executes". So, while the programmer could do all
10994 kinds of strange things, at least the strangeness they would see is something we can spec.
10996 But to do this, the interpreter needs to allocate EBuffers in the same way a compiler would.
10997 It cannot allocate them during execution, except when interacting with intrinsics, which won't
10998 know the difference.
11000 In the process, I found places that needed to use AutoWrapper instead of TypeRef.wrap.
11002 * WebGPUShadingLanguageRI/AutoWrapper.js:
11003 (AutoWrapper.prototype.visitGenericLiteralType):
11004 (AutoWrapper.prototype.visitNullType):
11006 * WebGPUShadingLanguageRI/CallExpression.js:
11007 (CallExpression.prototype.resolve):
11008 * WebGPUShadingLanguageRI/CallFunction.js:
11010 * WebGPUShadingLanguageRI/Checker.js:
11011 * WebGPUShadingLanguageRI/CreateLiteralType.js:
11012 (createLiteralType.GenericLiteralType.prototype.commitUnification):
11013 * WebGPUShadingLanguageRI/EBuffer.js:
11015 (EBuffer.setCanAllocateEBuffers):
11016 (EBuffer.disallowAllocation):
11017 (EBuffer.allowAllocation):
11018 * WebGPUShadingLanguageRI/EBufferBuilder.js:
11019 (EBufferBuilder.prototype.visitVariableDecl):
11020 (EBufferBuilder.prototype.visitFuncDef):
11021 (EBufferBuilder.prototype.visitFunctionLikeBlock):
11022 (EBufferBuilder.prototype.visitCallExpression):
11023 (EBufferBuilder.prototype.visitMakePtrExpression):
11024 (EBufferBuilder.prototype.visitGenericLiteral):
11025 (EBufferBuilder.prototype.visitNullLiteral):
11026 (EBufferBuilder.prototype.visitBoolLiteral):
11027 (EBufferBuilder.prototype.visitLogicalNot):
11029 * WebGPUShadingLanguageRI/EPtr.js:
11031 (EPtr.prototype.box):
11032 * WebGPUShadingLanguageRI/Evaluator.js:
11033 (Evaluator.prototype._snapshot):
11034 (Evaluator.prototype.runFunc):
11035 (Evaluator.prototype._runBody):
11036 (Evaluator.prototype.visitFunctionLikeBlock):
11037 (Evaluator.prototype.visitMakePtrExpression):
11038 (Evaluator.prototype.visitGenericLiteral):
11039 (Evaluator.prototype.visitNullLiteral):
11040 (Evaluator.prototype.visitBoolLiteral):
11041 (Evaluator.prototype.visitLogicalNot):
11042 (Evaluator.prototype.visitCallExpression):
11044 (Evaluator.prototype.runBody): Deleted.
11045 * WebGPUShadingLanguageRI/Inliner.js:
11046 (Inliner.prototype.visitCallExpression):
11047 * WebGPUShadingLanguageRI/InstantiateImmediates.js:
11048 (InstantiateImmediates.prototype.visitTypeRef):
11049 * WebGPUShadingLanguageRI/Rewriter.js:
11050 (Rewriter.prototype.visitMakePtrExpression):
11051 (Rewriter.prototype.visitGenericLiteral):
11052 (Rewriter.prototype.visitNullLiteral):
11053 (Rewriter.prototype.processDerivedCallData):
11054 (Rewriter.prototype.visitFunctionLikeBlock):
11055 (Rewriter.prototype.visitLogicalNot):
11056 * WebGPUShadingLanguageRI/TypeRef.js:
11057 (TypeRef.prototype.toString):
11059 * WebGPUShadingLanguageRI/Visitor.js:
11060 (Visitor.prototype.visitProtocolDecl):
11062 2017-09-14 Filip Pizlo <fpizlo@apple.com>
11064 Rationalize how WSL's operator&[] works
11065 https://bugs.webkit.org/show_bug.cgi?id=176958
11067 Reviewed by Myles Maxfield.
11069 This makes operator&[] work with non-array-ref types. The way this works is that if you do base[index]
11070 then we pattern match base's type and proceed accordingly:
11072 If base's type is T^:
11075 If base's type is T[]:
11078 If base's type is T[c]:
11079 => Wrap it with a MakeArrayRefExpression and accept.
11082 => Wrap it with a MakePtrExpression and accept.
11084 This makes it possible for operator&[] to work with lvalues. It also means that operator&[] gets to
11085 "see" the temporary values we create via snapshot() in the interpreter. We'll have to fix that, and I've
11086 filed bug 176973 for that. Once that's fixed, this will have well-defined behavior, though with the very
11087 peculiar caveat that an expression like this:
11089 totallyNotAnLValue()[42]
11091 Could be used to get a pointer to a non-lvalue. But we can be extremely precise about what that means
11092 and prohibit dangling pointers, which is kinda crazy.
11094 In order to do this, I had to make MakeArrayRefExpression work, so I did that and added tests for it.
11096 * WebGPUShadingLanguageRI/All.js:
11097 * WebGPUShadingLanguageRI/ArrayRefType.js:
11098 (ArrayRefType.prototype.unifyImpl):
11099 (ArrayRefType.prototype.toString):
11101 * WebGPUShadingLanguageRI/ArrayType.js:
11103 (ArrayType.prototype.get numElementsValue):
11104 (ArrayType.prototype.get size):
11105 (ArrayType.prototype.populateDefaultValue):
11106 (ArrayType.prototype.unifyImpl):
11107 * WebGPUShadingLanguageRI/Checker.js:
11108 * WebGPUShadingLanguageRI/ConvertPtrToArrayRefExpression.js: Added.
11109 (ConvertPtrToArrayRefExpression):
11110 (ConvertPtrToArrayRefExpression.prototype.get lValue):
11111 (ConvertPtrToArrayRefExpression.prototype.toString):
11112 * WebGPUShadingLanguageRI/CreateLiteral.js:
11113 (createLiteral.GenericLiteral.withType):
11114 (createLiteral.GenericLiteral.prototype.get isLiteral):
11115 (createLiteral.GenericLiteral.prototype.unifyImpl):
11116 * WebGPUShadingLanguageRI/DotExpression.js:
11117 (DotExpression.prototype.get addressSpace):
11118 * WebGPUShadingLanguageRI/Evaluator.js:
11119 (Evaluator.prototype.visitMakeArrayRefExpression):
11120 (Evaluator.prototype.visitConvertPtrToArrayRefExpression):
11121 * WebGPUShadingLanguageRI/Intrinsics.js:
11123 * WebGPUShadingLanguageRI/MakeArrayRefExpression.js: Added.
11124 (MakeArrayRefExpression):
11125 (MakeArrayRefExpression.prototype.get lValue):
11126 (MakeArrayRefExpression.prototype.becomeConvertPtrToArrayRefExpression):
11127 (MakeArrayRefExpression.prototype.toString):
11128 * WebGPUShadingLanguageRI/MakePtrExpression.js:
11129 (MakePtrExpression.prototype.toString):
11130 (MakePtrExpression):
11131 * WebGPUShadingLanguageRI/PtrType.js:
11132 (PtrType.prototype.toString):
11134 * WebGPUShadingLanguageRI/ReferenceType.js:
11136 * WebGPUShadingLanguageRI/Rewriter.js:
11137 (Rewriter.prototype.visitArrayType):
11138 (Rewriter.prototype.visitMakeArrayRefExpression):
11139 (Rewriter.prototype.visitConvertPtrToArrayRefExpression):
11140 * WebGPUShadingLanguageRI/StandardLibrary.js:
11141 * WebGPUShadingLanguageRI/Test.html:
11142 * WebGPUShadingLanguageRI/Test.js:
11143 (TEST_buildArrayThenSumItUsingArrayReference):
11144 (TEST_overrideSubscriptStruct):
11145 (TEST_overrideSubscriptStructAndUsePointers):
11146 (TEST_overrideSubscriptStructAndUsePointersIncorrectly):
11147 (TEST_makeArrayRefFromPointer):
11148 (TEST_makeArrayRefFromArrayRef):
11149 * WebGPUShadingLanguageRI/Visitor.js:
11150 (Visitor.prototype.visitProtocolDecl):
11152 2017-09-14 Filip Pizlo <fpizlo@apple.com>
11154 WSL should support ++, --, +=, and all of those things
11155 https://bugs.webkit.org/show_bug.cgi?id=176975
11157 Reviewed by Myles Maxfield.
11159 This adds an internal AST construct called LetExpression, that allows us to anonymously capture
11160 a value. This change uses LetExpression to implement prefix and suffix ++/-- and all of the
11163 * WebGPUShadingLanguageRI/All.js:
11164 * WebGPUShadingLanguageRI/Checker.js:
11165 * WebGPUShadingLanguageRI/EBufferBuilder.js:
11166 (EBufferBuilder.prototype.visitVariableDecl):
11167 (EBufferBuilder.prototype.visitLetExpression):
11169 * WebGPUShadingLanguageRI/Evaluator.js:
11170 (Evaluator.prototype.visitLetExpression):
11171 * WebGPUShadingLanguageRI/LetExpression.js: Added.
11173 (LetExpression.prototype.get origin):
11174 (LetExpression.prototype.get name):
11175 (LetExpression.prototype.toString):
11176 * WebGPUShadingLanguageRI/Lexer.js:
11177 (Lexer.prototype.next):
11179 * WebGPUShadingLanguageRI/NameResolver.js:
11180 (NameResolver.prototype.visitProtocolDecl):
11181 * WebGPUShadingLanguageRI/Parse.js:
11182 (isCallExpression):
11183 (finishParsingPostIncrement):
11184 (parsePossibleSuffix):
11185 (finishParsingPreIncrement):
11186 (parsePreIncrement):
11187 (parsePossiblePrefix):
11188 (parsePossibleAssignment):
11189 (parsePostIncrement):
11190 (parseEffectfulExpression):
11191 * WebGPUShadingLanguageRI/Rewriter.js:
11192 (Rewriter.prototype.visitFunctionLikeBlock):
11193 (Rewriter.prototype.visitLetExpression):
11195 * WebGPUShadingLanguageRI/StandardLibrary.js:
11198 * WebGPUShadingLanguageRI/Test.html:
11199 * WebGPUShadingLanguageRI/Test.js:
11200 (TEST_prefixPlusPlus):
11201 (TEST_prefixPlusPlusResult):
11202 (TEST_postfixPlusPlus):
11203 (TEST_postfixPlusPlusResult):
11204 (TEST_prefixMinusMinus):
11205 (TEST_prefixMinusMinusResult):
11206 (TEST_postfixMinusMinus):
11207 (TEST_postfixMinusMinusResult):
11209 (TEST_plusEqualsResult):
11210 (TEST_minusEquals):
11211 (TEST_minusEqualsResult):
11212 (TEST_timesEquals):
11213 (TEST_timesEqualsResult):
11214 (TEST_divideEquals):
11215 (TEST_divideEqualsResult):
11216 * WebGPUShadingLanguageRI/Visitor.js:
11217 (Visitor.prototype.visitProtocolDecl):
11219 2017-09-15 Brent Fulgham <bfulgham@apple.com>
11221 Provide mechanism to immediately end tests
11222 https://bugs.webkit.org/show_bug.cgi?id=176364
11223 <rdar://problem/34254780>
11225 Reviewed by Alex Christensen.
11227 WebKitTestRunner does not output state if the top loading frame has not been removed. This prevents some
11228 tests that attempt to exercise failed load state from working properly.
11230 This change adds a new 'forceImmediateCompletion' handler for DumpRenderTree and WebKitTestRunner so
11231 that we can properly test these conditions.
11233 * DumpRenderTree/TestRunner.h:
11234 * DumpRenderTree/mac/TestRunnerMac.mm:
11235 (TestRunner::forceImmediateCompletion): Added.
11236 * DumpRenderTree/win/TestRunnerWin.cpp:
11237 (TestRunner::forceImmediateCompletion): Ditto.
11238 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
11239 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
11240 (WTR::TestRunner::forceImmediateCompletion): Ditto.
11241 * WebKitTestRunner/InjectedBundle/TestRunner.h:
11243 2017-09-15 Youenn Fablet <youenn@apple.com>
11245 Add an URL method to remove both query string and fragment identifier
11246 https://bugs.webkit.org/show_bug.cgi?id=176911
11248 Reviewed by Alex Christensen.
11250 Adding unit test for new URL method as well as modified setQuery and setFragmentIdentifier.
11252 * TestWebKitAPI/Tests/WebCore/URL.cpp:
11253 (TestWebKitAPI::createURL):
11254 (TestWebKitAPI::TEST_F):
11256 2017-09-14 Yousuke Kimoto <yousuke.kimoto@sony.com>
11258 [WinCairo] Add an option to build WebKitLegacy and WebKit
11259 https://bugs.webkit.org/show_bug.cgi?id=176891
11261 Since TestWebKitAPI and MiniBrowser/win are used for WebKitLegacy,
11262 those subdirectories are ignored for WebKit build.
11264 Reviewed by Alex Christensen.
11268 2017-09-14 Lucas Forschler <lforschler@apple.com>
11270 Create a launcher for webkit-archives
11271 https://bugs.webkit.org/show_bug.cgi?id=176964
11273 Reviewed by Aakash Jain.
11275 * Scripts/run-webkit-archive: Added.
11276 (find_dyld_framework_path):
11277 (run_safari_for_webkit_development):
11278 (set_dyld_framework_path):
11281 2017-09-14 Alex Christensen <achristensen@webkit.org>
11283 Add WKUIDelegatePrivate equivalent of WKPageUIClient's drawHeader, drawFooter, headerHeight, and footerHeight
11284 https://bugs.webkit.org/show_bug.cgi?id=176889
11285 <rdar://problem/29270035>
11287 Reviewed by Andy Estes.
11289 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
11290 (-[PrintDelegate _webView:printFrame:]):
11291 (-[PrintDelegate _webViewHeaderHeight:]):
11292 (-[PrintDelegate _webViewFooterHeight:]):
11293 (-[PrintDelegate _webView:drawHeaderInRect:forPageWithTitle:URL:]):
11294 (-[PrintDelegate _webView:drawFooterInRect:forPageWithTitle:URL:]):
11297 * TestWebKitAPI/cocoa/TestWKWebView.h:
11298 * TestWebKitAPI/cocoa/TestWKWebView.mm:
11299 (-[TestWKWebView hostWindow]):
11301 2017-09-14 Ryan Haddad <ryanhaddad@apple.com>
11303 Unreviewed, rolling out r222033.
11305 This change caused API test WebKit.PrintFrame to time out.
11307 Reverted changeset:
11309 "Add WKUIDelegatePrivate equivalent of WKPageUIClient's
11310 drawHeader, drawFooter, headerHeight, and footerHeight"
11311 https://bugs.webkit.org/show_bug.cgi?id=176889
11312 http://trac.webkit.org/changeset/222033
11314 2017-09-14 Youenn Fablet <youenn@apple.com>
11316 Allow WTF::map to take function as parameter
11317 https://bugs.webkit.org/show_bug.cgi?id=176909
11319 Reviewed by Jer Noble.
11321 * TestWebKitAPI/Tests/WTF/Vector.cpp:
11322 (TestWebKitAPI::multiplyByTwo):
11323 (TestWebKitAPI::TEST):
11324 (TestWebKitAPI::multiplyByTwoMoveOnly):
11326 2017-09-14 Filip Pizlo <fpizlo@apple.com>
11328 WSL IntLiteralType should become int32 if unified with a type variable
11329 https://bugs.webkit.org/show_bug.cgi?id=176707
11331 Reviewed by Myles Maxfield.
11333 This makes it so that this works:
11335 T foo<T>(T x) { return x; }
11336 foo(42); // T becomes int32
11338 Previously, it did not work because IntLiteralType did not recognize TypeVariable as a number. Also,
11339 TypeVariable would try to evaluate protocol inheritance of IntLiteralType, which would not go well. One
11340 of the tests that this patch adds didn't just fail; it gave such an absurd 7-line type error that I felt
11341 like I was using SML.
11343 This fixes the problem by introducing what I think is a super deterministic way of handling literals and
11346 Before verifying a unification context, we now give all literals a chance to perform an extra
11347 unification step. This is a two-phase process. This ensures that the unification performed by one
11348 literal does not throw off the logic of some other literal. For example, if we do:
11350 void foo<T>(T, T) { }
11353 Then we want to always fail to compile, rather than sometimes succeeding. So, we first ask each literal
11354 if it thinks that it needs to do extra unification. Both of the literals will report that they want to
11355 in this case, because they will notice that they got unified with either at type variable or a literal,
11356 which isn't specific enough. Then after they all register to do extra unification, they will both try to
11357 unify with their preferred types (int32 for 42, uint32 for 42u). The first one will succeed, and the
11358 second will give an error.
11360 Without the special two-phase arrangement, it was possible to either get a type error or not depending
11361 on the order - for example foo(42, 42u) might fail while foo(42u, 42) succeeds. It was definitely not
11362 decidable, at least not unless you mandate the unification order as part of the type system spec. I
11363 think that would have been nuts.
11365 Both IntLiteral and UintLiteral are now "flexible"; the uint one will reject non-int or signed int
11366 types and will prefer uint, but otherwise it's the same logic. This means that this will be valid:
11370 But this is still wrong:
11374 To make this easy, I turned IntLiteral and UintLiteral (and IntLiteralType and UintLiteralType) into
11375 factory-built generic types (see createLiteral() and createLiteralType()). Because visitors use the
11376 constructor's declared name (GenericLiteral and GenericLiteralType in this case), it means that we can
11377 share a ton of code between the different literals. I love that ES6 lets you do that.
11379 * WebGPUShadingLanguageRI/All.js:
11380 * WebGPUShadingLanguageRI/Checker.js:
11381 * WebGPUShadingLanguageRI/CreateLiteral.js: Added.
11382 (createLiteral.GenericLiteral):
11383 (createLiteral.GenericLiteral.prototype.get value):
11384 (createLiteral.GenericLiteral.prototype.get isConstexpr):
11385 (createLiteral.GenericLiteral.prototype.toString):
11387 * WebGPUShadingLanguageRI/CreateLiteralType.js: Added.
11388 (createLiteralType.GenericLiteralType):
11389 (createLiteralType.GenericLiteralType.prototype.get origin):
11390 (createLiteralType.GenericLiteralType.prototype.get value):
11391 (createLiteralType.GenericLiteralType.prototype.get isPrimitive):
11392 (createLiteralType.GenericLiteralType.prototype.get isUnifiable):
11393 (createLiteralType.GenericLiteralType.prototype.get isLiteral):
11394 (createLiteralType.GenericLiteralType.prototype.typeVariableUnify):
11395 (createLiteralType.GenericLiteralType.prototype.unifyImpl):
11396 (createLiteralType.GenericLiteralType.prototype.prepareToVerify):
11397 (createLiteralType.GenericLiteralType.prototype.verifyAsArgument):
11398 (createLiteralType.GenericLiteralType.prototype.verifyAsParameter):
11399 (createLiteralType.GenericLiteralType.prototype.conversionCost):
11400 (createLiteralType.GenericLiteralType.prototype.commitUnification):
11401 (createLiteralType.GenericLiteralType.prototype.toString):
11402 (createLiteralType):
11403 * WebGPUShadingLanguageRI/Evaluator.js:
11404 (Evaluator.prototype.visitIntLiteral): Deleted.
11405 (Evaluator.prototype.visitUintLiteral): Deleted.
11406 * WebGPUShadingLanguageRI/IntLiteral.js:
11407 (let.IntLiteral.createLiteral.createType):
11408 (IntLiteral): Deleted.
11409 (IntLiteral.prototype.get value): Deleted.
11410 (IntLiteral.prototype.get isConstexpr): Deleted.
11411 (IntLiteral.prototype.toString): Deleted.
11412 * WebGPUShadingLanguageRI/IntLiteralType.js:
11413 (IntLiteralType): Deleted.
11414 (IntLiteralType.prototype.get origin): Deleted.
11415 (IntLiteralType.prototype.get value): Deleted.
11416 (IntLiteralType.prototype.get isPrimitive): Deleted.
11417 (IntLiteralType.prototype.get isUnifiable): Deleted.
11418 (IntLiteralType.prototype.typeVariableUnify): Deleted.
11419 (IntLiteralType.prototype.unifyImpl): Deleted.
11420 (IntLiteralType.prototype.verifyAsArgument): Deleted.
11421 (IntLiteralType.prototype.verifyAsParameter): Deleted.
11422 (IntLiteralType.prototype.conversionCost): Deleted.
11423 (IntLiteralType.prototype.commitUnification): Deleted.
11424 (IntLiteralType.prototype.toString): Deleted.
11425 * WebGPUShadingLanguageRI/Intrinsics.js:
11427 * WebGPUShadingLanguageRI/LiteralTypeChecker.js:
11428 (LiteralTypeChecker.prototype.visitIntLiteralType): Deleted.
11429 * WebGPUShadingLanguageRI/Node.js:
11430 (Node.prototype.prepareToVerify):
11431 (Node.prototype.commitUnification):
11432 (Node.prototype.get isLiteral):
11433 * WebGPUShadingLanguageRI/NullType.js:
11434 (NullType.prototype.get isLiteral):
11435 (NullType.prototype.toString):
11437 * WebGPUShadingLanguageRI/Parse.js:
11439 * WebGPUShadingLanguageRI/Rewriter.js:
11440 (Rewriter.prototype.visitGenericLiteralType):
11441 (Rewriter.prototype.visitIntLiteral): Deleted.
11442 (Rewriter.prototype.visitIntLiteralType): Deleted.
11443 (Rewriter.prototype.visitUintLiteral): Deleted.
11444 (Rewriter.prototype.visitBoolLiteral): Deleted.
11445 * WebGPUShadingLanguageRI/Test.html:
11446 * WebGPUShadingLanguageRI/Test.js:
11449 (TEST_uintSimpleMath):
11451 (TEST_notEquality):
11452 (TEST_intLiteralGeneric):
11453 (TEST_intLiteralGenericWithProtocols):
11454 (TEST_uintLiteralGeneric):
11455 (TEST_uintLiteralGenericWithProtocols):
11456 (TEST_intLiteralGenericSpecific):
11457 (TEST_twoIntLiterals):
11458 (TEST_unifyDifferentLiterals):
11459 (makeUInt): Deleted.
11460 (checkUInt): Deleted.
11461 * WebGPUShadingLanguageRI/Type.js:
11462 * WebGPUShadingLanguageRI/UintLiteral.js:
11463 (let.UintLiteral.createLiteral.createType):
11464 (UintLiteral): Deleted.
11465 (UintLiteral.prototype.get value): Deleted.
11466 (UintLiteral.prototype.get isConstexpr): Deleted.
11467 (UintLiteral.prototype.toString): Deleted.
11468 * WebGPUShadingLanguageRI/UintLiteralType.js: Added.
11469 (let.UintLiteralType.createLiteralType.verifyAsArgument):
11470 * WebGPUShadingLanguageRI/UnificationContext.js:
11471 (UnificationContext.prototype.verify):
11472 * WebGPUShadingLanguageRI/Visitor.js:
11473 (Visitor.prototype.visitProtocolDecl):
11475 2017-09-14 Ryan Haddad <ryanhaddad@apple.com>
11477 Unreviewed, rolling out r221868.
11479 Rolling out this change while we investigate test262 failures.
11481 Reverted changeset:
11483 "Turn on exception scope verification for JSC tests."
11484 https://bugs.webkit.org/show_bug.cgi?id=162351
11485 http://trac.webkit.org/changeset/221868
11487 2017-09-14 Alex Christensen <achristensen@webkit.org>
11489 Add WKUIDelegatePrivate equivalent of WKPageUIClient's drawHeader, drawFooter, headerHeight, and footerHeight
11490 https://bugs.webkit.org/show_bug.cgi?id=176889
11491 <rdar://problem/29270035>
11493 Reviewed by Andy Estes.
11495 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
11496 (-[PrintDelegate _webView:printFrame:]):
11497 (-[PrintDelegate _webViewHeaderHeight:]):
11498 (-[PrintDelegate _webViewFooterHeight:]):
11499 (-[PrintDelegate _webView:drawHeaderInRect:forPageWithTitle:URL:]):
11500 (-[PrintDelegate _webView:drawFooterInRect:forPageWithTitle:URL:]):
11503 * TestWebKitAPI/cocoa/TestWKWebView.h:
11504 * TestWebKitAPI/cocoa/TestWKWebView.mm:
11505 (-[TestWKWebView hostWindow]):
11507 2017-09-14 Carlos Alberto Lopez Perez <clopez@igalia.com>
11509 [GTK] Add a switch to start the mini-browser in full-screen mode
11510 https://bugs.webkit.org/show_bug.cgi?id=176904
11512 Reviewed by Carlos Garcia Campos.
11514 * MiniBrowser/gtk/main.c:
11517 2017-09-14 Filip Pizlo <fpizlo@apple.com>
11519 Unreviewed, fix a typo that was preventing a test from running.
11521 * WebGPUShadingLanguageRI/Test.js:
11523 2017-09-14 Carlos Garcia Campos <cgarcia@igalia.com>
11525 [GTK] Fail to build using internal jhbuild if libgtk3-dev is not installed in the system
11526 https://bugs.webkit.org/show_bug.cgi?id=176778
11528 Reviewed by Carlos Alberto Lopez Perez.
11530 We are building gtk+ in the jhbuild with introspection disabled, but Gtk-3.gir is required to build the
11531 WebKitGTK+ introspection. Also, if wayland-protocols is not installed, gtk+ is built without the wayland backend
11532 and it's no possible to enable the wayland target in WebKitGTK+ either.
11534 * gtk/jhbuild.modules: Do not disable introspection when building gtk+ and add wayland-protocols as a dependency.
11536 2017-09-14 Maureen Daum <mdaum@apple.com>
11538 Introduce the option to mark an HTML element as having AutoFill available.
11539 https://bugs.webkit.org/show_bug.cgi?id=176710
11541 Reviewed by Alex Christensen.
11543 Add an API test that verifies after we mark a field as having AutoFill available,
11544 Accessibility also considers it to have AutoFill available.
11546 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add AutoFillAvailable.mm
11547 * TestWebKitAPI/Tests/WebKitCocoa/AutoFillAvailable.mm: Added.
11548 Create an input element, mark it as having AutoFill available, then focus it so that
11549 we can get the accessibility information for it. Ask accessibility whether it considers
11550 the field to have AutoFill available, and pick the alert message based on that.
11551 (-[AutoFillAvailable webProcessPlugIn:didCreateBrowserContextController:]):
11552 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
11554 (-[AutoFillAvailableDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
11555 Verify that we get the alert message indicating that accessibility indeed considers
11556 the input element as having AutoFill available after we explicitly marked it as so.
11558 2017-09-13 John Wilander <wilander@apple.com>
11560 Introduce Storage Access API (document parts) as an experimental feature
11561 https://bugs.webkit.org/show_bug.cgi?id=175759
11562 <rdar://problem/34414107>
11564 Reviewed by Alex Christensen.
11566 * WebKitTestRunner/TestController.cpp:
11567 (WTR::TestController::resetPreferencesToConsistentValues):
11568 Turns the feature on for tests.
11570 2017-09-13 Matt Lewis <jlewis3@apple.com>
11572 Unreviewed, rolling out r221976.
11574 The test introduced was flaky from point of addition.
11576 Reverted changeset:
11578 "Introduce Storage Access API (document parts) as an
11579 experimental feature"
11580 https://bugs.webkit.org/show_bug.cgi?id=175759
11581 http://trac.webkit.org/changeset/221976
11583 2017-09-13 Lucas Forschler <lforschler@apple.com>
11585 Compress spindumps on client side before packaging into layout test results zip (mac & ios)
11586 https://bugs.webkit.org/show_bug.cgi?id=176853
11588 Reviewed by Aakash Jain.
11590 * BuildSlaveSupport/test-result-archive:
11592 (gzip_file): use gzip to compress a file, removing original
11593 (compress_spindumps): find and compress spindumps matching a filter
11594 (archive_test_results): refactor to snake_case
11595 (archiveTestResults): Deleted.
11597 2017-09-13 Alex Christensen <achristensen@webkit.org>
11599 Add WKUIDelegatePrivate equivalent of WKPageUIClient's setIsResizable, getWindowFrame, and setWindowFrame
11600 https://bugs.webkit.org/show_bug.cgi?id=176857
11601 <rdar://problem/29270035>
11603 Reviewed by Tim Horton.
11605 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
11606 (-[ModalDelegate _webViewRunModal:]):
11607 (-[ModalDelegate _webView:setResizable:]):
11608 (-[WindowFrameDelegate _webView:setWindowFrame:]):
11609 (-[WindowFrameDelegate _webView:getWindowFrameWithCompletionHandler:]):
11610 (-[WindowFrameDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
11612 (-[ResizableDelegate _webView:setResizable:]):
11613 (-[ResizableDelegate _webView:getIsResizableWithCompletionHandler:]):
11614 (-[ResizableDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
11616 2017-09-13 Youenn Fablet <youenn@apple.com>
11618 Add a lambda-based map for Vectors
11619 https://bugs.webkit.org/show_bug.cgi?id=176487
11621 Reviewed by Darin Adler.
11623 * TestWebKitAPI/Tests/WTF/Vector.cpp:
11624 (TestWebKitAPI::TEST):
11626 2017-09-13 John Wilander <wilander@apple.com>
11628 Introduce Storage Access API (document parts) as an experimental feature
11629 https://bugs.webkit.org/show_bug.cgi?id=175759
11630 <rdar://problem/33666847>
11632 Reviewed by Alex Christensen.
11634 * WebKitTestRunner/TestController.cpp:
11635 (WTR::TestController::resetPreferencesToConsistentValues):
11636 Turns the feature on for tests.
11638 2017-09-13 Per Arne Vollan <pvollan@apple.com>
11640 [Win] DRT option --gc-between-tests is not implemented.
11641 https://bugs.webkit.org/show_bug.cgi?id=176849
11643 Reviewed by Brent Fulgham.
11645 Perform GC after the test if this option is enabled. This patch also set the initial value of the flag
11646 to true, in order to catch GC related issues in the test in which they occur.
11648 * DumpRenderTree/win/DumpRenderTree.cpp:
11651 2017-09-12 Wenson Hsieh <wenson_hsieh@apple.com>
11653 [iOS DnD] Support DataTransfer.getData and DataTransfer.setData when dragging or dropping
11654 https://bugs.webkit.org/show_bug.cgi?id=176672
11655 <rdar://problem/34353723>
11657 Reviewed by Ryosuke Niwa.
11659 Adds new tests and tweaks existing DataInteractionTests to cover the tweaks made in this patch.
11660 SinglePlainTextURLTypeIdentifiers: Verify that inline presentation style is requested when dragging plaintext.
11661 SinglePlainTextWordTypeIdentifiers: Verify that inline presentation style is requested when dragging a link.
11662 ExternalSourceInlineTextToFileInput:
11663 Verify that an item provider marked as preferring inline presentation does not trigger file uploads by
11664 dragging a piece of inline text into a file input.
11665 CanStartDragOnDivWithDraggableAttribute:
11666 Verify that DataTransfer.setData and DataTransfer.getData work as expected by moving a draggable div.
11667 The test harness writes the id of the draggable div via the DataTransfer, and upon drop, reads the id
11668 back to figure out which element to append to the drop destination.
11670 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
11671 (TestWebKitAPI::TEST):
11673 2017-09-12 Ryosuke Niwa <rniwa@webkit.org>
11675 Dragging & dropping a file creates an attachment element even when it's disabled
11676 https://bugs.webkit.org/show_bug.cgi?id=176769
11678 Reviewed by Tim Horton.
11680 Added a webkit-test-runner flag to enable attachment element via runtime flag since this feature is now hidden
11681 behind a runtime-enabled flag which needs to be set at the time of global object initialization.
11683 * DumpRenderTree/TestOptions.h:
11684 (TestOptions): Added.
11685 * DumpRenderTree/TestOptions.mm:
11686 (TestOptions::TestOptions):
11687 * DumpRenderTree/mac/DumpRenderTree.mm:
11688 (setWebPreferencesForTestOptions):
11689 * WebKitTestRunner/TestController.cpp:
11690 (WTR::TestController::resetPreferencesToConsistentValues):
11691 (WTR::updateTestOptionsFromTestHeader):
11692 * WebKitTestRunner/TestOptions.h:
11693 (WTR::TestOptions::hasSameInitializationOptions const):
11694 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
11695 (WTR::TestController::platformCreateWebView):
11697 2017-09-11 Filip Pizlo <fpizlo@apple.com>
11699 WSL should allow you to say "protocol Foo : Bar { ... }"
11700 https://bugs.webkit.org/show_bug.cgi?id=176238
11702 Reviewed by Mylex Maxfield.
11704 This makes protocol "subtyping" work. It's not really subtyping. Protocol A inherits protocol B
11705 if every signature in B can be resolved against some signature in A. Also, you can explicitly
11706 subtype protocols using extends syntax ("protocol Foo : Bar, Baz { ... }").
11708 Also makes the diagnostics when type variable constraints fail a _lot_ better. This will even
11709 tell you diagnostics about why a function didn't match when protocols are not inheriting, and
11710 then it will tell you why the inheritance failed.
11712 * WebGPUShadingLanguageRI/All.js:
11713 * WebGPUShadingLanguageRI/AutoWrapper.js:
11714 (AutoWrapper.prototype.visitTypeVariable):
11716 * WebGPUShadingLanguageRI/Checker.js:
11717 (Checker.prototype.visitProtocolDecl.set throw):
11718 * WebGPUShadingLanguageRI/ConstexprTypeParameter.js:
11719 (ConstexprTypeParameter.prototype.verifyAsArgument):
11720 (ConstexprTypeParameter.prototype.verifyAsParameter):
11721 * WebGPUShadingLanguageRI/FlattenProtocolExtends.js: Added.
11722 * WebGPUShadingLanguageRI/Func.js:
11723 (Func.prototype.get typeParametersForCallResolution):
11724 * WebGPUShadingLanguageRI/InferTypesForCall.js:
11725 (inferTypesForCall):
11726 * WebGPUShadingLanguageRI/IntLiteralType.js:
11727 (IntLiteralType.prototype.verifyAsArgument):
11728 * WebGPUShadingLanguageRI/NameResolver.js:
11729 (NameResolver.prototype.visitProtocolDecl):
11730 (NameResolver.prototype.visitProtocolRef): Deleted.
11731 (NameResolver.prototype.visitProtocolFuncDecl): Deleted.
11732 (NameResolver.prototype.visitTypeDef): Deleted.
11733 (NameResolver.prototype.visitStructType): Deleted.
11734 (NameResolver.prototype._resolveTypeArguments): Deleted.
11735 (NameResolver.prototype.visitTypeRef): Deleted.
11736 (NameResolver.prototype.visitReferenceType): Deleted.
11737 (NameResolver.prototype.visitVariableDecl): Deleted.
11738 (NameResolver.prototype.visitVariableRef): Deleted.
11739 (NameResolver.prototype.visitReturn): Deleted.
11740 (NameResolver.prototype.visitCallExpression): Deleted.
11741 * WebGPUShadingLanguageRI/Node.js:
11742 (Node.prototype.equals):
11743 * WebGPUShadingLanguageRI/NullType.js:
11744 (NullType.prototype.verifyAsArgument):
11745 * WebGPUShadingLanguageRI/Parse.js:
11746 (parseProtocolDecl):
11747 * WebGPUShadingLanguageRI/Prepare.js:
11749 * WebGPUShadingLanguageRI/ProtocolDecl.js:
11750 (ProtocolDecl): Deleted.
11751 (ProtocolDecl.prototype.add): Deleted.
11752 (ProtocolDecl.prototype.get signatures): Deleted.
11753 (ProtocolDecl.prototype.signaturesByName): Deleted.
11754 (ProtocolDecl.prototype.get typeVariable): Deleted.
11755 (ProtocolDecl.prototype.signaturesByNameWithTypeVariable): Deleted.
11756 (ProtocolDecl.prototype.inherits): Deleted.
11757 (ProtocolDecl.prototype.hasHeir): Deleted.
11758 (ProtocolDecl.prototype.toString): Deleted.
11759 * WebGPUShadingLanguageRI/ProtocolFuncDecl.js:
11760 (ProtocolFuncDecl.prototype.get typeParametersForCallResolution):
11761 (ProtocolFuncDecl):
11762 * WebGPUShadingLanguageRI/Rewriter.js:
11763 (Rewriter.prototype.visitProtocolDecl):
11764 * WebGPUShadingLanguageRI/Test.html:
11765 * WebGPUShadingLanguageRI/Test.js:
11766 (TEST_nullTypeVariableUnify):
11767 (TEST_simpleProtocolExtends):
11768 (TEST_protocolExtendsTwo):
11769 * WebGPUShadingLanguageRI/Type.js:
11770 (Type.prototype.inherits):
11771 * WebGPUShadingLanguageRI/TypeDefResolver.js:
11772 (TypeDefResolver.prototype.visitTypeRef):
11774 * WebGPUShadingLanguageRI/TypeVariable.js:
11775 (TypeVariable.prototype.inherits):
11776 (TypeVariable.prototype.verifyAsArgument):
11777 (TypeVariable.prototype.verifyAsParameter):
11778 * WebGPUShadingLanguageRI/UnificationContext.js:
11779 (UnificationContext.prototype.verify):
11780 * WebGPUShadingLanguageRI/Visitor.js:
11781 (Visitor.prototype.visitProtocolDecl):
11782 (Visitor.prototype.visitTypeRef): Deleted.
11783 (Visitor.prototype.visitNativeType): Deleted.
11784 (Visitor.prototype.visitNativeTypeInstance): Deleted.
11785 (Visitor.prototype.visitTypeDef): Deleted.
11786 (Visitor.prototype.visitStructType): Deleted.
11787 (Visitor.prototype.visitTypeVariable): Deleted.
11788 (Visitor.prototype.visitConstexprTypeParameter): Deleted.
11789 (Visitor.prototype.visitField): Deleted.
11790 (Visitor.prototype.visitElementalType): Deleted.
11791 (Visitor.prototype.visitReferenceType): Deleted.
11792 (Visitor.prototype.visitPtrType): Deleted.
11793 (Visitor.prototype.visitArrayRefType): Deleted.
11794 (Visitor.prototype.visitArrayType): Deleted.
11795 (Visitor.prototype.visitVariableDecl): Deleted.
11796 (Visitor.prototype.visitAssignment): Deleted.
11797 (Visitor.prototype.visitDereferenceExpression): Deleted.
11798 (Visitor.prototype.visitDotExpression): Deleted.
11799 (Visitor.prototype.visitMakePtrExpression): Deleted.
11800 (Visitor.prototype.visitVariableRef): Deleted.
11801 (Visitor.prototype.visitIfStatement): Deleted.
11802 (Visitor.prototype.visitWhileLoop): Deleted.
11803 (Visitor.prototype.visitDoWhileLoop): Deleted.
11804 (Visitor.prototype.visitForLoop): Deleted.
11805 (Visitor.prototype.visitReturn): Deleted.
11806 (Visitor.prototype.visitContinue): Deleted.
11807 (Visitor.prototype.visitBreak): Deleted.
11808 (Visitor.prototype.visitIntLiteral): Deleted.
11809 (Visitor.prototype.visitIntLiteralType): Deleted.
11810 (Visitor.prototype.visitUintLiteral): Deleted.
11811 (Visitor.prototype.visitNullLiteral): Deleted.
11812 (Visitor.prototype.visitBoolLiteral): Deleted.
11813 (Visitor.prototype.visitNullType): Deleted.
11814 (Visitor.prototype.visitCallExpression): Deleted.
11815 (Visitor.prototype.visitLogicalNot): Deleted.
11816 (Visitor.prototype.visitFunctionLikeBlock): Deleted.
11817 * WebGPUShadingLanguageRI/WrapChecker.js:
11818 (WrapChecker.prototype.visitTypeVariable):
11821 2017-09-12 Carlos Garcia Campos <cgarcia@igalia.com>
11823 Remove duplicated test results from LayoutTest platform directories
11824 https://bugs.webkit.org/show_bug.cgi?id=176686
11826 Reviewed by Michael Catanzaro.
11828 After several rebaselines we might end up with the same result in the platform directory than the common result
11829 without noticing it. This patch adds a script to detect those cases and remove all duplicated results from the
11832 * Scripts/check-for-duplicated-platform-test-results: Added.
11834 (check_duplicate.sha1):
11837 2017-09-12 Carlos Alberto Lopez Perez <clopez@igalia.com>
11839 The EWS build system is forcing a non UTF-8 locale and breaks meson.
11840 https://bugs.webkit.org/show_bug.cgi?id=176761
11842 Reviewed by Michael Catanzaro.
11844 On 2011 in order to disable GCC smartquotes (UTF-8 pretty quotes)
11845 that were causing trouble with the commit-queue server, the tooling
11846 for the EWS bots started to force an LC_ALL=C locale.
11848 This was needed back then apparently because the commit-queue server
11849 was unable to handle properly UTF-8 text.
11851 6 years forward and none of the ports that commit-queue tests before
11852 landing a patch use GCC, but Clang. So this should not be an issue anymore.
11854 Forcing a non UTF-8 locale breaks the Meson build system (that the
11855 GTK/WPE ports use for some dependencies of its JHBuild dependencies
11856 local build system).
11857 It has also the potential to break things in subtle ways that are
11858 hard to debug and detect. So better stop doing this.
11860 This patch also changes TERM=none to TERM=dumb that is the proper
11861 way to disable VT100 codes (see bug 127922).
11863 * Scripts/webkitpy/common/system/environment.py:
11864 (Environment.to_dictionary):
11865 (Environment.disable_jhbuild_VT100_output):
11866 * Scripts/webkitpy/common/system/environment_unittest.py:
11867 (EnvironmentTest.test_disable_jhbuild_VT100_output):
11868 * Scripts/webkitpy/port/base.py:
11869 (Port._build_driver):
11870 (Port._build_image_diff):
11871 * Scripts/webkitpy/port/port_testcase.py:
11872 (PortTestCase.test_build_driver):
11873 * Scripts/webkitpy/tool/commands/download_unittest.py:
11874 * Scripts/webkitpy/tool/steps/build.py:
11876 * Scripts/webkitpy/tool/steps/steps_unittest.py:
11878 2017-09-12 Michael Catanzaro <mcatanzaro@igalia.com>
11880 [WPE][GTK] Run tests with G_DEBUG=fatal-criticals
11881 https://bugs.webkit.org/show_bug.cgi?id=176755
11883 Reviewed by Carlos Garcia Campos.
11885 * Scripts/webkitpy/port/gtk.py:
11886 (GtkPort.setup_environ_for_server):
11887 * Scripts/webkitpy/port/wpe.py:
11888 (WPEPort.setup_environ_for_server):
11890 2017-09-12 Alex Christensen <achristensen@webkit.org>
11892 Fix build after r221922.
11893 https://bugs.webkit.org/show_bug.cgi?id=176728
11895 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
11896 (-[ModalDelegate _webViewRunModal:]):
11897 (-[ModalDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
11899 svn-apply inserted the test too early in the file :(
11900 Shift it down to where all the used static variables are declared.
11902 2017-09-12 Alex Christensen <achristensen@webkit.org>
11904 Add WKUIDelegatePrivate equivalent of WKPageUIClient's runModal
11905 https://bugs.webkit.org/show_bug.cgi?id=176728
11906 <rdar://problem/29270035>
11908 Reviewed by Tim Horton.
11910 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
11911 (-[ModalDelegate _webViewRunModal:]):
11912 (-[ModalDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
11915 2017-09-12 Daniel Bates <dabates@apple.com>
11917 REGRESSION (r215784): The title of right-to-left pages are empty
11918 https://bugs.webkit.org/show_bug.cgi?id=176746
11919 <rdar://problem/34211419>
11921 Reviewed by Brent Fulgham.
11923 Add unit test to ensure we do not regress StringWithDirection.truncateFromEnd().
11925 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
11926 * TestWebKitAPI/Tests/WebCore/StringWithDirection.cpp: Added.
11927 (TestWebKitAPI::TEST):
11929 2017-09-12 Alex Christensen <achristensen@webkit.org>
11931 Add WKUIDelegatePrivate equivalent of WKPageUIClient's decidePolicyForNotificationPermissionRequest
11932 https://bugs.webkit.org/show_bug.cgi?id=176768
11933 <rdar://problem/29270035>
11935 Reviewed by Tim Horton.
11937 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
11938 (-[NotificationDelegate initWithAllowNotifications:]):
11939 (-[NotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
11940 (-[NotificationDelegate _webView:requestNotificationPermissionForSecurityOrigin:decisionHandler:]):
11943 2017-09-12 Brent Fulgham <bfulgham@apple.com>
11945 Show punycode to user if a URL mixes Armenian Seh or Vo with other scripts
11946 https://bugs.webkit.org/show_bug.cgi?id=176578
11947 <rdar://problem/33906231>
11949 Reviewed by Alex Christensen.
11951 * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
11952 (TestWebKitAPI::TEST):
11954 2017-09-12 Carlos Garcia Campos <cgarcia@igalia.com>
11956 [Freetype] Doesn't support coloured fonts
11957 https://bugs.webkit.org/show_bug.cgi?id=156579
11959 Reviewed by Michael Catanzaro.
11961 Bump webkitgtk-test-fonts to 0.0.6 version that includes the EmijoOne font.
11963 * gtk/jhbuild.modules:
11964 * wpe/jhbuild.modules:
11966 2017-09-11 Wenson Hsieh <wenson_hsieh@apple.com>
11968 [iOS DnD] Support DataTransfer.setDragImage when starting a drag on iOS
11969 https://bugs.webkit.org/show_bug.cgi?id=176721
11970 <rdar://problem/34373660>
11972 Reviewed by Tim Horton.
11974 In DataInteractionSimulator, ask the UIDragInteractionDelegate (WKContentView) for targeted drag previews after
11975 retrieving UIDragItems during a lift. Remember these previews after the drag and drop simulation is complete, so
11976 API tests (currently, just DragLiftPreviewDataTransferSetDragImage) can verify that the generated drag previews
11979 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
11980 * TestWebKitAPI/Tests/WebKitCocoa/DataTransfer-setDragImage.html: Added.
11982 Adds a new test harness containing 5 draggable elements, each generating a drag image using different codepaths.
11983 DragLiftPreviewDataTransferSetDragImage uses this page to check that the frame of the targeted drag preview in
11984 each scenario is as expected.
11986 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
11987 (checkCGRectIsEqualToCGRectWithLogging):
11988 (TestWebKitAPI::TEST):
11989 * TestWebKitAPI/ios/DataInteractionSimulator.h:
11990 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
11991 (-[DataInteractionSimulator _resetSimulatedState]):
11992 (-[DataInteractionSimulator _advanceProgress]):
11993 (-[DataInteractionSimulator liftPreviews]):
11995 2017-09-11 Tim Horton <timothy_horton@apple.com>
11997 REGRESSION (r221272): WKWebView gets stuck zoomed in if the web process crashes
11998 https://bugs.webkit.org/show_bug.cgi?id=176767
11999 <rdar://problem/34196874>
12001 Reviewed by Dan Bernstein.
12003 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
12005 Add a test ensuring that override layout size persists through Web
12006 Content process crash.
12008 2017-09-11 Wenson Hsieh <wenson_hsieh@apple.com>
12010 [iOS WK2] Support tapping to add items to the current drag session in web content
12011 https://bugs.webkit.org/show_bug.cgi?id=176421
12012 <rdar://problem/31144674>
12014 Reviewed by Tim Horton.
12016 Adds a new drag and drop test that begins a drag on a text selection, adds an image and a link, and then drops
12017 into a contenteditable area. This verifies that the text, link and image are inserted into the editable area
12020 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
12021 (TestWebKitAPI::TEST):
12023 2017-09-11 Lucas Forschler <lforschler@apple.com>
12025 bisect-builds: add --list option
12026 https://bugs.webkit.org/show_bug.cgi?id=174836
12028 Reviewed by Aakash Jain & Stephanie Lewis.
12030 * Scripts/bisect-builds:
12031 (parse_args): add --list option
12032 (minified_platforms): update supported platform list (add ios simulator)
12033 (print_list_and_exit): helper function to print list and exit
12035 2017-09-11 Wenson Hsieh <wenson_hsieh@apple.com>
12037 [iOS WK2] ExternalSourceDataTransferItemGetAsEntry tests produce inconsistent results on test automation bots
12038 https://bugs.webkit.org/show_bug.cgi?id=176736
12040 Reviewed by Andy Estes and Megan Gardner.
12042 The test output dumped when dropping a file in DataTransferItem-getAsEntry.html should adhere to some deterministic order.
12043 Currently, this is not enforced, so on some systems, these tests fail due to expected test output being out of order. To
12044 fix this, simply have the test harness alphabetically sort the output before writing to the textarea.
12046 * TestWebKitAPI/Tests/WebKitCocoa/DataTransferItem-getAsEntry.html:
12047 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
12048 (TestWebKitAPI::TEST):
12050 2017-09-11 Ryosuke Niwa <rniwa@webkit.org>
12052 webkitbot should recognize commands even when colon is omitted
12053 https://bugs.webkit.org/show_bug.cgi?id=176680
12054 <rdar://problem/29933898>
12056 Reviewed by Daniel Bates.
12058 Recognize the IRC command even when : and , were not present.
12059 Unfortunately, there is no unit test for this code at the moment.
12061 * Scripts/webkitpy/common/net/irc/ircbot.py:
12062 (IRCBot.on_pubmsg):
12064 2017-09-11 Lucas Forschler <lforschler@apple.com>
12066 bisect-builds doesn't work due to missing requests module
12067 https://bugs.webkit.org/show_bug.cgi?id=175709
12069 Reviewed by Ryosuke Niwa.
12071 * Scripts/bisect-builds: use urllib2 instead of the requests module.
12072 (get_s3_location_for_revision):
12075 2017-09-11 Filip Pizlo <fpizlo@apple.com>
12077 WSL Substitution should probably wrap type variables of substituted types rather than just wrapping the whole type
12078 https://bugs.webkit.org/show_bug.cgi?id=176677
12080 Reviewed by Mylex Maxfield.
12082 This adds a checker that verifies that all type references and variable references are wrapped.
12084 Then this fixes errors found by that checker by making Substitution auto-wrap replacements rather than
12085 manually wrapping the outer type (for types) and cloning (for values).
12087 * WebGPUShadingLanguageRI/All.js:
12088 * WebGPUShadingLanguageRI/AutoWrapper.js: Added.
12089 (AutoWrapper.prototype.visitVariableRef):
12090 (AutoWrapper.prototype.visitTypeRef):
12091 (AutoWrapper.prototype.visitConstexprTypeParameter):
12092 (AutoWrapper.prototype.visitFuncParameter):
12093 (AutoWrapper.prototype.visitVariableDecl):
12094 (AutoWrapper.prototype.visitStructType):
12095 (AutoWrapper.prototype.visitNativeType):
12097 * WebGPUShadingLanguageRI/CheckWrapped.js:
12098 (checkExpressionWrapped):
12099 (checkProgramWrapped):
12100 (checkWrapped): Deleted.
12101 * WebGPUShadingLanguageRI/Checker.js:
12102 * WebGPUShadingLanguageRI/ExpressionFinder.js: Added.
12103 (ExpressionFinder):
12104 (ExpressionFinder.prototype.visitFunc):
12105 (ExpressionFinder.prototype.visitFuncParameter):
12106 (ExpressionFinder.prototype.visitConstexprTypeParameter):
12107 (ExpressionFinder.prototype.visitAssignment):
12108 (ExpressionFinder.prototype.visitCallExpression):
12109 (ExpressionFinder.prototype.visitReturn):
12110 (ExpressionFinder.prototype.visitWhileLoop):
12111 (ExpressionFinder.prototype.visitDoWhileLoop):
12112 (ExpressionFinder.prototype.visitIfStatement):
12113 (ExpressionFinder.prototype.visitForLoop):
12114 (ExpressionFinder.prototype.visitVariableDecl):
12115 * WebGPUShadingLanguageRI/NativeFuncInstance.js:
12116 (NativeFuncInstance):
12117 * WebGPUShadingLanguageRI/Node.js:
12118 (Node.prototype.substituteToUnification):
12120 (Node.prototype.clone): Deleted.
12121 * WebGPUShadingLanguageRI/Prepare.js:
12123 * WebGPUShadingLanguageRI/StructLayoutBuilder.js:
12124 (StructLayoutBuilder.prototype.visitReferenceType):
12125 (StructLayoutBuilder.prototype.visitField):
12126 (StructLayoutBuilder):
12127 * WebGPUShadingLanguageRI/Substitution.js:
12129 (Substitution.prototype.visitTypeRef):
12130 (Substitution.prototype.visitVariableRef):
12131 * WebGPUShadingLanguageRI/Test.html:
12132 * WebGPUShadingLanguageRI/Test.js:
12133 (TEST_chainConstexpr):
12134 (TEST_chainGeneric):
12135 (TEST_chainStruct):
12136 (TEST_chainStructInvalid):
12137 * WebGPUShadingLanguageRI/Visitor.js:
12138 (Visitor.prototype.visitNativeTypeInstance):
12139 * WebGPUShadingLanguageRI/WrapChecker.js:
12140 (WrapChecker.prototype._foundUnwrapped.originString):
12141 (WrapChecker.prototype._foundUnwrapped):
12144 2017-09-11 Ryan Haddad <ryanhaddad@apple.com>
12146 Fix multiple master.cfg unit test failures.
12147 https://bugs.webkit.org/show_bug.cgi?id=176745
12149 Reviewed by Alexey Proskuryakov.
12151 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
12152 (TestFactory.__init__): Add missing ':'.
12153 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Update expected results for Windows and iOS build steps.
12155 2017-09-11 Jonathan Bedard <jbedard@apple.com>
12157 Older versions should adopt newer version's expectations on mac
12158 https://bugs.webkit.org/show_bug.cgi?id=176699
12159 <rdar://problem/34367907>
12161 Reviewed by Alexey Proskuryakov.
12178 * Scripts/webkitpy/port/mac.py:
12179 (MacPort.default_baseline_search_path): Use VERSION_FALLBACK_ORDER to have old
12180 versions inherit expectations from newer versions.
12181 * Scripts/webkitpy/port/mac_unittest.py:
12182 (MacTest.test_layout_test_searchpath_with_apple_additions): Check new behavior
12183 with older versions inheriting expectations from newer versions.
12185 2017-09-11 Ryan Haddad <ryanhaddad@apple.com>
12187 Skip JSC test wsl-tests.yaml/Test.js
12188 https://bugs.webkit.org/show_bug.cgi?id=176727
12190 Unreviewed test gardening.
12192 * WebGPUShadingLanguageRI/wsl-tests.yaml:
12194 2017-09-11 Alex Christensen <achristensen@webkit.org>
12196 Add WKUIDelegatePrivate equivalent of WKPageUIClient's decidePolicyForGeolocationPermissionRequest
12197 https://bugs.webkit.org/show_bug.cgi?id=176642
12198 <rdar://problem/29270035>
12200 Reviewed by Darin Adler.
12202 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
12203 (-[GeolocationDelegate initWithAllowGeolocation:]):
12204 (-[GeolocationDelegate _webView:requestGeolocationPermissionForFrame:decisionHandler:]):
12205 (-[GeolocationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
12208 2017-09-11 Wenson Hsieh <wenson_hsieh@apple.com>
12210 [iOS DnD] Elements in the DOM with the `draggable` attribute should be draggable
12211 https://bugs.webkit.org/show_bug.cgi?id=176664
12212 <rdar://problem/32596156>
12214 Reviewed by Tim Horton.
12216 Adds a new API test checking that elements marked as drag sources via the `draggable` attribute can be dragged
12217 with a non-null drag preview. Additionally, refactor the drag and drop simulator to not plumb drag/drop
12218 interaction delegate calls through to the WKContentView via -_simulate*-prefixed testing SPI, but rather
12219 by grabbing the WKWebView's drag and drop interaction delegates (i.e. the WKContentView) and calling delegate
12220 methods directly. This avoids requiring boilerplate plumbing on WKWebView and WKContentView for each of the drag
12221 and drop delegate methods, so these have been removed from WKWebView and WKContentView.
12223 Additionally, renames MockDataOperationSession and MockDataInteractionSession to MockDragSession and
12224 MockDropSession, respectively, and adjusts their ivars on DataInteractionSimulator to match.
12226 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
12227 * TestWebKitAPI/Tests/WebKitCocoa/custom-draggable-div.html: Added.
12229 Add a new test harness covering dragging and dropping elements with the draggable attribute, using DataTransfer
12230 API (setData and getData) as well.
12232 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
12233 (TestWebKitAPI::TEST):
12234 * TestWebKitAPI/ios/DataInteractionSimulator.h:
12235 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
12236 (-[WKWebView dropInteractionDelegate]):
12237 (-[WKWebView dragInteractionDelegate]):
12238 (-[WKWebView dropInteraction]):
12239 (-[WKWebView dragInteraction]):
12241 Add testing utilities to ask a WKWebView for information about its drag/drop interactions and delegates. In this
12242 case, this will return the WKWebView's WKContentView.
12244 (-[DataInteractionSimulator _resetSimulatedState]):
12245 (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
12246 (-[DataInteractionSimulator runFrom:to:additionalItemRequestLocations:]):
12247 (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
12248 (-[DataInteractionSimulator _sendQueuedAdditionalItemRequest]):
12249 (-[DataInteractionSimulator _advanceProgress]):
12251 When beginning a drag session, ask the delegate for targeted lift previews and verify that these are non-null.
12252 This check would fail prior to the tweak in DragDropInteractionState in this patch.
12254 (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
12255 (-[MockDataOperationSession initWithProviders:location:window:allowMove:]): Deleted.
12256 (-[MockDataOperationSession session]): Deleted.
12257 (-[MockDataOperationSession isLocal]): Deleted.
12258 (-[MockDataOperationSession progress]): Deleted.
12259 (-[MockDataOperationSession setProgressIndicatorStyle:]): Deleted.
12260 (-[MockDataOperationSession progressIndicatorStyle]): Deleted.
12261 (-[MockDataOperationSession operationMask]): Deleted.
12262 (-[MockDataOperationSession localDragSession]): Deleted.
12263 (-[MockDataOperationSession hasItemsConformingToTypeIdentifier:]): Deleted.
12264 (-[MockDataOperationSession canCreateItemsOfClass:]): Deleted.
12265 (-[MockDataOperationSession loadObjectsOfClass:completion:]): Deleted.
12266 (-[MockDataInteractionSession initWithWindow:allowMove:]): Deleted.
12267 (-[MockDataInteractionSession localOperationMask]): Deleted.
12268 (-[MockDataInteractionSession externalOperationMask]): Deleted.
12270 Replace various places where we called -_simulate* methods on WKWebView with calls to the
12271 UIDragInteractionDelegate or UIDropInteractionDelegate (the WKContentView) instead. Also, adjust for some
12272 mechanical renaming of drag and drop sessions.
12274 (-[MockDataInteractionSession session]): Deleted.
12275 * TestWebKitAPI/ios/UIKitSPI.h:
12277 2017-09-11 Joseph Pecoraro <pecoraro@apple.com>
12279 Make the WPT entry point for LayoutTests/http/wpt more discoverable
12280 https://bugs.webkit.org/show_bug.cgi?id=176494
12282 Reviewed by Youenn Fablet.
12284 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
12286 Output a tip for how to access the http/wpt tests.
12288 2017-09-11 Mark Lam <mark.lam@apple.com>
12290 Turn on exception scope verification for JSC tests.
12291 https://bugs.webkit.org/show_bug.cgi?id=162351
12292 <rdar://problem/29563911>
12294 Reviewed by Saam Barati.
12296 Added the option to --validateExceptionChecks=true option to BASE_OPTIONS in
12297 run-jsc-stress-tests. This turns on exception scope verification on JSC test
12298 runs (which currently does not include testapi).
12300 Some stats on time to run JSC stress and mozilla tests:
12301 1. Release build w/o --validateExceptionChecks=true: real 16m22.544s, user 156m24.080s, sys 123m3.649s
12302 2. Debug build w/o --validateExceptionChecks=true: real 78m34.206s, user 1661m57.008s, sys 73m21.177s
12303 3. Debug build w/ --validateExceptionChecks=true: real 77m41.106s, user 1656m13.924s, sys 73m42.309s
12304 4. Debug build w/ --validateExceptionChecks=true --dumpSimulatedThrows=true: real 92m56.918s, user 2012m56.441s, sys 75m14.174s
12306 The stats shows that (2) and (3) has effectively no time difference. Hence, the
12307 cost of enabling --validateExceptionChecks=true is not significant.
12309 It would be nice to enable --dumpSimulatedThrows=true as well, but (4) is about
12310 21% slower than (3). To avoid making debug test runs a lot slower, we'll leave
12311 --dumpSimulatedThrows=true off. We can manually add that when we see a regression
12312 and need to debug the issue. Otherwise, we wont pay the price for it.
12314 * Scripts/run-jsc-stress-tests:
12316 2017-09-11 Myles C. Maxfield <mmaxfield@apple.com>
12318 WSL should support for loops
12319 https://bugs.webkit.org/show_bug.cgi?id=176682
12321 Reviewed by Filip Pizlo.
12323 Follows the pattern of the existing infrastructure of while loops.
12325 * WebGPUShadingLanguageRI/All.js:
12326 * WebGPUShadingLanguageRI/Checker.js:
12327 * WebGPUShadingLanguageRI/Evaluator.js:
12328 (Evaluator.prototype.visitForLoop):
12329 * WebGPUShadingLanguageRI/ForLoop.js: Copied from Tools/WebGPUShadingLanguageRI/LoopChecker.js.
12331 (ForLoop.prototype.get origin):
12332 (ForLoop.prototype.get initialization):
12333 (ForLoop.prototype.get condition):
12334 (ForLoop.prototype.get increment):
12335 (ForLoop.prototype.get body):
12336 (ForLoop.prototype.toString):
12337 * WebGPUShadingLanguageRI/LoopChecker.js:
12338 (LoopChecker.prototype.visitForLoop):
12339 * WebGPUShadingLanguageRI/NameResolver.js:
12340 (NameResolver.prototype.visitForLoop):
12341 * WebGPUShadingLanguageRI/Parse.js:
12343 * WebGPUShadingLanguageRI/ReturnChecker.js:
12344 (ReturnChecker.prototype._isBoolCastFromLiteralTrue):
12345 (ReturnChecker.prototype.visitWhileLoop):
12346 (ReturnChecker.prototype.visitDoWhileLoop):
12347 (ReturnChecker.prototype.visitForLoop):
12348 * WebGPUShadingLanguageRI/Rewriter.js:
12349 (Rewriter.prototype.visitForLoop):
12351 * WebGPUShadingLanguageRI/Test.html:
12352 * WebGPUShadingLanguageRI/Test.js:
12354 * WebGPUShadingLanguageRI/Visitor.js:
12355 (Visitor.prototype.visitForLoop):
12357 2017-09-11 Robin Morisset <rmorisset@apple.com>
12359 Just added myself to the contributors.json file as a committer
12363 2017-09-10 Filip Pizlo <fpizlo@apple.com>
12365 IntLiteral should prefer int32 during overload resolution
12366 https://bugs.webkit.org/show_bug.cgi?id=176675
12368 Reviewed by Myles Maxfield.
12370 This makes intLiteralType prefer to resolve to int over other types.
12372 This also adds tests that if you pass intLiteral to T, then you can make it work by saying
12375 * WebGPUShadingLanguageRI/IntLiteralType.js:
12377 (IntLiteralType.prototype.conversionCost):
12378 * WebGPUShadingLanguageRI/Node.js:
12379 (Node.prototype.conversionCost):
12380 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
12381 (resolveOverloadImpl):
12382 * WebGPUShadingLanguageRI/Rewriter.js:
12383 (Rewriter.prototype.visitIntLiteralType):
12384 * WebGPUShadingLanguageRI/Test.js:
12385 (TEST_intOverloadResolution):
12386 (TEST_intOverloadResolutionReverseOrder):
12387 (TEST_intOverloadResolutionGeneric):
12388 (TEST_intLiteralGeneric):
12389 * WebGPUShadingLanguageRI/UnificationContext.js:
12390 (UnificationContext.prototype.get conversionCost):
12391 * WebGPUShadingLanguageRI/Visitor.js:
12392 (Visitor.prototype.visitIntLiteralType):
12394 2017-09-10 Filip Pizlo <fpizlo@apple.com>
12396 WSL should be able to handle a simple constexpr type parameter
12397 https://bugs.webkit.org/show_bug.cgi?id=176676
12399 Reviewed by Myles Maxfield.
12401 This adds a test that uses a constexpr type parameter, and then fixed enough bugs to get this to work.
12403 * WebGPUShadingLanguageRI/All.js:
12404 * WebGPUShadingLanguageRI/CallExpression.js:
12405 (CallExpression.prototype.resolve):
12406 * WebGPUShadingLanguageRI/CheckWrapped.js: Added.
12408 * WebGPUShadingLanguageRI/Checker.js:
12409 * WebGPUShadingLanguageRI/Evaluator.js:
12410 (Evaluator.prototype.visitCallExpression):
12412 * WebGPUShadingLanguageRI/Node.js:
12413 (Node.prototype.substituteToUnification):
12414 (Node.prototype.clone):
12416 * WebGPUShadingLanguageRI/Substitution.js:
12418 (Substitution.prototype.visitVariableRef):
12419 * WebGPUShadingLanguageRI/Test.html:
12420 * WebGPUShadingLanguageRI/Test.js:
12421 (TEST_simpleConstexpr):
12422 * WebGPUShadingLanguageRI/WrapChecker.js: Added.
12424 (WrapChecker.prototype.visitVariableRef):
12425 (WrapChecker.prototype.visitTypeRef):
12426 (WrapChecker.prototype.visitIntLiteral):
12427 (WrapChecker.prototype._foundUnwrapped):
12428 (WrapChecker.visitConstexprTypeParameter):
12429 (WrapChecker.prototype.visitFuncParameter):
12430 (WrapChecker.prototype.visitVariableDecl):
12431 (WrapChecker.prototype.visitStructType):
12432 (WrapChecker.prototype.visitNativeType):
12434 2017-09-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
12436 [WPE] Bump freetype version to 2.8.0
12437 https://bugs.webkit.org/show_bug.cgi?id=176501
12439 Reviewed by Michael Catanzaro.
12441 Bump freetype on WPE like r221670 did on GTK.
12443 * wpe/jhbuild.modules:
12444 * wpe/patches/freetype6-2.4.11-truetype-font-height-fix.patch: Removed.
12446 2017-09-10 Carlos Garcia Campos <cgarcia@igalia.com>
12448 REGRESSION: [GTK] Generated HTML API documentation is missing descriptions
12449 https://bugs.webkit.org/show_bug.cgi?id=176667
12451 Reviewed by Michael Catanzaro.
12453 This is happening since we moved the implementation files to glib dirs. The generate-gtkdoc script assumes that
12454 header and implementation files are always in the same directory. To reduce the input we pass to gtk-doc we
12455 ignore cpp files for which there isn't a public header. The code to do this check doesn't consider cpp files in
12456 a different directory than the header file. It also assumes that header and cpp files have the same filename
12457 except for the extension, which is true in all cases but WebKitWebView that we have two files WebKitWebView.cpp
12458 and WebKitWebViewGtk.cpp.
12460 * gtk/generate-gtkdoc:
12461 (files_to_ignore): Check also cpp files with the Gtk suffix.
12462 (files_to_ignore.add_file_if_exists): Check if a file with the given name exists in any of the source dirs.
12464 2017-09-10 Myles C. Maxfield <mmaxfield@apple.com>
12466 WSL should support while loops
12467 https://bugs.webkit.org/show_bug.cgi?id=176581
12469 Reviewed by Filip Pizlo.
12471 There are a few interesting pieces to this patch:
12472 1. Because the evaluator is just a node-based descent through the tree, the implementation of break
12473 and continue are just "throw".
12474 2. The ReturnChecker now has to return a three-state enum because of nested blocks. The outer block
12475 cares about if the inner block has "break" as opposed to it having no returns nor breaks/continues.
12476 3. ReturnChecker will treat "while (true)" the same as { }, but will not descend deeper for things
12477 like "while (3 == 3)".
12478 4. This patch also adds a few more boolean conditional functions like operator<().
12479 5. I added another pass which makes sure there are no bare break/return keywords outside of loops.
12481 * WebGPUShadingLanguageRI/All.js:
12482 * WebGPUShadingLanguageRI/Break.js: Copied from Tools/WebGPUShadingLanguageRI/CheckUnreachableCode.js.
12484 (Break.prototype.get origin):
12485 (Break.prototype.toString):
12486 * WebGPUShadingLanguageRI/CheckLoops.js: Copied from Tools/WebGPUShadingLanguageRI/CheckReturns.js.
12488 * WebGPUShadingLanguageRI/CheckReturns.js:
12490 * WebGPUShadingLanguageRI/CheckUnreachableCode.js:
12491 (checkUnreachableCode):
12492 * WebGPUShadingLanguageRI/Checker.js:
12493 * WebGPUShadingLanguageRI/Continue.js: Copied from Tools/WebGPUShadingLanguageRI/CheckReturns.js.
12495 (Continue.prototype.get origin):
12496 (Continue.prototype.toString):
12497 * WebGPUShadingLanguageRI/Evaluator.js:
12498 (Evaluator.prototype.visitWhileLoop):
12499 (Evaluator.prototype.visitBreak):
12500 (Evaluator.prototype.visitContinue):
12501 * WebGPUShadingLanguageRI/Intrinsics.js:
12503 * WebGPUShadingLanguageRI/Lexer.js:
12504 (Lexer.prototype.next):
12506 * WebGPUShadingLanguageRI/LoopChecker.js: Copied from Tools/WebGPUShadingLanguageRI/ReturnChecker.js.
12508 (LoopChecker.prototype.visitFuncDef):
12509 (LoopChecker.prototype.visitWhileLoop):
12510 (LoopChecker.prototype.visitBreak):
12511 (LoopChecker.prototype.visitContinue):
12512 * WebGPUShadingLanguageRI/NameResolver.js:
12513 (NameResolver.prototype.visitWhileLoop):
12514 * WebGPUShadingLanguageRI/Node.js:
12515 (Node.prototype.visit):
12516 * WebGPUShadingLanguageRI/Parse.js:
12517 (parsePossibleRelationalInequality):
12521 * WebGPUShadingLanguageRI/Prepare.js:
12523 * WebGPUShadingLanguageRI/ReturnChecker.js:
12525 (ReturnChecker.prototype.visitFuncDef):
12526 (ReturnChecker.prototype.visitBlock):
12527 (ReturnChecker.prototype.visitIfStatement):
12528 (ReturnChecker.prototype.visitWhileLoop):
12529 (ReturnChecker.prototype.visitReturn):
12530 (ReturnChecker.prototype.visitBreak):
12531 (ReturnChecker.prototype.visitContinue):
12532 * WebGPUShadingLanguageRI/Rewriter.js:
12533 (Rewriter.prototype.visitContinue):
12534 (Rewriter.prototype.visitBreak):
12535 (Rewriter.prototype.visitWhileLoop):
12537 * WebGPUShadingLanguageRI/StandardLibraryPrologue.js:
12538 * WebGPUShadingLanguageRI/Test.html:
12539 * WebGPUShadingLanguageRI/Test.js:
12541 (TEST_simpleWhile):
12542 * WebGPUShadingLanguageRI/UnreachableCodeChecker.js:
12543 (UnreachableCodeChecker):
12544 (UnreachableCodeChecker.prototype.visitBlock):
12545 * WebGPUShadingLanguageRI/Visitor.js:
12546 (Visitor.prototype.visitWhileLoop):
12547 (Visitor.prototype.visitContinue):
12548 (Visitor.prototype.visitBreak):
12549 * WebGPUShadingLanguageRI/WhileLoop.js: Copied from Tools/WebGPUShadingLanguageRI/CheckReturns.js.
12551 (WhileLoop.prototype.get origin):
12552 (WhileLoop.prototype.get conditional):
12553 (WhileLoop.prototype.get body):
12554 (WhileLoop.prototype.toString):
12556 2017-09-07 Filip Pizlo <fpizlo@apple.com>
12558 WSL overload resolution should not be cascading
12559 https://bugs.webkit.org/show_bug.cgi?id=176333
12561 Reviewed by Myles Maxfield.
12563 This removes the cascading nature of overload resolution that WSL used to have, and replaces it with
12564 something C++-like. If there are multiple overload candidates that match the callsite, then we resolve
12565 them against each other. Anytime a function cannot be resolved onto another function, it is removed,
12566 since this means that this function is in some way more general than the other one, and we are just
12567 looking for the most specific function.
12569 If this process ends with only one function being selected, then we succeed, else we fail.
12571 Also changed the syntax for defining generic casts to:
12573 operator<T> Thingy<T>(things)
12575 Also fixed parsing of cast expressions. It's now possible to say a cast expression in WSL.
12577 The removal of cascading causes some problems. For example, the following two operators in our standard
12578 library are ambiguous for bool(bool):
12581 operator<T:Equatable> bool(T)
12583 I think that what we really want is to say that the following operators are restricted to the standard
12589 It should not be possible to ever overload these.
12591 These changes are mostly tested by existing tests and the changes in the standard library, which has to
12592 be parsed for every test.
12594 * WebGPUShadingLanguageRI/All.js:
12595 * WebGPUShadingLanguageRI/ArrayRefType.js:
12596 (ArrayRefType.prototype.unifyImpl):
12597 * WebGPUShadingLanguageRI/CallExpression.js:
12599 (CallExpression.prototype.get isCast):
12600 (CallExpression.prototype.get returnType):
12601 (CallExpression.prototype.resolve):
12602 (CallExpression.prototype.becomeCast):
12603 (CallExpression.prototype.setCastData):
12604 (CallExpression.prototype.toString):
12605 * WebGPUShadingLanguageRI/Checker.js:
12606 * WebGPUShadingLanguageRI/Evaluator.js:
12607 (Evaluator.prototype.visitLogicalNot):
12608 * WebGPUShadingLanguageRI/Func.js:
12609 (Func.prototype.get returnTypeForOverloadResolution):
12610 * WebGPUShadingLanguageRI/FuncDef.js:
12612 * WebGPUShadingLanguageRI/FuncInstantiator.js:
12613 (FuncInstantiator.prototype.getUnique.FindTypeVariable.prototype.visitTypeVariable):
12614 (FuncInstantiator.prototype.getUnique.FindTypeVariable):
12615 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
12616 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
12617 * WebGPUShadingLanguageRI/FunctionLikeBlock.js:
12618 (FunctionLikeBlock.prototype.toString):
12619 (FunctionLikeBlock):
12620 * WebGPUShadingLanguageRI/InferTypesForCall.js: Added.
12621 (inferTypesForCall):
12622 * WebGPUShadingLanguageRI/Inline.js:
12623 (resolveInlinedFunction):
12624 * WebGPUShadingLanguageRI/Lexer.js:
12626 (Lexer.prototype.next):
12627 * WebGPUShadingLanguageRI/NameContext.js:
12629 (NameContext.prototype.mapFor):
12630 (NameContext.prototype.add):
12631 (NameContext.prototype.get let):
12632 (NameContext.prototype.Symbol.iterator):
12633 (NameContext.get currentStatement): Deleted.
12634 * WebGPUShadingLanguageRI/NameResolver.js:
12635 (NameResolver.prototype.visitProgram):
12636 (NameResolver.prototype.determinePossibleOverloads):
12637 (NameResolver.prototype.visitProtocolFuncDecl):
12638 (NameResolver.prototype.visitCallExpression):
12640 * WebGPUShadingLanguageRI/NativeFunc.js:
12642 * WebGPUShadingLanguageRI/Node.js:
12643 (Node.prototype.visit):
12644 * WebGPUShadingLanguageRI/Parse.js:
12645 (parsePossiblePrefix):
12649 (parsePreferredFuncDef):
12651 * WebGPUShadingLanguageRI/Prepare.js:
12653 * WebGPUShadingLanguageRI/Program.js:
12654 (Program.prototype.resolveFuncOverload): Deleted.
12655 (Program.prototype.get nameContext): Deleted.
12656 * WebGPUShadingLanguageRI/ProtocolDecl.js:
12657 (ProtocolDecl.prototype.inherits):
12658 (ProtocolDecl.prototype.hasHeir):
12659 * WebGPUShadingLanguageRI/PtrType.js:
12660 (PtrType.prototype.unifyImpl):
12661 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
12662 (resolveOverloadImpl):
12663 * WebGPUShadingLanguageRI/Rewriter.js:
12664 (Rewriter.prototype.visitProtocolFuncDecl):
12665 (Rewriter.prototype.processDerivedCallData):
12666 (Rewriter.prototype.visitCastExpression): Deleted.
12667 * WebGPUShadingLanguageRI/StandardLibrary.js: Added.
12668 (preferred.operator.T.T):
12669 (operator.T.Equatable.bool):
12670 * WebGPUShadingLanguageRI/StandardLibraryEpilogue.js: Removed.
12671 * WebGPUShadingLanguageRI/StandardLibraryPrologue.js: Removed.
12672 * WebGPUShadingLanguageRI/Test.html:
12673 * WebGPUShadingLanguageRI/Test.js:
12677 * WebGPUShadingLanguageRI/TypeRef.js:
12678 (TypeRef.prototype.toString):
12680 * WebGPUShadingLanguageRI/Visitor.js:
12681 (Visitor.prototype.visitCallExpression):
12682 (Visitor.prototype.visitCastExpression): Deleted.
12684 2017-09-10 Brady Eidson <beidson@apple.com>
12686 Try to avoid creating the default WKWebsiteDataStore until its actually needed.
12687 <rdar://problem/33164453> and https://bugs.webkit.org/show_bug.cgi?id=176551
12689 Reviewed by Tim Horton.
12691 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
12694 2017-09-10 Michael Catanzaro <mcatanzaro@igalia.com>
12696 [GTK] Improve Ctrl+W and Ctrl+Q shortcuts in MiniBrowser
12697 https://bugs.webkit.org/show_bug.cgi?id=176619
12699 Reviewed by Carlos Garcia Campos.
12701 There are two different problems here. First, Ctrl+W is closing the entire window. That made
12702 sense when I implemented the shortcut a couple years ago, but now MiniBrowser supports tabs
12703 and it should really close only one single tab. Fix that.
12705 Next, the keyboard shortcuts are not using webkit_web_view_try_close() and so are bypassing
12706 onbeforeunload handlers, which are respected when closing with the mouse. Fix that too.
12708 * MiniBrowser/gtk/BrowserWindow.c:
12709 (browserWindowTryCloseCurrentWebView):
12710 (browserWindowTryClose):
12711 (browser_window_init):
12713 2017-09-07 Myles C. Maxfield <mmaxfield@apple.com>
12715 Add "if" statements to WSL
12716 https://bugs.webkit.org/show_bug.cgi?id=176294
12718 Reviewed by Filip Pizlo.
12720 Rolling back in after skipping Test.js on debug.
12722 Fairly straightforward implementation. ReturnChecker only returns true iff there is an else block,
12723 and both the if body and the else body recursively return true.
12725 In order to accept both syntaxes:
12732 This patch lets parseStatement() call parseBlock(). This means that the following is valid:
12740 This production means that these blocks don't require "if" statements, so you can just have:
12750 However, this patch doesn't touch the following use-case:
12751 if (int x = bar()) {
12755 * WebGPUShadingLanguageRI/All.js:
12756 * WebGPUShadingLanguageRI/Checker.js:
12757 * WebGPUShadingLanguageRI/Evaluator.js:
12758 (Evaluator.prototype.visitIfStatement):
12759 * WebGPUShadingLanguageRI/IfStatement.js: Copied from Tools/WebGPUShadingLanguageRI/TypeDef.js.
12761 (IfStatement.prototype.get origin):
12762 (IfStatement.prototype.get conditional):
12763 (IfStatement.prototype.get body):
12764 (IfStatement.prototype.get elseBody):
12765 (IfStatement.prototype.toString):
12766 * WebGPUShadingLanguageRI/NameResolver.js:
12767 (NameResolver.prototype.visitIfStatement):
12768 * WebGPUShadingLanguageRI/Parse.js:
12769 (parseTypeParameters):
12770 (parseIfStatement):
12772 * WebGPUShadingLanguageRI/ReturnChecker.js:
12773 (ReturnChecker.prototype.visitIfStatement):
12774 * WebGPUShadingLanguageRI/Rewriter.js:
12775 (Rewriter.prototype.visitIfStatement):
12777 * WebGPUShadingLanguageRI/Test.html:
12778 * WebGPUShadingLanguageRI/Test.js:
12779 (TEST_variableShadowing):
12780 (TEST_ifStatement):
12781 (TEST_ifElseStatement):
12782 (TEST_ifElseIfStatement):
12783 (TEST_ifElseIfElseStatement):
12785 (TEST_protocolMonoPolySigDoublePolyDefExplicit): Deleted.
12786 * WebGPUShadingLanguageRI/TypeDef.js:
12787 (TypeDef.prototype.toString):
12789 * WebGPUShadingLanguageRI/Visitor.js:
12790 (Visitor.prototype.visitIfStatement):
12792 2017-09-09 Michael Catanzaro <mcatanzaro@igalia.com>
12794 [GTK] Unreviewed, fix typo forwad -> forward
12796 * MiniBrowser/gtk/BrowserWindow.c:
12797 (browserWindowUpdateNavigationActions):
12798 (backForwardlistChanged):
12799 (browserWindowSwitchTab):
12800 (backForwadlistChanged): Deleted.
12802 2017-09-09 Ryan Haddad <ryanhaddad@apple.com>
12804 Unreviewed, rolling out r221801.
12806 This change introduced a webkitpy test failure.
12808 Reverted changeset:
12810 "bisect-builds doesn't work due to missing requests module"
12811 https://bugs.webkit.org/show_bug.cgi?id=175709
12812 http://trac.webkit.org/changeset/221801
12814 2017-09-09 Ryan Haddad <ryanhaddad@apple.com>
12816 Unreviewed, rolling out r221776.
12818 This change caused wsl-tests.yaml/Test.js to time out on Debug
12821 Reverted changeset:
12823 "Add "if" statements to WSL"
12824 https://bugs.webkit.org/show_bug.cgi?id=176294
12825 http://trac.webkit.org/changeset/221776
12827 2017-09-09 Michael Catanzaro <mcatanzaro@igalia.com>
12829 MiniBrowser closes tab instead of window on close signal
12830 https://bugs.webkit.org/show_bug.cgi?id=176587
12832 Reviewed by Carlos Garcia Campos.
12834 This has been broken since we added support for multiple tabs. We need to run try_close for
12835 every open tab, not just the current one. If there are no onbeforeonload handlers then all
12836 tabs will close; if there are some, then they'll be respected, but the remaining tabs will
12839 Note that we cannot simply iterate through the tabs of the GtkNotebook, as we'd be deleting
12840 tabs as we go, so save all the tabs into a separate list and then try to close each in turn.
12842 * MiniBrowser/gtk/BrowserWindow.c:
12843 (browserWindowTryClose):
12844 (browserWindowDeleteEvent):
12846 2017-09-09 Zan Dobersek <zdobersek@igalia.com>
12848 Unreviewed WPE build fix.
12850 * TestWebKitAPI/PlatformWPE.cmake:
12851 Link WebCore archives into the TestWebCore binary as a group.
12853 2017-09-08 Lucas Forschler <lforschler@apple.com>
12855 bisect-builds doesn't work due to missing requests module
12856 https://bugs.webkit.org/show_bug.cgi?id=175709
12858 Reviewed by Ryosuke Niwa.
12860 * Scripts/bisect-builds: update import to webkitpy.thirdparty.autoinstalled
12861 * Scripts/webkitpy/thirdparty/__init__.py: add logic to install requests module.
12862 (AutoinstallImportHook.find_module):
12863 (AutoinstallImportHook):
12864 (AutoinstallImportHook._install_requests):
12865 * Scripts/webkitpy/thirdparty/__init___unittest.py:
12866 (ThirdpartyTest.test_imports):
12868 2017-09-08 Lucas Forschler <lforschler@apple.com>
12870 Test commit to verify trac sync is working.
12872 2017-09-08 Lucas Forschler <lforschler@apple.com>
12874 Test commit to verify git sync is working.
12876 2017-09-08 Lucas Forschler <lforschler@apple.com>
12878 bisect-builds should not print out extracting command
12879 https://bugs.webkit.org/show_bug.cgi?id=175632
12881 Reviewed by Alexey Proskuryakov.
12883 * Scripts/bisect-builds:
12886 2017-09-07 Joseph Pecoraro <pecoraro@apple.com>
12888 WebKit should claim that it can show responses for a broader range of JSON MIMETypes
12889 https://bugs.webkit.org/show_bug.cgi?id=176252
12890 <rdar://problem/34212885>
12892 Reviewed by Ryosuke Niwa.
12894 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
12895 * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm: Added.
12896 (-[WKNavigationResponseTestNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
12897 (-[WKNavigationResponseTestNavigationDelegate webView:didCommitNavigation:]):
12898 (-[WKNavigationResponseTestSchemeHandler webView:startURLSchemeTask:]):
12899 (-[WKNavigationResponseTestSchemeHandler webView:stopURLSchemeTask:]):
12901 Test for canShowMIMEType with multiple JSON mime types and a garbage mime type.
12902 Previously canShowMIMEType would have been YES for "application/json" but
12903 NO for "application/vnd.api+json". Now it shows YES for both.
12905 * TestWebKitAPI/PlatformGTK.cmake:
12906 * TestWebKitAPI/PlatformWPE.cmake:
12907 * TestWebKitAPI/PlatformWin.cmake:
12908 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
12909 * TestWebKitAPI/Tests/WebCore/MIMETypeRegistry.cpp: Added.
12910 (TestWebKitAPI::TEST):
12911 Tests for MIMETypeRegistry's dynamic JSON mime type detection.
12913 2017-09-07 Matthew Stewart <matthew_r_stewart@apple.com>
12915 Add Live PLT implemented with WebDriver
12916 https://bugs.webkit.org/show_bug.cgi?id=176436
12918 Reviewed by Stephanie Lewis.
12920 Adds a new PLT that runs on live websites.
12922 * Scripts/run-webdriver-plt.py: Added.
12927 * Scripts/webkitpy/webdriver_plt/__init__.py: Added.
12928 * Scripts/webkitpy/webdriver_plt/liveplt.py: Added.
12930 (PageLoadTest.__init__):
12931 (PageLoadTest.start):
12932 (PageLoadTest.run_suite):
12933 (PageLoadTest._get_driver_for_browser):
12934 (PageLoadTest._setup_browser_window):
12935 (PageLoadTest.run_one_test):
12936 (PageLoadTest.get_results):
12937 * Scripts/webkitpy/webdriver_plt/pltresults.py: Added.
12939 (PLTResults.__init__):
12940 (PLTResults.__add__):
12941 (PLTResults.add_timing_result):
12943 (PLTResults.geometric_mean):
12944 (PLTResults.mean_coef_variance):
12945 (PLTResults.print_results):
12946 (PLTResults.print_url_results):
12947 (PLTResults._format_time):
12948 * Scripts/webkitpy/webdriver_plt/suites/__init__.py: Added.
12949 * Scripts/webkitpy/webdriver_plt/suites/arabic.suite: Added.
12950 * Scripts/webkitpy/webdriver_plt/suites/cjk.suite: Added.
12951 * Scripts/webkitpy/webdriver_plt/suites/news.suite: Added.
12952 * Scripts/webkitpy/webdriver_plt/suites/search.suite: Added.
12953 * Scripts/webkitpy/webdriver_plt/suites/shopping.suite: Added.
12954 * Scripts/webkitpy/webdriver_plt/suites/social.suite: Added.
12955 * Scripts/webkitpy/webdriver_plt/suites/suite.py: Added.
12958 (Suite.get_available_suites):
12959 * Scripts/webkitpy/webdriver_plt/urlresults.py: Added.
12961 (URLResults.__init__):
12962 (URLResults.__add__):
12964 (URLResults.coef_variance):
12965 (URLResults.print_results):
12966 (URLResults._format_time):
12968 2017-09-07 Myles C. Maxfield <mmaxfield@apple.com>
12970 Add "if" statements to WSL
12971 https://bugs.webkit.org/show_bug.cgi?id=176294
12973 Reviewed by Filip Pizlo.
12975 Fairly straightforward implementation. ReturnChecker only returns true iff there is an else block,
12976 and both the if body and the else body recursively return true.
12978 In order to accept both syntaxes:
12985 This patch lets parseStatement() call parseBlock(). This means that the following is valid:
12993 This production means that these blocks don't require "if" statements, so you can just have:
13003 However, this patch doesn't touch the following use-case:
13004 if (int x = bar()) {
13008 * WebGPUShadingLanguageRI/All.js:
13009 * WebGPUShadingLanguageRI/Checker.js:
13010 * WebGPUShadingLanguageRI/Evaluator.js:
13011 (Evaluator.prototype.visitIfStatement):
13012 * WebGPUShadingLanguageRI/IfStatement.js: Copied from Tools/WebGPUShadingLanguageRI/TypeDef.js.
13014 (IfStatement.prototype.get origin):
13015 (IfStatement.prototype.get conditional):
13016 (IfStatement.prototype.get body):
13017 (IfStatement.prototype.get elseBody):
13018 (IfStatement.prototype.toString):
13019 * WebGPUShadingLanguageRI/NameResolver.js:
13020 (NameResolver.prototype.visitIfStatement):
13021 * WebGPUShadingLanguageRI/Parse.js:
13022 (parseTypeParameters):
13023 (parseIfStatement):
13025 * WebGPUShadingLanguageRI/ReturnChecker.js:
13026 (ReturnChecker.prototype.visitIfStatement):
13027 * WebGPUShadingLanguageRI/Rewriter.js:
13028 (Rewriter.prototype.visitIfStatement):
13030 * WebGPUShadingLanguageRI/Test.html:
13031 * WebGPUShadingLanguageRI/Test.js:
13032 (TEST_variableShadowing):
13033 (TEST_ifStatement):
13034 (TEST_ifElseStatement):
13035 (TEST_ifElseIfStatement):
13036 (TEST_ifElseIfElseStatement):
13038 (TEST_protocolMonoPolySigDoublePolyDefExplicit): Deleted.
13039 * WebGPUShadingLanguageRI/TypeDef.js:
13040 (TypeDef.prototype.toString):
13042 * WebGPUShadingLanguageRI/Visitor.js:
13043 (Visitor.prototype.visitIfStatement):
13045 2017-09-07 Lucas Forschler <lforschler@apple.com>
13047 Test commit after server upgrade from subversion 1.9.5 to 1.9.7
13049 2017-09-07 Chris Dumez <cdumez@apple.com>
13051 [WK2] Add C API to retrieve the originating page of a WKDownload
13052 https://bugs.webkit.org/show_bug.cgi?id=176557
13053 <rdar://problem/34314776>
13055 Reviewed by Alex Christensen.
13057 Add layout test coverage for both the ObjC and C API.
13059 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
13060 (TestWebKitAPI::decideDestinationWithSuggestedFilename):
13061 (TestWebKitAPI::TEST):
13062 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
13063 (-[RedirectedDownloadDelegate _downloadDidStart:]):
13066 2017-09-07 Filip Pizlo <fpizlo@apple.com>
13068 WSL Node.prototype.visit should probably do memoization
13069 https://bugs.webkit.org/show_bug.cgi?id=176286
13071 Reviewed by Mark Lam.
13073 Visitors can sometimes revisit the same thing. For example, we may visit a FuncDef because it belongs
13074 to Program and we may visit it again because a CallExpression resolved to it. That's just plain silly.
13076 Our tests don't currently do this, so it's not a performance problem, yet. Also, we usually avoid that
13077 kind of repetitive visiting inside the visitor implementations. But as far as I can tell, this is an
13078 emergent property rather than a deliberate design.
13080 This change just makes the policy super explicit. If you visit something more than once with the same
13081 visitor, you get the same answer back. This is achieved by means of a memo table inside each visitor.
13083 * WebGPUShadingLanguageRI/All.js:
13084 * WebGPUShadingLanguageRI/FuncInstantiator.js:
13085 * WebGPUShadingLanguageRI/Node.js:
13086 (Node.prototype.visit):
13087 * WebGPUShadingLanguageRI/Rewriter.js:
13089 * WebGPUShadingLanguageRI/Test.html:
13090 * WebGPUShadingLanguageRI/Visitor.js:
13092 * WebGPUShadingLanguageRI/VisitorBase.js: Added.
13095 2017-09-07 Wenson Hsieh <wenson_hsieh@apple.com>
13097 [Directory Upload] Extend drag and drop support to iOS
13098 https://bugs.webkit.org/show_bug.cgi?id=176492
13099 <rdar://problem/34291584>
13101 Reviewed by Tim Horton.
13103 Adds two new iOS drag and drop unit tests, which both exercise the DataTransferItem.webKitGetAsEntry codepath
13104 upon drop. (...)GetFolderAsEntry creates a new folder in the temporary directory and uses it to generate an item
13105 provider. This item provider is then dropped over a custom drop handling element, which writes information about
13106 the exposed FileSystemEntries into a textarea. (...)ExternalSourceDataTransferItemGetPlainTextFileAsEntry does
13107 something similar, except that it only drops a plain text file instead.
13109 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13110 * TestWebKitAPI/Tests/WebKitCocoa/DataTransferItem-getAsEntry.html: Added.
13112 Introduce a new test page that dumps information about DataTransferItems' file system entries upon drop.
13114 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
13115 (runTestWithTemporaryTextFile):
13116 (runTestWithTemporaryFolder):
13118 Introduce helpers to set up and tear down temporary files and folders over the duration of a test.
13120 (TestWebKitAPI::setUpTestWebViewForDataTransferItems):
13121 (TestWebKitAPI::TEST):
13123 2017-09-07 Filip Pizlo <fpizlo@apple.com>
13125 WSL should check recursion
13126 https://bugs.webkit.org/show_bug.cgi?id=176553
13128 Reviewed by Michael Saboff and Mark Lam.
13130 This adds a recursion checker. Previously, we would only check for recursion during inlining, but that
13131 generally only happens when we call the function.
13133 * WebGPUShadingLanguageRI/All.js:
13134 * WebGPUShadingLanguageRI/CheckRecursion.js: Added.
13136 * WebGPUShadingLanguageRI/Prepare.js:
13138 * WebGPUShadingLanguageRI/RecursionChecker.js: Added.
13139 (RecursionChecker):
13140 (RecursionChecker.prototype.visitFuncDef):
13141 (RecursionChecker.prototype.visitCallExpression):
13142 * WebGPUShadingLanguageRI/Test.html:
13143 * WebGPUShadingLanguageRI/Test.js:
13144 (TEST_simpleRecursion):
13146 2017-09-07 Chris Dumez <cdumez@apple.com>
13148 [WK2] Notify client when downloads are redirected
13149 https://bugs.webkit.org/show_bug.cgi?id=176481
13150 <rdar://problem/34309065>
13152 Reviewed by Geoffrey Garen.
13154 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
13155 (-[UIDownloadAsFileTestDelegate _webView:contextMenu:forElement:]):
13156 (-[RedirectedDownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
13157 (-[RedirectedDownloadDelegate _download:didReceiveServerRedirectToURL:]):
13158 (-[RedirectedDownloadDelegate _downloadDidFinish:]):
13160 Add API test coverage.
13162 * WebKitTestRunner/TestController.cpp:
13163 (WTR::TestController::createWebViewWithOptions):
13164 (WTR::TestController::downloadDidReceiveServerRedirectToURL):
13165 * WebKitTestRunner/TestController.h:
13166 Add layout test infrastructure.
13168 2017-09-07 Per Arne Vollan <pvollan@apple.com>
13170 [Win] fast/canvas/2d.getPath.modification.html is failing.
13171 https://bugs.webkit.org/show_bug.cgi?id=176534
13173 Reviewed by Alex Christensen.
13175 We need to enable Inspector additions at runtime in order to expose the getPath function.
13177 * DumpRenderTree/win/DumpRenderTree.cpp:
13178 (resetWebPreferencesToConsistentValues):
13180 2017-09-07 Filip Pizlo <fpizlo@apple.com>
13182 WSL tests should run in run-javascriptcore-tests
13183 https://bugs.webkit.org/show_bug.cgi?id=176550
13185 Reviewed by Keith Miller.
13187 * Scripts/run-javascriptcore-tests:
13188 (runJSCStressTests):
13189 * WebGPUShadingLanguageRI/wsl-tests.yaml: Added.
13191 2017-09-07 Lucas Forschler <lforschler@apple.com>
13193 bisect-builds started failing with invalid json
13194 https://bugs.webkit.org/show_bug.cgi?id=176478
13196 Once we hit 1000 items in our dynamoDB, we ran into an upper limit on the AWS API Gateway looping mechanism.
13197 This prevented us from doing a body mapping template to reformat the json. This fix is to simply return the raw json,
13198 and adjust the json parsing in our code. The AWS rest API has been fixed, and updated to v2.
13200 This change is for the script which operates against the endpoint.
13202 Reviewed by Aakash Jain.
13204 * Scripts/bisect-builds:
13205 (get_sorted_revisions):
13207 2017-09-07 Filip Pizlo <fpizlo@apple.com>
13209 [WSL] Rationalize how protocol inheritance deals with type parameters
13210 https://bugs.webkit.org/show_bug.cgi?id=176334
13212 Reviewed by Mark Lam.
13214 This adds a bunch of tests for structs, protocols, and functions interacting in interesting
13215 ways. The most complex of these tests triggers the case where the protocol contains a function
13216 with one type parameter and the real function has more than one. This should give a WTypeError,
13219 * WebGPUShadingLanguageRI/ProtocolDecl.js:
13220 (ProtocolDecl.prototype.hasHeir): Fix the handling of a mismatch of number of type parameters by actually passing the type parameters and then correctly handling the error.
13221 * WebGPUShadingLanguageRI/Test.js: Add a bunch of tests for this case and a lot of other protocol cases.
13222 (TEST_protocolMonoSigPolyDef):
13223 (TEST_protocolPolySigPolyDef):
13224 (TEST_protocolDoublePolySigDoublePolyDef):
13225 (TEST_protocolDoublePolySigDoublePolyDefExplicit):
13226 (TEST_protocolMonoPolySigDoublePolyDefExplicit):
13227 * WebGPUShadingLanguageRI/TypeVariable.js:
13228 (TypeVariable.prototype.get origin): This wasn't implemented before, which made error reporting harder.
13230 2017-09-07 Per Arne Vollan <pvollan@apple.com>
13232 [Win] Dashboard test is failing.
13233 https://bugs.webkit.org/show_bug.cgi?id=176527
13235 Reviewed by Brent Fulgham.
13237 Skip test on Windows since WebKitTestRunner is required, but not built on Windows.
13239 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
13240 (TestFactory.__init__):
13242 2017-09-07 Adrian Perez de Castro <aperez@igalia.com>
13244 [WPE][CMake] Add "dist" and "distcheck" targets
13245 https://bugs.webkit.org/show_bug.cgi?id=176448
13247 Reviewed by Carlos Garcia Campos.
13249 Add "dist" and "distcheck" CMake targets, which create release tarballs.
13250 These are available only when configuring with -DDEVELOPER_MODE=TRUE.
13252 * wpe/manifest.txt.in: Added.
13254 2017-09-07 Per Arne Vollan <pvollan@apple.com>
13256 [Win] Enable DatatransferItems in DRT.
13257 https://bugs.webkit.org/show_bug.cgi?id=176424
13259 Reviewed by Brent Fulgham.
13261 * DumpRenderTree/win/DumpRenderTree.cpp:
13262 (resetWebPreferencesToConsistentValues):
13264 2017-09-07 Carlos Garcia Campos <cgarcia@igalia.com>
13266 [GTK] Bump libxml2 version to 1.9.5
13267 https://bugs.webkit.org/show_bug.cgi?id=176502
13269 Reviewed by Carlos Alberto Lopez Perez.
13271 It has been released very recently, but it fixes the issues that prevented us from upgrading to 1.9.4.
13273 * gtk/jhbuild.modules:
13275 2017-09-06 Joseph Pecoraro <pecoraro@apple.com>
13277 Remove new-run-webkit-httpd as it appears to be old
13278 https://bugs.webkit.org/show_bug.cgi?id=176493
13280 Reviewed by Alexey Proskuryakov.
13282 * Scripts/new-run-webkit-httpd: Removed.
13284 2017-09-06 Alex Christensen <achristensen@webkit.org>
13286 Add WKUIDelegatePrivate equivalent of WKPageUIClient's pageDidScroll
13287 https://bugs.webkit.org/show_bug.cgi?id=176482
13288 <rdar://problem/29270035>
13290 Reviewed by Tim Horton.
13292 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
13293 (-[DidScrollDelegate _webViewDidScroll:]):
13296 2017-09-06 Eric Carlson <eric.carlson@apple.com>
13298 Require LoggingHelper overrides to provide identifier
13299 https://bugs.webkit.org/show_bug.cgi?id=176477
13301 Reviewed by Jer Noble.
13303 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
13304 (TestWebKitAPI::TEST_F):
13306 2017-09-06 Alex Christensen <achristensen@webkit.org>
13308 Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange
13309 https://bugs.webkit.org/show_bug.cgi?id=176474
13310 <rdar://problem/29270035>
13312 Reviewed by Tim Horton.
13314 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
13315 (-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
13318 2017-09-06 Alex Christensen <achristensen@webkit.org>
13320 Unreviewed, rolling out r221694.
13324 Reverted changeset:
13326 "Add WKUIDelegatePrivate equivalent of WKPageUIClient's
13327 pinnedStateDidChange"
13328 https://bugs.webkit.org/show_bug.cgi?id=176474
13329 http://trac.webkit.org/changeset/221694
13331 2017-09-06 Per Arne Vollan <pvollan@apple.com>
13333 [Win] test-webkitpy test timeout_context_unittest is failing.
13334 https://bugs.webkit.org/show_bug.cgi?id=176471
13336 Reviewed by Brent Fulgham.
13338 This assert failure is possibly caused by different time resolution on
13341 * Scripts/webkitpy/common/timeout_context_unittest.py:
13342 (TimeoutContextTests.test_timeout_data):
13344 2017-09-06 Aakash Jain <aakash_jain@apple.com>
13346 status-bubbles turn orange after checking relevance of patch
13347 https://bugs.webkit.org/show_bug.cgi?id=176457
13349 Reviewed by Alexey Proskuryakov.
13351 * QueueStatusServer/handlers/statusbubble.py: Added "Checked relevance of patch" as a progress_statuses.
13353 2017-09-06 Alex Christensen <achristensen@webkit.org>
13355 Add WKUIDelegatePrivate equivalent of WKPageUIClient's pinnedStateDidChange
13356 https://bugs.webkit.org/show_bug.cgi?id=176474
13357 <rdar://problem/29270035>
13359 Reviewed by Tim Horton.
13361 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
13362 (-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
13365 2017-09-06 Filip Pizlo <fpizlo@apple.com>
13367 WSL: Inliner doesn't allow double-negation
13368 https://bugs.webkit.org/show_bug.cgi?id=176440
13370 Reviewed by Mylex Maxfield.
13372 The problem was that we were visiting the operands to calls while inside doVisit. This is too strict
13373 since it rejects nested calls like foo(foo(x)). The solution is to visit the operands to calls before
13376 This also fixes some other issues in the parser that made the Inliner's error really strange.
13378 * WebGPUShadingLanguageRI/Func.js:
13380 * WebGPUShadingLanguageRI/Inliner.js:
13381 (Inliner.prototype.visitCallExpression):
13383 * WebGPUShadingLanguageRI/Parse.js:
13384 (parseOperatorFuncDefValues):
13385 (parseNonOperatorFuncDefValues):
13386 (parseGenericFuncDefValues):
13388 * WebGPUShadingLanguageRI/Test.js:
13389 * WebGPUShadingLanguageRI/VisitingSet.js:
13390 (VisitingSet.prototype.doVisit):
13393 2017-09-06 Myles C. Maxfield <mmaxfield@apple.com>
13395 WSL should support the bool type
13396 https://bugs.webkit.org/show_bug.cgi?id=176285
13398 Reviewed by Filip Pizlo.
13400 I forgot to commit a couple files.
13402 * WebGPUShadingLanguageRI/StandardLibraryEpilogue.js: Added.
13403 (const.standardLibraryEpilogue.operator.bool.T.Equatable):
13404 * WebGPUShadingLanguageRI/StandardLibraryPrologue.js: Added.
13407 2017-09-06 Myles C. Maxfield <mmaxfield@apple.com>
13409 WSL should correctly handle the interaction between casting operators and complex types
13410 https://bugs.webkit.org/show_bug.cgi?id=176316
13412 Reviewed by Filip Pizlo.
13414 This allows the standard library to include all identity cast operators for all exsting
13415 and yet-to-exist types. The standard library now has a function with the signature:
13416 operator T<><T>(T). This means "for all T, define a cast operator from T to T<>." The
13417 duplicate <>s lets us say things like operator OutputVector<T><T>(InputVector<T> x).
13419 For testing, this patch also adds the ability to cast an arbitrary Equatable type to bool,
13420 by comparing the value to the default value for that type.
13422 * WebGPUShadingLanguageRI/All.js:
13423 * WebGPUShadingLanguageRI/CastExpression.js: Copied from Tools/WebGPUShadingLanguageRI/NativeFuncInstance.js.
13425 (CastExpression.prototype.get functionName):
13426 (CastExpression.prototype.get returnType):
13427 (CastExpression.prototype.toString):
13428 * WebGPUShadingLanguageRI/Checker.js:
13429 * WebGPUShadingLanguageRI/Func.js:
13430 (Func.prototype.toDeclString):
13431 * WebGPUShadingLanguageRI/FuncInstantiator.js:
13432 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitNativeFunc):
13433 (FuncInstantiator.prototype.getUnique.Instantiate):
13434 (FuncInstantiator.prototype.getUnique):
13435 (FuncInstantiator):
13436 * WebGPUShadingLanguageRI/Inliner.js:
13437 (Inliner.prototype.visitCastExpression):
13439 * WebGPUShadingLanguageRI/Intrinsics.js:
13441 * WebGPUShadingLanguageRI/NativeFunc.js:
13442 * WebGPUShadingLanguageRI/NativeFuncInstance.js:
13443 (NativeFuncInstance):
13444 * WebGPUShadingLanguageRI/Parse.js:
13445 (parsePossiblePrefix):
13447 (parseOperatorFuncDefValues): Deleted.
13448 (parseNonOperatorFuncDefValues): Deleted.
13449 (parseGenericFuncDefValues): Deleted.
13450 * WebGPUShadingLanguageRI/Prepare.js:
13452 * WebGPUShadingLanguageRI/Program.js:
13453 (Program.prototype.resolveFuncOverload):
13454 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
13455 (resolveOverloadImpl):
13456 * WebGPUShadingLanguageRI/Rewriter.js:
13457 (Rewriter.prototype.processDerivedCallData):
13458 (Rewriter.prototype.visitCastExpression):
13459 (Rewriter.prototype.visitCallExpression):
13460 * WebGPUShadingLanguageRI/StandardLibrary.js: Removed.
13461 * WebGPUShadingLanguageRI/Test.html:
13462 * WebGPUShadingLanguageRI/Test.js:
13463 * WebGPUShadingLanguageRI/TypeDefResolver.js:
13465 (TypeDefResolver.prototype.visitFuncDef): Deleted.
13466 * WebGPUShadingLanguageRI/Visitor.js:
13467 (Visitor.prototype.visitCastExpression):
13469 2017-09-06 Daniel Bates <dabates@apple.com>
13471 Copy WebKit Permalink may generate wrong URL with SVN checkout
13472 https://bugs.webkit.org/show_bug.cgi?id=176427
13474 Reviewed by Darin Adler.
13476 Fixes an issue where Copy WebKit Permalink would generate an incorrect URL for
13477 any file not in the top-level directory of the repository when using an SVN
13478 checkout of WebKit.
13480 Copy WebKit Permalink changes directories to the containing directory D of the
13481 active Xcode document F before running "svn info <path to F>". Currently we use
13482 the value of "Path" from the output of "svn info" when generating the permalink.
13483 This path is relative to D. But we want the path to F relative to the top-level
13484 checkout directory. We need to explicitly compute this.
13486 * CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow:
13488 2017-09-06 Carlos Garcia Campos <cgarcia@igalia.com>
13490 [GTK] Bump freetype version to 2.8.0
13491 https://bugs.webkit.org/show_bug.cgi?id=176351
13493 Reviewed by Carlos Alberto Lopez Perez.
13495 Remove the patch we were using since it was reverted upstream.
13497 * gtk/jhbuild.modules:
13498 * gtk/patches/freetype6-2.4.11-truetype-font-height-fix.patch: Removed.
13500 2017-09-06 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
13502 [Win] Tools/TestWebKitAPI/Tests/WTF/PriorityQueue.cpp fails to compile with MSVC 2015
13503 https://bugs.webkit.org/show_bug.cgi?id=176442
13505 Reviewed by Keith Miller.
13507 * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp:
13510 2017-09-05 Darin Adler <darin@apple.com>
13512 Fix a few minor problems found while working toward removing unneeded calls to updateStyle
13513 https://bugs.webkit.org/show_bug.cgi?id=176279
13515 Reviewed by Antti Koivisto.
13517 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
13518 (WTR::AccessibilityUIElement::setSelectedChild const): Handle null here. The old code instead
13519 would trigger an Objective-C exception unnecessarily.
13521 2017-09-05 Wenson Hsieh <wenson_hsieh@apple.com>
13523 [iOS WK2] Add plumbing for WKContentView to ask the web process for additional drag items
13524 https://bugs.webkit.org/show_bug.cgi?id=176348
13525 Work towards <rdar://problem/31144674>
13527 Reviewed by Tim Horton.
13529 Introduces new test infrastructure to simulate tapping to add additional items to the current drag session. We
13530 add -[DataInteractionSimulator runFrom:to:additionalItemRequestLocations:], for which the last argument is a
13531 dictionary mapping progress (a double between 0 and 1) to NSValues representing the location from which the drag
13532 and drop simulation will request an additional drag item. During the simulated drag and drop, when the progress
13533 value exceeds a value in the map of remaining additional item request locations, we halt drag simulation
13534 progress for that runloop and instead request additional items from the location specified.
13536 The only (useful) passing test we can create using the new machinery is one that verifies that preventDefault()
13537 on dragstart works as expected, preventing additional items from being added. While this trivially passes now,
13538 since the web-process-side of the additional items flow is not yet implemented, it should continue to pass after
13539 the web process portion is implemented.
13541 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13542 * TestWebKitAPI/Tests/WebKitCocoa/selected-text-image-link-and-editable.html: Added.
13544 Add a new test page that contains some non-editable text, an image, a link, and a rich text editable area.
13546 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
13547 (TestWebKitAPI::TEST):
13548 * TestWebKitAPI/ios/DataInteractionSimulator.h:
13549 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
13550 (-[MockDragDropSession addItems:]):
13552 Convenience method to add additional mock drag items to a drag or drop session.
13554 (-[DataInteractionSimulator _resetSimulatedState]):
13555 (-[DataInteractionSimulator runFrom:to:]):
13557 Converted into a convenience wrapper around the latter version, passing in nil for the additional item request
13558 locations dictionary.
13560 (-[DataInteractionSimulator runFrom:to:additionalItemRequestLocations:]):
13561 (-[DataInteractionSimulator _enqueuePendingAdditionalItemRequestLocations]):
13562 (-[DataInteractionSimulator _sendQueuedAdditionalItemRequest]):
13564 New helper methods to detect when and where additional items should be "added", and subsequently simulate adding
13565 drag items at these given locations.
13567 (-[DataInteractionSimulator _advanceProgress]):
13569 2017-09-05 Alex Christensen <achristensen@webkit.org>
13571 Add WKUIDelegatePrivate equivalent of WKPageUIClient's mouseDidMoveOverElement
13572 https://bugs.webkit.org/show_bug.cgi?id=176428
13573 <rdar://problem/29270035>
13575 Reviewed by Tim Horton.
13577 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
13578 (-[MouseMoveOverElementDelegate _webView:mouseDidMoveOverElement:withFlags:userInfo:]):
13580 * TestWebKitAPI/cocoa/TestWKWebView.h:
13581 * TestWebKitAPI/cocoa/TestWKWebView.mm:
13582 (-[TestWKWebView mouseMoveToPoint:withFlags:]):
13584 2017-09-05 Matthew Stewart <matthew_r_stewart@apple.com>
13586 Benchmark Runner WebDriver maximize window on browser launch
13587 https://bugs.webkit.org/show_bug.cgi?id=175702
13589 Reviewed by Stephanie Lewis.
13591 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py:
13592 (LinuxBrowserDriver.launch_webdriver): added driver.maximize_window()
13593 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
13594 (OSXBrowserDriver._launch_webdriver): added driver.maximize_window()
13595 * Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py:
13596 (WebDriverBenchmarkRunner._run_one_test): added driver.quit()
13598 2017-09-05 Matthew Stewart <matthew_r_stewart@apple.com>
13600 Fix Benchmark Runner selenium autoinstall imports
13601 https://bugs.webkit.org/show_bug.cgi?id=175727
13603 Reviewed by Stephanie Lewis.
13605 This fixes run-benchmark taking a long time to start with WebDriver.
13607 Inside webdriver's __init__.py file, it imports many other modules.
13608 So if we try to directly import autoinstalled.selenium.webdriver, it
13609 will re-run the autoinstall __init__.py for each new imported module
13610 that contains ".selenium"
13611 TODO: fix this inside the autoinstall code, to only do one install per
13614 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py:
13615 (LinuxChromeDriver.launch_driver):
13616 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py:
13617 (LinuxFirefoxDriver.launch_driver):
13618 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
13619 (OSXChromeDriver.launch_driver):
13620 (OSXChromeCanaryDriver.launch_driver):
13621 (create_chrome_options):
13622 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
13623 (OSXFirefoxDriver.launch_driver):
13624 (OSXFirefoxNightlyDriver.launch_driver):
13625 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
13626 (OSXSafariDriver.launch_driver):
13627 * Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py:
13628 (WebDriverBenchmarkRunner._run_one_test):
13630 2017-09-05 Aakash Jain <aakash_jain@apple.com>
13632 EWS should report when a step succeeds
13633 https://bugs.webkit.org/show_bug.cgi?id=176332
13634 <rdar://problem/25224607>
13636 Reviewed by Sam Weinig.
13638 Most of the EWSes report only if a step fails, but do not report when a step succeed. For e.g.: If a build succeeds,
13639 EWS does not report it. Information about a step passing is sometimes very valuable, especially when waiting for a
13640 patch to complete processing. Sometimes, patch authors know that their changes are not covered by any tests. Having EWS
13641 display that build was successful and it is currently running tests is valuable.
13643 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
13644 (AbstractEarlyWarningSystem.command_passed): Update the EWS status server when a command pass. This is
13645 similar to what is done in Commit Queue and Style Queue.
13646 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
13647 (EarlyWarningSystemTest._default_expected_logs): Updated unit-tests appropriately.
13649 2017-09-05 Myles C. Maxfield <mmaxfield@apple.com>
13651 WSL should support the bool type
13652 https://bugs.webkit.org/show_bug.cgi?id=176285
13654 Reviewed by Filip Pizlo.
13656 Very similar to the int and uint types. This patch also adds support for a logical negation expression "!x".
13657 This patch also reverts the ability of the program author to create their own "operator!()", and instead
13658 adds the ability of the program author to create their own "operator bool()". The code is generic, so
13659 programmers can make two arbitrary types Foo and Bar, and implement a "operator Bar(Foo)." The logical
13660 negation expression is a built-in, and requires its argument be a bool.
13662 * WebGPUShadingLanguageRI/All.js:
13663 * WebGPUShadingLanguageRI/BoolLiteral.js: Copied from Tools/WebGPUShadingLanguageRI/NativeFunc.js.
13665 (BoolLiteral.prototype.get value):
13666 (BoolLiteral.prototype.get isConstexpr):
13667 (BoolLiteral.prototype.toString):
13668 * WebGPUShadingLanguageRI/Checker.js:
13669 * WebGPUShadingLanguageRI/Evaluator.js:
13670 (Evaluator.prototype.visitBoolLiteral):
13671 (Evaluator.prototype.visitLogicalNot):
13672 * WebGPUShadingLanguageRI/Func.js:
13674 (Func.prototype.get isCast):
13675 (Func.prototype.toDeclString):
13676 * WebGPUShadingLanguageRI/FuncDef.js:
13678 (FuncDef.prototype.get body):
13679 (FuncDef.prototype.rewrite):
13680 * WebGPUShadingLanguageRI/Intrinsics.js:
13682 * WebGPUShadingLanguageRI/Lexer.js:
13683 (Lexer.prototype.next):
13685 * WebGPUShadingLanguageRI/LogicalNot.js: Copied from Tools/WebGPUShadingLanguageRI/NativeFunc.js.
13687 (LogicalNot.prototype.get operand):
13688 (LogicalNot.prototype.toString):
13689 * WebGPUShadingLanguageRI/NativeFunc.js:
13691 * WebGPUShadingLanguageRI/Parse.js:
13693 (parsePossiblePrefix):
13694 (parsePossibleRelationalEquality):
13696 (parseOperatorFuncDefValues):
13697 (parseNonOperatorFuncDefValues):
13698 (parseGenericFuncDefValues):
13700 (parseProtocolFuncDecl):
13704 * WebGPUShadingLanguageRI/Rewriter.js:
13705 (Rewriter.prototype.visitBoolLiteral):
13706 (Rewriter.prototype.visitLogicalNot):
13708 * WebGPUShadingLanguageRI/StandardLibrary.js:
13709 * WebGPUShadingLanguageRI/Test.html:
13710 * WebGPUShadingLanguageRI/Test.js:
13715 (TEST_literalBool):
13716 (TEST_identityBool):
13717 (TEST_intSimpleMath):
13718 (TEST_uintSimpleMath):
13720 (TEST_logicalNegation):
13721 (TEST_notEquality):
13722 (TEST_equalityTypeFailure):
13723 (TEST_add1): Deleted.
13724 * WebGPUShadingLanguageRI/TypeDefResolver.js:
13725 (TypeDefResolver.prototype.visitFuncDef):
13726 * WebGPUShadingLanguageRI/Visitor.js:
13727 (Visitor.prototype.visitBoolLiteral):
13728 (Visitor.prototype.visitLogicalNot):
13730 2017-09-05 Matt Lewis <jlewis3@apple.com>
13732 Unreviewed, rolling out r221603.
13734 This caused accessibility/mac/select-element-selection-with-
13735 optgroups.html to consistently timeout on macOS
13737 Reverted changeset:
13739 "Fix a few minor problems found while working toward removing
13740 unneeded calls to updateStyle"
13741 https://bugs.webkit.org/show_bug.cgi?id=176279
13742 http://trac.webkit.org/changeset/221603
13744 2017-09-05 Youenn Fablet <youenn@apple.com>
13746 WebKitTestRunner should set the cache storage directory path
13747 https://bugs.webkit.org/show_bug.cgi?id=176373
13749 Reviewed by Chris Dumez.
13751 * WebKitTestRunner/TestController.cpp:
13752 (WTR::TestController::generateContextConfiguration const):
13754 2017-09-05 Joseph Pecoraro <pecoraro@apple.com>
13756 test262: Completion values for control flow do not match the spec
13757 https://bugs.webkit.org/show_bug.cgi?id=171265
13759 Reviewed by Saam Barati.
13761 * Scripts/run-jsc-stress-tests:
13762 Include a :failDueToOutdatedOrBadTest to mark failures with justification.
13764 2017-09-05 Alex Christensen <achristensen@webkit.org>
13766 Add WKUIDelegatePrivate equivalent of WKPageUIClient's unavailablePluginButtonClicked
13767 https://bugs.webkit.org/show_bug.cgi?id=176274
13768 <rdar://problem/29270035>
13770 Reviewed by Darin Adler.
13772 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
13773 (-[PluginDelegate _webView:unavailablePluginButtonClickedWithReason:pluginInfo:]):
13776 2017-09-05 Carlos Garcia Campos <cgarcia@igalia.com>
13778 [GTK] Wrong use of PLUGIN_ARCHITECTURE(X11) in several places
13779 https://bugs.webkit.org/show_bug.cgi?id=176329
13781 Reviewed by Michael Catanzaro.
13783 * CMakeLists.txt: Build TestNetscapePlugIn when NETSCAPE_PLUGIN_API is enabled and only link to X11 libraries
13784 when building the X11 target.
13785 * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
13786 * DumpRenderTree/TestNetscapePlugIn/Tests/unix/CallInvalidateRectWithNullNPPArgument.cpp: Renamed from Tools/DumpRenderTree/TestNetscapePlugIn/Tests/x11/CallInvalidateRectWithNullNPPArgument.cpp.
13787 * DumpRenderTree/TestNetscapePlugIn/main.cpp:
13792 2017-09-04 Eric Carlson <eric.carlson@apple.com>
13794 Switch HTMLMediaElement to release logging
13795 https://bugs.webkit.org/show_bug.cgi?id=176065
13797 Reviewed by Jer Noble.
13799 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
13800 (TestWebKitAPI::LogObserver::level const):
13802 2017-09-03 Darin Adler <darin@apple.com>
13804 Fix a few minor problems found while working toward removing unneeded calls to updateStyle
13805 https://bugs.webkit.org/show_bug.cgi?id=176279
13807 Reviewed by Antti Koivisto.
13809 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
13810 (WTR::AccessibilityUIElement::setSelectedChild const): Handle null here. The old code instead
13811 would trigger an Objective-C exception unnecessarily.
13813 2017-09-04 Wenson Hsieh <wenson_hsieh@apple.com>
13815 [iOS DnD] Refactor drag and drop logic in WKContentView in preparation for supporting multiple drag items in a drag session
13816 https://bugs.webkit.org/show_bug.cgi?id=176264
13817 <rdar://problem/31144674>
13819 Reviewed by Darin Adler.
13821 Adds two new iOS drag and drop tests to check that the clientX and clientY attributes of mouse events propagated
13822 to the page during drop are correct. Each test drags from an image element and drops into three custom-drop-
13823 handling elements; `dragenter`, `dragover`, and `drop` event listeners on the body then use the clientX and
13824 clientY event attributes to hit-test for drop target elements. The first test is suffixed with "-Basic"; the
13825 second test, suffixed with "-WithScrollOffset", makes the document scrollable to check that clientY is correct
13828 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13829 * TestWebKitAPI/Tests/WebKitCocoa/drop-targets.html: Added.
13830 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
13831 (TestWebKitAPI::testDragAndDropOntoTargetElements):
13832 (TestWebKitAPI::TEST):
13833 * TestWebKitAPI/cocoa/TestWKWebView.mm:
13834 (-[TestWKWebView stringByEvaluatingJavaScript:]):
13836 Log a warning message when an API test fails due to JavaScript evaluation in TestWKWebView.
13838 2017-09-03 Filip Pizlo <fpizlo@apple.com>
13840 WSL IntLiteral should have variable type so that it can unify with things like uint
13841 https://bugs.webkit.org/show_bug.cgi?id=176209
13843 Reviewed by Mylex Maxfield.
13845 This introduces IntLiteralType, which can unify with any number type that can represent the
13848 This means that all of the following are legal:
13850 double x = 0; // 0 unifies with double
13851 double y = x + 5; // should resolve to double+double
13852 double z = array[0]; // 0 unifies with uint
13854 We can do similar things with float literals, so that you don't have to suffix "f" all the
13857 I think that this is very different from what C does. C just supports implicit type
13858 conversions. That's why "double x = 0" works in C. We don't do type conversions. Instead, we
13859 let each literal unify itself with one type.
13861 Also updated Test.html so that it runs again and is better at printing things.
13863 * WebGPUShadingLanguageRI/All.js:
13864 * WebGPUShadingLanguageRI/Checker.js:
13865 * WebGPUShadingLanguageRI/IntLiteral.js:
13867 (IntLiteral.prototype.toString):
13868 * WebGPUShadingLanguageRI/IntLiteralType.js: Added.
13870 (IntLiteralType.prototype.get origin):
13871 (IntLiteralType.prototype.get value):
13872 (IntLiteralType.prototype.get isPrimitive):
13873 (IntLiteralType.prototype.get isUnifiable):
13874 (IntLiteralType.prototype.typeVariableUnify):
13875 (IntLiteralType.prototype.unifyImpl):
13876 (IntLiteralType.prototype.verifyAsArgument):
13877 (IntLiteralType.prototype.verifyAsParameter):
13878 (IntLiteralType.prototype.commitUnification):
13879 (IntLiteralType.prototype.toString):
13880 * WebGPUShadingLanguageRI/Intrinsics.js:
13883 * WebGPUShadingLanguageRI/LiteralTypeChecker.js:
13884 (LiteralTypeChecker.prototype.visitIntLiteralType):
13885 (LiteralTypeChecker):
13886 * WebGPUShadingLanguageRI/NativeType.js:
13888 (NativeType.prototype.get isNumber):
13889 (NativeType.prototype.set isNumber):
13890 (NativeType.prototype.get isInt):
13891 (NativeType.prototype.set isInt):
13892 (NativeType.prototype.get isFloat):
13893 (NativeType.prototype.set isFloat):
13894 * WebGPUShadingLanguageRI/Prepare.js:
13896 * WebGPUShadingLanguageRI/Rewriter.js:
13897 (Rewriter.prototype.visitIntLiteral):
13898 (Rewriter.prototype.visitIntLiteralType):
13899 * WebGPUShadingLanguageRI/StandardLibrary.js:
13900 * WebGPUShadingLanguageRI/Test.html:
13901 * WebGPUShadingLanguageRI/Test.js:
13902 (this.window.this.print):
13907 (TEST_nameResolutionFailure):
13908 (TEST_threadArrayLoadIntLiteral):
13909 (TEST_deviceArrayStoreIntLiteral):
13910 (TEST_returnIntLiteralDouble):
13911 * WebGPUShadingLanguageRI/Type.js:
13912 (Type.prototype.get isNumber):
13913 (Type.prototype.get isInt):
13914 (Type.prototype.get isFloat):
13915 * WebGPUShadingLanguageRI/Visitor.js:
13916 (Visitor.prototype.visitIntLiteral):
13917 (Visitor.prototype.visitIntLiteralType):
13919 2017-09-03 Filip Pizlo <fpizlo@apple.com>
13921 Add more tests for null behavior in WSL
13922 https://bugs.webkit.org/show_bug.cgi?id=176318
13924 Reviewed by Myles Maxfield.
13926 This adds more tests for the unification behavior of null. In the process, I found a couple
13927 small bugs and fixed them.
13929 * WebGPUShadingLanguageRI/Checker.js:
13930 * WebGPUShadingLanguageRI/FuncInstantiator.js:
13931 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
13932 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
13933 * WebGPUShadingLanguageRI/Substitution.js:
13934 (Substitution.prototype.visitTypeRef):
13935 * WebGPUShadingLanguageRI/Test.js:
13936 (TEST_passNullAndNotNullFullPoly):
13937 (TEST_passNullAndNotNullFullPolyReverse):
13938 (TEST_nullTypeVariableUnify.recurse):
13939 (TEST_nullTypeVariableUnify.everyOrder):
13940 (TEST_nullTypeVariableUnify.everyPair):
13941 (TEST_nullTypeVariableUnify):
13942 * WebGPUShadingLanguageRI/TypeRef.js:
13944 * WebGPUShadingLanguageRI/TypeVariable.js:
13945 (TypeVariable.prototype.verifyAsArgument):
13947 2017-09-04 Commit Queue <commit-queue@webkit.org>
13949 Unreviewed, rolling out r221494 and r221500.
13950 https://bugs.webkit.org/show_bug.cgi?id=176258
13952 This caused the windows build to fail. (Requested by mlewis13
13955 Reverted changesets:
13957 "Switch HTMLMediaElement to release logging"
13958 https://bugs.webkit.org/show_bug.cgi?id=176065
13959 http://trac.webkit.org/changeset/221494
13961 "Switch HTMLMediaElement to release logging"
13962 https://bugs.webkit.org/show_bug.cgi?id=176065
13963 http://trac.webkit.org/changeset/221500
13965 2017-09-03 Darin Adler <darin@apple.com>
13967 REGRESSION (r220052): [Sierra] API test VideoControlsManager.VideoControlsManagerFullSizeVideoInWideMainFrame is a flaky failure
13968 https://bugs.webkit.org/show_bug.cgi?id=175329
13970 Reviewed by Wenson Hsieh.
13972 These tests rely on using setTimeout to wait a run loop iteration for the
13973 video controls to appear. With changes to how loading occurs, it can now
13974 take two run loop iterations. The concept here is inherently a bit flaky
13975 and racy -- end users will not be able to tell how many run loop cycles it
13976 takes for controls to come up, and websites can't tell either -- but for now
13977 changing the tests to wait one more run loop should get rid of the flakiness.
13979 * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm: Re-enable test.
13981 * TestWebKitAPI/Tests/WebKitCocoa/full-size-autoplaying-video-with-audio.html: Add a
13982 second setTimeout and a comment.
13983 * TestWebKitAPI/Tests/WebKitCocoa/skinny-autoplaying-video-with-audio.html: Ditto.
13984 * TestWebKitAPI/Tests/WebKitCocoa/wide-autoplaying-video-with-audio.html: Ditto.
13986 2017-09-03 Sam Weinig <sam@webkit.org>
13988 Make webkit-patch post --no-review enable EWS just like webkit-patch post-commits --no-review
13989 https://bugs.webkit.org/show_bug.cgi?id=176321
13991 Reviewed by Darin Adler.
13993 * Scripts/webkitpy/tool/commands/upload.py:
13994 Add the SubmitToEWS step to Post command
13996 2017-09-03 Chris Dumez <cdumez@apple.com>
13998 Have getFileMetadata() return a std::optional<FileMetadata>
13999 https://bugs.webkit.org/show_bug.cgi?id=176293
14001 Reviewed by Darin Adler.
14003 * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
14004 (TestWebKitAPI::TEST_F):
14006 2017-09-02 Filip Pizlo <fpizlo@apple.com>
14008 WSL should support structs
14009 https://bugs.webkit.org/show_bug.cgi?id=176290
14011 Reviewed by Mylex Maxfield.
14013 This adds parsing of struct types and makes them work.
14015 This required adding a struct layout phase, which in turn required being a bit more careful
14016 about how we instantiate functions and types. We cannot have any instantiation TypeRefs left
14017 once we're doing struct layout.
14019 * WebGPUShadingLanguageRI/All.js:
14020 * WebGPUShadingLanguageRI/CallFunction.js:
14022 * WebGPUShadingLanguageRI/Checker.js:
14023 (Checker.prototype.visitProtocolDecl.set throw):
14024 * WebGPUShadingLanguageRI/DotExpression.js: Added.
14026 (DotExpression.prototype.get struct):
14027 (DotExpression.prototype.get fieldName):
14028 (DotExpression.prototype.get isLValue):
14029 (DotExpression.prototype.toString):
14030 * WebGPUShadingLanguageRI/EBufferBuilder.js:
14031 (EBufferBuilder.prototype._createEPtr):
14032 * WebGPUShadingLanguageRI/EPtr.js:
14033 (EPtr.prototype.copyFrom): Deleted.
14034 (EPtr.prototype.toString): Deleted.
14035 * WebGPUShadingLanguageRI/Evaluator.js:
14036 (Evaluator.prototype.visitAssignment):
14037 (Evaluator.prototype.visitDotExpression):
14038 * WebGPUShadingLanguageRI/Field.js:
14040 * WebGPUShadingLanguageRI/FuncDef.js:
14041 (FuncDef.prototype.rewrite):
14042 * WebGPUShadingLanguageRI/FuncInstantiator.js:
14043 (FuncInstantiator.prototype.getUnique):
14044 (FuncInstantiator):
14045 * WebGPUShadingLanguageRI/Inline.js:
14048 (resolveInlinedFunction):
14049 * WebGPUShadingLanguageRI/Inliner.js:
14050 (Inliner.prototype.visitDotExpression):
14051 * WebGPUShadingLanguageRI/InstantiateImmediates.js:
14052 (InstantiateImmediates.prototype.visitTypeRef):
14053 (InstantiateImmediates.prototype.visitVariableDecl):
14054 (InstantiateImmediates):
14055 * WebGPUShadingLanguageRI/NameResolver.js:
14056 (NameResolver.prototype._resolveTypeArguments):
14057 (NameResolver.prototype.visitTypeRef):
14058 * WebGPUShadingLanguageRI/Node.js:
14059 (Node.prototype.visit):
14060 * WebGPUShadingLanguageRI/OverloadResolutionFailure.js: Added.
14061 (OverloadResolutionFailure):
14062 (OverloadResolutionFailure.prototype.get func):
14063 (OverloadResolutionFailure.prototype.get reason):
14064 (OverloadResolutionFailure.prototype.toString):
14065 * WebGPUShadingLanguageRI/Parse.js:
14066 (parsePossibleSuffix):
14070 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
14071 (resolveOverloadImpl):
14072 * WebGPUShadingLanguageRI/Rewriter.js:
14073 (Rewriter.prototype.visitDotExpression):
14074 (Rewriter.prototype.visitVariableRef):
14075 * WebGPUShadingLanguageRI/StructLayoutBuilder.js: Added.
14076 (StructLayoutBuilder):
14077 (StructLayoutBuilder.prototype.visitStructType):
14078 (StructLayoutBuilder.prototype.get offset):
14079 (StructLayoutBuilder.prototype.visitField):
14080 (StructLayoutBuilder.prototype.visitVariableRef):
14081 (StructLayoutBuilder.prototype.visitVariableDecl):
14082 * WebGPUShadingLanguageRI/StructType.js:
14083 (StructType.prototype.add):
14084 (StructType.prototype.instantiate):
14085 (StructType.prototype.populateDefaultValue):
14086 * WebGPUShadingLanguageRI/Substitution.js:
14087 (Substitution.prototype.visitTypeRef):
14088 (Substitution.prototype.visitVariableRef):
14090 * WebGPUShadingLanguageRI/Test.js:
14091 (TEST_genericStructInstance):
14092 * WebGPUShadingLanguageRI/Type.js:
14093 (Type.prototype.inherits):
14094 * WebGPUShadingLanguageRI/TypeRef.js:
14095 (TypeRef.instantiate):
14096 * WebGPUShadingLanguageRI/VariableRef.js:
14097 (VariableRef.wrap):
14098 * WebGPUShadingLanguageRI/Visitor.js:
14099 (Visitor.prototype.visitTypeRef):
14100 (Visitor.prototype.visitDotExpression):
14101 (Visitor.prototype.visitVariableRef):
14103 2017-09-02 Filip Pizlo <fpizlo@apple.com>
14105 WSL NullType should be a special type variable so it can unify with any pointer type
14106 https://bugs.webkit.org/show_bug.cgi?id=176235
14108 Reviewed by Myles Maxfield.
14110 Null is just a type variable that plays by weird rules:
14112 - Other type variables don't recognize it, so if it's unified with T, it fails.
14113 - It behaves like a type variable for pointer and array reference types.
14114 - It arises only in argument (RHS) position.
14115 - Once Checker finds it to be equals to something, we need to remember what that was.
14117 I refactored some of the type system code to allow for the possibility of type variables being
14118 unified during equals() tests. It turns out that we were playing fast and loose here; I needed
14119 to beef up UnificationContext.prototype.verify. I added tests for this.
14121 I added an equalsWithCommit() that triggers commitUnification(), which allows NullType to
14122 remember what type it got unified with.
14124 NullLiteral then just instantiates its own NullType, which is what Checker uses as the type of
14125 the NullLiteral. Everything else just works.
14127 This adds a bunch of tests to make sure we generate type errors in various weird cases while
14128 also accepting a number of safe cases.
14130 I also added a way to run the tests in-browser.
14132 * WebGPUShadingLanguageRI/All.js:
14133 * WebGPUShadingLanguageRI/ArrayRefType.js:
14134 (ArrayRefType.prototype.get isArrayRef):
14135 * WebGPUShadingLanguageRI/Checker.js:
14136 (Checker.prototype.visitProtocolDecl.set throw):
14137 * WebGPUShadingLanguageRI/ConstexprTypeParameter.js:
14138 (ConstexprTypeParameter.prototype.typeVariableUnify):
14139 * WebGPUShadingLanguageRI/Evaluator.js:
14140 (Evaluator.prototype.visitDereferenceExpression):
14141 (Evaluator.prototype.visitNullLiteral):
14142 * WebGPUShadingLanguageRI/Func.js:
14143 (Func.prototype.toString):
14145 * WebGPUShadingLanguageRI/Intrinsics.js:
14147 * WebGPUShadingLanguageRI/NativeFunc.js:
14148 (NativeFunc.prototype.toDeclString):
14150 (NativeFunc.prototype.toString): Deleted.
14151 * WebGPUShadingLanguageRI/NativeFuncInstance.js:
14152 (NativeFuncInstance.prototype.toDeclString):
14153 (NativeFuncInstance):
14154 (NativeFuncInstance.prototype.toString): Deleted.
14155 * WebGPUShadingLanguageRI/Node.js:
14157 (Node.prototype._typeVariableUnifyImpl):
14158 (Node.prototype.equals):
14159 * WebGPUShadingLanguageRI/NullLiteral.js: Added.
14161 (NullLiteral.prototype.toString):
14162 * WebGPUShadingLanguageRI/NullType.js:
14164 (NullType.prototype.get isPrimitive):
14165 (NullType.prototype.get isUnifiable):
14166 (NullType.prototype.typeVariableUnify):
14167 (NullType.prototype.unifyImpl):
14168 (NullType.prototype.verifyAsArgument):
14169 (NullType.prototype.verifyAsParameter):
14170 (NullType.prototype.toString):
14171 * WebGPUShadingLanguageRI/Parse.js:
14173 (parseType.getAddressSpace):
14175 * WebGPUShadingLanguageRI/Rewriter.js:
14176 (Rewriter.prototype.visitNullLiteral):
14177 * WebGPUShadingLanguageRI/Test.html: Added.
14178 * WebGPUShadingLanguageRI/Test.js:
14179 (this.window.this.print):
14180 (TEST_doubleGenericCallsSingleGeneric):
14181 (TEST_dereferenceDefaultNull):
14182 (TEST_dereferenceDefaultNullArrayRef):
14184 (let.s.in.this.s.startsWith.string_appeared_here.s.match): Deleted.
14185 * WebGPUShadingLanguageRI/Type.js:
14186 (Type.prototype.get isArrayRef):
14187 * WebGPUShadingLanguageRI/TypeVariable.js:
14188 (TypeVariable.prototype.typeVariableUnify):
14189 * WebGPUShadingLanguageRI/UnificationContext.js:
14190 (UnificationContext.prototype.verify):
14191 (UnificationContext):
14192 (UnificationContext.prototype.isUnunified): Deleted.
14193 * WebGPUShadingLanguageRI/VariableRef.js:
14194 (VariableRef.prototype.get unifyNode):
14195 * WebGPUShadingLanguageRI/Visitor.js:
14196 (Visitor.prototype.visitNullLiteral):
14198 2017-09-03 Sam Weinig <sam@webkit.org>
14201 https://bugs.webkit.org/show_bug.cgi?id=176288
14203 Reviewed by Yusuke Suzuki.
14205 CanvasProxy does not appear to be in any current HTML spec
14206 and was disabled and unimplemented in our tree. Time to
14209 * Scripts/webkitperl/FeatureList.pm:
14210 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
14212 2017-09-01 Filip Pizlo <fpizlo@apple.com>
14214 WSL should check unreachable code and no returns
14215 https://bugs.webkit.org/show_bug.cgi?id=176262
14217 Reviewed by Myles Maxfield.
14219 This adds phases to check whether non-void functions return and whether there is any code after
14220 a return in any block. Added tests for simple versions of both of those things. We cannot add
14221 more complex versions until we support control flow statements.
14223 * WebGPUShadingLanguageRI/All.js:
14224 * WebGPUShadingLanguageRI/CheckReturns.js: Added.
14226 * WebGPUShadingLanguageRI/CheckUnreachableCode.js: Added.
14227 (checkUnreachableCode):
14228 * WebGPUShadingLanguageRI/Parse.js:
14230 * WebGPUShadingLanguageRI/Prepare.js:
14232 * WebGPUShadingLanguageRI/ReturnChecker.js: Added.
14233 (ReturnChecker.prototype.visitFuncDef):
14234 (ReturnChecker.prototype.visitBlock):
14235 (ReturnChecker.prototype.visitReturn):
14237 * WebGPUShadingLanguageRI/Test.js:
14238 (TEST_simpleNoReturn):
14239 * WebGPUShadingLanguageRI/UnreachableCodeChecker.js: Added.
14240 (UnreachableCodeChecker.prototype.visitBlock):
14241 (UnreachableCodeChecker):
14243 2017-09-01 Filip Pizlo <fpizlo@apple.com>
14245 WSL should use & for getting a ^ and @ for getting a []
14246 https://bugs.webkit.org/show_bug.cgi?id=176245
14248 Reviewed by Myles Maxfield.
14250 Using \ as an operator was a bad decision since that's an escape character in so many contexts.
14252 Henceforth, & is for making pointers, for example:
14254 thread int^ foo() { int x; return &x; }
14256 And @ is for making array references, for example:
14258 thread int[] foo() { int[42] x; return @x; }
14260 Having separate operators makes it easy to have pointers to fixed-size arrays:
14262 thread int[42]^ foo() { int[42] x; return &x; }
14264 * WebGPUShadingLanguageRI/Intrinsics.js:
14266 * WebGPUShadingLanguageRI/Lexer.js:
14267 (Lexer.prototype.next):
14269 * WebGPUShadingLanguageRI/MakePtrExpression.js:
14270 (MakePtrExpression.prototype.toString):
14271 (MakePtrExpression):
14272 * WebGPUShadingLanguageRI/Parse.js:
14273 (parsePossibleSuffix):
14274 (parsePossiblePrefix):
14276 * WebGPUShadingLanguageRI/StandardLibrary.js:
14277 * WebGPUShadingLanguageRI/Test.js:
14278 (TEST_simpleMakePtr):
14280 2017-09-01 Myles C. Maxfield <mmaxfield@apple.com>
14282 WSL's lexer will never emit keyword tokens
14283 https://bugs.webkit.org/show_bug.cgi?id=176248
14285 Reviewed by Filip Pizlo.
14287 Because all tokens are also identified as idents, we need to handle them together.
14289 * WebGPUShadingLanguageRI/Lexer.js:
14290 (Lexer.prototype.next):
14292 * WebGPUShadingLanguageRI/Test.js:
14295 (TEST_lexerKeyword):
14297 2017-09-01 Alex Christensen <achristensen@webkit.org>
14299 Rename WebKit2 API tests after directory rename
14300 https://bugs.webkit.org/show_bug.cgi?id=176250
14302 Reviewed by Tim Horton.
14304 * TestWebKitAPI/Tests/Lots of files...
14305 Renamed WebKit2 to WebKit and WebKit1 to WebKitLegacy.
14307 2017-09-01 Alex Christensen <achristensen@webkit.org>
14309 Add WKUIDelegatePrivate equivalent of WKPageUIClient's toolbarsAreVisible
14310 https://bugs.webkit.org/show_bug.cgi?id=176246
14311 <rdar://problem/29270035>
14313 Reviewed by Tim Horton.
14315 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
14316 (-[ToolbarDelegate _webView:getToolbarsAreVisibleWithCompletionHandler:]):
14317 (-[ToolbarDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
14320 2017-09-01 Eric Carlson <eric.carlson@apple.com>
14322 Switch HTMLMediaElement to release logging
14323 https://bugs.webkit.org/show_bug.cgi?id=176065
14325 Unreviewed build fix.
14327 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
14329 2017-09-01 Filip Pizlo <fpizlo@apple.com>
14331 WSL should have more tests of type checking failures
14332 https://bugs.webkit.org/show_bug.cgi?id=176244
14334 Reviewed by Myles Maxfield.
14336 * WebGPUShadingLanguageRI/Checker.js:
14337 (Checker.prototype.visitProtocolDecl.set throw):
14338 * WebGPUShadingLanguageRI/Test.js:
14339 (TEST_typeMismatchReturn):
14341 2017-09-01 Filip Pizlo <fpizlo@apple.com>
14343 WSL should be be able to call a function declared in a protocol from a generic function
14344 https://bugs.webkit.org/show_bug.cgi?id=176242
14346 Reviewed by Myles Maxfield.
14348 It turns out that we need to know when a function is resolved to a protocol signature, so we
14349 need to have a type for this. This introduces ProtocolFuncDecl.
14351 Also, this introduces parsing of protocol decls.
14353 When instantiating a function, we need to rewrite its CallExpressions if they were previously
14354 resolved to a PrtococolFuncDecl instead of a FuncDef or NativeFunc. In that case, we need to
14355 rerun the resolution on the program. That resolution is guaranteed to succeed if the type
14356 system works correctly.
14358 * WebGPUShadingLanguageRI/All.js:
14359 * WebGPUShadingLanguageRI/CallExpression.js:
14360 (CallExpression.prototype.resolve):
14361 * WebGPUShadingLanguageRI/Checker.js:
14362 (Checker.prototype.visitProtocolDecl.set throw):
14363 * WebGPUShadingLanguageRI/EBufferBuilder.js:
14364 (EBufferBuilder.prototype._createEPtr):
14365 * WebGPUShadingLanguageRI/Func.js:
14367 (Func.prototype.get origin):
14368 * WebGPUShadingLanguageRI/FuncDef.js:
14370 (FuncDef.prototype.get origin): Deleted.
14371 * WebGPUShadingLanguageRI/FuncInstantiator.js:
14372 (FuncInstantiator):
14373 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
14374 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
14375 * WebGPUShadingLanguageRI/NativeFunc.js:
14377 (NativeFunc.prototype.get origin): Deleted.
14378 * WebGPUShadingLanguageRI/NativeFuncInstance.js:
14379 (NativeFuncInstance):
14380 * WebGPUShadingLanguageRI/Node.js:
14381 (Node.prototype.substitute):
14382 * WebGPUShadingLanguageRI/Parse.js:
14383 (parseProtocolFuncDecl):
14384 (parseProtocolDecl):
14386 * WebGPUShadingLanguageRI/Program.js:
14388 (Program.prototype.get protocols):
14389 (Program.prototype.add):
14390 * WebGPUShadingLanguageRI/ProtocolDecl.js:
14391 (ProtocolDecl.prototype.add):
14392 (ProtocolDecl.prototype.hasHeir):
14393 (ProtocolDecl.prototype.addSignature): Deleted.
14394 * WebGPUShadingLanguageRI/ProtocolFuncDecl.js: Added.
14395 (ProtocolFuncDecl):
14396 * WebGPUShadingLanguageRI/Rewriter.js:
14397 (Rewriter.prototype.visitStructType):
14398 (Rewriter.prototype.visitTypeVariable):
14399 (Rewriter.prototype.visitProtocolFuncDecl):
14400 (Rewriter.prototype.visitCallExpression):
14401 * WebGPUShadingLanguageRI/StructType.js:
14402 (StructType.prototype.instantiate):
14403 * WebGPUShadingLanguageRI/Substitution.js:
14405 (Substitution.mapping): Deleted.
14406 * WebGPUShadingLanguageRI/Test.js:
14407 (TEST_simpleGeneric):
14408 (TEST_simpleAssignment):
14409 (TEST_simpleDefault):
14410 (TEST_simpleDereference):
14411 (TEST_dereferenceStore):
14412 (TEST_simpleMakePtr):
14413 (TEST_threadArrayLoad):
14414 (TEST_deviceArrayLoad):
14415 (TEST_threadArrayStore):
14416 (TEST_deviceArrayStore):
14417 (TEST_simpleProtocol):
14418 * WebGPUShadingLanguageRI/Visitor.js:
14419 (Visitor.prototype.visitProtocolFuncDecl):
14421 2017-09-01 Eric Carlson <eric.carlson@apple.com>
14423 Switch HTMLMediaElement to release logging
14424 https://bugs.webkit.org/show_bug.cgi?id=176065
14426 Reviewed by Jer Noble.
14428 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
14429 (TestWebKitAPI::LogObserver::level const):
14431 2017-09-01 Ross Kirsling <ross.kirsling@sony.com>
14433 download-latest-github-release.py should have friendlier output for non-404 errors
14434 https://bugs.webkit.org/show_bug.cgi?id=176201
14436 Reviewed by Brent Fulgham.
14438 * Scripts/download-latest-github-release.py:
14440 2017-09-01 Filip Pizlo <fpizlo@apple.com>
14442 [WSL] Add tests for storing to arrays
14443 https://bugs.webkit.org/show_bug.cgi?id=176237
14445 Reviewed by Myles Maxfield.
14447 Storing to arrays works now.
14449 * WebGPUShadingLanguageRI/ArrayType.js:
14451 * WebGPUShadingLanguageRI/Test.js:
14452 (TEST_threadArrayStore):
14453 (TEST_deviceArrayStore):
14455 2017-09-01 Alex Christensen <achristensen@webkit.org>
14457 Replace WKUIDelegatePrivate's isPlayingMediaDidChange with KVO _isPlayingAudio on WKWebView
14458 https://bugs.webkit.org/show_bug.cgi?id=176212
14460 Reviewed by Tim Horton.
14462 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
14463 (-[AudioObserver observeValueForKeyPath:ofObject:change:context:]):
14465 (-[MediaDelegate _webView:isPlayingMediaDidChange:]): Deleted.
14467 2017-09-01 Filip Pizlo <fpizlo@apple.com>
14469 WSL Rewriter should be an identity on things that aren't inside function bodies
14470 https://bugs.webkit.org/show_bug.cgi?id=176208
14472 Reviewed by Myles Maxfield.
14474 Previously, if the Rewriter encountered a FunctionDef, StructType, NativeType, etc., then it
14475 would either crash or try to rewrite them. That's unfortunate because we use the Rewriter to
14476 rewrite struct and function bodies. If a function calls another function, then rewriting the
14477 caller should not mean also rewriting the callee. Previously we "fixed" this by religiously
14478 wrapping references to types with TypeDef and doing other such hacks. But that's subtly wrong.
14479 It only worked because Rewriter wasn't rewriting TypeRef.type. I think that Rewriter has to
14480 rewrite that in the long run because it may refer to another TypeRef, and it may be an
14481 instantiation that is using types that themselves need to be rewritten.
14483 * WebGPUShadingLanguageRI/Checker.js:
14484 (Checker.prototype.visitProtocolDecl.set throw):
14485 * WebGPUShadingLanguageRI/NullType.js:
14487 * WebGPUShadingLanguageRI/Rewriter.js:
14488 (Rewriter.prototype.visitFuncDef):
14489 (Rewriter.prototype.visitNativeFunc):
14490 (Rewriter.prototype.visitNativeFuncInstance):
14491 (Rewriter.prototype.visitNativeType):
14492 (Rewriter.prototype.visitTypeDef):
14493 (Rewriter.prototype.visitStructType):
14494 (Rewriter.prototype.visitTypeVariable):
14495 (Rewriter.prototype.visitConstexprTypeParameter):
14496 (Rewriter.prototype.visitNativeTypeInstance):
14497 (Rewriter.prototype.visitTypeRef):
14498 * WebGPUShadingLanguageRI/Visitor.js:
14499 (Visitor.prototype.visitNativeTypeInstance):
14501 2017-09-01 Alex Christensen <achristensen@webkit.org>
14503 Disable ObjC WebGL policy SPI on iOS
14504 https://bugs.webkit.org/show_bug.cgi?id=176233
14506 Reviewed by Tim Horton.
14508 * TestWebKitAPI/Tests/WebKitCocoa/WebGLPolicy.mm:
14510 2017-08-31 Carlos Garcia Campos <cgarcia@igalia.com>
14512 [GTK] Improve the way unit test are run and the results reported
14513 https://bugs.webkit.org/show_bug.cgi?id=176104
14515 Reviewed by Carlos Alberto Lopez Perez.
14517 There are several issues with the way unit tests are run by run-gtk-tests and also with the way results are
14520 - The results summary only mentions the test binaries, not the actual test cases, so you always have to scroll
14521 up to find the actual test cases failing.
14522 - The number of reported failures is the number of test binaries that failed, so if a new test case fails for
14523 the same binary in a new revision, we won't notice it just looking at the number of failures.
14524 - We show detailed information about skipped test in the results summary, which is just noise.
14525 - In the case of glib tests, when a test case times out, we finish the test suite, instead of continuing with the
14526 rest of the test cases like we do for normal failures or crashes. If a new test case fails after a test case that
14527 timed out we will not notice it until we fix or skip the test cases timing out.
14528 - In the case of glib tests, the timeout is applied to the whole suite, instead of per test case, we have a hack
14529 to make it longer only for that. It has worked so far, but it doesn't scale, and it's an ugly hack.
14530 - It's not currently possible to detect flaky tests, because again, we know the binaries/suites that failed but
14531 not the actual test cases.
14533 This patch fixes all these issues and makes it possible to add support for flaky tests in a follow up patch.
14535 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
14536 (RunGtkAPITests.commandComplete): Update the RunGtkAPITests step to parse the new output.
14537 * Scripts/run-gtk-tests:
14538 (TestRunner._start_timeout): Helper to start the timeout if needed.
14539 (TestRunner._start_timeout._alarm_handler): Raise timeout exception.
14540 (TestRunner._stop_timeout): Helper to stop the timeout if needed.
14541 (TestRunner._waitpid): Merged waitpid and return_code_from_exit_status.
14542 (TestRunner._run_test_glib): Do not double the timeout anymore, we now start/stop the timeout for every test
14543 case. Return a dictionary where keys are test cases and values the results only in case of failures.
14544 (TestRunner._run_test_glib.parse_line): Update the parser to also detect test cases and the results.
14545 (TestRunner._run_test_glib.parse_line.set_test_result): Helper to set the result of a test case.
14546 (TestRunner._run_google_test): Return a dictionary where key is the test case and value is the result only in
14548 (TestRunner._run_google_test_suite): Updated now that _run_google_test returns a dictionary.
14549 (TestRunner.run_tests): Handle the results dictionary and show the results with information about test cases
14550 failing and grouped by test binaries.
14552 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14554 WSL should support loading from arrays
14555 https://bugs.webkit.org/show_bug.cgi?id=176207
14557 Reviewed by Saam Barati.
14559 Getting a test that loads from arrays to work required doing a lot of things:
14561 - a[i] now parses to ^(operator\[](a, i)).
14562 - added operator\[] for four array reference types.
14563 - to make thread|threadgroup|device T[] work, you need T:primitive.
14564 - so this adds the magical primitive protocol.
14566 This required a little bit of rejuggling in the name resolver and type checker. The main thing
14567 is that to prevent the rewriter from copying the types referenced by some function, you need to
14568 make sure that when you add a reference to a type, you wrap it in a TypeRef. This doesn't
14569 completely feel right, but I'm sure we'll figure out the balance eventually. See bug 176208.
14571 * WebGPUShadingLanguageRI/All.js:
14572 * WebGPUShadingLanguageRI/Checker.js:
14573 (Checker.prototype.visitProtocolDecl.set throw):
14574 * WebGPUShadingLanguageRI/EArrayRef.js: Added.
14576 (EArrayRef.prototype.get ptr):
14577 (EArrayRef.prototype.get length):
14578 (EArrayRef.prototype.toString):
14579 * WebGPUShadingLanguageRI/EPtr.js:
14580 (EPtr.prototype.plus):
14581 (EPtr.prototype.toString):
14583 * WebGPUShadingLanguageRI/Evaluator.js:
14584 (Evaluator.prototype.visitUintLiteral):
14585 * WebGPUShadingLanguageRI/FuncInstantiator.js:
14586 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitNativeFunc):
14587 (FuncInstantiator.prototype.getUnique.Instantiate):
14588 (FuncInstantiator.prototype.getUnique):
14589 (FuncInstantiator):
14590 * WebGPUShadingLanguageRI/Intrinsics.js:
14592 * WebGPUShadingLanguageRI/Lexer.js:
14593 (Lexer.prototype.next):
14595 * WebGPUShadingLanguageRI/NameContext.js:
14596 (NameContext.prototype.recognizeIntrinsics):
14597 * WebGPUShadingLanguageRI/NameResolver.js:
14598 (NameResolver.prototype.visitProtocolRef):
14599 * WebGPUShadingLanguageRI/NativeFuncInstance.js:
14600 (NativeFuncInstance.prototype.get isNative):
14601 * WebGPUShadingLanguageRI/Parse.js:
14605 (parsePossibleSuffix):
14607 * WebGPUShadingLanguageRI/ProtocolDecl.js:
14609 * WebGPUShadingLanguageRI/ProtocolRef.js:
14610 (ProtocolRef.prototype.get isPrimitive):
14612 * WebGPUShadingLanguageRI/PtrType.js:
14613 (PtrType.prototype.populateDefaultValue): Deleted.
14614 * WebGPUShadingLanguageRI/ReferenceType.js:
14615 (ReferenceType.prototype.populateDefaultValue):
14617 * WebGPUShadingLanguageRI/Rewriter.js:
14618 (Rewriter.prototype.visitUintLiteral):
14619 (Rewriter.prototype.visitFunc): Deleted.
14620 (Rewriter.prototype.visitTypeVariable): Deleted.
14621 (Rewriter.prototype.visitConstexprTypeParameter): Deleted.
14622 * WebGPUShadingLanguageRI/StandardLibrary.js:
14623 * WebGPUShadingLanguageRI/Test.js:
14624 (TEST_threadArrayLoad):
14625 (TEST_deviceArrayLoad):
14626 * WebGPUShadingLanguageRI/TypeRef.js:
14627 (TypeRef.prototype.get instantiatedType):
14628 * WebGPUShadingLanguageRI/TypeVariable.js:
14629 (TypeVariable.prototype.toString):
14631 * WebGPUShadingLanguageRI/UintLiteral.js: Added.
14633 (UintLiteral.prototype.get value):
14634 (UintLiteral.prototype.get isConstexpr):
14635 (UintLiteral.prototype.toString):
14636 * WebGPUShadingLanguageRI/Visitor.js:
14637 (Visitor.prototype.visitNativeFuncInstance):
14638 (Visitor.prototype.visitTypeVariable):
14639 (Visitor.prototype.visitPtrType):
14640 (Visitor.prototype.visitArrayRefType):
14641 (Visitor.prototype.visitUintLiteral):
14642 * WebGPUShadingLanguageRI/WTrapError.js: Added.
14645 2017-08-31 Alex Christensen <achristensen@webkit.org>
14647 Add WKUIDelegatePrivate equivalent of WKPageUIClient's isPlayingAudioDidChange
14648 https://bugs.webkit.org/show_bug.cgi?id=176203
14649 <rdar://problem/29270035>
14651 Reviewed by Tim Horton.
14653 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
14654 (-[MediaDelegate _webView:isPlayingMediaDidChange:]):
14655 (-[MediaDelegate webView:didFinishNavigation:]):
14658 2017-08-31 Alex Christensen <achristensen@webkit.org>
14660 Add ObjC SPI corresponding to WKPageLoaderClient's webGLLoadPolicy and resolveWebGLLoadPolicy
14661 https://bugs.webkit.org/show_bug.cgi?id=175779
14662 <rdar://problem/22367975>
14664 Reviewed by Tim Horton.
14666 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
14667 * TestWebKitAPI/Tests/WebKitCocoa/WebGLPolicy.mm: Added.
14668 (-[WebGLTestDelegate webView:startURLSchemeTask:]):
14669 (-[WebGLTestDelegate webView:stopURLSchemeTask:]):
14670 (-[WebGLTestDelegate _webView:webGLLoadPolicyForURL:decisionHandler:]):
14671 (-[WebGLTestDelegate _webView:resolveWebGLLoadPolicyForURL:decisionHandler:]):
14672 (-[WebGLTestDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
14677 2017-08-31 Don Olmstead <don.olmstead@sony.com>
14679 [CMake] Make USE_CF conditional within Windows
14680 https://bugs.webkit.org/show_bug.cgi?id=176173
14682 Reviewed by Alex Christensen.
14684 * DumpRenderTree/config.h:
14685 * MiniBrowser/win/CMakeLists.txt:
14686 * MiniBrowser/win/stdafx.h:
14687 * TestWebKitAPI/PlatformWin.cmake:
14689 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14691 WSL should support makeptr (\)
14692 https://bugs.webkit.org/show_bug.cgi?id=176197
14694 Reviewed by Saam Barati.
14696 This required introducing some sanity about how pointers are carried around in the evaluator.
14697 It turns out that we need to be careful about when a pointer to an rvalue is dereferenced. It
14698 should be dereferenced basically immediately. If it cannot be, then we need to snapshot the
14699 value. To do that, we need to know the types of things in a few more places. That's what this
14700 change accomplishes.
14702 * WebGPUShadingLanguageRI/All.js:
14703 * WebGPUShadingLanguageRI/CallFunction.js:
14705 * WebGPUShadingLanguageRI/Checker.js:
14706 (Checker.prototype.visitProtocolDecl.set throw):
14707 * WebGPUShadingLanguageRI/DereferenceExpression.js:
14708 (DereferenceExpression.prototype.get isLValue):
14709 * WebGPUShadingLanguageRI/Evaluator.js:
14710 (Evaluator.prototype._snapshot):
14711 (Evaluator.prototype.runBody):
14712 (Evaluator.prototype.visitFunctionLikeBlock):
14713 (Evaluator.prototype.visitDereferenceExpression):
14714 (Evaluator.prototype.visitMakePtrExpression):
14715 (Evaluator.prototype.visitCommaExpression):
14716 (Evaluator.prototype.visitCallExpression):
14718 (Evaluator.prototype._dereference): Deleted.
14719 * WebGPUShadingLanguageRI/FuncInstantiator.js:
14720 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
14721 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitNativeFunc):
14722 (FuncInstantiator.prototype.getUnique.Instantiate):
14723 (FuncInstantiator.prototype.getUnique):
14724 (FuncInstantiator):
14725 * WebGPUShadingLanguageRI/FunctionLikeBlock.js:
14726 (FunctionLikeBlock):
14727 (FunctionLikeBlock.prototype.get returnType):
14728 (FunctionLikeBlock.prototype.toString):
14729 * WebGPUShadingLanguageRI/Inliner.js:
14730 (Inliner.prototype.visitCallExpression):
14732 * WebGPUShadingLanguageRI/MakePtrExpression.js: Added.
14733 (MakePtrExpression):
14734 (MakePtrExpression.prototype.get lValue):
14735 (MakePtrExpression.prototype.toString):
14736 * WebGPUShadingLanguageRI/NativeFuncInstance.js: Added.
14737 (NativeFuncInstance):
14738 (NativeFuncInstance.prototype.get func):
14739 (NativeFuncInstance.prototype.toString):
14740 * WebGPUShadingLanguageRI/Rewriter.js:
14741 (Rewriter.prototype.visitMakePtrExpression):
14742 (Rewriter.prototype.visitCallExpression):
14743 * WebGPUShadingLanguageRI/Test.js:
14744 (TEST_dereferenceStore):
14745 (TEST_simpleMakePtr):
14746 * WebGPUShadingLanguageRI/Value.js:
14747 (Value.prototype.get isLValue):
14749 * WebGPUShadingLanguageRI/VariableRef.js:
14750 (VariableRef.prototype.get isLValue):
14751 (VariableRef.prototype.get addressSpace):
14752 * WebGPUShadingLanguageRI/Visitor.js:
14753 (Visitor.prototype.visitMakePtrExpression):
14754 (Visitor.prototype.visitCallExpression):
14756 2017-08-31 Ryan Haddad <ryanhaddad@apple.com>
14758 Unreviewed, rolling out r221445.
14760 This change broke Sierra Release builds.
14762 Reverted changeset:
14764 "Switch HTMLMediaElement to release logging"
14765 https://bugs.webkit.org/show_bug.cgi?id=176065
14766 http://trac.webkit.org/changeset/221445
14768 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14770 WSL should support dereference (^)
14771 https://bugs.webkit.org/show_bug.cgi?id=176192
14773 Reviewed by Myles Maxfield.
14775 This implements DereferenceExpression.
14777 It also renames Evaluator.prototype.visitFunctionBody, because that name confusingly implies
14778 that there is a class named FunctionBody. It's now called runBody.
14780 I made the check to see if a type is a pointer type be the isPtr method, so that we can have
14781 other pointer types that are implemented via something other than PtrType. We might want it if
14782 for example we wanted a pointer type that is generic over address space.
14784 * WebGPUShadingLanguageRI/All.js:
14785 * WebGPUShadingLanguageRI/CallFunction.js:
14787 * WebGPUShadingLanguageRI/Checker.js:
14788 (Checker.prototype.visitProtocolDecl.set throw):
14789 * WebGPUShadingLanguageRI/DereferenceExpression.js: Added.
14790 (DereferenceExpression):
14791 (DereferenceExpression.prototype.get ptr):
14792 (DereferenceExpression.prototype.toString):
14793 * WebGPUShadingLanguageRI/Evaluator.js:
14794 (Evaluator.prototype.visitFunctionLikeBlock):
14795 (Evaluator.prototype._dereference):
14796 (Evaluator.prototype.visitDereferenceExpression):
14797 (Evaluator.prototype.visitFunctionBody): Deleted.
14798 * WebGPUShadingLanguageRI/PtrType.js:
14799 (PtrType.prototype.get isPtr):
14800 (PtrType.prototype.populateDefaultValue):
14801 * WebGPUShadingLanguageRI/Rewriter.js:
14802 (Rewriter.prototype.visitAssignment):
14803 (Rewriter.prototype.visitDereferenceExpression):
14804 * WebGPUShadingLanguageRI/Test.js:
14805 (TEST_simpleDereference):
14806 * WebGPUShadingLanguageRI/Type.js:
14807 (Type.prototype.get isPtr):
14808 * WebGPUShadingLanguageRI/Visitor.js:
14809 (Visitor.prototype.visitDereferenceExpression):
14811 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14813 There should only be one callFunction API in WSL
14814 https://bugs.webkit.org/show_bug.cgi?id=176189
14816 Reviewed by Saam Barati.
14818 This removes the need for callFunctionByRef, which was weird. It's now the case the TypedValue
14819 is always a tuple of type and ePtr, and TypedValue has a super simple API for boxing and
14820 unboxing single-cell values like ints.
14822 * WebGPUShadingLanguageRI/CallFunction.js:
14824 (callFunctionByRef): Deleted.
14825 * WebGPUShadingLanguageRI/Test.js:
14827 * WebGPUShadingLanguageRI/TypedValue.js:
14829 (TypedValue.prototype.get type):
14830 (TypedValue.prototype.get ePtr):
14832 (TypedValue.prototype.get value):
14833 (TypedValue.prototype.toString):
14835 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14837 WSL EPtr does not need to carry around the type
14838 https://bugs.webkit.org/show_bug.cgi?id=176188
14840 Reviewed by Saam Barati.
14842 To validate that the interpreter is modeling a statically typed execution environment, it's
14843 really best if values don't know their types at all. A pointer is just a pointer (i.e a buffer
14844 and offset in our world), and it's the job of the AST node that uses it to figure out what its
14847 I think this makes the code simpler overall.
14849 * WebGPUShadingLanguageRI/All.js:
14850 * WebGPUShadingLanguageRI/CallFunction.js:
14851 (callFunctionByRef):
14853 * WebGPUShadingLanguageRI/Checker.js:
14854 (Checker.prototype.visitProtocolDecl.set throw):
14855 * WebGPUShadingLanguageRI/EBufferBuilder.js:
14856 (EBufferBuilder.prototype._createEPtr):
14857 * WebGPUShadingLanguageRI/EPtr.js:
14860 (EPtr.prototype.copyFrom):
14861 (EPtr.prototype.toString):
14862 * WebGPUShadingLanguageRI/EValue.js: Removed.
14863 * WebGPUShadingLanguageRI/Evaluator.js:
14864 (Evaluator.prototype.visitFunctionLikeBlock):
14865 (Evaluator.prototype.visitVariableDecl):
14866 (Evaluator.prototype.visitAssignment):
14867 (Evaluator.prototype.visitIntLiteral):
14868 * WebGPUShadingLanguageRI/Intrinsics.js:
14870 * WebGPUShadingLanguageRI/Rewriter.js:
14871 (Rewriter.prototype.visitAssignment):
14872 * WebGPUShadingLanguageRI/StructType.js:
14873 (StructType.prototype.instantiate):
14874 * WebGPUShadingLanguageRI/Test.js:
14877 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14879 WSL doesn't need to wrap primitives like ints and floats in specialized classes like EInt and EFloat
14880 https://bugs.webkit.org/show_bug.cgi?id=176184
14882 Reviewed by Saam Barati.
14884 The only use for EInt and EFloat was that users of the interpreter want to be able to reason
14885 about values that know their type. But for the actual interpreter, it makes most sense for
14886 EBuffer to hold values directly - for example, ints in the case of values of type int. Then,
14887 all of the logic of doing math on those things can be implemented in Intrinsics.js.
14889 So, this removes EInt and EFloat but introduces a new TypedValue class that is used only on the
14890 boundary of the interpreter. You can either use the interpreter by speaking its internal
14891 language (EPtr to an EBuffer that has the values) or by using the simple API (which uses
14892 TypedValue as a trade-off between power and convenience).
14894 * WebGPUShadingLanguageRI/All.js:
14895 * WebGPUShadingLanguageRI/CallFunction.js:
14897 * WebGPUShadingLanguageRI/EFloat.js: Removed.
14898 * WebGPUShadingLanguageRI/EInt.js: Removed.
14899 * WebGPUShadingLanguageRI/EPtr.js:
14901 * WebGPUShadingLanguageRI/Evaluator.js:
14902 (Evaluator.prototype.visitIntLiteral):
14903 * WebGPUShadingLanguageRI/Intrinsics.js:
14905 * WebGPUShadingLanguageRI/Test.js:
14909 (TEST_simpleGeneric):
14910 (TEST_simpleAssignment):
14911 (TEST_simpleDefault):
14912 * WebGPUShadingLanguageRI/TypedValue.js: Added.
14914 (TypedValue.prototype.toString):
14916 2017-08-31 David Quesada <david_quesada@apple.com>
14918 WKNavigationDelegatePrivate client redirect SPI needs to be able to detect redirects scheduled before the document finishes loading
14919 https://bugs.webkit.org/show_bug.cgi?id=176128
14920 rdar://problem/34068476
14922 Reviewed by Brady Eidson.
14924 Removed API test for the deleted WKNavigationDelegatePrivate method,
14925 and added two new tests for the two new methods.
14927 * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
14928 (-[ClientRedirectNavigationDelegate _webView:willPerformClientRedirectToURL:delay:]):
14929 (-[ClientRedirectNavigationDelegate _webViewDidCancelClientRedirect:]):
14930 (-[ClientRedirectNavigationDelegate webView:didFinishNavigation:]):
14933 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14935 WSL should handle variable assignments and variable declarations
14936 https://bugs.webkit.org/show_bug.cgi?id=176180
14938 Reviewed by Saam Barati.
14940 Just fills in VariableDecl and Assignment logic so that we can test variables.
14942 * WebGPUShadingLanguageRI/Checker.js:
14943 (Checker.prototype.visitProtocolDecl.set throw):
14944 * WebGPUShadingLanguageRI/EBufferBuilder.js:
14945 (EBufferBuilder.prototype._createEPtrForNode):
14946 (EBufferBuilder.prototype.visitFuncParameter):
14947 (EBufferBuilder.prototype.visitVariableDecl):
14949 * WebGPUShadingLanguageRI/Evaluator.js:
14950 (Evaluator.prototype.visitVariableDecl):
14951 (Evaluator.prototype.visitAssignment):
14952 * WebGPUShadingLanguageRI/NameResolver.js:
14953 (NameResolver.prototype.visitVariableDecl):
14954 * WebGPUShadingLanguageRI/Rewriter.js:
14955 (Rewriter.prototype.visitFuncParameter):
14956 (Rewriter.prototype.visitVariableDecl):
14957 * WebGPUShadingLanguageRI/Test.js:
14960 (TEST_simpleGeneric):
14961 (TEST_simpleAssignment):
14962 (TEST_simpleDefault):
14963 * WebGPUShadingLanguageRI/Visitor.js:
14964 (Visitor.prototype.visitVariableDecl):
14966 2017-08-31 Chris Dumez <cdumez@apple.com>
14968 getFileMetadata() does not work as expected for symbolic links
14969 https://bugs.webkit.org/show_bug.cgi?id=176143
14971 Reviewed by Andreas Kling.
14973 Add API test coverage.
14975 * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
14976 (TestWebKitAPI::TEST_F):
14978 2017-08-31 Filip Pizlo <fpizlo@apple.com>
14980 WSL parser should pass the token as the origin to the AST
14981 https://bugs.webkit.org/show_bug.cgi?id=176177
14983 Reviewed by Keith Miller.
14985 Parse.js was sometimes passing token.origin as the origin, but that's just the filename
14986 component of the origin. This fixes the problem and adds a test. The test previously failed
14987 because instead of reporting the origin of the type error as "<test>:1", it reported undefined.
14989 * WebGPUShadingLanguageRI/Parse.js:
14990 (parseProtocolRef):
14991 (consumeEndOfTypeArgs):
14992 (parseTypeParameters):
14994 (parseTypeArguments):
14998 (parseLeftOperatorCall):
14999 (parsePossibleSuffix):
15000 (parsePossiblePrefix):
15001 (parsePossibleRelationalEquality):
15002 (parseLeftLogicalExpression):
15003 (parsePossibleTernaryConditional):
15004 (parsePossibleAssignment):
15005 (genericParseCommaExpression):
15007 (parseVariableDecls):
15009 * WebGPUShadingLanguageRI/Test.js:
15011 (TEST_nameResolutionFailure):
15013 2017-08-31 Keith Miller <keith_miller@apple.com>
15015 Add a filter argument to WSL test suite.
15016 https://bugs.webkit.org/show_bug.cgi?id=176176
15018 Reviewed by Filip Pizlo.
15020 * WebGPUShadingLanguageRI/Test.js:
15021 (this.string_appeared_here.i.switch):
15022 (let.s.in.this.s.startsWith.string_appeared_here.s.match):
15023 (let.s.in.this.s.startsWith): Deleted.
15025 2017-08-30 Filip Pizlo <fpizlo@apple.com>
15027 WSL should be able to run a program that uses generics
15028 https://bugs.webkit.org/show_bug.cgi?id=176152
15030 Reviewed by Keith Miller.
15032 This fixes the WSL parser and type checker to the point that we can:
15034 - Parse a function call!
15035 - Type check a generic function call with an inferred type parameter.
15036 - Instantiate a generic function.
15037 - Inline a function call.
15038 - Evaluate an inlined function call.
15040 This also changes the test suite so that it's a little nicer to add new tests. Functions whose
15041 names start with "TEST_" are tests.
15043 * WebGPUShadingLanguageRI/Checker.js:
15044 (Checker.prototype.visitProtocolDecl.set throw):
15045 * WebGPUShadingLanguageRI/EBufferBuilder.js:
15046 (EBufferBuilder.prototype.visitFuncParameter):
15048 * WebGPUShadingLanguageRI/Evaluator.js:
15049 (Evaluator.prototype.visitFunctionLikeBlock):
15050 * WebGPUShadingLanguageRI/FuncDef.js:
15051 (FuncDef.prototype.toString):
15053 * WebGPUShadingLanguageRI/FuncInstantiator.js:
15054 (FuncInstantiator.prototype.getUnique):
15055 (FuncInstantiator):
15056 * WebGPUShadingLanguageRI/Inliner.js:
15057 (Inliner.prototype.visitCallExpression):
15059 * WebGPUShadingLanguageRI/Lexer.js:
15061 * WebGPUShadingLanguageRI/NameContext.js:
15063 (NameContext.prototype.add):
15064 (NameContext.prototype.get let):
15065 (NameContext.prototype.defineAll):
15066 (NameContext.get intrinsics): Deleted.
15067 (NameContext.set program): Deleted.
15068 (NameContext.get program): Deleted.
15069 * WebGPUShadingLanguageRI/NameResolver.js:
15070 (NameResolver.prototype.visitProgram):
15071 * WebGPUShadingLanguageRI/Parse.js:
15073 (parsePossibleSuffix):
15074 (genericParseCommaExpression):
15076 * WebGPUShadingLanguageRI/Program.js:
15077 (Program.prototype.resolveFuncOverload):
15078 * WebGPUShadingLanguageRI/ProtocolDecl.js:
15079 (ProtocolDecl.prototype.inherits):
15080 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
15081 (resolveOverloadImpl):
15082 * WebGPUShadingLanguageRI/Rewriter.js:
15083 (Rewriter.prototype.visitFuncParameter):
15084 (Rewriter.prototype.visitCallExpression):
15085 (Rewriter.prototype._map): Deleted.
15086 * WebGPUShadingLanguageRI/Test.js:
15089 (TEST_simpleGeneric):
15090 (let.s.in.this.s.startsWith):
15092 * WebGPUShadingLanguageRI/TypeVariable.js:
15093 (TypeVariable.prototype.typeVariableUnify):
15094 * WebGPUShadingLanguageRI/UnificationContext.js:
15095 (UnificationContext.prototype.union):
15097 2017-08-30 Alex Christensen <achristensen@webkit.org>
15099 Add WKUIDelegatePrivate equivalent of WKPageUIClient's didClickAutoFillButton
15100 https://bugs.webkit.org/show_bug.cgi?id=176139
15101 <rdar://problem/29270035>
15103 Reviewed by Tim Horton.
15105 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
15106 * TestWebKitAPI/Tests/WebKitCocoa/ClickAutoFillButton.mm: Added.
15107 (didClickAutoFillButton):
15108 (-[ClickAutoFillButton webProcessPlugIn:didCreateBrowserContextController:]):
15109 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
15110 (-[AutoFillDelegate _webView:didClickAutoFillButtonWithUserInfo:]):
15111 (-[AutoFillDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
15114 2017-08-31 Carlos Garcia Campos <cgarcia@igalia.com>
15116 [GTK] Several InputMethodFilter tests are failing and crashing
15117 https://bugs.webkit.org/show_bug.cgi?id=176158
15119 Reviewed by Carlos Alberto Lopez Perez.
15121 This started to happen after the GTK+ upgrade from 3.16 to 3.22 in the internal jhbuild. Now, GtkIMContext
15122 doesn't emit the preedit signals when using the compose key (GDK_KEY_Multi_key). The composition results are
15123 committed directly when they are ready. The test InputMethodFilterComposeKey was failing because it expected
15124 preedit events that no longer happen. Tests InputMethodFilterContextFocusOutDuringOngoingComposition and
15125 InputMethodFilterContextMouseClickDuringOngoingComposition were crashing because InputMethodFilter::confirmCurrentComposition()
15126 accessed the WebPageProxy unconditionally, that is not available in testing mode. I wonder how this ever
15127 worked. Other tests results have also been updated because logHandleKeyboardEventWithCompositionResultsForTesting()
15128 now uses hexadecimal numbers for the key codes, for consistency with all other event logs.
15130 * TestWebKitAPI/Tests/WebKit/gtk/InputMethodFilter.cpp:
15131 (TestWebKitAPI::TestInputMethodFilter::TestInputMethodFilter):
15132 (TestWebKitAPI::TEST):
15133 (TestWebKitAPI::verifyCanceledComposition): Deleted.
15135 2017-08-31 Carlos Garcia Campos <cgarcia@igalia.com>
15137 [GTK][Wayland] Crash when gdk_keymap_get_entries_for_keyval returns TRUE but n_keys=0
15138 https://bugs.webkit.org/show_bug.cgi?id=176154
15140 Reviewed by Carlos Alberto Lopez Perez.
15142 Also check the n_keys > 0 when using gdk_keymap_get_entries_for_keyval().
15144 * TestWebKitAPI/Tests/WebKit/gtk/InputMethodFilter.cpp:
15145 (TestWebKitAPI::TestInputMethodFilter::sendKeyEventToFilter):
15146 * TestWebKitAPI/Tests/WebKitGtk/TestPrinting.cpp: Remove duplicated code and use WebViewTest::keyStroke instead.
15147 * TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp:
15148 (WebViewTest::keyStroke):
15149 * TestWebKitAPI/gtk/PlatformWebViewGtk.cpp:
15150 (TestWebKitAPI::doKeyStroke):
15151 * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
15152 (WTR::EventSenderProxy::keyDown):
15154 2017-08-31 Carlos Garcia Campos <cgarcia@igalia.com>
15156 Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session.
15158 It fails when comparing the browser version if micro version is 0 (or if both micro and minor are 0 too).
15160 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Use a helper method to convert major, minor, micro
15161 numbers into a version string, using the same approach as WebKitAutomationSession.
15163 2017-08-30 Dan Bernstein <mitz@apple.com>
15165 [iOS] REGRESSION (r218144) -[WKContentView targetForAction:withSender:] returns the content view for actions implemented only by the WKWebView, causing a crash
15166 https://bugs.webkit.org/show_bug.cgi?id=176077
15167 <rdar://problem/34145200>
15169 Reviewed by Sam Weinig.
15171 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
15172 * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewTargetForAction.mm: Added.
15173 (-[TestWKContentViewTargetForActionView testAction:]):
15175 * TestWebKitAPI/ios/UIKitSPI.h:
15177 2017-08-30 Carlos Alberto Lopez Perez <clopez@igalia.com>
15179 [GTK] install-dependencies script should install CUPS headers
15180 https://bugs.webkit.org/show_bug.cgi?id=176129
15182 Reviewed by Michael Catanzaro.
15184 When building GTK+ on the JHBuild, it will enable the CUPS print
15185 backend if the CUPS headers are installed. Having a print backend
15186 on GTK+ is needed for the print-related API tests.
15188 * gtk/install-dependencies:
15190 2017-08-30 Filip Pizlo <fpizlo@apple.com>
15192 Rename ArrayLang to WebGPU Shading Language, or WSL for short, pronounced "whistle"
15193 https://bugs.webkit.org/show_bug.cgi?id=176117
15195 Reviewed by Myles Maxfield.
15197 Renamed ArrayLangRI to WebGPUShadingLanguageRI.
15199 Renamed ALSyntaxError/ALTypeError to WSyntaxError/WTypeError.
15201 Renamed all references to "ArrayLang" in the code to "WSL".
15203 * ArrayLangRI: Removed.
15204 * ArrayLangRI/ALSyntaxError.js: Removed.
15205 * ArrayLangRI/ALTypeError.js: Removed.
15206 * ArrayLangRI/AddressSpace.js: Removed.
15207 * ArrayLangRI/All.js: Removed.
15208 * ArrayLangRI/ArrayRefType.js: Removed.
15209 * ArrayLangRI/ArrayType.js: Removed.
15210 * ArrayLangRI/Assignment.js: Removed.
15211 * ArrayLangRI/Block.js: Removed.
15212 * ArrayLangRI/CallAssignment.js: Removed.
15213 * ArrayLangRI/CallExpression.js: Removed.
15214 * ArrayLangRI/CallFunction.js: Removed.
15215 * ArrayLangRI/Check.js: Removed.
15216 * ArrayLangRI/Checker.js: Removed.
15217 * ArrayLangRI/CommaExpression.js: Removed.
15218 * ArrayLangRI/ConstexprTypeParameter.js: Removed.
15219 * ArrayLangRI/EBuffer.js: Removed.
15220 * ArrayLangRI/EBufferBuilder.js: Removed.
15221 * ArrayLangRI/EFloat.js: Removed.
15222 * ArrayLangRI/EInt.js: Removed.
15223 * ArrayLangRI/EPtr.js: Removed.
15224 * ArrayLangRI/EValue.js: Removed.
15225 * ArrayLangRI/EvaluationCommon.js: Removed.
15226 * ArrayLangRI/Evaluator.js: Removed.
15227 * ArrayLangRI/Expression.js: Removed.
15228 * ArrayLangRI/Field.js: Removed.
15229 * ArrayLangRI/Func.js: Removed.
15230 * ArrayLangRI/FuncDef.js: Removed.
15231 * ArrayLangRI/FuncInstantiator.js: Removed.
15232 * ArrayLangRI/FuncParameter.js: Removed.
15233 * ArrayLangRI/FunctionLikeBlock.js: Removed.
15234 * ArrayLangRI/Inline.js: Removed.
15235 * ArrayLangRI/Inliner.js: Removed.
15236 * ArrayLangRI/InstantiateImmediates.js: Removed.
15237 * ArrayLangRI/IntLiteral.js: Removed.
15238 * ArrayLangRI/Intrinsics.js: Removed.
15239 * ArrayLangRI/Lexer.js: Removed.
15240 * ArrayLangRI/LexerToken.js: Removed.
15241 * ArrayLangRI/NameContext.js: Removed.
15242 * ArrayLangRI/NameResolver.js: Removed.
15243 * ArrayLangRI/NativeFunc.js: Removed.
15244 * ArrayLangRI/NativeType.js: Removed.
15245 * ArrayLangRI/NativeTypeInstance.js: Removed.
15246 * ArrayLangRI/Node.js: Removed.
15247 * ArrayLangRI/NullType.js: Removed.
15248 * ArrayLangRI/Parse.js: Removed.
15249 * ArrayLangRI/Prepare.js: Removed.
15250 * ArrayLangRI/Program.js: Removed.
15251 * ArrayLangRI/Protocol.js: Removed.
15252 * ArrayLangRI/ProtocolDecl.js: Removed.
15253 * ArrayLangRI/ProtocolRef.js: Removed.
15254 * ArrayLangRI/PtrType.js: Removed.
15255 * ArrayLangRI/ReferenceType.js: Removed.
15256 * ArrayLangRI/ResolveNames.js: Removed.
15257 * ArrayLangRI/ResolveOverloadImpl.js: Removed.
15258 * ArrayLangRI/ResolveTypeDefs.js: Removed.
15259 * ArrayLangRI/Return.js: Removed.
15260 * ArrayLangRI/ReturnException.js: Removed.
15261 * ArrayLangRI/Rewriter.js: Removed.
15262 * ArrayLangRI/StandardLibrary.js: Removed.
15263 * ArrayLangRI/StructType.js: Removed.
15264 * ArrayLangRI/Substitution.js: Removed.
15265 * ArrayLangRI/SuffixCallAssignment.js: Removed.
15266 * ArrayLangRI/Test.js: Removed.
15267 * ArrayLangRI/Type.js: Removed.
15268 * ArrayLangRI/TypeDef.js: Removed.
15269 * ArrayLangRI/TypeDefResolver.js: Removed.
15270 * ArrayLangRI/TypeOrVariableRef.js: Removed.
15271 * ArrayLangRI/TypeRef.js: Removed.
15272 * ArrayLangRI/TypeVariable.js: Removed.
15273 * ArrayLangRI/UnificationContext.js: Removed.
15274 * ArrayLangRI/Value.js: Removed.
15275 * ArrayLangRI/VariableDecl.js: Removed.
15276 * ArrayLangRI/VariableRef.js: Removed.
15277 * ArrayLangRI/VisitingSet.js: Removed.
15278 * ArrayLangRI/Visitor.js: Removed.
15279 * WebGPUShadingLanguageRI: Copied from Tools/ArrayLangRI.
15280 * WebGPUShadingLanguageRI/ALSyntaxError.js: Removed.
15281 * WebGPUShadingLanguageRI/ALTypeError.js: Removed.
15282 * WebGPUShadingLanguageRI/All.js:
15283 * WebGPUShadingLanguageRI/CallFunction.js:
15284 (callFunctionByRef):
15285 * WebGPUShadingLanguageRI/Checker.js:
15286 (Checker.prototype.visitProtocolDecl.set throw):
15287 * WebGPUShadingLanguageRI/Intrinsics.js:
15288 (Intrinsics.prototype.add):
15290 * WebGPUShadingLanguageRI/Lexer.js:
15292 * WebGPUShadingLanguageRI/NameContext.js:
15293 (NameContext.prototype.add):
15294 * WebGPUShadingLanguageRI/NameResolver.js:
15295 (NameResolver.prototype._resolveTypeArguments):
15296 (NameResolver.prototype.visitTypeRef):
15297 (NameResolver.prototype.visitVariableRef):
15298 * WebGPUShadingLanguageRI/Parse.js:
15299 * WebGPUShadingLanguageRI/StandardLibrary.js:
15300 * WebGPUShadingLanguageRI/StructType.js:
15301 (StructType.prototype.add):
15302 (StructType.prototype.instantiate):
15303 * WebGPUShadingLanguageRI/TypeDefResolver.js:
15304 (TypeDefResolver.prototype.visitTypeRef):
15306 * WebGPUShadingLanguageRI/VisitingSet.js:
15307 (VisitingSet.prototype.doVisit):
15309 * WebGPUShadingLanguageRI/WSyntaxError.js: Copied from Tools/ArrayLangRI/ALSyntaxError.js.
15310 (ALSyntaxError): Deleted.
15311 * WebGPUShadingLanguageRI/WTypeError.js: Copied from Tools/ArrayLangRI/ALTypeError.js.
15312 (ALTypeError): Deleted.
15314 2017-08-30 Eric Carlson <eric.carlson@apple.com>
15316 Add Logger observer and helper class
15317 https://bugs.webkit.org/show_bug.cgi?id=176106
15319 Reviewed by Andy Estes.
15321 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
15322 (TestWebKitAPI::LoggingTest::LoggingTest):
15323 (TestWebKitAPI::LoggingTest::Logger::create):
15324 (TestWebKitAPI::TEST_F):
15325 (TestWebKitAPI::LogObserver::log):
15326 (TestWebKitAPI::LogObserver::channel const):
15328 2017-08-29 Filip Pizlo <fpizlo@apple.com>
15330 Initial reference implementation scaffolding for ArrayLang
15331 https://bugs.webkit.org/show_bug.cgi?id=175925
15333 Reviewed by Myles Maxfield.
15335 This introduces a very rough scaffolding for an AST walk interpreter and type checker for an
15336 experimental shader language we are calling ArrayLang for now.
15338 The idea is to have a strong core type system that includes generics and memory-safe pointers
15339 and array references. Everything has deterministic semantics right up to the limit of what is
15342 This language will support generics. This will be valid:
15344 protocol Addable { Addable operator+(Addable, Addable); }
15345 T add<T:Addable>(T a, T b) { return a + b; }
15347 This language will support pointers and array references. This will be valid:
15349 thread int^ foo() { int x; return \x; }
15351 Each variable behaves as if it was declared "static", with one copy per type instantiation.
15352 Functions cannot recurse and there is no stack.
15354 Currently, this just tests that the following function can be parsed, checked, and called:
15356 int foo(int x) { return x + 1; }
15358 * ArrayLangRI: Added.
15359 * ArrayLangRI/ALSyntaxError.js: Added.
15361 * ArrayLangRI/ALTypeError.js: Added.
15363 * ArrayLangRI/AddressSpace.js: Added.
15365 (validateAddressSpace):
15366 * ArrayLangRI/All.js: Added.
15367 * ArrayLangRI/ArrayRefType.js: Added.
15368 (ArrayRefType.prototype.unifyImpl):
15369 (ArrayRefType.prototype.toString):
15371 * ArrayLangRI/ArrayType.js: Added.
15373 (ArrayType.prototype.get origin):
15374 (ArrayType.prototype.get elementType):
15375 (ArrayType.prototype.get numElements):
15376 (ArrayType.prototype.get isPrimitive):
15377 (ArrayType.prototype.toString):
15378 (ArrayType.prototype.get size):
15379 (ArrayType.prototype.unifyImpl):
15380 * ArrayLangRI/Assignment.js: Added.
15382 (Assignment.prototype.get lhs):
15383 (Assignment.prototype.get rhs):
15384 (Assignment.prototype.toString):
15385 * ArrayLangRI/Block.js: Added.
15387 (Block.prototype.get origin):
15388 (Block.prototype.add):
15389 (Block.prototype.get statements):
15390 (Block.prototype.toString):
15391 * ArrayLangRI/CallAssignment.js: Added.
15393 (CallAssignment.prototype.get name):
15394 (CallAssignment.prototype.get lhs):
15395 (CallAssignment.prototype.get rhs):
15396 (CallAssignment.prototype.toString):
15397 * ArrayLangRI/CallExpression.js: Added.
15399 (CallExpression.prototype.get name):
15400 (CallExpression.prototype.get typeArguments):
15401 (CallExpression.prototype.get argumentList):
15402 (CallExpression.prototype.toString):
15403 * ArrayLangRI/CallFunction.js: Added.
15404 (callFunctionByRef):
15406 * ArrayLangRI/Check.js: Added.
15408 * ArrayLangRI/Checker.js: Added.
15410 (Checker.prototype.visitProgram):
15411 (Checker.prototype.visitProtocolDecl.NoticeTypeVariable.prototype.visitTypeRef):
15412 (Checker.prototype.visitProtocolDecl.NoticeTypeVariable.prototype.visitVariableRef):
15413 (Checker.prototype.visitProtocolDecl.NoticeTypeVariable):
15414 (Checker.prototype.visitProtocolDecl.set throw):
15415 * ArrayLangRI/CommaExpression.js: Added.
15417 (CommaExpression.prototype.get list):
15418 (CommaExpression.prototype.toString):
15419 * ArrayLangRI/ConstexprTypeParameter.js: Added.
15420 (ConstexprTypeParameter):
15421 (ConstexprTypeParameter.prototype.get name):
15422 (ConstexprTypeParameter.prototype.get type):
15423 (ConstexprTypeParameter.prototype.get isConstexpr):
15424 (ConstexprTypeParameter.prototype.get isUnifiable):
15425 (ConstexprTypeParameter.prototype.typeVariableUnify):
15426 (ConstexprTypeParameter.prototype.unifyImpl):
15427 (ConstexprTypeParameter.prototype.verifyAsArgument):
15428 (ConstexprTypeParameter.prototype.verifyAsParameter):
15429 (ConstexprTypeParameter.prototype.toString):
15430 * ArrayLangRI/EBuffer.js: Added.
15432 (EBuffer.get index):
15433 * ArrayLangRI/EBufferBuilder.js: Added.
15435 (EBufferBuilder.prototype._createEPtr):
15436 (EBufferBuilder.prototype.visitFuncParameter):
15437 * ArrayLangRI/EFloat.js: Added.
15439 (EFloat.prototype.get value):
15440 (EFloat.prototype.add):
15441 (EFloat.prototype.toString):
15442 * ArrayLangRI/EInt.js: Added.
15444 (EInt.prototype.get value):
15445 (EInt.prototype.add):
15446 (EInt.prototype.toString):
15447 * ArrayLangRI/EPtr.js: Added.
15450 (EPtr.prototype.get buffer):
15451 (EPtr.prototype.get offset):
15452 (EPtr.prototype.loadValue):
15453 (EPtr.prototype.copyFrom):
15454 (EPtr.prototype.toString):
15455 * ArrayLangRI/EValue.js: Added.
15457 (EValue.prototype.get type):
15458 * ArrayLangRI/EvaluationCommon.js: Added.
15459 * ArrayLangRI/Evaluator.js: Added.
15461 (Evaluator.prototype.visitFunctionBody):
15462 (Evaluator.prototype.visitFunctionLikeBlock):
15463 (Evaluator.prototype.visitReturn):
15464 (Evaluator.prototype.visitCommaExpression):
15465 (Evaluator.prototype.visitVariableRef):
15466 (Evaluator.prototype.visitIntLiteral):
15467 (Evaluator.prototype.visitCallExpression):
15468 * ArrayLangRI/Expression.js: Added.
15470 (Expression.prototype.get origin):
15471 * ArrayLangRI/Field.js: Added.
15473 (Field.prototype.get origin):
15474 (Field.prototype.get name):
15475 (Field.prototype.get type):
15476 (Field.prototype.toString):
15477 * ArrayLangRI/Func.js: Added.
15479 (Func.prototype.get name):
15480 (Func.prototype.get returnType):
15481 (Func.prototype.get typeParameters):
15482 (Func.prototype.get parameters):
15483 (Func.prototype.get parameterTypes):
15484 (Func.prototype.get kind):
15485 (Func.prototype.toString):
15486 * ArrayLangRI/FuncDef.js: Added.
15488 (FuncDef.prototype.get origin):
15489 (FuncDef.prototype.toString):
15490 * ArrayLangRI/FuncInstantiator.js: Added.
15491 (FuncInstantiator):
15492 (FuncInstantiator.prototype.getUnique):
15493 * ArrayLangRI/FuncParameter.js: Added.
15495 (FuncParameter.prototype.get origin):
15496 (FuncParameter.prototype.get name):
15497 (FuncParameter.prototype.get type):
15498 (FuncParameter.prototype.toString):
15499 * ArrayLangRI/FuncSignature.js: Added.
15500 * ArrayLangRI/FunctionLikeBlock.js: Added.
15501 (FunctionLikeBlock):
15502 (FunctionLikeBlock.prototype.get origin):
15503 (FunctionLikeBlock.prototype.get argumentList):
15504 (FunctionLikeBlock.prototype.get parameters):
15505 (FunctionLikeBlock.prototype.get body):
15506 (FunctionLikeBlock.prototype.toString):
15507 * ArrayLangRI/Inline.js: Added.
15510 (resolveInlinedFunction):
15511 * ArrayLangRI/Inliner.js: Added.
15513 (Inliner.prototype.visitCallExpression):
15514 * ArrayLangRI/InstantiateImmediates.js: Added.
15515 (InstantiateImmediates.prototype.visitTypeRef):
15516 (InstantiateImmediates.prototype.visitReferenceType):
15517 (InstantiateImmediates.prototype.visitStructType):
15518 (InstantiateImmediates.prototype.visitNativeType):
15519 (InstantiateImmediates.prototype.visitTypeVariable):
15520 (InstantiateImmediates):
15521 * ArrayLangRI/IntLiteral.js: Added.
15523 (IntLiteral.prototype.get value):
15524 (IntLiteral.prototype.get isConstexpr):
15525 (IntLiteral.prototype.toString):
15526 * ArrayLangRI/Intrinsics.js: Added.
15528 (Intrinsics.prototype.add):
15529 * ArrayLangRI/Lexer.js: Added.
15531 (Lexer.prototype.get lineNumber):
15532 (Lexer.prototype.get origin):
15533 (Lexer.prototype.get originString):
15534 (Lexer.prototype.lineNumberForIndex):
15535 (Lexer.prototype.get state):
15536 (Lexer.prototype.set state):
15537 (Lexer.prototype.next):
15538 * ArrayLangRI/LexerToken.js: Added.
15540 (LexerToken.prototype.get kind):
15541 (LexerToken.prototype.get text):
15542 (LexerToken.prototype.get origin):
15543 (LexerToken.prototype.get index):
15544 (LexerToken.prototype.get lineNumber):
15545 (LexerToken.prototype.get originString):
15546 (LexerToken.prototype.toString):
15547 * ArrayLangRI/NameContext.js: Added.
15550 (NameContext.prototype.mapFor):
15551 (NameContext.prototype.add):
15552 (NameContext.get currentStatement):
15553 (NameContext.get intrinsics):
15554 (NameContext.set program):
15555 (NameContext.get program):
15556 (NameContext.prototype.get let):
15557 * ArrayLangRI/NameResolver.js: Added.
15559 (NameResolver.prototype.visitProgram):
15560 (NameResolver.prototype._visitTypeParametersAndBuildNameContext):
15561 (NameResolver.prototype.visitFunc):
15562 (NameResolver.prototype.visitFuncDef):
15563 (NameResolver.prototype.visitBlock):
15564 (NameResolver.prototype.visitProtocolDecl):
15565 (NameResolver.prototype.visitTypeDef):
15566 (NameResolver.prototype.visitStructType):
15567 (NameResolver.prototype._resolveTypeArguments):
15568 (NameResolver.prototype.visitTypeRef):
15569 (NameResolver.prototype.visitReferenceType):
15570 (NameResolver.prototype.visitVariableRef):
15571 (NameResolver.prototype.visitReturn):
15572 (NameResolver.prototype.visitCallExpression):
15573 * ArrayLangRI/NativeFunc.js: Added.
15575 (NativeFunc.prototype.get origin):
15576 (NativeFunc.prototype.get isNative):
15577 (NativeFunc.prototype.toString):
15578 * ArrayLangRI/NativeType.js: Added.
15580 (NativeType.prototype.get origin):
15581 (NativeType.prototype.get name):
15582 (NativeType.prototype.get isPrimitive):
15583 (NativeType.prototype.get typeParameters):
15584 (NativeType.prototype.get isNative):
15585 (NativeType.prototype.instantiate):
15586 (NativeType.prototype.toString):
15587 * ArrayLangRI/NativeTypeInstance.js: Added.
15588 (NativeTypeInstance):
15589 (NativeTypeInstance.prototype.get type):
15590 (NativeTypeInstance.prototype.get typeArguments):
15591 (NativeTypeInstance.prototype.get isPrimitive):
15592 (NativeTypeInstance.prototype.get isNative):
15593 (NativeTypeInstance.prototype.unifyImpl):
15594 (NativeTypeInstance.prototype.toString):
15595 * ArrayLangRI/Node.js: Added.
15596 (Node.prototype.visit):
15598 (Node.prototype.unifyImpl):
15599 (Node.prototype.typeVariableUnify):
15600 (Node.prototype.get unifyNode):
15601 (Node.prototype.get isUnifiable):
15602 (Node.prototype.get isNative):
15603 (Node.prototype.equals):
15604 (Node.prototype.substitute):
15605 (Node.prototype.substituteToUnification):
15607 * ArrayLangRI/NullType.js: Added.
15609 * ArrayLangRI/Parse.js: Added.
15615 (parseProtocolRef):
15616 (consumeEndOfTypeArgs):
15617 (parseTypeParameters):
15620 (parseTypeArguments):
15621 (parseType.getAddressSpace):
15625 (genericParseLeft):
15626 (parseLeftOperatorCall):
15627 (parsePossibleSuffix):
15628 (parsePossiblePrefix):
15629 (parsePossibleProduct):
15630 (parsePossibleSum):
15631 (parsePossibleShift):
15632 (parsePossibleRelationalInequality):
15633 (parsePossibleRelationalEquality):
15634 (parsePossibleBitwiseXor):
15635 (parsePossibleBitwiseOr):
15636 (parseLeftLogicalExpression):
15637 (parsePossibleLogicalOr):
15638 (parsePossibleTernaryConditional):
15639 (parsePossibleAssignment):
15641 (parseEffectfulExpression):
15642 (genericParseCommaExpression):
15643 (parseCommaExpression):
15645 (parseEffectfulStatement):
15647 (parseVariableDecls):
15654 * ArrayLangRI/Prepare.js: Added.
15656 * ArrayLangRI/Program.js: Added.
15658 (Program.prototype.get topLevelStatements):
15659 (Program.prototype.get functions):
15660 (Program.prototype.get types):
15661 (Program.prototype.get funcInstantiator):
15662 (Program.prototype.add):
15663 (Program.prototype.resolveFuncOverload):
15664 (Program.prototype.get nameContext):
15665 (Program.prototype.toString):
15666 * ArrayLangRI/Protocol.js: Added.
15668 (Protocol.prototype.get origin):
15669 (Protocol.prototype.get name):
15670 (Protocol.prototype.get kind):
15671 (Protocol.prototype.toString):
15672 * ArrayLangRI/ProtocolDecl.js: Added.
15674 (ProtocolDecl.prototype.addSignature):
15675 (ProtocolDecl.prototype.get signatures):
15676 (ProtocolDecl.prototype.signaturesByName):
15677 (ProtocolDecl.prototype.get typeVariable):
15678 (ProtocolDecl.prototype.signaturesByNameWithTypeVariable):
15679 (ProtocolDecl.prototype.inherits):
15680 (ProtocolDecl.prototype.hasHeir):
15681 (ProtocolDecl.prototype.toString):
15682 * ArrayLangRI/ProtocolRef.js: Added.
15684 (ProtocolRef.prototype.inherits):
15685 (ProtocolRef.prototype.hasHeir):
15686 * ArrayLangRI/PtrType.js: Added.
15687 (PtrType.prototype.unifyImpl):
15688 (PtrType.prototype.toString):
15690 * ArrayLangRI/ReferenceType.js: Added.
15692 (ReferenceType.prototype.get origin):
15693 (ReferenceType.prototype.get addressSpace):
15694 (ReferenceType.prototype.get elementType):
15695 (ReferenceType.prototype.get isPrimitive):
15696 (ReferenceType.prototype.get size):
15697 * ArrayLangRI/ResolveNames.js: Added.
15699 * ArrayLangRI/ResolveOverloadImpl.js: Added.
15700 (resolveOverloadImpl):
15701 * ArrayLangRI/ResolveTypeDefs.js: Added.
15703 * ArrayLangRI/Return.js: Added.
15705 (Return.prototype.get origin):
15706 (Return.prototype.get value):
15707 (Return.prototype.toString):
15708 * ArrayLangRI/ReturnException.js: Added.
15710 (ReturnException.prototype.get value):
15711 * ArrayLangRI/Rewriter.js: Added.
15713 (Rewriter.prototype._map):
15714 (Rewriter.prototype._getMapping):
15715 (Rewriter.prototype.visitFunc):
15716 (Rewriter.prototype.visitFuncParameter):
15717 (Rewriter.prototype.visitBlock):
15718 (Rewriter.prototype.visitCommaExpression):
15719 (Rewriter.prototype.visitProtocolRef):
15720 (Rewriter.prototype.visitTypeRef):
15721 (Rewriter.prototype.visitTypeVariable):
15722 (Rewriter.prototype.visitConstexprTypeParameter):
15723 (Rewriter.prototype.visitField):
15724 (Rewriter.prototype.visitReferenceType):
15725 (Rewriter.visitPtrType):
15726 (Rewriter.prototype.visitArrayRefType):
15727 (Rewriter.prototype.visitArrayType):
15728 (Rewriter.prototype.visitAssignment):
15729 (Rewriter.prototype.visitVariableRef):
15730 (Rewriter.prototype.visitReturn):
15731 (Rewriter.prototype.visitIntLiteral):
15732 (Rewriter.prototype.visitCallExpression):
15733 (Rewriter.prototype.visitFunctionLikeBlock):
15734 * ArrayLangRI/StandardLibrary.js: Added.
15735 * ArrayLangRI/StructType.js: Added.
15737 (StructType.prototype.add):
15738 (StructType.prototype.get name):
15739 (StructType.prototype.get typeParameters):
15740 (StructType.prototype.get fieldNames):
15741 (StructType.prototype.fieldByName):
15742 (StructType.prototype.get fields):
15743 (StructType.prototype.get fieldMap):
15744 (StructType.prototype.get isPrimitive):
15745 (StructType.prototype.instantiate):
15746 (StructType.prototype.toString):
15747 * ArrayLangRI/Substitution.js: Added.
15749 (Substitution.mapping):
15750 (Substitution.prototype.visitTypeRef):
15751 (Substitution.prototype.visitVariableRef):
15752 * ArrayLangRI/SuffixCallAssignment.js: Added.
15753 (SuffixCallAssignment):
15754 (SuffixCallAssignment.prototype.get name):
15755 (SuffixCallAssignment.prototype.get lhs):
15756 (SuffixCallAssignment.prototype.toString):
15757 * ArrayLangRI/Test.js: Added.
15759 * ArrayLangRI/Type.js: Added.
15760 (Type.prototype.get typeParameters):
15761 (Type.prototype.get kind):
15762 (Type.prototype.inherits):
15763 (Type.prototype.get instantiatedType):
15765 * ArrayLangRI/TypeDef.js: Added.
15767 (TypeDef.prototype.get origin):
15768 (TypeDef.prototype.get name):
15769 (TypeDef.prototype.get typeParameters):
15770 (TypeDef.prototype.get type):
15771 * ArrayLangRI/TypeDefResolver.js: Added.
15773 (TypeDefResolver.prototype.visitTypeRef):
15774 * ArrayLangRI/TypeOrVariableRef.js: Added.
15775 (TypeOrVariableRef):
15776 (TypeOrVariableRef.prototype.get origin):
15777 (TypeOrVariableRef.prototype.get name):
15778 (TypeOrVariableRef.prototype.toString):
15779 * ArrayLangRI/TypeRef.js: Added.
15782 (TypeRef.prototype.get origin):
15783 (TypeRef.prototype.get name):
15784 (TypeRef.prototype.get typeArguments):
15785 (TypeRef.prototype.get isPrimitive):
15786 (TypeRef.prototype.get instantiatedType):
15787 (TypeRef.prototype.get unifyNode):
15788 (TypeRef.prototype.populateDefaultValue):
15789 (TypeRef.prototype.get size):
15790 (TypeRef.prototype.setTypeAndArguments):
15791 (TypeRef.prototype.unifyImpl):
15792 (TypeRef.prototype.toString):
15793 * ArrayLangRI/TypeVariable.js: Added.
15795 (TypeVariable.prototype.get name):
15796 (TypeVariable.prototype.get protocol):
15797 (TypeVariable.prototype.get isPrimitive):
15798 (TypeVariable.prototype.get isUnifiable):
15799 (TypeVariable.prototype.inherits):
15800 (TypeVariable.prototype.typeVariableUnify):
15801 (TypeVariable.prototype.unifyImpl):
15802 (TypeVariable.prototype.verifyAsArgument):
15803 (TypeVariable.prototype.verifyAsParameter):
15804 (TypeVariable.prototype.toString):
15805 * ArrayLangRI/UnificationContext.js: Added.
15806 (UnificationContext):
15807 (UnificationContext.prototype.union):
15808 (UnificationContext.prototype.find):
15809 (UnificationContext.prototype.get nodes):
15810 (UnificationContext.prototype.verify):
15811 (UnificationContext.prototype.isUnunified):
15812 * ArrayLangRI/Value.js: Added.
15813 (Value.prototype.get kind):
15814 (Value.prototype.get isConstexpr):
15816 * ArrayLangRI/VariableDecl.js: Added.
15818 (VariableDecl.prototype.get origin):
15819 (VariableDecl.prototype.get name):
15820 (VariableDecl.prototype.get type):
15821 (VariableDecl.prototype.get initializer):
15822 (VariableDecl.prototype.toString):
15823 * ArrayLangRI/VariableRef.js: Added.
15825 (VariableRef.prototype.get name):
15826 (VariableRef.prototype.get isConstexpr):
15827 (VariableRef.prototype.get unifyNode):
15828 (VariableRef.prototype.toString):
15829 * ArrayLangRI/VisitingSet.js: Added.
15831 (VisitingSet.prototype.doVisit):
15832 * ArrayLangRI/Visitor.js: Added.
15833 (Visitor.prototype.visitProgram):
15834 (Visitor.prototype.visitFunc):
15835 (Visitor.prototype.visitFuncParameter):
15836 (Visitor.prototype.visitFuncDef):
15837 (Visitor.prototype.visitNativeFunc):
15838 (Visitor.prototype.visitBlock):
15839 (Visitor.prototype.visitCommaExpression):
15840 (Visitor.prototype.visitProtocolRef):
15841 (Visitor.prototype.visitProtocolDecl):
15842 (Visitor.prototype.visitTypeRef):
15843 (Visitor.prototype.visitNativeType):
15844 (Visitor.prototype.visitTypeDef):
15845 (Visitor.prototype.visitStructType):
15846 (Visitor.prototype.visitTypeVariable):
15847 (Visitor.prototype.visitConstexprTypeParameter):
15848 (Visitor.prototype.visitField):
15849 (Visitor.prototype.visitElementalType):
15850 (Visitor.prototype.visitPtrType):
15851 (Visitor.prototype.visitArrayRefType):
15852 (Visitor.prototype.visitArrayType):
15853 (Visitor.prototype.visitAssignment):
15854 (Visitor.prototype.visitVariableRef):
15855 (Visitor.prototype.visitReturn):
15856 (Visitor.prototype.visitIntLiteral):
15857 (Visitor.prototype.visitCallExpression):
15858 (Visitor.prototype.visitFunctionLikeBlock):
15861 2017-08-30 Stephan Szabo <stephan.szabo@sony.com>
15863 [Win][JSCOnly] Support running JSC tests for win-cairo from windows command prompt
15864 https://bugs.webkit.org/show_bug.cgi?id=174985
15866 Reviewed by Keith Miller.
15868 * Scripts/run-javascriptcore-tests:
15869 * Scripts/run-jsc-stress-tests:
15870 * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
15871 * Scripts/webkitruby/jsc-stress-test-writer-ruby.rb: Added.
15873 2017-08-30 Adrian Perez de Castro <aperez@igalia.com>
15875 [GTK] Do not use autogen whenever possible in JHBuild modules
15876 https://bugs.webkit.org/show_bug.cgi?id=176098
15878 Reviewed by Carlos Alberto Lopez Perez.
15880 * gtk/jhbuild.modules: Added autogen-sh="configure" attributes for many Autootools modules.
15882 2017-08-30 Tomas Popela <tpopela@redhat.com>
15884 [GTK] Avoid building fontconfig documentation in jhbuild
15885 https://bugs.webkit.org/show_bug.cgi?id=176097
15887 Reviewed by Carlos Alberto Lopez Perez.
15889 Disable building fontconfig documentation in jhbuild as it needs the
15890 docbook-utils-pdf package installed which depends on quite a few
15891 packages (on Fedora it's 226 packages (mostly textlive) with installed
15892 size of 274 MB). The documentation is not needed at all in jhbuild, so
15893 disable it to save some bandwidth and disc space.
15895 * gtk/install-dependencies: Pass --disable-docs to fontconfig.
15896 * gtk/jhbuild.modules: Don't install docbook-utils-pdf on Fedora.
15898 2017-08-30 Tomas Popela <tpopela@redhat.com>
15900 Unreviewed, remove trailing space
15904 2017-08-29 Carlos Garcia Campos <cgarcia@igalia.com>
15906 REGRESSION(r221064): [GTK] Editor not correctly working after r221064
15907 https://bugs.webkit.org/show_bug.cgi?id=176052
15909 Reviewed by Michael Catanzaro.
15911 Run the test inside a window to ensure display updates happen.
15913 * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
15914 (testWebViewEditorEditorStateTypingAttributes):
15916 2017-08-29 Don Olmstead <don.olmstead@sony.com>
15918 [CMake] Use find_package for zlib
15919 https://bugs.webkit.org/show_bug.cgi?id=176075
15921 Reviewed by Alex Christensen.
15923 * TestWebKitAPI/PlatformWin.cmake:
15925 2017-08-29 Brent Fulgham <bfulgham@apple.com>
15927 ResourceLoadStatistics logic does not understand custom WebsiteData stores
15928 https://bugs.webkit.org/show_bug.cgi?id=176037
15929 <rdar://problem/33338238>
15931 Reviewed by Alex Christensen.
15933 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
15934 (TEST): Update for ResourceLoadStatistics directories.
15936 2017-08-29 Brady Eidson <beidson@apple.com>
15938 Rename "potentionally trustworthy" to "potentially trustworthy"
15939 https://bugs.webkit.org/show_bug.cgi?id=176081
15941 Reviewed by Daniel Bates.
15943 * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
15944 (TestWebKitAPI::TEST_F):
15946 2017-08-29 Stephan Szabo <stephan.szabo@sony.com>
15948 [Win][JSCOnly] Fix call for updating wincairo-libs in build-jsc
15949 https://bugs.webkit.org/show_bug.cgi?id=176080
15951 Reviewed by Brent Fulgham.
15953 * Scripts/build-jsc:
15955 2017-08-29 Adrian Perez de Castro <aperez@igalia.com>
15957 [WPE] Avoid using autogen for JHBuild modules, trying to fix the EWS
15959 Unreviewed build fix.
15961 This also makes the JHBuild process faster, because there are less
15962 modules which will trigger slow, ancient Perl and M4 based tooling.
15964 * wpe/jhbuild.modules:
15966 2017-08-29 Don Olmstead <don.olmstead@sony.com>
15968 [CMake] Use find_package for libxml2 and libxstl
15969 https://bugs.webkit.org/show_bug.cgi?id=176042
15971 Reviewed by Konstantin Tokarev.
15973 * TestWebKitAPI/PlatformWin.cmake:
15975 2017-08-29 Per Arne Vollan <pvollan@apple.com>
15977 [Win] A WTF test is timing out in run-api-tests.
15978 https://bugs.webkit.org/show_bug.cgi?id=176056
15980 Reviewed by Brent Fulgham.
15982 The test SynchronizedFixedQueue.ProduceOnly relies on that putting a thread to sleep for
15983 1ms will wake it up before another thread which is put to sleep for 10ms. I believe this
15984 is not neccessarily true on Windows where the thread scheduling does not have millisecond
15985 accuracy. Fix the test timeout by adjusting the sleep time slightly.
15987 * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
15988 (TestWebKitAPI::ToUpperConverter::startProducing):
15990 2017-08-29 Eric Carlson <eric.carlson@apple.com>
15992 Unreviewed, update my watchlist filters.
15994 * Scripts/webkitpy/common/config/watchlist:
15996 2017-08-29 Carlos Garcia Campos <cgarcia@igalia.com>
15998 Unreviewed. REGRESSION(r221219): Fix unit tests using resources from WebKit directory.
16000 The WebKit2 directory was renamed as WebKit in r221219, but neither run-gtk-tests script nor
16001 Test::getResourcesDir() were updated to use the new name.
16003 * Scripts/run-gtk-tests:
16004 (TestRunner._setup_testing_environment):
16005 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
16006 (Test::getResourcesDir):
16008 2017-08-28 Eric Carlson <eric.carlson@apple.com>
16010 Logger should use makeString instead of String::format
16011 https://bugs.webkit.org/show_bug.cgi?id=176035
16013 Reviewed by Jer Noble.
16015 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
16016 (TestWebKitAPI::TEST_F): Update test.
16018 2017-08-28 Michael Catanzaro <mcatanzaro@igalia.com>
16020 [GStreamer] The glvideoflip GStreamer element isn't available. Video mirroring and rotation functionalities are thus disabled.
16021 https://bugs.webkit.org/show_bug.cgi?id=175576
16023 Reviewed by Carlos Alberto Lopez Perez.
16025 Build graphene to enable the glvideoflip element.
16027 * gstreamer/jhbuild.modules:
16028 * gtk/jhbuild.modules:
16029 * jhbuild/jhbuild-wrapper:
16030 * wpe/jhbuild.modules:
16032 2017-08-28 Ms2ger <Ms2ger@gmail.com>
16034 Ensure that the alert function is called in TestWebExtensions.
16035 https://bugs.webkit.org/show_bug.cgi?id=175880
16037 Reviewed by Carlos Garcia Campos.
16039 The test relied on a bug in the HTMLDocument JavaScript bindings: when calling
16040 document.open() with three arguments, it would call any function set as the
16041 "open" property on the window object, rather than just the real Window::open()
16042 method. This bug was fixed by the removal of custom bindings for HTMLDocument
16043 in r218437. As a result, the test no longer called alert(), which caused it to
16046 Instead, call the window.open() function directly.
16048 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
16049 (testWebExtensionIsolatedWorld):
16051 2017-08-27 Wenson Hsieh <wenson_hsieh@apple.com>
16053 Picking an emoji via the emoji dialog (Ctrl+Cmd+Space) fires inconsistent beforeinput events.
16054 https://bugs.webkit.org/show_bug.cgi?id=170955
16055 <rdar://problem/31697653>
16057 Reviewed by Ryosuke Niwa.
16059 Replace UIScriptController.insertText with UIScriptController.replaceTextAtRange, and implement
16060 replaceTextAtRange in WebKit1. See corresponding layout tests (input-event-insert-replacement.html and
16061 before-input-prevent-insert-replacement.html) for more detail.
16063 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
16064 * DumpRenderTree/mac/AppKitTestSPI.h: Added.
16066 Introduce an SPI header for private AppKit headers needed to support DumpRenderTree.
16068 * DumpRenderTree/mac/UIScriptControllerMac.mm:
16069 (WTR::UIScriptController::replaceTextAtRange):
16070 (WTR::UIScriptController::insertText): Deleted.
16071 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
16072 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
16073 (WTR::UIScriptController::replaceTextAtRange):
16074 (WTR::UIScriptController::insertText): Deleted.
16075 * TestRunnerShared/UIScriptContext/UIScriptController.h:
16076 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
16077 (WTR::UIScriptController::replaceTextAtRange):
16078 (WTR::UIScriptController::insertText): Deleted.
16080 Replace UIScriptController.insertText with UIScriptController.replaceTextAtRange, which better describes the
16081 behavior of this function.
16083 2017-08-27 Wenson Hsieh <wenson_hsieh@apple.com>
16085 [iOS WK2] Web process crashes after changing selection to the end of the document when speaking a selection
16086 https://bugs.webkit.org/show_bug.cgi?id=176011
16087 <rdar://problem/32614095>
16089 Reviewed by Ryosuke Niwa.
16091 Introduces AccessibilityTests, and adds three new tests that traverse selection-rect-finding codepaths when
16092 speaking selected content. See WebKit and WebCore ChangeLogs for more detail.
16094 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
16095 * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm: Added.
16096 (-[WKWebView rectsAtSelectionOffset:withText:]):
16097 (checkCGRectValueAtIndex):
16098 (TestWebKitAPI::TEST):
16100 2017-08-25 Eric Carlson <eric.carlson@apple.com>
16102 Add Logger::logAlways
16103 https://bugs.webkit.org/show_bug.cgi?id=175996
16105 Reviewed by Jer Noble.
16107 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
16108 (TestWebKitAPI::TEST_F):
16110 2017-08-25 Alex Christensen <achristensen@webkit.org>
16112 Disable saveDataToFile API test.
16113 https://bugs.webkit.org/show_bug.cgi?id=176000
16115 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
16116 The test was only working on High Sierra. It needs investigation on older operating systems.
16118 2017-08-25 Alex Christensen <achristensen@webkit.org>
16120 Rename TestWebKitAPI/Tests/WebKit2* to WebKit* following Source directory rename.
16122 Rubber-stamped by Brady Eidson.
16124 * TestWebKitAPI/PlatformGTK.cmake:
16125 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
16126 * TestWebKitAPI/Tests/WebKit2Cocoa: Removed.
16127 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm: Removed.
16128 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsPlugin.mm: Removed.
16129 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsProtocol.h: Removed.
16130 * TestWebKitAPI/Tests/WebKit2Cocoa/AllAhem.svg: Removed.
16131 * TestWebKitAPI/Tests/WebKit2Cocoa/AlwaysRevalidatedURLSchemes.mm: Removed.
16132 * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm: Removed.
16133 * TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db: Removed.
16134 * TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db-shm: Removed.
16135 * TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db-wal: Removed.
16136 * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm: Removed.
16137 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm: Removed.
16138 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm: Removed.
16139 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegateProtocol.h: Removed.
16140 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParameters.mm: Removed.
16141 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParametersPlugIn.mm: Removed.
16142 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm: Removed.
16143 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandlePlugIn.mm: Removed.
16144 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandleProtocol.h: Removed.
16145 * TestWebKitAPI/Tests/WebKit2Cocoa/CancelFontSubresource.mm: Removed.
16146 * TestWebKitAPI/Tests/WebKit2Cocoa/CancelFontSubresourcePlugIn.mm: Removed.
16147 * TestWebKitAPI/Tests/WebKit2Cocoa/Coding.mm: Removed.
16148 * TestWebKitAPI/Tests/WebKit2Cocoa/CommandBackForward.mm: Removed.
16149 * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.h: Removed.
16150 * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.html: Removed.
16151 * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm: Removed.
16152 * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFilteringPlugIn.mm: Removed.
16153 * TestWebKitAPI/Tests/WebKit2Cocoa/CookieAcceptPolicy.mm: Removed.
16154 * TestWebKitAPI/Tests/WebKit2Cocoa/CookieMessage.html: Removed.
16155 * TestWebKitAPI/Tests/WebKit2Cocoa/Copying.mm: Removed.
16156 * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm: Removed.
16157 * TestWebKitAPI/Tests/WebKit2Cocoa/DecidePolicyForNavigationAction.mm: Removed.
16158 * TestWebKitAPI/Tests/WebKit2Cocoa/DoAfterNextPresentationUpdateAfterCrash.mm: Removed.
16159 * TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm: Removed.
16160 * TestWebKitAPI/Tests/WebKit2Cocoa/DownloadRequestBlobURL.html: Removed.
16161 * TestWebKitAPI/Tests/WebKit2Cocoa/DownloadRequestOriginalURL.html: Removed.
16162 * TestWebKitAPI/Tests/WebKit2Cocoa/DownloadRequestOriginalURL2.html: Removed.
16163 * TestWebKitAPI/Tests/WebKit2Cocoa/DownloadRequestOriginalURLFrame.html: Removed.
16164 * TestWebKitAPI/Tests/WebKit2Cocoa/DuplicateCompletionHandlerCalls.mm: Removed.
16165 * TestWebKitAPI/Tests/WebKit2Cocoa/EditorStateTests.mm: Removed.
16166 * TestWebKitAPI/Tests/WebKit2Cocoa/EmptyGrandfatheredResourceLoadStatistics.plist: Removed.
16167 * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm: Removed.
16168 * TestWebKitAPI/Tests/WebKit2Cocoa/FixedLayoutSize.mm: Removed.
16169 * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenDelegate.html: Removed.
16170 * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenDelegate.mm: Removed.
16171 * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.html: Removed.
16172 * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.mm: Removed.
16173 * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenTopContentInset.html: Removed.
16174 * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenTopContentInset.mm: Removed.
16175 * TestWebKitAPI/Tests/WebKit2Cocoa/Geolocation.mm: Removed.
16176 * TestWebKitAPI/Tests/WebKit2Cocoa/GeolocationGetCurrentPositionResult.html: Removed.
16177 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBDeleteRecovery.html: Removed.
16178 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBDeleteRecovery.mm: Removed.
16179 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBDeleteRecovery.sqlite3: Removed.
16180 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBDeleteRecovery.sqlite3-shm: Removed.
16181 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBDeleteRecovery.sqlite3-wal: Removed.
16182 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.html: Removed.
16183 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.mm: Removed.
16184 * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm: Removed.
16185 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexUpgrade.blob: Removed.
16186 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexUpgrade.sqlite3: Removed.
16187 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBDatabaseProcessKill-1.html: Removed.
16188 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBDatabaseProcessKill.mm: Removed.
16189 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess-1.html: Removed.
16190 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess-2.html: Removed.
16191 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess-3.html: Removed.
16192 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm: Removed.
16193 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBPersistence-1.html: Removed.
16194 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBPersistence-2.html: Removed.
16195 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBPersistence.mm: Removed.
16196 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.mm: Removed.
16197 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3: Removed.
16198 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm: Removed.
16199 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal: Removed.
16200 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibilityRead.html: Removed.
16201 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibilityWrite.html: Removed.
16202 * TestWebKitAPI/Tests/WebKit2Cocoa/InitialWarmedProcessUsed.mm: Removed.
16203 * TestWebKitAPI/Tests/WebKit2Cocoa/InteractionDeadlockAfterCrash.mm: Removed.
16204 * TestWebKitAPI/Tests/WebKit2Cocoa/LineBreaking.html: Removed.
16205 * TestWebKitAPI/Tests/WebKit2Cocoa/LoadAlternateHTMLString.mm: Removed.
16206 * TestWebKitAPI/Tests/WebKit2Cocoa/LoadDataWithNilMIMEType.mm: Removed.
16207 * TestWebKitAPI/Tests/WebKit2Cocoa/LoadInvalidURLRequest.mm: Removed.
16208 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.html: Removed.
16209 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm: Removed.
16210 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageNullEntries.html: Removed.
16211 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageNullEntries.localstorage: Removed.
16212 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageNullEntries.localstorage-shm: Removed.
16213 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageNullEntries.mm: Removed.
16214 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageQuirkEnabled.html: Removed.
16215 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageQuirkTest.mm: Removed.
16216 * TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm: Removed.
16217 * TestWebKitAPI/Tests/WebKit2Cocoa/NSFileManagerExtras.mm: Removed.
16218 * TestWebKitAPI/Tests/WebKit2Cocoa/Navigation.mm: Removed.
16219 * TestWebKitAPI/Tests/WebKit2Cocoa/NowPlayingControlsTests.mm: Removed.
16220 * TestWebKitAPI/Tests/WebKit2Cocoa/ObservedRenderingProgressEventsAfterCrash.mm: Removed.
16221 * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm: Removed.
16222 * TestWebKitAPI/Tests/WebKit2Cocoa/OverrideContentSecurityPolicy.mm: Removed.
16223 * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html: Removed.
16224 * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm: Removed.
16225 * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm: Removed.
16226 * TestWebKitAPI/Tests/WebKit2Cocoa/Preferences.mm: Removed.
16227 * TestWebKitAPI/Tests/WebKit2Cocoa/PrepareForMoveToWindow.mm: Removed.
16228 * TestWebKitAPI/Tests/WebKit2Cocoa/ProvisionalURLNotChange.mm: Removed.
16229 * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm: Removed.
16230 * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.h: Removed.
16231 * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm: Removed.
16232 * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistryPlugIn.mm: Removed.
16233 * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm: Removed.
16234 * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsPlugIn.mm: Removed.
16235 * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsProtocol.h: Removed.
16236 * TestWebKitAPI/Tests/WebKit2Cocoa/RequiresUserActionForPlayback.mm: Removed.
16237 * TestWebKitAPI/Tests/WebKit2Cocoa/ResourceLoadStatistics.mm: Removed.
16238 * TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Removed.
16239 * TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm: Removed.
16240 * TestWebKitAPI/Tests/WebKit2Cocoa/ShrinkToFit.mm: Removed.
16241 * TestWebKitAPI/Tests/WebKit2Cocoa/SnapshotStore.mm: Removed.
16242 * TestWebKitAPI/Tests/WebKit2Cocoa/StoreBlobThenDelete.mm: Removed.
16243 * TestWebKitAPI/Tests/WebKit2Cocoa/StoreBlobToBeDeleted.html: Removed.
16244 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm: Removed.
16245 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm: Removed.
16246 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorld.mm: Removed.
16247 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorldPlugIn.mm: Removed.
16248 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorldProtocol.h: Removed.
16249 * TestWebKitAPI/Tests/WebKit2Cocoa/UserInitiatedActionInNavigationAction.mm: Removed.
16250 * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Removed.
16251 * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm: Removed.
16252 * TestWebKitAPI/Tests/WebKit2Cocoa/VisibleContentRect.mm: Removed.
16253 * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm: Removed.
16254 * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentViewEditingActions.mm: Removed.
16255 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm: Removed.
16256 * TestWebKitAPI/Tests/WebKit2Cocoa/WKNSNumber.mm: Removed.
16257 * TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm: Removed.
16258 * TestWebKitAPI/Tests/WebKit2Cocoa/WKPDFView.mm: Removed.
16259 * TestWebKitAPI/Tests/WebKit2Cocoa/WKPDFViewResizeCrash.mm: Removed.
16260 * TestWebKitAPI/Tests/WebKit2Cocoa/WKPDFViewStablePresentationUpdateCallback.mm: Removed.
16261 * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm: Removed.
16262 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm: Removed.
16263 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-leaks.mm: Removed.
16264 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewCandidateTests.mm: Removed.
16265 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewDefaultNavigationDelegate.mm: Removed.
16266 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewDiagnosticLogging.mm: Removed.
16267 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewDoesNotLogDuringInitialization.mm: Removed.
16268 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm: Removed.
16269 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewGetContents.mm: Removed.
16270 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm: Removed.
16271 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewTextInput.mm: Removed.
16272 * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup-1.html: Removed.
16273 * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup-2.html: Removed.
16274 * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm: Removed.
16275 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.html: Removed.
16276 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm: Removed.
16277 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm: Removed.
16278 * TestWebKitAPI/Tests/WebKit2Cocoa/_WKUserContentExtensionStore.mm: Removed.
16279 * TestWebKitAPI/Tests/WebKit2Cocoa/apple.gif: Removed.
16280 * TestWebKitAPI/Tests/WebKit2Cocoa/attachment-element.html: Removed.
16281 * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Removed.
16282 * TestWebKitAPI/Tests/WebKit2Cocoa/autofocused-text-input.html: Removed.
16283 * TestWebKitAPI/Tests/WebKit2Cocoa/autoplaying-video-with-audio.html: Removed.
16284 * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Removed.
16285 * TestWebKitAPI/Tests/WebKit2Cocoa/blinking-div.html: Removed.
16286 * TestWebKitAPI/Tests/WebKit2Cocoa/change-video-source-on-click.html: Removed.
16287 * TestWebKitAPI/Tests/WebKit2Cocoa/change-video-source-on-end.html: Removed.
16288 * TestWebKitAPI/Tests/WebKit2Cocoa/compressed-files.zip: Removed.
16289 * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-target.html: Removed.
16290 * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-textarea.html: Removed.
16291 * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-in-iframe.html: Removed.
16292 * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Removed.
16293 * TestWebKitAPI/Tests/WebKit2Cocoa/div-and-large-image.html: Removed.
16294 * TestWebKitAPI/Tests/WebKit2Cocoa/double-click-does-not-select-trailing-space.html: Removed.
16295 * TestWebKitAPI/Tests/WebKit2Cocoa/dragstart-change-selection-offscreen.html: Removed.
16296 * TestWebKitAPI/Tests/WebKit2Cocoa/dragstart-clear-selection.html: Removed.
16297 * TestWebKitAPI/Tests/WebKit2Cocoa/duplicate-completion-handler-calls.html: Removed.
16298 * TestWebKitAPI/Tests/WebKit2Cocoa/editable-body.html: Removed.
16299 * TestWebKitAPI/Tests/WebKit2Cocoa/editor-state-test-harness.html: Removed.
16300 * TestWebKitAPI/Tests/WebKit2Cocoa/enormous-video-with-sound.html: Removed.
16301 * TestWebKitAPI/Tests/WebKit2Cocoa/enormous.svg: Removed.
16302 * TestWebKitAPI/Tests/WebKit2Cocoa/file-uploading.html: Removed.
16303 * TestWebKitAPI/Tests/WebKit2Cocoa/focus-inputs.html: Removed.
16304 * TestWebKitAPI/Tests/WebKit2Cocoa/full-size-autoplaying-video-with-audio.html: Removed.
16305 * TestWebKitAPI/Tests/WebKit2Cocoa/gif-and-file-input.html: Removed.
16306 * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Removed.
16307 * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Removed.
16308 * TestWebKitAPI/Tests/WebKit2Cocoa/image-in-link-and-input.html: Removed.
16309 * TestWebKitAPI/Tests/WebKit2Cocoa/image-map.html: Removed.
16310 * TestWebKitAPI/Tests/WebKit2Cocoa/input-field-in-scrollable-document.html: Removed.
16311 * TestWebKitAPI/Tests/WebKit2Cocoa/large-input-field-focus-onload.html: Removed.
16312 * TestWebKitAPI/Tests/WebKit2Cocoa/large-red-square.png: Removed.
16313 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-hides-controls-after-seek-to-end.html: Removed.
16314 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-mutes-onplaying.html: Removed.
16315 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-offscreen.html: Removed.
16316 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-playing-scroll-away.html: Removed.
16317 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-seek-after-ending.html: Removed.
16318 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-seek-to-beginning-and-play-after-ending.html: Removed.
16319 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-test-now-playing.html: Removed.
16320 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-with-audio.html: Removed.
16321 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-with-audio.mp4: Removed.
16322 * TestWebKitAPI/Tests/WebKit2Cocoa/large-video-without-audio.html: Removed.
16323 * TestWebKitAPI/Tests/WebKit2Cocoa/large-videos-autoplaying-click-to-pause.html: Removed.
16324 * TestWebKitAPI/Tests/WebKit2Cocoa/large-videos-autoplaying-scroll-to-video.html: Removed.
16325 * TestWebKitAPI/Tests/WebKit2Cocoa/large-videos-paused-video-hides-controls.html: Removed.
16326 * TestWebKitAPI/Tests/WebKit2Cocoa/large-videos-playing-muted-video-hides-controls.html: Removed.
16327 * TestWebKitAPI/Tests/WebKit2Cocoa/large-videos-playing-video-keeps-controls.html: Removed.
16328 * TestWebKitAPI/Tests/WebKit2Cocoa/large-videos-with-audio-autoplay.html: Removed.
16329 * TestWebKitAPI/Tests/WebKit2Cocoa/large-videos-with-audio.html: Removed.
16330 * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Removed.
16331 * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html: Removed.
16332 * TestWebKitAPI/Tests/WebKit2Cocoa/offscreen-iframe-of-media-document.html: Removed.
16333 * TestWebKitAPI/Tests/WebKit2Cocoa/open-multiple-external-url.html: Removed.
16334 * TestWebKitAPI/Tests/WebKit2Cocoa/page-with-csp-iframe.html: Removed.
16335 * TestWebKitAPI/Tests/WebKit2Cocoa/page-with-csp.html: Removed.
16336 * TestWebKitAPI/Tests/WebKit2Cocoa/page-without-csp-iframe.html: Removed.
16337 * TestWebKitAPI/Tests/WebKit2Cocoa/page-without-csp.html: Removed.
16338 * TestWebKitAPI/Tests/WebKit2Cocoa/password-protected.pages: Removed.
16339 * TestWebKitAPI/Tests/WebKit2Cocoa/play-audio-on-click.html: Removed.
16340 * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-operation.html: Removed.
16341 * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-start.html: Removed.
16342 * TestWebKitAPI/Tests/WebKit2Cocoa/rendered-image-excluding-overflow.html: Removed.
16343 * TestWebKitAPI/Tests/WebKit2Cocoa/rich-and-plain-text.html: Removed.
16344 * TestWebKitAPI/Tests/WebKit2Cocoa/silence-long.m4a: Removed.
16345 * TestWebKitAPI/Tests/WebKit2Cocoa/skinny-autoplaying-video-with-audio.html: Removed.
16346 * TestWebKitAPI/Tests/WebKit2Cocoa/text-and-password-inputs.html: Removed.
16347 * TestWebKitAPI/Tests/WebKit2Cocoa/textarea-to-input.html: Removed.
16348 * TestWebKitAPI/Tests/WebKit2Cocoa/two-paragraph-contenteditable.html: Removed.
16349 * TestWebKitAPI/Tests/WebKit2Cocoa/wide-autoplaying-video-with-audio.html: Removed.
16350 * TestWebKitAPI/Tests/WebKit2Gtk: Removed.
16351 * TestWebKitAPI/Tests/WebKit2Gtk/AccessibilityTestServer.cpp: Removed.
16352 * TestWebKitAPI/Tests/WebKit2Gtk/AutocleanupsTest.cpp: Removed.
16353 * TestWebKitAPI/Tests/WebKit2Gtk/DOMClientRectTest.cpp: Removed.
16354 * TestWebKitAPI/Tests/WebKit2Gtk/DOMDOMWindowTest.cpp: Removed.
16355 * TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp: Removed.
16356 * TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp: Removed.
16357 * TestWebKitAPI/Tests/WebKit2Gtk/DOMXPathNSResolverTest.cpp: Removed.
16358 * TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp: Removed.
16359 * TestWebKitAPI/Tests/WebKit2Gtk/InspectorTestServer.cpp: Removed.
16360 * TestWebKitAPI/Tests/WebKit2Gtk/TestAutocleanups.cpp: Removed.
16361 * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp: Removed.
16362 * TestWebKitAPI/Tests/WebKit2Gtk/TestDOMClientRect.cpp: Removed.
16363 * TestWebKitAPI/Tests/WebKit2Gtk/TestDOMDOMWindow.cpp: Removed.
16364 * TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp: Removed.
16365 * TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNodeFilter.cpp: Removed.
16366 * TestWebKitAPI/Tests/WebKit2Gtk/TestDOMXPathNSResolver.cpp: Removed.
16367 * TestWebKitAPI/Tests/WebKit2Gtk/TestEditor.cpp: Removed.
16368 * TestWebKitAPI/Tests/WebKit2Gtk/TestInspector.cpp: Removed.
16369 * TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp: Removed.
16370 * TestWebKitAPI/Tests/WebKit2Gtk/TestOptionMenu.cpp: Removed.
16371 * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: Removed.
16372 * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitAccessibility.cpp: Removed.
16373 * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitVersion.cpp: Removed.
16374 * TestWebKitAPI/Tests/WebKit2Gtk/TestWebViewEditor.cpp: Removed.
16375 * TestWebKitAPI/Tests/WebKit2ObjC: Removed.
16376 * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsInvalidScheme.mm: Removed.
16377 * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsInvalidScheme_Bundle.cpp: Removed.
16378 * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm: Removed.
16379 * TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing.mm: Removed.
16380 * TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing_Bundle.cpp: Removed.
16381 * TestWebKitAPI/Tests/WebKit2ObjC/UserContentTest.mm: Removed.
16382 * TestWebKitAPI/Tests/WebKit2ObjC/WKBrowsingContextGroupTest.mm: Removed.
16383 * TestWebKitAPI/Tests/WebKit2ObjC/WKBrowsingContextLoadDelegateTest.mm: Removed.
16384 * TestWebKitAPI/Tests/WebKitCocoa: Copied from TestWebKitAPI/Tests/WebKit2Cocoa.
16385 * TestWebKitAPI/Tests/WebKitGtk: Copied from TestWebKitAPI/Tests/WebKit2Gtk.
16386 * TestWebKitAPI/Tests/WebKitObjC: Copied from TestWebKitAPI/Tests/WebKit2ObjC.
16387 * TestWebKitAPI/glib/PlatformGTK.cmake:
16389 2017-08-25 Alex Christensen <achristensen@webkit.org>
16391 Rename TestWebKitAPI/Tests/WebKit2 to WebKit following Source directory rename.
16393 Rubber-stamped by Brady Eidson.
16395 * TestWebKitAPI/CMakeLists.txt:
16396 * TestWebKitAPI/PlatformGTK.cmake:
16397 * TestWebKitAPI/PlatformWin.cmake:
16398 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
16399 * TestWebKitAPI/Tests/WebKit: Copied from TestWebKitAPI/Tests/WebKit2.
16400 * TestWebKitAPI/Tests/WebKit2: Removed.
16401 * TestWebKitAPI/Tests/WebKit2/18-characters.html: Removed.
16402 * TestWebKitAPI/Tests/WebKit2/AboutBlankLoad.cpp: Removed.
16403 * TestWebKitAPI/Tests/WebKit2/Ahem.ttf: Removed.
16404 * TestWebKitAPI/Tests/WebKit2/CanHandleRequest.cpp: Removed.
16405 * TestWebKitAPI/Tests/WebKit2/CanHandleRequest_Bundle.cpp: Removed.
16406 * TestWebKitAPI/Tests/WebKit2/CloseFromWithinCreatePage.cpp: Removed.
16407 * TestWebKitAPI/Tests/WebKit2/CloseThenTerminate.cpp: Removed.
16408 * TestWebKitAPI/Tests/WebKit2/CookieManager.cpp: Removed.
16409 * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic.cpp: Removed.
16410 * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp: Removed.
16411 * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache.cpp: Removed.
16412 * TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache_Bundle.cpp: Removed.
16413 * TestWebKitAPI/Tests/WebKit2/DeferredViewInWindowStateChange.mm: Removed.
16414 * TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls.cpp: Removed.
16415 * TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls_Bundle.cpp: Removed.
16416 * TestWebKitAPI/Tests/WebKit2/DidNotHandleKeyDown.cpp: Removed.
16417 * TestWebKitAPI/Tests/WebKit2/DidRemoveFrameFromHiearchyInPageCache.cpp: Removed.
16418 * TestWebKitAPI/Tests/WebKit2/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp: Removed.
16419 * TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp: Removed.
16420 * TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash_Bundle.cpp: Removed.
16421 * TestWebKitAPI/Tests/WebKit2/DownloadDecideDestinationCrash.cpp: Removed.
16422 * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp: Removed.
16423 * TestWebKitAPI/Tests/WebKit2/EnvironmentUtilitiesTest.cpp: Removed.
16424 * TestWebKitAPI/Tests/WebKit2/EphemeralSessionPushStateNoHistoryCallback.cpp: Removed.
16425 * TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp: Removed.
16426 * TestWebKitAPI/Tests/WebKit2/EventModifiers.cpp: Removed.
16427 * TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp: Removed.
16428 * TestWebKitAPI/Tests/WebKit2/Find.cpp: Removed.
16429 * TestWebKitAPI/Tests/WebKit2/FindMatches.mm: Removed.
16430 * TestWebKitAPI/Tests/WebKit2/ForceRepaint.cpp: Removed.
16431 * TestWebKitAPI/Tests/WebKit2/FrameHandle.cpp: Removed.
16432 * TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp: Removed.
16433 * TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp: Removed.
16434 * TestWebKitAPI/Tests/WebKit2/Geolocation.cpp: Removed.
16435 * TestWebKitAPI/Tests/WebKit2/GetInjectedBundleInitializationUserDataCallback.cpp: Removed.
16436 * TestWebKitAPI/Tests/WebKit2/GetInjectedBundleInitializationUserDataCallback_Bundle.cpp: Removed.
16437 * TestWebKitAPI/Tests/WebKit2/GetUserMediaNavigation.mm: Removed.
16438 * TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle.cpp: Removed.
16439 * TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle_Bundle.cpp: Removed.
16440 * TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp: Removed.
16441 * TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic_Bundle.cpp: Removed.
16442 * TestWebKitAPI/Tests/WebKit2/InjectedBundleFrameHitTest.cpp: Removed.
16443 * TestWebKitAPI/Tests/WebKit2/InjectedBundleFrameHitTest_Bundle.cpp: Removed.
16444 * TestWebKitAPI/Tests/WebKit2/InjectedBundleInitializationUserDataCallbackWins.cpp: Removed.
16445 * TestWebKitAPI/Tests/WebKit2/InjectedBundleInitializationUserDataCallbackWins_Bundle.cpp: Removed.
16446 * TestWebKitAPI/Tests/WebKit2/InjectedBundleMakeAllShadowRootsOpen.cpp: Removed.
16447 * TestWebKitAPI/Tests/WebKit2/InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp: Removed.
16448 * TestWebKitAPI/Tests/WebKit2/LayoutMilestonesWithAllContentInFrame.cpp: Removed.
16449 * TestWebKitAPI/Tests/WebKit2/LimitTitleSize.cpp: Removed.
16450 * TestWebKitAPI/Tests/WebKit2/LoadAlternateHTMLStringWithNonDirectoryURL.cpp: Removed.
16451 * TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback.cpp: Removed.
16452 * TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback_Bundle.cpp: Removed.
16453 * TestWebKitAPI/Tests/WebKit2/LoadPageOnCrash.cpp: Removed.
16454 * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Removed.
16455 * TestWebKitAPI/Tests/WebKit2/MenuTypesForMouseEvents.cpp: Removed.
16456 * TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp: Removed.
16457 * TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash.cpp: Removed.
16458 * TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash_Bundle.cpp: Removed.
16459 * TestWebKitAPI/Tests/WebKit2/NavigationClientDefaultCrypto.cpp: Removed.
16460 * TestWebKitAPI/Tests/WebKit2/NetworkProcessCrashWithPendingConnection.mm: Removed.
16461 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout.cpp: Removed.
16462 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFails.cpp: Removed.
16463 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFails_Bundle.cpp: Removed.
16464 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutForImages.cpp: Removed.
16465 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutForImages_Bundle.cpp: Removed.
16466 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames.cpp: Removed.
16467 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames_Bundle.cpp: Removed.
16468 * TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout_Bundle.cpp: Removed.
16469 * TestWebKitAPI/Tests/WebKit2/PageGroup.cpp: Removed.
16470 * TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp: Removed.
16471 * TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp: Removed.
16472 * TestWebKitAPI/Tests/WebKit2/ParentFrame.cpp: Removed.
16473 * TestWebKitAPI/Tests/WebKit2/ParentFrame_Bundle.cpp: Removed.
16474 * TestWebKitAPI/Tests/WebKit2/PasteboardNotifications.mm: Removed.
16475 * TestWebKitAPI/Tests/WebKit2/PasteboardNotifications_Bundle.cpp: Removed.
16476 * TestWebKitAPI/Tests/WebKit2/PendingAPIRequestURL.cpp: Removed.
16477 * TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp: Removed.
16478 * TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.cpp: Removed.
16479 * TestWebKitAPI/Tests/WebKit2/ProcessDidTerminate.cpp: Removed.
16480 * TestWebKitAPI/Tests/WebKit2/ProvisionalURLAfterWillSendRequestCallback.cpp: Removed.
16481 * TestWebKitAPI/Tests/WebKit2/ProvisionalURLAfterWillSendRequestCallback_Bundle.cpp: Removed.
16482 * TestWebKitAPI/Tests/WebKit2/ReloadPageAfterCrash.cpp: Removed.
16483 * TestWebKitAPI/Tests/WebKit2/ResizeReversePaginatedWebView.cpp: Removed.
16484 * TestWebKitAPI/Tests/WebKit2/ResizeWindowAfterCrash.cpp: Removed.
16485 * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp: Removed.
16486 * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimerDoesntFireEarly.cpp: Removed.
16487 * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimerDoesntFireEarly_Bundle.cpp: Removed.
16488 * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Removed.
16489 * TestWebKitAPI/Tests/WebKit2/RestoreSessionStateContainingFormData.cpp: Removed.
16490 * TestWebKitAPI/Tests/WebKit2/RestoreSessionStateWithoutNavigation.cpp: Removed.
16491 * TestWebKitAPI/Tests/WebKit2/ScrollPinningBehaviors.cpp: Removed.
16492 * TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem.cpp: Removed.
16493 * TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem_Bundle.cpp: Removed.
16494 * TestWebKitAPI/Tests/WebKit2/ShouldKeepCurrentBackForwardListItemInList.cpp: Removed.
16495 * TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp: Removed.
16496 * TestWebKitAPI/Tests/WebKit2/StopLoadingDuringDidFailProvisionalLoad.cpp: Removed.
16497 * TestWebKitAPI/Tests/WebKit2/StopLoadingDuringDidFailProvisionalLoad_bundle.cpp: Removed.
16498 * TestWebKitAPI/Tests/WebKit2/TerminateTwice.cpp: Removed.
16499 * TestWebKitAPI/Tests/WebKit2/TextFieldDidBeginAndEndEditing.cpp: Removed.
16500 * TestWebKitAPI/Tests/WebKit2/TextFieldDidBeginAndEndEditing_Bundle.cpp: Removed.
16501 * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp: Removed.
16502 * TestWebKitAPI/Tests/WebKit2/UserMessage.cpp: Removed.
16503 * TestWebKitAPI/Tests/WebKit2/UserMessage_Bundle.cpp: Removed.
16504 * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Removed.
16505 * TestWebKitAPI/Tests/WebKit2/WKBackForwardList.mm: Removed.
16506 * TestWebKitAPI/Tests/WebKit2/WKBundleFileHandle.cpp: Removed.
16507 * TestWebKitAPI/Tests/WebKit2/WKBundleFileHandle_Bundle.cpp: Removed.
16508 * TestWebKitAPI/Tests/WebKit2/WKImageCreateCGImageCrash.cpp: Removed.
16509 * TestWebKitAPI/Tests/WebKit2/WKPageConfiguration.cpp: Removed.
16510 * TestWebKitAPI/Tests/WebKit2/WKPageCopySessionStateWithFiltering.cpp: Removed.
16511 * TestWebKitAPI/Tests/WebKit2/WKPageGetScaleFactorNotZero.cpp: Removed.
16512 * TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp: Removed.
16513 * TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp: Removed.
16514 * TestWebKitAPI/Tests/WebKit2/WKRetainPtr.cpp: Removed.
16515 * TestWebKitAPI/Tests/WebKit2/WKString.cpp: Removed.
16516 * TestWebKitAPI/Tests/WebKit2/WKStringJSString.cpp: Removed.
16517 * TestWebKitAPI/Tests/WebKit2/WKThumbnailView.mm: Removed.
16518 * TestWebKitAPI/Tests/WebKit2/WKURL.cpp: Removed.
16519 * TestWebKitAPI/Tests/WebKit2/WebArchive.cpp: Removed.
16520 * TestWebKitAPI/Tests/WebKit2/WebArchive_Bundle.cpp: Removed.
16521 * TestWebKitAPI/Tests/WebKit2/WebCoreStatisticsWithNoWebProcess.cpp: Removed.
16522 * TestWebKitAPI/Tests/WebKit2/WillLoad.cpp: Removed.
16523 * TestWebKitAPI/Tests/WebKit2/WillLoad_Bundle.cpp: Removed.
16524 * TestWebKitAPI/Tests/WebKit2/WillSendSubmitEvent.cpp: Removed.
16525 * TestWebKitAPI/Tests/WebKit2/WillSendSubmitEvent_Bundle.cpp: Removed.
16526 * TestWebKitAPI/Tests/WebKit2/all-content-in-one-iframe.html: Removed.
16527 * TestWebKitAPI/Tests/WebKit2/associate-form-controls.html: Removed.
16528 * TestWebKitAPI/Tests/WebKit2/auto-submitting-form.html: Removed.
16529 * TestWebKitAPI/Tests/WebKit2/autoplay-check-frame.html: Removed.
16530 * TestWebKitAPI/Tests/WebKit2/autoplay-check-in-iframe.html: Removed.
16531 * TestWebKitAPI/Tests/WebKit2/autoplay-check.html: Removed.
16532 * TestWebKitAPI/Tests/WebKit2/autoplay-inherits-gesture-from-document.html: Removed.
16533 * TestWebKitAPI/Tests/WebKit2/autoplay-muted-with-controls.html: Removed.
16534 * TestWebKitAPI/Tests/WebKit2/autoplay-no-audio-check.html: Removed.
16535 * TestWebKitAPI/Tests/WebKit2/autoplay-with-controls.html: Removed.
16536 * TestWebKitAPI/Tests/WebKit2/autoplay-zero-volume-check.html: Removed.
16537 * TestWebKitAPI/Tests/WebKit2/bundle-file.html: Removed.
16538 * TestWebKitAPI/Tests/WebKit2/chinese-character-with-image.html: Removed.
16539 * TestWebKitAPI/Tests/WebKit2/close-from-within-create-page.html: Removed.
16540 * TestWebKitAPI/Tests/WebKit2/closed-shadow-tree-test.html: Removed.
16541 * TestWebKitAPI/Tests/WebKit2/cocoa: Removed.
16542 * TestWebKitAPI/Tests/WebKit2/cocoa/WeakObjCPtr.mm: Removed.
16543 * TestWebKitAPI/Tests/WebKit2/contentBlockerCheck.html: Removed.
16544 * TestWebKitAPI/Tests/WebKit2/custom-protocol-sync-xhr.html: Removed.
16545 * TestWebKitAPI/Tests/WebKit2/encrypted.pdf: Removed.
16546 * TestWebKitAPI/Tests/WebKit2/enumerateMediaDevices.html: Removed.
16547 * TestWebKitAPI/Tests/WebKit2/execCopy.html: Removed.
16548 * TestWebKitAPI/Tests/WebKit2/file-with-anchor.html: Removed.
16549 * TestWebKitAPI/Tests/WebKit2/file-with-mse.html: Removed.
16550 * TestWebKitAPI/Tests/WebKit2/file-with-video.html: Removed.
16551 * TestWebKitAPI/Tests/WebKit2/find.html: Removed.
16552 * TestWebKitAPI/Tests/WebKit2/findRanges.html: Removed.
16553 * TestWebKitAPI/Tests/WebKit2/geolocationGetCurrentPosition.html: Removed.
16554 * TestWebKitAPI/Tests/WebKit2/geolocationGetCurrentPositionWithHighAccuracy.html: Removed.
16555 * TestWebKitAPI/Tests/WebKit2/geolocationWatchPosition.html: Removed.
16556 * TestWebKitAPI/Tests/WebKit2/geolocationWatchPositionWithHighAccuracy.html: Removed.
16557 * TestWebKitAPI/Tests/WebKit2/getUserMedia.html: Removed.
16558 * TestWebKitAPI/Tests/WebKit2/gtk: Removed.
16559 * TestWebKitAPI/Tests/WebKit2/gtk/InputMethodFilter.cpp: Removed.
16560 * TestWebKitAPI/Tests/WebKit2/icon.png: Removed.
16561 * TestWebKitAPI/Tests/WebKit2/input-focus-blur.html: Removed.
16562 * TestWebKitAPI/Tests/WebKit2/js-autoplay-audio.html: Removed.
16563 * TestWebKitAPI/Tests/WebKit2/js-play-with-controls.html: Removed.
16564 * TestWebKitAPI/Tests/WebKit2/large-red-square-image.html: Removed.
16565 * TestWebKitAPI/Tests/WebKit2/link-with-download-attribute-with-slashes.html: Removed.
16566 * TestWebKitAPI/Tests/WebKit2/link-with-download-attribute.html: Removed.
16567 * TestWebKitAPI/Tests/WebKit2/link-with-title.html: Removed.
16568 * TestWebKitAPI/Tests/WebKit2/lots-of-iframes.html: Removed.
16569 * TestWebKitAPI/Tests/WebKit2/lots-of-images.html: Removed.
16570 * TestWebKitAPI/Tests/WebKit2/lots-of-text-vertical-lr.html: Removed.
16571 * TestWebKitAPI/Tests/WebKit2/lots-of-text.html: Removed.
16572 * TestWebKitAPI/Tests/WebKit2/mac: Removed.
16573 * TestWebKitAPI/Tests/WebKit2/mac/AttributedSubstringForProposedRangeWithImage.mm: Removed.
16574 * TestWebKitAPI/Tests/WebKit2/mac/ContextMenuDownload.mm: Removed.
16575 * TestWebKitAPI/Tests/WebKit2/mac/EditorCommands.mm: Removed.
16576 * TestWebKitAPI/Tests/WebKit2/mac/GetBackingScaleFactor.mm: Removed.
16577 * TestWebKitAPI/Tests/WebKit2/mac/GetBackingScaleFactor_Bundle.mm: Removed.
16578 * TestWebKitAPI/Tests/WebKit2/mac/GetPIDAfterAbortedProcessLaunch.cpp: Removed.
16579 * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent.cpp: Removed.
16580 * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent_Bundle.cpp: Removed.
16581 * TestWebKitAPI/Tests/WebKit2/mac/RestoreStateAfterTermination.mm: Removed.
16582 * TestWebKitAPI/Tests/WebKit2/many-iframes.html: Removed.
16583 * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Removed.
16584 * TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html: Removed.
16585 * TestWebKitAPI/Tests/WebKit2/mouse-button-listener.html: Removed.
16586 * TestWebKitAPI/Tests/WebKit2/mouse-move-listener.html: Removed.
16587 * TestWebKitAPI/Tests/WebKit2/navigation-client-default-crypto.html: Removed.
16588 * TestWebKitAPI/Tests/WebKit2/no-autoplay-with-controls.html: Removed.
16589 * TestWebKitAPI/Tests/WebKit2/open-and-close-window.html: Removed.
16590 * TestWebKitAPI/Tests/WebKit2/push-state.html: Removed.
16591 * TestWebKitAPI/Tests/WebKit2/set-long-title.html: Removed.
16592 * TestWebKitAPI/Tests/WebKit2/should-open-external-schemes.html: Removed.
16593 * TestWebKitAPI/Tests/WebKit2/simple-accelerated-compositing.html: Removed.
16594 * TestWebKitAPI/Tests/WebKit2/simple-form.html: Removed.
16595 * TestWebKitAPI/Tests/WebKit2/simple-iframe.html: Removed.
16596 * TestWebKitAPI/Tests/WebKit2/simple-tall.html: Removed.
16597 * TestWebKitAPI/Tests/WebKit2/simple.html: Removed.
16598 * TestWebKitAPI/Tests/WebKit2/simple2.html: Removed.
16599 * TestWebKitAPI/Tests/WebKit2/simple3.html: Removed.
16600 * TestWebKitAPI/Tests/WebKit2/spacebar-scrolling.html: Removed.
16601 * TestWebKitAPI/Tests/WebKit2/test-mse.mp4: Removed.
16602 * TestWebKitAPI/Tests/WebKit2/test-without-audio-track.mp4: Removed.
16603 * TestWebKitAPI/Tests/WebKit2/test.mp4: Removed.
16604 * TestWebKitAPI/Tests/WebKit2/test.pdf: Removed.
16605 * TestWebKitAPI/Tests/WebKit2/webfont.html: Removed.
16607 2017-08-25 Alex Christensen <achristensen@webkit.org>
16609 Rename TestWebKitAPI/Tests/WebKit to WebKitLegacy following Source directory rename.
16611 Rubber-stamped by Brady Eidson.
16613 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
16614 * TestWebKitAPI/Tests/WebKit: Removed.
16615 * TestWebKitAPI/Tests/WebKit/ios: Removed.
16616 * TestWebKitAPI/Tests/WebKit/ios/AudioSessionCategoryIOS.mm: Removed.
16617 * TestWebKitAPI/Tests/WebKit/ios/SnapshotViaRenderInContext.mm: Removed.
16618 * TestWebKitAPI/Tests/WebKit/ios/audio-only.html: Removed.
16619 * TestWebKitAPI/Tests/WebKit/ios/video-with-audio.html: Removed.
16620 * TestWebKitAPI/Tests/WebKit/ios/video-with-audio.mp4: Removed.
16621 * TestWebKitAPI/Tests/WebKit/ios/video-with-muted-audio-and-webaudio.html: Removed.
16622 * TestWebKitAPI/Tests/WebKit/ios/video-with-muted-audio.html: Removed.
16623 * TestWebKitAPI/Tests/WebKit/ios/video-without-audio.html: Removed.
16624 * TestWebKitAPI/Tests/WebKit/ios/video-without-audio.mp4: Removed.
16625 * TestWebKitAPI/Tests/WebKit/win: Removed.
16626 * TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp: Removed.
16627 * TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp: Removed.
16628 * TestWebKitAPI/Tests/WebKitLegacy: Copied from TestWebKitAPI/Tests/WebKit.
16630 2017-08-25 Alex Christensen <achristensen@webkit.org>
16632 Add WKUIDelegatePrivate equivalent of WKPageUIClient's saveDataToFileInDownloadsFolder
16633 https://bugs.webkit.org/show_bug.cgi?id=176000
16634 <rdar://problem/29270035>
16636 Reviewed by Andy Estes.
16638 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm:
16639 (-[FocusDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
16641 (-[SaveDataToFileDelegate _webView:saveDataToFile:suggestedFilename:mimeType:originatingURL:]):
16642 (-[SaveDataToFileDelegate webView:didFinishNavigation:]):
16644 2017-08-25 Youenn Fablet <youenn@apple.com>
16646 WPT server should not need to copy test harness files
16647 https://bugs.webkit.org/show_bug.cgi?id=175938
16649 Reviewed by Alexey Proskuryakov.
16651 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
16652 (WebPlatformTestServer.__init__): Stopping explicit resource files copy when launching the WPT server.
16653 Use aliases instead.
16655 2017-08-25 Eric Carlson <eric.carlson@apple.com>
16657 Add String::format variant that takes va_args
16658 https://bugs.webkit.org/show_bug.cgi?id=175988
16660 Reviewed by Jer Noble.
16662 * TestWebKitAPI/Tests/WTF/WTFString.cpp:
16663 (TestWebKitAPI::testWithFormatAndArguments):
16664 (TestWebKitAPI::TEST):
16666 2017-08-25 Jonathan Bedard <jbedard@apple.com>
16668 Follow-up Internal build fix for r221187
16669 https://bugs.webkit.org/show_bug.cgi?id=175960
16670 <rdar://problem/34069264>
16672 Unreviewed build fix.
16674 * TestWebKitAPI/ios/DataInteractionSimulator.h: Move UIItemProvider declaration
16677 2017-08-25 Don Olmstead <don.olmstead@sony.com>
16679 [WinCairo] Use GitHub releases for WinCairoRequirements
16680 https://bugs.webkit.org/show_bug.cgi?id=175972
16682 Reviewed by Brent Fulgham.
16684 * Scripts/build-webkit:
16685 (cMakeArgsFromFeatures): Deleted.
16686 (writeCongrats): Deleted.
16687 * Scripts/download-latest-github-release.py:
16691 * Scripts/update-webkit-wincairo-libs.py: Renamed from Tools/Scripts/update-webkit-wincairo-libs.
16693 2017-08-25 Jonathan Bedard <jbedard@apple.com>
16695 Fix build breakage with Public iOS 11 SDK
16696 https://bugs.webkit.org/show_bug.cgi?id=175960
16697 <rdar://problem/34069264>
16699 Reviewed by Wenson Hsieh.
16701 * TestWebKitAPI/ios/DataInteractionSimulator.h: Add UIItemProvider declaration.
16703 2017-08-24 Chris Dumez <cdumez@apple.com>
16705 [Directory Upload] Add basic support for input.webkitdirectory
16706 https://bugs.webkit.org/show_bug.cgi?id=175950
16707 <rdar://problem/33951915>
16709 Reviewed by Geoffrey Garen.
16711 * DumpRenderTree/mac/DumpRenderTree.mm:
16712 (resetWebPreferencesToConsistentValues):
16713 * WebKitTestRunner/TestController.cpp:
16714 (WTR::TestController::resetPreferencesToConsistentValues):
16715 Enable Directory Upload feature for testing, given that it is currently disabled by default.
16717 (WTR::runOpenPanel):
16718 Print additional text when directories are allowed to extend testing coverage.
16720 2017-08-24 Alex Christensen <achristensen@webkit.org>
16722 Add WKUIDelegatePrivate equivalent of WKPageUIClient's handleAutoplayEvent
16723 https://bugs.webkit.org/show_bug.cgi?id=175965
16724 <rdar://problem/29270035>
16726 Reviewed by Tim Horton.
16728 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm:
16730 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
16731 (-[AutoplayPoliciesDelegate _webView:handleAutoplayEvent:withFlags:]):
16733 (handleAutoplayEvent): Deleted.
16735 2017-08-24 Alex Christensen <achristensen@webkit.org>
16737 didNotHandleWheelEvent test times out
16738 https://bugs.webkit.org/show_bug.cgi?id=175967
16740 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm:
16741 Skip the test until WebCore's wheel event handling is reliable enough to test.
16743 2017-08-24 Jonathan Bedard <jbedard@apple.com>
16745 Update configure-xcode-for-ios-development for iOS 11
16746 https://bugs.webkit.org/show_bug.cgi?id=173937
16747 <rdar://problem/33038924>
16749 Reviewed by Daniel Bates.
16751 Xcode 9 has removed the following headers from the iOS 11 Simulator SDK:
16752 /usr/include/crt_externs.h
16753 /usr/include/mach/mach_types.defs
16754 /usr/include/mach/machine/machine_types.defs
16755 /usr/include/mach/std_types.defs
16756 /usr/include/objc/objc-class.h
16757 /usr/include/objc/objc-runtime.h
16758 /usr/include/objc/Protocol.h
16759 /usr/include/readline/history.h
16760 /usr/include/readline/readline.h
16761 To solve this problem, configure-xcode-for-ios-development copies these headers
16762 from the active macOS SDK into the iOS Simulator SDK.
16764 * Scripts/configure-xcode-for-ios-development:
16765 (copyMissingHeadersFromSDKToSDKIfNeeded): Copy all missing header from one SDK
16766 into another if those headers do not exist in the destination SDK.
16767 (copyMissingHeadersToIPhoneOSSDKIfNeeded): Deleted.
16769 2017-08-24 Alex Christensen <achristensen@webkit.org>
16771 Add WKUIDelegatePrivate callback corresponding to PageUIClient's didNotHandleWheelEvent
16772 https://bugs.webkit.org/show_bug.cgi?id=175957
16773 <rdar://problem/29270035>
16775 Reviewed by Geoffrey Garen.
16777 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm:
16778 (synthesizeWheelEvents):
16779 (-[WheelDelegate _webView:didNotHandleWheelEvent:]):
16780 (-[WheelDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
16783 2017-08-24 Tim Horton <timothy_horton@apple.com>
16785 Layout size override changes during in-flight animated resize are dropped on the floor forever
16786 https://bugs.webkit.org/show_bug.cgi?id=175916
16787 <rdar://problem/33887295>
16789 Reviewed by Beth Dakin.
16791 * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
16793 Add a test ensuring that override layout size changes
16794 during an animated resize actually take effect.
16796 2017-08-23 Matt Lewis <jlewis3@apple.com>
16798 Disabled VideoControlsManagerMultipleVideosSwitchControlledVideoWhenScrolling.
16799 https://bugs.webkit.org/show_bug.cgi?id=175909
16801 Unreviewed test gardening.
16803 * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
16804 (TestWebKitAPI::TEST):
16806 2017-08-24 Don Olmstead <don.olmstead@sony.com>
16808 [CMake] Use find_package for SQLite
16809 https://bugs.webkit.org/show_bug.cgi?id=175803
16811 Reviewed by Konstantin Tokarev.
16813 * TestWebKitAPI/PlatformWin.cmake:
16815 2017-08-23 Jonathan Bedard <jbedard@apple.com>
16817 Leaking CARenderServerBuffer in PlatformWebView::windowSnapshotImage()
16818 https://bugs.webkit.org/show_bug.cgi?id=175905
16820 Reviewed by Tim Horton.
16822 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
16823 (WTR::PlatformWebView::windowSnapshotImage): Pass CARenderServerBuffer to CGDataProviderCreateWithData
16824 so that the buffer can be destroyed.
16826 2017-08-23 Alex Christensen <achristensen@webkit.org>
16828 Add WKUIDelegatePrivate callbacks corresponding to WKPageUIClient's takeFocus, focus, and unfocus
16829 https://bugs.webkit.org/show_bug.cgi?id=175896
16831 Reviewed by Tim Horton.
16833 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm:
16834 (-[UITestDelegate _showWebView:]):
16838 (-[FocusDelegate _webView:takeFocus:]):
16839 (-[FocusDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
16840 (-[UITestDelegate _webViewShow:]): Deleted.
16842 2017-08-23 Eric Carlson <eric.carlson@apple.com>
16844 Platform code should be able to safely log in release builds
16845 https://bugs.webkit.org/show_bug.cgi?id=175854
16846 <rdar://problem/34022930>
16848 Reviewed by Jer Noble.
16850 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
16851 (TestWebKitAPI::TEST_F):
16853 2017-08-23 Jonathan Bedard <jbedard@apple.com>
16855 Access expectations path through apple_additions
16856 https://bugs.webkit.org/show_bug.cgi?id=174800
16857 <rdar://problem/33498899>
16859 Unreviewed follow-up fix for r221087.
16861 * Scripts/webkitpy/port/ios.py:
16862 (IOSPort._apple_additions_path): Use iOS mapping instead of Mac mapping.
16864 2017-08-23 Jonathan Bedard <jbedard@apple.com>
16866 Access expectations path through apple_additions
16867 https://bugs.webkit.org/show_bug.cgi?id=174800
16868 <rdar://problem/33498899>
16870 Reviewed by David Kilzer.
16872 Follow-up fix. Mapping of operating system names was done incorrectly.
16874 * Scripts/webkitpy/port/ios.py:
16875 (IOSPort._apple_additions_path): Correctly find the operating system to be replaced.
16876 * Scripts/webkitpy/port/ios_device_unittest.py:
16877 (IOSDeviceTest.test_layout_test_searchpath_with_apple_additions): Add test for operating
16878 system name replacement.
16879 * Scripts/webkitpy/port/ios_simulator_unittest.py:
16880 (IOSSimulatorTest.test_layout_test_searchpath_with_apple_additions): Add test for operating
16881 system name replacement.
16882 * Scripts/webkitpy/port/mac.py: Correctly find the operating system to be replaced.
16883 (MacPort._apple_additions_path):
16884 * Scripts/webkitpy/port/mac_unittest.py:
16885 (MacTest.test_layout_test_searchpath_with_apple_additions): Add test for operating system
16887 * Scripts/webkitpy/port/port_testcase.py:
16888 (bind_mock_apple_additions.MockAppleAdditions.ios_os_name): Change the passed name so that
16889 operating system name replacement can be tested.
16890 (bind_mock_apple_additions.MockAppleAdditions.mac_os_name): Ditto.
16892 2017-08-23 Jonathan Bedard <jbedard@apple.com>
16894 Access expectations path through apple_additions
16895 https://bugs.webkit.org/show_bug.cgi?id=174800
16896 <rdar://problem/33498899>
16898 Reviewed by Alexey Proskuryakov.
16900 When external test expectations are imported through additional-platform-directory, they will
16901 over-write any WebKit expectations. Access some expectations from apple_additions to correct
16902 these precedence issues.
16904 * Scripts/webkitpy/port/ios.py:
16905 (IOSPort._apple_additions_path): Convert test expectation directory to a path
16906 coming from apple_additions.
16907 (IOSPort.default_baseline_search_path): Alternate between WebKit path and apple_additions
16908 path for layout test expectations.
16909 * Scripts/webkitpy/port/ios_device_unittest.py:
16910 (IOSDeviceTest.test_layout_test_searchpath_with_apple_additions): Added to test layout-test search paths.
16911 * Scripts/webkitpy/port/ios_simulator_unittest.py:
16912 (IOSSimulatorTest.test_layout_test_searchpath_with_apple_additions): Added to test layout-test search paths.
16913 * Scripts/webkitpy/port/mac.py:
16914 (MacPort._apple_additions_path): Convert test expectation directory to a path
16915 coming from apple_additions.
16916 (MacPort.default_baseline_search_path): Alternate between WebKit path and apple_additions
16917 path for layout test expectations.
16918 * Scripts/webkitpy/port/mac_unittest.py:
16919 (MacTest.test_layout_test_searchpath_with_apple_additions): Added to test layout-test search paths.
16920 * Scripts/webkitpy/port/port_testcase.py:
16921 (bind_mock_apple_additions): Added to create mock apple_additions for a block.
16922 (bind_mock_apple_additions.MockAppleAdditions): Contains apple_addition stubs for testing.
16923 * Scripts/webkitpy/port/win.py:
16924 (WinPort.default_baseline_search_path): Include apple_additions test expectation for Windows.
16926 2017-08-22 Zan Dobersek <zdobersek@igalia.com>
16928 Unreviewed. The WPE port should build TestWebKitAPI with the same
16929 compiler flags as the GTK+ port, disabling a few flags that are
16930 sprouting a lot of warning output.
16932 * TestWebKitAPI/PlatformWPE.cmake:
16934 2017-08-20 Wenson Hsieh <wenson_hsieh@apple.com>
16936 [iOS WK2] WKWebView schedules nonstop layout after pressing cmb+b,i,u inside a contenteditable div
16937 https://bugs.webkit.org/show_bug.cgi?id=175116
16938 <rdar://problem/28279301>
16940 Reviewed by Darin Adler and Ryosuke Niwa.
16942 Introduces new testing infrastructure and API tests to test EditorState updates in the UI process. The new
16943 EditorStateTests run on both iOS and Mac.
16945 * TestWebKitAPI/EditingTestHarness.h: Added.
16946 * TestWebKitAPI/EditingTestHarness.mm: Added.
16948 EditingTestHarness is a helper object that API tests may use to apply editing commands and store EditorState
16949 history. This test harness adds sugaring around various editing commands, and simplifies the process of checking
16950 the state of the latest observed EditorState.
16952 (-[EditingTestHarness initWithWebView:]):
16953 (-[EditingTestHarness dealloc]):
16954 (-[EditingTestHarness webView]):
16955 (-[EditingTestHarness latestEditorState]):
16956 (-[EditingTestHarness editorStateHistory]):
16957 (-[EditingTestHarness insertText:andExpectEditorStateWith:]):
16958 (-[EditingTestHarness insertHTML:andExpectEditorStateWith:]):
16959 (-[EditingTestHarness selectAllAndExpectEditorStateWith:]):
16960 (-[EditingTestHarness moveBackwardAndExpectEditorStateWith:]):
16961 (-[EditingTestHarness moveWordBackwardAndExpectEditorStateWith:]):
16962 (-[EditingTestHarness toggleBold]):
16963 (-[EditingTestHarness toggleItalic]):
16964 (-[EditingTestHarness toggleUnderline]):
16965 (-[EditingTestHarness setForegroundColor:]):
16966 (-[EditingTestHarness alignJustifiedAndExpectEditorStateWith:]):
16967 (-[EditingTestHarness alignLeftAndExpectEditorStateWith:]):
16968 (-[EditingTestHarness alignCenterAndExpectEditorStateWith:]):
16969 (-[EditingTestHarness alignRightAndExpectEditorStateWith:]):
16970 (-[EditingTestHarness insertParagraphAndExpectEditorStateWith:]):
16971 (-[EditingTestHarness deleteBackwardAndExpectEditorStateWith:]):
16972 (-[EditingTestHarness _execCommand:argument:expectEntries:]):
16974 Dispatches an editing command to the web process, and blocks until a response is received. If an expected
16975 entries dictionary is given, this will additionally verify that the latest EditorState contains all the expected
16978 (-[EditingTestHarness latestEditorStateContains:]):
16979 (-[EditingTestHarness _webView:editorStateDidChange:]):
16980 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
16981 * TestWebKitAPI/Tests/WebKit2Cocoa/EditorStateTests.mm: Added.
16982 (TestWebKitAPI::setUpEditorStateTestHarness):
16983 (TestWebKitAPI::TEST):
16984 * TestWebKitAPI/Tests/WebKit2Cocoa/editor-state-test-harness.html: Added.
16986 2017-08-22 Wenson Hsieh <wenson_hsieh@apple.com>
16988 [WK2] EditorState updates should be rolled into the layer update lifecycle when possible
16989 https://bugs.webkit.org/show_bug.cgi?id=175370
16990 <rdar://problem/33799806>
16992 Reviewed by Ryosuke Niwa.
16994 Tweaks API tests that involve editing to wait for a presentation update before checking against UI process-side
16995 information sent via EditorState updates. This allows any EditorState update scheduled by the test to propagate
16998 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewCandidateTests.mm:
16999 (-[CandidateTestWebView typeString:inputMessage:]):
17000 (+[CandidateTestWebView setUpWithFrame:testPage:]):
17001 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewTextInput.mm:
17002 * TestWebKitAPI/Tests/mac/AcceptsFirstMouse.mm:
17003 (TestWebKitAPI::AcceptsFirstMouse::runTest):
17004 * TestWebKitAPI/Tests/mac/WKWebViewMacEditingTests.mm:
17005 * TestWebKitAPI/cocoa/TestWKWebView.h:
17006 * TestWebKitAPI/cocoa/TestWKWebView.mm:
17007 (-[TestWKWebView waitForNextPresentationUpdate]):
17009 Add a new helper method to spin until the next presentation update.
17011 * TestWebKitAPI/mac/WebKitAgnosticTest.h:
17012 * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
17013 (TestWebKitAPI::WebKitAgnosticTest::waitForNextPresentationUpdate):
17015 2017-08-22 Alex Christensen <achristensen@webkit.org>
17017 Add UIDelegatePrivate SPI corresponding to WKPageUIClient.showPage
17018 https://bugs.webkit.org/show_bug.cgi?id=175797
17019 <rdar://problem/29270035>
17021 Reviewed by Geoffrey Garen.
17023 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17024 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm: Added.
17025 (-[UITestDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
17026 (-[UITestDelegate _showPage:]):
17027 (-[UITestDelegate webView:startURLSchemeTask:]):
17028 (-[UITestDelegate webView:stopURLSchemeTask:]):
17031 2017-08-22 Devin Rousso <webkit@devinrousso.com>
17033 Unreviewed, change my IRC nick.
17035 * Scripts/webkitpy/common/config/contributors.json:
17037 2017-08-22 Matt Lewis <jlewis3@apple.com>
17039 Unreviewed, rolling out r221026.
17041 This caused a consistent API failure on iOS Simulator.
17043 Reverted changeset:
17045 "Add UIDelegatePrivate SPI corresponding to
17046 WKPageUIClient.showPage"
17047 https://bugs.webkit.org/show_bug.cgi?id=175797
17048 http://trac.webkit.org/changeset/221026
17050 2017-08-22 Alex Christensen <achristensen@webkit.org>
17052 Add UIDelegatePrivate SPI corresponding to WKPageUIClient.showPage
17053 https://bugs.webkit.org/show_bug.cgi?id=175797
17054 <rdar://problem/29270035>
17056 Reviewed by Geoffrey Garen.
17058 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17059 * TestWebKitAPI/Tests/WebKit2Cocoa/UIDelegate.mm: Added.
17060 (-[UITestDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
17061 (-[UITestDelegate _showPage:]):
17062 (-[UITestDelegate webView:startURLSchemeTask:]):
17063 (-[UITestDelegate webView:stopURLSchemeTask:]):
17066 2017-08-22 Jonathan Bedard <jbedard@apple.com>
17068 Fix leak-checking for iOS Simulators
17069 https://bugs.webkit.org/show_bug.cgi?id=175735
17071 Reviewed by David Kilzer.
17073 Follow-up fix to r220942. _proc may be undefined.
17075 * Scripts/webkitpy/port/server_process.py:
17076 (ServerProcess._wait_for_stop): Handle case where _proc is undefined.
17078 2017-08-22 Carlos Alberto Lopez Perez <clopez@igalia.com>
17080 [GTK][WPE] install-dependencies should install the required gstreamer packages needed for production builds.
17081 https://bugs.webkit.org/show_bug.cgi?id=175822
17083 Reviewed by Xabier Rodriguez-Calvar.
17085 * gtk/install-dependencies: Add the bad plugins to the list.
17086 * wpe/install-dependencies: Add all the gst related packages (copied from GTK listing).
17088 2017-08-21 Myles C. Maxfield <mmaxfield@apple.com>
17090 DataInteractionTests.ExternalSourceAttributedStringToContentEditable hits a debug assertion
17091 https://bugs.webkit.org/show_bug.cgi?id=175787
17092 <rdar://problem/33996612>
17094 Reviewed by Wenson Hsieh.
17096 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
17097 (TestWebKitAPI::TEST):
17099 2017-08-21 Myles C. Maxfield <mmaxfield@apple.com>
17101 Typo in "webkit-patch land"
17102 https://bugs.webkit.org/show_bug.cgi?id=175788
17104 Reviewed by Tim Horton.
17106 * Scripts/webkitpy/tool/steps/commit.py:
17107 (Commit._commit_warning):
17109 2017-08-20 Sam Weinig <sam@webkit.org>
17111 StringView could use a function to strip leading/trailing characters without allocation
17112 https://bugs.webkit.org/show_bug.cgi?id=175757
17114 Reviewed by Darin Adler.
17116 * TestWebKitAPI/Tests/WTF/StringView.cpp:
17117 Add tests for StringView::stripLeadingAndTrailingMatchedCharacters().
17119 2017-08-21 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
17121 [PAL] Move spi/mac directory into PAL
17122 https://bugs.webkit.org/show_bug.cgi?id=175649
17124 Reviewed by Myles C. Maxfield.
17126 * TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:
17128 2017-08-21 Per Arne Vollan <pvollan@apple.com>
17130 [Win] DRT should only allow any https certificate for localhost.
17131 https://bugs.webkit.org/show_bug.cgi?id=175147
17133 Reviewed by Brent Fulgham.
17135 Add check to make sure only localhost requests allow any https certificate.
17137 * DumpRenderTree/win/DumpRenderTree.cpp:
17140 2017-08-21 Eric Carlson <eric.carlson@apple.com>
17142 Add WTFLogChannel level to allow runtime log filtering
17143 https://bugs.webkit.org/show_bug.cgi?id=175731
17144 <rdar://problem/33967234>
17146 Unreviewed build fix.
17148 * TestWebKitAPI/Tests/WebCore/Logging.cpp:
17149 (TestWebKitAPI::LoggingTest::output): Disable testing output by default because it
17150 fails on some of the bots.
17152 2017-08-21 Eric Carlson <eric.carlson@apple.com>
17154 Add WTFLogChannel level to allow runtime log filtering
17155 https://bugs.webkit.org/show_bug.cgi?id=175731
17156 <rdar://problem/33967234>
17158 Reviewed by Jer Noble.
17160 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17161 * TestWebKitAPI/Tests/WebCore/Logging.cpp: Added.
17162 (TestWebKitAPI::LoggingTest::output):
17163 (TestWebKitAPI::TEST_F):
17165 2017-08-19 Wenson Hsieh <wenson_hsieh@apple.com>
17167 [iOS WK2] Add a version of DataInteractionTests.ExternalSourceAttributedStringToContentEditable that doesn't hit a debug assertion
17168 https://bugs.webkit.org/show_bug.cgi?id=175509
17169 <rdar://problem/33728169>
17171 Reviewed by Ryosuke Niwa.
17173 Removes ExternalSourceAttributedStringToContentEditable and adds
17174 ExternalSourceColoredAttributedStringToContentEditable, which tests dropping an attributed string with colored
17175 text instead of a bold attributed string of system font. Due to a recent change in behavior in UIKit, the
17176 original test (which this patch renames to ExternalSourceBoldSystemAttributedStringToContentEditable) hits a
17177 debug assertion when dropping text of system bold font. Since the original intent of this test was to verify
17178 that the attributed string UTI can be accepted in richly contenteditable areas, it suffices to check that some
17179 other style attribute, such as color, carries over from the NSAttributedString to the DOM.
17181 Also marks ExternalSourceBoldSystemAttributedStringToContentEditable as disabled for the time being.
17183 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
17184 (TestWebKitAPI::TEST):
17186 2017-08-18 Ryan Haddad <ryanhaddad@apple.com>
17188 Unreviewed, rolling out r220938.
17190 The API tests added with this change are failing.
17192 Reverted changeset:
17194 "Add WTFLogChannel level to allow runtime log filtering"
17195 https://bugs.webkit.org/show_bug.cgi?id=175731
17196 http://trac.webkit.org/changeset/220938
17198 2017-08-18 Devin Rousso <webkit@devinrousso.com>
17200 Unreviewed, change my email.
17202 * Scripts/webkitpy/common/config/contributors.json:
17204 2017-08-18 Jonathan Bedard <jbedard@apple.com>
17206 Fix leak-checking for iOS Simulators
17207 https://bugs.webkit.org/show_bug.cgi?id=175735
17209 Reviewed by Darin Adler.
17211 If the leak checking currently occurs in ServerProcess, we can’t check leaks on an iOS
17212 Simulator (or device) because the process will have already been killed by the time we
17213 check for leaks. Duplicate leak-checking code and share code waiting on a process to stop.
17215 * Scripts/webkitpy/port/server_process.py:
17216 (ServerProcess.stop): Move code waiting for the process to close to _wait_for_stop(...).
17217 (ServerProcess._wait_for_stop): Share code shutting down a process between ServerProcess
17218 and SimulatorProcess.
17219 * Scripts/webkitpy/port/simulator_process.py:
17220 (SimulatorProcess.stop): Before closing the process, check for leaks.
17222 2017-08-18 Eric Carlson <eric.carlson@apple.com>
17224 Add WTFLogChannel level to allow runtime log filtering
17225 https://bugs.webkit.org/show_bug.cgi?id=175731
17226 <rdar://problem/33967234>
17228 Reviewed by Jer Noble.
17230 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17231 * TestWebKitAPI/Tests/WebCore/Logging.cpp: Added.
17232 (TestWebKitAPI::LoggingTest::output):
17233 (TestWebKitAPI::TEST_F):
17235 2017-08-18 Alexey Proskuryakov <ap@apple.com>
17237 Add Dean Johnson to contributors.json for Bugzilla autocomplete.
17239 * Scripts/webkitpy/common/config/contributors.json:
17241 2017-08-18 Ross Kirsling <ross.kirsling@sony.com>
17243 [Tools] Add script to download a GitHub release
17244 https://bugs.webkit.org/show_bug.cgi?id=175279
17246 Reviewed by Brent Fulgham.
17248 * Scripts/download-latest-github-release.py: Added.
17250 2017-08-18 Commit Queue <commit-queue@webkit.org>
17252 Unreviewed, rolling out r220854.
17253 https://bugs.webkit.org/show_bug.cgi?id=175716
17255 I'm not sure we really need this (Requested by KaL on
17258 Reverted changeset:
17260 "[GTK][WPE] Add NTLM authentication enabled API"
17261 https://bugs.webkit.org/show_bug.cgi?id=122952
17262 http://trac.webkit.org/changeset/220854
17264 2017-08-17 Michael Catanzaro <mcatanzaro@igalia.com>
17266 [GTK] Make TestContextMenu work on Fedora
17267 https://bugs.webkit.org/show_bug.cgi?id=175708
17269 Reviewed by Carlos Garcia Campos.
17271 TestContextMenu has been broken for as long as I remember, but not on the bots, only for me
17272 and my student last summer who was trying to work on a context menu API. It's trying to load
17273 an MPEG-2 video file and confirm that right-clicking on it shows media element context menu
17274 entries. Doesn't work on Fedora. Dunno why, since Fedora actually can play MPEG-2, but I
17275 don't care to investigate. Let's switch it to WebM so I can move on.
17277 * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
17278 (prepareContextMenuTestView):
17279 * TestWebKitAPI/Tests/WebKitGLib/resources/silence.mpg: Removed.
17280 * TestWebKitAPI/Tests/WebKitGLib/resources/silence.webm: Added.
17282 2017-08-17 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
17284 check-webkit-style shouldn't check spacing in #elif preprocessor lines
17285 https://bugs.webkit.org/show_bug.cgi?id=175652
17287 Reviewed by Alex Christensen.
17289 * Scripts/webkitpy/style/checkers/cpp.py:
17291 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
17292 (CppStyleTest.test_spacing_for_binary_ops):
17294 2017-08-17 Wenson Hsieh <wenson_hsieh@apple.com>
17296 Fix the build on other platforms after r220865
17297 https://bugs.webkit.org/show_bug.cgi?id=175683
17299 Reviewed by Tim Horton.
17301 Check __IPHONE_OS_VERSION_MAX_ALLOWED instead of __IPHONE_OS_VERSION_MIN_REQUIRED in an SPI header. SPI
17302 availability is determined by SDK version rather than deployment version.
17304 * TestWebKitAPI/ios/UIKitSPI.h:
17306 2017-08-17 Andreas Kling <akling@apple.com>
17308 Disable CSS regions at compile time
17309 https://bugs.webkit.org/show_bug.cgi?id=175630
17311 Reviewed by Antti Koivisto.
17313 * Scripts/webkitperl/FeatureList.pm:
17314 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
17316 2017-08-17 Wenson Hsieh <wenson_hsieh@apple.com>
17318 Unreviewed, try to fix the internal iOS 10 build after r220865.
17320 * TestWebKitAPI/ios/UIKitSPI.h:
17322 On the iOS 10 SDK, UIApplication_Private.h cannot be imported in the simulator. Simply fall back to using the
17323 extern declaration when building for pre-iOS 11; once the bots stop building for iOS 10, we can safely remove
17324 this compiler guard.
17326 2017-08-17 Wenson Hsieh <wenson_hsieh@apple.com>
17328 [iOS] Respect type fidelities when copying image elements to the pasteboard
17329 https://bugs.webkit.org/show_bug.cgi?id=175638
17330 <rdar://problem/26556043>
17332 Reviewed by Ryosuke Niwa.
17334 Add API tests that simulate copying an image element using the action sheet, and verifying that the pasteboard
17335 contains UTIs in order of fidelity (image type before URL). Also pulls out UIKit SPI (UIApplicationInitialize)
17336 used in UIPasteboardTests and ActionSheetTests into a common UIKitSPI header.
17338 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17339 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
17340 (-[ActionSheetObserver _webView:actionsForElement:defaultActions:]):
17341 (TestWebKitAPI::TEST):
17342 (TestWebKitAPI::presentActionSheetAndChooseAction):
17343 (-[ActionSheetObserver waitForActionSheetAfterBlock:]): Deleted.
17344 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
17345 (checkEstimatedSize):
17346 (checkSuggestedNameAndEstimatedSize):
17348 Replace -estimatedDisplayedSize with its non-deprecated counterpart, -preferredPresentationSize.
17350 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
17351 (TestWebKitAPI::TEST):
17352 * TestWebKitAPI/ios/DataInteractionSimulator.h:
17353 * TestWebKitAPI/ios/UIKitSPI.h: Added.
17355 2017-08-17 Jonathan Bedard <jbedard@apple.com>
17357 Recursively create resource load statistics folder for testing
17358 https://bugs.webkit.org/show_bug.cgi?id=175676
17360 Reviewed by Brady Eidson.
17362 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
17363 (WTR::TestController::cocoaPlatformInitialize): Recursively create resourceLoadStatisticsFolder.
17365 2017-08-17 Carlos Garcia Campos <cgarcia@igalia.com>
17367 [GTK][WPE] Add NTLM authentication enabled API
17368 https://bugs.webkit.org/show_bug.cgi?id=122952
17370 Reviewed by Michael Catanzaro.
17372 Add a test case to check we can enable/disable NTLM.
17374 * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
17375 (testWebViewAuthenticationNTLM):
17378 2017-08-16 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
17380 [PAL] Move spi/ios and spi/win directories into PAL
17381 https://bugs.webkit.org/show_bug.cgi?id=175171
17383 Reviewed by Antti Koivisto.
17385 * DumpRenderTree/mac/EventSendingController.mm:
17387 2017-08-16 Andy Estes <aestes@apple.com>
17389 [Payment Request] Add an ENABLE flag and an experimental feature preference
17390 https://bugs.webkit.org/show_bug.cgi?id=175622
17392 Reviewed by Tim Horton.
17394 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
17395 * WebKitTestRunner/TestController.cpp:
17396 (WTR::TestController::resetPreferencesToConsistentValues):
17398 2017-08-15 Aakash Jain <aakash_jain@apple.com>
17400 undefined URL in PopoverTracker for failed step
17401 https://bugs.webkit.org/show_bug.cgi?id=175593
17402 <rdar://problem/33898769>
17404 Reviewed by Daniel Bates.
17406 This fix is a workaround for Buildbot 0.9 bug <https://github.com/buildbot/buildbot/issues/3529> where it
17407 does not provide a URL to stdio for a build step. Buildbot 0.8 always included a URL to the stdio of the step.
17409 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
17410 (BuildbotIteration.prototype._parseData): Pass the URL while instantiating BuildbotTestResults.
17411 (BuildbotIteration.prototype._urlForStep): Method to get the URL for a step.
17412 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTestResults.js:
17413 (BuildbotTestResults): Accept URL in constructor.
17415 2017-08-14 Simon Fraser <simon.fraser@apple.com>
17417 Remove Proximity Events and related code
17418 https://bugs.webkit.org/show_bug.cgi?id=175545
17420 Reviewed by Daniel Bates.
17422 No platform enables Proximity Events, so remove code inside ENABLE(PROXIMITY_EVENTS)
17423 and other related code.
17425 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
17427 2017-08-14 Simon Fraser <simon.fraser@apple.com>
17429 Remove ENABLE(REQUEST_AUTOCOMPLETE) code, which was disabled everywhere
17430 https://bugs.webkit.org/show_bug.cgi?id=175504
17432 Reviewed by Sam Weinig.
17434 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
17436 2017-08-14 Simon Fraser <simon.fraser@apple.com>
17438 Remove ENABLE_VIEW_MODE_CSS_MEDIA and related code
17439 https://bugs.webkit.org/show_bug.cgi?id=175557
17441 Reviewed by Jon Lee.
17443 No port cares about the ENABLE(VIEW_MODE_CSS_MEDIA) feature, so remove it.
17445 * DumpRenderTree/TestRunner.cpp:
17446 (TestRunner::staticFunctions):
17447 (setViewModeMediaFeatureCallback): Deleted.
17448 * DumpRenderTree/TestRunner.h:
17449 * DumpRenderTree/mac/TestRunnerMac.mm:
17450 (TestRunner::setViewModeMediaFeature): Deleted.
17451 * DumpRenderTree/win/TestRunnerWin.cpp:
17452 (TestRunner::setViewModeMediaFeature): Deleted.
17453 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
17455 2017-08-14 Andy Estes <aestes@apple.com>
17457 REGRESSION (r220456): Crash in PreviewLoader::shouldCreateForMIMEType() when a ResourceResponse has a null MIME type
17458 https://bugs.webkit.org/show_bug.cgi?id=175548
17459 <rdar://problem/33866206>
17461 Reviewed by Brady Eidson.
17463 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17464 * TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp: Added.
17465 (TestWebKitAPI::TEST): Added an API test for PreviewLoader::shouldCreateForMIMEType().
17467 2017-08-14 Youenn Fablet <youenn@apple.com>
17469 WPT server should be able to do logging even if its output folder is not created at launch time
17470 https://bugs.webkit.org/show_bug.cgi?id=175543
17472 Reviewed by Alexey Proskuryakov.
17474 Removing no longer used stdout/stderr member variables.
17475 Creating if needed the output folder so that we can create WPT server output log folder at WPT server launch time.
17477 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
17478 (WebPlatformTestServer.__init__):
17479 (WebPlatformTestServer._prepare_config):
17480 (WebPlatformTestServer._spawn_process):
17481 (WebPlatformTestServer._stop_running_server):
17483 2017-08-14 Daniel Bates <dabates@apple.com>
17485 webkit-patch: Passing --no-review should submit patch to EWS by default
17486 https://bugs.webkit.org/show_bug.cgi?id=148899
17488 Reviewed by David Kilzer.
17490 Make "webkit-patch upload --no-review" and "webkit-patch post-commits --no-review" submit
17491 the patch(es) for EWS analysis by default. Add a new optional command line argument, --no-ews,
17492 to these commands to not submit a non-reviewed patch(es) for EWS analysis.
17494 Frequently I want to post a draft of a patch without review to have the EWS bots process
17495 it to catch build and test breakage before I clean it up and post it for formal review.
17496 Currently this requires using "webkit-patch upload --no-review --open-bug" to upload the
17497 patch and open the bug in Safari so that I can click the Submit for EWS analysis button.
17498 We should teach "webkit-patch upload" and "webkit-patch post-commits" how to do this.
17500 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
17501 (Bugzilla._parse_attachment_id_from_add_patch_to_bug_response): Add helper function to
17502 parse the attachment id from the response page after adding an attachment to the bug.
17503 (Bugzilla.add_patch_to_bug): Modified to parse and return the attachment id from the
17504 HTTP response after uploading the patch.
17505 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
17506 (MockBugzilla.add_patch_to_bug): Return a dummy attachment id for testing purposes.
17507 * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
17508 (test__parse_attachment_id_from_add_patch_to_bug_response): Added.
17509 * Scripts/webkitpy/tool/commands/upload.py:
17510 (Upload): Add step SubmitToEWS to the list of steps when uploading a patch.
17511 (PostCommits.__init__): Add --no-ews option to the list of applicable option flags for
17513 (PostCommits.execute): Submit the patch to EWS, if applicable.
17514 * Scripts/webkitpy/tool/commands/upload_unittest.py:
17515 (test_upload): Set options.ews to False as the upload command expects this option
17517 (test_upload_with_no_review_and_ews): Added.
17518 * Scripts/webkitpy/tool/steps/__init__.py: Import module SubmitToEWS.
17519 * Scripts/webkitpy/tool/steps/options.py:
17520 (Options): Added command line option --no-ews (defaults: False - submit to EWS).
17521 * Scripts/webkitpy/tool/steps/postdiff.py:
17522 (PostDiff.options): Add --no-ews option to the list of applicable option flags for
17524 (PostDiff.run): Submit the patch to EWS, if applicable.
17525 * Scripts/webkitpy/tool/steps/submittoews.py: Added.
17527 (SubmitToEWS.options): Return an empty array as we this step does not have any command line options.
17528 (SubmitToEWS.run): Submit the specified attachment ids for EWS analysis.
17530 2017-08-14 Ryan Haddad <ryanhaddad@apple.com>
17532 Disable two flaky VideoControlsManager API tests.
17534 Unreviewed test gardening.
17536 * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
17537 (TestWebKitAPI::TEST):
17539 2017-08-14 Tim Horton <timothy_horton@apple.com>
17541 Only create directory and sandbox extension handle for storage directories if they are set
17542 https://bugs.webkit.org/show_bug.cgi?id=175522
17544 Reviewed by Brady Eidson.
17546 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17547 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewDoesNotLogDuringInitialization.mm: Added.
17549 Add a test that making a WKWebView with an ephemeral WKWebsiteDataStore
17550 doesn't log anything to stderr.
17552 2017-08-14 Jonathan Bedard <jbedard@apple.com>
17554 sub-categorize Sandbox violation logs
17555 https://bugs.webkit.org/show_bug.cgi?id=175536
17556 <rdar://problem/33834416>
17558 Reviewed by David Kilzer.
17560 * Scripts/webkitpy/common/system/crashlogs.py:
17561 (CrashLogs._parse_darwin_crash_log): Add 'Sandbox-' to the log name if the log is
17562 a Sandbox violation.
17563 (CrashLogs._find_all_logs_darwin): Update comment.
17564 * Scripts/webkitpy/common/system/crashlogs_unittest.py:
17565 (make_mock_sandbox_report_darwin): Create a Sandbox violation log for testing.
17566 (CrashLogsTest.create_crash_logs_darwin): Add Sandbox violation to list of crashes.
17567 (CrashLogsTest.test_find_all_log_darwin): 8 logs in testing instead of 7.
17568 (CrashLogsTest.test_duplicate_log_darwin): Check for Sandbox violation log.
17569 * Scripts/webkitpy/port/darwin.py:
17570 (DarwinPort._merge_crash_logs): Handle Sandbox violation case.
17572 2017-08-14 Daniel Bates <dabates@apple.com>
17574 Add Automator service to copy permalink to Clipboard
17575 https://bugs.webkit.org/show_bug.cgi?id=170978
17577 Reviewed by Joseph Pecoraro.
17579 It is helpful to reference using a hyperlink a particular line of code when having
17580 a discussion on IRC or in a bug. You can get such a link by navigating to the file
17581 in the Trac Browse Source viewer and selecting the line your are interested in.
17582 I found myself doing this often enough that I wrote an Automator service to do it
17585 This Automator service works with Xcode 8 and Xcode 9 beta 5 (9M202q) or later.
17587 * CopyPermalink/Copy WebKit Permalink.workflow/Contents/Info.plist: Added.
17588 * CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow: Added.
17589 * CopyPermalink/README: Added.
17591 2017-08-14 Chris Dumez <cdumez@apple.com>
17593 Address flakiness related to download tests
17594 https://bugs.webkit.org/show_bug.cgi?id=175338
17595 <rdar://problem/33865119>
17597 Unreviewed, forgot in r220626 to reset m_shouldLogDownloadCallbacks to false
17600 * WebKitTestRunner/TestController.cpp:
17601 (WTR::TestController::resetStateToConsistentValues):
17603 2017-08-11 Ryosuke Niwa <rniwa@webkit.org>
17605 Replace DATA_TRANSFER_ITEMS by a runtime flag and add a stub implementation
17606 https://bugs.webkit.org/show_bug.cgi?id=175474
17607 <rdar://problem/33844628>
17609 Reviewed by Wenson Hsieh.
17611 Enable dataTransfer.items by default in DumpRenderTree and WebKitTestRunner for testing purposes.
17613 * DumpRenderTree/mac/DumpRenderTree.mm:
17614 (resetWebPreferencesToConsistentValues):
17615 * WebKitTestRunner/TestController.cpp:
17616 (WTR::TestController::resetPreferencesToConsistentValues):
17618 2017-08-12 Chris Dumez <cdumez@apple.com>
17620 Address flakiness related to download tests
17621 https://bugs.webkit.org/show_bug.cgi?id=175338
17623 Reviewed by Ryosuke Niwa.
17625 - Update WKTR so that the flag set by testRunner.waitUntilDownloadFinished()
17626 is actually queried when a download completes. Previously, this would be
17627 identical to a call to testRunner.waitUntilDone() because any download
17628 completion would call testRunner.notifyDone().
17629 - Disable logging of download callbacks by default and add a
17630 testRunner.setShouldLogDownloadCallbacks(true) API to allow tests to
17631 enable such logging.
17633 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
17634 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
17635 (WTR::InjectedBundle::didReceiveMessageToPage):
17636 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
17637 (WTR::TestRunner::setShouldLogDownloadCallbacks):
17638 * WebKitTestRunner/InjectedBundle/TestRunner.h:
17639 * WebKitTestRunner/TestController.cpp:
17640 (WTR::TestController::downloadDidStart):
17641 (WTR::TestController::decideDestinationWithSuggestedFilename):
17642 (WTR::TestController::downloadDidFinish):
17643 (WTR::TestController::downloadDidFail):
17644 (WTR::TestController::downloadDidCancel):
17645 * WebKitTestRunner/TestController.h:
17646 (WTR::TestController::setShouldLogDownloadCallbacks):
17647 * WebKitTestRunner/TestInvocation.cpp:
17648 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
17650 2017-08-11 Jonathan Bedard <jbedard@apple.com>
17652 Create mock ITP data in testing to prevent grandfathering
17653 https://bugs.webkit.org/show_bug.cgi?id=174720
17655 Unreviewed follow-up fix for r220604.
17657 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
17658 (WTR::TestController::cocoaPlatformInitialize): Release resourceLogPlist.
17660 2017-08-11 Jonathan Bedard <jbedard@apple.com>
17662 Create mock ITP data in testing to prevent grandfathering
17663 https://bugs.webkit.org/show_bug.cgi?id=174720
17664 <rdar://problem/33457779>
17666 Reviewed by Brent Fulgham.
17668 We don't need to be triggering grandfathering when each test runner starts. On Mac,
17669 this may launch plugins which can cause layout tests to fail later if the test
17670 runner does not shut-down before the plugins unload.
17672 * WebKitTestRunner/TestController.h: Add declaration of cocoaPlatformInitialize.
17673 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
17674 (WTR::TestController::cocoaPlatformInitialize): Write the minimum data required to
17675 prevent grandfathering from being triggered.
17676 * WebKitTestRunner/ios/TestControllerIOS.mm:
17677 (WTR::TestController::platformInitialize): Call cocoaPlatformInitialize.
17678 * WebKitTestRunner/mac/TestControllerMac.mm:
17679 (WTR::TestController::platformInitialize): Ditto.
17681 2017-08-11 Sam Weinig <sam@webkit.org>
17683 WTF::Function does not allow for reference / non-default constructible return types
17684 https://bugs.webkit.org/show_bug.cgi?id=175244
17685 <rdar://problem/33801582>
17687 Reviewed by Chris Dumez.
17689 * TestWebKitAPI/Tests/WTF/Function.cpp:
17690 (TestWebKitAPI::TEST):
17692 2017-08-11 Carlos Garcia Campos <cgarcia@igalia.com>
17694 [Soup] Cannot access HTTPS sites using a HTTP proxy that requires authentication
17695 https://bugs.webkit.org/show_bug.cgi?id=175378
17697 Reviewed by Sergio Villar Senin.
17699 Add two test cases to check proxy authentication.
17701 * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
17705 (Tunnel::connected):
17707 (ProxyAuthenticationTest::ProxyAuthenticationTest):
17708 (ProxyAuthenticationTest::~ProxyAuthenticationTest):
17709 (ProxyAuthenticationTest::proxyServerPortAsString):
17710 (testWebViewAuthenticationProxy):
17711 (testWebViewAuthenticationProxyHTTPS):
17714 2017-08-11 Xabier Rodriguez Calvar <calvaris@igalia.com>
17716 [GStreamer][GTK][WPE] Unify GStreamer JHBuild moduleset for both GTK+ and WPE
17717 https://bugs.webkit.org/show_bug.cgi?id=175428
17719 Both ports share the GStreamer code as multimedia backend and till
17720 not so long they were using different versions. Now they do use
17721 the same versions and it does not make any sense anymore (and
17722 neither had sense before) to have differences in the modulesets.
17724 In this patch I created a GStreamer moduleset and referenced it
17725 from both GTK+'s and WPE's. GStreamer patches were also moved there.
17727 Reviewed by Žan Doberšek.
17729 * gstreamer/jhbuild.modules: Added.
17730 * gstreamer/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch: Renamed from Tools/gtk/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch.
17731 * gstreamer/patches/gst-plugins-good-0005-souphttpsrc-cookie-jar-and-context-query-support.patch: Renamed from Tools/gtk/patches/gst-plugins-good-0005-souphttpsrc-cookie-jar-and-context-query-support.patch.
17732 * gstreamer/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch: Renamed from Tools/gtk/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch.
17733 * gstreamer/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch: Renamed from Tools/gtk/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch.
17734 * gstreamer/patches/gstreamer-0001-protection-added-function-to-filter-system-ids.patch: Renamed from Tools/gtk/patches/gstreamer-0001-protection-added-function-to-filter-system-ids.patch.
17735 * gstreamer/patches/openh264-configure.patch: Renamed from Tools/gtk/patches/openh264-configure.patch.
17736 * gtk/jhbuild.modules:
17737 * wpe/jhbuild.modules:
17738 * wpe/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch: Removed.
17739 * wpe/patches/gst-plugins-good-0005-souphttpsrc-cookie-jar-and-context-query-support.patch: Removed.
17740 * wpe/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch: Removed.
17741 * wpe/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch: Removed.
17742 * wpe/patches/gstreamer-0001-protection-added-function-to-filter-system-ids.patch: Removed.
17744 2017-08-10 Don Olmstead <don.olmstead@sony.com>
17746 Unreviewed, adding Ross Kirsling to contributors.json
17748 * Scripts/webkitpy/common/config/contributors.json:
17750 2017-08-10 Yusuke Suzuki <utatane.tea@gmail.com>
17752 Unreviewed, attempt to fix build failure with VC2017
17754 * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp:
17757 2017-08-10 Yusuke Suzuki <utatane.tea@gmail.com>
17759 Unreviewed, suppress warnings on GCC
17761 * TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp:
17762 (TestWebKitAPI::CheckedArithmeticTester::run):
17764 2017-08-10 Dan Bernstein <mitz@apple.com>
17766 [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
17767 https://bugs.webkit.org/show_bug.cgi?id=173223
17769 Reviewed by Tim Horton.
17771 The rebuilds were happening due to a difference in the compiler options that the IDE and
17772 xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
17773 xcodebuild pass that option, too, set INDEX_ENABLE_DATA_STORE to YES and
17774 INDEX_DATA_STORE_DIR to the Index Datastore path specified in Xcode Locations preferences >
17775 Advanced when a Custom Absolute path is selected.
17777 * Scripts/webkitdirs.pm:
17778 (determineBaseProductDir):
17780 2017-08-10 Yusuke Suzuki <utatane.tea@gmail.com>
17783 https://bugs.webkit.org/show_bug.cgi?id=174970
17785 Reviewed by Michael Catanzaro.
17787 Some of WTF tests are not executed in non Apple ports while they are generic ones.
17788 This patch adds these tests to non-Apple port TestWebKitAPI.
17789 Currently, we do not add Signals.cpp since it depends on signal functionality.
17791 * TestWebKitAPI/CMakeLists.txt:
17792 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17793 * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp:
17794 (isHigherPriority):
17796 * TestWebKitAPI/Tests/WTF/Signals.cpp: Copied from Tools/TestWebKitAPI/Tests/WTF/ThreadMessages.cpp.
17798 * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
17801 2017-08-10 obinna obike <oobike@apple.com>
17803 Remove obsolete link from webkit-queues status page
17804 https://bugs.webkit.org/show_bug.cgi?id=175337
17806 Reviewed by Aakash Jain.
17808 * QueueStatusServer/templates/recentstatus.html:
17809 Removed the link to the ews-watcher server.
17811 2017-08-10 Brian Burg <bburg@apple.com>
17813 WKPreferences should conform to NSCopying
17814 https://bugs.webkit.org/show_bug.cgi?id=175303
17815 <rdar://problem/33764939>
17817 Reviewed by Dan Bernstein.
17819 Add unit test to make sure a WKPreference and its copy are
17820 not aliased to each other or affect each other's properties.
17822 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17823 * TestWebKitAPI/Tests/WebKit2Cocoa/Copying.mm: Added.
17826 2017-08-10 Tim Horton <timothy_horton@apple.com>
17828 Remove some unused lambda captures so that WebKit builds with -Wunused-lambda-capture
17829 https://bugs.webkit.org/show_bug.cgi?id=175436
17830 <rdar://problem/33667497>
17832 Reviewed by Simon Fraser.
17834 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
17835 (TestWebKitAPI::TEST_F):
17837 2017-08-10 Lucas Forschler <lforschler@apple.com>
17839 Fix duplicated code in r220534.
17841 Unreviewed cleanup.
17843 * Scripts/bisect-builds:
17845 2017-08-08 Jiewen Tan <jiewen_tan@apple.com>
17847 [WebCrypto] Enable SerializedCryptoKeyWrapTest in iOS
17848 https://bugs.webkit.org/show_bug.cgi?id=175344
17849 <rdar://problem/28507240>
17851 Reviewed by Alexey Proskuryakov.
17853 Add entitlements to TestWebKitAPI project for iOS. Then add Keychain Access entitlement to the project.
17854 Finally enable the existing tests for iOS.
17856 * TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements: Added.
17857 * TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
17858 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17859 * TestWebKitAPI/Tests/WebCore/cocoa/SerializedCryptoKeyWrap.mm:
17861 2017-08-10 Lucas Forschler <lforschler@apple.com>
17863 Write a tool to bisect WebKit builds
17864 https://bugs.webkit.org/show_bug.cgi?id=174596
17866 Reviewed by Dean Johnson and Kocsen Chung.
17868 * Scripts/bisect-builds: Added.
17869 (bisect_builds): main bisection algorithm
17870 (download_archive):download an archive from S3 using existing tools
17871 (extract_archive):extract an archive using existing tools
17872 (find_le):Find rightmost value less than or equal to x
17873 (find_ge):Find leftmost item greater than or equal to x
17874 (get_api_url):generate url for the rest api/database
17875 (get_indices_from_revisions):convert revisions to list indexes for bisection
17876 (get_sorted_revisions):retrieve sorted revision list
17877 (get_s3_location_for_revision):calculate the S3 archive storage location
17878 (parse_args):parse command line arguments
17879 (pick_next_build):compute the next build to bisect
17880 (prompt_did_reproduce):prompt user for direction for bisection
17881 (set_webkit_output_dir):set the folder for bisected builds to avoid overwriting engineering build output
17882 (test_archive):Platform specific logic to test downloaded archive
17883 (minified_platforms):return a list of minified platforms in the database
17884 (unminified_platforms):return a list of full platforms in the database
17885 (is_supported_platform):check if platform is supported
17886 (validate_options):validate command line options
17889 2017-08-10 Lucas Forschler <lforschler@apple.com>
17891 Remove bisect-builds script.
17892 https://bugs.webkit.org/show_bug.cgi?id=175433
17894 Reviewed by Aakash Jain.
17896 * Scripts/bisect-builds: Removed.
17898 2017-08-10 Michael Catanzaro <mcatanzaro@igalia.com>
17900 Remove ENABLE_GAMEPAD_DEPRECATED
17901 https://bugs.webkit.org/show_bug.cgi?id=175361
17903 Reviewed by Carlos Garcia Campos.
17905 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
17907 2017-08-10 Carlos Alberto Lopez Perez <clopez@igalia.com>
17909 REGRESSION(r220515) [GTK][CMake] Build with ENABLE_GEOLOCATION fails on Debian Jessie
17910 https://bugs.webkit.org/show_bug.cgi?id=175426
17912 Reviewed by Carlos Garcia Campos.
17914 * gtk/install-dependencies: libgeoclue-dev packages not really needed on Debian/Ubuntu.
17916 2017-08-10 Ms2ger <Ms2ger@igalia.com>
17918 Add Ms2ger as contributor.
17919 https://bugs.webkit.org/show_bug.cgi?id=175325
17921 Reviewed by Carlos Alberto Lopez Perez.
17923 * Scripts/webkitpy/common/config/contributors.json:
17925 2017-08-09 Dewei Zhu <dewei_zhu@apple.com>
17927 Fix run-benchmark after r220483.
17928 https://bugs.webkit.org/show_bug.cgi?id=175415
17929 <rdar://problem/33803003>
17931 Reviewed by Ryosuke Niwa.
17933 Update run-benchmark script to adapt new Timeout implementation introduced in r220483.
17935 * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
17936 (WebServerBenchmarkRunner._run_one_test):
17938 2017-08-09 Chris Dumez <cdumez@apple.com>
17940 Disable Beacon API on WK1 DRT and WK2 when not using NETWORK_SESSION
17941 https://bugs.webkit.org/show_bug.cgi?id=175401
17943 Reviewed by Brady Eidson.
17945 * DumpRenderTree/mac/DumpRenderTree.mm:
17946 (enableExperimentalFeatures):
17948 2017-08-09 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
17950 [PAL] Move spi/cocoa and spi/cg directories into PAL
17951 https://bugs.webkit.org/show_bug.cgi?id=175175
17953 Reviewed by Myles C. Maxfield.
17955 * DumpRenderTree/ios/PixelDumpSupportIOS.mm:
17956 * DumpRenderTree/mac/DumpRenderTree.mm:
17957 * TestWebKitAPI/Tests/WebKit2Cocoa/NSFileManagerExtras.mm:
17958 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
17960 * Scripts/webkitpy/style/checker.py:
17961 * Scripts/webkitpy/style/checker_unittest.py:
17962 (GlobalVariablesTest.test_path_rules_specifier):
17964 Add path rules specifiers for PassKitSPI.h and DataDetectorsCoreSPI.h
17966 * Scripts/webkitpy/style/checkers/cpp.py:
17968 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
17969 (WebKitStyleTest.test_braces.CF_OPTIONS):
17970 (WebKitStyleTest.test_braces):
17972 Prevent CF_OPTIONS() from being handled as funtion definition.
17974 2017-08-09 Don Olmstead <don.olmstead@sony.com>
17976 [WTF] Move TextStream into WTF
17977 https://bugs.webkit.org/show_bug.cgi?id=175211
17979 Reviewed by Myles C. Maxfield.
17981 * TestWebKitAPI/Tests/WebCore/CalculationValue.cpp:
17983 2017-08-09 Andy Estes <aestes@apple.com>
17985 Part 3 of: Rename DatabaseProcess to StorageProcess
17986 https://bugs.webkit.org/show_bug.cgi?id=175034
17988 Reviewed by Brady Eidson.
17990 * WebKitTestRunner/TestController.cpp:
17991 (WTR::TestController::databaseProcessName): Updated to return
17992 "com.apple.WebKit.Storage.Development" on macOS and iOS Simulator.
17994 2017-08-09 Commit Queue <commit-queue@webkit.org>
17996 Unreviewed, rolling out r220466, r220477, and r220487.
17997 https://bugs.webkit.org/show_bug.cgi?id=175411
17999 This change broke existing API tests and follow up fixes did
18000 not resolve all the issues. (Requested by ryanhaddad on
18003 Reverted changesets:
18005 https://bugs.webkit.org/show_bug.cgi?id=175244
18006 http://trac.webkit.org/changeset/220466
18008 "WTF::Function does not allow for reference / non-default
18009 constructible return types"
18010 https://bugs.webkit.org/show_bug.cgi?id=175244
18011 http://trac.webkit.org/changeset/220477
18013 https://bugs.webkit.org/show_bug.cgi?id=175244
18014 http://trac.webkit.org/changeset/220487
18016 2017-08-09 Sam Weinig <sam@webkit.org>
18018 Update for https://bugs.webkit.org/show_bug.cgi?id=175244.
18020 Remove one addition of null Function test.
18022 2017-08-09 Jonathan Bedard <jbedard@apple.com>
18024 Allow nested timeouts in webkitpy
18025 https://bugs.webkit.org/show_bug.cgi?id=175390
18026 <rdar://problem/33803003>
18028 Reviewed by David Kilzer.
18030 We need to be able to nest timeouts in webkitpy. In particular, we have a few cases where functions
18031 which use timeouts also call the executive. For on-device testing, we need to have timeouts inside
18032 the executive to detect and recover from any issues connecting with devices.
18034 * Scripts/webkitpy/benchmark_runner/utils.py:
18035 (TimeoutError): Deleted.
18036 (timeout): Deleted.
18037 * Scripts/webkitpy/common/timeout_context.py: Added.
18038 (Timeout): A timeout context designed to be nested.
18039 (Timeout.TimeoutData): The data required to construct an alarm for a given timeout.
18040 (Timeout.TimeoutData.__init__):
18041 (Timeout.default_handler): Timeout handler used if none is specified.
18042 (Timeout.current): Access data about the most urgent timeout.
18043 (Timeout.__init__): Construct a Timeout object with seconds and an optional handler.
18044 (Timeout._bind_timeout_data_to_alarm): Given data about a timeout, initialize an alarm for that timeout.
18045 (Timeout.__enter__): Un-bind all alarms. Add data for this timeout to the ordered list and bind the most
18046 urgent timeout data.
18047 (Timeout.__exit__): Un-bind all alarms. Remove data for this timeout from the ordered list and bind the
18048 most urgent timeout data, if such data exists.
18049 * Scripts/webkitpy/common/timeout_context_unittest.py: Added.
18050 (TimeoutContextTests):
18051 (TimeoutContextTests.test_current_timeout): Test that accessing the nearest timeout works as expected.
18052 (TimeoutContextTests.test_invalid_timeout): Test a timeout of 0.
18053 (TimeoutContextTests.test_timeout_data): Confirm that timeouts are constructed correctly.
18054 (TimeoutContextTests.test_nested_inner_precedence): Check that a more urgent inner timeout takes precedence
18055 over a less urgent outer timeout.
18056 (TimeoutContextTests.test_nested_outer_precedence): Check that a more urgent outer timeout takes precedence
18057 over a less urgent inner timeout.
18058 (TimeoutContextTests.test_no_timeout): Test a block of code without a timeout.
18059 (TimeoutContextTests.test_basic_timeout): Test a block of code expected to timeout.
18060 (TimeoutContextTests.test_exception_constructor_timeout): Test a timeout where the handler is an exception.
18061 (TimeoutContextTests.test_nested_inner_timeout): Confirm that a more urgent inner timeout is triggered.
18062 (TimeoutContextTests.test_nested_outer_timeout): Confirm that a more urgent outer timeout is triggered.
18063 * Scripts/webkitpy/port/simulator_process.py:
18064 (SimulatorProcess._start): Use Timeout class.
18065 * Scripts/webkitpy/xcode/simulated_device.py:
18066 (SimulatedDevice.launch_app._log_debug_error): Use Timeout class.
18067 (SimulatedDevice.launch_app): Ditto.
18068 (SimulatedDevice.launch_app._install_timeout): Deleted.
18069 * Scripts/webkitpy/xcode/simulator.py:
18070 (Simulator.wait_until_device_is_booted):Use Timeout class.
18071 (Simulator.wait_until_device_is_in_state): Ditto.
18073 2017-08-09 Wenson Hsieh <wenson_hsieh@apple.com>
18075 [iOS DnD] ENABLE_DRAG_SUPPORT should be turned off for iOS 10 and enabled by default
18076 https://bugs.webkit.org/show_bug.cgi?id=175392
18077 <rdar://problem/33783207>
18079 Reviewed by Tim Horton and Megan Gardner.
18081 Tweak FeatureDefines to enable drag and drop by default, and disable only on unsupported platforms (i.e. iOS 10).
18083 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18085 2017-08-09 Sam Weinig <sam@webkit.org>
18087 Update for https://bugs.webkit.org/show_bug.cgi?id=175244.
18089 * TestWebKitAPI/Tests/WTF/Function.cpp:
18090 Remove tests of null Functions, as they are no longer supported.
18092 2017-08-09 Daniel Bates <dabates@apple.com>
18094 REGRESSION (r219013): OAuth flows are broken when redirecting back to application after authentication
18095 https://bugs.webkit.org/show_bug.cgi?id=175247
18096 <rdar://problem/33679804>
18098 Reviewed by Brady Eidson.
18100 Add tests for redirects.
18102 * TestWebKitAPI/Tests/WebKit2Cocoa/DecidePolicyForNavigationAction.mm:
18104 * TestWebKitAPI/cocoa/TestProtocol.mm:
18105 (createRedirectURL):
18106 (-[TestProtocol startLoading]):
18108 2017-08-08 Wenson Hsieh <wenson_hsieh@apple.com>
18110 Unreviewed, rolling out r220393.
18112 This patch regresses the performance of WebPage::editorState.
18114 Reverted changeset:
18116 "[iOS WK2] WKWebView schedules nonstop layout after pressing
18117 cmb+b,i,u inside a contenteditable div"
18118 https://bugs.webkit.org/show_bug.cgi?id=175116
18119 http://trac.webkit.org/changeset/220393
18121 2017-08-08 obinna obike <oobike@apple.com>
18123 Created Individual EWS Pages
18124 https://bugs.webkit.org/show_bug.cgi?id=174477
18126 Reviewed by Aakash Jain.
18128 Created individual pages for each EWS. Changed the link within each status bubble
18129 to go directly to the individual EWS page. Also added a link to original status page showing all EWSes.
18131 * QueueStatusServer/handlers/patch.py:
18132 (Patch.get): Handles the case for individual ews queue as well as for all EWS queues.
18133 * QueueStatusServer/handlers/statusbubble.py:
18134 (StatusBubble._build_bubble): Updated url for specific EWS.
18135 * QueueStatusServer/main.py: Added a link to the individual ews in the routes dictionary.
18136 * QueueStatusServer/templates/patch.html: Added a link to go directly to the page with
18138 * QueueStatusServer/templates/statusbubble.html: If you click on a statusbubble it
18139 takes you directly to the individual ews page.
18141 2017-08-08 Stephan Szabo <stephan.szabo@sony.com>
18143 Separate jsc stress test script writer from run-jsc-stress-tests
18144 https://bugs.webkit.org/show_bug.cgi?id=175216
18146 Reviewed by Mark Lam.
18148 * Scripts/run-jsc-stress-tests:
18149 * Scripts/webkitruby/jsc-stress-test-writer-default.rb: Added.
18151 2017-08-08 Michael Catanzaro <mcatanzaro@igalia.com>
18153 Unreviewed, fix Ubuntu LTS build
18154 https://bugs.webkit.org/show_bug.cgi?id=174490
18156 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
18158 2017-08-08 Wenson Hsieh <wenson_hsieh@apple.com>
18160 [Mac WK2] WebViewImpl should hold a weak pointer to its WKWebView or WKView
18161 https://bugs.webkit.org/show_bug.cgi?id=175302
18162 <rdar://problem/33762116>
18164 Reviewed by Tim Horton.
18166 Adds a new unit test checking that delayed event processing in text input context does not cause unwanted behaviors.
18167 See WebKit ChangeLog for more details.
18169 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18170 * TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h: Renamed from Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac/NSTextInputClientSPI.h.
18171 * TestWebKitAPI/Tests/mac/WKWebViewMacEditingTests.mm: Renamed from Tools/TestWebKitAPI/Tests/mac/WKWebViewSelectionTests.mm.
18172 (-[SlowTextInputContext handleEventByInputMethod:completionHandler:]):
18173 (-[SlowTextInputContext handleEvent:completionHandler:]):
18174 (-[SlowInputWebView inputContext]):
18175 (-[SlowInputWebView _web_superInputContext]):
18178 2017-08-08 John Wilander <wilander@apple.com>
18180 Resource Load Statistics: Clear web processes' state on history removal
18181 https://bugs.webkit.org/show_bug.cgi?id=175271
18182 <rdar://problem/33756560>
18184 Reviewed by Chris Dumez.
18186 Test infrastructure for asynchronous tests of website data
18187 removal for _WKWebsiteDataTypeResourceLoadStatistics.
18189 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
18190 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
18191 (WTR::InjectedBundle::didReceiveMessageToPage):
18192 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
18193 (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
18194 (WTR::TestRunner::statisticsCallClearThroughWebsiteDataRemovalCallback):
18195 * WebKitTestRunner/InjectedBundle/TestRunner.h:
18196 * WebKitTestRunner/TestController.cpp:
18197 (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
18198 * WebKitTestRunner/TestController.h:
18199 * WebKitTestRunner/TestInvocation.cpp:
18200 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
18201 (WTR::TestInvocation::didClearStatisticsThroughWebsiteDataRemoval):
18202 * WebKitTestRunner/TestInvocation.h:
18203 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
18204 (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
18206 2017-08-08 Alicia Boya García <aboya@igalia.com>
18208 Add Alicia Boya García as contributor
18209 https://bugs.webkit.org/show_bug.cgi?id=175326
18211 Reviewed by Michael Catanzaro.
18213 * Scripts/webkitpy/common/config/contributors.json:
18215 2017-08-08 Michael Catanzaro <mcatanzaro@igalia.com>
18217 [CMake] Properly test if compiler supports compiler flags
18218 https://bugs.webkit.org/show_bug.cgi?id=174490
18220 Reviewed by Konstantin Tokarev.
18222 * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
18223 * MiniBrowser/gtk/CMakeLists.txt:
18224 * TestRunnerShared/Bindings/JSWrapper.cpp:
18225 (WTR::JSWrapper::initialize):
18226 * TestWebKitAPI/CMakeLists.txt:
18227 * TestWebKitAPI/PlatformGTK.cmake:
18228 * TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp:
18229 (TestWebKitAPI::CheckedArithmeticTester::run):
18230 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
18231 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
18232 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
18233 (formControlsAssociatedCallback):
18234 * TestWebKitAPI/glib/CMakeLists.txt:
18235 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
18236 (Test::getResourcesDir):
18237 * WebKitTestRunner/CMakeLists.txt:
18238 * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
18239 (WTR::menuItemClickCallback):
18240 (WTR::staticConvertMenuItemToType):
18241 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
18242 (WTR::TestRunner::setUseDashboardCompatibilityMode):
18243 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
18244 (WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks):
18245 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
18246 (WTR::AccessibilityUIElement::helpText const):
18247 (WTR::AccessibilityUIElement::attributedStringForRange):
18248 * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
18249 (WTR::EventSenderProxy::updateTouchPoint):
18250 (WTR::EventSenderProxy::releaseTouchPoint):
18252 2017-08-08 Wenson Hsieh <wenson_hsieh@apple.com>
18254 [iOS WK2] WKWebView schedules nonstop layout after pressing cmb+b,i,u inside a contenteditable div
18255 https://bugs.webkit.org/show_bug.cgi?id=175116
18256 <rdar://problem/28279301>
18258 Reviewed by Darin Adler and Ryosuke Niwa.
18260 Introduces new testing infrastructure and API tests to test EditorState updates in the UI process. The new
18261 EditorStateTests run on both iOS and Mac.
18263 * TestWebKitAPI/EditingTestHarness.h: Added.
18264 * TestWebKitAPI/EditingTestHarness.mm: Added.
18266 EditingTestHarness is a helper object that API tests may use to apply editing commands and store EditorState
18267 history. This test harness adds sugaring around various editing commands, and simplifies the process of checking
18268 the state of the latest observed EditorState.
18270 (-[EditingTestHarness initWithWebView:]):
18271 (-[EditingTestHarness dealloc]):
18272 (-[EditingTestHarness webView]):
18273 (-[EditingTestHarness latestEditorState]):
18274 (-[EditingTestHarness editorStateHistory]):
18275 (-[EditingTestHarness insertText:andExpectEditorStateWith:]):
18276 (-[EditingTestHarness insertHTML:andExpectEditorStateWith:]):
18277 (-[EditingTestHarness selectAllAndExpectEditorStateWith:]):
18278 (-[EditingTestHarness moveBackwardAndExpectEditorStateWith:]):
18279 (-[EditingTestHarness moveWordBackwardAndExpectEditorStateWith:]):
18280 (-[EditingTestHarness toggleBold]):
18281 (-[EditingTestHarness toggleItalic]):
18282 (-[EditingTestHarness toggleUnderline]):
18283 (-[EditingTestHarness setForegroundColor:]):
18284 (-[EditingTestHarness alignJustifiedAndExpectEditorStateWith:]):
18285 (-[EditingTestHarness alignLeftAndExpectEditorStateWith:]):
18286 (-[EditingTestHarness alignCenterAndExpectEditorStateWith:]):
18287 (-[EditingTestHarness alignRightAndExpectEditorStateWith:]):
18288 (-[EditingTestHarness insertParagraphAndExpectEditorStateWith:]):
18289 (-[EditingTestHarness deleteBackwardAndExpectEditorStateWith:]):
18290 (-[EditingTestHarness _execCommand:argument:expectEntries:]):
18292 Dispatches an editing command to the web process, and blocks until a response is received. If an expected
18293 entries dictionary is given, this will additionally verify that the latest EditorState contains all the expected
18296 (-[EditingTestHarness latestEditorStateContains:]):
18297 (-[EditingTestHarness _webView:editorStateDidChange:]):
18298 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18299 * TestWebKitAPI/Tests/WebKit2Cocoa/EditorStateTests.mm: Added.
18300 (TestWebKitAPI::setUpEditorStateTestHarness):
18301 (TestWebKitAPI::TEST):
18302 * TestWebKitAPI/Tests/WebKit2Cocoa/editor-state-test-harness.html: Added.
18304 2017-08-04 Brent Fulgham <bfulgham@apple.com>
18306 Prevent domain from being set to a TLD
18307 https://bugs.webkit.org/show_bug.cgi?id=175226
18308 <rdar://problem/11079948>
18310 Reviewed by Chris Dumez.
18312 Extend the public suffix tests to include cases used by the
18313 Public Domain 'Public Suffix List'.
18315 * TestWebKitAPI/Tests/mac/PublicSuffix.cpp:
18316 (TestWebKitAPI::TEST):
18318 2017-08-07 Stephan Szabo <stephan.szabo@sony.com>
18320 [XCode] webkit-patch should run sort-Xcode-project-file
18321 https://bugs.webkit.org/show_bug.cgi?id=174036
18322 <rdar://problem/33732709>
18324 Reviewed by Simon Fraser.
18326 * Scripts/webkitpy/common/config/ports.py:
18327 * Scripts/webkitpy/tool/commands/download.py:
18328 * Scripts/webkitpy/tool/commands/download_unittest.py:
18329 * Scripts/webkitpy/tool/commands/upload.py:
18330 * Scripts/webkitpy/tool/commands/upload_unittest.py:
18331 * Scripts/webkitpy/tool/steps/__init__.py:
18332 * Scripts/webkitpy/tool/steps/options.py:
18333 * Scripts/webkitpy/tool/steps/sortxcodeprojectfiles.py: Added.
18335 2017-08-07 Devin Rousso <drousso@apple.com>
18337 Web Inspector: Preview Canvas path when viewing a recording
18338 https://bugs.webkit.org/show_bug.cgi?id=174967
18340 Reviewed by Brian Burg.
18342 * DumpRenderTree/TestOptions.h:
18343 * DumpRenderTree/TestOptions.mm:
18344 (TestOptions::TestOptions):
18345 * DumpRenderTree/mac/DumpRenderTree.mm:
18346 (setWebPreferencesForTestOptions):
18347 * WebKitTestRunner/TestController.cpp:
18348 (WTR::TestController::resetPreferencesToConsistentValues):
18349 (WTR::updateTestOptionsFromTestHeader):
18350 * WebKitTestRunner/TestOptions.h:
18351 (WTR::TestOptions::hasSameInitializationOptions const):
18352 Add plumbing for new InspectorAdditions runtime flag.
18354 2017-08-07 obinna obike <oobike@apple.com>
18356 Sorted EWS Queues on Patch page
18357 https://bugs.webkit.org/show_bug.cgi?id=173667
18359 Reviewed by Aakash Jain.
18361 * QueueStatusServer/handlers/patch.py:
18362 (Patch.get): Sorted queue_status.
18363 * QueueStatusServer/templates/patch.html:
18364 Changed queue_status.items to queue_status because it's a list.
18366 2017-08-07 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
18368 check-webkit-style: NS_ERROR_ENUM and NS_OPTIONS should not be handled as function definitions.
18369 https://bugs.webkit.org/show_bug.cgi?id=175286
18371 Reviewed by Myles C. Maxfield.
18373 * Scripts/webkitpy/style/checkers/cpp.py:
18375 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
18376 (WebKitStyleTest.test_braces.NS_ERROR_ENUM):
18377 (WebKitStyleTest.test_braces):
18378 (WebKitStyleTest.test_braces.NS_OPTIONS):
18380 2017-08-07 Brian Burg <bburg@apple.com>
18382 Remove CANVAS_PATH compilation guard
18383 https://bugs.webkit.org/show_bug.cgi?id=175207
18385 Reviewed by Sam Weinig.
18387 * Scripts/webkitperl/FeatureList.pm:
18388 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18390 2017-08-07 Per Arne Vollan <pvollan@apple.com>
18392 [Win] Use Visual Studio 2017 if installed.
18393 https://bugs.webkit.org/show_bug.cgi?id=175188
18395 Reviewed by Sam Weinig.
18397 If installed, use VS2017 to build WebKit. If not, fall back to VS2015.
18399 * Scripts/webkitdirs.pm:
18400 (visualStudioInstallDir):
18401 (msBuildInstallDir):
18403 2017-08-05 Carlos Garcia Campos <cgarcia@igalia.com>
18405 [GTK][WPE] Add API to provide browser information required by automation
18406 https://bugs.webkit.org/show_bug.cgi?id=175130
18408 Reviewed by Michael Catanzaro.
18410 * MiniBrowser/gtk/main.c:
18411 (automationStartedCallback): Set browser information when a new automation session is started.
18412 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
18413 (testAutomationSessionApplicationInfo):
18416 2017-08-06 Ryan Haddad <ryanhaddad@apple.com>
18418 Unreviewed, rolling out r220295.
18420 This change introduced 4 errors in webkitpy tests.
18422 Reverted changeset:
18424 "[XCode] webkit-patch should run sort-Xcode-project-file"
18425 https://bugs.webkit.org/show_bug.cgi?id=174036
18426 http://trac.webkit.org/changeset/220295
18428 2017-08-04 Ryan Haddad <ryanhaddad@apple.com>
18430 Disable API test NowPlayingControlsTests.NowPlayingControlsIOS.
18432 Unreviewed test gardening.
18434 * TestWebKitAPI/Tests/WebKit2Cocoa/NowPlayingControlsTests.mm:
18435 (TestWebKitAPI::TEST):
18437 2017-08-05 Filip Pizlo <fpizlo@apple.com>
18439 REGRESSION (r219895-219897): Number of leaks on Open Source went from 9240 to 235983 and is now at 302372
18440 https://bugs.webkit.org/show_bug.cgi?id=175083
18442 Reviewed by Oliver Hunt.
18444 Leaks results are super confusing if leaks runs while some VMs are destructing. This calls a new SPI
18445 to wait for VM destructions to finish before running the next test. This makes it easier to
18446 understand leaks results from workers tests, and leads to fewer reported leaks.
18448 * DumpRenderTree/mac/DumpRenderTree.mm:
18451 2017-08-05 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
18453 check-webkit-style: fix path-specific rules for WebKit2 rename
18454 https://bugs.webkit.org/show_bug.cgi?id=175182
18456 Reviewed by David Kilzer.
18458 * Scripts/webkitpy/style/checker.py:
18460 2017-08-04 Youenn Fablet <youenn@apple.com>
18462 [Cache API] Add Cache and CacheStorage IDL definitions
18463 https://bugs.webkit.org/show_bug.cgi?id=175201
18465 Reviewed by Brady Eidson.
18467 * DumpRenderTree/mac/DumpRenderTree.mm:
18468 (enableExperimentalFeatures):
18469 (resetWebPreferencesToConsistentValues):
18470 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
18471 (WTR::InjectedBundle::beginTesting):
18472 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
18473 (WTR::TestRunner::setCacheAPIEnabled):
18474 * WebKitTestRunner/InjectedBundle/TestRunner.h:
18476 2017-08-04 John Wilander <wilander@apple.com>
18478 Resource Load Statistics: Report user interaction immediately, but only when needed
18479 https://bugs.webkit.org/show_bug.cgi?id=175090
18480 <rdar://problem/33685546>
18482 Reviewed by Chris Dumez.
18484 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
18485 (WTR::InjectedBundle::beginTesting):
18486 Now calls WebCore::ResourceLoadObserver::clearState().
18488 2017-08-04 Tim Horton <timothy_horton@apple.com>
18490 Add an API test for r220286
18491 https://bugs.webkit.org/show_bug.cgi?id=175206
18493 Reviewed by Simon Fraser.
18495 * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
18496 (-[AnimatedResizeWebView _webView:didChangeSafeAreaShouldAffectObscuredInsets:]):
18497 (createAnimatedResizeWebView):
18499 Add a test to ensure that we don't call
18500 _webView:didChangeSafeAreaShouldAffectObscuredInsets: during an
18503 2017-08-04 Stephan Szabo <stephan.szabo@sony.com>
18505 [XCode] webkit-patch should run sort-Xcode-project-file
18506 https://bugs.webkit.org/show_bug.cgi?id=174036
18508 Reviewed by Simon Fraser.
18510 * Scripts/webkitpy/common/config/ports.py:
18511 * Scripts/webkitpy/tool/commands/download.py:
18512 * Scripts/webkitpy/tool/commands/upload.py:
18513 * Scripts/webkitpy/tool/steps/__init__.py:
18514 * Scripts/webkitpy/tool/steps/options.py:
18515 * Scripts/webkitpy/tool/steps/sortxcodeprojectfiles.py: Added.
18517 2017-08-04 Carlos Alberto Lopez Perez <clopez@igalia.com>
18519 REGRESSION(r219857): run-benchmark --allplans broken
18520 https://bugs.webkit.org/show_bug.cgi?id=175186
18522 Reviewed by Saam Barati.
18524 r219857 forgot to update also the calls to BenchmarkRunner() that
18525 is done when the script is run with --allplans.
18527 To fix this (and avoid future issues like this), let's factorize
18528 the calls to the benchhmark runner in a run_benchmark_plan()
18531 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
18532 (run_benchmark_plan):
18535 2017-08-04 Aakash Jain <aakash_jain@apple.com>
18537 Dashboard bubbles sometimes show failure count instead of crash count
18538 https://bugs.webkit.org/show_bug.cgi?id=175157
18539 <rdar://problem/33709009>
18541 Reviewed by Alexey Proskuryakov.
18543 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTestResults.js:
18544 (BuildbotTestResults.prototype.resultSummarizer): Use the regex for the precise match first.
18546 2017-08-04 Joseph Pecoraro <pecoraro@apple.com>
18548 Add tests for NeverDestroyed
18549 https://bugs.webkit.org/show_bug.cgi?id=175146
18551 Reviewed by Darin Adler.
18554 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18555 New files and sort.
18557 * TestWebKitAPI/Tests/WTF/Logger.h:
18558 * TestWebKitAPI/Tests/WTF/Logger.cpp:
18559 (TestWebKitAPI::log):
18560 (TestWebKitAPI::takeLogStr):
18561 * TestWebKitAPI/Tests/WTF/RefLogger.h:
18562 * TestWebKitAPI/Tests/WTF/RefLogger.cpp:
18563 (TestWebKitAPI::log): Deleted.
18564 (TestWebKitAPI::takeLogStr): Deleted.
18565 Extract log() / takeLogStr() from RefLogger to a general Logger.h/cpp.
18567 * TestWebKitAPI/Tests/WTF/LifecycleLogger.h:
18568 * TestWebKitAPI/Tests/WTF/LifecycleLogger.cpp: Added.
18569 (TestWebKitAPI::LifecycleLogger::LifecycleLogger):
18570 (TestWebKitAPI::LifecycleLogger::operator=):
18571 (TestWebKitAPI::LifecycleLogger::~LifecycleLogger):
18572 (TestWebKitAPI::LifecycleLogger::setName):
18573 (TestWebKitAPI::TEST):
18574 Add a class that logs construction / assignment / modifications.
18576 * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp: Added.
18577 (TestWebKitAPI::TEST):
18578 (TestWebKitAPI::list):
18579 Test construction behavior is as expected both directly and using makeNeverDestroyed.
18581 2017-08-04 Lucas Forschler <lforschler@apple.com>
18583 minification logic is not implemented for ios builds
18584 <rdar://problem/33726561>
18586 Reviewed by Dean Johnson
18588 * BuildSlaveSupport/built-product-archive:
18589 (minifyDirectory): refactor minifySource -> minifyDirectory
18590 (archiveBuiltProduct): add ios minification logic
18591 (minifySource): Deleted.
18593 2017-08-04 Matt Lewis <jlewis3@apple.com>
18595 Unreviewed, rolling out r220271.
18597 Rolling out due to Layout Test failing on iOS Simulator.
18599 Reverted changeset:
18601 "Remove STREAMS_API compilation guard"
18602 https://bugs.webkit.org/show_bug.cgi?id=175165
18603 http://trac.webkit.org/changeset/220271
18605 2017-08-04 Ryan Haddad <ryanhaddad@apple.com>
18607 Unreviewed, rolling out r220268.
18609 This change caused assertion failures on macOS and iOS Debug
18612 Reverted changeset:
18614 "Resource Load Statistics: Report user interaction
18615 immediately, but only when needed"
18616 https://bugs.webkit.org/show_bug.cgi?id=175090
18617 http://trac.webkit.org/changeset/220268
18619 2017-08-04 Youenn Fablet <youenn@apple.com>
18621 Remove STREAMS_API compilation guard
18622 https://bugs.webkit.org/show_bug.cgi?id=175165
18624 Reviewed by Darin Adler.
18626 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18628 2017-08-04 John Wilander <wilander@apple.com>
18630 Resource Load Statistics: Report user interaction immediately, but only when needed
18631 https://bugs.webkit.org/show_bug.cgi?id=175090
18632 <rdar://problem/33685546>
18634 Reviewed by Chris Dumez.
18636 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
18637 (WTR::InjectedBundle::beginTesting):
18638 Now calls WebCore::ResourceLoadObserver::clearState().
18640 2017-08-03 Brian Burg <bburg@apple.com>
18642 Remove ENABLE(WEB_SOCKET) guards
18643 https://bugs.webkit.org/show_bug.cgi?id=167044
18645 Reviewed by Joseph Pecoraro.
18647 * Scripts/webkitperl/FeatureList.pm:
18648 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18650 2017-08-03 Carlos Alberto Lopez Perez <clopez@igalia.com>
18652 REGRESSION(r219850): run-benchmark script broken on Linux
18653 https://bugs.webkit.org/show_bug.cgi?id=175126
18655 Reviewed by Stephanie Lewis.
18657 The run-benchmark script dynamically generates the list of supported
18658 browsers and platforms (currently Linux and OSX) by loading all
18659 python files from Tools/Scripts/webkitpy/benchmark_runner/browser_driver
18660 and getting the browser_name and platform variables from the
18661 classes defined there.
18663 This means that this classes should not raise an exception when
18664 loaded on other platforms or otherwise they will broke the whole
18665 script. Its fine if they raise an exception when executing any of
18666 the methods they implement, but not when just loading/importing
18669 Move the argument variable definitions that call on the platform
18670 specific OSXBrowserDriver._screen_size() function from beeing
18671 variables that are evaluated when loading the file, to be functions
18672 that are only evaluated when the actual functionality needs to be
18675 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
18676 (OSXChromeDriver.launch_url):
18677 (OSXChromeCanaryDriver.launch_url):
18679 (create_chrome_options):
18680 (create_window_size_arg):
18681 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
18682 (OSXFirefoxDriver.launch_url):
18683 (OSXFirefoxNightlyDriver.launch_url):
18684 (OSXFirefoxNightlyDriver.launch_driver):
18687 2017-08-03 Yoshiaki Jitsukawa <jitsu@rd.scei.sony.co.jp>
18689 [PAL] Move spi/cf directory into PAL
18690 https://bugs.webkit.org/show_bug.cgi?id=175057
18692 Reviewed by Antti Koivisto.
18694 * Scripts/webkitpy/style/checker.py:
18695 * Scripts/webkitpy/style/checker_unittest.py:
18696 (GlobalVariablesTest.test_path_rules_specifier):
18698 Ignore "readability/naming/underscores" style errors for sources
18699 under the WebCore/PAL/pal/spi directory.
18701 * TestWebKitAPI/Tests/WebKit2Cocoa/CookieAcceptPolicy.mm:
18703 2017-08-03 Youenn Fablet <youenn@apple.com>
18705 Remove FETCH_API compilation guard
18706 https://bugs.webkit.org/show_bug.cgi?id=175154
18708 Reviewed by Chris Dumez.
18710 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18712 2017-08-03 Lucas Forschler <lforschler@apple.com>
18714 Enable archive minification on iOS builds
18715 https://bugs.webkit.org/show_bug.cgi?id=174718
18717 Reviewed by Aakash Jain.
18719 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
18720 (BuildFactory.__init__):
18722 2017-08-03 Carlos Alberto Lopez Perez <clopez@igalia.com>
18724 [GTK][WKE] Pass the --memory-limited option on the GTK and WPE buildbots for the JSC tests.
18725 https://bugs.webkit.org/show_bug.cgi?id=175140
18727 Reviewed by Alexey Proskuryakov.
18729 We are having lately issues with JSC tests causing problems on
18730 the GTK+ and WPE bots due to the high amount of memory some tests
18733 The best thing we can do now is to workaround this by disabling
18734 all the tests marked as memoryLimited on the GTK and WPE bots.
18735 We may revise this on the future.
18737 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
18738 (RunJavaScriptCoreTests.start):
18740 2017-08-03 Brady Eidson <beidson@apple.com>
18742 Add SW IDLs and stub out basic functionality.
18743 https://bugs.webkit.org/show_bug.cgi?id=175115
18745 Reviewed by Chris Dumez.
18747 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18749 * Scripts/webkitpy/bindings/main.py:
18751 2017-08-03 Per Arne Vollan <pvollan@apple.com>
18753 [Win] The test http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/basic-upgrade.https.html is failing.
18754 https://bugs.webkit.org/show_bug.cgi?id=159510
18756 Reviewed by Daniel Bates.
18758 Allow any https certificate when running tests.
18760 * DumpRenderTree/win/DumpRenderTree.cpp:
18763 2017-08-02 Youenn Fablet <youenn@apple.com>
18765 HTTP tests with 'https' suffix are only run over HTTPS for WK2, not WK1
18766 https://bugs.webkit.org/show_bug.cgi?id=175089
18768 Reviewed by Chris Dumez.
18770 * DumpRenderTree/TestOptions.mm:
18771 (TestOptions::TestOptions): Using absolutePath if available.
18772 * DumpRenderTree/mac/DumpRenderTree.mm:
18773 (computeTestURL): Removing http/tests/ specific URL computation.
18774 * Scripts/webkitpy/port/driver.py:
18775 (Driver._command_from_driver_input): Making webkitpy passing HTTP urls for HTTP served tests to all test runners, including WK1.
18777 2017-08-02 Lucas Forschler <lforschler@apple.com>
18779 download-built-product should allow for a proxy option
18780 https://bugs.webkit.org/show_bug.cgi?id=174875
18782 Reviewed by Aakash Jain, Alexey Proskuryakov, Dean Johnson
18784 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
18785 (DownloadBuiltProduct.start): Teach buildbot to pass along proxy for Apple bots
18788 2017-08-02 Jonathan Bedard <jbedard@apple.com>
18790 check-webkit-style: deleting lines in a file runs the linter on the whole file
18791 https://bugs.webkit.org/show_bug.cgi?id=175078
18793 Reviewed by David Kilzer.
18795 Deleting lines in a file should not cause linter errors to be blamed on the patch.
18796 <https://bugs.webkit.org/show_bug.cgi?id=86142> is an example of this happening.
18798 * Scripts/webkitpy/style/checkers/test_expectations.py:
18799 (TestExpectationsChecker._should_log_linter_warning): Do not log a linter error if the file it is associated with only has deleted lines
18800 * Scripts/webkitpy/style/main_unittest.py:
18801 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line): Added files should have every line number in the file when processing.
18802 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_only_deletes): Test case where the file with the linter errors only contained deletes.
18803 (ExpectationLinterInStyleCheckerTest.test_linter_added_file_with_error): Added files should have every line number in the file when processing.
18805 2017-08-02 Jonathan Bedard <jbedard@apple.com>
18807 webkitpy: Allow caller to specify response to unicode encode/decode error in filesystem
18808 https://bugs.webkit.org/show_bug.cgi?id=175075
18810 Reviewed by David Kilzer.
18812 We have no way of handling text files with illegal unicode characters. Allow the callers of
18813 filesystem.read_text_file to specify one of Python 2.7's supported responses ('strict', 'ignore', or
18814 'replace'). See https://docs.python.org/2/howto/unicode.html for details on these responses.
18816 * Scripts/webkitpy/common/system/filesystem.py:
18817 (FileSystem.read_text_file): Allow caller to specify unicode error handling.
18818 (FileSystem.write_text_file): Ditto.
18819 * Scripts/webkitpy/common/system/filesystem_mock.py:
18820 (MockFileSystem.read_text_file): Allow caller to specify unicode error handling.
18821 (MockFileSystem.write_text_file): Ditto.
18822 * Scripts/webkitpy/common/system/filesystem_unittest.py:
18823 (RealFileSystemTest.test_read_text_file_unicode_decode_error): Test reading a file with illegal unicode content.
18824 (RealFileSystemTest.test_write_text_file_unicode_encode_error): Test writing illegal unicode content to a file.
18826 2017-08-02 Aakash Jain <aakash_jain@apple.com>
18828 Intermittent exception in buildPageURLForIteration for Buildbot 0.9 dashboard
18829 https://bugs.webkit.org/show_bug.cgi?id=175072
18831 Reviewed by Alexey Proskuryakov.
18833 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
18834 (Buildbot): Make sure this._builderNameToIDMap is always defined for Buildbot 0.9.
18836 2017-08-02 Michael Catanzaro <mcatanzaro@igalia.com>
18838 [CMake] Remove obsolete code in TestWebKitAPI/CMakeLists.txt
18839 https://bugs.webkit.org/show_bug.cgi?id=175019
18841 Reviewed by Darin Adler.
18843 * TestWebKitAPI/CMakeLists.txt:
18845 2017-08-01 Csaba Osztrogonác <ossy@webkit.org>
18847 Enabling uploading archives to S3
18848 https://bugs.webkit.org/show_bug.cgi?id=174198
18850 Unreviewed unit test fix after r219235.
18852 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
18854 2017-08-01 Csaba Osztrogonác <ossy@webkit.org>
18856 Fix JSCOnly ARM buildbots after r220047
18857 https://bugs.webkit.org/show_bug.cgi?id=174993
18859 Unreviewed fix after r220087.
18861 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
18862 (BuildAndRemoteJSCTestsFactory.__init__):
18864 2017-08-01 Chris Dumez <cdumez@apple.com>
18866 Add initial support for navigator.sendBeacon
18867 https://bugs.webkit.org/show_bug.cgi?id=175007
18868 <rdar://problem/33547728>
18870 Reviewed by Sam Weinig.
18872 Enable the Beacon API at runtime in the context of layout tests since the
18873 feature is currently disabled by default.
18875 * DumpRenderTree/mac/DumpRenderTree.mm:
18876 (enableExperimentalFeatures):
18877 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
18878 (WTR::InjectedBundle::beginTesting):
18879 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
18880 (WTR::TestRunner::setModernMediaControlsEnabled):
18881 (WTR::TestRunner::setBeaconAPIEnabled):
18882 * WebKitTestRunner/InjectedBundle/TestRunner.h:
18884 2017-08-01 Aakash Jain <aakash_jain@apple.com>
18886 Update Bot Watcher's Dashboard for Buildbot 0.9
18887 https://bugs.webkit.org/show_bug.cgi?id=174777
18889 Reviewed by Daniel Bates.
18891 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
18892 (Buildbot): Check if USE_BUILDBOT_VERSION_LESS_THAN_09 is passed.
18893 (Buildbot.prototype._computeBuilderNameToIDMap): Fetch the builder name to ID mapping from buidbot and store
18895 (Buildbot.prototype.buildPageURLForIteration): Updated URL as per Buildbot 0.9 format. Buildbot 0.9 currently does not support
18896 builder name in the build url. See <https://github.com/buildbot/buildbot/issues/3465>.
18897 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
18898 (isMultiCodebaseGotRevisionProperty): Adapting to new data format.
18899 (parseRevisionProperty): Ditto.
18900 (BuildbotIteration.prototype.failureLogURL): Return the URL to build page if precise failure url is not available. For
18901 Buildbot 0.9, build page URL would be appropriate in most cases as per the new UI.
18902 (BuildbotIteration.prototype._parseData): Parsing the data as per new data format. Many variable names and data types
18903 have changed in Buildbot 0.9.
18904 (BuildbotIteration.prototype._adjustBuildDataForBuildbot09): Adjust the Buildbot 0.8 data to new format.
18905 (BuildbotIteration.prototype._updateIfDataAvailable): Update method for Buildbot 0.9 data. We are performing two API calls,
18906 one for build information, another for step information of that build. We need to wait until data from both REST API calls are available.
18907 (BuildbotIteration.prototype._deprecatedUpdateWithData): Renamed from _updateWithData, used for Buildbot 0.8 data.
18908 (BuildbotIteration.prototype.get buildURL): URL to fetch build information from Buildbot. Also fetches got_revision property.
18909 (BuildbotIteration.prototype.get buildStepsURL): URL to fetch the steps information from Buildbot.
18910 (BuildbotIteration.prototype.urlFailedToLoad): Callback method to be used when URL fails to load. Made it a separate function now.
18911 (BuildbotIteration.prototype.update): Modified to support both Buildbot 0.9 and 0.8 data format.
18912 (BuildbotIteration.prototype.actualUpdate): Update method for Buildbot 0.9 data.
18913 (BuildbotIteration.prototype.deprecatedUpdate): Update method for Buildbot 0.8 data.
18914 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
18915 (BuildbotQueue.prototype.get baseURL): Updated URL as per Buildbot 0.9 format.
18916 (BuildbotQueue.prototype.get allIterationsURL): Ditto.
18917 (BuildbotQueue.prototype.get overviewURL): Ditto.
18918 (BuildbotQueue.prototype.get buildsURL): URL to fetch builds data in Buildbot 0.9.
18919 (BuildbotQueue.prototype.get buildsInfoURL): Returns the appropriate URL to use to fetch builds information from
18920 Buildbot 0.8 or 0.9.
18921 (BuildbotQueue.prototype.getBuilds): Method compatible with both Buildbot 0.8 and 0.9 to get build information from data
18922 fetched from Buildbot. Also, reversing the Buildbot 0.8 data to make it similar to 0.9 data format.
18923 (BuildbotQueue.prototype.isBuildComplete): Method compatible with both Buildbot 0.8 and 0.9 to check if the build has completed.
18924 (BuildbotQueue.prototype.getIterationID): Method compatible with both Buildbot 0.8 and 0.9 to get the Iteration ID.
18925 (BuildbotQueue.prototype.update): Supports both Buildbot 0.8 and 0.9. Buildbot 0.9 REST API doesn't have cachedBuilds and currentBuilds.
18926 Therefore we are fetching information for fixed number of build.
18927 Also iterating the loop incrementally since the build data is already reverse sorted.
18928 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTestResults.js:
18929 (BuildbotTestResults.prototype._parseResults): Updated as per Buildbot 0.9 format. Note that we do not
18930 need to worry about 0.8 or 0.9 data format here, since the data is already converted to 0.9 format.
18931 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
18932 (WebKitBuildbot): Pass the USE_BUILDBOT_VERSION_LESS_THAN_09 flag.
18934 2017-08-01 Devin Rousso <drousso@apple.com>
18936 Web Inspector: simplify WebInspector with WI
18937 https://bugs.webkit.org/show_bug.cgi?id=175058
18939 Reviewed by Joseph Pecoraro.
18941 * Scripts/check-inspector-strings:
18942 (extract_ui_strings):
18943 * Scripts/extract-localizable-js-strings:
18945 2017-08-01 Youenn Fablet <youenn@apple.com>
18947 Layout tests with 'https' suffix should be run over HTTPS
18948 https://bugs.webkit.org/show_bug.cgi?id=174992
18950 Reviewed by Chris Dumez.
18952 Updating the test-name <-> uri conversion routines to use https when test names contain ".https." in them.
18953 This covers WPT tests, WPT WebKit tests and HTTP layout tests.
18954 Covered by corresponding unit tests.
18956 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
18958 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
18961 (base_url): Deleted.
18962 * Scripts/webkitpy/port/base.py:
18963 (Port.to.web_platform_test_server_base_http_url):
18965 (Port.to.web_platform_test_server_base_https_url):
18966 (Port.to.web_platform_test_server_base_url): Deleted.
18967 * Scripts/webkitpy/port/driver.py:
18969 (Driver.wpt_test_path_to_uri):
18971 (Driver.http_test_path_to_uri):
18972 (Driver.test_to_uri):
18973 (Driver.uri_to_test):
18974 * Scripts/webkitpy/port/driver_unittest.py:
18975 (DriverTest.test_test_to_uri):
18976 (DriverTest.test_uri_to_test):
18978 2017-07-26 Jiewen Tan <jiewen_tan@apple.com>
18980 Add tests to detect mistakes in backward compatibility when the structured clone algorithm is changed in the future
18981 https://bugs.webkit.org/show_bug.cgi?id=173998
18983 Reviewed by Darin Adler.
18985 Since the structured clone algorithm is used for data stored in persistent databases, we need tests to help us
18986 detect mistakes in backward compatibility in the future when we change it.
18988 The way it works is to read from a pre-baked database and see if all the values are matched with the expectations.
18989 Surprisedly, some of structured clonable objects cannot be stored into the indexedDB. Those are FileList,
18990 ObjectReference, MessagePortReference, ArrayBufferView, ArrayBufferTransfer, NonMapProperties, NonSetProperties,
18991 SharedArrayBuffer, WasmModule, DOMPointReadOnly, DOMPoint, DOMRectReadOnly, DOMRect, DOMMatrixReadOnly, DOMMatrix,
18992 DOMQuad and Error. CryptoKey objects are not included as well as they need new API for encrypting/decrypting the
18993 internal key data slot.
18995 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18996 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.mm: Added.
18997 (-[IndexedDBStructuredCloneBackwardCompatibilityMessageHandler userContentController:didReceiveScriptMessage:]):
19000 Here is the API test that moves the pre-baked database to the location where TestWebKitAPI can read from.
19001 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3: Added.
19002 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm: Added.
19003 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal: Added.
19004 These are the pre-baked databases.
19005 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibilityRead.html: Added.
19006 This is the actual test that do all the reads and comparisons.
19007 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBStructuredCloneBackwardCompatibilityWrite.html: Added.
19008 This is the page that bakes the database. It never runs automatically. It is for someone who needs to teach
19009 IndexedDB new stuffs. Then it can be used to bake the database again.
19011 2017-08-01 Brady Eidson <beidson@apple.com>
19013 API test URLSchemeHandler.Exceptions is Exiting out early on macOS Debug..
19014 https://bugs.webkit.org/show_bug.cgi?id=175030
19016 Reviewed by Andy Estes.
19018 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
19019 (-[TaskSchemeHandler webView:startURLSchemeTask:]): Stop calling an invalid NSError constructor.
19021 2017-08-01 Brady Eidson <beidson@apple.com>
19023 Part 2 of: Rename DatabaseProcess to StorageProcess.
19024 https://bugs.webkit.org/show_bug.cgi?id=174880
19026 Reviewed by Andy Estes.
19028 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBDeleteRecovery.mm:
19029 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.mm:
19030 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBDatabaseProcessKill.mm:
19031 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm:
19032 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBPersistence.mm:
19033 * TestWebKitAPI/Tests/WebKit2Cocoa/ResourceLoadStatistics.mm:
19034 * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
19035 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
19037 2017-07-31 Csaba Osztrogonác <ossy@webkit.org>
19039 Fix JSCOnly ARM buildbots after r220047
19040 https://bugs.webkit.org/show_bug.cgi?id=174993
19042 Reviewed by Saam Barati.
19044 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
19045 (BuildAndRemoteJSCTestsFactory.__init__):
19047 2017-07-30 Yusuke Suzuki <utatane.tea@gmail.com>
19049 [WTF] Introduce Private Symbols
19050 https://bugs.webkit.org/show_bug.cgi?id=174935
19052 Reviewed by Darin Adler.
19054 * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
19055 (TestWebKitAPI::TEST):
19057 2017-07-30 Darin Adler <darin@apple.com>
19059 Remove code in HTMLObjectElement attribute parsing that forces style resolution and layout
19060 https://bugs.webkit.org/show_bug.cgi?id=130653
19062 Reviewed by Antti Koivisto.
19064 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
19065 (WTR::InjectedBundlePage::didFinishLoadForFrame): Omit now-unneeded "shouldDump" argument
19066 when calling frameDidChangeLocation.
19067 (WTR::InjectedBundlePage::frameDidChangeLocation): Removed "shouldDump" argument. This was
19068 causing WebKitTestRunner to not dump anything in cases where DumpRenderTree will dump, and
19069 thus causing mysterious failures of a couple of tests. There are two remaining issues:
19070 1) WebKitTestRunner won't run its dump code if there is no "page", and there is no such
19071 consideration in DumpRenderTree and 2) Both DumpRenderTree and WebKitTestRunner share the
19072 same logic flaw that causes "top loading frame" to get set to one of the subframes in
19073 tests where the following sequence occurs: test calls waitUntilDone, main frame finishes
19074 loading, subframe starts loading. It would be good to clean that up some day, but for now
19075 this patch makes the two work identically rather than changing both.
19076 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h: Updated for change above.
19078 2017-07-30 Wenson Hsieh <wenson_hsieh@apple.com>
19080 [WK2] Replace RetainPtr<> with auto when adopting allocated ObjC objects in DataInteractionTests
19081 https://bugs.webkit.org/show_bug.cgi?id=174963
19083 Reviewed by Darin Adler.
19085 Replaces several uses of RetainPtr<>s with auto. Some test cases in this file use auto, while other test cases declare using
19086 RetainPtr<>. This patch changes them to all use auto.
19088 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
19089 (TestWebKitAPI::TEST):
19091 2017-07-30 Brady Eidson <beidson@apple.com>
19093 Add URLSchemeHandler API tests that verify the lack of URLSchemeTask object leaks.
19094 https://bugs.webkit.org/show_bug.cgi?id=174958
19096 Reviewed by Darin Adler.
19098 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
19099 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-leaks.mm: Added.
19100 (-[LeakSchemeHandler webView:startURLSchemeTask:]):
19101 (-[LeakSchemeHandler webView:stopURLSchemeTask:]):
19102 (runUntilTasksInFlight):
19105 2017-07-28 Commit Queue <commit-queue@webkit.org>
19107 Unreviewed, rolling out r219990.
19108 https://bugs.webkit.org/show_bug.cgi?id=174961
19110 "broke PLT on iOS (rdar://problem/33602751)" (Requested by
19113 Reverted changeset:
19115 "Part 2 of: Rename DatabaseProcess to StorageProcess."
19116 https://bugs.webkit.org/show_bug.cgi?id=174880
19117 http://trac.webkit.org/changeset/219990
19119 2017-07-28 Brady Eidson <beidson@apple.com>
19121 API tests that use URLSchemeHandler are failing.
19122 https://bugs.webkit.org/show_bug.cgi?id=174950
19124 Reviewed by Alex Christensen.
19126 Fix the NoMIMEType test to be correct.
19128 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
19129 (-[SchemeHandler initWithData:mimeType:]):
19130 (-[SchemeHandler webView:startURLSchemeTask:]):
19133 2017-07-28 Daniel Bates <dabates@apple.com>
19135 prepare-ChangeLog should not list added layout tests in PAL ChangeLog
19136 https://bugs.webkit.org/show_bug.cgi?id=174876
19138 Reviewed by Alex Christensen.
19140 Do not list added layout tests in the PAL ChangeLog as such tests are unlikely to be related
19141 to a PAL change. Unit tests are more appropriate for PAL changes than layout tests because
19142 they provide a more direct way to test the platform abstraction.
19144 As a side effect of this change we no longer list added layout tests in WebCore/platform/gtk/po/ChangeLog.
19146 * Scripts/prepare-ChangeLog:
19147 (generateNewChangeLogs): Only list added layout tests in the WebCore ChangeLog regardless
19148 of the current working directory.
19150 2017-07-28 Jonathan Bedard <jbedard@apple.com>
19152 Using "auto <function()> -> returnType" breaks prepare-ChangeLog
19153 https://bugs.webkit.org/show_bug.cgi?id=174930
19155 Unreviewed test fix.
19157 We need to check parentheses before printing 'const' or 'volatile' in the ChangeLog.
19159 * Scripts/prepare-ChangeLog:
19160 (get_function_line_ranges_for_cpp):
19162 2017-07-28 JF Bastien <jfbastien@apple.com>
19164 Using "auto <function()> -> returnType" breaks prepare-ChangeLog
19165 https://bugs.webkit.org/show_bug.cgi?id=174930
19167 Reviewed by Daniel Bates.
19169 Teach prepare-ChangeLog about C++ auto arrow return, and while I'm
19170 here also teach it about const and volatile overloads. I didn't do
19171 reference and rvalue reference overloads because we don't really
19172 use them, and the current parser throws away those characters and
19173 it doesn't seem worth making it more complex.
19175 * Scripts/prepare-ChangeLog:
19176 (get_function_line_ranges_for_cpp):
19177 * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/cpp_unittests-expected.txt:
19178 * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/cpp_unittests.cpp:
19179 (Foo::Arrow::arrow):
19180 (Foo::Arrow::otherArrow):
19181 (Foo::Arrow::otherArrow const):
19182 (Foo::Arrow::otherArrow volatile):
19183 (Foo::Arrow::otherArrow const volatile):
19185 2017-07-28 Adrian Perez de Castro <aperez@igalia.com>
19187 [GTK] Building with ENABLE_VIDEO=OFF fails
19188 https://bugs.webkit.org/show_bug.cgi?id=174940
19190 Reviewed by Alex Christensen.
19192 When GStreamer usage is completely disabled at build time, CMake does not query pkg-config for the GStreamer.
19193 This adds missing USE(GSTREAMER) guards in order to make testing code buildable when GStreamer usage is disabled.
19195 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
19196 (methodCallCallback): Add missing USE(GSTREAMER) guard.
19198 2017-07-28 Claudio Saavedra <csaavedra@igalia.com>
19200 [WPE] Implement EventSenderProxy in WTR
19201 https://bugs.webkit.org/show_bug.cgi?id=173419
19203 Reviewed by Žan Doberšek.
19205 Add the implementation of EventSenderProxy to the WTR. This
19206 allows us to extend the coverage of the test suite in WKWPE.
19208 * WebKitTestRunner/EventSenderProxy.h:
19209 * WebKitTestRunner/PlatformWPE.cmake: Add dependency on
19210 libxkbcommon needed to deal with key events.
19211 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
19212 (WTR::EventSenderProxy::EventSenderProxy):
19213 (WTR::senderButtonToWPEButton):
19214 (WTR::EventSenderProxy::mouseDown):
19215 (WTR::EventSenderProxy::mouseUp):
19216 (WTR::EventSenderProxy::mouseMoveTo):
19217 (WTR::EventSenderProxy::mouseScrollBy):
19218 (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
19219 (WTR::EventSenderProxy::leapForward):
19220 (WTR::wkEventModifiersToWPE):
19221 (WTR::getXKBKeySymForKeyRef):
19222 (WTR::EventSenderProxy::keyDown):
19223 (WTR::EventSenderProxy::addTouchPoint):
19224 (WTR::EventSenderProxy::updateTouchPoint):
19225 (WTR::EventSenderProxy::setTouchModifier):
19226 (WTR::EventSenderProxy::setTouchPointRadius):
19227 (WTR::EventSenderProxy::getUpdatedTouchEvents):
19228 (WTR::EventSenderProxy::removeUpdatedTouchEvents):
19229 (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
19230 (WTR::EventSenderProxy::touchStart):
19231 (WTR::EventSenderProxy::touchMove):
19232 (WTR::EventSenderProxy::touchEnd):
19233 (WTR::EventSenderProxy::touchCancel):
19234 (WTR::EventSenderProxy::clearTouchPoints):
19235 (WTR::EventSenderProxy::releaseTouchPoint):
19236 (WTR::EventSenderProxy::cancelTouchPoint):
19238 2017-07-27 Brady Eidson <beidson@apple.com>
19240 Part 2 of: Rename DatabaseProcess to StorageProcess.
19241 https://bugs.webkit.org/show_bug.cgi?id=174880
19243 Reviewed by Andy Estes.
19245 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBDeleteRecovery.mm:
19246 * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.mm:
19247 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBDatabaseProcessKill.mm:
19248 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm:
19249 * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBPersistence.mm:
19250 * TestWebKitAPI/Tests/WebKit2Cocoa/ResourceLoadStatistics.mm:
19251 * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
19252 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
19254 2017-07-26 Mark Lam <mark.lam@apple.com>
19256 Add ability to only run specific tests in run-javascriptcore-tests.
19257 https://bugs.webkit.org/show_bug.cgi?id=174884
19259 Reviewed by Saam Barati.
19261 For example, if we only want to run testapi, we can do so as follows:
19262 $ run-javascriptcore-tests --testapi
19264 Previously, specifying --testapi effectively does nothing because we run all tests
19265 by default. Only --no-testapi had the effect of disabling the test set. This
19266 old behavior for --testapi is not very useful or meaningful. We're now changing
19267 it to mean that we will only run that test.
19269 With this change, we can also run more than one set of tests. For example, if we
19270 only want to run testmasm and testair, we can do so as follows:
19271 $ run-javascriptcore-tests --testmasm --testair
19273 By default, if no specific test option is specified, run-javascriptcore-tests will
19276 Note that the jsc stress tests (--jsc-stress) are a different set of tests than
19277 the mozilla tests (--mozilla-tests) even though both are run via the lower level
19278 run-jsc-stress-tests test harness. Hence, if you only specify one of the tests,
19279 the other set will not run. For example, the following only runs the mozilla tests:
19280 $ run-javascriptcore-tests --mozilla-tests
19282 Note also that --jit-stress-tests is not for choosing a different set of tests.
19283 Instead, it is used for determining whether we run JIT'ed test configurations
19284 on the jsc stress tests and mozilla tests. As a result, specifying
19285 --jit-stress-tests will not omit other tests. For example, the following still
19287 $ run-javascriptcore-tests --jit-stress-tests
19289 * Scripts/run-javascriptcore-tests:
19290 (defaultStringForTestState):
19292 (runJSCStressTests):
19294 2017-07-26 Mark Lam <mark.lam@apple.com>
19296 Make run-javascriptcore-test run testair, testb3, and testmasm.
19297 https://bugs.webkit.org/show_bug.cgi?id=174837
19298 <rdar://problem/33522927>
19300 Reviewed by Saam Barati and Filip Pizlo.
19302 1. Refactors code for running testapi so that we can use it to run other tests.
19303 2. Added running of testmasm, testair, testb3.
19305 Note: the existing testapi invocation code does not support remote invocation of
19306 the tests (e.g. on a ARM device). Hence, the new additions of testmasm, testair,
19307 and testb3 also do not support remote invocation. If we wish to add remote
19308 invocation support, we should do that in a separate patch.
19310 * Scripts/run-javascriptcore-tests:
19313 (testapiPath): Deleted.
19315 2017-07-26 Aakash Jain <aakash_jain@apple.com>
19317 Remove duplicate code from Buildbot.js in dashboard
19318 https://bugs.webkit.org/show_bug.cgi?id=174870
19320 Reviewed by Daniel Bates.
19322 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
19323 (Buildbot.prototype.javaScriptCoreTestFailuresURLForIteration): Remove duplicate code and reuse buildPageURLForIteration() to construct URL.
19324 (Buildbot.prototype.javaScriptCoreTestStdioUrlForIteration): Ditto.
19325 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockBuildbot.js:
19326 (MockBuildbot.prototype.javaScriptCoreTestStdioUrlForIteration): Ditto for tests.
19328 2017-07-26 Brady Eidson <beidson@apple.com>
19330 Add test to verify certain child processes are not launched as a side effect of enabling ResourceLoadStatistics.
19331 https://bugs.webkit.org/show_bug.cgi?id=174851
19333 Reviewed by Chris Dumez.
19335 * TestWebKitAPI/Tests/WebKit2Cocoa/ResourceLoadStatistics.mm:
19338 2017-07-26 Brian Burg <bburg@apple.com>
19340 Remove WEB_TIMING feature flag
19341 https://bugs.webkit.org/show_bug.cgi?id=174795
19343 Reviewed by Alex Christensen.
19345 * Scripts/webkitperl/FeatureList.pm:
19346 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
19348 2017-07-26 Chris Dumez <cdumez@apple.com>
19350 Pressing the Escape key should not be a valid user gesture to enter fullscreen
19351 https://bugs.webkit.org/show_bug.cgi?id=174864
19352 <rdar://problem/33009088>
19354 Reviewed by Geoffrey Garen.
19356 Add support for eventSender.keyDown('escape') in DRT to match the behavior of
19359 * DumpRenderTree/mac/EventSendingController.mm:
19360 (-[EventSendingController keyDown:withModifiers:withLocation:]):
19362 2017-07-26 Romain Bellessort <romain.bellessort@crf.canon.fr>
19364 Unreviewed, added Romain Bellessort to contributors.json.
19366 * Scripts/webkitpy/common/config/contributors.json:
19368 2017-07-26 Zan Dobersek <zdobersek@igalia.com>
19370 [WPE] WebGL2 support
19371 https://bugs.webkit.org/show_bug.cgi?id=174249
19373 Reviewed by Alex Christensen.
19375 * Scripts/webkitperl/FeatureList.pm:
19376 Enable WebGL2 for WPE when building through build-webkit.
19378 2017-07-26 Carlos Garcia Campos <cgarcia@igalia.com>
19380 Unreviewed. Fix GTK distcheck.
19382 * gtk/make-dist.py:
19383 (ensure_version_if_possible): Use the right pkg-config filename, it's webkit2gtk not webkitgtk.
19385 2017-07-25 Brady Eidson <beidson@apple.com>
19387 ResourceLoadStatistics grandfathering happens much too often.
19388 <rdar://problem/32655834> and https://bugs.webkit.org/show_bug.cgi?id=174825
19390 Reviewed by Chris Dumez.
19392 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
19393 * TestWebKitAPI/Tests/WebKit2Cocoa/EmptyGrandfatheredResourceLoadStatistics.plist: Added.
19394 * TestWebKitAPI/Tests/WebKit2Cocoa/ResourceLoadStatistics.mm: Added.
19397 2017-07-25 Matthew Stewart <matthew_r_stewart@apple.com>
19399 Fix autoinstaller failing on autoinstall_everything
19400 https://bugs.webkit.org/show_bug.cgi?id=174830
19402 Reviewed by Joseph Pecoraro.
19404 * Scripts/webkitpy/thirdparty/__init__.py:
19405 (AutoinstallImportHook.find_module):
19406 (AutoinstallImportHook.install_chromedriver):
19407 (AutoinstallImportHook.install_geckodriver):
19408 (AutoinstallImportHook._install_chromedriver): Deleted.
19409 (AutoinstallImportHook._install_geckodriver): Deleted.
19411 2017-07-25 Jonathan Bedard <jbedard@apple.com>
19413 Replace --runtime with something for both ios-simulator and ios-device
19414 https://bugs.webkit.org/show_bug.cgi?id=173775
19415 <rdar://problem/32952164>
19417 Reviewed by Aakash Jain.
19419 Add --version flag for both iOS simulator and iOS device.
19421 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
19422 (parse_args): Add --version flag and move --no-install.
19423 * Scripts/webkitpy/port/factory.py:
19424 (platform_options): Move --no-intall to run_webkit_tests.py.
19425 * Scripts/webkitpy/port/ios.py:
19427 (IOSPort._is_valid_ios_version): Check that the provided version string is legal.
19428 (IOSPort.get_option): If accessing the iOS version, check that it is a valid version string.
19429 * Scripts/webkitpy/port/ios_device.py:
19430 (IOSDevicePort.ios_version): Consult --version flag before checking connected
19431 devices for iOS version.
19432 * Scripts/webkitpy/port/ios_device_unittest.py:
19433 (IOSDeviceTest.make_port): Set --version option so that we can generate test
19434 expectation paths without devices connected.
19435 (IOSDeviceTest.test_additional_platform_directory): Deleted.
19436 (IOSDeviceTest.test_baseline_searchpath): Deleted.
19437 (IOSDeviceTest.test_expectations_ordering): Deleted.
19438 * Scripts/webkitpy/port/ios_simulator.py:
19439 (IOSSimulatorPort.simulator_runtime): If no runtime is specified, use the --version
19440 flag to specify a runtime.
19441 (IOSSimulatorPort.ios_version): First check the --version flag, then the --runtime
19442 flag and then use the default runtime.
19444 2017-07-25 Carlos Garcia Campos <cgarcia@igalia.com>
19446 [GTK] TestWebKitAPI tests are no longer built since the WebKit2 rename
19447 https://bugs.webkit.org/show_bug.cgi?id=174815
19449 Reviewed by Carlos Alberto Lopez Perez.
19451 Only WebKitGTK specific tests are built, but not WebKit2, WTF nor WebCore ones. We are still checking
19452 ENABLE_WEBKIT2 in the makefile, that was renamed to ENABLE_WEBKIT. Also, all WebKit2 test paths were updated to
19453 use WebKit dir, while the tests are still in WebKit2 directory. This patch also removes
19454 TestWebKitAPIInjectedBundle_PATH that is unused and now makes the configure to fail (it used to be a warning, I
19455 think), probably because of a newer CMake version.
19458 * TestWebKitAPI/CMakeLists.txt:
19459 * TestWebKitAPI/PlatformGTK.cmake:
19461 2017-07-24 Matthew Stewart <matthew_r_stewart@apple.com>
19463 Fix BenchmarkRunner to only import selenium when needed
19464 https://bugs.webkit.org/show_bug.cgi?id=174808
19466 Reviewed by Stephanie Lewis.
19468 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py:
19469 (LinuxChromeDriver.launch_driver):
19470 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py:
19471 (LinuxFirefoxDriver.launch_driver):
19472 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
19473 (OSXChromeDriver.launch_driver):
19474 (OSXChromeCanaryDriver.launch_driver):
19475 (create_chrome_options):
19476 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
19477 (OSXFirefoxDriver.launch_driver):
19478 (OSXFirefoxNightlyDriver.launch_driver):
19479 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
19480 (OSXSafariDriver.launch_driver):
19481 * Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py:
19482 (WebDriverBenchmarkRunner._run_one_test):
19484 2017-07-23 Darin Adler <darin@apple.com>
19486 More NeverDestroyed and related cleanup
19487 https://bugs.webkit.org/show_bug.cgi?id=174745
19489 Reviewed by Alex Christensen.
19491 * DumpRenderTree/JavaScriptThreading.cpp:
19492 (javaScriptThreadsMutex): Use NeverDestroyed instead of
19493 DEPRECATED_DEFINE_STATIC_LOCAL.
19494 (javaScriptThreads): Ditto.
19496 2017-07-24 Matthew Stewart <matthew_r_stewart@apple.com>
19498 Subclass Benchmark Runner script for WebDriver support
19499 https://bugs.webkit.org/show_bug.cgi?id=174390
19501 Reviewed by Dewei Zhu, Stephanie Lewis.
19503 Add WebServerBenchmarkRunner and WebDriverBenchmarkRunner subclasses.
19505 * Scripts/webkitpy/benchmark_runner/benchmark_builder.py:
19506 (BenchmarkBuilder.__init__):
19507 * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
19508 (BenchmarkRunner.__init__):
19509 (BenchmarkRunner._find_plan_file):
19510 (BenchmarkRunner._run_one_test.and):
19511 (BenchmarkRunner.execute):
19512 (BenchmarkRunner._get_result): Deleted.
19513 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
19516 * Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py: Added.
19517 (WebDriverBenchmarkRunner):
19518 (WebDriverBenchmarkRunner._get_result):
19519 (WebDriverBenchmarkRunner._run_one_test):
19520 * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py: Added.
19521 (WebServerBenchmarkRunner):
19522 (WebServerBenchmarkRunner.__init__):
19523 (WebServerBenchmarkRunner._get_result):
19524 (WebServerBenchmarkRunner._run_one_test):
19526 2017-07-24 Matthew Stewart <matthew_r_stewart@apple.com>
19528 Add BenchmarkRunner patches with WebDriver support for each testing plan
19529 https://bugs.webkit.org/show_bug.cgi?id=174443
19531 Reviewed by Dewei Zhu, Stephanie Lewis.
19533 * Scripts/webkitpy/benchmark_runner/benchmark_builder.py:
19534 (BenchmarkBuilder.__enter__):
19535 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ARES-6.patch:
19536 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/ContentAnimation.patch:
19537 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Dromaeo.patch:
19538 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JSBench.patch:
19539 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/JetStream.patch:
19540 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Kraken.patch:
19541 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/MotionMark.patch:
19542 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Octane.patch:
19543 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/Speedometer.patch:
19544 * Scripts/webkitpy/benchmark_runner/data/patches/webdriver/SunSpider.patch:
19545 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/ARES-6.patch:
19546 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Animometer.patch:
19547 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/ContentAnimation.patch:
19548 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Dromaeo.patch:
19549 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/JSBench.patch:
19550 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/JetStream.patch:
19551 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Kraken.patch:
19552 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/MotionMark.patch:
19553 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Octane.patch:
19554 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Speedometer.patch:
19555 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/SunSpider.patch:
19556 * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
19557 * Scripts/webkitpy/benchmark_runner/data/plans/content-animation.plan:
19558 * Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-cssquery.plan:
19559 * Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-dom.plan:
19560 * Scripts/webkitpy/benchmark_runner/data/plans/dromaeo-jslib.plan:
19561 * Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan:
19562 * Scripts/webkitpy/benchmark_runner/data/plans/jsbench.plan:
19563 * Scripts/webkitpy/benchmark_runner/data/plans/kraken.plan:
19564 * Scripts/webkitpy/benchmark_runner/data/plans/motionmark.plan:
19565 * Scripts/webkitpy/benchmark_runner/data/plans/octane.plan:
19566 * Scripts/webkitpy/benchmark_runner/data/plans/speedometer.plan:
19567 * Scripts/webkitpy/benchmark_runner/data/plans/sunspider.plan:
19569 2017-07-24 Matthew Stewart <matthew_r_stewart@apple.com>
19571 Add functions to autoinstaller needed for Benchmark Runner script
19572 https://bugs.webkit.org/show_bug.cgi?id=174331
19574 Reviewed by Dean Johnson, Dewei Zhu, Stephanie Lewis.
19576 Adds autoinstaller functions to install selenium and webdriver binaries
19577 which will be used by the browser driver part of Benchmark Runner.
19579 * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
19580 (BrowserDriver.restore_env):
19582 (BrowserDriver.get_webdriver_binary_path):
19583 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py:
19584 (LinuxChromeDriver.launch_driver):
19585 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py:
19586 (LinuxFirefoxDriver.launch_driver):
19587 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
19588 (OSXChromeDriver.launch_driver):
19589 (OSXChromeCanaryDriver.launch_driver):
19590 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
19591 (OSXFirefoxDriver.launch_driver):
19592 (OSXFirefoxNightlyDriver.launch_driver):
19593 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
19594 * Scripts/webkitpy/benchmark_runner/utils.py:
19595 (get_driver_binary_path):
19596 * Scripts/webkitpy/common/system/autoinstall.py:
19597 (AutoInstaller._unzip):
19598 * Scripts/webkitpy/thirdparty/__init__.py:
19599 (AutoinstallImportHook.find_module):
19600 (AutoinstallImportHook._install_selenium):
19601 (AutoinstallImportHook):
19602 (AutoinstallImportHook._install_chromedriver):
19603 (AutoinstallImportHook._install_geckodriver):
19604 (AutoinstallImportHook.get_latest_pypi_url):
19605 (AutoinstallImportHook.install_binary):
19606 (autoinstall_everything):
19607 (get_driver_filename):
19610 2017-07-24 Matthew Stewart <matthew_r_stewart@apple.com>
19612 Add WebDriver support in browser driver part of BenchmarkRunner
19613 https://bugs.webkit.org/show_bug.cgi?id=174445
19615 Reviewed by Stephanie Lewis.
19617 Adds a launch_driver function to each BrowserDriver subclass. This
19618 function sets up the arguments for the webdriver and launches the
19619 webdriver specific to that browser.
19621 * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
19622 (BrowserDriver.launch_webdriver):
19624 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py:
19625 (LinuxBrowserDriver.launch_webdriver):
19626 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py:
19627 (LinuxChromeDriver.launch_url):
19628 (LinuxChromeDriver):
19629 (LinuxChromeDriver.launch_driver):
19630 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_epiphany_driver.py:
19631 (EpiphanyBrowserDriver.launch_url):
19632 (EpiphanyBrowserDriver):
19633 (EpiphanyBrowserDriver.launch_driver):
19634 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py:
19635 (LinuxFirefoxDriver):
19636 (LinuxFirefoxDriver.launch_url):
19637 (LinuxFirefoxDriver.launch_driver):
19638 * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowsergtk_driver.py:
19639 (GTKMiniBrowserDriver.launch_url):
19640 (GTKMiniBrowserDriver):
19641 (GTKMiniBrowserDriver.launch_driver):
19642 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
19643 (OSXBrowserDriver._launch_webdriver):
19644 (OSXBrowserDriver):
19645 (OSXBrowserDriver._screen_size):
19646 (OSXBrowserDriver._insert_url):
19647 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
19649 (OSXChromeDriver.launch_url):
19650 (OSXChromeDriver.launch_driver):
19651 (OSXChromeCanaryDriver):
19652 (OSXChromeCanaryDriver.launch_url):
19653 (OSXChromeCanaryDriver.launch_driver):
19654 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
19655 (OSXFirefoxDriver):
19656 (OSXFirefoxDriver.launch_url):
19657 (OSXFirefoxDriver.launch_driver):
19658 (OSXFirefoxNightlyDriver):
19659 (OSXFirefoxNightlyDriver.launch_url):
19660 (OSXFirefoxNightlyDriver.launch_driver):
19661 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
19662 (OSXSafariDriver.launch_driver):
19664 2017-07-24 Wenson Hsieh <wenson_hsieh@apple.com>
19666 [Mac WK2] Add an API test to cover r219765 (null dereference in [WKWebView dealloc])
19667 https://bugs.webkit.org/show_bug.cgi?id=174793
19669 Reviewed by Tim Horton.
19671 Adds a new unit test that invokes some asynchronous NSTextInputClient SPI methods as the web view is tearing
19672 down. Without r219765, this test will dereference null and crash.
19674 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
19675 * TestWebKitAPI/Tests/TestWebKitAPI/mac/NSTextInputClientSPI.h: Added.
19676 * TestWebKitAPI/Tests/mac/WKWebViewSelectionTests.mm:
19679 2017-07-24 Basuke Suzuki <Basuke.Suzuki@sony.com>
19681 [Win] Implement Authentication dialog in MiniBrowser
19682 https://bugs.webkit.org/show_bug.cgi?id=174662
19684 Reviewed by Alex Christensen.
19686 * MiniBrowser/win/Common.cpp:
19688 (DisplayAuthDialog):
19690 * MiniBrowser/win/MiniBrowserLib.rc:
19691 * MiniBrowser/win/MiniBrowserLibResource.h:
19692 * MiniBrowser/win/ResourceLoadDelegate.cpp:
19693 (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
19695 2017-07-24 Jonathan Bedard <jbedard@apple.com>
19697 Handle case where line_numbers is None instead of an array of line numbers
19698 https://bugs.webkit.org/show_bug.cgi?id=174775
19700 Reviewed by Aakash Jain.
19702 Added files set line_numbers to None in process_file.
19704 * Scripts/webkitpy/style/filereader.py:
19705 (TextFileReader.process_file): Handle case where line_number is set to None.
19706 * Scripts/webkitpy/style/main_unittest.py:
19707 (ExpectationLinterInStyleCheckerTest.test_linter_added_file_with_error): Test case of an added file.
19709 2017-07-24 Zan Dobersek <zdobersek@igalia.com>
19711 [WPE] Add libepoxy to the Jhbuild moduleset
19712 https://bugs.webkit.org/show_bug.cgi?id=174711
19714 Reviewed by Carlos Alberto Lopez Perez.
19716 * wpe/jhbuild.modules: Add libepoxy 1.4.3 to WPE's Jhbuild moduleset.
19718 2017-07-24 Zan Dobersek <zdobersek@igalia.com>
19720 [WPE] libepoxy headers can use EGL_CAST, which might not be defined by eglplatform.h
19721 https://bugs.webkit.org/show_bug.cgi?id=174780
19723 Reviewed by Carlos Garcia Campos.
19725 * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
19726 Manually define the EGL_CAST macro to the C++ version that uses static_cast<>
19727 in case the eglplatform.h header doesn't provide that macro. This replicates
19728 the work in WebCore's EpoxyEGL.h header, but we can't include that header here.
19730 2017-07-22 Wenson Hsieh <wenson_hsieh@apple.com>
19732 [iOS WK2] Remove _WKDraggableElementInfo and fold PositionInformationTests into WKRequestActivatedElementInfo
19733 https://bugs.webkit.org/show_bug.cgi?id=174758
19735 Reviewed by Dan Bernstein.
19737 Migrate position-information-related unit tests from the PositionInformationTests suite to
19738 WKRequestActivatedElementInfo as 2 new unit tests. See WebKit2 ChangeLog for more details.
19740 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
19741 * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm:
19742 (TestWebKitAPI::checkElementTypeAndBoundingRect):
19743 (TestWebKitAPI::TEST):
19744 * TestWebKitAPI/Tests/ios/PositionInformationTests.mm: Removed.
19745 * TestWebKitAPI/cocoa/TestWKWebView.h:
19746 * TestWebKitAPI/cocoa/TestWKWebView.mm:
19747 (-[TestWKWebView activatedElementAtPosition:]):
19749 2017-07-22 Chris Dumez <cdumez@apple.com>
19751 REGRESSION(r204565): WKObject is broken
19752 https://bugs.webkit.org/show_bug.cgi?id=174736
19753 <rdar://problem/33246169>
19755 Reviewed by Dan Bernstein.
19757 Add API test that used to crash.
19759 * TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm:
19760 (TestWebKitAPI::TEST):
19762 2017-07-22 Yusuke Suzuki <utatane.tea@gmail.com>
19764 [WTF] Extend ThreadGroup::add results from bool to ThreadGroupAddResult
19765 https://bugs.webkit.org/show_bug.cgi?id=174705
19767 Reviewed by Mark Lam.
19769 * TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:
19770 (TestWebKitAPI::testThreadGroup):
19771 (TestWebKitAPI::TEST):
19773 2017-07-21 Jonathan Bedard <jbedard@apple.com>
19775 Fail gracefully when xcrun fails in IOSSimulatorPort constructor
19776 https://bugs.webkit.org/show_bug.cgi?id=174724
19778 Reviewed by Aakash Jain.
19780 * Scripts/webkitpy/port/ios_simulator.py:
19781 (IOSSimulatorPort.__init__): Ignore any errors when attempting to find a running
19782 simulator. Errors here should be treated the same as no simulators found.
19784 2017-07-21 Yousuke Kimoto <Yousuke.Kimoto@sony.com>
19786 [CMake] Add an option to stop build after generating project files
19787 https://bugs.webkit.org/show_bug.cgi?id=174664
19789 Reviewed by Konstantin Tokarev.
19791 Add "--generate-project-only" to stop build after generating project files.
19793 * Scripts/build-webkit: Add '--generate-project-only' option and a checker to stop build.
19794 * Scripts/webkitdirs.pm: Add a function to check '--generate-project-only' option and the same checker as the above
19795 (buildCMakeProjectOrExit): Add a cheker to stop build stop build after generating project files.
19796 (determineIsGenerateProjectOnly): Check if '--generate-project-only' option is specified
19797 (isGenerateProjectOnly): ditto
19799 2017-07-21 Yusuke Suzuki <utatane.tea@gmail.com>
19801 [WTF] Newly added AtomicStringImpl should use BufferInternal static string if StringImpl is static
19802 https://bugs.webkit.org/show_bug.cgi?id=174501
19804 Reviewed by Darin Adler.
19806 * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
19807 (TestWebKitAPI::TEST):
19809 2017-07-20 David Quesada <david_quesada@apple.com>
19811 Add SPI to notify WKNavigationDelegate about client redirects
19812 https://bugs.webkit.org/show_bug.cgi?id=174680
19813 rdar://problem/33184886
19815 Reviewed by Brady Eidson.
19817 * TestWebKitAPI/Tests/WebKit2Cocoa/Navigation.mm:
19818 (-[DidPerformClientRedirectNavigationDelegate _webView:didPerformClientRedirectForNavigation:]):
19820 Add API test for -[id<WKNavigationDelegatePrivate> _webView:didPerformClientRedirectForNavigation:].
19822 2017-07-20 Brady Eidson <beidson@apple.com>
19824 Test WebKit2CustomProtocolsTest.ProcessPoolDestroyedDuringLoading added in r219664 fails on El Capitan.
19825 https://bugs.webkit.org/show_bug.cgi?id=174685
19827 Reviewed by Andy Estes.
19829 * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm:
19830 (TestWebKitAPI::TEST): Use a scoped AutodrainedPool instead of a RetainPtr<NSAutoreleasePool>.
19832 2017-07-20 Brady Eidson <beidson@apple.com>
19834 Deprecate WebIconDatabase in WebKitLegacy/mac.
19835 https://bugs.webkit.org/show_bug.cgi?id=174607
19837 Reviewed by Alex Christensen.
19839 * DumpRenderTree/mac/TestRunnerMac.mm:
19841 2017-07-20 Jonathan Bedard <jbedard@apple.com>
19843 lint-test-expectations should be run during style checking
19844 https://bugs.webkit.org/show_bug.cgi?id=173559
19845 <rdar://problem/32854941>
19847 Reviewed by Aakash Jain.
19849 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
19850 (TestExpectationsModel._already_seen_better_match): Append returns 'None' when successful,
19851 prevents identifying errors on specific lines in a file.
19852 * Scripts/webkitpy/style/main_unittest.py:
19853 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_edit_in_file): Test for the
19854 case where a linter error is in the file modified, but the line modified is not related to
19857 2017-07-20 Brady Eidson <beidson@apple.com>
19859 Remove WebIconDatabase from WebKitLegacy/win.
19860 https://bugs.webkit.org/show_bug.cgi?id=174608
19862 Reviewed by Alex Christensen.
19864 * DumpRenderTree/win/DumpRenderTree.cpp:
19866 * DumpRenderTree/win/TestRunnerWin.cpp:
19867 (TestRunner::setIconDatabaseEnabled):
19869 2017-07-20 Zan Dobersek <zdobersek@igalia.com>
19871 [WPE] Adjust priority of GSource used in WKTR's HeadlessViewBackend
19872 https://bugs.webkit.org/show_bug.cgi?id=174671
19874 Reviewed by Carlos Garcia Campos.
19876 * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
19877 (HeadlessViewBackend::HeadlessViewBackend): Use the RunLoopDispatcher
19878 priority for this source in order to have it dispatched on the same
19879 priority as the other WebKit-controlled GSource objects.
19881 2017-07-19 Jonathan Bedard <jbedard@apple.com>
19883 lint-test-expectations should be run during style checking
19884 https://bugs.webkit.org/show_bug.cgi?id=173559
19885 <rdar://problem/32854941>
19887 Reviewed by Daniel Bates.
19889 Follow up fix addressing style and a few minor bugs.
19891 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
19892 (TestExpectationParser.__init__): Use lambda x: x instead of str
19893 (TestExpectationsModel.__init__): Make lambda x: x the default argument.
19894 (TestExpectationsModel._already_seen_better_match): Use a temporary variable to
19895 reduce the calls of _shorten_filename, fix minor bug in appending the current
19896 expectation's line number instead of the previous ones, clarify treatment of None
19897 in file-to-line-number mapping.
19898 (TestExpectations._report_warnings): Collapse call.
19899 * Scripts/webkitpy/style/checkers/test_expectations.py:
19900 (TestExpectationsChecker.lint_test_expectations):
19901 * Scripts/webkitpy/style/filereader.py: Re-write comment.
19902 (TextFileReader.process_file): Add comment explaining treatment of None in
19903 file-to-line-number mapping.
19904 (TextFileReader.delete_file): Collapse call.
19906 2017-07-19 Chris Dumez <cdumez@apple.com>
19908 Unreviewed attempt to fix API test failure after r219663.
19910 The test was hard-coding an exception string and the string has changed slightly
19913 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
19916 2017-07-19 Megan Gardner <megan_gardner@apple.com>
19918 Don't write file URLs to iOS Pasteboard
19919 https://bugs.webkit.org/show_bug.cgi?id=174647
19920 <rdar://problem/33199730>
19922 Reviewed by Wenson Hsieh.
19924 Updating tests to reflect the lack of file URLs for images.
19926 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
19927 (checkTypeIdentifierAndIsNotOtherTypeIdentifier):
19928 (checkEstimatedSize):
19929 (TestWebKitAPI::TEST):
19931 2017-07-19 Brady Eidson <beidson@apple.com>
19933 iBooks sometimes crashes when closing a book.
19934 <rdar://problem/31180331> and https://bugs.webkit.org/show_bug.cgi?id=174658
19936 Reviewed by Oliver Hunt.
19938 * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm:
19939 (-[ProcessPoolDestroyedDuringLoadingProtocol startLoading]):
19940 (-[ProcessPoolDestroyedDuringLoadingProtocol finishTheLoad]):
19941 (-[ProcessPoolDestroyedDuringLoadingProtocol stopLoading]):
19942 (TestWebKitAPI::TEST):
19944 Add a "spin the runloop X number of times" utility:
19945 * TestWebKitAPI/Utilities.h:
19946 * TestWebKitAPI/cocoa/UtilitiesCocoa.mm:
19947 (TestWebKitAPI::Util::spinRunLoop):
19949 2017-07-19 Jonathan Bedard <jbedard@apple.com>
19951 lint-test-expectations should be run during style checking
19952 https://bugs.webkit.org/show_bug.cgi?id=173559
19953 <rdar://problem/32854941>
19955 Reviewed by David Kilzer.
19957 Running the test expectation linter requires reading both files and lines not in the
19958 patch because, for example, deletion of a test can cause a lint failure even though
19959 no test expectations where modified. This means that the linter will occasionally warn
19960 about lines which were not changed in a given patch but whose error is related to a
19961 change made in that patch.
19963 * Scripts/webkitpy/common/system/filesystem_mock.py:
19964 (MockFileSystem.open_text_file_for_reading): Add 'errors' argument to mimic filesystem.
19965 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
19966 (TestExpectationWarning): Added class to pass warnings as an object instead of a string.
19967 (TestExpectationWarning.__init__): Construct warning with file name, line number, line
19968 content, description of the error and the name of the associated test.
19969 (TestExpectationWarning.__str__): Convert to string so that existing printing code works.
19970 (TestExpectationParser.__init__): Pass shorten_filename function to
19971 TestExpectationsParser to add a deleted file to the related_files dictionary.
19972 (TestExpectationParser._check_test_exists): If the test does not exist, add the
19973 missing path to the related_files dictionary.
19974 (TestExpectationLine.__init__): Add related_files dictionary, which tracks
19975 files and line numbers related to this test expectation line. This will allow
19976 tracking linter errors in the style checker occurring across multiple files.
19977 (TestExpectationsModel._already_seen_better_match): Add redundant expectation
19978 lines to related_files dictionary.
19979 (TestExpectations.__init__): Pass self._shorten_filename to TestExpectationParser.
19980 (TestExpectations._report_warnings): Construct warning object instead of string
19981 when adding to warnings list.
19982 * Scripts/webkitpy/port/win.py: Changed logging level form warning to debug to
19984 * Scripts/webkitpy/style/checker.py:
19985 (ProcessorBase.do_association_check): Add required function for processor classes.
19987 (StyleProcessor.do_association_check): Run the TestExpectations linter when
19988 checking for errors between associated files.
19989 * Scripts/webkitpy/style/checkers/test_expectations.py:
19990 (TestExpectationsChecker.check_test_expectations): Reflect changed import statements.
19991 (TestExpectationsChecker):
19992 (TestExpectationsChecker._should_log_linter_warning): Given a warning, a dictionary
19993 of modified files, the current working directory and the host, determine if the linter
19994 warning is associated with the changes.
19995 (TestExpectationsChecker.lint_test_expectations): Lint test expectations for the
19997 * Scripts/webkitpy/style/filereader.py:
19999 (TextFileReader.__init__): Track modified files in dictionary instead of a counter.
20000 (TextFileReader.file_count): Use dictionary to determine the number of modified files.
20001 (TextFileReader.process_file): Track both the number of files changed and which lines
20002 in those files were changed.
20003 (TextFileReader.do_association_check): Run the processor's association check on all
20004 modified or deleted files processed by TextFileReader.
20005 (TextFileReader.delete_file): Track deleted files in _files dictionary.
20006 (TextFileReader.count_delete_only_file): Deleted.
20007 * Scripts/webkitpy/style/filereader_unittest.py:
20008 (TextFileReaderTest.test_delete_file): Renamed function to reflect new function name.
20009 (TextFileReaderTest.test_count_delete_only_file): Moved to test_delete_file.
20010 * Scripts/webkitpy/style/main.py:
20011 (CheckWebKitStyle.main): When running the style checker on a specific list of files,
20012 explicitly run the association check on the file reader.
20013 * Scripts/webkitpy/style/main_unittest.py:
20014 (ExpectationLinterInStyleCheckerTest): Added to test the TestExpectationLinter now
20015 embedded in the style checker.
20016 (ExpectationLinterInStyleCheckerTest.setUp): Set up the style checker configuration.
20017 (ExpectationLinterInStyleCheckerTest._generate_file_reader): Given a filesystem object,
20018 construct the TextFileReader object with a StyleProcessor used to run style checks on
20020 (ExpectationLinterInStyleCheckerTest._generate_testing_host): Generate a host used for
20021 testing the test expectation linter inside the style checker. This host must contain a
20022 mock file system with the basic structure of test expectations.
20023 (ExpectationLinterInStyleCheckerTest.test_no_linter_errors):
20024 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line):
20025 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_no_edit):
20026 (ExpectationLinterInStyleCheckerTest.test_linter_deleted_file):
20027 (ExpectationLinterInStyleCheckerTest.test_linter_deleted_file_no_edit):
20028 * Scripts/webkitpy/style/patchreader.py:
20029 (PatchReader.check): Specify which file was deleted, run the association check.
20030 * Scripts/webkitpy/style/patchreader_unittest.py:
20031 (PatchReaderTest.MockTextFileReader.delete_file): Renamed count_delete_only_file.
20032 (PatchReaderTest.MockTextFileReader.do_association_check): Added.
20033 (PatchReaderTest.MockTextFileReader.count_delete_only_file): Renamed delete_file.
20035 2017-07-19 Yusuke Suzuki <utatane.tea@gmail.com>
20037 [WTF] Implement WTF::ThreadGroup
20038 https://bugs.webkit.org/show_bug.cgi?id=174081
20040 Reviewed by Mark Lam.
20042 Add WTF::ThreadGroup tests.
20044 * TestWebKitAPI/CMakeLists.txt:
20045 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
20046 * TestWebKitAPI/Tests/WTF/ThreadGroup.cpp: Added.
20047 (TestWebKitAPI::testThreadGroup):
20048 (TestWebKitAPI::TEST):
20050 2017-07-18 Andy Estes <aestes@apple.com>
20052 [Xcode] Enable CLANG_WARN_RANGE_LOOP_ANALYSIS
20053 https://bugs.webkit.org/show_bug.cgi?id=174631
20055 Reviewed by Tim Horton.
20057 * DumpRenderTree/mac/Configurations/Base.xcconfig:
20058 * MiniBrowser/Configurations/Base.xcconfig:
20059 * MobileMiniBrowser/Configurations/Base.xcconfig:
20060 * TestWebKitAPI/Configurations/Base.xcconfig:
20061 * WebKitTestRunner/Configurations/Base.xcconfig:
20063 2017-07-18 Andy Estes <aestes@apple.com>
20065 [Xcode] Enable CLANG_WARN_OBJC_LITERAL_CONVERSION
20066 https://bugs.webkit.org/show_bug.cgi?id=174631
20068 Reviewed by Sam Weinig.
20070 * DumpRenderTree/mac/Configurations/Base.xcconfig:
20071 * MiniBrowser/Configurations/Base.xcconfig:
20072 * MobileMiniBrowser/Configurations/Base.xcconfig:
20073 * TestWebKitAPI/Configurations/Base.xcconfig:
20074 * WebKitTestRunner/Configurations/Base.xcconfig:
20076 2017-07-18 Daniel Bates <dabates@apple.com>
20078 lldb: Add type summary for StringView
20079 https://bugs.webkit.org/show_bug.cgi?id=174637
20081 Reviewed by Sam Weinig.
20083 For debugging convenience, adds a pretty-print type summary for StringView. Evaluating a
20084 StringView object will print output that has the form:
20086 (WTF::StringView) $4 = { length = 2, contents = 'li' } {
20087 m_characters = 0x000000011b57abb5 "eeeeeefjh0n"
20090 m_underlyingString = 0x0000614000000a90
20093 * lldb/lldb_webkit.py:
20094 (__lldb_init_module): Use WTFStringView_SummaryProvider to format StringView types.
20095 (WTFStringView_SummaryProvider):
20096 (WTFStringViewProvider):
20097 (WTFStringViewProvider.__init__):
20098 (WTFStringViewProvider.is_8bit): Access field StringView.m_is8Bit.
20099 (WTFStringViewProvider.get_length): Access field StringView.m_length.
20100 (WTFStringViewProvider.get_characters): Access field StringView.m_characters.
20101 (WTFStringViewProvider.to_string): Returns the string represented by the StringView.
20103 2017-07-18 Andy Estes <aestes@apple.com>
20105 [Xcode] Enable CLANG_WARN_NON_LITERAL_NULL_CONVERSION
20106 https://bugs.webkit.org/show_bug.cgi?id=174631
20108 Reviewed by Dan Bernstein.
20110 * DumpRenderTree/mac/Configurations/Base.xcconfig:
20111 * MiniBrowser/Configurations/Base.xcconfig:
20112 * MobileMiniBrowser/Configurations/Base.xcconfig:
20113 * TestWebKitAPI/Configurations/Base.xcconfig:
20114 * WebKitTestRunner/Configurations/Base.xcconfig:
20116 2017-07-18 Devin Rousso <drousso@apple.com>
20118 Web Inspector: Add memoryCost to Inspector Protocol objects
20119 https://bugs.webkit.org/show_bug.cgi?id=174478
20121 Reviewed by Joseph Pecoraro.
20123 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
20124 * TestWebKitAPI/Tests/JavaScriptCore/InspectorValue.cpp: Added.
20125 (TestWebKitAPI::TEST(InspectorValue, MemoryCostNull)):
20126 (TestWebKitAPI::TEST(InspectorValue, MemoryCostBoolean)):
20127 (TestWebKitAPI::TEST(InspectorValue, MemoryCostDouble)):
20128 (TestWebKitAPI::TEST(InspectorValue, MemoryCostInteger)):
20129 (TestWebKitAPI::TEST(InspectorValue, MemoryCostString)):
20130 (TestWebKitAPI::TEST(InspectorValue, MemoryCostStringEmpty)):
20131 (TestWebKitAPI::TEST(InspectorValue, MemoryCostStringNull)):
20132 (TestWebKitAPI::TEST(InspectorValue, MemoryCostStringGrowing)):
20133 (TestWebKitAPI::TEST(InspectorValue, MemoryCostStringUnicode)):
20134 (TestWebKitAPI::TEST(InspectorValue, MemoryCostObject)):
20135 (TestWebKitAPI::TEST(InspectorValue, MemoryCostObjectEmpty)):
20136 (TestWebKitAPI::TEST(InspectorValue, MemoryCostObjectGrowing)):
20137 (TestWebKitAPI::TEST(InspectorValue, MemoryCostArray)):
20138 (TestWebKitAPI::TEST(InspectorValue, MemoryCostArrayEmpty)):
20139 (TestWebKitAPI::TEST(InspectorValue, MemoryCostArrayGrowing)):
20141 2017-07-18 Andy Estes <aestes@apple.com>
20143 [Xcode] Enable CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING
20144 https://bugs.webkit.org/show_bug.cgi?id=174631
20146 Reviewed by Darin Adler.
20148 * DumpRenderTree/mac/Configurations/Base.xcconfig:
20149 * MiniBrowser/Configurations/Base.xcconfig:
20150 * MobileMiniBrowser/Configurations/Base.xcconfig:
20151 * TestWebKitAPI/Configurations/Base.xcconfig:
20152 * WebKitTestRunner/Configurations/Base.xcconfig:
20154 2017-07-17 Wenson Hsieh <wenson_hsieh@apple.com>
20156 Unreviewed, fix the iOS build.
20158 I missed a spot when renaming -synchronouslyLoadHTML: to -synchronouslyLoadHTMLString:.
20160 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
20161 (TestWebKitAPI::TEST):
20163 2017-07-17 Wenson Hsieh <wenson_hsieh@apple.com>
20165 [iOS DnD] Web process uses too much memory when beginning a drag on a very large image
20166 https://bugs.webkit.org/show_bug.cgi?id=174585
20167 <rdar://problem/33302541>
20169 Reviewed by Tim Horton.
20171 Adds a new test verifying that we don't try to allocate any image buffer equal to the true size of the image
20172 being dragged when initiating a drag.
20174 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
20175 * TestWebKitAPI/Tests/WebKit2Cocoa/enormous.svg: Added.
20176 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
20177 (TestWebKitAPI::TEST):
20178 * TestWebKitAPI/cocoa/TestWKWebView.h:
20180 Add a new -synchronouslyLoadHTMLString: helper that works like -synchronouslyLoadTestPage:, but takes markup.
20182 * TestWebKitAPI/cocoa/TestWKWebView.mm:
20183 (-[TestWKWebView synchronouslyLoadHTMLString:]):
20185 2017-07-17 Michael Catanzaro <mcatanzaro@igalia.com>
20187 [CMake] Macros in WebKitMacros.cmake should be prefixed with WEBKIT_ namespace
20188 https://bugs.webkit.org/show_bug.cgi?id=174547
20190 Reviewed by Alex Christensen.
20192 * DumpRenderTree/PlatformWin.cmake:
20193 * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
20195 2017-07-17 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
20197 Update style checker to deal with "final"
20198 https://bugs.webkit.org/show_bug.cgi?id=174528
20200 Reviewed by Alex Christensen.
20202 check-webkit-style shouldn't complain about an open brace to start a
20203 line after a function definition with "final" or "const final".
20205 * Scripts/webkitpy/style/checkers/cpp.py:
20207 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
20208 (CppStyleTest.test_brace_at_begin_of_line):
20210 2017-07-17 Alex Christensen <achristensen@webkit.org>
20212 Modernize content extension code
20213 https://bugs.webkit.org/show_bug.cgi?id=174588
20215 Reviewed by Sam Weinig.
20217 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
20218 (TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter):
20219 (TestWebKitAPI::testRequest):
20220 (TestWebKitAPI::makeBackend):
20221 (TestWebKitAPI::TEST_F):
20223 2017-07-17 Brady Eidson <beidson@apple.com>
20225 WKHTTPCookieStore observing only works on the default cookie store.
20226 <rdar://problem/33330724> and https://bugs.webkit.org/show_bug.cgi?id=174580
20228 Reviewed by Sam Weinig.
20230 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
20231 (runTestWithWebsiteDataStore): Refactor the cookie observing test out so it can be
20232 called for the default store, a non-persistent store, and a custom store.
20235 2017-07-16 Sam Weinig <sam@webkit.org>
20237 [Scripts] Fix missing variable warnings from svn-create-patch when there are untracked files
20238 https://bugs.webkit.org/show_bug.cgi?id=174575
20240 Reviewed by Brady Eidson.
20242 * Scripts/svn-create-patch:
20243 (findModificationType):
20244 Add support for more status codes. C -> conflicted, ? -> untracked, ! -> missing. Give a
20245 default value of "unknown".
20247 (generateFileList):
20248 Handle all the new modification types. Abort on conflicted, missing, and unknown. Log
20249 for untracked, which matches our old behavior.
20251 2017-07-17 Charlie Turner <cturner@igalia.com>
20253 Add some missing build dependencies on Fedora
20254 https://bugs.webkit.org/show_bug.cgi?id=174578
20256 Unreviewed dependency update.
20258 * gtk/install-dependencies:
20260 2017-07-16 Brady Eidson <beidson@apple.com>
20262 Crash when a WKHTTPCookieStore outlives its owning WKWebsiteDataStore.
20263 <rdar://problem/33341730> and https://bugs.webkit.org/show_bug.cgi?id=174574
20265 Reviewed by Tim Horton.
20267 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
20268 (-[CookieNavigationDelegate webView:didFinishNavigation:]):
20271 2017-07-16 Bernhard M. Wiedemann <bwiedemann@suse.de>
20273 [GTK] Sort inspector GResource manifest to ensure reproducible builds
20274 https://bugs.webkit.org/show_bug.cgi?id=174540
20276 Reviewed by Michael Catanzaro.
20278 * gtk/generate-inspector-gresource-manifest.py:
20279 (get_filenames): sort list of input files
20281 2017-07-15 Brady Eidson <beidson@apple.com>
20283 Make sure all CFHTTPCookieStorageRefs we create are scheduled.
20284 <rdar://problem/33221110> and https://bugs.webkit.org/show_bug.cgi?id=174513
20286 Reviewed by Tim Horton.
20288 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
20289 (TEST): Make this test more reliable by clearing everything beforehand.
20291 2017-07-15 David Kilzer <ddkilzer@apple.com>
20293 Make it possible to extend check-webkit-style with Apple-internal checkers
20294 <https://webkit.org/b/174464>
20295 <rdar://problem/25564402>
20297 Reviewed by Darin Adler.
20299 * Scripts/webkitpy/style/checker.py: Import apple_additions.
20300 (_all_categories): Add categories from apple_additions() if it
20302 (CheckerDispatcher._create_checker): Create python checker
20303 from apple_additions() if it exists.
20305 2017-07-15 Wenson Hsieh <wenson_hsieh@apple.com>
20307 [iOS WK2] Presenting an action sheet on an image map prevents selection UI from updating
20308 https://bugs.webkit.org/show_bug.cgi?id=174539
20309 <rdar://problem/33307395>
20311 Reviewed by Darin Adler.
20313 Adds a new unit test suite to cover action sheet popover presentation.
20315 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
20316 * TestWebKitAPI/Tests/WebKit2Cocoa/image-map.html: Added.
20317 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm: Added.
20318 (-[ActionSheetObserver waitForActionSheetAfterBlock:]):
20320 Runs the given block and waits until the UI process has indicated that it will present an action sheet.
20322 (-[ActionSheetObserver _webView:actionsForElement:defaultActions:]):
20323 (TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler):
20325 Helper class to alter the behavior of [[UIDevice currentDevice] userInterfaceIdiom] for testing.
20327 (TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom):
20328 (TestWebKitAPI::TEST):
20330 2017-07-15 Sam Weinig <sam@webkit.org>
20332 [Scripts] Make svn-create-patch work better when called in sub directories
20333 https://bugs.webkit.org/show_bug.cgi?id=174551
20335 Reviewed by Darin Adler.
20337 - Fixes manufacturePatchForAdditionWithHistory to use the correct path
20338 by ensuring that the prefix is applied as is done in generateDiff.
20339 - Silence output of explanatory lines from svn stat (" > move to ...")
20340 that show up in STDERR when running svn-create-patch.
20341 - Add verbose logging that I found useful while debugging this issue.
20343 * Scripts/svn-create-patch:
20346 (findSourceFileAndRevision):
20348 (generateFileList):
20349 (manufacturePatchForAdditionWithHistory):
20351 2017-07-15 Jonathan Bedard <jbedard@apple.com>
20353 Unreviewed build fix after r219537.
20355 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
20357 2017-07-14 Jonathan Bedard <jbedard@apple.com>
20360 https://bugs.webkit.org/show_bug.cgi?id=174430
20361 <rdar://problem/33269288>
20363 Reviewed by Tim Horton.
20365 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: Define drag-and-drop API required for testing.
20366 * TestWebKitAPI/ios/DataInteractionSimulator.h: Ditto.
20367 * TestWebKitAPI/ios/DataInteractionSimulator.mm: Ditto.
20369 2017-07-14 Jonathan Bedard <jbedard@apple.com>
20371 Failing to install on iPad simulators
20372 https://bugs.webkit.org/show_bug.cgi?id=174532
20373 <rdar://problem/33328347>
20375 Reviewed by Stephanie Lewis.
20377 * Scripts/webkitpy/xcode/simulated_device.py:
20378 (SimulatedDevice.install_app): Place install command in retry try-except block.
20380 2017-07-14 Jeff Miller <jeffm@apple.com>
20382 Add test for -[WKProcessPool _setObjectsForBundleParametersWithDictionary:].
20383 https://bugs.webkit.org/show_bug.cgi?id=174524
20385 Reviewed by Sam Weinig.
20387 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParameters.mm:
20389 Renamed TestParameter to TestParameter1.
20390 Add test for -[WKProcessPool _setObjectsForBundleParametersWithDictionary:].
20392 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParametersPlugIn.mm:
20393 (-[BundleParametersPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
20394 Observe changes for two bundle parameters.
20396 (-[BundleParametersPlugIn dealloc]):
20397 Remove observers for two bundle parameters.
20399 2017-07-14 Commit Queue <commit-queue@webkit.org>
20401 Unreviewed, rolling out r219510.
20402 https://bugs.webkit.org/show_bug.cgi?id=174525
20404 Need to revert length() == 0 check for null string (Requested
20405 by yusukesuzuki on #webkit).
20407 Reverted changeset:
20409 "[WTF] Newly added AtomicStringImpl should use BufferInternal
20410 static string if StringImpl is static"
20411 https://bugs.webkit.org/show_bug.cgi?id=174501
20412 http://trac.webkit.org/changeset/219510
20414 2017-07-14 Jer Noble <jer.noble@apple.com>
20416 [MSE] Removing samples when presentation order does not match decode order can cause bad behavior.
20417 https://bugs.webkit.org/show_bug.cgi?id=174514
20419 Reviewed by Sam Weinig.
20421 * TestWebKitAPI/Tests/WebCore/SampleMap.cpp:
20422 (TestWebKitAPI::TEST_F):
20424 2017-07-14 Yusuke Suzuki <utatane.tea@gmail.com>
20426 [WTF] Newly added AtomicStringImpl should use BufferInternal static string if StringImpl is static
20427 https://bugs.webkit.org/show_bug.cgi?id=174501
20429 Reviewed by Darin Adler.
20431 * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
20432 (TestWebKitAPI::TEST):
20434 2017-07-14 Jonathan Bedard <jbedard@apple.com>
20436 Bring mac expectations in-line with other platforms
20437 https://bugs.webkit.org/show_bug.cgi?id=174472
20438 <rdar://problem/33297388>
20440 Reviewed by David Kilzer.
20442 The override order for Mac test expectations does not conform to the pattern used by iOS,
20443 GTK, Windows and WPE. Before this change, El Capitan's baseline search path looks like this:
20447 platform/mac-elcapitan
20448 platform/mac-sierra
20451 After this change, El Capitan's baseline search path looks like this:
20453 platform/mac-sierra-wk2
20454 platform/mac-sierra
20459 * Scripts/webkitpy/port/mac.py:
20460 (MacPort.__init__): If a specific version is specified in the port name, use that
20462 (MacPort.default_baseline_search_path): Expectation search paths should work the
20463 same way they do on other ports. Port + version overrides port, port overrides generic
20464 and wk1/wk2 should override expectations for the two combined.
20465 * Scripts/webkitpy/port/mac_unittest.py:
20466 (MacTest.test_tests_for_other_platforms): Deleted.
20467 (MacTest._assert_search_path): Deleted.
20468 (MacTest.test_baseline_search_path): Deleted.
20469 * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
20470 (TestRebaselineTest.test_baseline_directory): Adjust expectations for new over-ride order.
20471 (test_rebaseline_test_and_print_scm_changes): Ditto.
20472 (test_rebaseline_and_copy_test): Ditto.
20473 (test_rebaseline_and_copy_test_no_existing_result): Ditto.
20474 (test_rebaseline_and_copy_test_with_lion_result): Ditto.
20475 (test_rebaseline_and_copy_no_overwrite_test): Ditto.
20477 2017-07-13 Michael Catanzaro <mcatanzaro@igalia.com>
20479 Fix style checker unit test
20481 Unreviewed WebKit2 => WebKit fixup.
20483 * Scripts/webkitpy/style/checker_unittest.py:
20484 (CheckerDispatcherSkipTest.test_should_skip_with_warning):
20486 2017-07-13 Matthew Hanson <matthew_hanson@apple.com>
20488 Use the old WebKit/WebKit2 targets for CMake builds. (v2)
20490 Unreviewed build fix.
20492 r219492 missed one hunk from its partial revert of r219489.
20493 This patch reverts that hunk.
20495 * TestWebKitAPI/CMakeLists.txt:
20497 2017-07-13 Matthew Hanson <matthew_hanson@apple.com>
20499 Use the old WebKit/WebKit2 targets for CMake builds.
20501 Unreviewed build fix.
20503 We can update the target names to match the Framework names in a future patch.
20504 This is a partial revert of r219489.
20506 * TestWebKitAPI/CMakeLists.txt:
20507 WebKitLegacy => WebKit
20510 2017-07-13 Matthew Hanson <matthew_hanson@apple.com>
20512 Fix TestWebKit API.
20513 https://bugs.webkit.org/show_bug.cgi?id=174164
20514 rdar://problem/33137595
20516 Reviewed by Dan Bernstein.
20518 * TestWebKitAPI/CMakeLists.txt:
20519 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20520 * TestWebKitAPI/PlatformGTK.cmake:
20522 2017-07-13 Matthew Hanson <matthew_hanson@apple.com>
20524 Update tools and configurations after renaming Source/WebKit2 to Source/WebKit.
20525 https://bugs.webkit.org/show_bug.cgi?id=174164
20526 rdar://problem/33137595
20528 Reviewed by Dan Bernstein.
20530 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
20532 * DumpRenderTree/mac/Configurations/Base.xcconfig:
20533 * Scripts/build-webkit:
20534 * Scripts/do-file-rename:
20535 * Scripts/do-webcore-rename:
20536 * Scripts/update-webkit-localizable-strings:
20537 * Scripts/webkitpy/common/config/watchlist:
20538 * Scripts/webkitpy/style/checker.py:
20539 * Scripts/webkitpy/style/checkers/featuredefines.py:
20540 * gtk/make-dist.py:
20541 (ensure_version_if_possible):
20542 * gtk/manifest.txt.in:
20544 2017-07-05 Matthew Hanson <matthew_hanson@apple.com>
20546 Update tools and configurations after renaming Source/WebKit to Source/WebKitLegacy.
20547 https://bugs.webkit.org/show_bug.cgi?id=174162
20548 rdar://problem/33137594
20550 Reviewed by Dan Bernstein.
20552 Mass rename of Source/WebKit to Source/WebKitLegacy in OpenSource tooling.
20554 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
20555 * DumpRenderTree/mac/InternalHeaders/WebKit/WebTypesInternal.h:
20556 * EWSTools/configure-clang-linux.sh:
20557 * Scripts/build-webkit:
20558 * Scripts/do-file-rename:
20559 * Scripts/do-webcore-rename:
20560 * Scripts/update-webkit-localizable-strings:
20561 * Scripts/webkitpy/common/checkout/checkout_unittest.py:
20562 * Scripts/webkitpy/style/checkers/changelog_unittest.py:
20563 * Scripts/webkitpy/style/checkers/featuredefines.py:
20564 * gtk/manifest.txt.in:
20566 2017-07-13 Jonathan Bedard <jbedard@apple.com>
20568 Add script to rebase patches during the WebKit2->WebKit/WebKit->WebKitLegacy transition
20569 https://bugs.webkit.org/show_bug.cgi?id=174438
20570 <rdar://problem/33277112>
20572 Reviewed by Aakash Jain.
20574 Given a patch, this will convert the changes from the path to the new directory structure.
20576 * Scripts/rebase-patch-after-webkit-move: Added.
20577 (append_source): Append 'Source' to the provided path.
20578 (is_editable_line): Return true if a line the script expects to modify.
20579 (needs_rebase): Return if a line needs to be rebased based on it's content.
20580 (rebase_line): Rebase the provided line.
20581 (rebase): Rebase a patch given the lines of that patch and a file to output the rebased patch to.
20582 (parse_arguments): Parse the command line arguments and return the patches to be rebased, if they
20585 2017-07-12 Nan Wang <n_wang@apple.com>
20587 AX: [iOS] Implement a way to retrieve a text marker range with desired text that is closest to a position
20588 https://bugs.webkit.org/show_bug.cgi?id=174393
20589 <rdar://problem/33248006>
20591 Reviewed by Chris Fleizach.
20593 * DumpRenderTree/AccessibilityUIElement.cpp:
20594 (textMarkerRangeMatchesTextNearMarkersCallback):
20595 (AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20596 (AccessibilityUIElement::getJSClass):
20597 * DumpRenderTree/AccessibilityUIElement.h:
20598 * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
20599 (AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20600 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
20601 (WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20602 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
20603 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
20604 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
20605 (WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20607 2017-07-12 Matt Lewis <jlewis3@apple.com>
20609 Unreviewed, rolling out r219409.
20611 The revision caused the Windows builds to fail.
20613 Reverted changeset:
20615 "AX: [iOS] Implement a way to retrieve a text marker range
20616 with desired text that is closest to a position"
20617 https://bugs.webkit.org/show_bug.cgi?id=174393
20618 http://trac.webkit.org/changeset/219409
20620 2017-07-12 Nan Wang <n_wang@apple.com>
20622 AX: [iOS] Implement a way to retrieve a text marker range with desired text that is closest to a position
20623 https://bugs.webkit.org/show_bug.cgi?id=174393
20624 <rdar://problem/33248006>
20626 Reviewed by Chris Fleizach.
20628 * DumpRenderTree/AccessibilityUIElement.cpp:
20629 (textMarkerRangeMatchesTextNearMarkersCallback):
20630 (AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20631 (AccessibilityUIElement::getJSClass):
20632 * DumpRenderTree/AccessibilityUIElement.h:
20633 * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
20634 (AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20635 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
20636 (WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20637 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
20638 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
20639 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
20640 (WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
20642 2017-07-12 Emilio Cobos Álvarez <ecobos@igalia.com>
20644 Make prepare-ChangeLog -g <commit> generate a more standard ChangeLog entry.
20645 https://bugs.webkit.org/show_bug.cgi?id=174197
20647 Reviewed by Darin Adler.
20649 This bit me the first time I tried to submit a patch to WebKit, and still I have
20650 to manually edit the ChangeLog every time I use the script.
20652 This generates a more convenient and standard ChangeLog entry.
20654 * Scripts/prepare-ChangeLog:
20655 (generateNewChangeLogs):
20657 2017-07-12 Matt Lewis <jlewis3@apple.com>
20659 Unreviewed, rolling out r219401.
20661 This revision rolled out the previous patch, but after talking
20662 with reviewer, a rebaseline is what was needed.Rolling back in
20665 Reverted changeset:
20667 "Unreviewed, rolling out r219379."
20668 https://bugs.webkit.org/show_bug.cgi?id=174400
20669 http://trac.webkit.org/changeset/219401
20671 2017-07-12 Matt Lewis <jlewis3@apple.com>
20673 Unreviewed, rolling out r219379.
20675 This revision caused a consistent failure in the test
20676 fast/dom/Window/property-access-on-cached-window-after-frame-
20679 Reverted changeset:
20681 "Remove NAVIGATOR_HWCONCURRENCY"
20682 https://bugs.webkit.org/show_bug.cgi?id=174400
20683 http://trac.webkit.org/changeset/219379
20685 2017-07-12 Zan Dobersek <zdobersek@igalia.com>
20688 https://bugs.webkit.org/show_bug.cgi?id=172104
20690 Reviewed by Michael Catanzaro.
20692 * WebKitTestRunner/wpe/HeadlessViewBackend.h:
20693 Include the <epoxy/egl.h> header, dropping the EGL and GLES2 inclusions.
20695 2017-07-12 Zan Dobersek <zdobersek@igalia.com>
20697 [GTK][WPE] Align Jhbuild patches for GStreamer packages
20698 https://bugs.webkit.org/show_bug.cgi?id=174363
20700 Reviewed by Michael Catanzaro.
20702 Align the patches we apply over Jhbuild-managed GStreamer dependency packages
20703 between the GTK+ and WPE port. There's no reason for the two ports to apply
20704 different patches over same versions of GStreamer releases.
20706 This aligns the two ports on this specific issue. Next we'll look into
20707 creating a single GStreamer-specific Jhbuild moduleset that will allow us
20708 to keep these patches in a single place, avoiding duplicate files.
20710 * gtk/jhbuild.modules:
20711 * gtk/patches/gst-plugins-good-0005-souphttpsrc-cookie-jar-and-context-query-support.patch: Added.
20712 * gtk/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch: Renamed from Tools/gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch.
20713 * gtk/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch: Added.
20714 * wpe/patches/gstreamer-typefind-Only-push-a-CAPS-event-downstream-if-the-.patch: Removed.
20716 2017-07-11 Dean Jackson <dino@apple.com>
20718 Remove NAVIGATOR_HWCONCURRENCY
20719 https://bugs.webkit.org/show_bug.cgi?id=174400
20721 Reviewed by Sam Weinig.
20723 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20725 2017-07-11 Ansh Shukla <ansh_shukla@apple.com>
20727 WKWindowFeatures needs to expose scrollbar, fullscreen, and dialog configuration properties
20728 https://bugs.webkit.org/show_bug.cgi?id=174239
20730 Reviewed by Brady Eidson.
20732 Create windows with specific features set and make sure those are properly reflected in the
20733 WKWindowFeatures object.
20735 * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
20736 (resetToConsistentState):
20737 (-[CheckWindowFeaturesUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
20740 2017-07-11 Jonathan Bedard <jbedard@apple.com>
20742 Do not duplicate files when deleting directories with svn 1.9
20743 https://bugs.webkit.org/show_bug.cgi?id=174339
20744 <rdar://problem/33226781>
20746 Reviewed by David Kilzer.
20748 * Scripts/svn-create-patch:
20749 (diffOptionsForFile): No longer pass -N option, since this does not work in SVN 1.9.4.
20750 (generateFileList): Determine which files are deleted because they are part of a
20751 directory being deleted.
20753 2017-07-11 Dean Jackson <dino@apple.com>
20755 Rolling out r219372.
20757 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20759 2017-07-11 Dean Jackson <dino@apple.com>
20761 Remove NAVIGATOR_HWCONCURRENCY
20762 https://bugs.webkit.org/show_bug.cgi?id=174400
20764 Reviewed by Sam Weinig.
20766 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20768 2017-07-11 Lucas Forschler <lforschler@apple.com>
20770 Teach build workers to fetch archives from S3.
20771 https://bugs.webkit.org/show_bug.cgi?id=174384
20773 Reviewed by Aakash Jain.
20775 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
20776 (DownloadBuiltProduct):
20778 2017-07-11 Lucas Forschler <lforschler@apple.com>
20780 Configure buildbot to transfer all archives to S3.
20781 Previously this was Mac only, but it's time to expand!
20782 https://bugs.webkit.org/show_bug.cgi?id=174378
20784 Reviewed by Aakash Jain.
20786 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
20787 (BuildFactory.__init__):
20789 2017-07-11 Zan Dobersek <zdobersek@igalia.com>
20791 [WPE] Bump GStreamer packages in jhbuild.modules to 1.10.5
20792 https://bugs.webkit.org/show_bug.cgi?id=174350
20794 Reviewed by Xabier Rodriguez-Calvar.
20796 Bump the various GStreamer dependencies listed in WPE's Jhbuild modules file
20797 to the 1.10.5 version. One gstreamer patch is added. The two gst-plugins-bad
20798 patches are removed. The patches for gst-plugins-good are updated, removing
20799 the stale ones and adding the additional changes to qtdemux, souphttpsrc and
20800 rtpbin elements that will help with the EMEv3 development.
20802 * wpe/jhbuild.modules:
20803 * wpe/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Removed.
20804 * wpe/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Removed.
20805 * wpe/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch: Added.
20806 * wpe/patches/gst-plugins-good-0005-souphttpsrc-cookie-jar-and-context-query-support.patch: Added.
20807 * wpe/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch: Added.
20808 * wpe/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch: Added.
20809 * wpe/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
20810 * wpe/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
20811 * wpe/patches/gstreamer-0001-protection-added-function-to-filter-system-ids.patch: Added.
20813 2017-07-10 John Wilander <wilander@apple.com>
20815 Resource Load Statistics: Prune statistics in orders of importance
20816 https://bugs.webkit.org/show_bug.cgi?id=174215
20817 <rdar://problem/33164403>
20819 Reviewed by Chris Dumez.
20821 Nest infrastructure. Adds these functions:
20822 1. testRunner.setStatisticsLastSeen()
20823 2. setStatisticsMaxStatisticsEntries()
20824 3. setStatisticsPruneEntriesDownTo()
20826 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
20827 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
20828 (WTR::TestRunner::setStatisticsLastSeen):
20829 (WTR::TestRunner::setStatisticsMaxStatisticsEntries):
20830 (WTR::TestRunner::setStatisticsPruneEntriesDownTo):
20831 * WebKitTestRunner/InjectedBundle/TestRunner.h:
20832 * WebKitTestRunner/TestController.cpp:
20833 (WTR::TestController::setStatisticsLastSeen):
20834 (WTR::TestController::setMaxStatisticsEntries):
20835 (WTR::TestController::setPruneEntriesDownTo):
20836 * WebKitTestRunner/TestController.h:
20837 * WebKitTestRunner/TestInvocation.cpp:
20838 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
20839 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
20840 (WTR::TestController::setStatisticsLastSeen):
20841 (WTR::TestController::setStatisticsMaxStatisticsEntries):
20842 (WTR::TestController::setStatisticsPruneEntriesDownTo):
20844 2017-07-03 Brian Burg <bburg@apple.com>
20846 Web Replay: remove some unused code
20847 https://bugs.webkit.org/show_bug.cgi?id=173903
20849 Rubber-stamped by Joseph Pecoraro.
20851 * Scripts/run-input-generator-tests: Removed.
20852 * Scripts/webkitpy/replay/__init__.py: Removed.
20853 * Scripts/webkitpy/replay/main.py: Removed.
20855 2017-07-10 Zan Dobersek <zdobersek@igalia.com>
20857 [WPE] Fix layout test baseline and TestExpectations hierarchy
20858 https://bugs.webkit.org/show_bug.cgi?id=174092
20860 Reviewed by Michael Catanzaro.
20862 Like for the GTK+ port, override the default_baseline_search_path() and
20863 _port_specific_expectations_files() methods in the webkitpy.port.WPEPort class.
20864 Both methods operate on a short list of search paths that defaults to 'wpe' and
20865 'wk2', along with any other user-specified platform directory.
20867 The test_expectations_file_position() method is overridden for testing purposes,
20868 and relevant unit tests are added.
20870 * Scripts/webkitpy/port/wpe.py:
20871 (WPEPort._search_paths):
20873 (WPEPort.default_baseline_search_path):
20874 (WPEPort._port_specific_expectations_files):
20875 (WPEPort.test_expectations_file_position):
20876 * Scripts/webkitpy/port/wpe_unittest.py:
20877 (WPEPortTest.test_default_baseline_search_path):
20879 (WPEPortTest.test_port_specific_expectations_files):
20881 2017-07-10 Chris Dumez <cdumez@apple.com>
20883 Further WebResourceLoadStatisticsStore / ResourceLoadStatisticsStore clean up
20884 https://bugs.webkit.org/show_bug.cgi?id=174301
20886 Reviewed by Brent Fulgham.
20888 Rename some of the testRunner API for clarity and to better match what it calls
20891 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
20892 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
20893 (WTR::TestRunner::statisticsUpdateCookiePartitioning):
20894 (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost):
20895 * WebKitTestRunner/InjectedBundle/TestRunner.h:
20896 * WebKitTestRunner/TestController.cpp:
20897 (WTR::TestController::statisticsUpdateCookiePartitioning):
20898 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
20899 * WebKitTestRunner/TestController.h:
20900 * WebKitTestRunner/TestInvocation.cpp:
20901 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
20902 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
20903 (WTR::TestController::statisticsUpdateCookiePartitioning):
20904 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
20906 2017-07-10 Charlie Turner <cturner@igalia.com>
20908 [GStreamer] Live twitch.tv videos do not play
20909 https://bugs.webkit.org/show_bug.cgi?id=174222
20911 Reviewed by Michael Catanzaro.
20913 Upgrade GStreamer to 1.10.5. It contains a change to typefind that
20914 fixes videos not playing on twitch.tv.
20916 * gtk/jhbuild.modules:
20918 2017-07-09 Zan Dobersek <zdobersek@igalia.com>
20920 Add WebGL2 configuration option to build-webkit
20921 https://bugs.webkit.org/show_bug.cgi?id=174251
20923 Reviewed by Michael Catanzaro.
20925 * Scripts/webkitperl/FeatureList.pm: Add the 'webgl2' option, making it possible
20926 to enable the ENABLE_WEBGL2 flag through the build-webkit script. The feature
20927 is marked as enabled for the Apple Cocoa ports.
20929 2017-07-08 Chris Dumez <cdumez@apple.com>
20931 Simplify WebResourceLoadStatisticsStore / ResourceLoadStatisticsStore
20932 https://bugs.webkit.org/show_bug.cgi?id=174290
20934 Reviewed by Brent Fulgham.
20936 Rename testRunner API to match the new internal API names.
20938 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
20939 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
20940 (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
20941 (WTR::TestRunner::statisticsSubmitTelemetry):
20942 * WebKitTestRunner/InjectedBundle/TestRunner.h:
20943 * WebKitTestRunner/TestController.cpp:
20944 (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
20945 (WTR::TestController::statisticsSubmitTelemetry):
20946 * WebKitTestRunner/TestController.h:
20947 * WebKitTestRunner/TestInvocation.cpp:
20948 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
20949 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
20950 (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
20951 (WTR::TestController::statisticsSubmitTelemetry):
20953 2017-07-08 Yusuke Suzuki <utatane.tea@gmail.com>
20955 Drop NOSNIFF compile flag
20956 https://bugs.webkit.org/show_bug.cgi?id=174289
20958 Reviewed by Michael Catanzaro.
20960 * Scripts/webkitperl/FeatureList.pm:
20961 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20963 2017-07-07 Wenson Hsieh <wenson_hsieh@apple.com>
20965 [iOS DnD] For cross-app drags, 'drop' event handlers are never invoked if dataTransfer.dropEffect is not set while dragging
20966 https://bugs.webkit.org/show_bug.cgi?id=174219
20967 <rdar://problem/32083177>
20969 Reviewed by Ryosuke Niwa.
20971 Add plumbing and support to mock the value of -allowsMoveOperation on the simulated UIDragDropSession objects.
20972 Setting the DataInteractionSimulator's shouldAllowMoveOperation property to NO simulates a drag operation coming
20973 in from another app out-of-process, for which move operations won't cause a drop to be performed in the first
20976 Also tweaks 2 existing unit tests regarding file uploads via JavaScript to simulate items coming in from a
20977 different application, and adds a new test to check that if a drop area specifically requests a MOVE operation,
20978 no action is taken when dropping.
20980 * TestWebKitAPI/Tests/WebKit2Cocoa/file-uploading.html:
20981 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
20982 (TestWebKitAPI::TEST):
20983 * TestWebKitAPI/ios/DataInteractionSimulator.h:
20984 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
20985 (-[MockDragDropSession initWithItems:location:window:allowMove:]):
20986 (-[MockDragDropSession allowsMoveOperation]):
20987 (-[MockDataOperationSession initWithProviders:location:window:allowMove:]):
20988 (-[MockDataInteractionSession initWithWindow:allowMove:]):
20989 (-[DataInteractionSimulator initWithWebView:]):
20990 (-[DataInteractionSimulator runFrom:to:]):
20991 (-[DataInteractionSimulator _advanceProgress]):
20992 (-[MockDragDropSession initWithItems:location:window:]): Deleted.
20993 (-[MockDataOperationSession initWithProviders:location:window:]): Deleted.
20994 (-[MockDataInteractionSession initWithWindow:]): Deleted.
20996 2017-07-07 Commit Queue <commit-queue@webkit.org>
20998 Unreviewed, rolling out r219238, r219239, and r219241.
20999 https://bugs.webkit.org/show_bug.cgi?id=174265
21001 "fast/workers/dedicated-worker-lifecycle.html is flaky"
21002 (Requested by yusukesuzuki on #webkit).
21004 Reverted changesets:
21006 "[WTF] Implement WTF::ThreadGroup"
21007 https://bugs.webkit.org/show_bug.cgi?id=174081
21008 http://trac.webkit.org/changeset/219238
21010 "Unreviewed, build fix after r219238"
21011 https://bugs.webkit.org/show_bug.cgi?id=174081
21012 http://trac.webkit.org/changeset/219239
21014 "Unreviewed, CLoop build fix after r219238"
21015 https://bugs.webkit.org/show_bug.cgi?id=174081
21016 http://trac.webkit.org/changeset/219241
21018 2017-07-07 Yusuke Suzuki <utatane.tea@gmail.com>
21020 [GTK][WPE] Enable X-Content-Type-Options: nosniff
21021 https://bugs.webkit.org/show_bug.cgi?id=174250
21023 Reviewed by Carlos Alberto Lopez Perez.
21025 * Scripts/webkitperl/FeatureList.pm:
21027 2017-07-07 Charlie Turner <cturner@igalia.com>
21028 [GStreamer] vid.me videos do not play
21029 https://bugs.webkit.org/show_bug.cgi?id=172240
21031 Reviewed by Xabier Rodriguez-Calvar.
21033 Build httpsoupsrc again for use in adaptive streaming pipelines, and
21034 have the existing libsoup build against GNOME to avoid header drift
21035 against GStreamer's linked Soup library.
21037 * gtk/jhbuild.modules:
21039 2017-07-06 Lucas Forschler <lforschler@apple.com>
21041 Write a support script to enable buildbot to upload to S3
21042 https://bugs.webkit.org/show_bug.cgi?id=174196
21044 Reviewed by Stephanie Lewis.
21046 * BuildSlaveSupport/build.webkit.org-config/transfer-archive-to-s3: Added.
21050 2017-07-06 Lucas Forschler <lforschler@apple.com>
21052 Enabling uploading archives to S3.
21053 https://bugs.webkit.org/show_bug.cgi?id=174198
21055 Reviewed by Stephanie Lewis.
21057 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
21058 (ArchiveMinifiedBuiltProduct): Create a minified archive from a full archive
21059 (UploadMinifiedBuiltProduct): Upload minified archive to build master
21060 (TransferToS3): Transfer full and minified archives to S3
21062 2017-07-05 Yusuke Suzuki <utatane.tea@gmail.com>
21064 [WTF] Implement WTF::ThreadGroup
21065 https://bugs.webkit.org/show_bug.cgi?id=174081
21067 Reviewed by Mark Lam.
21069 Add WTF::ThreadGroup tests.
21071 * TestWebKitAPI/CMakeLists.txt:
21072 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21073 * TestWebKitAPI/Tests/WTF/ThreadGroup.cpp: Added.
21074 (TestWebKitAPI::TEST):
21076 2017-07-06 Yusuke Suzuki <utatane.tea@gmail.com>
21078 [WTF] Clean up StringStatics.cpp by using LazyNeverDestroyed<> for Atoms
21079 https://bugs.webkit.org/show_bug.cgi?id=174150
21081 Reviewed by Mark Lam.
21083 * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
21084 (TestWebKitAPI::TEST):
21085 * TestWebKitAPI/TestsController.cpp:
21086 (TestWebKitAPI::TestsController::TestsController):
21088 2017-07-06 Lucas Forschler <lforschler@apple.com>
21090 Enabling uploading archives to S3.
21091 https://bugs.webkit.org/show_bug.cgi?id=174198
21093 Reviewed by Lucas Forschler.
21095 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
21096 (ArchiveMinifiedBuiltProduct): Create a minified archive from a full archive
21097 (UploadMinifiedBuiltProduct): Upload minified archive to build master
21098 (TransferToS3): Transfer full and minified archives to S3
21100 2017-07-06 Carlos Alberto Lopez Perez <clopez@igalia.com>
21102 [GTK][WPE] kill-old-process should kill more webkit related process
21103 https://bugs.webkit.org/show_bug.cgi?id=174220
21105 Reviewed by Michael Catanzaro.
21107 Generate list of possible webkit-related process names and add
21108 them to the list of process to kill.
21109 Also update the possible system related process for GTK+/WPE.
21111 * BuildSlaveSupport/kill-old-processes:
21112 (listAllWebKitPrograms):
21115 2017-07-06 Chris Dumez <cdumez@apple.com>
21117 FileMonitor should not be ref counted
21118 https://bugs.webkit.org/show_bug.cgi?id=174166
21120 Reviewed by Brent Fulgham.
21122 Update the API tests to reflect the API change.
21124 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
21125 (TestWebKitAPI::TEST_F):
21127 2017-07-06 Commit Queue <commit-queue@webkit.org>
21129 Unreviewed, rolling out r219194.
21130 https://bugs.webkit.org/show_bug.cgi?id=174207
21132 it broke some layout tests (Requested by clopez on #webkit).
21134 Reverted changeset:
21136 "[GStreamer] vid.me videos do not play"
21137 https://bugs.webkit.org/show_bug.cgi?id=172240
21138 http://trac.webkit.org/changeset/219194
21140 2017-07-06 Matt Lewis <jlewis3@apple.com>
21142 Unreviewed, rolling out r219178.
21144 This caused a consistent failure with the API test
21145 StringBuilderTest.ToAtomicStringOnEmpty on all Debug testers.
21147 Reverted changeset:
21149 "[WTF] Clean up StringStatics.cpp by using
21150 LazyNeverDestroyed<> for Atoms"
21151 https://bugs.webkit.org/show_bug.cgi?id=174150
21152 http://trac.webkit.org/changeset/219178
21154 2017-07-06 Alicia Boya García <aboya@igalia.com>
21156 Add CWD to Perl library path (no longer the default since 5.26.0)
21157 https://bugs.webkit.org/show_bug.cgi?id=174200
21159 Reviewed by Michael Catanzaro.
21161 * Scripts/webkitpy/tool/commands/setupgitclone.py:
21162 (SetupGitClone._get_username_and_email):
21164 2017-07-06 Gyuyoung Kim <gyuyoung.kim@webkit.org>
21166 Unreviewed, update my email address.
21168 * Scripts/webkitpy/common/config/contributors.json:
21170 2017-07-06 Charlie Turner <cturner@igalia.com>
21171 [GStreamer] vid.me videos do not play
21172 https://bugs.webkit.org/show_bug.cgi?id=172240
21174 Reviewed by Xabier Rodriguez-Calvar.
21176 Build httpsoupsrc again for use in adaptive streaming pipelines, and
21177 have the existing libsoup build against GNOME to avoid header drift
21178 against GStreamer's linked Soup library.
21180 * gtk/jhbuild.modules:
21182 2017-07-05 Don Olmstead <don.olmstead@sony.com>
21184 [WTF] Move SoftLinking.h into WTF
21185 https://bugs.webkit.org/show_bug.cgi?id=174000
21187 Reviewed by Alex Christensen.
21189 * DumpRenderTree/mac/TestRunnerMac.mm:
21190 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
21191 (test_primary_header):
21192 (ErrorCollector.__init__): Deleted.
21193 (ErrorCollector.__call__): Deleted.
21194 (ErrorCollector.results): Deleted.
21195 (ErrorCollector.result_list): Deleted.
21196 (ErrorCollector.verify_all_categories_are_seen): Deleted.
21197 (MockIo.open): Deleted.
21198 (CppFunctionsTest.test_convert_to_lower_with_underscores): Deleted.
21199 (CppFunctionsTest.test_create_acronym): Deleted.
21200 (CppFunctionsTest.test_is_c_or_objective_c): Deleted.
21201 (CppFunctionsTest.test_parameter): Deleted.
21202 (CppFunctionsTest.test_single_line_view): Deleted.
21203 (CppFunctionsTest.test_create_skeleton_parameters): Deleted.
21204 (CppFunctionsTest.test_find_parameter_name_index): Deleted.
21205 (CppFunctionsTest.test_parameter_list): Deleted.
21206 (CppFunctionsTest.test_check_parameter_against_text): Deleted.
21207 (CppStyleTestBase.process_file_data): Deleted.
21208 (CppStyleTestBase.perform_lint): Deleted.
21209 (CppStyleTestBase.perform_single_line_lint): Deleted.
21210 (CppStyleTestBase.perform_multi_line_lint): Deleted.
21211 (CppStyleTestBase.perform_language_rules_check): Deleted.
21212 (CppStyleTestBase.perform_function_lengths_check): Deleted.
21213 (CppStyleTestBase.perform_pass_ptr_check): Deleted.
21214 (CppStyleTestBase.perform_leaky_pattern_check): Deleted.
21215 (CppStyleTestBase.perform_include_what_you_use): Deleted.
21216 (CppStyleTestBase.perform_header_guard_check): Deleted.
21217 (CppStyleTestBase.assert_lint): Deleted.
21218 (CppStyleTestBase.assert_lint_one_of_many_errors_re): Deleted.
21219 (CppStyleTestBase.assert_multi_line_lint): Deleted.
21220 (CppStyleTestBase.assert_multi_line_lint_re): Deleted.
21221 (CppStyleTestBase.assert_language_rules_check): Deleted.
21222 (CppStyleTestBase.assert_include_what_you_use): Deleted.
21223 (CppStyleTestBase.assert_header_guard): Deleted.
21224 (CppStyleTestBase.assert_blank_lines_check): Deleted.
21225 (CppStyleTestBase.assert_positions_equal): Deleted.
21226 (FunctionDetectionTest.test_basic_function_detection): Deleted.
21227 (FunctionDetectionTest.test_function_declaration_detection): Deleted.
21228 (FunctionDetectionTest.test_pure_function_detection): Deleted.
21229 (FunctionDetectionTest.test_override_and_final_function_detection): Deleted.
21230 (FunctionDetectionTest.test_ignore_macros): Deleted.
21231 (FunctionDetectionTest.test_non_functions): Deleted.
21232 (FunctionDetectionTest.test_non_functions.Stuff): Deleted.
21233 (FunctionDetectionTest.test_parameter_list): Deleted.
21234 (Cpp11StyleTest.test_rvaule_reference_in_parameter_pack): Deleted.
21235 (CppStyleTest.test_asm_lines_ignored): Deleted.
21236 (CppStyleTest.test_get_line_width): Deleted.
21237 (CppStyleTest.test_find_next_multi_line_comment_start): Deleted.
21238 (CppStyleTest.test_find_next_multi_line_comment_end): Deleted.
21239 (CppStyleTest.test_remove_multi_line_comments_from_range): Deleted.
21240 (CppStyleTest.test_position): Deleted.
21241 (CppStyleTest.test_rfind_in_lines): Deleted.
21242 (CppStyleTest.test_close_expression): Deleted.
21243 (CppStyleTest.test_spaces_at_end_of_line): Deleted.
21244 (CppStyleTest.test_cstyle_cast): Deleted.
21245 (CppStyleTest.test_runtime_casting): Deleted.
21246 (CppStyleTest.test_runtime_selfinit): Deleted.
21247 (CppStyleTest.test_runtime_rtti): Deleted.
21248 (CppStyleTest.test_static_cast_readability): Deleted.
21249 (CppStyleTest.test_check_for_unnamed_params): Deleted.
21250 (CppStyleTest.void): Deleted.
21251 (CppStyleTest.test_deprecated_cast): Deleted.
21252 (CppStyleTest.test_mock_method): Deleted.
21253 (CppStyleTest.test_sizeof_type): Deleted.
21254 (CppStyleTest.cases): Deleted.
21255 (CppStyleTest.for): Deleted.
21256 (CppStyleTest.test_typedef_for_pointer_to_function): Deleted.
21257 (CppStyleTest.test_typedef_for_pointer_to_function.void): Deleted.
21258 (CppStyleTest.test_include_what_you_use_no_implementation_files): Deleted.
21259 (CppStyleTest.test_include_what_you_use): Deleted.
21260 (CppStyleTest.test_files_belong_to_same_module): Deleted.
21261 (CppStyleTest.test_cleanse_line): Deleted.
21262 (CppStyleTest.test_multi_line_comments): Deleted.
21263 (CppStyleTest.test_multi_line_comments.Foo): Deleted.
21264 (CppStyleTest.test_multiline_strings): Deleted.
21265 (CppStyleTest.test_platformh_comments): Deleted.
21266 (CppStyleTest.test_explicit_single_argument_constructors): Deleted.
21267 (CppStyleTest.test_explicit_single_argument_constructors.Foo): Deleted.
21268 (CppStyleTest.test_explicit_single_argument_constructors.Qualifier): Deleted.
21269 (CppStyleTest.test_explicit_single_argument_constructors.definition): Deleted.
21270 (CppStyleTest.test_slash_star_comment_on_single_line): Deleted.
21271 (CppStyleTest.test_suspicious_usage_of_if): Deleted.
21272 (CppStyleTest.test_suspicious_usage_of_memset): Deleted.
21273 (CppStyleTest.test_check_posix_threading): Deleted.
21274 (CppStyleTest.test_insecure_string_operations): Deleted.
21275 (CppStyleTest.test_format_strings): Deleted.
21276 (CppStyleTest.test_insecure_temp_file): Deleted.
21277 (CppStyleTest.test_variable_length_array_detection): Deleted.
21278 (CppStyleTest.test_braces): Deleted.
21279 (CppStyleTest.test_check_check): Deleted.
21280 (CppStyleTest.test_brace_at_begin_of_line): Deleted.
21281 (CppStyleTest.test_mismatching_spaces_in_parens): Deleted.
21282 (CppStyleTest.test_spacing_for_fncall): Deleted.
21283 (CppStyleTest.test_spacing_for_fncall.foo): Deleted.
21284 (CppStyleTest.test_spacing_before_braces): Deleted.
21285 (CppStyleTest.test_spacing_between_braces): Deleted.
21286 (CppStyleTest.test_spacing_before_brackets): Deleted.
21287 (CppStyleTest.test_cpp_lambda_functions): Deleted.
21288 (CppStyleTest.test_objective_c_block): Deleted.
21289 (CppStyleTest.test_objective_c_block_as_argument): Deleted.
21290 (CppStyleTest.test_spacing_around_else): Deleted.
21291 (CppStyleTest.test_spacing_for_binary_ops): Deleted.
21292 (CppStyleTest.test_spacing_for_binary_ops.hash_map): Deleted.
21293 (CppStyleTest.test_operator_methods): Deleted.
21294 (CppStyleTest.test_spacing_in_objective_c_properties): Deleted.
21295 (CppStyleTest.test_spacing_before_last_semicolon): Deleted.
21296 (CppStyleTest.test_static_or_global_stlstrings): Deleted.
21297 (CppStyleTest.test_no_spaces_in_function_calls): Deleted.
21298 (CppStyleTest.test_one_spaces_between_code_and_comments): Deleted.
21299 (CppStyleTest.test_one_spaces_after_punctuation_in_comments): Deleted.
21300 (CppStyleTest.test_space_after_comment_marker): Deleted.
21301 (CppStyleTest.test_newline_at_eof): Deleted.
21302 (CppStyleTest.test_newline_at_eof.do_test): Deleted.
21303 (CppStyleTest.test_extra_newlines_at_eof): Deleted.
21304 (CppStyleTest.test_extra_newlines_at_eof.do_test): Deleted.
21305 (CppStyleTest.test_invalid_utf8): Deleted.
21306 (CppStyleTest.test_invalid_utf8.do_test): Deleted.
21307 (CppStyleTest.test_is_blank_line): Deleted.
21308 (CppStyleTest.test_blank_lines_check): Deleted.
21309 (CppStyleTest.test_allow_blank_line_before_closing_namespace): Deleted.
21310 (CppStyleTest.test_allow_blank_line_before_if_else_chain): Deleted.
21311 (CppStyleTest.test_else_on_same_line_as_closing_braces): Deleted.
21312 (CppStyleTest.test_else_clause_not_on_same_line_as_else): Deleted.
21313 (CppStyleTest.test_comma): Deleted.
21314 (CppStyleTest.test_declaration): Deleted.
21315 (CppStyleTest.test_pointer_reference_marker_location): Deleted.
21316 (CppStyleTest.test_indent): Deleted.
21317 (CppStyleTest.test_indent.Foo): Deleted.
21318 (CppStyleTest.test_not_alabel): Deleted.
21319 (CppStyleTest.test_tab): Deleted.
21320 (CppStyleTest.test_unnamed_namespaces_in_headers): Deleted.
21321 (CppStyleTest.test_build_class): Deleted.
21322 (CppStyleTest.test_build_class.definitions): Deleted.
21323 (CppStyleTest.test_build_class.Foo): Deleted.
21324 (CppStyleTest.test_build_class.DERIVE_FROM_GOO): Deleted.
21325 (CppStyleTest.test_build_end_comment): Deleted.
21326 (CppStyleTest.test_build_forward_decl): Deleted.
21327 (CppStyleTest.test_build_forward_decl.Foo): Deleted.
21328 (CppStyleTest.test_build_header_guard): Deleted.
21329 (CppStyleTest.test_build_header_guard.Foo_h): Deleted.
21330 (CppStyleTest.test_build_header_guard.Foo_h.for): Deleted.
21331 (CppStyleTest.test_build_printf_format): Deleted.
21332 (CppStyleTest.test_runtime_printf_format): Deleted.
21333 (CppStyleTest.assert_lintLogCodeOnError): Deleted.
21334 (CppStyleTest.test_build_storage_class): Deleted.
21335 (CppStyleTest.test_build_storage_class.unsignedLongLong): Deleted.
21336 (CppStyleTest.test_build_storage_class.declaration): Deleted.
21337 (CppStyleTest.test_build_storage_class.after): Deleted.
21338 (CppStyleTest.test_build_storage_class.is): Deleted.
21339 (CppStyleTest.test_legal_copyright): Deleted.
21340 (CppStyleTest.test_invalid_increment): Deleted.
21341 (CppStyleTest.test_enum_bitfields): Deleted.
21342 (CppStyleTest.test_plain_integral_bitfields): Deleted.
21343 (CleansedLinesTest.test_init_empty): Deleted.
21344 (CleansedLinesTest.test_collapse_strings): Deleted.
21345 (OrderOfIncludesTest.tearDown): Deleted.
21346 (OrderOfIncludesTest.test_check_next_include_order__no_config): Deleted.
21347 (OrderOfIncludesTest.test_check_next_include_order__no_self): Deleted.
21348 (OrderOfIncludesTest.test_check_next_include_order__likely_then_config): Deleted.
21349 (OrderOfIncludesTest.test_check_next_include_order__other_then_config): Deleted.
21350 (OrderOfIncludesTest.test_check_next_include_order__config_then_other_then_likely): Deleted.
21351 (OrderOfIncludesTest.test_check_alphabetical_include_order): Deleted.
21352 (OrderOfIncludesTest.test_check_alphabetical_include_order_errors_reported_for_both_lines): Deleted.
21353 (OrderOfIncludesTest.test_check_line_break_after_own_header): Deleted.
21354 (OrderOfIncludesTest.test_check_line_break_before_own_header): Deleted.
21355 (OrderOfIncludesTest.test_check_preprocessor_in_include_section): Deleted.
21356 (OrderOfIncludesTest.test_check_preprocessor_in_include_section.BAZ): Deleted.
21357 (OrderOfIncludesTest.test_check_preprocessor_in_include_section.FOOBAR): Deleted.
21358 (OrderOfIncludesTest.test_primary_header): Deleted.
21359 (OrderOfIncludesTest.test_public_primary_header): Deleted.
21360 (OrderOfIncludesTest.test_check_wtf_includes): Deleted.
21361 (OrderOfIncludesTest.test_classify_include): Deleted.
21362 (OrderOfIncludesTest.test_try_drop_common_suffixes): Deleted.
21363 (CheckForFunctionLengthsTest.tearDown): Deleted.
21364 (CheckForFunctionLengthsTest.set_min_confidence): Deleted.
21365 (CheckForFunctionLengthsTest.assert_function_lengths_check): Deleted.
21366 (CheckForFunctionLengthsTest.trigger_lines): Deleted.
21367 (CheckForFunctionLengthsTest.trigger_test_lines): Deleted.
21368 (CheckForFunctionLengthsTest.assert_function_length_check_definition): Deleted.
21369 (CheckForFunctionLengthsTest.assert_function_length_check_definition_ok): Deleted.
21370 (CheckForFunctionLengthsTest.assert_function_length_check_at_error_level): Deleted.
21371 (CheckForFunctionLengthsTest.assert_function_length_check_below_error_level): Deleted.
21372 (CheckForFunctionLengthsTest.assert_function_length_check_above_error_level): Deleted.
21373 (CheckForFunctionLengthsTest.function_body): Deleted.
21374 (CheckForFunctionLengthsTest.function_body_with_blank_lines): Deleted.
21375 (CheckForFunctionLengthsTest.function_body_with_no_lints): Deleted.
21376 (CheckForFunctionLengthsTest.test_function_length_check_declaration): Deleted.
21377 (CheckForFunctionLengthsTest.test_function_length_check_declaration_with_block_following): Deleted.
21378 (CheckForFunctionLengthsTest.test_function_length_check_class_definition): Deleted.
21379 (CheckForFunctionLengthsTest.test_function_length_check_class_definition.Test): Deleted.
21380 (CheckForFunctionLengthsTest.test_function_length_check_trivial): Deleted.
21381 (CheckForFunctionLengthsTest.test_function_length_check_empty): Deleted.
21382 (CheckForFunctionLengthsTest.test_function_length_check_definition_below_severity0): Deleted.
21383 (CheckForFunctionLengthsTest.test_function_length_check_definition_at_severity0): Deleted.
21384 (CheckForFunctionLengthsTest.test_function_length_check_definition_above_severity0): Deleted.
21385 (CheckForFunctionLengthsTest.test_function_length_check_definition_below_severity1v0): Deleted.
21386 (CheckForFunctionLengthsTest.test_function_length_check_definition_at_severity1v0): Deleted.
21387 (CheckForFunctionLengthsTest.test_function_length_check_definition_below_severity1): Deleted.
21388 (CheckForFunctionLengthsTest.test_function_length_check_definition_at_severity1): Deleted.
21389 (CheckForFunctionLengthsTest.test_function_length_check_definition_above_severity1): Deleted.
21390 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity1_plus_indented): Deleted.
21391 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity1_plus_blanks): Deleted.
21392 (CheckForFunctionLengthsTest.test_function_length_check_complex_definition_severity1): Deleted.
21393 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity1_for_test): Deleted.
21394 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity1_for_split_line_test): Deleted.
21395 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity1_for_bad_test_doesnt_break): Deleted.
21396 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity1_with_embedded_no_lints): Deleted.
21397 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity1_with_no_lint): Deleted.
21398 (CheckForFunctionLengthsTest.test_function_length_check_definition_below_severity2): Deleted.
21399 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity2): Deleted.
21400 (CheckForFunctionLengthsTest.test_function_length_check_definition_above_severity2): Deleted.
21401 (CheckForFunctionLengthsTest.test_function_length_check_definition_below_severity3): Deleted.
21402 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity3): Deleted.
21403 (CheckForFunctionLengthsTest.test_function_length_check_definition_above_severity3): Deleted.
21404 (CheckForFunctionLengthsTest.test_function_length_check_definition_below_severity4): Deleted.
21405 (CheckForFunctionLengthsTest.test_function_length_check_definition_severity4): Deleted.
21406 (CheckForFunctionLengthsTest.test_function_length_check_definition_above_severity4): Deleted.
21407 (CheckForFunctionLengthsTest.test_function_length_check_definition_below_severity5): Deleted.
21408 (CheckForFunctionLengthsTest.test_function_length_check_definition_at_severity5): Deleted.
21409 (CheckForFunctionLengthsTest.test_function_length_check_definition_above_severity5): Deleted.
21410 (CheckForFunctionLengthsTest.test_function_length_check_definition_huge_lines): Deleted.
21411 (CheckForFunctionLengthsTest.test_function_length_not_determinable): Deleted.
21412 (NoNonVirtualDestructorsTest.test_no_error): Deleted.
21413 (NoNonVirtualDestructorsTest.test_no_error.Foo): Deleted.
21414 (NoNonVirtualDestructorsTest.test_no_error.MyClass): Deleted.
21415 (NoNonVirtualDestructorsTest.test_no_error.Qualified): Deleted.
21416 (NoNonVirtualDestructorsTest.test_no_destructor_when_virtual_needed): Deleted.
21417 (NoNonVirtualDestructorsTest.test_no_destructor_when_virtual_needed.Foo): Deleted.
21418 (NoNonVirtualDestructorsTest.test_enum_casing): Deleted.
21419 (NoNonVirtualDestructorsTest.test_enum_casing.Foo): Deleted.
21420 (NoNonVirtualDestructorsTest.test_enum_casing.Enum123): Deleted.
21421 (NoNonVirtualDestructorsTest.test_enum_trailing_semicolon): Deleted.
21422 (NoNonVirtualDestructorsTest.test_enum_trailing_semicolon.CPP11EnumClass): Deleted.
21423 (NoNonVirtualDestructorsTest.test_enum_trailing_semicolon.MyEnum): Deleted.
21424 (NoNonVirtualDestructorsTest.test_destructor_non_virtual_when_virtual_needed): Deleted.
21425 (NoNonVirtualDestructorsTest.test_destructor_non_virtual_when_virtual_needed.Foo): Deleted.
21426 (NoNonVirtualDestructorsTest.test_no_warn_when_derived): Deleted.
21427 (NoNonVirtualDestructorsTest.test_no_warn_when_derived.Foo): Deleted.
21428 (NoNonVirtualDestructorsTest.test_internal_braces): Deleted.
21429 (NoNonVirtualDestructorsTest.test_internal_braces.Foo): Deleted.
21430 (NoNonVirtualDestructorsTest.test_inner_class_needs_virtual_destructor): Deleted.
21431 (NoNonVirtualDestructorsTest.test_inner_class_needs_virtual_destructor.Foo): Deleted.
21432 (NoNonVirtualDestructorsTest.test_inner_class_needs_virtual_destructor.Foo.Goo): Deleted.
21433 (NoNonVirtualDestructorsTest.test_inner_class_needs_virtual_destructor.Goo): Deleted.
21434 (NoNonVirtualDestructorsTest.test_outer_class_needs_virtual_destructor): Deleted.
21435 (NoNonVirtualDestructorsTest.test_outer_class_needs_virtual_destructor.Foo): Deleted.
21436 (NoNonVirtualDestructorsTest.test_outer_class_needs_virtual_destructor.Foo.Goo): Deleted.
21437 (NoNonVirtualDestructorsTest.test_qualified_class_needs_virtual_destructor): Deleted.
21438 (NoNonVirtualDestructorsTest.test_qualified_class_needs_virtual_destructor.Qualified): Deleted.
21439 (NoNonVirtualDestructorsTest.test_multi_line_declaration_no_error): Deleted.
21440 (NoNonVirtualDestructorsTest.test_multi_line_declaration_no_error.Foo): Deleted.
21441 (NoNonVirtualDestructorsTest.test_multi_line_declaration_with_error): Deleted.
21442 (NoNonVirtualDestructorsTest.test_multi_line_declaration_with_error.Foo): Deleted.
21443 (LeakyPatternTest.assert_leaky_pattern_check): Deleted.
21444 (LeakyPatternTest.test_get_dc): Deleted.
21445 (LeakyPatternTest.test_get_dc.HWndDC): Deleted.
21446 (LeakyPatternTest.test_own_get_dc): Deleted.
21447 (LeakyPatternTest.test_create_dc): Deleted.
21448 (LeakyPatternTest.test_create_compatible_dc): Deleted.
21449 (WebKitStyleTest.test_indentation): Deleted.
21450 (WebKitStyleTest.test_indentation.Foo): Deleted.
21451 (WebKitStyleTest.test_indentation.Document): Deleted.
21452 (WebKitStyleTest.test_spacing): Deleted.
21453 (WebKitStyleTest.test_line_breaking): Deleted.
21454 (WebKitStyleTest.test_braces): Deleted.
21455 (WebKitStyleTest.test_braces.MyClass): Deleted.
21456 (WebKitStyleTest.test_braces.NS_ENUM): Deleted.
21457 (WebKitStyleTest.test_braces.CPP11EnumClass): Deleted.
21458 (WebKitStyleTest.test_braces.SOMETHING): Deleted.
21459 (WebKitStyleTest.test_null_false_zero): Deleted.
21460 (WebKitStyleTest.test_directive_indentation): Deleted.
21461 (WebKitStyleTest.test_using_std): Deleted.
21462 (WebKitStyleTest.test_using_namespace): Deleted.
21463 (WebKitStyleTest.test_max_macro): Deleted.
21464 (WebKitStyleTest.test_min_macro): Deleted.
21465 (WebKitStyleTest.test_wtf_move): Deleted.
21466 (WebKitStyleTest.test_ctype_fucntion): Deleted.
21467 (WebKitStyleTest.test_names): Deleted.
21468 (WebKitStyleTest.test_names.HTMLDocument): Deleted.
21469 (WebKitStyleTest.test_names.WebWindowFadeAnimation): Deleted.
21470 (WebKitStyleTest.test_names.declarations): Deleted.
21471 (WebKitStyleTest.test_names.struct): Deleted.
21472 (WebKitStyleTest.test_names.VectorType): Deleted.
21473 (WebKitStyleTest.test_parameter_names): Deleted.
21474 (WebKitStyleTest.test_comments): Deleted.
21475 (WebKitStyleTest.test_webkit_export_check): Deleted.
21476 (WebKitStyleTest.test_member_initialization_list): Deleted.
21477 (WebKitStyleTest.test_member_initialization_list.MyClass): Deleted.
21478 (WebKitStyleTest.test_other): Deleted.
21479 (CppCheckerTest.mock_handle_style_error): Deleted.
21480 (CppCheckerTest._checker): Deleted.
21481 (CppCheckerTest.test_init): Deleted.
21482 (CppCheckerTest.test_eq): Deleted.
21483 (CppCheckerTest.test_eq.mock_handle_style_error2): Deleted.
21484 (CppCheckerTest.test_ne): Deleted.
21485 * TestWebKitAPI/Tests/WebKit/ios/AudioSessionCategoryIOS.mm:
21486 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
21487 * TestWebKitAPI/cocoa/TestWKWebView.mm:
21488 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
21489 * WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
21490 * WebKitTestRunner/ios/HIDEventGenerator.mm:
21492 2017-07-05 Saam Barati <sbarati@apple.com>
21494 NewArray in FTLLowerDFGToB3 does not handle speculating on doubles when having a bad time
21495 https://bugs.webkit.org/show_bug.cgi?id=174188
21496 <rdar://problem/30581423>
21498 Reviewed by Mark Lam.
21500 * Scripts/run-jsc-stress-tests:
21502 2017-07-05 Yusuke Suzuki <utatane.tea@gmail.com>
21504 [WTF] Clean up StringStatics.cpp by using LazyNeverDestroyed<> for Atoms
21505 https://bugs.webkit.org/show_bug.cgi?id=174150
21507 Reviewed by Mark Lam.
21509 * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
21510 (TestWebKitAPI::TEST):
21512 2017-07-03 Myles C. Maxfield <mmaxfield@apple.com>
21514 Remove copy of ICU headers from WebKit
21515 https://bugs.webkit.org/show_bug.cgi?id=116407
21517 Reviewed by Alex Christensen.
21519 * DumpRenderTree/mac/Configurations/Base.xcconfig:
21520 * TestWebKitAPI/Configurations/Base.xcconfig:
21521 * WebKitTestRunner/Configurations/Base.xcconfig:
21523 2017-07-05 Chris Dumez <cdumez@apple.com>
21525 Regression(r218821): Bad cast to WebKit::DiagnosticLoggingClient in WKWebView's _setDiagnosticLoggingDelegate
21526 https://bugs.webkit.org/show_bug.cgi?id=174163
21527 <rdar://problem/33067518>
21529 Reviewed by Alex Christensen.
21531 Add API test coverage.
21533 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21534 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewDiagnosticLogging.mm: Added.
21537 2017-07-05 Wenson Hsieh <wenson_hsieh@apple.com>
21539 When dragging a selection, clearing the selection in dragstart should not crash the web process
21540 https://bugs.webkit.org/show_bug.cgi?id=174142
21541 <rdar://problem/33067501>
21543 Reviewed by Tim Horton.
21545 Adds a unit test checking that the web process does not crash when the selection is cleared while a selection
21546 drag is starting up.
21548 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21549 * TestWebKitAPI/Tests/WebKit2Cocoa/dragstart-clear-selection.html: Added.
21550 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
21551 (TestWebKitAPI::TEST):
21553 2017-07-05 Daniel Bates <dabates@apple.com>
21555 Do not pass API::FrameInfo for source frame or clear out page of target frame on
21557 https://bugs.webkit.org/show_bug.cgi?id=174170
21558 <rdar://problem/33140328>
21560 Reviewed by Brady Eidson.
21562 Update tests as needed for the behavior change.
21564 * TestWebKitAPI/Tests/WebKit2Cocoa/DecidePolicyForNavigationAction.mm:
21567 2017-07-05 Jonathan Bedard <jbedard@apple.com>
21569 Add WebKitPrivateFrameworkStubs for iOS 11
21570 https://bugs.webkit.org/show_bug.cgi?id=173988
21572 Reviewed by David Kilzer.
21574 * DumpRenderTree/mac/Configurations/Base.xcconfig: iphoneos and iphonesimulator
21575 should use the same directory for private framework stubs.
21576 * WebKitTestRunner/Configurations/Base.xcconfig: Ditto.
21578 2017-07-05 Eric Carlson <eric.carlson@apple.com>
21580 [MediaStream] Protect request and web view during gUM client callback
21581 https://bugs.webkit.org/show_bug.cgi?id=174096
21582 <rdar://problem/32833102>
21584 Reviewed by Youenn Fablet.
21586 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21587 * TestWebKitAPI/Tests/WebKit2/GetUserMediaNavigation.mm: New test.
21589 2017-07-05 Wenson Hsieh <wenson_hsieh@apple.com>
21591 Unreviewed, guard iOS 11-dependent UIPasteboardTests to be iOS 11+ only
21593 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
21595 2017-07-05 Matt Lewis <jlewis3@apple.com>
21597 Unreviewed, rolling out r219128.
21599 Spoke with engineer who originally submitted, Patch for APi
21602 Reverted changeset:
21604 "Unreviewed, rolling out r219070."
21605 https://bugs.webkit.org/show_bug.cgi?id=174082
21606 http://trac.webkit.org/changeset/219128
21608 2017-07-05 Matt Lewis <jlewis3@apple.com>
21610 Unreviewed, rolling out r219070.
21612 This revision caused consistent failures of the API test
21613 UIPasteboardTests.DoNotPastePlainTextAsURL on iOS.
21615 Reverted changeset:
21617 "Pasting single words copied to UIPasteboard inserts URLs in
21619 https://bugs.webkit.org/show_bug.cgi?id=174082
21620 http://trac.webkit.org/changeset/219070
21622 2017-07-04 Michael Catanzaro <mcatanzaro@igalia.com>
21624 Remove unused EFL logo from bot watcher dashboard
21625 https://bugs.webkit.org/show_bug.cgi?id=174136
21627 Reviewed by Alexey Proskuryakov.
21629 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/EFL.png: Removed.
21630 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/EFL@2x.png: Removed.
21632 2017-07-04 Michael Catanzaro <mcatanzaro@igalia.com>
21634 [GTK] Add more GTK bots to dashboard
21635 https://bugs.webkit.org/show_bug.cgi?id=174129
21637 Reviewed by Carlos Alberto Lopez Perez.
21639 We have a bunch of GTK bots that I never look at because they're not on the dashboard. Add
21642 This also changes the sort order to put WPE above GTK so that it's not buried under all the
21643 less-essential GTK bots.
21645 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
21646 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
21649 2017-07-04 Michael Catanzaro <mcatanzaro@igalia.com>
21651 [WPE] Add WPE to bot watcher dashboard
21652 https://bugs.webkit.org/show_bug.cgi?id=174119
21654 Reviewed by Alexey Proskuryakov.
21656 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/CREDIT: Added.
21657 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE.png: Added.
21658 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE@2x.png: Added.
21659 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
21660 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
21662 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
21663 (table.queue-grid tr.platform.linux-wpe img.logo):
21665 2017-07-03 Lucas Forschler <lforschler@apple.com>
21667 https://bugs.webkit.org/show_bug.cgi?id=174105
21669 Reviewed by Stephanie Lewis.
21671 * BuildSlaveSupport/built-product-archive:
21672 (main): Add a -minify parser option
21673 (createZip): Pass along the optional Minify argument if requested
21674 (minifySource): This will trim down archives, logic limited to Mac platform.
21676 2017-07-03 Matt Rajca <mrajca@apple.com>
21678 Add/remove appropriate media element behavior restrictions when updateWebsitePolicies is called
21679 https://bugs.webkit.org/show_bug.cgi?id=174103
21681 Reviewed by Alex Christensen.
21685 * TestWebKitAPI/Tests/WebKit2/autoplay-check.html: Expose a pause method.
21686 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
21687 (TEST): Added test.
21688 * TestWebKitAPI/cocoa/TestWKWebView.h:
21689 * TestWebKitAPI/cocoa/TestWKWebView.mm:
21690 (-[TestWKWebView stringByEvaluatingJavaScript:]): Don't simulate a user gesture when invoking the script.
21692 2017-07-03 Matt Lewis <jlewis3@apple.com>
21694 Unreviewed, rolling out r219103.
21696 Caused multiple build failures.
21698 Reverted changeset:
21700 "Remove copy of ICU headers from WebKit"
21701 https://bugs.webkit.org/show_bug.cgi?id=116407
21702 http://trac.webkit.org/changeset/219103
21704 2017-07-03 Myles C. Maxfield <mmaxfield@apple.com>
21706 Remove copy of ICU headers from WebKit
21707 https://bugs.webkit.org/show_bug.cgi?id=116407
21709 Reviewed by Alex Christensen.
21711 Use WTF's copy of ICU headers.
21713 * DumpRenderTree/mac/Configurations/Base.xcconfig:
21714 * TestWebKitAPI/Configurations/Base.xcconfig:
21715 * WebKitTestRunner/Configurations/Base.xcconfig:
21717 2017-07-03 Brady Eidson <beidson@apple.com>
21719 Switch all WebKit API related to favicons from WebIconDatabase over to new WebCore::IconLoader mechanism.
21720 https://bugs.webkit.org/show_bug.cgi?id=174073
21722 Reviewed by Andy Estes.
21724 * DumpRenderTree/mac/TestRunnerMac.mm:
21725 (TestRunner::setIconDatabaseEnabled): Call new SPI for this setting instead of WebIconDatabase stuff.
21727 * TestWebKitAPI/Tests/mac/WebViewIconLoading.mm:
21728 (-[MainFrameIconKVO observeValueForKeyPath:ofObject:change:context:]):
21730 2017-07-03 Matt Lewis <jlewis3@apple.com>
21732 Unreviewed, rolling out r219083.
21734 The revision caused an API failure on all testing platforms.
21736 Reverted changeset:
21738 "[MediaStream] Protect request and web view during gUM client
21740 https://bugs.webkit.org/show_bug.cgi?id=174096
21741 http://trac.webkit.org/changeset/219083
21743 2017-07-03 Jonathan Bedard <jbedard@apple.com>
21745 webkitpy: Properly number duplicated crashlogs
21746 https://bugs.webkit.org/show_bug.cgi?id=172002
21748 Reviewed by Aakash Jain.
21750 * Scripts/webkitpy/common/system/crashlogs.py:
21751 (CrashLogs._find_all_logs_darwin): Number multiple crash logs for a single process with
21752 an increasing integer.
21753 * Scripts/webkitpy/common/system/crashlogs_unittest.py:
21754 (CrashLogsTest.create_crash_logs_darwin): Create duplicated crashlog for testing.
21755 (CrashLogsTest.test_find_all_log_darwin): Now 7 Darwin logs instead of 5.
21756 (CrashLogsTest.test_duplicate_log_darwin): Test that duplicated logs are correctly numbered.
21758 2017-07-03 Ryosuke Niwa <rniwa@webkit.org>
21760 WebContent processes crash when the network process crashes with pending connection requests
21761 https://bugs.webkit.org/show_bug.cgi?id=174065
21762 <rdar://problem/30359835>
21764 Reviewed by Tim Horton.
21766 Add a API to ensure UI process tries to relaunch a new network process when the network process
21767 crashes with pending network connection requests.
21769 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21770 * TestWebKitAPI/Tests/WebKit2/NetworkProcessCrashWithPendingConnection.mm: Added.
21771 * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
21772 * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
21773 (-[TestNavigationDelegate webViewWebContentProcessDidTerminate:]): Added.
21775 2017-07-03 Eric Carlson <eric.carlson@apple.com>
21777 [MediaStream] Protect request and web view during gUM client callback
21778 https://bugs.webkit.org/show_bug.cgi?id=174096
21779 <rdar://problem/32833102>
21781 Reviewed by Youenn Fablet.
21783 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21784 * TestWebKitAPI/Tests/WebKit2/GetUserMediaNavigation.mm: New test.
21786 2017-07-03 Andy Estes <aestes@apple.com>
21788 [Xcode] Add an experimental setting to build with ccache
21789 https://bugs.webkit.org/show_bug.cgi?id=173875
21791 Reviewed by Tim Horton.
21793 On systems that already have ccache(1) installed, this patch adds experimental support for
21794 it to Xcode builds. It can be enabled with the WK_USE_CCACHE build setting.
21796 When ccache is enabled, CC is overridden to invoke Tools/ccache/ccache-clang. This script
21797 finds the "-isysroot" argument to determine the active SDK, uses xcrun(1) and the SDK to
21798 find the toolchain from which to run clang, and then invokes ccache with the required
21801 ccache is invoked with CCACHE_SLOPPINESS="pch_defines,time_macros", which is required for
21802 precompiled headers to work properly [1].
21804 LDPLUSPLUS is overridden to invoke Tools/ccache/ccache-clang++. It behaves the same as
21805 ccache-clang, except it tells ccache to execute clang++ instead of clang. This is important
21808 [1] https://ccache.samba.org/manual.html#_precompiled_headers
21810 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: Included ccache.xcconfig.
21811 * MiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
21812 * MobileMiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
21813 * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Ditto.
21814 * WebKitTestRunner/Configurations/DebugRelease.xcconfig: Ditto.
21815 * ccache/README.md: Added.
21816 * ccache/ccache-clang: Added.
21817 * ccache/ccache-clang++: Added.
21818 * ccache/ccache.xcconfig: Added. Overrides CC and LDPLUSPLUS when WK_USE_CACHE=YES.
21820 2017-07-03 Alex Christensen <achristensen@webkit.org>
21822 REGRESSION(r215096) Queries of URLs with non-special schemes should not percent-encode single quotes
21823 https://bugs.webkit.org/show_bug.cgi?id=174051
21825 Reviewed by Tim Horton.
21827 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
21828 (TestWebKitAPI::TEST_F):
21830 2017-07-03 Matt Lewis <jlewis3@apple.com>
21832 Unreviewed, rolling out r219024.
21834 This patch cause 3 didferent test to fail.
21836 Reverted changeset:
21838 "REGRESSION(r215096) Queries of URLs with non-special schemes
21839 should not percent-encode single quotes"
21840 https://bugs.webkit.org/show_bug.cgi?id=174051
21841 http://trac.webkit.org/changeset/219024
21843 2017-07-03 Chris Dumez <cdumez@apple.com>
21845 Drop ResourceLoadStatisticsStore's statisticsLock
21846 https://bugs.webkit.org/show_bug.cgi?id=174080
21848 Reviewed by Brent Fulgham.
21850 Port WebKitTestRunner to new Asynchronous Cocoa SPI.
21852 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
21853 (WTR::TestController::isStatisticsPrevalentResource):
21854 (WTR::TestController::isStatisticsHasHadUserInteraction):
21855 (WTR::TestController::isStatisticsGrandfathered):
21857 2017-07-03 Wenson Hsieh <wenson_hsieh@apple.com>
21859 Pasting single words copied to UIPasteboard inserts URLs in editable areas
21860 https://bugs.webkit.org/show_bug.cgi?id=174082
21861 <rdar://problem/33046992>
21863 Reviewed by Tim Horton.
21865 Adds 3 new unit tests to UIPasteboardTests to test cases of pasting plain text and URLs.
21867 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
21868 (TestWebKitAPI::setUpWebViewForPasteboardTests):
21869 (TestWebKitAPI::TEST):
21871 2017-07-02 Brady Eidson <beidson@apple.com>
21873 Add API test for all parts of WebKit1 API related to favicons.
21874 https://bugs.webkit.org/show_bug.cgi?id=174069
21876 Reviewed by Andy Estes.
21878 These two API tests cover all WebKit1 API related to icons.
21880 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21881 * TestWebKitAPI/Tests/mac/WebViewIconLoading.mm: Added.
21882 (mainResourceData):
21883 (defaultFaviconData):
21884 (customFaviconData):
21886 (+[IconLoadingProtocol canInitWithRequest:]):
21887 (+[IconLoadingProtocol canonicalRequestForRequest:]):
21888 (-[IconLoadingProtocol startLoading]):
21889 (-[IconLoadingProtocol stopLoading]):
21890 (-[IconLoadingFrameLoadDelegate webView:didReceiveIcon:forFrame:]):
21891 (-[MainFrameIconKVO observeValueForKeyPath:ofObject:change:context:]):
21892 (TestWebKitAPI::TEST):
21894 2017-07-01 Dan Bernstein <mitz@apple.com>
21896 [iOS] Remove code only needed when building for iOS 9.x
21897 https://bugs.webkit.org/show_bug.cgi?id=174068
21899 Reviewed by Tim Horton.
21901 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
21902 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
21903 (WTR::initializeWebViewConfiguration):
21904 * WebKitTestRunner/ios/HIDEventGenerator.mm:
21905 (-[HIDEventGenerator _createIOHIDEventType:]):
21907 2017-07-01 Brady Eidson <beidson@apple.com>
21909 When setting a custom cookie storage location on a WKWebsiteDataStore, cookies aren't actually removed.
21910 <rdar://problem/32410662> and https://bugs.webkit.org/show_bug.cgi?id=174035
21912 Reviewed by Alex Christensen.
21914 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
21916 2017-07-01 Dan Bernstein <mitz@apple.com>
21918 [macOS] Remove code only needed when building for OS X Yosemite
21919 https://bugs.webkit.org/show_bug.cgi?id=174067
21921 Reviewed by Tim Horton.
21923 * DumpRenderTree/mac/Configurations/Base.xcconfig:
21924 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
21925 * DumpRenderTree/mac/DumpRenderTree.mm:
21926 (setDefaultsToConsistentValuesForTesting):
21927 * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
21928 (-[DumpRenderTreeDraggingInfo resetSpringLoading]):
21929 * MiniBrowser/Configurations/Base.xcconfig:
21930 * MiniBrowser/Configurations/DebugRelease.xcconfig:
21931 * TestWebKitAPI/Configurations/Base.xcconfig:
21932 * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
21933 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
21934 * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
21935 (TestWebKitAPI::TEST_F):
21936 * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
21937 * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm:
21938 * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
21939 (TestWebKitAPI::TEST_F):
21940 * TestWebKitAPI/Tests/mac/StringTruncator.mm:
21941 (TestWebKitAPI::TEST):
21942 * WebKitTestRunner/Configurations/Base.xcconfig:
21943 * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
21944 * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
21945 (WTR::InjectedBundle::platformInitialize):
21946 * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm:
21947 (-[WebKitTestRunnerDraggingInfo resetSpringLoading]):
21949 2017-07-01 Chris Dumez <cdumez@apple.com>
21951 Replace ResourceLoadStatisticsStore C API with Cocoa SPI
21952 https://bugs.webkit.org/show_bug.cgi?id=174060
21954 Reviewed by Brent Fulgham.
21956 Port WebKitTestRunner over to the new Cocoa SPI.
21958 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
21959 (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
21960 (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
21961 Drop calls to the WKResourceLoadStatisticsStore C API here. Those were
21962 no-ops since this code runs in the WebContent process, not the
21965 * WebKitTestRunner/TestController.cpp:
21966 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
21968 2017-06-30 Megan Gardner <megan_gardner@apple.com>
21970 Unreviewed mac build fix.
21972 * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm:
21973 (TestWebKitAPI::TEST):
21975 2017-06-30 Megan Gardner <megan_gardner@apple.com>
21977 Add API to get WKActivatedElementInfo
21978 https://bugs.webkit.org/show_bug.cgi?id=174001
21979 <rdar://problem/29165518>
21981 Tests for now SPI to get activatedElementInfo.
21983 Reviewed by Tim Horton.
21985 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21986 * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm: Added.
21987 (TestWebKitAPI::TEST):
21989 2017-06-30 Chris Dumez <cdumez@apple.com>
21991 Move store logic from WebResourceLoadStatisticsManager to WebResourceLoadStatisticsStore
21992 https://bugs.webkit.org/show_bug.cgi?id=174038
21994 Reviewed by Brent Fulgham.
21996 Fix typo in API name.
21998 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
21999 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
22000 (WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
22001 * WebKitTestRunner/InjectedBundle/TestRunner.h:
22002 * WebKitTestRunner/TestController.cpp:
22003 (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
22004 * WebKitTestRunner/TestController.h:
22005 * WebKitTestRunner/TestInvocation.cpp:
22006 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
22008 2017-06-30 Alex Christensen <achristensen@webkit.org>
22010 REGRESSION(r215096) Queries of URLs with non-special schemes should not percent-encode single quotes
22011 https://bugs.webkit.org/show_bug.cgi?id=174051
22012 <rdar://problem/33002846>
22014 Reviewed by Tim Horton.
22016 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
22017 (TestWebKitAPI::TEST_F):
22019 2017-06-30 Daniel Bates <dabates@apple.com>
22021 API::FrameInfo should know the web page that contains the frame; add API property webView to WKFrameInfo
22022 https://bugs.webkit.org/show_bug.cgi?id=165160
22023 <rdar://problem/29451999>
22025 Reviewed by Brady Eidson.
22027 Add tests to ensure that -[WKFrameInfo webView] is computed correctly for the source and target frame
22028 for navigations and window creation.
22030 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22031 * TestWebKitAPI/Tests/WebKit2Cocoa/DecidePolicyForNavigationAction.mm: Added. Derived from file ShouldOpenExternalURLsInNewWindowActions.mm.
22032 (-[DecidePolicyForNavigationActionController webView:decidePolicyForNavigationAction:decisionHandler:]):
22033 (-[DecidePolicyForNavigationActionController webView:didFinishNavigation:]):
22034 (-[DecidePolicyForNavigationActionController webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
22037 2017-06-29 Jer Noble <jer.noble@apple.com>
22039 Make Legacy EME API controlled by RuntimeEnabled setting.
22040 https://bugs.webkit.org/show_bug.cgi?id=173994
22042 Reviewed by Sam Weinig.
22044 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
22046 2017-06-30 Jonathan Bedard <jbedard@apple.com>
22048 Follow-up fix for r218996
22050 Unreviewed infrastructure fix.
22052 Repeated calls to 'ios_version' make the log noisy, memoize the function.
22054 * Scripts/webkitpy/port/ios_simulator.py:
22055 (IOSSimulatorPort): Memoize ios_version().
22057 2017-06-30 Wenson Hsieh <wenson_hsieh@apple.com>
22059 [iOS DnD] Drag caret rect is incorrectly computed when dropping in editable content in iframes
22060 https://bugs.webkit.org/show_bug.cgi?id=174017
22061 <rdar://problem/32959782>
22063 Reviewed by Simon Fraser.
22065 Add a new test verifying that the drag caret is visually contained within the bounds of an iframe. Before these
22066 changes, the caret would appear outside of the iframe.
22068 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22069 * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-in-iframe.html: Added.
22070 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
22071 (checkDragCaretRectIsContainedInRect):
22072 (TestWebKitAPI::TEST):
22073 * TestWebKitAPI/ios/DataInteractionSimulator.h:
22074 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
22075 (-[DataInteractionSimulator _resetSimulatedState]):
22076 (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
22077 (-[DataInteractionSimulator _advanceProgress]):
22078 (-[DataInteractionSimulator lastKnownDragCaretRect]):
22080 2017-06-30 Jonathan Bedard <jbedard@apple.com>
22082 Add support for different versions of iOS when loading test expectations
22083 https://bugs.webkit.org/show_bug.cgi?id=173774
22084 <rdar://problem/32951132>
22086 Rubber-stamped by Aakash Jain.
22088 When running layout tests, we should support multiple version of iOS the same way we do Mac.
22090 * Scripts/webkitpy/port/ios.py:
22091 (IOSPort.default_baseline_search_path): Add ios-<major version> test expectation.
22092 (IOSPort.test_expectations_file_position): Added new file expectations, increment expected file position.
22093 (IOSPort.ios_version): iOS ports must define a function to retrieve the iOS version.
22094 * Scripts/webkitpy/port/ios_device.py:
22095 (IOSDevicePort.ios_version): Ask connected devices for implementation.
22096 * Scripts/webkitpy/port/ios_device_unittest.py:
22097 (IOSDeviceTest.test_additional_platform_directory): Skip test until bug 173775 is finished.
22098 (IOSDeviceTest.test_baseline_searchpath): Ditto.
22099 (IOSDeviceTest.test_expectations_ordering): Ditto.
22100 * Scripts/webkitpy/port/ios_simulator.py:
22101 (IOSSimulatorPort.ios_version): If a runtime is specified, ask the runtime for the iOS version. Otherwise,
22104 2017-06-30 Jacobo Aragunde Pérez <jaragunde@igalia.com>
22106 Fontconfig build breaks with glibc 2.15+
22107 https://bugs.webkit.org/show_bug.cgi?id=174019
22109 Reviewed by Carlos Alberto Lopez Perez.
22111 Apply patch by Khem Raj adapted to fontconfig 2.11.1.
22113 * wpe/jhbuild.modules:
22114 * wpe/patches/fontconfig-avoid-conflicts-with-integer-width-macros-from-TS-18.patch: Added.
22116 2017-06-29 Wenson Hsieh <wenson_hsieh@apple.com>
22118 [iOS DnD] Web content process crashes when the selection is moved far offscreen in dragstart
22119 https://bugs.webkit.org/show_bug.cgi?id=174010
22120 <rdar://problem/32597802>
22122 Reviewed by Tim Horton.
22124 Adds a new API test to ensure that we don't crash trying to dereference a null RefPtr when the TextIndicator
22125 snapshot fails for any reason.
22127 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22128 * TestWebKitAPI/Tests/WebKit2Cocoa/dragstart-change-selection-offscreen.html: Added.
22129 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
22130 (TestWebKitAPI::TEST):
22132 2017-06-29 Chris Fleizach <cfleizach@apple.com>
22134 AX: Cannot call setValue() on contenteditable or ARIA text controls
22135 https://bugs.webkit.org/show_bug.cgi?id=173520
22137 Reviewed by Ryosuke Niwa.
22139 Add setValue() method to WKTR (already existed in DRT).
22141 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
22142 (WTR::AccessibilityUIElement::setValue):
22143 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
22144 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
22145 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
22146 (WTR::AccessibilityUIElement::setValue):
22148 2017-06-28 Simon Fraser <simon.fraser@apple.com>
22150 getBoundingClientRect returns wrong value for combination of page zoom and scroll
22151 https://bugs.webkit.org/show_bug.cgi?id=173841
22152 rdar://problem/32983841
22154 Reviewed by Dean Jackson.
22156 Make "Zoom In" and "Zoom Out" work correctly in the WebKit1 window. Previously they
22157 always did text zooming.
22159 * MiniBrowser/mac/WK1BrowserWindowController.m:
22160 (-[WK1BrowserWindowController zoomIn:]):
22161 (-[WK1BrowserWindowController zoomOut:]):
22162 (-[WK1BrowserWindowController canResetZoom]):
22163 (-[WK1BrowserWindowController resetZoom:]):
22165 2017-06-29 John Wilander <wilander@apple.com>
22167 Fix for intermittent Layout Test fail http/tests/loading/resourceLoadStatistics/telemetry-generation.html
22168 https://bugs.webkit.org/show_bug.cgi?id=173940
22169 <rdar://problem/33018125>
22171 Reviewed by Brent Fulgham.
22173 This change allows the TestController to turn off
22174 regular resource load statistics telemetry submission
22175 and to manually control when telemetry is calculated
22178 * WebKitTestRunner/TestController.cpp:
22179 (WTR::TestController::initialize):
22180 Turns off automatic resource load statistics telemetry submission.
22182 2017-06-29 Commit Queue <commit-queue@webkit.org>
22184 Unreviewed, rolling out r218512.
22185 https://bugs.webkit.org/show_bug.cgi?id=173981
22187 "It changes the behavior of the JS API's JSEvaluateScript
22188 which breaks TurboTax" (Requested by saamyjoon on #webkit).
22190 Reverted changeset:
22192 "test262: Completion values for control flow do not match the
22194 https://bugs.webkit.org/show_bug.cgi?id=171265
22195 http://trac.webkit.org/changeset/218512
22197 2017-06-29 Jonathan Bedard <jbedard@apple.com>
22199 Add WebKitSystemInterface for iOS 11
22200 https://bugs.webkit.org/show_bug.cgi?id=173936
22202 Reviewed by Lucas Forschler.
22204 * Scripts/copy-webkitlibraries-to-product-directory: Copy iOS 11 WebKitSystemInterface libraries.
22206 2017-06-28 Keith Miller <keith_miller@apple.com>
22208 VMTraps has some races
22209 https://bugs.webkit.org/show_bug.cgi?id=173941
22211 Reviewed by Michael Saboff.
22213 Add new testing mode for testing the Watchdog with our stress
22216 * Scripts/run-jsc-stress-tests:
22218 2017-06-29 Carlos Garcia Campos <cgarcia@igalia.com>
22220 [GTK][WPE] Implement API::IconLoadingClient and rework WebKitFaviconDatabase to use IconDatabase directly
22221 https://bugs.webkit.org/show_bug.cgi?id=173877
22223 Reviewed by Brady Eidson.
22225 Update favicons unit test to ensure we wait until the database is updated in testGetFavicon() before starting
22228 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
22231 2017-06-28 Tim Horton <timothy_horton@apple.com>
22233 MobileSafari was constantly using 10-15% CPU viewing a PDF
22234 https://bugs.webkit.org/show_bug.cgi?id=173944
22235 <rdar://problem/33039910>
22237 Reviewed by Simon Fraser.
22239 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22240 * TestWebKitAPI/Tests/WebKit2Cocoa/WKPDFViewStablePresentationUpdateCallback.mm:
22241 Add a test that we ever call the stable presentation update callback
22242 when we have a WKPDFView up, instead of infinitely looping.
22244 2017-06-28 Alex Christensen <achristensen@webkit.org>
22246 Prevent displaying URLs with small capital letters
22247 https://bugs.webkit.org/show_bug.cgi?id=173949
22248 <rdar://problem/32952058>
22250 Reviewed by Brent Fulgham.
22252 * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
22253 (TestWebKitAPI::TEST):
22255 2017-06-28 Brent Fulgham <bfulgham@apple.com>
22257 Unreviewed test fix.
22259 Disable the file monitor tests on iOS because the 'system' API is unavailable on that platform.
22261 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
22263 2017-06-28 Brent Fulgham <bfulgham@apple.com>
22265 Teach ResourceLoadStatistics to recognize changes in the file system
22266 https://bugs.webkit.org/show_bug.cgi?id=173800
22267 <rdar://problem/32937842>
22269 Reviewed by Chris Dumez.
22271 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22272 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp: Added.
22273 (TestWebKitAPI::FileMonitorTest::tempFilePath):
22274 (TestWebKitAPI::handleFileModification):
22275 (TestWebKitAPI::handleFileDeletion):
22276 (TestWebKitAPI::resetTestState):
22277 (TestWebKitAPI::TEST_F):
22279 2017-06-28 Brady Eidson <beidson@apple.com>
22281 DocumentLoader should always notify the client if there are pending icon loads when the load is stopped.
22282 https://bugs.webkit.org/show_bug.cgi?id=173874
22284 Reviewed by Alex Christensen.
22286 * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
22288 2017-06-28 Don Olmstead <don.olmstead@sony.com>
22290 Unreviewed, adding Don Olmstead to contributors.json
22292 * Scripts/webkitpy/common/config/contributors.json:
22294 2017-06-28 Alex Christensen <achristensen@webkit.org>
22296 WebsitePolicies given with navigation policy for redirects should apply to the provisional document
22297 https://bugs.webkit.org/show_bug.cgi?id=173886
22298 <rdar://problem/32543191>
22300 Reviewed by Andy Estes.
22302 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
22303 (ParsedRange::ParsedRange):
22304 (-[TestSchemeHandler initWithVideoData:]):
22305 (-[TestSchemeHandler webView:startURLSchemeTask:]):
22306 (-[TestSchemeHandler webView:stopURLSchemeTask:]):
22309 2017-06-27 JF Bastien <jfbastien@apple.com>
22311 WebAssembly: running out of executable memory should throw OoM
22312 https://bugs.webkit.org/show_bug.cgi?id=171537
22313 <rdar://problem/32963338>
22315 Reviewed by Saam Barati.
22317 * Scripts/run-jsc-stress-tests: add a configuration which runs the
22318 tests under limited executable memory and avoids non-WebAssembly
22319 code generation so that we more reliably run out of executable
22320 memory in WebAssembly.
22322 2017-06-27 Wenson Hsieh <wenson_hsieh@apple.com>
22324 [iOS DnD] Support dragging out of contenteditable areas without a prior selection
22325 https://bugs.webkit.org/show_bug.cgi?id=173854
22326 <rdar://problem/32236827>
22328 Reviewed by Ryosuke Niwa and Tim Horton.
22330 Adds a new test to check that an image can be dragged out of a contenteditable and dropped.
22332 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22333 * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-target.html: Added.
22334 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
22335 (TestWebKitAPI::TEST):
22337 2017-06-27 Don Olmstead <don.olmstead@sony.com>
22339 [PAL] Add symbol export macros for PAL
22340 https://bugs.webkit.org/show_bug.cgi?id=171519
22342 Reviewed by Konstantin Tokarev.
22344 * DumpRenderTree/config.h:
22345 * TestWebKitAPI/CMakeLists.txt:
22346 * TestWebKitAPI/config.h:
22347 * WebKitTestRunner/config.h:
22349 2017-06-27 John Wilander <wilander@apple.com>
22351 Resource Load Statistics: Add telemetry
22352 https://bugs.webkit.org/show_bug.cgi?id=173499
22353 <rdar://problem/32826094>
22355 Reviewed by Brent Fulgham.
22357 Adds three new testRunner functions:
22358 - installStatisticsDidRunTelemetryCallback()
22359 - statisticsFireTelemetryHandler()
22360 - setStatisticsNotifyPagesWhenTelemetryWasCaptured()
22362 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
22363 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
22364 (WTR::InjectedBundle::didReceiveMessageToPage):
22365 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
22366 (WTR::TestRunner::installStatisticsDidRunTelemetryCallback):
22367 (WTR::TestRunner::statisticsDidRunTelemetryCallback):
22368 (WTR::TestRunner::statisticsFireTelemetryHandler):
22369 (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
22370 * WebKitTestRunner/InjectedBundle/TestRunner.h:
22371 * WebKitTestRunner/TestController.cpp:
22372 (WTR::TestController::resetStateToConsistentValues):
22373 (WTR::TestController::statisticsFireTelemetryHandler):
22374 (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
22375 * WebKitTestRunner/TestController.h:
22376 * WebKitTestRunner/TestInvocation.cpp:
22377 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
22379 2017-06-27 Ting-Wei Lan <lantw44@gmail.com>
22381 Add missing includes to fix compilation error on FreeBSD
22382 https://bugs.webkit.org/show_bug.cgi?id=172919
22384 Reviewed by Mark Lam.
22386 * ImageDiff/cairo/PlatformImageCairo.cpp:
22388 2017-06-26 Jonathan Bedard <jbedard@apple.com>
22390 Unreviewed, rolling out r218783.
22392 Causing accessibility/mac/setting-attributes-is-
22393 asynchronous.html to crash consistently on mac-wk2 Debug
22395 Reverted changeset:
22397 "AX: Cannot call setValue() on contenteditable or ARIA text
22399 https://bugs.webkit.org/show_bug.cgi?id=173520
22400 http://trac.webkit.org/changeset/218783
22402 2017-06-26 Yusuke Suzuki <utatane.tea@gmail.com>
22404 [WTF] Drop Thread::create(obsolete things) API since we can use lambda
22405 https://bugs.webkit.org/show_bug.cgi?id=173825
22407 Reviewed by Saam Barati.
22409 * DumpRenderTree/JavaScriptThreading.cpp:
22410 (runJavaScriptThread):
22411 (startJavaScriptThreads):
22412 * DumpRenderTree/mac/DumpRenderTree.mm:
22415 (testThreadIdentifierMap):
22417 2017-06-26 David Kilzer <ddkilzer@apple.com>
22419 [TestWebKitAPI] Fix false-positive bad release warnings found by clang static analyzer
22420 <https://webkit.org/b/173837>
22422 Reviewed by Geoffrey Garen.
22424 The clang static analyzer can't reason about objects that are
22425 assigned to a delegate as +1 retained, and then released
22426 later in a different method when the delegate is cleared.
22428 Instead, use a common idiom where the object setting the
22429 delegate retains it as an instance variable on initialization.
22430 Then the same object clears the delegate and releases its
22431 instance variable during teardown.
22433 Also add EXPECT_TRUE() tests to make sure the delegate objects
22434 match before teardown.
22436 * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
22437 (TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
22438 (TestWebKitAPI::FullscreenZoomInitialFrame::teardownView):
22439 * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
22440 (TestWebKitAPI::PageVisibilityStateWithWindowChanges::initializeView):
22441 (TestWebKitAPI::PageVisibilityStateWithWindowChanges::teardownView):
22443 2017-06-26 David Kilzer <ddkilzer@apple.com>
22445 [TestWebKitAPI] REGRESSION (r218750): Fix leak of NSURLResponse in WKURLSchemeHandler-1.mm
22446 <https://webkit.org/b/173836>
22448 Reviewed by Brady Eidson.
22450 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
22451 (-[RedirectSchemeHandler webView:startURLSchemeTask:]): Use
22452 adoptNS() to fix the leak. Also use auto/adoptNS() for other
22453 objects in this test.
22455 2017-06-26 Joanmarie Diggs <jdiggs@igalia.com>
22457 [ATK] Add support for aria-details and aria-errormessage
22458 https://bugs.webkit.org/show_bug.cgi?id=172588
22460 Reviewed by Chris Fleizach.
22462 Add additional methods to test ARIA properties which are exposed via
22463 AtkRelation. Also bump minimum versions of at-spi2-core and at-spi2-atk
22464 to versions which support the details and error-message relation types.
22466 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
22467 (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
22468 (WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
22469 (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
22470 (WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
22471 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
22472 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
22473 (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
22474 (WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
22475 (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
22476 (WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
22477 * gtk/jhbuild.modules:
22479 2017-06-26 Carlos Garcia Campos <cgarcia@igalia.com>
22481 Unreviewed. Add libfii to GTK+ install dependencies script.
22483 * gtk/install-dependencies:
22485 2017-06-25 Michael Catanzaro <mcatanzaro@igalia.com>
22487 Unreviewed, rolling out r215190.
22489 Broke product select element on GNOME Bugzilla
22491 Reverted changeset:
22493 "[GTK] Misplaced right click menu on web page due to
22494 deprecated gtk_menu_popup()"
22495 https://bugs.webkit.org/show_bug.cgi?id=170553
22496 http://trac.webkit.org/changeset/215190
22498 2017-06-24 Joseph Pecoraro <pecoraro@apple.com>
22500 Remove Reflect.enumerate
22501 https://bugs.webkit.org/show_bug.cgi?id=173806
22503 Reviewed by Yusuke Suzuki.
22505 * Scripts/run-jsc-stress-tests:
22507 2017-06-24 Chris Fleizach <cfleizach@apple.com>
22509 AX: Cannot call setValue() on contenteditable or ARIA text controls
22510 https://bugs.webkit.org/show_bug.cgi?id=173520
22512 Reviewed by Ryosuke Niwa.
22514 Add setValue() method to WKTR (already existed in DRT).
22516 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
22517 (WTR::AccessibilityUIElement::setValue):
22518 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
22519 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
22520 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
22521 (WTR::AccessibilityUIElement::setValue):
22523 2017-06-23 Keith Miller <keith_miller@apple.com>
22525 Switch VMTraps to use halt instructions rather than breakpoint instructions
22526 https://bugs.webkit.org/show_bug.cgi?id=173677
22528 Reviewed by JF Bastien.
22530 * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
22533 2017-06-23 Youenn Fablet <youenn@apple.com>
22535 Set getUserMedia permission to true by default on WTR
22536 https://bugs.webkit.org/show_bug.cgi?id=173610
22538 Reviewed by Alex Christensen.
22540 Adding a way to reset the getUserMedia permission to pending.
22542 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
22543 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
22544 (WTR::InjectedBundle::setUserMediaPermissionAsUnset):
22545 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
22546 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
22547 (WTR::TestRunner::setUserMediaPermissionAsUnset):
22548 * WebKitTestRunner/InjectedBundle/TestRunner.h:
22549 * WebKitTestRunner/TestController.cpp:
22550 (WTR::TestController::resetStateToConsistentValues):
22551 (WTR::TestController::setUserMediaPermissionAsUnset):
22552 * WebKitTestRunner/TestController.h:
22553 * WebKitTestRunner/TestInvocation.cpp:
22554 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
22556 2017-06-23 Alex Christensen <achristensen@webkit.org>
22558 Add SPI to WKURLSchemeTask for redirection
22559 https://bugs.webkit.org/show_bug.cgi?id=173730
22561 Reviewed by Brady Eidson.
22563 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
22564 (-[SchemeHandler webView:startURLSchemeTask:]):
22565 (-[SchemeHandler webView:stopURLSchemeTask:]):
22567 (-[RedirectSchemeHandler webView:startURLSchemeTask:]):
22568 (-[RedirectSchemeHandler webView:stopURLSchemeTask:]):
22569 (-[RedirectSchemeHandler webView:didReceiveServerRedirectForProvisionalNavigation:]):
22570 (-[RedirectSchemeHandler webView:decidePolicyForNavigationResponse:decisionHandler:]):
22571 (-[RedirectSchemeHandler userContentController:didReceiveScriptMessage:]):
22573 2017-06-23 Carlos Garcia Campos <cgarcia@igalia.com>
22575 [WPE] Use JSC API to send script messages from web extension in tests
22576 https://bugs.webkit.org/show_bug.cgi?id=173757
22578 Reviewed by Žan Doberšek.
22580 The GTK+ uses DOM bindings to send the messages. We can just build the message string and use JSEvaluateScript
22581 to run postMessage().
22583 Fixes: /wpe/WebKitSecurityManager/file-xhr
22584 /wpe/WebKitConsoleMessage/console-api
22585 /wpe/WebKitConsoleMessage/js-exception
22586 /wpe/WebKitConsoleMessage/network-error
22587 /wpe/WebKitConsoleMessage/security-error
22589 * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
22590 (testWebKitConsoleMessageSecurityError): Remove ifdefs.
22591 (beforeAll): Ditto.
22592 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
22593 (testWebContextSecurityFileXHR): Ditto.
22594 (beforeAll): Ditto.
22595 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
22596 (consoleMessageSentCallback): Use JSEvaluateScript in WPE. We need to escape the '"' in the message string.
22597 (pageCreatedCallback): Remove ifdefs.
22599 2017-06-23 Carlos Garcia Campos <cgarcia@igalia.com>
22601 Unreviewed. Fix WPE /wpe/WebKitWebView/javascript-dialogs and /wpe/WebKitWebView/window-properties
22603 Skip onbeforeunload dialog tests for now in WPE since we don't have a implemention for
22604 simulateUserInteraction(). And do not expect changes in "geometry" property of WebKitWindowProperties that
22605 doesn't exist yet in WPE.
22607 * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
22608 (testWebViewJavaScriptDialogs):
22609 (testWebViewWindowProperties):
22611 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22613 [GTK] Upgrade pixman and cairo in jhbuild
22614 https://bugs.webkit.org/show_bug.cgi?id=173710
22616 Reviewed by Carlos Alberto Lopez Perez.
22618 * gtk/jhbuild.modules:
22620 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22622 REGRESSION(r218686): [GTK] Several unit tests are failing after r218686 in the bots
22623 https://bugs.webkit.org/show_bug.cgi?id=173711
22625 Reviewed by Carlos Alberto Lopez Perez.
22627 I can't reproduce it locally, but it's complaining about a g_setenv() and I only added one in r218686 to recover
22628 the XDG_RUNTIME_DIR, because it's required by Wayland to work. So, I guess that env var is not set in the bots.
22630 * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
22631 (WebKitTestBus::run): Ensure value is not nullptr before calling g_setenv().
22633 2017-06-22 David Kilzer <ddkilzer@apple.com>
22635 REGRESSION (r218419): 7 leaks in PluginLoadClientPolicies.mm
22636 <https://webkit.org/b/173721>
22638 Reviewed by Joseph Pecoraro.
22640 Use RetainPtr<> to create NSMutableDictionary and NSNumber
22641 objects to fix leaks and to avoid the autoreleasepool.
22643 * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:
22646 2017-06-22 Matt Lewis <jlewis3@apple.com>
22648 Unreviewed, rolling out r218633.
22650 The test is failing frequently on Sierra Debug and Windows
22652 Reverted changeset:
22654 "AX: Cannot call setValue() on contenteditable or ARIA text
22656 https://bugs.webkit.org/show_bug.cgi?id=173520
22657 http://trac.webkit.org/changeset/218633
22659 2017-06-22 David Kilzer <ddkilzer@apple.com>
22661 [TestWebKitAPI] Fix misuse of -[NSData dataWithBytesNoCopy:length:] with global variables
22662 <https://webkit.org/b/173690>
22664 Reviewed by Chris Dumez.
22666 Per documentation, -[NSData dataWithBytesNoCopy:length:] takes
22667 ownership of malloc()-ed memory, then frees it when it's
22668 released. These tests were passing global variables into the
22669 method, which is not malloc()-ed memory, which violates the API
22672 The fix is to switch to use
22673 -[NSData dataWithBytesNoCopy:length:freeWhenDone:] and to pass
22674 NO for the last argument.
22676 Caught by the clang static analyzer.
22678 * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
22680 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
22683 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22685 [GTK] Upgrade Harfbuzz to version 1.4.2
22686 https://bugs.webkit.org/show_bug.cgi?id=173592
22688 Reviewed by Carlos Alberto Lopez Perez.
22690 * gtk/jhbuild.modules:
22692 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22694 [WPE] Update WPEBackend-mesa
22695 https://bugs.webkit.org/show_bug.cgi?id=173705
22697 Reviewed by Carlos Alberto Lopez Perez.
22699 A crash has been fixed, needed for unit tests to work.
22701 * wpe/jhbuild.modules:
22703 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22705 Remove unused coordinated graphics C API
22706 https://bugs.webkit.org/show_bug.cgi?id=173706
22708 Reviewed by Žan Doberšek.
22710 * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp: Removed.
22711 * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive_Bundle.cpp: Removed.
22712 * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewRestoreZoomAndScrollBackForward.cpp: Removed.
22713 * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewUserViewportToContents.cpp: Removed.
22714 * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward1.html: Removed.
22715 * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward2.html: Removed.
22717 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22719 [WPE] Build glib API tests
22720 https://bugs.webkit.org/show_bug.cgi?id=173702
22722 Reviewed by Žan Doberšek.
22724 Many of the tests pass without problems, others need to be investigated, and some others are known issues. The
22725 main difference between the GTK+ and WPE WebKitWebView is that in GTK+ it's a GtkWidget, so initially
22726 unowned. The tests assume that webkit_web_view_new methods return a floating reference. This patch adds
22727 Test::adoptView() method that returns a GRefPtr<WebKitWebView> with a different implementation in GTK+ and
22728 WPE. In the case of GTK+, it sinks the floating reference, while in WPE it simply adopts the reference. Another
22729 difference is that in GTK+ the web view is initially hidden and needs to be added to a window to make it
22730 visible. Also, some tests need the web view to be realized to work, and others need that the view is added to a
22731 toplevel window, instead of a popup window. All those things are not needed at all in WPE. I've added several
22732 #ifdefs with FIXME comments for the things that we know don't work in WPE yet, for example, because we haven't
22733 implemented the methods to send events to the web view. Those will be removed eventually when we fix the issues
22734 and implement the missing features.
22737 * TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp:
22738 * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
22739 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
22740 (testAutomationSessionRequestSession):
22741 * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
22742 (testWebKitWebViewSessionState):
22743 (testWebKitWebViewSessionStateWithFormData):
22744 (testWebKitWebViewNavigationAfterSessionRestore):
22745 * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
22747 * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
22748 (testCookieManagerEphemeral):
22749 * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
22750 (testBlobDownload):
22752 * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
22753 * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
22754 * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
22755 (testProcessPerWebView):
22756 * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
22757 * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
22758 (testWebViewCreateNavigationData):
22759 (testWebViewJavaScriptDialogs):
22760 (testWebViewWindowProperties):
22761 (testWebViewMouseTarget):
22762 (testWebViewGeolocationPermissionRequests):
22763 (testWebViewUserMediaPermissionRequests):
22764 (testWebViewAudioOnlyUserMediaPermissionRequests):
22765 (testWebViewFileChooserRequest):
22767 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
22769 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
22770 (testPrivateBrowsing):
22771 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
22772 (testFindControllerHide):
22773 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
22774 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
22775 (testWebKitSettings):
22777 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
22778 (testWebViewNewWithUserContentManager):
22780 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
22781 (testWebContextEphemeral):
22782 (testWebContextProxySettings):
22784 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
22785 (testWebViewWebContext):
22786 (testWebViewWebContextLifetime):
22787 (testWebViewEphemeral):
22788 (testWebViewSettings):
22789 (testWebViewCanShowMIMEType):
22790 (testWebViewPageVisibility):
22791 (testWebViewIsPlayingAudio):
22793 * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
22794 (testWebsiteDataEphemeral):
22795 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
22796 (documentLoadedCallback):
22797 (pageCreatedCallback):
22798 (methodCallCallback):
22799 * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h:
22800 * TestWebKitAPI/glib/CMakeLists.txt:
22801 * TestWebKitAPI/glib/PlatformGTK.cmake:
22802 * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
22803 * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
22805 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
22807 * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
22808 (WebKitTestBus::run):
22809 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
22810 (WebViewTest::~WebViewTest):
22811 (WebViewTest::initializeWebView):
22812 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
22813 * TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp: Added.
22814 (WebViewTest::platformDestroy):
22815 (WebViewTest::platformInitializeWebView):
22816 (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
22817 (WebViewTest::resizeView):
22818 (WebViewTest::hideView):
22819 (parentWindowMapped):
22820 (WebViewTest::showInWindow):
22821 (WebViewTest::showInWindowAndWaitUntilMapped):
22822 (WebViewTest::mouseMoveTo):
22823 (WebViewTest::clickMouseButton):
22824 (WebViewTest::emitPopupMenuSignal):
22825 (WebViewTest::keyStroke):
22826 (WebViewTest::doMouseButtonEvent):
22827 * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp: Copied from Tools/TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h.
22828 (WebViewTest::platformDestroy):
22829 (WebViewTest::platformInitializeWebView):
22830 (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
22831 (WebViewTest::resizeView):
22832 (WebViewTest::hideView):
22833 (WebViewTest::mouseMoveTo):
22834 (WebViewTest::clickMouseButton):
22835 (WebViewTest::keyStroke):
22837 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22839 [GTK] Move WebKit2 GLib API tests to glib directories
22840 https://bugs.webkit.org/show_bug.cgi?id=173642
22842 Reviewed by Žan Doberšek.
22845 * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Removed.
22846 * TestWebKitAPI/Tests/WebKit2Gtk/resources/webkit2gtk-tests.gresource.xml: Removed.
22847 * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp.
22848 * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp.
22849 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp.
22850 * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestBackForwardList.cpp.
22851 * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp.
22852 (testWebKitConsoleMessageNetworkError):
22853 * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp.
22854 * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp.
22855 * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp.
22856 * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp.
22857 (testLoadFromGResource):
22858 * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp.
22859 * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp.
22860 * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp.
22861 * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp.
22862 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp.
22863 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp.
22864 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFindController.cpp.
22865 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitPolicyClient.cpp.
22866 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSecurityOrigin.cpp.
22867 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp.
22868 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp.
22869 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp.
22870 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp.
22871 (testWebViewRunJavaScript):
22872 * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebsiteData.cpp.
22873 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp.
22874 (registerGResource):
22875 * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp.
22876 * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h.
22877 * TestWebKitAPI/Tests/WebKitGLib/resources/blank.ico: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/blank.ico.
22878 * TestWebKitAPI/Tests/WebKitGLib/resources/boring.html: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/boring.html.
22879 * TestWebKitAPI/Tests/WebKitGLib/resources/link-title.js: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/link-title.js.
22880 * TestWebKitAPI/Tests/WebKitGLib/resources/silence.mpg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/silence.mpg.
22881 * TestWebKitAPI/Tests/WebKitGLib/resources/simple.json: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/simple.json.
22882 * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-cert.pem.
22883 * TestWebKitAPI/Tests/WebKitGLib/resources/test-key.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-key.pem.
22884 * TestWebKitAPI/Tests/WebKitGLib/resources/test.pdf: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test.pdf.
22885 * TestWebKitAPI/Tests/WebKitGLib/resources/track.ogg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/track.ogg.
22886 * TestWebKitAPI/Tests/WebKitGLib/resources/webkitglib-tests.gresource.xml: Added.
22887 * TestWebKitAPI/glib/CMakeLists.txt: Added.
22888 * TestWebKitAPI/glib/PlatformGTK.cmake: Added.
22889 * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp.
22890 * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h.
22891 * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp.
22892 (registerGResource):
22893 * TestWebKitAPI/glib/WebKitGLib/TestMain.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h.
22894 (Test::getResourcesDir):
22895 * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp.
22896 * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.h.
22897 * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp.
22898 * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.h.
22899 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp.
22900 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h.
22902 2017-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
22904 [WPE] Add initial web extensions API
22905 https://bugs.webkit.org/show_bug.cgi?id=173640
22907 Reviewed by Žan Doberšek.
22909 Add style checker exceptions for WPE web extensions API files.
22911 * Scripts/webkitpy/style/checker.py:
22913 2017-06-21 Wenson Hsieh <wenson_hsieh@apple.com>
22915 [iOS DnD] [WK2] Cancelling a drag interaction using the ObjC SPI causes subsequent dragging to fail
22916 https://bugs.webkit.org/show_bug.cgi?id=173659
22917 <rdar://problem/32879788>
22919 Reviewed by Tim Horton.
22921 Adds a new test to verify that a lift cancelled within the UI process does not cause subsequent dragging to fail.
22923 * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html:
22925 Augment this test page to log dragend and dragstart events on the drag source as well.
22927 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
22928 (checkStringArraysAreEqual):
22929 (TestWebKitAPI::TEST):
22931 2017-06-21 Antoine Quint <graouts@apple.com>
22933 Ensure DRT always logs rAF suspension debugging code
22934 https://bugs.webkit.org/show_bug.cgi?id=173681
22936 Reviewed by Tim "Mr. T" Horton.
22938 * DumpRenderTree/mac/DumpRenderTree.mm:
22939 (resetWebPreferencesToConsistentValues):
22941 2017-06-21 Chris Dumez <cdumez@apple.com>
22943 Allow constructing a WTF:Function from a function pointer
22944 https://bugs.webkit.org/show_bug.cgi?id=173660
22946 Reviewed by Alex Christensen.
22948 Add API test coverage.
22950 * TestWebKitAPI/Tests/WTF/Function.cpp:
22951 (TestWebKitAPI::returnThree):
22952 (TestWebKitAPI::returnFour):
22953 (TestWebKitAPI::returnPassedValue):
22954 (TestWebKitAPI::TEST):
22956 2017-06-21 Antoine Quint <graouts@apple.com>
22958 Add logging to identify when the Page suspends scripted animations
22959 https://bugs.webkit.org/show_bug.cgi?id=173626
22961 Reviewed by Tim Horton.
22963 Turn the new logging on for WK1/DRT since the issue we're trying to pinpoint only occurs on WK1 bots.
22965 * DumpRenderTree/mac/DumpRenderTree.mm:
22966 (resetWebPreferencesToConsistentValues):
22968 2017-06-21 Chris Fleizach <cfleizach@apple.com>
22970 AX: Cannot call setValue() on contenteditable or ARIA text controls
22971 https://bugs.webkit.org/show_bug.cgi?id=173520
22973 Reviewed by Ryosuke Niwa.
22975 Add setValue() method to WKTR (already existed in DRT).
22977 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
22978 (WTR::AccessibilityUIElement::setValue):
22979 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
22980 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
22981 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
22982 (WTR::AccessibilityUIElement::setValue):
22984 2017-06-21 Zan Dobersek <zdobersek@igalia.com>
22986 List libtasn1 packages in GTK+ and WPE install-dependencies scripts
22987 as one of the dependencies required to build the product.
22989 Rubber-stamped by Carlos Garcia Campos.
22991 * gtk/install-dependencies:
22992 * wpe/install-dependencies:
22994 2017-06-20 Myles C. Maxfield <mmaxfield@apple.com>
22996 Disable font variations on macOS Sierra and iOS 10
22997 https://bugs.webkit.org/show_bug.cgi?id=173618
22998 <rdar://problem/32879164>
23000 Reviewed by Jon Lee.
23002 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
23004 2017-06-20 Wenson Hsieh <wenson_hsieh@apple.com>
23006 [iOS DnD] [WK2] Remove custom logic for disambiguating long press action sheet gestures and drag lift
23007 https://bugs.webkit.org/show_bug.cgi?id=173578
23008 <rdar://problem/32825028>
23010 Reviewed by Tim Horton.
23012 Slight tweak to ensure that DataInteractionTests.CustomActionSheetPopover still passes and verifies that showing
23013 a custom popover does not cause dragging to fail when the popover is presented.
23015 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
23016 (-[DataInteractionSimulator _advanceProgress]):
23018 2017-06-20 Carlos Garcia Campos <cgarcia@igalia.com>
23020 [WPE] Add initial implementation of glib API
23021 https://bugs.webkit.org/show_bug.cgi?id=173546
23023 Reviewed by Žan Doberšek.
23025 Disable geolocation because WPE doesn't implement any provider and update the style checker exceptions to
23026 include WPE glib API files.
23028 * Scripts/webkitperl/FeatureList.pm:
23029 * Scripts/webkitpy/style/checker.py:
23030 * Scripts/webkitpy/style/checkers/cpp.py:
23031 (check_identifier_name_in_declaration):
23033 2017-06-20 Carlos Garcia Campos <cgarcia@igalia.com>
23035 [GTK] Upgrade to ICU to version 57.1
23036 https://bugs.webkit.org/show_bug.cgi?id=173538
23038 Reviewed by Žan Doberšek.
23040 * gtk/jhbuild.modules:
23042 2017-06-20 Carlos Garcia Campos <cgarcia@igalia.com>
23044 [GTK] Remove unneeded modules from the jhbuild
23045 https://bugs.webkit.org/show_bug.cgi?id=170540
23047 Reviewed by Michael Catanzaro.
23049 We are building libxslt and libffi that we don't really need to build from sources.
23051 * gtk/jhbuild.modules:
23053 2017-06-19 Frederic Wang <fwang@igalia.com>
23055 [Mac] Add an experimental feature setting for async frame scrolling
23056 https://bugs.webkit.org/show_bug.cgi?id=173359
23058 Reviewed by Simon Fraser.
23060 * DumpRenderTree/mac/DumpRenderTree.mm:
23061 (enableExperimentalFeatures): Do not enable async frame scrolling for now.
23062 (resetWebPreferencesToConsistentValues): Disable async frame scrolling by default.
23063 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
23064 (WTR::InjectedBundle::beginTesting): Initalize to async frame scrolling to false.
23066 2017-06-19 Guillaume Emont <guijemont@igalia.com>
23068 Unreviewed, adding myself to contributors.json
23070 * Scripts/webkitpy/common/config/contributors.json:
23072 2017-06-19 Joseph Pecoraro <pecoraro@apple.com>
23074 test262: Completion values for control flow do not match the spec
23075 https://bugs.webkit.org/show_bug.cgi?id=171265
23077 Reviewed by Saam Barati.
23079 * Scripts/run-jsc-stress-tests:
23080 Include a :failDueToOutdatedOrBadTest to mark failures with justification.
23082 2017-06-19 Zalan Bujtas <zalan@apple.com>
23084 Opening certain mails brings up a mail that grows indefinitely.
23085 https://bugs.webkit.org/show_bug.cgi?id=173562
23086 <rdar://problem/32766579>
23088 Reviewed by Tim Horton.
23090 * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
23093 2017-06-19 Wenson Hsieh <wenson_hsieh@apple.com>
23095 [iOS DnD] Support .zip archives for file uploads via drag and drop
23096 https://bugs.webkit.org/show_bug.cgi?id=173511
23097 <rdar://problem/32521025>
23099 Reviewed by Tim Horton.
23101 Adds tests for dropping .zip archives into a JavaScript-based file upload area, as well as into a file input.
23102 Also verifies that URLs are not handled as file drops. See WebCore ChangeLog for more details.
23104 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23105 * TestWebKitAPI/Tests/WebKit2Cocoa/compressed-files.zip: Added.
23106 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
23108 (TestWebKitAPI::TEST):
23110 2017-06-18 Darin Adler <darin@apple.com>
23112 Fix Ref to deref before assignment, add tests for this to RefPtr, Ref, Function
23113 https://bugs.webkit.org/show_bug.cgi?id=173526
23115 Reviewed by Sam Weinig.
23117 * TestWebKitAPI/CMakeLists.txt: Added Function.cpp.
23118 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
23120 * TestWebKitAPI/Tests/WTF/Function.cpp: Added. Contains basic tests and some
23121 tests for assignment before destruction ones.
23123 * TestWebKitAPI/Tests/WTF/MoveOnly.h: Added a () operator so this can be used
23124 as a function, so it can be used in WTF::Function tests.
23126 * TestWebKitAPI/Tests/WTF/Ref.cpp: Use EXPECT macros insead of ASSERT.
23127 Added tests for swap and for assignment before deref.
23129 * TestWebKitAPI/Tests/WTF/RefLogger.cpp: Stopped using inlining; no good reason
23130 to inline everything. Also removed the unnecessary clearing of the log every time
23131 the DerivedRefLogger constructor is called.
23132 * TestWebKitAPI/Tests/WTF/RefLogger.h: Ditto.
23134 * TestWebKitAPI/Tests/WTF/RefPtr.cpp: Use EXPECT macros instead of ASSERT.
23135 Added tests for assignment before deref and similar for releaseNonNull.
23137 2017-06-19 Sam Weinig <sam@webkit.org>
23139 [WebIDL] Properly model buffer source / typed arrays as their own IDL types
23140 https://bugs.webkit.org/show_bug.cgi?id=173513
23142 Reviewed by Alex Christensen.
23144 * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
23145 * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
23146 Replace IsNonPointerType subroutine with IsPrimitiveType so we can remove IsNonPointerType.
23148 2017-06-19 Per Arne Vollan <pvollan@apple.com>
23150 [Win] fast/dom/assign-to-window-status.html is flaky.
23151 https://bugs.webkit.org/show_bug.cgi?id=173512
23153 Reviewed by Alex Christensen.
23155 We should not dump status callbacks when test is done.
23157 * DumpRenderTree/win/UIDelegate.cpp:
23158 (UIDelegate::setStatusText):
23160 2017-06-19 Carlos Alberto Lopez Perez <clopez@igalia.com>
23162 [WPE][JHBuild] Update WPEBackend-mesa
23163 https://bugs.webkit.org/show_bug.cgi?id=173433
23167 Update WPEBackend-mesa back (like it was done originally in r218344)
23168 after fixing the issue with the DISPLAY environment variables that
23169 caused the crashes.
23171 * wpe/jhbuild.modules:
23173 2017-06-19 Carlos Alberto Lopez Perez <clopez@igalia.com>
23175 Rename unit test file after r218482
23176 https://bugs.webkit.org/show_bug.cgi?id=173483
23180 * Scripts/webkitpy/port/waylanddriver_unittest.py: Renamed from Tools/Scripts/webkitpy/port/wayland_unittest.py.
23182 2017-06-19 Carlos Garcia Campos <cgarcia@igalia.com>
23184 Unreviewed. Fix wrong style checker condition added in r218487.
23186 * Scripts/webkitpy/style/checkers/cpp.py:
23187 (check_identifier_name_in_declaration):
23189 2017-06-19 Adrian Perez de Castro <aperez@igalia.com>
23191 Missing <functional> includes make builds fail with GCC 7.x
23192 https://bugs.webkit.org/show_bug.cgi?id=173544
23194 Unreviewed gardening.
23196 Fix compilation with GCC 7.
23198 * TestWebKitAPI/Tests/WTF/HashSet.cpp:
23199 * TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
23201 2017-06-19 Carlos Garcia Campos <cgarcia@igalia.com>
23203 [GTK] Move GTK+ API files that could be shared to glib dirs
23204 https://bugs.webkit.org/show_bug.cgi?id=173545
23206 Reviewed by Žan Doberšek.
23208 Update paths of GTK+ API in watchlist and style checker.
23210 * Scripts/webkitpy/common/config/watchlist:
23211 * Scripts/webkitpy/style/checker.py:
23212 * Scripts/webkitpy/style/checkers/cpp.py:
23213 (check_identifier_name_in_declaration):
23215 2017-06-19 Carlos Alberto Lopez Perez <clopez@igalia.com>
23217 Port setup_environ_for_server should not set environment variables related with the driver.
23218 https://bugs.webkit.org/show_bug.cgi?id=173483
23220 Reviewed by Carlos Garcia Campos.
23222 The port setup_environ_for_server() should not set environment variables
23223 that depend on the type of driver (like DISPLAY or GDK_BACKEND).
23224 This varibles should be only set on the driver setup_environ_for_test().
23226 This causes that (for example) the variable DISPLAY or XAUTHORITY leaks
23227 into the test environment even when running the tests with a driver
23228 that is not the Xorg or Xvfb one.
23230 * Scripts/webkitpy/port/base.py: Stop setting XAUTHORITY and DISPLAY here.
23231 (Port.to.setup_environ_for_server):
23232 * Scripts/webkitpy/port/driver.py: Remove unneded WEBKIT_OUTPUTDIR that is already set on base.py
23233 (Driver._setup_environ_for_driver):
23234 * Scripts/webkitpy/port/driver_unittest.py:
23235 (DriverTest.test_setup_environ_for_test):
23237 (DriverTest.test_setup_environ_base_vars):
23238 * Scripts/webkitpy/port/gtk.py: Stop setting GDK_BACKEND here and do that on the driver (Xvfb).
23239 (GtkPort.setup_environ_for_server):
23240 * Scripts/webkitpy/port/wayland_unittest.py: Added.
23241 (WaylandDriverTest):
23242 (WaylandDriverTest.make_driver):
23243 (WaylandDriverTest.make_environment):
23244 (WaylandDriverTest.test_checkdriver):
23245 (WaylandDriverTest.test_environment_needed_variables):
23246 (WaylandDriverTest.test_environment_forbidden_variables):
23247 (WaylandDriverTest.test_environment_optional_variables):
23248 * Scripts/webkitpy/port/waylanddriver.py: Allow the driver to run also with WAYLAND_SOCKET.
23249 (WaylandDriver.check_driver):
23250 (WaylandDriver._setup_environ_for_test):
23251 * Scripts/webkitpy/port/xorgdriver.py:
23252 (XorgDriver.check_driver):
23253 (XorgDriver._setup_environ_for_test):
23254 * Scripts/webkitpy/port/xorgdriver_unittest.py: Added.
23256 (XorgDriverTest.make_driver):
23257 (XorgDriverTest.make_environment):
23258 (XorgDriverTest.test_checkdriver):
23259 (XorgDriverTest.test_environment_needed_variables):
23260 (XorgDriverTest.test_environment_forbidden_variables):
23261 (XorgDriverTest.test_environment_optional_variables):
23262 * Scripts/webkitpy/port/xvfbdriver.py:
23263 (XvfbDriver._setup_environ_for_test):
23264 * Scripts/webkitpy/port/xvfbdriver_unittest.py:
23265 (XvfbDriverTest.assertDriverStartSuccessful):
23268 2017-05-14 Frederic Wang <fwang@igalia.com>
23270 Add heuristic to avoid flattening "fullscreen" iframes
23271 https://bugs.webkit.org/show_bug.cgi?id=171914
23273 Reviewed by Simon Fraser.
23275 * DumpRenderTree/mac/DumpRenderTree.mm:
23276 (resetWebPreferencesToConsistentValues): Use WebKitFrameFlatteningDisabled.
23278 2017-06-18 Chris Dumez <cdumez@apple.com>
23280 Crash when re-entering MediaDevicesEnumerationRequest::cancel()
23281 https://bugs.webkit.org/show_bug.cgi?id=173522
23282 <rdar://problem/31185739>
23284 Reviewed by Darin Adler.
23286 Add API test for re-entering Function's assignment operators.
23288 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23289 * TestWebKitAPI/Tests/WTF/Function.cpp: Added.
23290 (TestWebKitAPI::TestObject::TestObject):
23291 (TestWebKitAPI::TestObject::~TestObject):
23292 (TestWebKitAPI::TestObject::operator()):
23293 (TestWebKitAPI::TEST):
23295 2017-06-16 Dan Bernstein <mitz@apple.com>
23297 [Cocoa] Some declarations have missing or incorrect availability attributes
23298 https://bugs.webkit.org/show_bug.cgi?id=173508
23300 Reviewed by Tim Horton.
23302 * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
23303 (TestWebKitAPI::TEST): Updated for renames.
23305 2017-06-16 Wenson Hsieh <wenson_hsieh@apple.com>
23307 [iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
23308 https://bugs.webkit.org/show_bug.cgi?id=173366
23309 <rdar://problem/32767014>
23311 Reviewed by Tim Horton.
23313 Move test pages and pieces of DataInteractionSimulator hidden behind WebKitAdditions into TestWebKitAPI. No
23314 change in behavior.
23316 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
23317 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23318 * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Added.
23319 * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Added.
23320 * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-textarea.html: Added.
23321 * TestWebKitAPI/Tests/WebKit2Cocoa/div-and-large-image.html: Added.
23322 * TestWebKitAPI/Tests/WebKit2Cocoa/file-uploading.html: Added.
23323 * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Added.
23324 * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Added.
23325 * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Added.
23326 * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html: Added.
23327 * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-operation.html: Added.
23328 * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-start.html: Added.
23329 * TestWebKitAPI/Tests/WebKit2Cocoa/textarea-to-input.html: Added.
23330 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
23331 (-[MockDragDropSession initWithItems:location:window:]):
23332 (-[MockDragDropSession allowsMoveOperation]):
23333 (-[MockDragDropSession isRestrictedToDraggingApplication]):
23334 (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
23335 (-[MockDragDropSession canLoadObjectsOfClass:]):
23336 (-[MockDragDropSession canLoadObjectsOfClasses:]):
23337 (-[MockDragDropSession items]):
23338 (-[MockDragDropSession setItems:]):
23339 (-[MockDragDropSession locationInView:]):
23340 (-[MockDataOperationSession initWithProviders:location:window:]):
23341 (-[MockDataOperationSession session]):
23342 (-[MockDataOperationSession isLocal]):
23343 (-[MockDataOperationSession progress]):
23344 (-[MockDataOperationSession setProgressIndicatorStyle:]):
23345 (-[MockDataOperationSession progressIndicatorStyle]):
23346 (-[MockDataOperationSession operationMask]):
23347 (-[MockDataOperationSession localDragSession]):
23348 (-[MockDataOperationSession hasItemsConformingToTypeIdentifier:]):
23349 (-[MockDataOperationSession canCreateItemsOfClass:]):
23350 (-[MockDataOperationSession loadObjectsOfClass:completion:]):
23351 (-[MockDataInteractionSession initWithWindow:]):
23352 (-[MockDataInteractionSession localOperationMask]):
23353 (-[MockDataInteractionSession externalOperationMask]):
23354 (-[MockDataInteractionSession session]):
23355 (-[DataInteractionSimulator _advanceProgress]):
23357 2017-06-16 Alex Christensen <achristensen@webkit.org>
23359 Show punycode to user if a URL has dotless i or j followed by diacritic dot
23360 https://bugs.webkit.org/show_bug.cgi?id=173431
23362 Reviewed by Darin Adler.
23364 * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
23365 (TestWebKitAPI::TEST):
23367 2017-06-16 Chris Dumez <cdumez@apple.com>
23369 [WK2] Add WKProcessPool SPI to efficiently reset all plugin load client policies
23370 https://bugs.webkit.org/show_bug.cgi?id=173472
23371 <rdar://problem/28858817>
23373 Reviewed by Brady Eidson.
23375 Add API test coverage.
23377 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23378 * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm: Added.
23381 2017-06-16 Brady Eidson <beidson@apple.com>
23383 REGRESSION (r218015) IconLoaders for already-cached resources expect to be asynchronous, no longer are.
23384 <rdar://problem/32817519> and https://bugs.webkit.org/show_bug.cgi?id=173478
23386 Reviewed by Daniel Bates.
23388 * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
23390 2017-06-16 Chris Dumez <cdumez@apple.com>
23392 DRT fails to reset page visibility between tests
23393 https://bugs.webkit.org/show_bug.cgi?id=173485
23395 Reviewed by Alexey Proskuryakov.
23397 DRT fails to reset page visibility between tests and relies on tests calling testRunner.resetPageVisibility().
23398 Fix this to address flakiness.
23400 I confirmed this by commenting out the call to testRunner.resetPageVisibility() in
23401 fast/events/page-visibility-onvisibilitychange.html and running the test in a loop.
23402 The test became flaky without the DRT change and was no longer flaky with the DRT
23405 WebKitTestRunner already does this.
23407 * DumpRenderTree/mac/DumpRenderTree.mm:
23408 (resetWebViewToConsistentStateBeforeTesting):
23410 2017-06-16 Alex Christensen <achristensen@webkit.org>
23412 Implement basic authentication in MiniBrowser
23413 https://bugs.webkit.org/show_bug.cgi?id=173443
23415 Reviewed by Tim Horton.
23417 * MiniBrowser/mac/WK2BrowserWindowController.m:
23418 (-[WK2BrowserWindowController webView:didReceiveAuthenticationChallenge:completionHandler:]):
23420 2017-06-16 Jer Noble <jer.noble@apple.com>
23422 [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
23423 https://bugs.webkit.org/show_bug.cgi?id=173398
23424 <rdar://problem/32592961>
23426 Reviewed by Eric Carlson.
23428 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23429 * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
23430 (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
23431 (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
23432 (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
23433 (TestWebKitAPI::TEST):
23434 * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
23436 2017-06-16 Matt Lewis <jlewis3@apple.com>
23438 Unreviewed, rolling out r218375.
23440 The API test MediaStreamTrackDetached is still timing out
23443 Reverted changeset:
23445 "[WebRTC] Removing a MediaStreamTrack from a MediaStream
23446 reports no recording to WebKit clients"
23447 https://bugs.webkit.org/show_bug.cgi?id=173398
23448 http://trac.webkit.org/changeset/218375
23450 2017-06-15 Jer Noble <jer.noble@apple.com>
23452 [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
23453 https://bugs.webkit.org/show_bug.cgi?id=173398
23454 <rdar://problem/32592961>
23456 Reviewed by Eric Carlson.
23458 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23459 * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
23460 (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
23461 (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
23462 (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
23463 (TestWebKitAPI::TEST):
23464 * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
23466 2017-06-15 Matt Lewis <jlewis3@apple.com>
23468 Unreviewed, rolling out r218365.
23470 The revision caused API timeouts on all builds.
23472 Reverted changeset:
23474 "[WebRTC] Removing a MediaStreamTrack from a MediaStream
23475 reports no recording to WebKit clients"
23476 https://bugs.webkit.org/show_bug.cgi?id=173398
23477 http://trac.webkit.org/changeset/218365
23479 2017-06-15 Jer Noble <jer.noble@apple.com>
23481 [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
23482 https://bugs.webkit.org/show_bug.cgi?id=173398
23483 <rdar://problem/32592961>
23485 Reviewed by Eric Carlson.
23487 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23488 * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
23489 (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
23490 (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
23491 (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
23492 (TestWebKitAPI::TEST):
23493 * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
23495 2017-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
23497 REGRESSION(r218344): [WPE] Thousands of layout test crashes
23498 https://bugs.webkit.org/show_bug.cgi?id=173433
23502 * wpe/jhbuild.modules: Revert the update of WPEBackend-mesa.
23504 2017-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
23506 [WPE] The run-minibrowser script should allow to execute also a WPE launcher
23507 https://bugs.webkit.org/show_bug.cgi?id=173061
23509 Reviewed by Žan Doberšek.
23511 Launch dyz <https://github.com/Igalia/dyz> with the script
23512 run-minibrowser for the wpe port. It is now built as part of the
23513 WPE dependencies with JHBuild.
23515 * Scripts/run-minibrowser:
23516 * Scripts/webkitdirs.pm:
23519 * wpe/install-dependencies: Luajit is needed for building dyz.
23520 * wpe/jhbuild.modules: Add dyz and update the revision for WPEBackend-mesa.
23522 2017-06-15 Wenson Hsieh <wenson_hsieh@apple.com>
23524 Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
23525 https://bugs.webkit.org/show_bug.cgi?id=173338
23526 <rdar://problem/32777720>
23528 Reviewed by Tim Horton.
23530 Adds new unit tests to ensure that -_webView:willPerformDropWithSession: can be used to filter out drag items
23531 used by WebKit when handling a drop. These tests ensure that WebItemProviderPasteboard is still able to handle
23532 these remaining items on drop.
23534 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
23535 (TestWebKitAPI::TEST):
23536 * TestWebKitAPI/ios/DataInteractionSimulator.h:
23537 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
23539 Add -overridePerformDropBlock, which can be set to provide custom handling of dropped items.
23541 (-[DataInteractionSimulator _webView:willPerformDropWithSession:]):
23543 2017-06-15 Per Arne Vollan <pvollan@apple.com>
23545 [Win] Crash in accessibility layout test.
23546 https://bugs.webkit.org/show_bug.cgi?id=173401
23548 Reviewed by Brent Fulgham.
23550 We should not manually release the punkVal IUnknown member in a _variant_t object, since the punkVal
23551 member will be automatically released when the _variant_t object goes out of scope if the vt member
23552 does not equal VT_UNKNOWN | VT_BYREF.
23553 See https://msdn.microsoft.com/en-us/library/windows/desktop/ms221165(v=vs.85).aspx.
23555 * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
23556 (AccessibilityUIElement::titleUIElement):
23558 2017-06-15 Carlos Garcia Campos <cgarcia@igalia.com>
23560 [GTK] Add API to allow overriding popup menus
23561 https://bugs.webkit.org/show_bug.cgi?id=172905
23563 Reviewed by Michael Catanzaro.
23565 Add a unit test to check the new API.
23567 * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
23568 * TestWebKitAPI/Tests/WebKit2Gtk/TestOptionMenu.cpp: Added.
23569 (OptionMenuTest::OptionMenuTest):
23570 (OptionMenuTest::~OptionMenuTest):
23571 (OptionMenuTest::destroyMenu):
23572 (OptionMenuTest::showOptionMenuCallback):
23573 (OptionMenuTest::menuCloseCallback):
23574 (OptionMenuTest::showOptionMenu):
23575 (OptionMenuTest::clickAtPositionAndWaitUntilOptionMenuShown):
23576 (OptionMenuTest::close):
23577 (OptionMenuTest::activateItem):
23578 (OptionMenuTest::selectItem):
23579 (testOptionMenuSimple):
23580 (testOptionMenuGroups):
23581 (testOptionMenuActivate):
23582 (testOptionMenuSelect):
23586 2017-06-15 Fujii Hironori <Hironori.Fujii@sony.com>
23588 [WinCairo] DumpRenderTree.cpp: error C3861: 'CFURLCacheCreate': identifier not found
23589 https://bugs.webkit.org/show_bug.cgi?id=173399
23591 Reviewed by Per Arne Vollan.
23593 OpenCFLite doesn't have CFURLCacheCreate and CFURLCacheSetSharedURLCache.
23594 Curl port needs to do nothing because libcurl doesn't have disk cache.
23596 * DumpRenderTree/win/DumpRenderTree.cpp:
23597 (prepareConsistentTestingEnvironment): Call CFURLCacheCreate() and
23598 CFURLCacheSetSharedURLCache() only if USE(CFURLCONNECTION).
23600 2017-06-14 Tomas Popela <tpopela@redhat.com>
23602 [GTK] integer expression expected if running Tools/gtk/install-dependencies
23603 https://bugs.webkit.org/show_bug.cgi?id=173356
23605 Reviewed by Michael Catanzaro.
23607 Use the correct operator to compare the strings.
23609 * gtk/install-dependencies:
23611 2017-06-14 Commit Queue <commit-queue@webkit.org>
23613 Unreviewed, rolling out r218285.
23614 https://bugs.webkit.org/show_bug.cgi?id=173391
23616 API test fails on iOS (Requested by alexchristensen on
23619 Reverted changeset:
23621 "Add SPI for immediate injection of user scripts"
23622 https://bugs.webkit.org/show_bug.cgi?id=173342
23623 http://trac.webkit.org/changeset/218285
23625 2017-06-14 Chris Dumez <cdumez@apple.com>
23627 WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load
23628 https://bugs.webkit.org/show_bug.cgi?id=173384
23629 <rdar://problem/32723779>
23631 Reviewed by Dan Bernstein.
23633 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23634 * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp: Added.
23635 Add API test coverage.
23637 * TestWebKitAPI/cocoa/UtilitiesCocoa.mm:
23638 (TestWebKitAPI::Util::sleep):
23639 Update implementation of Util::sleep() so that we actually run the run loop.
23640 Otherwise, we don't process events while sleeping.
23642 2017-06-14 Alex Christensen <achristensen@webkit.org>
23644 Add SPI for immediate injection of user scripts
23645 https://bugs.webkit.org/show_bug.cgi?id=173342
23646 <rdar://problem/29202285>
23648 Reviewed by Brady Eidson.
23650 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
23654 2017-06-14 Claudio Saavedra <csaavedra@igalia.com>
23656 Add WPE to the flakiness dashboard
23657 https://bugs.webkit.org/show_bug.cgi?id=173365
23659 Reviewed by Carlos Alberto Lopez Perez.
23661 * TestResultServer/static-dashboards/builders.jsonp:
23662 * TestResultServer/static-dashboards/flakiness_dashboard.js:
23663 * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
23665 * TestResultServer/static-dashboards/loader_unittests.js:
23667 2017-06-14 Brady Eidson <beidson@apple.com>
23669 WKIconLoadingDelegate never gets asked about the default favicon if touch/touch-precomposed icons are in the <head>
23670 <rdar://problem/32614328> and https://bugs.webkit.org/show_bug.cgi?id=173376
23672 Reviewed by Alex Christensen.
23674 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23675 * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm: Added.
23676 (-[IconLoadingDelegate webView:shouldLoadIconWithParameters:completionHandler:]):
23677 (-[IconLoadingSchemeHandler initWithData:mimeType:]):
23678 (-[IconLoadingSchemeHandler webView:startURLSchemeTask:]):
23679 (-[IconLoadingSchemeHandler webView:stopURLSchemeTask:]):
23682 2017-06-14 Tim Horton <timothy_horton@apple.com>
23684 WKContentViewEditingActions API test always fails
23685 https://bugs.webkit.org/show_bug.cgi?id=173374
23687 Reviewed by Wenson Hsieh.
23689 * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
23691 selectAll isn't working, because canPerformAction for selectAll returns NO
23692 if selectionIsNone (which is true in the non-contenteditable case).
23693 Instead, make use of r218180's test page, which knows how to select itself.
23694 Also, reset the pasteboard at the beginning of the test to reduce confusion
23695 (I landed the test broken because my simulator had the correct text
23696 stuck in its pasteboard).
23698 2017-06-14 Jonathan Bedard <jbedard@apple.com>
23700 Configure screen scale for running layout tests on plus devices
23701 https://bugs.webkit.org/show_bug.cgi?id=173319
23703 Reviewed by Tim Horton.
23705 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
23706 * DumpRenderTree/mac/DumpRenderTree.mm:
23707 (dumpRenderTree): Set screen scale to 2.0.
23708 * TestRunnerShared/spi/UIKitTestSPI.h: Copied from Tools/WebKitTestRunner/ios/UIKitSPI.h,
23709 add _setScale for UIScreen.
23710 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
23711 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
23712 * WebKitTestRunner/ios/HIDEventGenerator.h: Ditto.
23713 * WebKitTestRunner/ios/HIDEventGenerator.mm: Ditto.
23714 * WebKitTestRunner/ios/PlatformWebViewIOS.mm: Ditto.
23715 * WebKitTestRunner/ios/TestControllerIOS.mm: Ditto.
23716 (WTR::TestController::platformInitialize): Set screen scale to 2.0.
23717 * WebKitTestRunner/ios/UIKitSPI.h: Moved to TestRunnerShared/spi/UIKitTestSPI.h.
23718 * WebKitTestRunner/ios/UIScriptControllerIOS.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
23719 * WebKitTestRunner/ios/mainIOS.mm: Ditto.
23721 2017-06-14 Alexey Proskuryakov <ap@apple.com>
23723 Add iOS 11 support to the bot watcher's dashboard
23724 https://bugs.webkit.org/show_bug.cgi?id=173369
23726 Reviewed by Lucas Forschler.
23728 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png: Added.
23729 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png: Added.
23730 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png: Added.
23731 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png: Added.
23732 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
23733 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
23735 2017-06-14 Carlos Alberto Lopez Perez <clopez@igalia.com>
23737 [GTK][WPE] Raise the timeout values for layout tests
23738 https://bugs.webkit.org/show_bug.cgi?id=173368
23740 Reviewed by Carlos Garcia Campos.
23742 Raise the values to 15 seconds in Release builds and 30 seconds (2x) in Debug builds.
23743 When running under valgrind a 10x multiplier is applied.
23745 * Scripts/webkitpy/port/gtk.py:
23746 (GtkPort.default_timeout_ms):
23747 * Scripts/webkitpy/port/gtk_unittest.py:
23748 (GtkPortTest.test_default_timeout_ms):
23749 * Scripts/webkitpy/port/wpe.py:
23750 (WPEPort.default_timeout_ms):
23751 * Scripts/webkitpy/port/wpe_unittest.py: Copied from Tools/Scripts/webkitpy/port/gtk_unittest.py.
23753 (WPEPortTest.make_port):
23754 (WPEPortTest.test_default_timeout_ms):
23755 (WPEPortTest.test_get_crash_log):
23757 2017-06-14 Alex Christensen <achristensen@webkit.org>
23759 Test persistent WKHTTPCookieStorages on iOS.
23760 https://bugs.webkit.org/show_bug.cgi?id=173284
23762 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
23764 Make the bots green again for now. There's still a problem, and I'll investigate and fix.
23766 2017-06-14 Per Arne Vollan <pvollan@apple.com>
23768 [Win] DRT should not use disk cache.
23769 https://bugs.webkit.org/show_bug.cgi?id=173361
23771 Reviewed by Darin Adler.
23773 Like on macOS/iOS, DRT on Windows should only use memory cache.
23775 * DumpRenderTree/win/DumpRenderTree.cpp:
23776 (setDefaultsToConsistentValuesForTesting):
23777 (prepareConsistentTestingEnvironment):
23779 2017-06-14 Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
23781 MediaSource duration attribute should not be equal to Infinity when set to a value greater than 2^64
23782 https://bugs.webkit.org/show_bug.cgi?id=171668
23784 Reviewed by Jer Noble.
23786 MediaSource duration attribute is a double represented in MediaSource by a MediaTime instance created with
23787 MediaTime::CreateWithDouble(). This method implements an overflow control mechanism which sets MediaTime to
23788 Infinity when the double value passed as argument is greater than 2^64.
23790 This patch removes the overflow control mechanism when time value is represented as a double. This patch also
23791 modifies the behavior of mathematical operations between a double MediaTime and rational MediaTime: the rational
23792 MediaTime is converted to a double before applying the operation. Double MediaTime precision is the same as for
23793 double. Overflow mechanisms still apply to the conversion of a double MediaTime to rational with setTimescale()
23794 method. No behavior change for rational MediaTime.
23796 * TestWebKitAPI/Tests/WTF/MediaTime.cpp: Add tests to check operation results between double and rational MediaTime.
23797 (TestWebKitAPI::TEST):
23799 2017-06-13 Alex Christensen <achristensen@webkit.org>
23801 Test persistent WKHTTPCookieStorages on iOS
23802 https://bugs.webkit.org/show_bug.cgi?id=173284
23803 <rdar://problem/32260156>
23805 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
23808 2017-06-13 Matt Rajca <mrajca@apple.com>
23810 WebsitePolicies: let clients select specific autoplay quirks
23811 https://bugs.webkit.org/show_bug.cgi?id=173343
23813 Reviewed by Alex Christensen.
23815 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
23816 (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
23817 (TEST): Updated tests.
23819 2017-06-13 Daniel Bates <dabates@apple.com>
23821 Implement W3C Secure Contexts Draft Specification
23822 https://bugs.webkit.org/show_bug.cgi?id=158121
23823 <rdar://problem/26012994>
23825 Reviewed by Brent Fulgham.
23829 Expose the isSecureContext attribute by default in DumpRenderTree and WebKitTestRunner.
23830 Teach DumpRenderTree for Mac and WebKitTestRunner to parse the test option enableIsSecureContextAttribute
23831 to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
23833 * DumpRenderTree/TestOptions.h:
23834 * DumpRenderTree/TestOptions.mm:
23835 (TestOptions::TestOptions):
23836 * DumpRenderTree/mac/DumpRenderTree.mm:
23837 (setWebPreferencesForTestOptions):
23838 * DumpRenderTree/win/DumpRenderTree.cpp:
23839 (enableExperimentalFeatures):
23840 * WebKitTestRunner/TestController.cpp:
23841 (WTR::TestController::resetPreferencesToConsistentValues):
23842 (WTR::updateTestOptionsFromTestHeader):
23843 * WebKitTestRunner/TestOptions.h:
23844 (WTR::TestOptions::hasSameInitializationOptions):
23846 2017-06-13 Alex Christensen <achristensen@webkit.org>
23848 Test persistent WKHTTPCookieStorages on iOS
23849 https://bugs.webkit.org/show_bug.cgi?id=173284
23850 <rdar://problem/32260156>
23852 Reviewed by Alexey Proskuryakov.
23854 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
23857 2017-06-13 Carlos Garcia Campos <cgarcia@igalia.com>
23859 [GTK] Blob download doesn't work
23860 https://bugs.webkit.org/show_bug.cgi?id=172442
23862 Reviewed by Carlos Alberto Lopez Perez.
23864 Add a unit test to check blob downloads.
23866 * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
23867 (testBlobDownload):
23870 2017-06-13 Carlos Garcia Campos <cgarcia@igalia.com>
23872 [GTK] Do not include WTR, DumpRendererTree and ImageDiff in tarballs
23873 https://bugs.webkit.org/show_bug.cgi?id=173316
23875 Reviewed by Alex Christensen.
23877 It's not really possible to run layout tests from the tarball, so it's better not to include those files.
23879 * gtk/manifest.txt.in:
23881 2017-06-13 Carlos Garcia Campos <cgarcia@igalia.com>
23883 [WTR] Crash in WebGeolocationManagerProxy::~WebGeolocationManagerProxy() when running several tests
23884 https://bugs.webkit.org/show_bug.cgi?id=173315
23886 Reviewed by Darin Adler.
23888 This has started to happen after r218165, but I don't think it's a regression, but that r218165 revealed the bug
23889 somehow in WTR. The problem is that GeolocationProviderMock keeps a pointer to the WKGeolocationManagerRef
23890 returned by WKContextGetGeolocationManager. But in TestController::generatePageConfiguration() the context is
23891 freed before the GeolocationProviderMock. When the GeolocationProviderMock is then destroyed, it calls
23892 WKGeolocationManagerSetProvider(m_geolocationManager, 0); but the WKGeolocationManagerRef has already been
23893 destroyed. GeolocationProviderMock should keep a reference to the WKContext to ensure the
23894 WKGeolocationManagerRef is not destroyed.
23896 * WebKitTestRunner/GeolocationProviderMock.cpp:
23897 (WTR::GeolocationProviderMock::GeolocationProviderMock):
23898 * WebKitTestRunner/GeolocationProviderMock.h:
23900 2017-06-13 Wenson Hsieh <wenson_hsieh@apple.com>
23902 Unable to paste text that was copied from a page into the universal search field
23903 https://bugs.webkit.org/show_bug.cgi?id=173293
23904 <rdar://problem/32440918>
23906 Reviewed by Ryosuke Niwa.
23908 Adds 2 new unit tests for copying plain and rich selected web content.
23909 See WebCore and WebKit ChangeLogs for more detail.
23911 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23912 * TestWebKitAPI/Tests/WebKit2Cocoa/rich-and-plain-text.html: Added.
23913 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm: Added.
23914 (TestWebKitAPI::dataForPasteboardType):
23915 (TestWebKitAPI::setUpWebViewForPasteboardTests):
23916 (TestWebKitAPI::TEST):
23918 2017-06-13 Joanmarie Diggs <jdiggs@igalia.com>
23920 AX: [ATK] Implement missing AtkRelation types
23921 https://bugs.webkit.org/show_bug.cgi?id=155494
23923 Reviewed by Darin Adler.
23925 Add additional methods to test ARIA properties which are exposed via
23926 AtkRelation. Implement ATK support for ariaOwnsElementAtIndex().
23928 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
23929 (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
23930 (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
23931 (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
23932 (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
23933 (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
23934 (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
23935 (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
23936 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
23937 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
23938 (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
23939 (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
23940 (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
23941 (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
23942 (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
23943 (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
23944 (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
23945 (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
23947 2017-06-12 Daniel Bates <dabates@apple.com>
23949 Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
23950 https://bugs.webkit.org/show_bug.cgi?id=173286
23951 <rdar://problem/32726102>
23953 Reviewed by Brent Fulgham.
23955 * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
23956 (TestWebKitAPI::TEST_F):
23958 2017-06-12 Lucas Forschler <lforschler@apple.com>
23960 <rdar://problem/32683422>
23961 Teach copy-webkitlibraries-to-product-directory script about updated libraries.
23963 Reviewed by Conrad Schultz.
23965 * Scripts/copy-webkitlibraries-to-product-directory:
23967 2017-06-12 Tim Horton <timothy_horton@apple.com>
23969 [iOS] Cmd-C doesn't copy text from WKWebView
23970 https://bugs.webkit.org/show_bug.cgi?id=173277
23971 <rdar://problem/32396742>
23973 Reviewed by Dan Bernstein.
23975 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23976 * Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
23977 Add a test ensuring that -copy on WKContentView will cause text to be copied.
23979 2017-06-12 Jiewen Tan <jiewen_tan@apple.com>
23981 [WebCrypto] Remove experimental feature flag of SubtleCrypto
23982 https://bugs.webkit.org/show_bug.cgi?id=173197
23983 <rdar://problem/32688148>
23985 Reviewed by Brent Fulgham.
23987 * DumpRenderTree/mac/DumpRenderTree.mm:
23988 (enableExperimentalFeatures):
23989 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
23990 (WTR::InjectedBundle::beginTesting):
23991 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
23992 (WTR::TestRunner::setSubtleCryptoEnabled): Deleted.
23993 * WebKitTestRunner/InjectedBundle/TestRunner.h:
23995 2017-06-12 Wenson Hsieh <wenson_hsieh@apple.com>
23997 [iOS DnD] Allow the injected bundle to add client data when writing an image to the pasteboard
23998 https://bugs.webkit.org/show_bug.cgi?id=173238
23999 <rdar://problem/31943370>
24001 Reviewed by Ryosuke Niwa and Tim Horton.
24003 Add a new unit test to verify that data inserted by the injected bundle when beginning a drag on an image
24004 element is plumbed across to the UI delegate. Also refactors injected bundle unit tests to use the new version
24005 of adjustedDataInteractionItemProvidersForItemProvider: that takes representing objects and additional data.
24007 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
24008 (TestWebKitAPI::TEST):
24009 * TestWebKitAPI/ios/DataInteractionSimulator.h:
24010 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
24011 (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
24012 (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]): Deleted.
24014 2017-06-12 Wenson Hsieh <wenson_hsieh@apple.com>
24016 WebItemProviderPasteboard should call its completion block immediately after a synchronous load
24017 https://bugs.webkit.org/show_bug.cgi?id=173225
24018 <rdar://problem/32713144>
24020 Reviewed by Tim Horton.
24022 Adds a new unit test to verify whether the completion block is called synchronously or asynchronously, in both
24023 cases where the synchronous timeout is very large, and the synchronous timeout is not used (0).
24025 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
24026 (TestWebKitAPI::TEST):
24028 2017-06-12 Jonathan Bedard <jbedard@apple.com>
24030 Return correct process names for iOS on-device testing
24031 https://bugs.webkit.org/show_bug.cgi?id=173263
24033 Reviewed by Alex Christensen.
24035 When running tests on iOS devices, process names do not end with '.Development'
24036 as they do on Mac and iOS simulator.
24038 * WebKitTestRunner/TestController.cpp:
24039 (WTR::TestController::webProcessName): Return correct process name without '.Development'
24040 for iOS on-device testing.
24041 (WTR::TestController::networkProcessName): Ditto.
24042 (WTR::TestController::databaseProcessName): Ditto.
24044 2017-06-12 Chris Dumez <cdumez@apple.com>
24046 Regression(r217867): Legacy SessionHistoryEntryData format should not change
24047 https://bugs.webkit.org/show_bug.cgi?id=173267
24048 <rdar://problem/32701257>
24050 Reviewed by Simon Fraser.
24052 Restrict test to stop covering saving / restore of scrollRestoration via the legacy
24053 SessionHistoryEntryData. Maintain coverage for the default value of scrollRestoration
24054 though as this covers the crash that r217867 was fixing.
24056 * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp:
24057 (TestWebKitAPI::createSessionStateData):
24058 (TestWebKitAPI::TEST):
24059 (TestWebKitAPI::createSessionStateDataContainingScrollRestoration): Deleted.
24061 2017-06-12 Carlos Garcia Campos <cgarcia@igalia.com>
24063 [GTK] Stop dismissing menus attached to the web view for every injected event
24064 https://bugs.webkit.org/show_bug.cgi?id=172708
24066 Reviewed by Alex Christensen.
24068 It's a workaround we added in r184015 that has worked so far for the context menu, but doesn't really work now
24069 that we also attach popup menus to the web view. We really need to be able to show a popup menu, and then send
24070 events while the menu is open.
24072 * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
24073 (WTR::EventSendingController::contextClick): Use WKBundlePageCopyContextMenuAtPointInWindow() also in GTK+ port.
24074 * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
24075 (WTR::EventSenderProxy::dispatchEvent): Stop calling PlatformWebView::dismissAllPopupMenus().
24077 2017-06-12 Miguel Gomez <magomez@igalia.com>
24079 [GTK][WPE] Enable GStreamer GL on development builds
24080 https://bugs.webkit.org/show_bug.cgi?id=173248
24082 Enable GStreamer GL for GTK and WPE.
24084 Reviewed by Carlos Garcia Campos.
24086 * Scripts/webkitperl/FeatureList.pm:
24088 2017-06-12 Carlos Garcia Campos <cgarcia@igalia.com>
24090 Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/notification after r216641.
24092 Notifications are no longer cleared on page navigation.
24094 * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
24095 (testWebViewNotification):
24097 2017-06-11 Carlos Garcia Campos <cgarcia@igalia.com>
24099 Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session after r217831.
24101 DBus interface and object path names were updated in r217831.
24103 * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
24105 2017-06-10 Dan Bernstein <mitz@apple.com>
24107 Reverted r218056 because it made the IDE reindex constantly.
24109 * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
24110 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
24111 * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
24112 * MiniBrowser/Configurations/DebugRelease.xcconfig:
24113 * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
24114 * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
24115 * WebEditingTester/Configurations/DebugRelease.xcconfig:
24116 * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
24118 2017-06-10 Dan Bernstein <mitz@apple.com>
24120 [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
24121 https://bugs.webkit.org/show_bug.cgi?id=173223
24123 Reviewed by Sam Weinig.
24125 The rebuilds were happening due to a difference in the compiler options that the IDE and
24126 xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
24127 xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
24128 specify an appropriate path in CLANG_INDEX_STORE_PATH.
24130 * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
24131 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
24132 * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
24133 * MiniBrowser/Configurations/DebugRelease.xcconfig:
24134 * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
24135 * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
24136 * WebEditingTester/Configurations/DebugRelease.xcconfig:
24137 * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
24139 2017-06-10 Jonathan Bedard <jbedard@apple.com>
24141 webkitpy: Reduce polling in ServerProcess
24142 https://bugs.webkit.org/show_bug.cgi?id=173116
24144 Reviewed by Ryosuke Niwa.
24146 We should be smarter about polling. We do not need to poll every time a line is read from
24147 stdout and stderr since lines are usually read from cached data. We should only poll
24148 when extracting that cached data from stdout and stderr.
24150 * Scripts/webkitpy/port/driver.py:
24151 (Driver._read_block): Rely on output of the ServerProcess to detect a crash or a timeout
24152 and on ServerProcess to poll the process if not data is available in stdout and stderr.
24153 * Scripts/webkitpy/port/driver_unittest.py:
24154 (DriverTest.test_read_block_crashed_process): Test that the Driver will handle a crashing
24156 * Scripts/webkitpy/port/server_process.py:
24157 (ServerProcess._read): Allow for data to be read from _output even if the process has
24158 crashed. Only poll the process if data needs to be extracted from stdout or stderr.
24159 * Scripts/webkitpy/port/server_process_mock.py:
24160 (MockServerProcess): Add number_of_times_polled.
24161 (MockServerProcess.poll): Increment number_of_times_polled.
24162 (MockServerProcess.has_crashed): Poll before returning crash state.
24163 (MockServerProcess.read_stdout_line): MockServerProcess should return None if it has crashed,
24164 just like a ServerProcess would.
24165 (MockServerProcess.read_stdout): Ditto.
24166 * Scripts/webkitpy/port/server_process_unittest.py:
24167 (TestServerProcess.test_basic): Use stdin.readline() instead of time.sleep() to prevent the
24168 process from ending before stdout and stderr are read. This is the reason this test was flakey.
24169 (TestServerProcess):
24170 (TestServerProcess.test_process_crashing): Test that when a process crashes, data can be read until
24171 the processes is polled.
24172 (TestServerProcess.test_process_crashing_no_data): Test that when a process which has not output any
24173 data to stdout and stderr crashes, ServerProcess._read(...) polls the process to detect the crash.
24175 2017-06-10 Andy Estes <aestes@apple.com>
24177 [QuickLook] PreviewLoader needs to check if its ResourceLoader has reached the terminal state before calling didReceiveResponse() and friends
24178 https://bugs.webkit.org/show_bug.cgi?id=173190
24179 <rdar://problem/31360659>
24181 Reviewed by Brady Eidson.
24183 Added a release assert that tries to create a proper test failure if the web process crashes.
24185 * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
24186 (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]):
24188 2017-06-09 Wenson Hsieh <wenson_hsieh@apple.com>
24190 [iOS DnD] Add a hook to perform two-step drops in editable content
24191 https://bugs.webkit.org/show_bug.cgi?id=172992
24192 <rdar://problem/32590174>
24194 Reviewed by Tim Horton.
24196 Adds 2 new API tests to cover using the injected editing bundle to override performTwoStepDrop.
24197 Tests: DataInteractionTests.InjectedBundleOverridePerformTwoStepDrop
24198 DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop
24200 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
24201 (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
24202 (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:performTwoStepDrop:atDestination:isMove:]):
24204 Allow the BundleOverridePerformTwoStepDrop bundle parameter to determine whether or not two-step drops should
24205 be overridden. Currently, this is overridden to just return true.
24207 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
24208 (TestWebKitAPI::TEST):
24209 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
24210 (WTR::InjectedBundlePage::InjectedBundlePage):
24212 2017-06-09 Zan Dobersek <zdobersek@igalia.com>
24214 [WPE] Enable ENCRYPTED_MEDIA for build-webkit builds
24215 https://bugs.webkit.org/show_bug.cgi?id=173103
24217 Reviewed by Xabier Rodriguez-Calvar.
24219 * Scripts/webkitperl/FeatureList.pm: Enable ENCRYPTED_MEDIA flag
24220 when building the WPE port through build-webkit.
24222 2017-06-09 Zan Dobersek <zdobersek@igalia.com>
24224 [WPE] Enable MEDIA_SOURCE for build-webkit builds
24225 https://bugs.webkit.org/show_bug.cgi?id=173136
24227 Reviewed by Xabier Rodriguez-Calvar.
24229 * Scripts/webkitperl/FeatureList.pm: Enable the MEDIA_SOURCE feature for WPE.
24231 2017-06-08 Carlos Garcia Campos <cgarcia@igalia.com>
24233 [GTK] Use API::FormClient instead of the C API in WebKitFormClient
24234 https://bugs.webkit.org/show_bug.cgi?id=173098
24236 Reviewed by Žan Doberšek.
24238 Fix memory leak and runtime warning when running /webkit2/WebKitWebView/submit-form. The web extension is
24239 assuming that all tests containing forms define ids for the form elements like
24240 /webkit2/WebKitWebExtension/form-controls-associated-signal does.
24242 * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
24243 (formControlsAssociatedCallback):
24245 2017-06-08 Jonathan Bedard <jbedard@apple.com>
24247 webkitpy: Run sample/spindump on iOS devices
24248 https://bugs.webkit.org/show_bug.cgi?id=171881
24249 <rdar://problem/32084602>
24251 Reviewed by Daniel Bates.
24253 * Scripts/webkitpy/port/darwin.py:
24254 (DarwinPort.sample_process): Only add sudo prefix if the platform is Mac, which
24255 requires sudo to run spindump.
24256 * Scripts/webkitpy/port/ios_device.py:
24257 (IOSDevicePort.look_for_new_samples): Deleted.
24258 (IOSDevicePort.sample_process): Deleted.
24259 * Scripts/webkitpy/port/ios_device_unittest.py:
24260 (IOSDeviceTest): iOS devices use 'ios' and their os_name.
24261 (IOSDeviceTest.test_spindump):
24262 (IOSDeviceTest.test_sample_process):
24263 (IOSDeviceTest.test_sample_process_exception):
24264 * Scripts/webkitpy/port/ios_simulator_unittest.py:
24265 (IOSSimulatorTest): iOS Simulators run on Mac and use 'mac' as their os_name.
24267 2017-06-08 Keith Miller <keith_miller@apple.com>
24269 WebAssembly: We should only create wrappers for functions that can be exported
24270 https://bugs.webkit.org/show_bug.cgi?id=173088
24272 Reviewed by Saam Barati.
24274 Add quick mode for wasm tests.
24276 * Scripts/run-jsc-stress-tests:
24278 2017-06-08 Darin Adler <darin@apple.com>
24280 WTF tests have incorrect RefLogger lifetimes making it impossible to test with Address Sanitizer
24281 https://bugs.webkit.org/show_bug.cgi?id=173106
24283 Reviewed by Sam Weinig.
24285 * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp: Define RefLogger objects first, so they are
24287 * TestWebKitAPI/Tests/WTF/HashMap.cpp: Ditto.
24288 * TestWebKitAPI/Tests/WTF/HashSet.cpp: Ditto.
24290 2017-06-07 Dan Bernstein <mitz@apple.com>
24292 [Cocoa] additionalReadAccessAllowedURLs doesn’t preserve non-Latin1 paths
24293 https://bugs.webkit.org/show_bug.cgi?id=173086
24295 Reviewed by Andy Estes.
24297 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
24300 2017-06-07 Alexey Proskuryakov <ap@apple.com>
24302 Add High Sierra support to WebKit tools
24303 https://bugs.webkit.org/show_bug.cgi?id=173080
24305 Rubber-stamped by Daniel Bates.
24307 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png: Added.
24308 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png: Added.
24309 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
24310 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
24311 Added dashboard support.
24313 * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
24314 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
24315 Trigger the right build queues on check-in.
24317 * Scripts/webkitpy/common/system/platforminfo.py:
24318 * Scripts/webkitpy/common/system/platforminfo_unittest.py:
24319 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
24320 * Scripts/webkitpy/port/mac.py:
24321 * Scripts/webkitpy/port/mac_unittest.py:
24322 * TestResultServer/static-dashboards/flakiness_dashboard.js:
24323 Added cases for Sierra, and updated tests for new baseline search paths.
24325 2017-06-07 Ryan Haddad <ryanhaddad@apple.com>
24327 Unreviewed, rolling out r217902.
24329 This change appears to have caused imported/w3c/web-platform-
24330 tests/fetch/api/cors tests to fail on El Capitan.
24332 Reverted changeset:
24334 "Teach run-webkit-tests how to run HTTPS Web Platform Tests"
24335 https://bugs.webkit.org/show_bug.cgi?id=172930
24336 http://trac.webkit.org/changeset/217902
24338 2017-06-07 Daniel Bates <dabates@apple.com>
24340 Teach run-webkit-tests how to run HTTPS Web Platform Tests
24341 https://bugs.webkit.org/show_bug.cgi?id=172930
24342 <rdar://problem/32570201>
24344 Reviewed by Youenn Fablet.
24346 Some web platform tests need to be run from an HTTPS server in order to exercise functionality
24347 that is conditioned on the page being delivered over a secure protocol. One example of such
24348 a test is LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/secure_context/crypto-subtle-secure-context-available.https.sub.html.
24350 Ideally we should look to use wptrunner to run Web Platform Tests. For now, modify run-webkit-tests
24351 to access web platform tests from an HTTPS server when the filename of the test contains ".https.".
24352 This makes run-webkit-test match the behavior of wptrunner: <https://github.com/w3c/web-platform-tests/blob/7ce469d1c46dd45aacfe1b408bf2ad36a630e089/tools/manifest/item.py#L42>.
24354 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
24355 (https_base_url): Parses the Web Platform Tests JSON configuration and returns the base URL
24356 to the Web Platform Tests HTTPS server.
24357 * Scripts/webkitpy/port/base.py:
24358 (Port.to.web_platform_test_server_https_base_url): Turns around and calls https_base_url().
24359 * Scripts/webkitpy/port/driver.py:
24360 (Driver.__init__): Caches the base URL to the Web Platform Tests HTTPS server. Also rename
24361 instance variables web_platform_test_server_doc_root, web_platform_test_server_base_url to
24362 _web_platform_test_server_doc_root and _web_platform_test_server_base_url, respectively to
24363 indicate that they should be considered private instance variables.
24364 (Driver.is_web_platform_test): Update code for renamed instance variables.
24366 (Driver._web_platform_test_base_url_for_test): Returns the URL to access the specified test.
24367 (Driver.test_to_uri): Modified to use Driver._web_platform_test_base_url_for_test() to
24368 determine the base URL to use to access the test.
24369 (Driver.uri_to_test): Added logic to compute the filesystem local test name from a Web
24370 Platform Tests HTTPS URL. Also updated code for renamed instance variables.
24372 2017-06-07 Per Arne Vollan <pvollan@apple.com>
24374 Support removal of authentication data through the Website data store API.
24375 https://bugs.webkit.org/show_bug.cgi?id=171217
24377 Reviewed by Brady Eidson.
24379 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
24380 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
24381 (WTR::InjectedBundle::didReceiveMessageToPage):
24382 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
24383 (WTR::TestRunner::removeAllSessionCredentials):
24384 (WTR::TestRunner::callDidRemoveAllSessionCredentialsCallback):
24385 * WebKitTestRunner/InjectedBundle/TestRunner.h:
24386 * WebKitTestRunner/TestController.h:
24387 * WebKitTestRunner/TestInvocation.cpp:
24388 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
24389 (WTR::TestInvocation::didRemoveAllSessionCredentials):
24390 * WebKitTestRunner/TestInvocation.h:
24391 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
24392 (WTR::TestController::removeAllSessionCredentials):
24394 2017-06-07 Charlie Turner <cturner@igalia.com>
24396 Add Charlie Turner as contributor
24397 https://bugs.webkit.org/show_bug.cgi?id=173055
24399 Reviewed by Carlos Alberto Lopez Perez.
24401 I also ran the Tools/Scripts/validate-committer-lists --canonicalize command at the suggestion
24402 of webkit-patch upload, which reordered some fields and removed a newline.
24404 * Scripts/webkitpy/common/config/contributors.json:
24406 2017-06-06 Chris Dumez <cdumez@apple.com>
24408 RELEASE_ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)) hit in convertEnumerationToJS<WebCore::History::ScrollRestoration>()
24409 https://bugs.webkit.org/show_bug.cgi?id=173033
24410 <rdar://problem/32591099>
24412 Reviewed by Simon Fraser.
24414 Add API test coverage to make sure History's scrollRestoration is properly saved / restored via the
24415 WKPageCopySessionState() / WKPageRestoreFromSessionState() C API.
24417 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
24418 * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Added.
24419 (TestWebKitAPI::didFinishLoadForFrame):
24420 (TestWebKitAPI::setPageLoaderClient):
24421 (TestWebKitAPI::createSessionStateDataContainingScrollRestoration):
24422 (TestWebKitAPI::TEST):
24424 2017-06-06 Andy Estes <aestes@apple.com>
24426 REGRESSION (r199558): WKWebView upload file which name contains Chinese character results in garbled code
24427 https://bugs.webkit.org/show_bug.cgi?id=172849
24428 <rdar://problem/32567454>
24430 Reviewed by Darin Adler.
24432 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
24433 * TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Added.
24434 (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
24435 (TestWebKitAPI::TEST):
24437 2017-06-06 Yoav Weiss <yoav@yoav.ws>
24439 [preload] Conditional support for media preloading and align media `as` values.
24440 https://bugs.webkit.org/show_bug.cgi?id=172501
24442 Reviewed by Dean Jackson.
24444 Turn on media preloading preference for tests.
24446 * DumpRenderTree/mac/DumpRenderTree.mm: Turn on media preloading preference.
24447 * DumpRenderTree/win/DumpRenderTree.cpp: Turn on media preloading preference.
24448 * WebKitTestRunner/TestController.cpp: Turn on media preloading preference.
24450 2017-06-06 Jonathan Bedard <jbedard@apple.com>
24452 webkitpy: Return correct process names from SimulatorProcess
24453 https://bugs.webkit.org/show_bug.cgi?id=172940
24455 Reviewed by Aakash Jain.
24457 * Scripts/webkitpy/port/darwin.py:
24458 (DarwinPort.plist_data_from_bundle): Share plist access code for accessing different plist entries.
24459 (DarwinPort.app_identifier_from_bundle): Use plist_data_from_bundle.
24460 (DarwinPort.app_executable_from_bundle): Access name of app executable from provided app bundle.
24461 * Scripts/webkitpy/port/driver.py:
24462 (Driver.has_crashed): Use _server_process.process_name() instead of _server_process.name() since
24463 _server_process.name() will not return the correct process name for iOS.
24464 (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
24465 (Driver._read_block): Ditto.
24466 * Scripts/webkitpy/port/driver_unittest.py:
24467 (DriverTest.test_check_for_driver_crash.FakeServerProcess.process_name): Update since Driver uses
24468 process_name() instead of name().
24469 * Scripts/webkitpy/port/server_process.py:
24470 (ServerProcess._start): Use process_name() instead of name().
24471 (ServerProcess.stop): Ditto.
24472 (ServerProcess.name): Deleted.
24473 * Scripts/webkitpy/port/simulator_process.py:
24474 (SimulatorProcess.process_name): Check the provided bundle for the process name.
24476 2017-06-06 Dean Johnson <dean_johnson@apple.com>
24478 test-webkitpy: stop forking unsafely from within a spawned process
24479 https://bugs.webkit.org/show_bug.cgi?id=172774
24481 Reviewed by Darin Adler.
24483 * Scripts/webkitpy/common/net/buildbot/buildbot.py:
24484 (Builder.__init__): We don't use mechanize.Browser() as part of testing, so only initialize it when
24485 it's going to be used.
24486 (Builder.force_build):
24488 2017-06-06 Jonathan Bedard <jbedard@apple.com>
24490 webkitpy: Process crash-logs for iOS devices
24491 https://bugs.webkit.org/show_bug.cgi?id=171976
24492 <rdar://problem/32134551>
24494 Reviewed by David Kilzer.
24496 When running layout tests on an iOS device, crash logs should be processed.
24497 Implement crash log searching and parsing for iOS devices.
24499 * Scripts/webkitpy/common/system/crashlogs.py:
24500 (CrashLogs): Moved process regular expression for Darwin to class variable.
24501 (CrashLogs.__init__): Accept optional list of crash logs to ignore.
24502 (CrashLogs.find_newest_log): Add iOS as a potential platform.
24503 (CrashLogs.find_all_logs): Ditto.
24504 (CrashLogs._parse_darwin_crash_log): Share code for parsing of Darwin crash logs.
24505 Do not assume that a Darwin crash log starts with the process.
24506 (CrashLogs._find_newest_log_darwin): Remove .app in process name for iOS, use
24507 shared code for parsing Darwin crash logs.
24508 (CrashLogs._find_newest_log_darwin.is_crash_log): Skip crash logs passed into this
24509 object so that crash logs already on the system before testing are not parsed.
24510 (CrashLogs._find_newest_log_win.is_crash_log): Ditto.
24511 (CrashLogs._find_all_logs_darwin.is_crash_log): Ditto.
24512 (CrashLogs._find_all_logs_darwin): Use shared code for parsing Darwin crash logs.
24513 * Scripts/webkitpy/common/system/crashlogs_unittest.py:
24514 (make_mock_crash_report_darwin): Crash logs may not have their process on the first line.
24515 * Scripts/webkitpy/common/system/systemhost.py:
24516 (SystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
24517 systems is just the crashlog, use this behavior by default.
24518 * Scripts/webkitpy/common/system/systemhost_mock.py:
24519 (MockSystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
24520 systems is just the crashlog, use this behavior by default.
24521 * Scripts/webkitpy/port/apple.py:
24522 (ApplePort): Add a dictionary mapping hosts to a list of crash logs to be skipped.
24523 (ApplePort.setup_test_run): Set the list of crash logs to be skipped to the crash logs on
24524 the system before testing begins
24525 * Scripts/webkitpy/port/base.py:
24526 (Port._get_crash_log): Pass optional target host when getting crash logs.
24527 * Scripts/webkitpy/port/darwin.py:
24528 (DarwinPort._look_for_all_crash_logs_in_log_dir): Pass list of crash logs to be skipped to
24530 (DarwinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
24531 logs to be skipped to CrashLogs object.
24532 * Scripts/webkitpy/port/darwin_testcase.py:
24533 (DarwinTest.test_get_crash_log): Removed unused local function.
24534 (DarwinTest.test_get_crash_log.fake_time_cb): Deleted.
24535 * Scripts/webkitpy/port/device.py:
24536 (Device.symbolicate_crash_log_if_needed): If the platform device has a function with this
24537 name, call it. Otherwise, assume the default behavior and read the file at the provided path.
24538 * Scripts/webkitpy/port/driver.py:
24539 (Driver._get_crash_log): Pass optional target host when getting crash logs.
24540 * Scripts/webkitpy/port/gtk.py:
24541 (GtkPort._get_crash_log): Pass optional target host when getting crash logs.
24542 * Scripts/webkitpy/port/ios.py: Ditto.
24543 (IOSPort.setup_test_run): Each device is treated as an independent host. Set the list of crash logs
24544 to be skipped for each host.
24545 * Scripts/webkitpy/port/ios_device.py:
24546 (IOSDevicePort.path_to_crash_logs): Consult apple_additions for the path to crash logs.
24547 (IOSDevicePort._look_for_all_crash_logs_in_log_dir): Search every connected device for
24548 crash logs and pass list of crash logs to ignore to each instance of CrashLogs.
24549 (IOSDevicePort._get_crash_log): Search the specified target host for a crash log if a target
24550 host is specified. Else, search all connected devices for the specified crash-log.
24551 (IOSDevicePort.look_for_new_crash_logs): Deleted.
24552 * Scripts/webkitpy/port/ios_device_unittest.py:
24553 (IOSDeviceTest.test_crashlog_path): Without apple_additions, an exception should be raised.
24554 (IOSDeviceTest.test_get_crash_log): Ditto.
24555 * Scripts/webkitpy/port/simulator_process.py:
24556 (SimulatorProcess.process_name): Check the provided bundle for the process name.
24557 * Scripts/webkitpy/port/win.py:
24558 (WinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
24559 logs to be skipped to CrashLogs object.
24560 * Scripts/webkitpy/port/wpe.py:
24561 (WPEPort._get_crash_log): Pass optional target host when getting crash logs.
24563 2017-06-06 David Kilzer <ddkilzer@apple.com>
24565 Move WTF_ATTRIBUTE_PRINTF() from implementation to declaration
24566 <https://webkit.org/b/172804>
24568 Reviewed by Darin Adler.
24570 WTF_ATTRIBUTE_PRINTF() only works outside the current
24571 compilation unit if it's on the declaration, not the
24572 implementation, of a function or class method.
24574 * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
24575 * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
24576 * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
24577 * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
24578 - Move WTF_ATTRIBUTE_PRINTF() macro to declaration.
24579 * DumpRenderTree/TestNetscapePlugIn/main.cpp:
24580 - Remove redundant CRASH() macro definition. Use the one from
24581 <wtf/Assertions.h> instead.
24583 2017-06-06 Joseph Pecoraro <pecoraro@apple.com>
24585 Move Resource Timing / User Timing from experimental features into main preferences
24586 https://bugs.webkit.org/show_bug.cgi?id=172950
24588 Reviewed by Darin Adler.
24590 * DumpRenderTree/mac/DumpRenderTree.mm:
24591 (enableExperimentalFeatures):
24592 (resetWebPreferencesToConsistentValues):
24593 * DumpRenderTree/win/DumpRenderTree.cpp:
24594 (enableExperimentalFeatures):
24595 (resetWebPreferencesToConsistentValues):
24596 * WebKitTestRunner/TestController.cpp:
24597 (WTR::TestController::resetPreferencesToConsistentValues):
24598 Move out no longer experimental features to the main list.
24600 2017-06-06 Carlos Alberto Lopez Perez <clopez@igalia.com>
24602 [WPE] Add an install-dependencies script
24603 https://bugs.webkit.org/show_bug.cgi?id=172948
24605 Reviewed by Žan Doberšek.
24607 It is based on the gtk/install-dependencies script.
24608 Includes support for Debian based distrubutions, Fedora and Arch.
24609 It has been tested on a minimal Debian 9 chroot.
24611 * wpe/install-dependencies: Added.
24613 2017-06-05 Wenson Hsieh <wenson_hsieh@apple.com>
24615 Refactor -[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:] to check readable types
24616 https://bugs.webkit.org/show_bug.cgi?id=172891
24617 <rdar://problem/32204540>
24619 Reviewed by Darin Adler.
24621 Adds 2 new API tests to exercise data interaction of HTML data and an attributed string into a rich
24622 contenteditable. See WebCore ChangeLog for more details.
24624 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
24625 (TestWebKitAPI::TEST):
24627 2017-06-05 Daniel Bates <dabates@apple.com>
24629 webkitpy: Abstract Executive class
24630 https://bugs.webkit.org/show_bug.cgi?id=172928
24631 <rdar://problem/32569531>
24633 Reviewed by Ryosuke Niwa.
24635 Adds an AbstractExecutive class and makes Executive extend AbstractExecutive.
24636 This will make it straightforward to create additional derived classes that
24637 adhere to the same interface, say for iOS on-device testing.
24639 * Scripts/webkitpy/common/system/abstractexecutive.py: Added.
24640 (AbstractExecutive):
24641 (AbstractExecutive.run_and_throw_if_fail):
24642 (AbstractExecutive.cpu_count):
24643 (AbstractExecutive.interpreter_for_script):
24644 (AbstractExecutive.shell_command_for_script):
24645 (AbstractExecutive.kill_process):
24646 (AbstractExecutive.check_running_pid):
24647 (AbstractExecutive.running_pids):
24648 (AbstractExecutive.wait_newest):
24649 (AbstractExecutive.wait_limited):
24650 (AbstractExecutive.interrupt):
24651 (AbstractExecutive.default_error_handler):
24652 (AbstractExecutive.ignore_error):
24653 (AbstractExecutive._stringify_args):
24654 (AbstractExecutive.command_for_printing):
24655 (AbstractExecutive.run_command):
24656 (AbstractExecutive.popen):
24657 (AbstractExecutive.run_in_parallel):
24658 * Scripts/webkitpy/common/system/executive.py:
24660 (Executive.cpu_count):
24661 (Executive.running_pids):
24662 (Executive.kill_all):
24663 (Executive._compute_stdin):
24664 (Executive.interpreter_for_script): Deleted.
24665 (Executive.shell_command_for_script): Deleted.
24666 (Executive.wait_newest): Deleted.
24667 (Executive.wait_limited): Deleted.
24668 (Executive.default_error_handler): Deleted.
24669 (Executive.ignore_error): Deleted.
24670 (Executive.command_for_printing): Deleted.
24672 2017-06-05 Jonathan Bedard <jbedard@apple.com>
24674 webkitpy: Add iOS to platform
24675 https://bugs.webkit.org/show_bug.cgi?id=172931
24677 Reviewed by Daniel Bates.
24679 * Scripts/webkitpy/common/system/platforminfo.py:
24680 PlatformInfo.__init__): Use platform_module.release() as the os_version for iOS device.
24681 (PlatformInfo.is_ios): Added.
24682 (PlatformInfo._determine_os_name): A platform name of 'ios' means that the os name is 'ios'.
24683 * Scripts/webkitpy/common/system/platforminfo_mock.py:
24684 (MockPlatformInfo.is_ios): Added.
24686 2017-06-05 Carlos Alberto Lopez Perez <clopez@igalia.com>
24688 [WPE][JHBuild] Switch github repository from git:// to https://
24689 https://bugs.webkit.org/show_bug.cgi?id=172921
24691 Reviewed by Alex Christensen.
24693 * wpe/jhbuild.modules:
24695 2017-06-05 Tim Horton <timothy_horton@apple.com>
24697 ASSERTION FAILED: m_currentScriptCallbackID in UIScriptContext::requestUIScriptCompletion(JSStringRef) running fast/events/ios/autocorrect-with-range-selection.html
24698 https://bugs.webkit.org/show_bug.cgi?id=172887
24699 <rdar://problem/32546061>
24701 Reviewed by Sam Weinig.
24703 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
24704 (WTR::UIScriptController::applyAutocorrection):
24705 applyAutocorrection can call its completion handler synchronously,
24706 which makes UIScriptController unhappy (see bug 172884).
24708 2017-06-03 Jonathan Bedard <jbedard@apple.com>
24710 webkitpy: Add contextmanager to disable logging for a block
24711 https://bugs.webkit.org/show_bug.cgi?id=172876
24713 Reviewed by Daniel Bates.
24715 Add a context manager which will use an OutputCapture object to capture logging
24716 in a block and hold it in a variable.
24718 * Scripts/webkitpy/common/system/outputcapture.py:
24719 (OutputCaptureScope):
24720 (OutputCaptureScope.__init__): Construct with OutputCapture object.
24721 (OutputCaptureScope.__enter__): Begin capturing output.
24722 (OutputCaptureScope.__exit__): Restore output and save captured output to a variable.
24723 output and retain the resulting log.
24724 * Scripts/webkitpy/common/system/outputcapture_unittest.py:
24725 (OutputCaptureTest.test_output_capture_scope): Added.
24727 2017-06-02 Zalan Bujtas <zalan@apple.com>
24729 Cleanup FrameView::autoSizeIfEnabled.
24730 https://bugs.webkit.org/show_bug.cgi?id=172889
24731 <rdar://problem/32550783>
24733 Reviewed by Tim Horton.
24735 * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
24736 (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]): progression.
24739 2017-06-02 Chris Dumez <cdumez@apple.com>
24741 ResourceLoadStatistics are not using unique paths during test runs
24742 https://bugs.webkit.org/show_bug.cgi?id=172861
24743 <rdar://problem/32442251>
24745 Reviewed by Darin Adler.
24747 Make sure WebKitTestRunner sets a temporary path for saving resource
24750 * WebKitTestRunner/TestController.cpp:
24751 (WTR::TestController::generateContextConfiguration):
24753 2017-06-02 Brady Eidson <beidson@apple.com>
24755 Prevent scheme handlers from handling all built-in URL schemes.
24756 <rdar://problem/32404790> and https://bugs.webkit.org/show_bug.cgi?id=172869
24758 Reviewed by Andy Estes.
24760 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
24762 2017-06-02 Stephan Szabo <stephan.szabo@am.sony.com>
24764 [JSCOnly] Build static jsc.exe on Windows
24765 https://bugs.webkit.org/show_bug.cgi?id=172833
24767 Reviewed by Konstantin Tokarev.
24770 * Scripts/build-jsc:
24772 2017-06-02 Zalan Bujtas <zalan@apple.com>
24774 Disable ViewportSizeForViewportUnits tests on iOS.
24775 https://bugs.webkit.org/show_bug.cgi?id=172872
24777 Reviewed by Tim Horton.
24779 * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm:
24781 2017-06-02 Zalan Bujtas <zalan@apple.com>
24783 Allow clients to override viewport size for CSS viewport units.
24784 https://bugs.webkit.org/show_bug.cgi?id=172838
24785 <rdar://problem/32523441>
24787 Reviewed by Tim Horton.
24789 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
24790 * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Added.
24793 2017-06-02 Simon Fraser <simon.fraser@apple.com>
24795 Get <chrono> out of StdLibExtras.h
24796 https://bugs.webkit.org/show_bug.cgi?id=172744
24798 Reviewed by Zalan Bujtas.
24800 * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
24802 2017-06-02 Zan Dobersek <zdobersek@igalia.com>
24804 [WPE] Enable SUBTLE_CRYPTO
24805 https://bugs.webkit.org/show_bug.cgi?id=172756
24807 Reviewed by Michael Catanzaro.
24809 * Scripts/webkitperl/FeatureList.pm: Set ENABLE_SUBTLE_CRYPTO to 1 for WPE.
24810 * wpe/jhbuild.modules: Add libgpg-error and libgcrypt dependencies.
24811 * wpe/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added. Prevents
24812 exhausting entropy when running the crypto layout tests.
24814 2017-06-01 Carlos Garcia Campos <cgarcia@igalia.com>
24816 [GTK] Bump GTK+ and its dependencies in jhbuild
24817 https://bugs.webkit.org/show_bug.cgi?id=171918
24819 Reviewed by Carlos Alberto Lopez Perez.
24821 * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
24822 (WTR::initializeGtkSettings):
24823 * gtk/jhbuild.modules:
24824 * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
24825 * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
24827 2017-06-01 Carlos Garcia Campos <cgarcia@igalia.com>
24829 [GTK] Bump wayland and weston in jhbuild
24830 https://bugs.webkit.org/show_bug.cgi?id=171921
24832 Reviewed by Carlos Alberto Lopez Perez.
24834 * gtk/jhbuild.modules:
24835 * gtk/patches/weston-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch: Added.
24837 2017-06-01 Andy Estes <aestes@apple.com>
24839 REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
24840 https://bugs.webkit.org/show_bug.cgi?id=172828
24842 Reviewed by Beth Dakin.
24844 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
24846 2017-06-01 Jonathan Bedard <jbedard@apple.com>
24848 webkitpy: Remove unneeded simulator teardown
24849 https://bugs.webkit.org/show_bug.cgi?id=171891
24851 Reviewed by Aakash Jain.
24853 * Scripts/webkitpy/port/ios_simulator.py:
24854 (IOSSimulatorPort.clean_up_test_run): Remove FIFO deletion since TCP is used
24855 for communication between Python and WebKitTestRunner/DumpRenderTree.
24857 2017-06-01 Keith Miller <keith_miller@apple.com>
24859 Undo rollout in r217638 with bug fix
24860 https://bugs.webkit.org/show_bug.cgi?id=172824
24862 Unreviewed, reland patch with unused set_state code removed.
24864 * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
24865 (runThreadMessageTest):
24868 2017-06-01 Jonathan Bedard <jbedard@apple.com>
24870 webkitpy: Do not send 0 or -1 as a pid to kill_process
24871 https://bugs.webkit.org/show_bug.cgi?id=172818
24873 Reviewed by Darin Adler.
24875 Sending a signal to process 0 will result in all processes in the group receiving
24876 the signal. Sending a signal to process -1 will result in all non-system processes
24877 receiving the signal. Both Executive.kill_process and Executive.check_running_pid
24878 should consider these cases
24880 * Scripts/webkitpy/common/system/executive.py:
24881 (Executive.kill_process): Throw exception if pid is undefined, 0 or negative.
24882 (Executive.check_running_pid): An undefined pid, pid 0 or a negative pid will
24883 never be running, although os.kill may succeed.
24884 * Scripts/webkitpy/port/simulator_process.py:
24885 (SimulatorProcess.stop): Do not kill process if it is undefined.
24887 2017-05-31 Alexey Proskuryakov <ap@apple.com>
24889 JSC EWS bot does not run on WTF only patches
24890 https://bugs.webkit.org/show_bug.cgi?id=172777
24891 rdar://problem/32495975
24893 Reviewed by Aakash Jain.
24895 * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
24896 (CheckPatchRelevance): Add a missing comma.
24898 2017-05-31 Commit Queue <commit-queue@webkit.org>
24900 Unreviewed, rolling out r217611 and r217631.
24901 https://bugs.webkit.org/show_bug.cgi?id=172785
24903 "caused wasm-hashset-many.html to become flaky." (Requested by
24904 keith_miller on #webkit).
24906 Reverted changesets:
24908 "Reland r216808, underlying lldb bug has been fixed."
24909 https://bugs.webkit.org/show_bug.cgi?id=172759
24910 http://trac.webkit.org/changeset/217611
24912 "Use dispatch queues for mach exceptions"
24913 https://bugs.webkit.org/show_bug.cgi?id=172775
24914 http://trac.webkit.org/changeset/217631
24916 2017-05-31 Ryan Haddad <ryanhaddad@apple.com>
24918 EWS bots should reboot themselves more frequently
24919 https://bugs.webkit.org/show_bug.cgi?id=172402
24921 Reviewed by Alexey Proskuryakov.
24923 Instead of rebooting once a day, EWS bots will reboot after running 10 iterations.
24925 * EWSTools/start-queue-mac.sh: Remove the restriction placed on the time that the bot will perform a reboot.
24927 2017-05-31 Ryan Haddad <ryanhaddad@apple.com>
24929 Reallocate hardware for iOS bots.
24930 https://bugs.webkit.org/show_bug.cgi?id=172657
24932 Reviewed by Alexey Proskuryakov.
24934 * BuildSlaveSupport/build.webkit.org-config/config.json:
24936 2017-05-31 Andy Estes <aestes@apple.com>
24938 Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
24939 https://bugs.webkit.org/show_bug.cgi?id=172366
24941 Reviewed by Daniel Bates.
24943 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
24945 2017-05-31 Jiewen Tan <jiewen_tan@apple.com>
24947 Unreviewed, add Jiewen Tan as a reviewer
24949 * Scripts/webkitpy/common/config/contributors.json:
24951 2017-05-31 Adrian Perez de Castro <aperez@igalia.com>
24953 [GTK] MiniBrowser's browser_window_get_or_create_web_view_for_automation never creates new windows
24954 https://bugs.webkit.org/show_bug.cgi?id=172770
24956 Reviewed by Michael Catanzaro.
24958 * MiniBrowser/gtk/BrowserWindow.c:
24959 (browser_window_get_or_create_web_view_for_automation): Removed stray semicolon
24960 which caused the body of the if-clause to be accidentally empty.
24962 2017-05-31 Keith Miller <keith_miller@apple.com>
24964 Reland r216808, underlying lldb bug has been fixed.
24965 https://bugs.webkit.org/show_bug.cgi?id=172759
24967 Unreviewed, relanding old patch. See: rdar://problem/31183352
24969 * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
24970 (runThreadMessageTest):
24973 2017-05-31 Matt Lewis <jlewis3@apple.com>
24975 Unreviewed, rolling out r217603.
24977 This patch broke the internal builds.
24979 Reverted changeset:
24981 "Get <chrono> out of StdLibExtras.h"
24982 https://bugs.webkit.org/show_bug.cgi?id=172744
24983 http://trac.webkit.org/changeset/217603
24985 2017-05-31 Brent Fulgham <bfulgham@apple.com>
24987 Make ResourceLoadStatistics testing more reliable
24988 https://bugs.webkit.org/show_bug.cgi?id=172730
24989 <rdar://problem/32028373>
24991 Reviewed by Andy Estes.
24993 When we tell the UIProcess (WebKitTestRunner) to notify the system about statistics update notifications,
24994 we also need to tell the WebProcess to do so, too, or else the test system doesn't get messages.
24996 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
24997 (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
24999 2017-05-31 Carlos Alberto Lopez Perez <clopez@igalia.com>
25001 [GTK][WPE] run-javascriptcore-tests should use the jhbuild
25002 https://bugs.webkit.org/show_bug.cgi?id=172757
25004 Reviewed by Xabier Rodriguez-Calvar.
25006 When needed, add the jhbuild wrapper at the beginning of the array
25007 that will be invoked to execute the run-jsc-stress-test or testapi
25010 * Scripts/run-javascriptcore-tests:
25011 (runJSCStressTests):
25012 * Scripts/webkitdirs.pm:
25013 (shouldUseJhbuild):
25015 2017-05-31 Simon Fraser <simon.fraser@apple.com>
25017 Get <chrono> out of StdLibExtras.h
25018 https://bugs.webkit.org/show_bug.cgi?id=172744
25020 Reviewed by Saam Barati.
25022 * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
25024 2017-05-30 Tim Horton <timothy_horton@apple.com>
25026 Keyboard autocorrections do not apply with an active selection (but keyboard acts like they did)
25027 https://bugs.webkit.org/show_bug.cgi?id=172735
25028 <rdar://problem/32015977>
25030 Reviewed by Enrica Casucci.
25032 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
25033 (WTR::UIScriptController::applyAutocorrection):
25034 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
25035 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
25036 (WTR::UIScriptController::applyAutocorrection):
25037 * TestRunnerShared/UIScriptContext/UIScriptController.h:
25038 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
25039 (WTR::UIScriptController::applyAutocorrection):
25040 Expose applyAutocorrection to UIScriptController. Use a WKTesting method
25041 because I don't know how to tap the button in the autocorrection bar from a test.
25043 2017-05-30 Daniel Bates <dabates@apple.com>
25045 Add unit test for WebKit2 C SPI runBeforeUnloadConfirmPanel()
25046 https://bugs.webkit.org/show_bug.cgi?id=172671
25048 Reviewed by Alex Christensen.
25050 We should add a unit test to ensure we do not regress the WKPageUIClient runBeforeUnloadConfirmPanel() callback.
25051 For completeness, the callback runBeforeUnloadConfirmPanel() existed since inception of WKPageUIClient (WKPageUIClientV0).
25053 * TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp:
25054 (TestWebKitAPI::analyzeDialogArguments): Test the runBeforeUnloadConfirmPanel() callback last as we need
25055 to trigger a navigation to test it.
25056 (TestWebKitAPI::runBeforeUnloadConfirmPanel): Added.
25057 (TestWebKitAPI::createNewPage): Wire up the runBeforeUnloadConfirmPanel callback.
25059 2017-05-30 Jonathan Bedard <jbedard@apple.com>
25061 webkitpy: Start servers before setting-up for testing
25062 https://bugs.webkit.org/show_bug.cgi?id=172176
25063 <rdar://problem/32225538>
25065 Reviewed by Alexey Proskuryakov.
25067 On-device testing requires that servers are started before ports set-up their
25070 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
25071 (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
25072 Servers are unconditionally stopped on exit.
25073 (LayoutTestRunner.run_tests): Move the starting of servers to the initializer. The
25074 Manager now stops servers.
25075 (LayoutTestRunner.start_servers): Set flag to indicate servers are running.
25076 (LayoutTestRunner.stop_servers): Check flag, only shutdown servers if they are shutdown.
25077 * Scripts/webkitpy/layout_tests/controllers/manager.py:
25078 (Manager.__init__): Delay construction of the test runner until we can determine
25079 if servers need to be started.
25080 (Manager.run): Determine if servers need to be started and construct the test runner.
25081 Shut servers down when the test run is finished.
25082 (Manager._run_tests): Move the determination of servers to run into Manager.run.
25083 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
25084 (is_wpt_server_running): Server is not running if no config is found.
25085 * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
25086 (PyWebSocket.is_running): Check if this WebSocket server is running.
25087 * Scripts/webkitpy/port/base.py:
25088 (Port.__init__): Define secure WebSocket server.
25089 (Port.to.is_websocket_server_running): Check if WebSocket servers are defined.
25091 2017-05-30 Daniel Bates <dabates@apple.com>
25093 [WK2] Add runBeforeUnloadConfirmPanel WKUIDelegate SPI; support onbeforeunload confirm panel in MiniBrowser
25094 https://bugs.webkit.org/show_bug.cgi?id=172603
25095 <rdar://problem/32471306>
25097 Reviewed by Brady Eidson.
25099 Implement the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: delegate
25100 method in MiniBrowser to show a confirm panel as to whether to allow the unloading of the page when
25101 unloading is initiated for a page that registered a onbeforeunload handler.
25103 Modify TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm to test that the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:
25104 is called. Also fix style nit; pass YES instead of true to avoid implicit conversion from bool to BOOL
25105 when invoking the completion handler in -_webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:.
25107 Until we fix <https://bugs.webkit.org/show_bug.cgi?id=172614> the unit test in TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm
25108 for -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: is only run on Mac
25109 as we do not have the infrastructure to simulate a click/tap on iOS and a click/tap on the page that
25110 registered an onbeforeunload handler is required to show a confirm panel when the page will be unloaded.
25112 * MiniBrowser/mac/WK2BrowserWindowController.m:
25113 (-[WK2BrowserWindowController _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
25114 * TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html:
25115 * TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm:
25117 (-[ModalAlertsUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
25118 (-[ModalAlertsUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
25119 (-[ModalAlertsUIDelegate _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
25121 2017-05-30 Alex Christensen <achristensen@webkit.org>
25123 Update libwebrtc configuration
25124 https://bugs.webkit.org/show_bug.cgi?id=172727
25126 Reviewed by Geoffrey Garen.
25128 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
25130 2017-05-30 Fujii Hironori <Hironori.Fujii@sony.com>
25132 [WinCairo] TestWebKitAPI: ASSERTION FAILED: m_eglDisplay == EGL_NO_DISPLAY
25133 https://bugs.webkit.org/show_bug.cgi?id=172702
25135 Reviewed by Alex Christensen.
25137 EGL PlatformDisplay needs to be shut down before existing a
25138 program on Windows.
25140 * TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp:
25141 (TestWebKitAPI::ScaleWebView::TearDown): Call shutDownWebKit().
25142 * TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
25143 (TestWebKitAPI::WebViewDestruction::TearDown): Ditto.
25145 2017-05-30 Per Arne Vollan <pvollan@apple.com>
25147 [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
25148 https://bugs.webkit.org/show_bug.cgi?id=172709
25150 Reviewed by Brent Fulgham.
25152 Exit fullscreen mode after a fullscreen test.
25154 * DumpRenderTree/win/DumpRenderTree.cpp:
25155 (resetWebViewToConsistentStateBeforeTesting):
25157 2017-05-30 Antti Koivisto <antti@apple.com>
25159 ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1
25160 https://bugs.webkit.org/show_bug.cgi?id=172713
25162 Reviewed by Zalan Bujtas.
25164 * DumpRenderTree/mac/ResourceLoadDelegate.mm:
25165 (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
25167 Remove forced display from plugin resource load delegate. It is testing some long-obsolete
25168 Safari WK1 behavior. Forcing display from this resource load delegate will hit the assertion
25169 because on Mac WK1 it may get invoked from middle of a layout.
25171 Painting code skips out after the assert so it doesn't indicate unsafe access of any sort.
25173 2017-05-30 Carlos Alberto Lopez Perez <clopez@igalia.com>
25175 Add a WPE EWS queue
25176 https://bugs.webkit.org/show_bug.cgi?id=172693
25178 Reviewed by Carlos Garcia Campos.
25180 * QueueStatusServer/config/queues.py:
25181 * QueueStatusServer/model/queues.py: Capitalize the name of the
25182 port on the tooltip of the bubbles. Do the same for the GTK port.
25183 (Queue.display_name):
25184 * Scripts/webkitpy/common/config/ews.json: Update the watcher mail
25185 for the GTK+ EWS also. Set for both ports as watcher the alias
25186 bugs-noreply@webkitgtk.org that maintainers of both ports follow.
25187 * Scripts/webkitpy/common/config/ports.py:
25188 (DeprecatedPort.port):
25190 (WpePort.build_webkit_command):
25191 (WpePort.run_webkit_tests_command):
25192 * Scripts/webkitpy/common/config/ports_unittest.py:
25193 (DeprecatedPortTest):
25194 (DeprecatedPortTest.test_wpe_port):
25195 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
25198 2017-05-29 Zan Dobersek <zdobersek@igalia.com>
25200 Unreviewed. Bumping the WPEBackend-mesa dependency version.
25202 * wpe/jhbuild.modules: Use the latest version that uses proper GLib
25203 priorities for IPC communication.
25205 2017-05-27 Yusuke Suzuki <utatane.tea@gmail.com>
25207 [JSC] Map and Set constructors should have fast path for cloning
25208 https://bugs.webkit.org/show_bug.cgi?id=172413
25210 Reviewed by Saam Barati.
25212 * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
25213 (TestWebKitAPI::TEST):
25215 2017-05-27 Zalan Bujtas <zalan@apple.com>
25217 enclosingIntRect returns a rect with -1 width/height when the input FloatRect overflows integer.
25218 https://bugs.webkit.org/show_bug.cgi?id=172676
25220 Reviewed by Simon Fraser.
25222 * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
25223 (TestWebKitAPI::TEST):
25225 2017-05-26 Zalan Bujtas <zalan@apple.com>
25227 TestWebKitAPI: EnclosingIntRect and RoundedIntRect should use EXPECT_EQ.
25228 https://bugs.webkit.org/show_bug.cgi?id=172674
25230 Reviewed by Simon Fraser.
25232 * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
25233 (TestWebKitAPI::TEST):
25235 2017-05-26 Wenson Hsieh <wenson_hsieh@apple.com>
25237 Add test resources back into TestWebKitAPI Copy Resources phase
25239 Rubber-stamped by Beth Dakin.
25241 Add two files back into the Copy Resources phase after they were unintentionally
25242 removed in r217447 and r217496.
25244 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
25246 2017-05-26 Beth Dakin <bdakin@apple.com>
25248 Media documents inside iframes should not get controls in the TouchBar unless the
25250 https://bugs.webkit.org/show_bug.cgi?id=172620
25251 -and corresponding-
25252 rdar://problem/32165477
25254 Reviewed by Jon Lee.
25256 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
25257 * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
25258 (TestWebKitAPI::TEST):
25259 * TestWebKitAPI/Tests/WebKit2Cocoa/offscreen-iframe-of-media-document.html: Added.
25261 2017-05-25 Joseph Pecoraro <pecoraro@apple.com>
25263 _WKUserStyleSheet and WKUserScript leak string data
25264 https://bugs.webkit.org/show_bug.cgi?id=172583
25265 <rdar://problem/32395209>
25267 Reviewed by Sam Weinig.
25269 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
25270 We should not have been adopting an autoreleased object.
25272 2017-05-25 Myles C. Maxfield <mmaxfield@apple.com>
25274 [WK1] iframes in layer-backed NSViews are not cleared between successive draws
25275 https://bugs.webkit.org/show_bug.cgi?id=172554
25276 <rdar://problem/31247133>
25278 Reviewed by Simon Fraser.
25280 Previously, there was no way to make DumpRenderTree's views layer-backed. Unfortunately,
25281 simply setting [WebView setWantsLayer:] is insufficient; turning it on and then off again
25282 leaves some state around inside the NSWindow which isn't easily cleaned up. Instead,
25283 we should just tear down and rebuild the window whenever we need a layer-backed WebView.
25284 We can also use the "webkit-test-runner" header comment to trigger this new layer-backed
25287 * DumpRenderTree/TestOptions.h:
25288 * DumpRenderTree/TestOptions.mm:
25289 (TestOptions::TestOptions):
25290 (TestOptions::webViewIsCompatibleWithOptions):
25291 * DumpRenderTree/mac/DumpRenderTree.mm:
25292 (shouldIgnoreWebCoreNodeLeaks):
25293 (allowedFontFamilySet):
25294 (-[DRTMockScroller rectForPart:]):
25295 (-[DRTMockScroller drawKnob]):
25296 (-[DRTMockScroller drawRect:]):
25297 (createWebViewAndOffscreenWindow):
25298 (initializeGlobalsFromCommandLineOptions):
25299 (prepareConsistentTestingEnvironment):
25303 (dumpBackForwardListForWebView):
25304 (resetWebViewToConsistentStateBeforeTesting):
25305 (WebThreadLockAfterDelegateCallbacksHaveCompleted):
25308 2017-05-25 Sam Weinig <sam@webkit.org>
25310 [WebIDL] Use the term 'operation' more consistently
25311 https://bugs.webkit.org/show_bug.cgi?id=172601
25313 Reviewed by Chris Dumez.
25315 We were using the term 'operation', a WebIDL term for function-like
25316 constructs, inconsistently in the code generator. Now, when we use
25317 'operation' when referring to the IDL concept (usually the object the
25318 parser produces) and 'function' when referring to code being generated.
25320 * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
25321 * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
25323 2017-05-25 Jer Noble <jer.noble@apple.com>
25325 Unreviewed build fix after r217447; only run test where JSC's ObjC API is available.
25327 * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
25329 2017-05-25 Jer Noble <jer.noble@apple.com>
25331 System sleeps while playing to wireless target, ending stream.
25332 https://bugs.webkit.org/show_bug.cgi?id=172541
25334 Reviewed by Eric Carlson.
25336 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
25337 * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.html: Added.
25338 * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Added.
25339 (-[MediaPlaybackSleepAssertionLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
25340 (-[MediaPlaybackSleepAssertionPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
25341 (TestWebKitAPI::simulateKeyDown):
25342 (TestWebKitAPI::hasAssertionType):
25343 (TestWebKitAPI::TEST):
25345 2017-05-25 Commit Queue <commit-queue@webkit.org>
25347 Unreviewed, rolling out r217423 and r217424.
25348 https://bugs.webkit.org/show_bug.cgi?id=172607
25350 These caused an api failure on all testers. (Requested by
25351 mlewis13 on #webkit).
25353 Reverted changesets:
25355 "REGRESSION (r216977): 4 leaks introduced in new
25356 WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test"
25357 https://bugs.webkit.org/show_bug.cgi?id=172558
25358 http://trac.webkit.org/changeset/217423
25360 "REGRESSION (r217423): Fix last-second typo in 'auto'"
25361 http://trac.webkit.org/changeset/217424
25363 2017-05-25 Joanmarie Diggs <jdiggs@igalia.com>
25365 [ATK] Expose doc-footnote ARIA role with ATK_ROLE_FOOTNOTE
25366 https://bugs.webkit.org/show_bug.cgi?id=172355
25368 Reviewed by Chris Fleizach.
25370 Add map ATK_ROLE_FOOTNOTE to "AXFootnote" and bump jhbuild minimum
25371 versions of atk, at-spi2-core, and at-spi2-atk to 2.25.2 (the earliest
25372 releases which support the new platform footnote accessibility role.
25374 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
25375 * gtk/jhbuild.modules:
25377 2017-05-25 David Kilzer <ddkilzer@apple.com>
25379 REGRESSION (r217423): Fix last-second typo in 'auto'
25381 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
25382 (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix typo.
25384 2017-05-24 David Kilzer <ddkilzer@apple.com>
25386 REGRESSION (r216977): 4 leaks introduced in new WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test
25387 <https://webkit.org/b/172558>
25389 Reviewed by Sam Weinig.
25391 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
25392 (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix the leaks.
25394 2017-05-24 Don Olmstead <don.olmstead@am.sony.com>
25396 [CMake] Consolidate CMake code related to Cairo
25397 https://bugs.webkit.org/show_bug.cgi?id=172568
25399 Reviewed by Alex Christensen.
25401 * DumpRenderTree/config.h:
25402 * TestWebKitAPI/config.h:
25404 2017-05-24 Wenson Hsieh <wenson_hsieh@apple.com>
25406 Plumb additional image metadata to item providers when beginning data interaction on an image
25407 https://bugs.webkit.org/show_bug.cgi?id=172536
25408 <rdar://problem/32371300>
25410 Reviewed by Beth Dakin.
25412 Tweak existing image data interaction tests to check for suggested name and estimated size on the generated
25413 source item providers.
25415 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25416 (checkSuggestedNameAndEstimatedSize):
25417 (TestWebKitAPI::TEST):
25419 2017-05-24 Per Arne Vollan <pvollan@apple.com>
25421 [Win] Create unique network storage session for each DRT.
25422 https://bugs.webkit.org/show_bug.cgi?id=172540
25424 Reviewed by Brent Fulgham.
25426 During layout testing, each DRT instance should have its own network storage session.
25428 * DumpRenderTree/win/DumpRenderTree.cpp:
25429 (prepareConsistentTestingEnvironment):
25431 2017-05-24 Wenson Hsieh <wenson_hsieh@apple.com>
25433 Respect image UTIs when writing to item providers when beginning data interaction on an image
25434 https://bugs.webkit.org/show_bug.cgi?id=172436
25435 <rdar://problem/31786569>
25437 Reviewed by Beth Dakin.
25439 Tweaks existing unit tests and adds a new test for image data interaction. See WebCore ChangeLog for more
25442 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
25443 * TestWebKitAPI/Tests/WebKit2Cocoa/apple.gif: Added.
25444 * TestWebKitAPI/Tests/WebKit2Cocoa/gif-and-file-input.html: Added.
25446 Create a new test page containing a GIF and a file input.
25448 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25449 (checkTypeIdentifierIsRegisteredAtIndex):
25450 (TestWebKitAPI::TEST):
25452 2017-05-23 Per Arne Vollan <pvollan@apple.com>
25454 [Win] Increase test timeout for slow tests.
25455 https://bugs.webkit.org/show_bug.cgi?id=172449
25457 Reviewed by Alexey Proskuryakov.
25459 Instead of using a fixed timeout of 30 seconds for all tests, we should use the
25460 timeout member in the TestRunner class.
25462 * DumpRenderTree/win/TestRunnerWin.cpp:
25463 (TestRunner::setWaitToDump):
25465 2017-05-15 Matt Rajca <mrajca@apple.com>
25467 Replace autoplay events that fire at navigation with a DidAutoplayMediaPastThreshold event.
25468 https://bugs.webkit.org/show_bug.cgi?id=172138
25470 Reviewed by Alex Christensen.
25474 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
25475 * TestWebKitAPI/Tests/WebKit2/js-autoplay-audio.html: Added.
25476 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
25478 * TestWebKitAPI/Tests/WebKit2Cocoa/silence-long.m4a: Added.
25480 2017-05-23 Simon Fraser <simon.fraser@apple.com>
25482 Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
25483 https://bugs.webkit.org/show_bug.cgi?id=172522
25484 rdar://problem/31071812
25486 Reviewed by Sam Weinig.
25488 Remove NSWindowStyleMaskFullSizeContentView which is no longer referenced in code.
25489 We set this in the .xib file now.
25491 * MiniBrowser/mac/MiniBrowser_Prefix.pch:
25493 2017-05-22 Simon Fraser <simon.fraser@apple.com>
25495 Snapshotting via -renderInContext: should do synchronous image decodes
25496 https://bugs.webkit.org/show_bug.cgi?id=172485
25497 rdar://problem/32276146
25499 Reviewed by Tim Horton.
25503 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
25504 * TestWebKitAPI/Tests/WebKit/ios/SnapshotViaRenderInContext.mm: Added.
25505 (-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
25506 (-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
25507 (TestWebKitAPI::getPixelIndex):
25508 (TestWebKitAPI::TEST):
25510 2017-05-23 Myles C. Maxfield <mmaxfield@apple.com>
25512 Remove dead ENABLE(FONT_LOAD_EVENTS) code
25513 https://bugs.webkit.org/show_bug.cgi?id=172517
25515 Rubber-stamped by Simon Fraser.
25517 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
25519 2017-05-23 Wenson Hsieh <wenson_hsieh@apple.com>
25521 Multiple links should be inserted separately when performing data interaction
25522 https://bugs.webkit.org/show_bug.cgi?id=172489
25523 <rdar://problem/31510832>
25525 Reviewed by Dan Bernstein.
25527 Adds a new test that performs data interaction in a contenteditable with multiple items containing URLs.
25529 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25530 (TestWebKitAPI::TEST):
25532 2017-05-23 Tim Horton <timothy_horton@apple.com>
25534 REGRESSION: API test WebKit2.WKObject is failing
25535 https://bugs.webkit.org/show_bug.cgi?id=172497
25536 <rdar://problem/31694641>
25538 Reviewed by Geoff Garen.
25540 * TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm:
25541 (TestWebKitAPI::TEST):
25542 Add a test that ensures that we pretend to at least be *some* kind of
25543 NSString, which my first fix would not have passed.
25545 2017-05-23 youenn fablet <youenn@apple.com>
25547 There should be an easy way to run HTTP/WPT served tests on a browser
25548 https://bugs.webkit.org/show_bug.cgi?id=172068
25550 Reviewed by Sam Weinig.
25552 Adding a new script open-layout-test to open a layout-test in a
25553 browser and making sure it is served as done through run-webkit-tests.
25554 In case tests should be run using a server, detecting whether the
25555 server are running. If not, calling run-webkit-httpd to run the
25556 servers and open the URL in a browser.
25557 Otherwise, open directly the URL.
25559 Adding an option in run-webkit-httpd to open an URL after having
25560 started the servers.
25562 Adding the --no-http-servers option in run-webkit-tests to not start any HTTP server.
25563 This allows running run-webkit-httpd once and not having to restart
25564 servers everytime a test should be served.
25566 Moving most of run-webkit-httpd logic in its own python file to reuse
25567 it in open-layout-test script.
25569 Adding routines to check whether HTTP and WPT servers are running.
25571 * Scripts/open-layout-test: Added.
25574 * Scripts/run-webkit-httpd:
25576 * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
25577 (LayoutTestFinder.find_tests):
25578 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
25579 (LayoutTestRunner.run_tests):
25580 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
25582 * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
25583 (HttpServerBase._is_server_running_on_all_ports):
25585 (HttpServerBase._is_running_on_port):
25586 (HttpServerBase._check_that_all_ports_are_available):
25587 (is_http_server_running):
25588 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py: Copied from Tools/Scripts/run-webkit-httpd.
25592 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
25593 (is_wpt_server_running):
25594 * Scripts/webkitpy/port/base.py:
25595 (Port.to.is_http_server_running):
25597 (Port.to.is_wpt_server_running):
25598 (Port.to.start_web_platform_test_server):
25599 * Scripts/webkitpy/port/driver.py:
25600 (DriverProxy.is_web_platform_test):
25602 (DriverProxy.is_webkit_specific_web_platform_test):
25604 2017-05-23 Emilio Cobos Álvarez <ecobos@igalia.com>
25606 Add a RuntimeEnabledFeature for display: contents, defaulted to false.
25607 https://bugs.webkit.org/show_bug.cgi?id=171984
25609 Reviewed by Antti Koivisto.
25611 * DumpRenderTree/mac/DumpRenderTree.mm:
25612 (enableExperimentalFeatures):
25613 * WebKitTestRunner/TestController.cpp:
25614 (WTR::TestController::resetPreferencesToConsistentValues):
25616 2017-05-20 Alex Christensen <achristensen@webkit.org>
25618 REGRESSION(r215686): O(n^2) algorithm in CachedRawResource::addDataBuffer
25619 https://bugs.webkit.org/show_bug.cgi?id=172406
25622 Reviewed by Brady Eidson.
25624 * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
25625 (TestWebKitAPI::checkBuffer):
25626 (TestWebKitAPI::TEST_F):
25628 2017-05-22 Jason Marcell <jmarcell@apple.com>
25630 Do not enter Subversion-specific logic when parsing Git-based Trac data.
25631 https://bugs.webkit.org/show_bug.cgi?id=172433
25632 <rdar://problem/32234188>
25634 Reviewed by Alexey Proskuryakov.
25636 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
25637 (Trac.prototype._convertCommitInfoElementToObject):
25639 2017-05-22 Tim Horton <timothy_horton@apple.com>
25641 ExplicitSnapshotsChangeUponNavigation API test often fails
25642 https://bugs.webkit.org/show_bug.cgi?id=172475
25643 <rdar://problem/31688322>
25645 Reviewed by Simon Fraser.
25647 * TestWebKitAPI/cocoa/TestWKWebView.mm:
25648 (-[TestWKWebView _setUpTestWindow:]):
25649 Make TestWKWebView's window layer-backed. This is now the default,
25650 and it's also easy to accidentally write a test that depends on it
25651 (for example, ExplicitSnapshotsChangeUponNavigation adds an NSBox,
25652 which becomes layer backed, just like the WKWebView, but with no
25653 common layer-backed ancestor).
25655 2017-05-22 youenn fablet <youenn@apple.com>
25657 Resync web-platform-tests up to 8df7c9c215678328212f232ce0b5270c505a8563
25658 https://bugs.webkit.org/show_bug.cgi?id=172426
25660 Reviewed by Chris Dumez.
25662 * Scripts/webkitpy/w3c/test_importer.py:
25663 (TestImporter.remove_deleted_files): Outputting warning when trying to delete a file that no longer exists.
25665 2017-05-22 Konstantin Tokarev <annulen@yandex.ru>
25667 Unreviewed, change my status to reviewer and fill "expertise" field
25669 * Scripts/webkitpy/common/config/contributors.json:
25671 2017-05-22 Tomas Popela <tpopela@redhat.com>
25673 Remove some of the EFL port leftovers
25674 https://bugs.webkit.org/show_bug.cgi?id=172440
25676 Reviewed by Carlos Garcia Campos.
25678 * BuildSlaveSupport/built-product-archive:
25679 (archiveBuiltProduct):
25680 (extractBuiltProduct):
25681 * BuildSlaveSupport/test-result-archive:
25682 (archiveTestResults):
25683 * ImageDiff/PlatformEfl.cmake: Removed.
25684 * Scripts/run-efl-tests: Removed.
25685 * Scripts/webkit-build-directory:
25686 * Scripts/webkitpy/common/config/contributionareas.py:
25687 * Scripts/webkitpy/common/config/watchlist:
25688 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
25690 (_set_up_derived_options):
25691 * Scripts/webkitpy/performance_tests/perftestsrunner.py:
25692 (PerfTestsRunner.__init__):
25693 * Scripts/webkitpy/style/checker.py:
25694 * Scripts/webkitpy/style/checker_unittest.py:
25695 (GlobalVariablesTest.test_path_rules_specifier):
25696 * gtk/manifest.txt.in:
25697 * jhbuild/jhbuild-wrapper:
25699 2017-05-22 Carlos Garcia Campos <cgarcia@igalia.com>
25701 Unreviewed. Do not include WPE files in GTK+ tarballs.
25703 * gtk/manifest.txt.in:
25705 2017-05-22 Carlos Garcia Campos <cgarcia@igalia.com>
25707 [GTK] Add webkit_context_menu_item_new_from_gaction
25708 https://bugs.webkit.org/show_bug.cgi?id=159631
25710 Reviewed by Michael Catanzaro.
25712 Update context menu tests to check the new GAction API.
25714 * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
25715 (testContextMenuPopulateMenu):
25717 2017-05-21 Michael Catanzaro <mcatanzaro@igalia.com>
25719 [GTK] Remove Firefox user agent quirk for Google domains
25720 https://bugs.webkit.org/show_bug.cgi?id=171941
25722 Reviewed by Carlos Garcia Campos.
25724 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
25725 (TestWebKitAPI::TEST):
25726 (TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk): Deleted.
25728 2017-05-20 Ting-Wei Lan <lantw44@gmail.com>
25730 [GTK] gtkdoc-fixxref needs --module argument to work
25731 https://bugs.webkit.org/show_bug.cgi?id=172415
25733 Reviewed by Michael Catanzaro.
25736 (GTKDoc._run_gtkdoc_fixxref):
25738 2017-05-20 Alexey Proskuryakov <ap@apple.com>
25740 make-new-script-test should create tests that use js-test.js, not js-test-pre.js
25741 https://bugs.webkit.org/show_bug.cgi?id=172416
25743 Reviewed by Daniel Bates.
25745 * Scripts/make-new-script-test:
25747 2017-05-19 Fujii Hironori <Hironori.Fujii@sony.com>
25749 [Win] error LNK2005: WebCore::JSNode::checkSubClassPatchpoint() already defined in WebKit.lib
25750 https://bugs.webkit.org/show_bug.cgi?id=172267
25752 Reviewed by Per Arne Vollan.
25754 TestWebCoreLib and TestWebKitLib have linked both WebCore and WebKit.
25755 TestWebCoreLib should link only with WebCore. And, TestWebKitLib
25756 should link only with WebKit.
25758 Unfortunately, there is a layer violation at the moment.
25759 WebCore::Image::loadPlatformResource needs loadResourceIntoBuffer
25760 in WebKit. This change contains a stub of loadResourceIntoBuffer
25761 in TestWebCoreLib for the workaround.
25763 * TestWebKitAPI/PlatformWin.cmake: Do not link WebKit to
25764 TestWebCoreLib. Do not link WebCore to TestWebKitLib.
25765 * TestWebKitAPI/win/TestWebCoreStubs.cpp: Added.
25766 (loadResourceIntoBuffer): Added a stub.
25768 2017-05-19 Simon Fraser <simon.fraser@apple.com>
25770 Fix dump-class-layout to handle different file architectures
25771 https://bugs.webkit.org/show_bug.cgi?id=172392
25773 Reviewed by Zalan Bujtas.
25775 Instead of using lldb.LLDB_ARCH_DEFAULT by default, run 'file' on the binary
25776 and use the first architecture reported. Also add a "--architecture" argument
25777 to allow the user to specify an architecture.
25779 * Scripts/dump-class-layout:
25781 (verify_type_recursive):
25782 (get_first_file_architecture):
25785 (find_build_directory): Deleted.
25787 2017-05-19 Jonathan Bedard <jbedard@apple.com>
25789 Unreviewed infrastructure fix.
25791 * Scripts/webkitpy/port/ios_simulator.py:
25792 (IOSSimulatorPort._create_devices): Ignore failure to open Simulator.app.
25794 2017-05-19 Jonathan Bedard <jbedard@apple.com>
25796 webkitpy: Use simctl boot to run multiple simulators at once
25797 https://bugs.webkit.org/show_bug.cgi?id=172374
25799 Reviewed by Alexey Proskuryakov.
25801 * Scripts/webkitpy/common/system/platforminfo.py:
25802 (PlatformInfo.xcode_version): Return the current version of Xcode.
25803 * Scripts/webkitpy/common/system/platforminfo_mock.py:
25804 (MockPlatformInfo.xcode_version): Return version 8.0 for testing.
25805 * Scripts/webkitpy/port/ios_simulator.py:
25806 (IOSSimulatorPort.use_multiple_simulator_apps): Return true if we need to
25807 run multiple Simulator.app instances.
25808 (IOSSimulatorPort._create_simulators): Only copy the simulator app for older
25810 (IOSSimulatorPort._create_devices): Use 'simctl boot' directly unless using
25811 an older version of Xcode.
25813 2017-05-19 Wenson Hsieh <wenson_hsieh@apple.com>
25815 Unreviewed, fix the build on the latest internal SDK.
25817 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25818 (TestWebKitAPI::TEST):
25820 2017-05-19 Filip Pizlo <fpizlo@apple.com>
25822 arrayProtoPrivateFuncConcatMemcpy needs to be down with firstArray being undecided
25823 https://bugs.webkit.org/show_bug.cgi?id=172369
25825 Reviewed by Mark Lam.
25827 Because I wrote a test that relies on the NoCJIT config scribbling free cells, I thought it
25828 would be a good idea to write this down.
25830 * Scripts/run-jsc-stress-tests:
25832 2017-05-19 Jonathan Bedard <jbedard@apple.com>
25834 webkitpy: Layout tests which have no output will succeed
25835 https://bugs.webkit.org/show_bug.cgi?id=172322
25836 <rdar://problem/32258350>
25838 Reviewed by David Kilzer.
25840 * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
25841 (SingleTestRunner._compare_text): Add FailreNotTested to failures if test has no output.
25842 * Scripts/webkitpy/layout_tests/models/test_failures.py:
25843 (determine_result_type): FailureNotTested means that the test could not be loaded. This
25844 is classified as a MISSING failure.
25845 (FailureNotTested): Added.
25846 (FailureNotTested.message):
25848 2017-05-19 Yusuke Suzuki <utatane.tea@gmail.com>
25850 Add SixSpeed benchmark to PerformanceTests
25851 https://bugs.webkit.org/show_bug.cgi?id=172326
25853 Reviewed by Sam Weinig.
25855 * Scripts/run-jsc-benchmarks:
25857 2017-05-19 Wenson Hsieh <wenson_hsieh@apple.com>
25859 [WK1] MiniBrowser should navigate when handling a dropped URL
25860 https://bugs.webkit.org/show_bug.cgi?id=172350
25862 Reviewed by Tim Horton.
25864 Allow all drop actions, including URL navigation, for WebKit1 MiniBrowser.
25866 * MiniBrowser/mac/WK1BrowserWindowController.m:
25867 (-[WK1BrowserWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
25869 2017-05-18 Ryosuke Niwa <rniwa@webkit.org>
25871 REGRESSION (r216694 - 216712): Performance test Speedometer/Full.html is failing
25872 https://bugs.webkit.org/show_bug.cgi?id=172077
25874 Reviewed by Chris Dumez.
25876 Fixed perftest.py by updating the lines to ignore in Speedometer.
25878 Also start report the results as "Speedometer" instead of "DoYouEvenBench/Full.html" to perf.webkit.org.
25880 * Scripts/webkitpy/performance_tests/perftest.py:
25881 (PerfTest._lines_to_ignore_in_parser_result): Updated for Speedometer 2.0.
25882 * Scripts/webkitpy/performance_tests/perftestsrunner.py:
25883 (PerfTestsRunner._collect_tests): Use "Speedometer" instead of "Speedometer/index.html" as the test name.
25884 (_generate_results_dict): Removed the workaround to keep reporting Speedometer as DoYouEvenBench.
25885 * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
25886 (MainTest.test_collect_tests_with_index_html_and_resources): Added.
25888 2017-05-18 Andy Estes <aestes@apple.com>
25890 ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
25891 https://bugs.webkit.org/show_bug.cgi?id=172305
25893 Reviewed by Anders Carlsson.
25895 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
25897 2017-05-18 Wenson Hsieh <wenson_hsieh@apple.com>
25899 Selection around attachment elements should not persist when beginning a drag
25900 https://bugs.webkit.org/show_bug.cgi?id=172319
25901 <rdar://problem/32283008>
25903 Reviewed by Tim Horton.
25905 Tests that temporary selection around an attachment does not persist longer than it needs to.
25907 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25908 (TestWebKitAPI::TEST):
25910 2017-05-18 John Wilander <wilander@apple.com>
25912 Resource Load Statistics: Grandfather domains for existing data records
25913 https://bugs.webkit.org/show_bug.cgi?id=172155
25914 <rdar://problem/24913532>
25916 Reviewed by Alex Christensen.
25918 Adds test infrastructure needed for the added functionality.
25920 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
25921 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
25922 (WTR::InjectedBundle::didReceiveMessageToPage):
25923 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
25924 (WTR::TestRunner::setStatisticsGrandfathered):
25925 (WTR::TestRunner::isStatisticsGrandfathered):
25926 (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
25927 (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
25928 (WTR::TestRunner::setStatisticsGrandfatheringTime):
25929 * WebKitTestRunner/InjectedBundle/TestRunner.h:
25930 * WebKitTestRunner/TestController.cpp:
25931 (WTR::TestController::setStatisticsGrandfathered):
25932 (WTR::TestController::isStatisticsGrandfathered):
25933 (WTR::TestController::setStatisticsGrandfatheringTime):
25934 * WebKitTestRunner/TestController.h:
25935 * WebKitTestRunner/TestInvocation.cpp:
25936 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
25938 2017-05-18 Saam Barati <sbarati@apple.com>
25940 WebAssembly: perform stack checks
25941 https://bugs.webkit.org/show_bug.cgi?id=165546
25942 <rdar://problem/29760307>
25944 Reviewed by Filip Pizlo.
25946 Add some new testing modes for using and not using fast TLS wasm contexts.
25948 * Scripts/run-jsc-stress-tests:
25950 2017-05-18 Daniel Bates <dabates@apple.com>
25952 REGRESSION (r209608): Cross-origin plugin document opened in child window blocked by parent
25953 window CSP when object-src 'none' is set
25954 https://bugs.webkit.org/show_bug.cgi?id=172038
25955 <rdar://problem/32258262>
25957 Reviewed by Andy Estes.
25959 Teach the test Netscape plugin to look for a URL that contains plugin-document-alert-and-notify-done.pl.
25960 When it sees this URL it will show a JavaScript alert and call testRunner.notifyDone().
25962 * DumpRenderTree/TestNetscapePlugIn/main.cpp:
25965 2017-05-18 Per Arne Vollan <pvollan@apple.com>
25967 [Win] Many layout tests are failing.
25968 https://bugs.webkit.org/show_bug.cgi?id=172286
25970 Reviewed by Brent Fulgham.
25972 Add a FIXME comment about unimplemented functions, instead of writing this to the test result file.
25974 * DumpRenderTree/win/TestRunnerWin.cpp:
25975 (TestRunner::grantWebNotificationPermission):
25976 (TestRunner::denyWebNotificationPermission):
25977 (TestRunner::removeAllWebNotificationPermissions):
25978 (TestRunner::simulateWebNotificationClick):
25980 2017-05-18 Don Olmstead <don.olmstead@am.sony.com>
25982 [Win] Remove usage of _snprintf
25983 https://bugs.webkit.org/show_bug.cgi?id=172251
25985 Reviewed by Per Arne Vollan.
25987 * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
25988 * MiniBrowser/win/PageLoadTestClient.cpp:
25989 (PageLoadTestClient::dumpRunStatistics):
25991 2017-05-17 Ryan Haddad <ryanhaddad@apple.com>
25993 Unreviewed, rolling out r217014.
25995 This change caused mac-wk2 LayoutTests to exit early due to
25998 Reverted changeset:
26000 "Resource Load Statistics: Grandfather domains for existing
26002 https://bugs.webkit.org/show_bug.cgi?id=172155
26003 http://trac.webkit.org/changeset/217014
26005 2017-05-17 John Wilander <wilander@apple.com>
26007 Resource Load Statistics: Grandfather domains for existing data records
26008 https://bugs.webkit.org/show_bug.cgi?id=172155
26009 <rdar://problem/24913532>
26011 Reviewed by Alex Christensen.
26013 Adds test infrastructure needed for the added functionality.
26015 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
26016 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
26017 (WTR::InjectedBundle::didReceiveMessageToPage):
26018 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
26019 (WTR::TestRunner::setStatisticsGrandfathered):
26020 (WTR::TestRunner::isStatisticsGrandfathered):
26021 (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
26022 (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
26023 (WTR::TestRunner::setStatisticsGrandfatheringTime):
26024 * WebKitTestRunner/InjectedBundle/TestRunner.h:
26025 * WebKitTestRunner/TestController.cpp:
26026 (WTR::TestController::setStatisticsGrandfathered):
26027 (WTR::TestController::isStatisticsGrandfathered):
26028 (WTR::TestController::setStatisticsGrandfatheringTime):
26029 * WebKitTestRunner/TestController.h:
26030 * WebKitTestRunner/TestInvocation.cpp:
26031 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
26033 2017-05-17 Alex Christensen <achristensen@webkit.org>
26035 Fix ios-simulator API test after r216977
26036 https://bugs.webkit.org/show_bug.cgi?id=171987
26038 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
26040 <rdar://problem/32260156> covers the investigation of this, but fixing it is
26041 not as urgent as having the rest of this working. Notably the ephemeral part of the
26042 test works, so something is just wrong with the persistent part.
26044 2017-05-17 Ryan Haddad <ryanhaddad@apple.com>
26046 Unreviewed, rolling out r216955.
26048 This change caused strange behavior with web-platform-tests
26049 locally and on EWS.
26051 Reverted changeset:
26053 "webkitpy: Start servers before setting-up for testing"
26054 https://bugs.webkit.org/show_bug.cgi?id=172176
26055 http://trac.webkit.org/changeset/216955
26057 2017-05-17 Wenson Hsieh <wenson_hsieh@apple.com>
26059 A URL type is vended for a non-URL plain text string when starting data interaction
26060 https://bugs.webkit.org/show_bug.cgi?id=172228
26061 <rdar://problem/32166729>
26063 Reviewed by Andy Estes.
26065 Adds two new data interaction tests, SinglePlainTextWordTypeIdentifiers and SinglePlainTextURLTypeIdentifiers,
26066 to verify that a URL UTI is not vended when beginning a data interaction on a single word, but that a URL is
26067 still vended when beginning data interaction on something that resembles a link.
26069 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
26071 2017-05-17 David Kilzer <ddkilzer@apple.com>
26073 BlobDataFileReference::generateReplacementFile() should use mkstemp()
26074 <https://webkit.org/b/172192>
26076 Reviewed by Brent Fulgham.
26078 * Scripts/webkitpy/style/checkers/cpp.py:
26079 (check_language): Add check for mktemp.
26080 (CppChecker): Add 'security/temp_file' category.
26081 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
26082 (CppStyleTest.test_insecure_temp_file): Add test.
26084 2017-05-17 Devin Rousso <drousso@apple.com>
26086 Unreviewed, change my email.
26088 * Scripts/webkitpy/common/config/contributors.json:
26090 2017-05-17 Matt Lewis <jlewis3@apple.com>
26092 Unreviewed, rolling out r216974.
26094 Revision caused consistent timeouts on all platforms.
26096 Reverted changeset:
26098 "Add a RuntimeEnabledFeature for display: contents, defaulted
26100 https://bugs.webkit.org/show_bug.cgi?id=171984
26101 http://trac.webkit.org/changeset/216974
26103 2017-05-17 Alex Christensen <achristensen@webkit.org>
26105 Interacting with WKHTTPCookieStores before creating WKWebViews and WKProcessPools should affect cookies used
26106 https://bugs.webkit.org/show_bug.cgi?id=171987
26108 Reviewed by Brady Eidson.
26110 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
26111 (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
26114 2017-05-17 Emilio Cobos Álvarez <ecobos@igalia.com>
26116 Add a RuntimeEnabledFeature for display: contents, defaulted to false.
26117 https://bugs.webkit.org/show_bug.cgi?id=171984
26119 Reviewed by Antti Koivisto.
26121 * DumpRenderTree/mac/DumpRenderTree.mm:
26122 (enableExperimentalFeatures):
26123 * WebKitTestRunner/TestController.cpp:
26124 (WTR::TestController::resetPreferencesToConsistentValues):
26126 2017-05-16 Timothy Horton <timothy_horton@apple.com>
26130 * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
26131 (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
26133 2017-05-16 Tim Horton <timothy_horton@apple.com>
26135 PageVisibilityStateWithWindowChanges tests sometimes time out
26136 https://bugs.webkit.org/show_bug.cgi?id=172202
26137 <rdar://problem/29653266>
26139 Reviewed by Dean Jackson.
26141 * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
26142 (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
26143 Make sure the window is miniaturizable, otherwise, in some cases, miniaturize: will not work.
26145 2017-05-16 Jonathan Bedard <jbedard@apple.com>
26147 webkitpy: Start servers before setting-up for testing
26148 https://bugs.webkit.org/show_bug.cgi?id=172176
26149 <rdar://problem/32225538>
26151 Reviewed by Alexey Proskuryakov.
26153 On-device testing requires that servers are started before ports set-up their
26156 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
26157 (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
26158 (LayoutTestRunner.run_tests): Move the starting of servers to the initializer.
26159 * Scripts/webkitpy/layout_tests/controllers/manager.py:
26160 (Manager.__init__): Delay construction of the test runner until we can determine
26161 if servers need to be started.
26162 (Manager.run): Determine if servers need to be started and construct the test runner.
26163 (Manager._run_tests): Move the determination of servers to run into Manager.run.
26165 2017-05-16 Adrian Perez de Castro <aperez@igalia.com>
26167 Unreviewed, adding myself to contributors.json
26169 * Scripts/webkitpy/common/config/contributors.json:
26171 2017-05-16 Claudio Saavedra <csaavedra@igalia.com>
26173 [GTK] Tests that always pass when run alone, but fail in the bots
26174 https://bugs.webkit.org/show_bug.cgi?id=168572
26176 Reviewed by Michael Catanzaro.
26178 PlatformWebView::viewSupportsOptions() is basically a comparison
26179 that checks that the passed options are the ones supported by the
26180 web view. There is no reason for them to be implemented for each
26181 platform differently. In fact doing so causes issues each time a
26182 new option is added, if the corresponding platform implementation
26183 is not updated accordingly.
26185 A consequence of not updating the viewSupportOptions()
26186 implementations when new options are added is that tests that need
26187 these options might fail if they are executed after a test that
26188 didn't need the option, as the webview will be reused even if the
26189 option is not supported. This cannot be spotted when running the
26190 tests individually. See bug #165133 for other example of the same
26193 Remove the platform implementations and make the comparison a
26194 method of the TestOptions structure, so that the check is in one
26195 place. For the time being, only include in the comparison the
26196 options that were checked in the mac platform, which seem to be
26197 the only ones relevant this far (unless newer ones have also been
26200 * WebKitTestRunner/PlatformWebView.h:
26201 (WTR::PlatformWebView::viewSupportsOptions): Use the method
26203 * WebKitTestRunner/TestOptions.h:
26204 (WTR::TestOptions::hasSameInitializationOptions): Added.
26205 * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
26206 (WTR::PlatformWebView::viewSupportsOptions): Deleted.
26207 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
26208 (WTR::PlatformWebView::viewSupportsOptions): Deleted.
26209 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
26210 (WTR::PlatformWebView::viewSupportsOptions): Deleted.
26211 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
26212 (WTR::PlatformWebView::viewSupportsOptions): Deleted.
26214 2017-05-15 Yusuke Suzuki <utatane.tea@gmail.com>
26216 [JSC] Build testapi in non Apple ports
26217 https://bugs.webkit.org/show_bug.cgi?id=172103
26219 Reviewed by Filip Pizlo.
26221 Now testapi is drived in JSCOnly, GTK and WPE ports too.
26223 * Scripts/build-jsc:
26224 * Scripts/run-javascriptcore-tests:
26226 2017-05-15 Youenn Fablet <youenn@apple.com>
26228 WPT test importer should not account for slow manual tests
26229 https://bugs.webkit.org/show_bug.cgi?id=172127
26231 Reviewed by Ryosuke Niwa.
26233 Making sure manual tests are not triggering updating tests-options.json file.
26235 * Scripts/webkitpy/w3c/test_importer.py:
26236 (TestImporter.find_importable_tests):
26237 (TestImporter._already_identified_as_resource_file):
26238 (TestImporter.update_tests_options):
26239 * Scripts/webkitpy/w3c/test_importer_unittest.py:
26240 (test_manual_slow_test):
26242 2017-05-15 Jonathan Bedard <jbedard@apple.com>
26244 webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
26245 https://bugs.webkit.org/show_bug.cgi?id=172142
26247 Reviewed by Tim Horton.
26249 * Scripts/webkitpy/xcode/simulator.py:
26250 (Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
26251 around runtime identifiers.
26252 * Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.
26254 2017-05-15 Ryosuke Niwa <rniwa@webkit.org>
26256 Update ARES-6 plan file to use the latest version
26257 https://bugs.webkit.org/show_bug.cgi?id=172139
26259 Reviewed by Keith Miller.
26263 * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
26265 2017-05-15 Jeremy Jones <jeremyj@apple.com>
26267 Disable Picture In Picture API tests on unsupported platforms.
26268 https://bugs.webkit.org/show_bug.cgi?id=172125
26269 rdar://problem/32199477
26271 Reviewed by Simon Fraser.
26273 The callbacks and allowing picture-in-picture require new SPI.
26275 * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
26277 2017-05-15 Brady Eidson <beidson@apple.com>
26279 [ios-simulator] API test WKWebView.ClearAppCache is failing.
26280 https://bugs.webkit.org/show_bug.cgi?id=172120
26282 Unreviewed test gardening.
26284 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
26285 (TEST): ios-sim needs explicit deleting of the app cache paths that I'd removed in 216805.
26286 Restoring that code fixes this.
26288 2017-05-15 Timothy Horton <timothy_horton@apple.com>
26290 Null deref under WebContentReader::readURL when interacting with a file URL
26291 https://bugs.webkit.org/show_bug.cgi?id=172045
26292 <rdar://problem/25880647>
26294 Reviewed by Wenson Hsieh.
26296 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
26297 (TestWebKitAPI::TEST):
26298 The text of the file URL is pasted because a textual version of it gets
26299 onto the pasteboard. However, this test would have crashed before. Also
26300 tests that we don't make an <a>.
26302 2017-05-14 Per Arne Vollan <pvollan@apple.com>
26304 [Win] fast/cookies/local-file-can-set-cookies.html is flaky.
26305 https://bugs.webkit.org/show_bug.cgi?id=172071
26307 Reviewed by Alexey Proskuryakov.
26309 * DumpRenderTree/win/DumpRenderTree.cpp:
26310 (resetWebPreferencesToConsistentValues):
26312 2017-05-14 Chris Dumez <cdumez@apple.com>
26314 Drop PassRefPtr class from WTF
26315 https://bugs.webkit.org/show_bug.cgi?id=172091
26317 Reviewed by Alex Christensen.
26319 Drop API test coverage.
26321 * TestWebKitAPI/Tests/WTF/Ref.cpp:
26322 (TestWebKitAPI::TEST):
26323 (TestWebKitAPI::passWithPassRefPtr): Deleted.
26325 2017-05-13 Eric Carlson <eric.carlson@apple.com>
26327 [MediaStream] deviceId constraint doesn't work with getUserMedia
26328 https://bugs.webkit.org/show_bug.cgi?id=171877
26329 <rdar://problem/31899730>
26331 Reviewed by Jer Noble.
26333 The device ID hash salt is now required for getUserMedia to check deviceId constraint, so
26334 implement the "checkUserMediaPermission" callback.
26335 * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
26336 (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
26337 (TestWebKitAPI::checkUserMediaPermissionCallback):
26338 (TestWebKitAPI::TEST):
26340 * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm:
26341 (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
26343 2017-05-13 Chris Dumez <cdumez@apple.com>
26345 Stop using RefPtr::release()
26346 https://bugs.webkit.org/show_bug.cgi?id=172074
26348 Reviewed by Geoffrey Garen.
26350 * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
26351 (TestWebKitAPI::TEST):
26353 2017-05-13 Commit Queue <commit-queue@webkit.org>
26355 Unreviewed, rolling out r216808.
26356 https://bugs.webkit.org/show_bug.cgi?id=172075
26358 caused lldb to hang when debugging (Requested by smfr on
26361 Reverted changeset:
26363 "Use Mach exceptions instead of signals where possible"
26364 https://bugs.webkit.org/show_bug.cgi?id=171865
26365 http://trac.webkit.org/changeset/216808
26367 2017-05-12 Alex Christensen <achristensen@webkit.org>
26369 Rename WKContentExtension to WKContentRuleList
26370 https://bugs.webkit.org/show_bug.cgi?id=172053
26371 <rdar://problem/32141005>
26373 Reviewed by Geoffrey Garen.
26375 * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm:
26376 (WKContentRuleListStoreTest::SetUp):
26378 (-[ContentRuleListDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
26379 (WKContentExtensionStoreTest::SetUp): Deleted.
26380 (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
26382 2017-05-12 Keith Miller <keith_miller@apple.com>
26384 Use Mach exceptions instead of signals where possible
26385 https://bugs.webkit.org/show_bug.cgi?id=171865
26387 Reviewed by Mark Lam.
26389 * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
26390 (runThreadMessageTest):
26393 2017-05-12 Jeremy Jones <jeremyj@apple.com>
26395 Add objc version of WK2 UIPageClient setHasVideoInPictureInPicture and rename it to hasVideoInPictureInPictureDidChange.
26396 https://bugs.webkit.org/show_bug.cgi?id=172048
26397 rdar://problem/32163054
26399 Reviewed by Simon Fraser.
26401 Add a WKWebView test for hasVideoInPictureInPictureDidChange UIDelegate callback.
26403 * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html:
26404 * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
26405 (hasVideoInPictureInPictureDidChange):
26406 (-[PictureInPictureUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
26407 (-[PictureInPictureUIDelegate userContentController:didReceiveScriptMessage:]):
26408 (TestWebKitAPI::TEST):
26410 2017-05-12 Brady Eidson <beidson@apple.com>
26412 REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
26413 https://bugs.webkit.org/show_bug.cgi?id=172030
26415 Unreviewed - Test gardening
26417 Try to resolve this once and for all by using the WebsiteDataStore API to nuke everything
26418 before the test starts.
26420 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
26421 (defaultWebsiteCacheDirectory):
26422 (defaultApplicationCacheDirectory):
26424 (defaultWebsiteDataDirectory): Deleted.
26426 2017-05-12 David Quesada <david_quesada@apple.com>
26428 Add SPI for overriding WKWebView's clipping behavior for _visibleContentRect
26429 https://bugs.webkit.org/show_bug.cgi?id=172000
26430 rdar://problem/32144756
26432 Reviewed by Simon Fraser.
26434 Added API tests to verify that WKWebView provides the expected value for
26435 _visibleContentRect in various configurations. (i.e. not inside a scrollview,
26436 inside a scrollview but not clipped, clipped by an ancestor scrollview,
26437 clipped by the webview's _enclosingViewForExposedRectComputation)
26439 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
26440 * TestWebKitAPI/Tests/WebKit2Cocoa/VisibleContentRect.mm: Added.
26441 (-[TestWKWebViewWithEnclosingView _enclosingViewForExposedRectComputation]):
26442 (TestWebKitAPI::TEST):
26444 2017-05-12 Brady Eidson <beidson@apple.com>
26446 REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
26447 https://bugs.webkit.org/show_bug.cgi?id=172030
26449 Unreviewed - Test gardening, in effect...
26451 More exploration as to why this continues to fail on the bots.
26453 This change should give us a smoking gun.
26455 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
26458 2017-05-12 Hyungwook Lee <hyungwook.lee@navercorp.com>
26460 [GTK] Fix compile warnings in PlatformImageCairo.cpp
26461 https://bugs.webkit.org/show_bug.cgi?id=171850
26463 Reviewed by Michael Catanzaro.
26465 * ImageDiff/cairo/PlatformImageCairo.cpp:
26466 (ImageDiff::PlatformImage::createFromStdin):
26467 (ImageDiff::PlatformImage::writeAsPNGToStdout):
26469 2017-05-12 Jeremy Jones <jeremyj@apple.com>
26471 Add UIClient callback for when picture-in-picture is activated.
26472 https://bugs.webkit.org/show_bug.cgi?id=172023
26474 Reviewed by Simon Fraser.
26476 Added a test for WKPageUIClientV10 setHasVideoInPictureInPicture.
26478 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
26479 * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html: Added.
26480 * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm: Added.
26481 (onLoadedCompletedCallback):
26482 (waitUntilOnLoadIsCompleted):
26483 (didFinishLoadForFrame):
26484 (setHasVideoInPictureInPicture):
26485 (TestWebKitAPI::TEST):
26487 2017-05-12 Jonathan Bedard <jbedard@apple.com>
26489 Unreviewed follow-up to r216776.
26491 * Scripts/webkitpy/port/base.py:
26492 (Port.path_to_crash_logs): Raise not implemented.
26493 * Scripts/webkitpy/port/test.py:
26494 (TestPort.path_to_crash_logs): Return results directory as the location of crash logs.
26495 * Scripts/webkitpy/port/win.py:
26496 (WinPort.path_to_crash_logs): Ditto.
26498 2017-05-12 Alexey Proskuryakov <ap@apple.com>
26500 Bot watcher's dashboard shows results links twice sometimes
26501 https://bugs.webkit.org/show_bug.cgi?id=172043
26503 Reviewed by Tim Horton.
26505 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
26506 (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
26508 2017-05-12 Brady Eidson <beidson@apple.com>
26510 REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
26511 https://bugs.webkit.org/show_bug.cgi?id=172030
26513 Unreviewed - Test gardening, in effect...
26515 This failure is only being seen by the bots.
26517 I believe this test is utterly broken in the first place; when it checks the .wal file's
26518 size that is not actually an indicator that the records were deleted.
26520 But that isn't what's coming up as failure on the bots.
26522 This patch is an attempt to:
26523 1 - More forcefully clear the Website data directory of leftovers before the test starts.
26524 2 - Give an earlier indication of the failure that the bots are seeing, to possibly reveal more.
26526 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
26527 (defaultWebsiteDataDirectory):
26528 (defaultApplicationCacheDirectory):
26531 2017-05-12 Jonathan Bedard <jbedard@apple.com>
26533 webkitpy: Pass directory with crash logs into CrashLogs
26534 https://bugs.webkit.org/show_bug.cgi?id=172033
26535 <rdar://problem/32157616>
26537 Reviewed by Daniel Bates.
26539 Refactor CrashLogs and the callers of CrashLogs so that the port object owns
26540 the location of crash logs.
26542 * Scripts/webkitpy/common/system/crashlogs.py:
26543 (CrashLogs.__init__): Pass mandatory crash_log_directory when constructing.
26544 (CrashLogs._find_newest_log_darwin): Use self._crash_log_directory instead of
26546 (CrashLogs._find_newest_log_win): Use self._crash_log_directory instead of
26547 self._results_directory.
26548 (CrashLogs._find_all_logs_darwin): Use self._crash_log_directory instead of
26550 (CrashLogs._log_directory_darwin): Moved to port.
26551 * Scripts/webkitpy/common/system/crashlogs_unittest.py: Update tests since the path
26552 to the crash log is no longer owned by CrashLogs.
26553 * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Use the general
26554 directory for uploading crash logs. Note that crash logs are only supported on Mac
26556 * Scripts/webkitpy/port/apple.py: Remove unneeded CrashLogs import.
26557 * Scripts/webkitpy/port/base.py:
26558 (Port.path_to_crash_logs): Unless ports declare otherwise, crash logs are assumed
26559 to be in the results directory.
26560 * Scripts/webkitpy/port/darwin.py:
26561 (DarwinPort.path_to_crash_logs): Moved from CrashLogs._log_directory_darwin.
26562 (DarwinPort._look_for_all_crash_logs_in_log_dir): Use port specific crash log path.
26563 (DarwinPort._get_crash_log): Ditto.
26564 * Scripts/webkitpy/port/darwin_testcase.py:
26565 (DarwinTest.test_crashlog_path): Test that the Darwin ports are correctly calculating
26566 the path to crash logs.
26567 * Scripts/webkitpy/port/ios_device.py:
26568 (IOSDevicePort.path_to_crash_logs): Currently, crash log retrieval is undefined for iOS.
26569 * Scripts/webkitpy/port/ios_device_unittest.py:
26570 (IOSDeviceTest.test_crashlog_path): Currently, crash log retrieval is undefined for iOS.
26571 * Scripts/webkitpy/port/ios_simulator.py: Remove unneeded CrashLogs import.
26572 * Scripts/webkitpy/port/mac.py: Ditto.
26573 * Scripts/webkitpy/port/test.py:
26574 (TestDriver.run_test): Use port specific crash log path when retrieving crash logs.
26575 * Scripts/webkitpy/port/win.py:
26576 (WinPort._get_crash_log): Ditto.
26577 * Scripts/webkitpy/tool/commands/queries.py:
26578 (execute): Construct a port object since this is the object which owns the path to crash logs.
26580 2017-05-12 Carlos Garcia Campos <cgarcia@igalia.com>
26582 Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/create-navigation-data after r216615.
26584 In r216615 the custom code for window.open() was removed. The generated code now correctly handles the optional
26585 URL parameter using the default value "about:blank" when not provided.
26587 * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
26588 (testWebViewCreateNavigationData):
26590 2017-05-11 Youenn Fablet <youenn@apple.com>
26592 Allow WPT server to serve specific WebKit test
26593 https://bugs.webkit.org/show_bug.cgi?id=171479
26595 Reviewed by Ryosuke Niwa.
26597 Adding a new mount point to WPT server.
26598 It points to LayoutTests/http/wpt folder and is triggered on "/WebKit" urls.
26600 Updating the webkitpy infrastructure to launch WPT server and do test url mapping for LayoutTests/wpt tests.
26602 * Scripts/webkitpy/layout_tests/controllers/manager.py:
26603 (Manager.__init__):
26604 (Manager._is_http_test):
26605 (Manager._needs_web_platform_test):
26606 (Manager._run_tests):
26607 (Manager._is_web_platform_test): Deleted.
26608 * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
26611 * Scripts/webkitpy/port/driver.py:
26613 (Driver.is_webkit_specific_web_platform_test):
26614 (Driver.test_to_uri):
26615 (Driver._command_from_driver_input):
26617 2017-05-11 Brady Eidson <beidson@apple.com>
26619 [WKWebsiteDataStore removeDataOfTypes:...] doesn't work for IndexedDB if the data store has a custom IDB path.
26620 <rdar://problem/30612463> and https://bugs.webkit.org/show_bug.cgi?id=171994
26622 Reviewed by Andy Estes.
26623 Informal review by Maureen Daum.
26625 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
26628 2017-05-11 Joseph Pecoraro <pecoraro@apple.com>
26630 REGRESSION(r216217): lldb_webkit.py no longer prints out a WTFString, StringImpl needs to handle StringImplShape change
26631 https://bugs.webkit.org/show_bug.cgi?id=171989
26633 Reviewed by Brian Burg.
26635 * lldb/lldb_webkit.py:
26636 (WTFStringImplProvider.get_data8):
26637 (WTFStringImplProvider.get_data16):
26638 m_data8 and m_data16 are now part of the superclass StringImplShape
26639 instead of directly in StringImpl. So first get the shape by getting
26640 index 0, and the data properties are the same offset within that.
26642 2017-05-11 Joseph Pecoraro <pecoraro@apple.com>
26644 Remove Vibration API
26645 https://bugs.webkit.org/show_bug.cgi?id=171766
26647 Rubber-stamped by Alexey Proskuryakov.
26649 * Scripts/webkitperl/FeatureList.pm:
26651 2017-05-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
26653 Add WPE release bots
26654 https://bugs.webkit.org/show_bug.cgi?id=171973
26656 Reviewed by Žan Doberšek.
26658 This adds a WPE Release Build bot (64-bit) and a WPE Release Test bot.
26659 It also adds a new WPE buildbot category.
26661 * BuildSlaveSupport/build.webkit.org-config/config.json:
26662 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
26663 (InstallWpeDependencies):
26664 (appendCustomBuildFlags):
26665 (Factory.__init__):
26666 (loadBuilderConfig):
26667 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
26668 * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
26670 2017-05-09 Sam Weinig <sam@webkit.org>
26672 Remove support for legacy Notifications
26673 https://bugs.webkit.org/show_bug.cgi?id=171487
26675 Reviewed by Jon Lee.
26677 * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
26678 (DRTDesktopNotificationPresenter::checkNotificationPermission):
26679 * Scripts/webkitperl/FeatureList.pm:
26680 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
26681 Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
26683 2017-05-10 Michael Catanzaro <mcatanzaro@igalia.com>
26685 Remove user agent quirk for Slack
26686 https://bugs.webkit.org/show_bug.cgi?id=171869
26688 Reviewed by Carlos Garcia Campos.
26690 Remove the corresponding test.
26692 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
26693 (TestWebKitAPI::TEST):
26695 2017-05-10 Commit Queue <commit-queue@webkit.org>
26697 Unreviewed, rolling out r216578.
26698 https://bugs.webkit.org/show_bug.cgi?id=171920
26700 Broke the GTK+ build with Wayland enabled (Requested by KaL on
26703 Reverted changeset:
26705 "[GTK] Bump GTK+ and its dependencies in jhbuild"
26706 https://bugs.webkit.org/show_bug.cgi?id=171918
26707 http://trac.webkit.org/changeset/216578
26709 2017-05-10 Carlos Garcia Campos <cgarcia@igalia.com>
26711 [GTK] Bump GTK+ and its dependencies in jhbuild
26712 https://bugs.webkit.org/show_bug.cgi?id=171918
26714 Reviewed by Carlos Alberto Lopez Perez.
26716 * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
26717 (WTR::initializeGtkSettings):
26718 * gtk/jhbuild.modules:
26719 * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
26720 * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
26722 2017-05-10 Don Olmstead <don.olmstead@am.sony.com>
26724 [Win] Set CMake args in build-webkit
26725 https://bugs.webkit.org/show_bug.cgi?id=171436
26727 Reviewed by Per Arne Vollan.
26729 * Scripts/build-webkit:
26731 2017-05-10 Carlos Garcia Campos <cgarcia@igalia.com>
26733 ImageDiff: Add CG implementation for new ImageDiff
26734 https://bugs.webkit.org/show_bug.cgi?id=170608
26736 Reviewed Alex Christensen.
26738 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
26739 * DumpRenderTree/win/ImageDiffCairo.cpp: Removed.
26740 * DumpRenderTree/win/ImageDiffWin.cpp: Removed.
26741 * ImageDiff/CMakeLists.txt:
26742 * ImageDiff/Cairo.cmake:
26743 * ImageDiff/ImageDiff.cpp:
26745 * ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
26746 * ImageDiff/PlatformImage.cpp:
26747 * ImageDiff/PlatformImage.h:
26748 * ImageDiff/cairo/PlatformImageCairo.cpp:
26749 * ImageDiff/cg/ImageDiff.cpp: Removed.
26750 * ImageDiff/cg/PlatformImageCG.cpp: Added.
26751 (ImageDiff::PlatformImage::createFromStdin):
26752 (ImageDiff::PlatformImage::createFromDiffData):
26753 (ImageDiff::PlatformImage::PlatformImage):
26754 (ImageDiff::PlatformImage::~PlatformImage):
26755 (ImageDiff::PlatformImage::width):
26756 (ImageDiff::PlatformImage::height):
26757 (ImageDiff::PlatformImage::rowBytes):
26758 (ImageDiff::PlatformImage::hasAlpha):
26759 (ImageDiff::PlatformImage::pixels):
26760 (ImageDiff::PlatformImage::writeAsPNGToStdout):
26762 2017-05-10 Zan Dobersek <zdobersek@igalia.com>
26764 Enable FTL JIT by default on AArch64
26765 https://bugs.webkit.org/show_bug.cgi?id=144039
26767 Reviewed by Yusuke Suzuki.
26769 * Scripts/build-jsc: Enable the FTL JIT option by default on ARM64.
26770 * Scripts/run-jsc-stress-tests: Unmark the ARM64 and Linux combination
26771 as an unsupported FTL platform.
26772 * Scripts/webkitdirs.pm:
26773 (isARM64): Returns 1 if the determined architecture is 'arm64'.
26774 * Scripts/webkitperl/FeatureList.pm: Enable FTL_JIT and WEBASSEMBLY on ARM64.
26776 2017-05-09 Jonathan Bedard <jbedard@apple.com>
26778 webkitpy: Remove unneeded crash log retrieval, refactor Darwin crash retrieval
26779 https://bugs.webkit.org/show_bug.cgi?id=170857
26780 <rdar://problem/31635373>
26782 Reviewed by Aakash Jain.
26784 Since LayoutTestRelay has been removed, iOS Simulators and Macs can use the same
26785 code to search for crash logs.
26787 * Scripts/webkitpy/port/darwin.py:
26788 (DarwinPort._get_crash_log): Moved from MacPort.
26789 * Scripts/webkitpy/port/darwin_testcase.py:
26790 (DarwinTest.test_get_crash_log): Moved from MacTest.
26791 * Scripts/webkitpy/port/ios_device.py:
26792 (IOSDevicePort._get_crash_log): Implement pass-through for iOS device, since iOS
26793 devices must search for crash-logs remotely.
26794 * Scripts/webkitpy/port/ios_simulator.py:
26795 (IOSSimulatorPort._get_crash_log): Deleted.
26796 * Scripts/webkitpy/port/ios_simulator_unittest.py:
26797 (IOSSimulatorTest.test_get_crash_log): Deleted.
26798 * Scripts/webkitpy/port/mac.py:
26799 (MacPort._get_crash_log): Moved to DarwinPort
26800 * Scripts/webkitpy/port/mac_unittest.py:
26801 (MacTest.test_get_crash_log): Moved to DarwinTest.
26803 2017-05-09 Jonathan Bedard <jbedard@apple.com>
26805 build ImageDiff with host SDK from Make
26806 https://bugs.webkit.org/show_bug.cgi?id=171835
26808 Reviewed by Alexey Proskuryakov.
26810 ImageDiff should be built for the default SDK and default architecture when
26811 the SDKROOT is set to either iOS device or iOS simulator. Check the
26812 DO_NOT_BUILD_IMAGE_DIFF flag to skip the ImageDiff build.
26814 * ImageDiff/Makefile: Use Mac SDK when building for iOS Simulator or iOS device.
26815 * Makefile: Do not build ImageDiff if the DO_NOT_BUILD_IMAGE_DIFF flag is set.
26817 2017-05-09 Matt Lewis <jlewis3@apple.com>
26819 Unreviewed, adding myself to contributors.json
26821 * Scripts/webkitpy/common/config/contributors.json:
26823 2017-05-09 Jonathan Bedard <jbedard@apple.com>
26825 REGRESSION: ImageDiff not building with make
26826 https://bugs.webkit.org/show_bug.cgi?id=171788
26828 Reviewed by Alex Christensen.
26830 * Makefile: Build ImageDiff for all platforms.
26832 2017-05-09 Fujii Hironori <Hironori.Fujii@sony.com>
26834 [Win] ImageDiff isn't built since Bug 168945
26835 https://bugs.webkit.org/show_bug.cgi?id=171847
26837 Reviewed by Alex Christensen.
26839 * CMakeLists.txt: Add 'ImageDiff' sub-directory to build if WIN32.
26840 * ImageDiff/ImageDiff.cpp: Include some header files to fix compilation errors.
26841 * ImageDiff/PlatformWin.cmake: Define USE_CAIRO if WinCairo port.
26843 2017-05-09 Zan Dobersek <zdobersek@igalia.com>
26845 Upstream the WPE port
26846 https://bugs.webkit.org/show_bug.cgi?id=171110
26848 Reviewed by Alex Christensen.
26851 https://lists.webkit.org/pipermail/webkit-dev/2017-April/028923.html
26853 Add WPE support to various tooling scripts, TestWebKitAPI and WebKitTestRunner.
26854 In-file changes removed from this ChangeLog entry for brevity.
26856 * BuildSlaveSupport/built-product-archive:
26857 * BuildSlaveSupport/test-result-archive:
26859 * ImageDiff/PlatformWPE.cmake: Added.
26860 * Scripts/build-dumprendertree:
26861 * Scripts/build-webkit:
26862 * Scripts/build-webkittestrunner:
26863 * Scripts/update-webkit-libs-jhbuild:
26864 * Scripts/update-webkitwpe-libs: Added.
26865 * Scripts/webkitdirs.pm:
26866 * Scripts/webkitperl/FeatureList.pm:
26867 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
26868 * Scripts/webkitpy/port/factory.py:
26869 * Scripts/webkitpy/port/wpe.py: Added.
26870 * TestWebKitAPI/PlatformWPE.cmake: Added.
26871 * TestWebKitAPI/wpe/InjectedBundleControllerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
26872 * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp: Added.
26873 * TestWebKitAPI/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
26874 * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
26875 * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
26876 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
26877 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
26878 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
26879 * WebKitTestRunner/InjectedBundle/TestRunner.h:
26880 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityControllerWPE.cpp: Added.
26881 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp: Added.
26882 * WebKitTestRunner/InjectedBundle/wpe/ActivateFontsWPE.cpp: Added.
26883 * WebKitTestRunner/InjectedBundle/wpe/InjectedBundleWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
26884 * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
26885 * WebKitTestRunner/PlatformWPE.cmake: Added.
26886 * WebKitTestRunner/PlatformWebView.h:
26887 * WebKitTestRunner/TestController.cpp:
26888 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp: Added.
26889 * WebKitTestRunner/wpe/HeadlessViewBackend.cpp: Added.
26890 * WebKitTestRunner/wpe/HeadlessViewBackend.h: Copied from Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.h.
26891 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp: Added.
26892 * WebKitTestRunner/wpe/TestControllerWPE.cpp: Added.
26893 * WebKitTestRunner/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
26894 * jhbuild/jhbuild-wrapper:
26895 * wpe/generate-inspector-gresource-manifest.py: Added.
26896 * wpe/jhbuild.modules: Added.
26897 * wpe/jhbuildrc: Added.
26898 * wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Added.
26899 * wpe/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Added.
26900 * wpe/patches/freetype6-2.4.11-truetype-font-height-fix.patch: Added.
26901 * wpe/patches/gdate-suppress-string-format-literal-warning.patch: Added.
26902 * wpe/patches/glib-warning-fix.patch: Added.
26903 * wpe/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Added.
26904 * wpe/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Added.
26905 * wpe/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Added.
26906 * wpe/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Added.
26907 * wpe/patches/gstreamer-typefind-Only-push-a-CAPS-event-downstream-if-the-.patch: Added.
26909 2017-05-08 Jonathan Bedard <jbedard@apple.com>
26911 Implement PlatformWebView::windowSnapshotImage and createBitmapContextFromWebView for iOS devices
26912 https://bugs.webkit.org/show_bug.cgi?id=169421
26913 <rdar://problem/30950171>
26915 Reviewed by Tim Horton.
26917 * DumpRenderTree/ios/PixelDumpSupportIOS.mm:
26918 (createBitmapContextFromWebView): Implement for IOSurface.
26919 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
26920 (WTR::PlatformWebView::windowSnapshotImage): Use snapshot API for device.
26922 2017-05-08 Jonathan Bedard <jbedard@apple.com>
26924 buildbot: Cleanup simulators after running tests
26925 https://bugs.webkit.org/show_bug.cgi?id=171679
26927 Reviewed by Aakash Jain.
26929 simctl is partitioned for each user. Since kill-old-processes
26930 is run as root, we need to specify the buildbot user when tearing
26931 down simulators between steps.
26933 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
26934 (KillOldProcesses): Pass buildbot user to kill-old-processes.
26935 * BuildSlaveSupport/kill-old-processes:
26936 (main): Specify the user for simctl if one has been provided.
26938 2017-05-08 Carlos Alberto Lopez Perez <clopez@igalia.com>
26940 REGRESSION(r216179): [GTK] Script install-dependencies misses liborc
26941 https://bugs.webkit.org/show_bug.cgi?id=171681
26943 Reviewed by Carlos Garcia Campos.
26945 * gtk/install-dependencies:
26947 2017-05-08 Carlos Garcia Campos <cgarcia@igalia.com>
26949 Unreviewed. Fix GTK+ test /webkit2/WebKitConsoleMessage/network-error after r215556.
26951 Glib uses now Unicode quotes in error messages.
26953 * TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp:
26954 (testWebKitConsoleMessageNetworkError):
26956 2017-05-08 Carlos Garcia Campos <cgarcia@igalia.com>
26958 Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r215404.
26960 Sending down+up keys is no longer enough to simulate a real user interaction after r215404, the key events now
26961 should be handled by the web process to be considered a user interaction. So, add an input to the HTML and send
26962 characters to the input. Also fix typo in the function name.
26964 * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
26965 (testWebViewJavaScriptDialogs):
26967 2017-05-07 Michael Catanzaro <mcatanzaro@igalia.com>
26969 [GTK] Cannot sign in with new Google sign-in page
26970 https://bugs.webkit.org/show_bug.cgi?id=171770
26972 Unreviewed. This just adds a test.
26974 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
26975 (TestWebKitAPI::TEST):
26977 2017-05-06 Simon Fraser <simon.fraser@apple.com>
26979 [iOS WK2] Make rotation tests more reliable
26980 https://bugs.webkit.org/show_bug.cgi?id=171778
26982 Reviewed by Tim Horton.
26984 Switching between "safari-style" rotation and normal rotation left state on the WKWebView
26985 that would cause later viewport-sensitive tests to fail. The WKWebView would be left
26986 with override layout parameters, and an override orientation, and these caused viewport
26987 size to leak into later tests, and WebCore orientation to not get reset correctly.
26989 Also, WKWebView was unregistering for UIWindowDidRotateNotification notifications when
26990 an override orientation was set, and would never re-register, causing lost orientationchanged
26993 Fix by exposing WKWebView SPI to clear the various bits of overide state. Also don't unregister
26994 from the UIWindowDidRotateNotification notification; it's already ignored anyway if it fires.
26996 Also wait for a visible content rect update after resizing the WKWebVeiw between tests, to make sure
26997 the WebProcess is caught up before proceeding with the test.
26999 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
27000 (-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
27001 * WebKitTestRunner/ios/TestControllerIOS.mm:
27002 (WTR::TestController::platformResetStateToConsistentValues):
27003 (WTR::TestController::platformConfigureViewForTest):
27005 2017-05-06 Csaba Osztrogonác <ossy@webkit.org>
27007 [Mac][cmake] Buildfix after r216047
27008 https://bugs.webkit.org/show_bug.cgi?id=171769
27010 Unreviewed buildfix.
27012 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
27014 2017-05-05 Brady Eidson <beidson@apple.com>
27016 API test WebKit2.WebsiteDataStoreCustomPaths is failing on ios-simulator.
27017 <rdar://problem/31977294> and https://bugs.webkit.org/show_bug.cgi?id=171513
27019 Reviewed by Andy Estes.
27021 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
27024 2017-05-05 Brian Burg <bburg@apple.com>
27026 [Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as session cookies
27027 https://bugs.webkit.org/show_bug.cgi?id=171748
27028 <rdar://problem/32027327>
27030 Reviewed by Michael Catanzaro.
27032 Remove temporary workaround now that the assertion failure is fixed.
27034 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
27037 2017-05-05 Simon Fraser <simon.fraser@apple.com>
27039 Make it possible to test rotation in iOS WebKitTestRunner
27040 https://bugs.webkit.org/show_bug.cgi?id=171755
27042 Reviewed by Tim Horton.
27044 Add to UIScriptController:
27045 void simulateRotation(DeviceOrientation orientation, object callback);
27046 void simulateRotationLikeSafari(DeviceOrientation orientation, object callback);
27048 The former just does a view resize, as a simple WKWebView app would do. The second does
27049 animation more like MobileSafari, using _begin/_endAnimatedResize. and associated override
27050 layout size and interface orientation. The two behaviors produce different resize and
27051 orientationchange events and sizes, and both need to be tested.
27053 Rotation is initiated by a call on UIDevice, and responded to by the root view controller,
27054 which is now a custom subclass (PlatformWebViewController).
27056 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
27057 (WTR::UIScriptController::simulateRotation):
27058 (WTR::UIScriptController::simulateRotationLikeSafari):
27059 * DumpRenderTree/mac/UIScriptControllerMac.mm:
27060 (WTR::UIScriptController::simulateRotation):
27061 (WTR::UIScriptController::simulateRotationLikeSafari):
27062 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
27063 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
27064 (WTR::toDeviceOrientation):
27065 (WTR::UIScriptController::simulateRotation):
27066 (WTR::UIScriptController::simulateRotationLikeSafari):
27067 * TestRunnerShared/UIScriptContext/UIScriptController.h:
27068 * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
27069 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
27070 (-[TestRunnerWKWebView dealloc]):
27071 (-[TestRunnerWKWebView _didEndRotation]):
27072 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
27073 (-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
27074 (WTR::PlatformWebView::PlatformWebView):
27075 * WebKitTestRunner/ios/TestControllerIOS.mm:
27076 (WTR::TestController::platformResetStateToConsistentValues):
27077 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
27078 (WTR::toUIDeviceOrientation):
27079 (WTR::UIScriptController::simulateRotation):
27080 (WTR::UIScriptController::simulateRotationLikeSafari):
27081 (WTR::UIScriptController::platformClearAllCallbacks):
27082 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
27083 (WTR::UIScriptController::simulateRotation):
27084 (WTR::UIScriptController::simulateRotationLikeSafari):
27086 2017-05-05 Jonathan Bedard <jbedard@apple.com>
27088 Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
27089 https://bugs.webkit.org/show_bug.cgi?id=168945
27090 <rdar://problem/30745695>
27092 Reviewed by David Kilzer.
27094 Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
27095 target SDK. These two changes must happen simultaneously because some archives will
27096 clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
27098 * DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
27099 * DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
27100 tools directory still includes ImageDiff.
27101 * DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
27102 * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
27103 * Scripts/webkitpy/port/darwin.py:
27104 (DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
27105 locally or when running archives.
27106 * Scripts/webkitpy/port/image_diff.py:
27107 (IOSSimulatorImageDiffer): Deleted.
27108 * Scripts/webkitpy/port/ios_simulator.py:
27109 (IOSSimulatorPort.diff_image): Deleted.
27111 2017-05-05 Brian Burg <bburg@apple.com>
27113 API test WebKit2.WKHTTPCookieStore fails due to possible issue with handling non-session cookies
27114 https://bugs.webkit.org/show_bug.cgi?id=171748
27116 Unreviewed test gardening.
27118 The assertion failure will be investigated separately in order to avoid rolling out
27119 the fix for "secure" cookies. This assertion fails even without r216258 applied.
27121 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
27124 2017-05-05 Jonathan Bedard <jbedard@apple.com>
27126 Unreviewed, rolling out r216260.
27128 Breaks internal iOS testers
27130 Reverted changeset:
27132 "Use ImageDiff built by host SDK and remove ImageDiff from
27134 https://bugs.webkit.org/show_bug.cgi?id=168945
27135 http://trac.webkit.org/changeset/216260
27137 2017-05-05 Jonathan Bedard <jbedard@apple.com>
27139 Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
27140 https://bugs.webkit.org/show_bug.cgi?id=168945
27141 <rdar://problem/30745695>
27143 Reviewed by David Kilzer.
27145 Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
27146 target SDK. These two changes must happen simultaneously because some archives will
27147 clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
27149 * DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
27150 * DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
27151 tools directory still includes ImageDiff.
27152 * DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
27153 * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
27154 * Scripts/webkitpy/port/darwin.py:
27155 (DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
27156 locally or when running archives.
27157 * Scripts/webkitpy/port/image_diff.py:
27158 (IOSSimulatorImageDiffer): Deleted.
27159 * Scripts/webkitpy/port/ios_simulator.py:
27160 (IOSSimulatorPort.diff_image): Deleted.
27162 2017-05-05 Brian Burg <bburg@apple.com>
27164 [Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as secure
27165 https://bugs.webkit.org/show_bug.cgi?id=171700
27166 <rdar://problem/32017975>
27168 Reviewed by Brady Eidson.
27170 Fix a mistake in the test that should have caught this bug.
27172 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
27174 The assertions that were meant to check round-tripping were actually checking
27175 the properties of the original cookie objects, not the round-tripped ones.
27176 This test now fails without the bugfix and passes when it is applied.
27178 2017-05-05 Daniel Bates <dabates@apple.com>
27180 Use EXPECT_EQ() when comparing strings in TestWebKitAPI tests
27181 https://bugs.webkit.org/show_bug.cgi?id=171698
27183 Reviewed by Darin Adler.
27185 We should use EXPECT_EQ() instead of EXPECT_TRUE() to compare WTF::String() objects
27186 so that we get pretty diff output when the actual string differs from the expected
27187 string as opposed to seeing a boolean result. The former makes makes it straightforward
27188 to diagnose a regression without reading the code for the test or instrumenting it to
27189 determine the actual string that was compared.
27191 * TestWebKitAPI/Tests/WTF/WTFString.cpp:
27192 (TestWebKitAPI::TEST):
27193 * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm:
27194 (TestWebKitAPI::TEST_F):
27195 * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm:
27196 (TestWebKitAPI::TEST_F):
27198 2017-05-05 Chris Dumez <cdumez@apple.com>
27200 Rename webProcessDidCrashWithReason callback to webProcessDidTerminate and stop calling webProcessDidCrash for client terminations
27201 https://bugs.webkit.org/show_bug.cgi?id=171624
27203 Reviewed by Dan Bernstein.
27205 Extend API test coverage to cover crashes in addition to terminations requested by the client.
27207 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27208 * TestWebKitAPI/Tests/WebKit2/ProcessDidTerminate.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp.
27209 (TestWebKitAPI::webProcessWasTerminatedByClient):
27210 (TestWebKitAPI::webProcessCrashed):
27211 (TestWebKitAPI::TEST):
27213 2017-05-04 Mark Lam <mark.lam@apple.com>
27215 DRT's setAudioResultCallback() and IDBRequest::setResult() need to acquire the JSLock.
27216 https://bugs.webkit.org/show_bug.cgi?id=171716
27217 <rdar://problem/30878027>
27219 Reviewed by Saam Barati.
27221 setAudioResultCallback() needs to acquire the JSLock before calling toJS() (which
27222 does JS conversion and therefore, potentially JS allocations) and accessing
27223 methods of internal JS data structures (which may do JS invocation, etc).
27225 * DumpRenderTree/TestRunner.cpp:
27226 (setAudioResultCallback):
27228 2017-05-05 Jonathan Bedard <jbedard@apple.com>
27230 buildbot: Cleanup simulators after running tests
27231 https://bugs.webkit.org/show_bug.cgi?id=171679
27232 <rdar://problem/31994361>
27234 Reviewed by Aakash Jain.
27236 We shutdown the simulator process between tests, but in some cases, this is not
27237 sufficient. Explicitly shutdown every booted simulator.
27239 * BuildSlaveSupport/kill-old-processes:
27240 (main): Shutdown all booted simulators.
27242 2017-05-05 Carlos Garcia Campos <cgarcia@igalia.com>
27244 [GTK] Assertion failure in Inspector::RemoteInspector::setRemoteInspectorClient when disposing WebKitWebContext
27245 https://bugs.webkit.org/show_bug.cgi?id=171644
27247 Reviewed by Michael Catanzaro.
27249 Check that only one WebKitWebContext can have automation enabled.
27251 * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
27252 (testAutomationSessionRequestSession):
27254 2017-05-05 Carlos Garcia Campos <cgarcia@igalia.com>
27256 [GTK] TestController timeout source callback should return G_SOURCE_REMOVE
27257 https://bugs.webkit.org/show_bug.cgi?id=171724
27259 Reviewed by Michael Catanzaro.
27261 It's currently returning CONTINUE which causes it to be called again even if the run loop has been stopped.
27263 * WebKitTestRunner/gtk/TestControllerGtk.cpp:
27264 (WTR::timeoutSource):
27266 2017-05-05 Carlos Garcia Campos <cgarcia@igalia.com>
27268 Unreviewed. Fix wrong assert after r215176.
27270 Cairo surface received by computeMD5HashStringForCairoSurface() doesn't need to be ARGB32 since r215176, it
27271 could also be RGB24 when created from a web view snapshot.
27273 * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
27274 (WTR::computeMD5HashStringForCairoSurface):
27276 2017-05-04 Brian Burg <bburg@apple.com>
27278 lldb_webkit.py should provide a type summary for WebCore::URL
27279 https://bugs.webkit.org/show_bug.cgi?id=171670
27281 Reviewed by Jer Noble.
27283 Just print out the underlying string using the WTFString provider.
27285 * lldb/lldb_webkit.py:
27286 (__lldb_init_module):
27287 (WebCoreURL_SummaryProvider):
27288 (WebCoreURLProvider):
27289 (WebCoreURLProvider.__init__):
27290 (WebCoreURLProvider.to_string):
27292 2017-05-04 Commit Queue <commit-queue@webkit.org>
27294 Unreviewed, rolling out r216206.
27295 https://bugs.webkit.org/show_bug.cgi?id=171714
27297 Multiple LayoutTests crashing in Document::page() (Requested
27300 Reverted changeset:
27302 "Remove support for legacy Notifications"
27303 https://bugs.webkit.org/show_bug.cgi?id=171487
27304 http://trac.webkit.org/changeset/216206
27306 2017-05-04 Mark Lam <mark.lam@apple.com>
27308 API test WTF.StaticStringImpl crashing in TestWebKitAPI::WTF_StaticStringImpl_Test::TestBody() + 3188
27309 https://bugs.webkit.org/show_bug.cgi?id=171702
27311 Reviewed by Filip Pizlo.
27313 The test was supposed to use the MAKE_STATIC_STRING_IMPL macro. I had previously
27314 changed it to instantiate an automatic StaticStringImpl (i.e. stack allocated) to
27315 confirm that the test will detect a regression. Unfortunately, I forgot to
27316 change it back to using MAKE_STATIC_STRING_IMPL before I landed the test.
27317 This patch fixes that.
27319 * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
27320 (TestWebKitAPI::neverDestroyedString):
27322 2017-05-04 Ryan Haddad <ryanhaddad@apple.com>
27324 Disable failing API test WebKit2.ResizeWithHiddenContentDoesNotHang.
27325 https://bugs.webkit.org/show_bug.cgi?id=170195
27327 Unreviewed test gardening.
27329 * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
27332 2017-05-04 Don Olmstead <don.olmstead@am.sony.com>
27334 [Win] Remove redundant macros that are set in the CMake config
27335 https://bugs.webkit.org/show_bug.cgi?id=171571
27337 Reviewed by Brent Fulgham.
27339 * DumpRenderTree/config.h:
27340 * MiniBrowser/win/stdafx.h:
27341 * TestWebKitAPI/config.h:
27343 2017-05-04 Said Abou-Hallawa <sabouhallawa@apple.com>
27345 Add testRunner.display() to force displaying the web page for testing
27346 https://bugs.webkit.org/show_bug.cgi?id=171694
27348 Reviewed by Simon Fraser.
27350 Unlike testRunner.displayAndTrackRepaints(), this new function forces
27351 drawing the web page but without track repaints.
27353 * DumpRenderTree/TestRunner.cpp:
27355 (TestRunner::staticFunctions):
27356 * DumpRenderTree/TestRunner.h:
27357 * DumpRenderTree/mac/TestRunnerMac.mm:
27358 (TestRunner::display):
27359 * DumpRenderTree/win/TestRunnerWin.cpp:
27360 (TestRunner::display):
27361 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
27362 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
27363 (WTR::TestRunner::display):
27364 * WebKitTestRunner/InjectedBundle/TestRunner.h:
27366 2017-05-04 Mark Lam <mark.lam@apple.com>
27368 NeverDestroyed<String>(ASCIILiteral(...)) is not thread safe.
27369 https://bugs.webkit.org/show_bug.cgi?id=171586
27370 <rdar://problem/31873190>
27372 Reviewed by Yusuke Suzuki.
27374 API test for exercising StaticStringImpl and the MAKE_STATIC_STRING_IMPL macro.
27376 * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
27377 (TestWebKitAPI::neverDestroyedString):
27378 (TestWebKitAPI::getNeverDestroyedStringAtStackDepth):
27379 (TestWebKitAPI::TEST):
27381 2017-05-04 Wenson Hsieh <wenson_hsieh@apple.com>
27383 [WK2] Add support for keeping the selection in a focused editable element when dragging begins
27384 https://bugs.webkit.org/show_bug.cgi?id=171585
27385 <rdar://problem/31544320>
27387 Reviewed by Beth Dakin and Zalan Bujtas.
27389 Adds 1 new unit test and tweaks existing tests to check that when first responder status is lost after beginning
27390 a drag while editing, content is still moved (and not copied) when performing data interaction on a different
27391 element. ContentEditableMoveParagraphs checks that content can be shifted within a single element via a move
27392 operation rather than a copy.
27394 See WebCore ChangeLog for more details.
27396 Tests: DataInteractionSimulator.ContentEditableToContentEditable
27397 DataInteractionSimulator.ContentEditableToTextarea
27398 DataInteractionSimulator.ContentEditableMoveParagraphs
27399 DataInteractionSimulator.TextAreaToInput
27401 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27402 * TestWebKitAPI/Tests/WebKit2Cocoa/two-paragraph-contenteditable.html: Added.
27403 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
27404 (TestWebKitAPI::TEST):
27405 * TestWebKitAPI/ios/DataInteractionSimulator.h:
27406 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
27407 (-[DataInteractionSimulator initWithWebView:]):
27408 (-[DataInteractionSimulator dealloc]):
27409 (-[DataInteractionSimulator _advanceProgress]):
27410 (-[DataInteractionSimulator waitForInputSession]):
27411 (-[DataInteractionSimulator _webView:focusShouldStartInputSession:]):
27412 (-[DataInteractionSimulator _webView:didStartInputSession:]):
27414 2017-05-04 Said Abou-Hallawa <sabouhallawa@apple.com>
27416 Rename TestRunner.display() to TestRunner::displayAndTrackRepaints()
27417 https://bugs.webkit.org/show_bug.cgi?id=171641
27419 Reviewed by Simon Fraser.
27421 The plan is to add back the TestRunner.display() which does the display
27422 only without track repaints.
27424 * DumpRenderTree/DumpRenderTree.h:
27425 * DumpRenderTree/TestRunner.cpp:
27426 (displayAndTrackRepaintsCallback):
27427 (TestRunner::staticFunctions):
27428 (displayCallback): Deleted.
27429 (displayInvalidatedRegionCallback): Deleted.
27430 * DumpRenderTree/TestRunner.h:
27431 * DumpRenderTree/mac/DumpRenderTree.mm:
27433 (displayAndTrackRepaintsWebView):
27434 * DumpRenderTree/mac/TestRunnerMac.mm:
27435 (TestRunner::displayAndTrackRepaints):
27436 (TestRunner::display): Deleted.
27437 * DumpRenderTree/win/TestRunnerWin.cpp:
27438 (TestRunner::displayAndTrackRepaints):
27439 (TestRunner::display): Deleted.
27440 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
27441 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
27442 (WTR::TestRunner::displayAndTrackRepaints):
27443 (WTR::TestRunner::display): Deleted.
27444 * WebKitTestRunner/InjectedBundle/TestRunner.h:
27446 2017-05-04 Brady Eidson <beidson@apple.com>
27448 [ios-simulator] API test WebKit2.WebsiteDataStoreCustomPaths is failing.
27449 https://bugs.webkit.org/show_bug.cgi?id=171513
27451 Unreviewed gardening.
27453 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
27454 (TEST): Skip the failing parts of the test on iOS for now.
27456 2017-05-03 Jonathan Bedard <jbedard@apple.com>
27458 Make ImageDiff stand-alone
27459 https://bugs.webkit.org/show_bug.cgi?id=168939
27461 Reviewed by David Kilzer.
27463 Create ImageDiff without dependencies on bmalloc and WTF so that it exists as a
27464 stand-alone project. Note that this change does not eliminate the ImageDiff inside
27465 the DumpRenderTree project.
27467 * ImageDiff/ImageDiff.xcodeproj: Added.
27468 * ImageDiff/ImageDiff.xcodeproj/project.pbxproj: Added.
27469 * ImageDiff/Makefile: Use ImageDiff project.
27470 * ImageDiff/PlatformMac.cmake: Added.
27471 * ImageDiff/PlatformWin.cmake: Added.
27472 * ImageDiff/cg: Added.
27473 * ImageDiff/cg/Configurations: Added.
27474 * ImageDiff/cg/Configurations/Base.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/Base.xcconfig.
27475 * ImageDiff/cg/Configurations/DebugRelease.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/DebugRelease.xcconfig.
27476 * ImageDiff/cg/Configurations/ImageDiff.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/ImageDiff.xcconfig.
27477 * ImageDiff/cg/ImageDiff.cpp: Copied from Tools/DumpRenderTree/cg/ImageDiffCG.cpp.
27478 (createImageFromStdin): Stop using RetainPtr.
27479 (createDifferenceImage): Ditto.
27481 * Scripts/build-imagediff: Stop building WTF and bmalloc.
27483 2017-05-04 Sam Weinig <sam@webkit.org>
27485 Remove support for legacy Notifications
27486 https://bugs.webkit.org/show_bug.cgi?id=171487
27488 Reviewed by Jon Lee.
27490 * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
27491 (DRTDesktopNotificationPresenter::checkNotificationPermission):
27492 * Scripts/webkitperl/FeatureList.pm:
27493 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
27494 Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
27496 2017-05-04 Andy Estes <aestes@apple.com>
27498 Give +testwebkitapi_configurationWithTestPlugInClassName: a shorter name
27499 https://bugs.webkit.org/show_bug.cgi?id=171673
27501 Reviewed by Dan Bernstein.
27503 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
27505 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
27507 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParameters.mm:
27509 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
27511 * TestWebKitAPI/Tests/WebKit2Cocoa/CancelFontSubresource.mm:
27513 * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm:
27514 (configurationWithContentFilterSettings):
27515 (-[LazilyLoadPlatformFrameworksController init]):
27516 * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
27518 * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
27519 (runTestWithWidth):
27520 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorld.mm:
27522 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
27523 (TestWebKitAPI::TEST):
27524 * TestWebKitAPI/WKWebViewConfigurationExtras.h:
27525 * TestWebKitAPI/WKWebViewConfigurationExtras.mm:
27526 (+[WKWebViewConfiguration _test_configurationWithTestPlugInClassName:]):
27527 (+[WKWebViewConfiguration testwebkitapi_configurationWithTestPlugInClassName:]): Renamed to
27528 +_test_configurationWithTestPlugInClassName:
27530 2017-05-04 Eric Carlson <eric.carlson@apple.com>
27532 [MediaStream] Allow host application to enable/disable media capture
27533 https://bugs.webkit.org/show_bug.cgi?id=171292
27534 <rdar://problem/31821492>
27536 Reviewed by Jer Noble.
27538 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27539 * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
27540 (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
27541 (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
27542 (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
27543 (MediaCaptureDisabledTest::SetUp):
27544 (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
27546 * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
27548 2017-05-04 Caio Lima <ticaiolima@gmail.com>
27550 Unreviewed, Adding self to contributors.json
27552 * Scripts/webkitpy/common/config/contributors.json: Added name.
27554 2017-05-04 Konstantin Tokarev <annulen@yandex.ru>
27556 Fix compilation with ICU 59.1
27557 https://bugs.webkit.org/show_bug.cgi?id=171612
27559 Reviewed by Mark Lam.
27561 ICU 59.1 has broken source compatibility. Now it defines UChar as
27562 char16_t, which does not allow automatic type conversion from unsigned
27565 * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
27566 (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
27568 2017-05-04 Andy Estes <aestes@apple.com>
27570 [Cocoa] Add an optional width parameter to -[WKWebProcessPlugInNodeHandle renderedImageWithOptions:]
27571 https://bugs.webkit.org/show_bug.cgi?id=171646
27572 <rdar://problem/30306321>
27574 Reviewed by Tim Horton.
27576 * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
27577 (runTestWithWidth):
27579 (-[RenderedImageWithOptionsObject didRenderImageWithSize:]): Deleted.
27580 * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsPlugIn.mm:
27581 (-[RenderedImageWithOptionsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
27582 (-[RenderedImageWithOptionsPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
27583 (-[RenderedImageWithOptionsPlugIn renderImageWithWidth:completionHandler:]):
27584 * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsProtocol.h:
27586 2017-05-04 Adrian Perez de Castro <aperez@igalia.com>
27588 [GTK] Fontconfig 2.11.2 in JHBuild does not build with glibc 2.25+ or gperf 3.1+
27589 https://bugs.webkit.org/show_bug.cgi?id=171649
27591 Reviewed by Carlos Garcia Campos.
27593 Add two patches picked from the upstream repository to fix building of
27594 the Fontconfig module in JHBuild. Additionally, this needed a patch to
27595 add "autogen.sh" as it is not included in release tarballs. Also:
27596 building the module with srcdir!=builddir prevents "fcobjshash.gperf"
27597 being regenerated (which is needed) so this is disabled for the
27600 * gtk/jhbuild.modules:
27601 * gtk/patches/fontconfig-2.11.1-add-autogen.patch: Added.
27602 * gtk/patches/fontconfig-Avoid-conflicts-with-integer-width-macros-from-TS-18661-1-2014.patch: Added.
27603 * gtk/patches/fontconfig-Fix-the-build-issue-with-gperf-3.1.patch: Added.
27605 2017-05-04 Commit Queue <commit-queue@webkit.org>
27607 Unreviewed, rolling out r216172.
27608 https://bugs.webkit.org/show_bug.cgi?id=171654
27610 FTBFS for iOS due to missing WebPageProxy::stopMediaCapture()
27611 implementation. (Requested by ddkilzer on #webkit).
27613 Reverted changeset:
27615 "[MediaStream] Allow host application to enable/disable media
27617 https://bugs.webkit.org/show_bug.cgi?id=171292
27618 http://trac.webkit.org/changeset/216172
27620 2017-05-04 Carlos Garcia Campos <cgarcia@igalia.com>
27622 [GTK] Bump GStreamer version to 1.10.4 in jhbuild
27623 https://bugs.webkit.org/show_bug.cgi?id=171595
27625 Reviewed by Xabier Rodriguez-Calvar.
27627 * gtk/jhbuild.modules:
27628 * gtk/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Removed.
27629 * gtk/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Removed.
27630 * gtk/patches/gst-plugins-good-0001-rtpbin-pipeline-gets-an-EOS-when-any-rtpsources-byes.patch: Removed.
27631 * gtk/patches/gst-plugins-good-0002-rtpbin-avoid-generating-errors-when-rtcp-messages-ar.patch: Removed.
27632 * gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch:
27633 * gtk/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
27634 * gtk/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
27636 2017-05-03 Saam Barati <sbarati@apple.com>
27638 How we build polymorphic cases is wrong when making a call from Wasm
27639 https://bugs.webkit.org/show_bug.cgi?id=171527
27641 Reviewed by JF Bastien.
27643 * Scripts/run-jsc-stress-tests:
27645 2017-05-03 Eric Carlson <eric.carlson@apple.com>
27647 [MediaStream] Allow host application to enable/disable media capture
27648 https://bugs.webkit.org/show_bug.cgi?id=171292
27649 <rdar://problem/31821492>
27651 Reviewed by Jer Noble.
27653 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27654 * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
27655 (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
27656 (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
27657 (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
27658 (MediaCaptureDisabledTest::SetUp):
27659 (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
27661 * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
27663 2017-05-03 John Wilander <wilander@apple.com>
27665 Resource Load Statistics: Remove all statistics for modifiedSince website data removals
27666 https://bugs.webkit.org/show_bug.cgi?id=171584
27667 <rdar://problem/24702576>
27669 Reviewed by Brent Fulgham.
27671 New function to call the clear function that takes a modifiedSince parameter.
27673 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
27674 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
27675 (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
27676 * WebKitTestRunner/InjectedBundle/TestRunner.h:
27677 * WebKitTestRunner/TestController.cpp:
27678 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
27679 * WebKitTestRunner/TestController.h:
27680 * WebKitTestRunner/TestInvocation.cpp:
27681 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
27683 2017-05-03 Commit Queue <commit-queue@webkit.org>
27685 Unreviewed, rolling out r216160 and r216161.
27686 https://bugs.webkit.org/show_bug.cgi?id=171640
27688 These changes broke the iOS build. (Requested by mlewis13 on
27691 Reverted changesets:
27693 "[MediaStream] Allow host application to enable/disable media
27695 https://bugs.webkit.org/show_bug.cgi?id=171292
27696 http://trac.webkit.org/changeset/216160
27698 "[MediaStream] Allow host application to enable/disable media
27700 https://bugs.webkit.org/show_bug.cgi?id=171292
27701 http://trac.webkit.org/changeset/216161
27703 2017-05-03 Eric Carlson <eric.carlson@apple.com>
27705 [MediaStream] Allow host application to enable/disable media capture
27706 https://bugs.webkit.org/show_bug.cgi?id=171292
27707 <rdar://problem/31821492>
27709 Reviewed by Jer Noble.
27711 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27712 * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
27713 (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
27714 (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
27715 (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
27716 (MediaCaptureDisabledTest::SetUp):
27717 (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
27719 * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
27721 2017-04-26 Jiewen Tan <jiewen_tan@apple.com>
27723 [WebCrypto] Add an api test for testing wrapping/unwrapping serialized crypto keys
27724 https://bugs.webkit.org/show_bug.cgi?id=171350
27725 <rdar://problem/28600836>
27727 Patched by Brady Eidson.
27729 Reviewed by Brent Fulgham.
27731 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27732 * TestWebKitAPI/Tests/WebKit2/NavigationClientDefaultCrypto.cpp: Added.
27733 (TestWebKitAPI::runJavaScriptAlert):
27734 (TestWebKitAPI::decidePolicyForNavigationAction):
27735 (TestWebKitAPI::decidePolicyForNavigationResponse):
27736 (TestWebKitAPI::TEST):
27737 * TestWebKitAPI/Tests/WebKit2/navigation-client-default-crypto.html: Added.
27739 2017-05-03 Simon Fraser <simon.fraser@apple.com>
27741 Have WKWebView call _updateVisibleContentRects for the current transaction if possible, rather than always delaying
27742 https://bugs.webkit.org/show_bug.cgi?id=171619
27743 https://bugs.webkit.org/show_bug.cgi?id=170195
27745 Reviewed by Tim Horton.
27747 Re-enable WebKit2.ResizeWithHiddenContentDoesNotHang.
27749 * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
27752 2017-05-03 Michael Catanzaro <mcatanzaro@igalia.com>
27754 YouTube user agent quirk breaks new YouTube
27755 https://bugs.webkit.org/show_bug.cgi?id=171603
27757 Reviewed by Carlos Garcia Campos.
27759 Remove the YouTube quirk test.
27761 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
27762 (TestWebKitAPI::TEST):
27764 2017-05-03 Said Abou-Hallawa <sabouhallawa@apple.com>
27766 Async image decoding should be disabled for snapshots, printing and preview
27767 https://bugs.webkit.org/show_bug.cgi?id=171467
27769 Reviewed by Simon Fraser.
27771 Add a API test for snapshotting with large images. Ensure the images are
27772 drawn correctly which implies they should have been synchronously decoded.
27774 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27775 * TestWebKitAPI/Tests/WebKit2/large-red-square-image.html: Added.
27776 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm:
27779 2017-05-03 Chris Dumez <cdumez@apple.com>
27781 [WK2] Extend processDidCrash delegate to let the client know the reason for the crash
27782 https://bugs.webkit.org/show_bug.cgi?id=171565
27783 <rdar://problem/31204417>
27785 Reviewed by Sam Weinig.
27787 Add API test coverage.
27789 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27790 * TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp: Added.
27791 (TestWebKitAPI::didFinishNavigation):
27792 (TestWebKitAPI::didCrashWithReason):
27793 (TestWebKitAPI::TEST):
27795 2017-05-02 David Kilzer <ddkilzer@apple.com>
27797 check-webkit-style should also keep js-test-post[-async].js in sync
27798 <https://webkit.org/b/171568>
27800 Reviewed by Joseph Pecoraro.
27802 * Scripts/webkitpy/style/checker.py:
27803 (_NEVER_SKIPPED_JS_FILES): Add new list that just contains
27804 JavaScript files not to be skipped.
27805 (_NEVER_SKIPPED_FILES): Update to use _NEVER_SKIPPED_JS_FILES.
27806 (CheckerDispatcher._create_checker): Update to use
27807 _NEVER_SKIPPED_JS_FILES.
27809 * Scripts/webkitpy/style/checkers/jstest.py:
27810 (ALL_JS_TEST_FUNCTION_FILES): Rename from ALL_JS_TEST_FILES.
27811 This is the list of files containing functions that need to be
27813 (KEEP_JS_TEST_FILES_IN_SYNC): Change to list-of-lists format so
27814 we can keep more sets of files in sync between
27815 LayoutTests/resources and LayoutTests/http/tests/resources.
27816 (JSTestChecker.check): Update to use KEEP_JS_TEST_FILES_IN_SYNC
27817 as list of lists. Update for ALL_JS_TEST_FUNCTION_FILES rename.
27818 (JSTestChecker.check_js_test_files): Add 'file_group' argument
27819 for list of files to check instead of using
27820 KEEP_JS_TEST_FILES_IN_SYNC.
27821 (JSTestChecker.check_js_test_functions): Update for
27822 ALL_JS_TEST_FUNCTION_FILES rename.
27824 * Scripts/webkitpy/style/checkers/jstest_unittest.py:
27825 (JSTestCheckerTestCase):
27826 (JSTestCheckerTestCase.test_map_functions_to_dict):
27827 - Add test case for map_functions_to_dict() in jstest.py.
27829 2017-05-02 Aakash Jain <aakash_jain@apple.com>
27831 ews should indicate in logs when it fails to fetch the attachment
27832 https://bugs.webkit.org/show_bug.cgi?id=171583
27834 Reviewed by Alexey Proskuryakov.
27836 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
27837 (Bugzilla.fetch_attachment): Added log statement.
27839 2017-05-02 David Kilzer <ddkilzer@apple.com>
27841 Rolling out jstest_unittest.py so it can be reviewed
27844 check-webkit-style should keep JavaScript test functions in sync
27845 <https://webkit.org/b/171424>
27847 * Scripts/webkitpy/style/checkers/jstest_unittest.py: Remove.
27849 2017-05-02 David Kilzer <ddkilzer@apple.com>
27851 check-webkit-style should keep JavaScript test functions in sync
27852 <https://webkit.org/b/171424>
27854 Reviewed by Joseph Pecoraro.
27856 Add a new JSTestChecker for check-webkit-style that keeps these
27859 LayoutTests/http/tests/resources/js-test-pre.js
27860 LayoutTests/resources/js-test-pre.js
27862 And keeps implementations of shouldBe(), shouldNotBe(),
27863 shouldNotThrow(), and shouldThrow() in sync across multiple
27864 files (with the ability to add more functions later):
27866 JSTests/stress/resources/standalone-pre.js
27867 LayoutTests/http/tests/resources/js-test-pre.js
27868 LayoutTests/resources/js-test-pre.js
27869 LayoutTests/resources/js-test.js
27870 LayoutTests/resources/standalone-pre.js
27872 * Scripts/webkitpy/style/checker.py: Remove unused import. Add
27873 import for JSTestChecker.
27874 (_NEVER_SKIPPED_FILES): Add array of file names that are never
27875 skipped regardless of other rules.
27876 (_all_categories): Add JSTestChecker categories.
27877 (CheckerDispatcher.should_skip_without_warning): Use
27878 _NEVER_SKIPPED_FILES.
27879 (CheckerDispatcher._create_checker): Return JSTestChecker for
27880 the files to check.
27882 * Scripts/webkitpy/style/checkers/jstest.py: Add.
27883 (map_functions_to_dict): Parse JavaScript source by splitting on
27884 /^function\s+/ regex. This is good enough for the sanity checks
27885 to keep function implementations in sync.
27886 (strip_blank_lines_and_comments): Strips blank lines and lines
27887 with comments from the end of a chunk of text representing a
27889 (JSTestChecker): New checker.
27890 (JSTestChecker.__init__):
27891 (JSTestChecker.check):
27892 (JSTestChecker.check_js_test_files): Keeps whole files in sync.
27893 (JSTestChecker.check_js_test_functions): Keeps individual
27896 * Scripts/webkitpy/style/checkers/jstest_unittest.py: Add test
27899 (JSTestTestCase.test_map_functions_to_dict):
27901 2017-05-02 Joanmarie Diggs <jdiggs@igalia.com>
27903 AX: Update implementation of aria-orientation
27904 https://bugs.webkit.org/show_bug.cgi?id=171166
27906 Reviewed by Chris Fleizach.
27908 Return "AXUnknownOrientation" when ATK_STATE_VERTICAL and ATK_STATE_HORIZONTAL
27909 are both absent from the state set. Before we were returning an empty string
27910 which was not consistent with what the Mac port does, thus making shared tests
27913 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
27914 (WTR::AccessibilityUIElement::orientation):
27916 2017-05-01 David Kilzer <ddkilzer@apple.com>
27918 Stop using sprintf() in JavaScriptCore debugger
27919 <https://webkit.org/b/171512>
27921 Reviewed by Keith Miller.
27923 * Scripts/webkitpy/style/checker.py:
27924 (_PATH_RULES_SPECIFIER): Ignore some formatting checkers since
27925 Source/JavaScriptCore/disassembler/udis86/ is generated code.
27927 2017-05-01 Timothy Horton <timothy_horton@apple.com>
27929 Expose viewport-fit instead of clip-to-safe-area
27930 https://bugs.webkit.org/show_bug.cgi?id=171503
27931 <rdar://problem/31918249>
27933 Reviewed by Simon Fraser.
27935 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
27936 (WTR::UIScriptController::setSafeAreaInsets):
27937 (WTR::UIScriptController::setObscuredInsets): Deleted.
27938 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
27939 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
27940 (WTR::UIScriptController::setSafeAreaInsets):
27941 (WTR::UIScriptController::setObscuredInsets): Deleted.
27942 * TestRunnerShared/UIScriptContext/UIScriptController.h:
27943 * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
27944 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
27945 (-[TestRunnerWKWebView setOverrideSafeAreaInsets:]):
27946 (-[TestRunnerWKWebView _safeAreaInsetsForFrame:inSuperview:]):
27947 * WebKitTestRunner/ios/TestControllerIOS.mm:
27948 (WTR::TestController::platformResetStateToConsistentValues):
27949 * WebKitTestRunner/ios/UIKitSPI.h:
27950 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
27951 (WTR::UIScriptController::setSafeAreaInsets):
27952 (WTR::UIScriptController::setObscuredInsets): Deleted.
27953 Expose a safe area inset setter instead of obscured insets.
27955 2017-05-01 Wenson Hsieh <wenson_hsieh@apple.com>
27957 Unreviewed, fix the build on a new internal SDK
27959 Replace usages of NSItemProviderRepresentationVisibilityAll with
27960 UIItemProviderRepresentationOptionsVisibilityAll.
27962 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
27963 (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
27964 (TestWebKitAPI::TEST):
27966 2017-05-01 David Kilzer <ddkilzer@apple.com>
27968 [Cocoa] Replace uses of [get…Class() alloc] in TestWebKitAPI
27969 <https://webkit.org/b/171493>
27971 Reviewed by Dan Bernstein.
27973 * TestWebKitAPI/Tests/WebKit/ios/AudioSessionCategoryIOS.mm:
27974 Remove UIKit soft-link since TestWebKitAPI links to
27976 (TestWebKitAPI::WebKit1_AudioSessionCategoryIOS_Test): Use
27977 UIWindow and UIWebView classes directly.
27978 * TestWebKitAPI/Tests/WebKit2Cocoa/RequiresUserActionForPlayback.mm:
27979 Remove UIKit soft-link since TestWebKitAPI links to
27981 (RequiresUserActionForPlaybackTest::createWebView): Use UIWindow
27984 2017-05-01 Brady Eidson <beidson@apple.com>
27986 Update names in WKURLSchemeHandler/WKURLSchemeHandlerTask APIs.
27987 <rdar://problem/31824838> and https://bugs.webkit.org/show_bug.cgi?id=171508
27989 Reviewed by Andy Estes.
27991 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
27992 (-[SchemeHandler webView:startURLSchemeTask:]):
27993 (-[SchemeHandler webView:stopURLSchemeTask:]):
27994 (-[SchemeHandler webView:startTask:]): Deleted.
27995 (-[SchemeHandler webView:stopTask:]): Deleted.
27997 2017-05-01 Jason Marcell <jmarcell@apple.com>
27999 Add a new function for getting the Git hash for a pure git directory.
28000 https://bugs.webkit.org/show_bug.cgi?id=171450
28002 Reviewed by David Kilzer.
28004 * Scripts/VCSUtils.pm:
28005 (gitHashForDirectory):
28007 2017-05-01 Joanmarie Diggs <jdiggs@igalia.com>
28009 [ATK] Expose values of aria-rowcount, aria-colcount, aria-rowindex, aria-colindex, aria-rowspan, and aria-colspan as object attributes
28010 https://bugs.webkit.org/show_bug.cgi?id=171496
28012 Reviewed by Chris Fleizach.
28014 Add new attribute names so that the values of the object attributes can be tested.
28016 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
28017 (WTR::AccessibilityUIElement::numberAttributeValue):
28019 2017-05-01 Beth Dakin <bdakin@apple.com>
28021 On-screen panel for candidate bar is in the wrong place when the caret is at the
28022 start of a paragraph
28023 https://bugs.webkit.org/show_bug.cgi?id=171453
28024 -and corresponding-
28025 rdar://problem/29779764
28027 Reviewed by Tim Horton.
28029 This test hard-codes the y-coordinate for the expected candidateRect.
28030 * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewCandidateTests.mm:
28033 2017-05-01 David Kilzer <ddkilzer@apple.com>
28035 check-webkit-style: Enable sprintf(), strcat(), strcpy() and printf() format checks
28036 <https://webkit.org/b/171494>
28038 Reviewed by Brent Fulgham.
28040 * Scripts/webkitpy/style/checkers/cpp.py:
28041 (check_language): Change categories for certain checkers from
28042 'runtime/printf' to 'security/printf' so they are no longer
28044 (CppChecker.categories): Add 'security/printf'.
28045 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
28046 (CppStyleTest.test_insecure_string_operations): Add new test for
28047 sprintf(), strcat() and strcpy().
28048 (CppStyleTest.test_format_strings): Update test results for new
28049 'security/printf' category use.
28051 2017-05-01 Joanmarie Diggs <jdiggs@igalia.com>
28053 AX: [GTK] Add support to query for aria-current
28054 https://bugs.webkit.org/show_bug.cgi?id=149016
28056 Reviewed by Chris Fleizach.
28058 Implement support for "AXARIACurrent" string attribute value.
28060 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
28062 2017-05-01 David Kilzer <ddkilzer@apple.com>
28064 REGRESSION (r216000): test-webkitpy fails after adding new soft-linked class checker
28069 [Cocoa] Have check-webkit-style advise against use of [get…Class() alloc]
28070 https://bugs.webkit.org/show_bug.cgi?id=171486
28072 * Scripts/webkitpy/style/checkers/cpp.py:
28073 (check_soft_link_class_alloc): Use (\w+) instead of ([^\s]+) to
28074 match and capture the function name. The latter also mistakenly
28075 matches C-preprocessor directives.
28076 (CppChecker.categories): Add 'runtime/soft-linked-alloc', which
28077 is a requirement for the CppChecker class.
28079 2017-05-01 Carlos Garcia Campos <cgarcia@igalia.com>
28081 [GTK] Add automation session API
28082 https://bugs.webkit.org/show_bug.cgi?id=171428
28084 Reviewed by Carlos Alberto Lopez Perez.
28086 Add an automation mode to MiniBrowser using the new API and add a unit test too.
28088 * MiniBrowser/gtk/BrowserWindow.c:
28089 (webViewTitleChanged):
28090 (webViewDecidePolicy):
28092 (openPrivateWindow):
28093 (browserWindowFinalize):
28094 (browser_window_init):
28095 (browser_window_get_or_create_web_view_for_automation):
28096 * MiniBrowser/gtk/BrowserWindow.h:
28097 * MiniBrowser/gtk/main.c:
28098 (createBrowserTab):
28099 (createWebViewForAutomationCallback):
28100 (automationStartedCallback):
28102 * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
28103 * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp: Added.
28104 (testAutomationSessionRequestSession):
28108 2017-04-30 Dan Bernstein <mitz@apple.com>
28110 [Cocoa] Have check-webkit-style advise against use of [get…Class() alloc]
28111 https://bugs.webkit.org/show_bug.cgi?id=171486
28113 Reviewed by Sam Weinig.
28115 * Scripts/webkitpy/style/checkers/cpp.py:
28116 (check_soft_link_class_alloc): Added. Looks for [get…Class() alloc] and suggests
28117 alloc…Instance() instead.
28118 (check_style): Invoke new check.
28120 2017-04-30 Brady Eidson <beidson@apple.com>
28122 More fixing after r215991
28123 https://bugs.webkit.org/show_bug.cgi?id=171483
28125 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
28128 2017-04-30 Brady Eidson <beidson@apple.com>
28130 Updates to _WKWebsiteDataStoreConfiguration cookie storage location SPI.
28131 <rdar://problem/31906397> and https://bugs.webkit.org/show_bug.cgi?id=171483
28133 Reviewed by Geoff Garen (and kind of Andy Estes).
28135 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
28138 2017-04-30 Joanmarie Diggs <jdiggs@igalia.com>
28140 [ATK] Implement support for aria-autocomplete
28141 https://bugs.webkit.org/show_bug.cgi?id=171167
28143 Reviewed by Chris Fleizach.
28145 Add "AXSupportsAutoCompletion" attribute so the presence of
28146 ATK_STATE_SUPPORTS_AUTOCOMPLETION can be tested.
28148 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
28149 (WTR::AccessibilityUIElement::boolAttributeValue):
28151 2017-04-30 Joanmarie Diggs <jdiggs@igalia.com>
28153 [ATK] ARIA treegrid role should be exposed as ATK_ROLE_TREE_TABLE; not ATK_ROLE_TABLE
28154 https://bugs.webkit.org/show_bug.cgi?id=171170
28156 Reviewed by Chris Fleizach.
28158 Add "AXInterfaceTable" attribute to test which elements implement AtkTable.
28160 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
28161 (WTR::AccessibilityUIElement::boolAttributeValue):
28163 2017-04-30 Joanmarie Diggs <jdiggs@igalia.com>
28165 [ATK] Emit object:state-changed:busy event when aria-busy value changes
28166 https://bugs.webkit.org/show_bug.cgi?id=171181
28168 Reviewed by Chris Fleizach.
28170 Add handler for AXElementBusyChanged notifications.
28172 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
28174 2017-04-29 Aakash Jain <aakash_jain@apple.com>
28176 Use PEP8 style guide for raising exceptions in webkitpy.
28177 https://bugs.webkit.org/show_bug.cgi?id=171439
28179 Reviewed by Daniel Bates.
28181 As per https://www.python.org/dev/peps/pep-0008/
28182 "When raising an exception in Python 2, use raise ValueError('message')
28183 instead of the older form raise ValueError, 'message'"
28185 * Scripts/webkitpy/common/net/irc/ircbot.py: Using new style for raising exceptions.
28186 * Scripts/webkitpy/common/thread/messagepump.py: Same.
28187 * Scripts/webkitpy/tool/bot/queueengine.py: Same.
28188 * Scripts/webkitpy/tool/commands/queues.py: Same.
28189 * Scripts/webkitpy/tool/commands/stepsequence.py: Same.
28190 * Scripts/webkitpy/tool/multicommandtool.py: Same.
28191 * Scripts/webkitpy/tool/steps/abstractstep.py: Same.
28193 2017-04-28 Simon Fraser <simon.fraser@apple.com>
28195 Add system trace points for Document::updateTouchEventRegions()
28196 https://bugs.webkit.org/show_bug.cgi?id=171470
28197 rdar://problem/31901239
28199 Reviewed by Tim Horton.
28201 Add trace markers for updateTouchEventRegions.
28203 * Tracing/SystemTracePoints.plist:
28205 2017-04-28 Jonathan Bedard <jbedard@apple.com>
28207 webkitpy: Add apple_additions to webkitpy to insert Internal tools
28208 https://bugs.webkit.org/show_bug.cgi?id=170461
28209 <rdar://problem/31433077>
28211 Reviewed by Daniel Bates.
28213 Allow a package to be pulled in by run-webkit-tests which provides an interface to
28214 run layout tests on an iOS device. If this package is not available, throw an
28215 exception when attempting to run layout tests on an iOS device.
28217 * Scripts/webkitpy/port/config.py:
28218 (apple_additions): Import apple_additions package.
28219 * Scripts/webkitpy/port/device.py:
28220 (Device.install_dylibs): Pass a directory with all the frameworks and dylibs to be
28221 installed on a device.
28222 (Device.prepare_for_testing): Pass a list of ports to forward from the device to the
28223 host, the bundle id of the app to be used for testing and a path to the layout test
28224 directory to be mounted on the device.
28225 (Device.finished_testing):
28226 * Scripts/webkitpy/port/factory.py:
28227 (platform_options): Add apple_additions platform options if apple_additions exists.
28228 * Scripts/webkitpy/port/ios.py:
28229 (IOSPort.setup_test_run): Install dylibs and frameworks on the device, pass ports
28230 to forward, the bundle ID of the testing app and the layout tests directory to
28232 * Scripts/webkitpy/port/ios_device.py:
28234 (IOSDevicePort.default_child_processes): Query apple_additions for the number of child
28235 processes to be run.
28236 (IOSDevicePort.using_multiple_devices): Always assume multiple devices are used. When
28237 a single device is used, it is still accessed through an array.
28238 (IOSDevicePort._device_for_worker_number_map): Query apple_additions for the device
28239 for worker number map.
28240 (IOSDevicePort._driver_class): Query apple_additions for the test driver.
28241 (IOSDevicePort.determine_full_port_name): Use class variable over hard-coded string.
28242 (IOSDevicePort.check_for_leaks): No implementation for iOSDevicePort.
28243 (IOSDevicePort.look_for_new_crash_logs): Ditto.
28244 (IOSDevicePort.look_for_new_samples): Ditto.
28245 (IOSDevicePort.sample_process): Ditto.
28246 (IOSDevicePort._build_driver_flags): Use class variable over hard-coded string.
28247 (IOSDevicePort._create_devices): Check that devices are available for testing and check
28248 that we have enough devices for each child process.
28249 (IOSDevicePort.clean_up_test_run): Have apple_additions preform any needed clean up.
28250 * Scripts/webkitpy/port/ios_device_unittest.py:
28251 (IOSDeviceTest.test_operating_system):
28252 (IOSDeviceTest.test_spindump): Override method from DarwinTest.
28253 (IOSDeviceTest.test_sample_process): Ditto.
28254 (IOSDeviceTest.test_sample_process_exception): Ditto.
28256 2017-04-28 Wenson Hsieh <wenson_hsieh@apple.com>
28258 Fix and re-enable data interaction unit tests
28259 https://bugs.webkit.org/show_bug.cgi?id=171446
28260 <rdar://problem/31820646>
28262 Reviewed by Tim Horton.
28264 Enables all DataInteractionTests, and adjusts file upload tests to no longer write to a temporary file before
28265 registering with the UIItemProvider, and instead just register data directly via
28266 -registerDataRepresentationForTypeIdentifier:visibility:loadHandler:.
28268 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
28269 (TestWebKitAPI::TEST):
28270 (temporaryURLForDataInteractionFileLoad): Deleted.
28271 (cleanUpDataInteractionTemporaryPath): Deleted.
28272 (-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]): Deleted.
28273 * TestWebKitAPI/ios/DataInteractionSimulator.h:
28274 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
28276 2017-04-28 Brady Eidson <beidson@apple.com>
28278 Teach the DatabaseProcess to be fully SessionID aware
28279 https://bugs.webkit.org/show_bug.cgi?id=171451
28281 Reviewed by Geoffrey Garen.
28283 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
28285 2017-04-28 Jonathan Bedard <jbedard@apple.com>
28287 Unreviewed follow-up to r214705.
28289 shut.copytree will fail if given a file as an argument instead of a directory.
28291 * Scripts/webkitpy/common/system/filesystem.py:
28292 (FileSystem.copy_to_base_host): Use copytree when source is a directory and copyfile
28293 when source is a file.
28294 (FileSystem.copy_from_base_host): Ditto.
28296 2017-04-28 Chris Dumez <cdumez@apple.com>
28298 Update DOMTokenList.replace() to match the latest DOM specification
28299 https://bugs.webkit.org/show_bug.cgi?id=171388
28301 Reviewed by Alex Christensen.
28303 Add API test coverage for new Vector API.
28305 * TestWebKitAPI/Tests/WTF/Vector.cpp:
28306 (TestWebKitAPI::TEST):
28308 2017-04-28 Jonathan Bedard <jbedard@apple.com>
28310 WebKitTestRunner/DumpRenderTree prevent device from sleeping
28311 https://bugs.webkit.org/show_bug.cgi?id=170731
28313 Reviewed by Alex Christensen.
28315 While running layout tests on a device, the device should not be put asleep.
28317 * DumpRenderTree/mac/DumpRenderTree.mm:
28318 (dumpRenderTree): Disable idle timer.
28319 * WebKitTestRunner/ios/TestControllerIOS.mm:
28320 (WTR::TestController::platformInitialize): Ditto.
28322 2017-04-28 Brady Eidson <beidson@apple.com>
28324 Start of support for multiple WebsiteDataStore/SessionIDs per process
28325 https://bugs.webkit.org/show_bug.cgi?id=171422
28327 Reviewed by Geoffrey Garen.
28329 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
28332 2017-04-28 Youenn Fablet <youenn@apple.com>
28334 Adding a runtime flag specific to MediaDevices
28335 https://bugs.webkit.org/show_bug.cgi?id=171433
28337 Reviewed by Geoffrey Garen.
28339 Updating WTR and DRT as peer connection and media stream runtime flags are enabled by default.
28340 Setting media devices runtime flag to true for WTR and DRT.
28342 * DumpRenderTree/mac/DumpRenderTree.mm:
28343 (enableExperimentalFeatures):
28344 (resetWebPreferencesToConsistentValues):
28345 * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp:
28346 (TestWebKitAPI::TEST):
28347 * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
28348 (TestWebKitAPI::TEST):
28349 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
28350 (WTR::InjectedBundle::beginTesting):
28351 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
28352 (WTR::TestRunner::setMediaDevicesEnabled):
28353 (WTR::TestRunner::setMediaStreamEnabled): Deleted.
28354 (WTR::TestRunner::setPeerConnectionEnabled): Deleted.
28355 * WebKitTestRunner/InjectedBundle/TestRunner.h:
28356 * WebKitTestRunner/TestController.cpp:
28357 (WTR::TestController::resetPreferencesToConsistentValues):
28359 2017-04-28 Dean Jackson <dino@apple.com>
28361 [WebGPU] Label MTLCommandQueues with a prefix for internal telemetry
28362 https://bugs.webkit.org/show_bug.cgi?id=171441
28363 <rdar://problem/31826915>
28365 Reviewed by Tim Horton.
28367 Add an API test for GPUCommandQueue, exercising creation
28368 and setting the label.
28370 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
28371 * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Added.
28372 (TestWebKitAPI::TEST_F):
28374 2017-04-28 Joanmarie Diggs <jdiggs@igalia.com>
28376 [ATK] aria-modal="true" should be exposed via ATK_STATE_MODAL
28377 https://bugs.webkit.org/show_bug.cgi?id=171188
28379 Reviewed by Chris Fleizach.
28381 Add "AXModal" attribute string so that we can test the state's exposure.
28383 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
28384 (WTR::AccessibilityUIElement::boolAttributeValue):
28386 2017-04-28 Joanmarie Diggs <jdiggs@igalia.com>
28388 [ATK] GridCellRole should implement AtkTableCell (regression?)
28389 https://bugs.webkit.org/show_bug.cgi?id=171179
28391 Reviewed by Chris Fleizach.
28393 Add new "AXInterfaceTableCell" attribute so that we can test whether or
28394 not there is an implementation of AtkTableCell (i.e. without risking false
28395 negatives from bugs in the interface's implementation).
28397 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
28398 (WTR::AccessibilityUIElement::boolAttributeValue):
28400 2017-04-27 Carlos Garcia Campos <cgarcia@igalia.com>
28402 Move UUID from WebCore/platform to WTF
28403 https://bugs.webkit.org/show_bug.cgi?id=171372
28405 Reviewed by Michael Catanzaro.
28407 * WebKitTestRunner/TestController.cpp:
28409 2017-04-27 Alex Christensen <achristensen@webkit.org>
28411 Add stub SPI for setting cookie storage path on _WKWebsiteDataStoreConfiguration
28412 https://bugs.webkit.org/show_bug.cgi?id=171399
28414 Reviewed by Brady Eidson.
28416 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.html:
28417 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
28420 2017-04-27 Ryan Haddad <ryanhaddad@apple.com>
28422 Disable flaky API test WKWebView.SetOverrideContentSecurityPolicyWithEmptyStringForPageWithCSP.
28423 https://bugs.webkit.org/show_bug.cgi?id=167914
28425 Unreviewed test gardening.
28427 * TestWebKitAPI/Tests/WebKit2Cocoa/OverrideContentSecurityPolicy.mm:
28430 2017-04-26 Saam Barati <sbarati@apple.com>
28432 Add some more testing modes for Wasm tests now that we have tier up
28433 https://bugs.webkit.org/show_bug.cgi?id=171360
28435 Reviewed by Keith Miller.
28437 Lets enable the FTL on all Wasm tests. Let's also run each
28438 test with and without CJIT.
28440 * Scripts/run-jsc-stress-tests:
28442 2017-04-26 Aakash Jain <aakash_jain@apple.com>
28444 JSC EWS Patch Relevance skips few JSC scripts
28445 https://bugs.webkit.org/show_bug.cgi?id=171351
28447 Reviewed by Alexey Proskuryakov.
28449 * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
28450 (CheckPatchRelevance): Added few jsc related scripts.
28452 2017-04-26 Youenn Fablet <youenn@apple.com>
28454 Test importer should delete obsolete files based on w3c-import.log
28455 https://bugs.webkit.org/show_bug.cgi?id=171348
28457 Reviewed by Chris Dumez.
28459 * Scripts/webkitpy/w3c/test_importer.py:
28460 (TestImporter.do_import): Removing dangling -expected.txt files in regular import mode.
28461 (TestImporter.remove_deleted_files): Fixing according w3c-import.log current format.
28462 * Scripts/webkitpy/w3c/test_importer_unittest.py:
28463 (test_remove_obsolete_content):
28465 2017-04-26 Jonathan Bedard <jbedard@apple.com>
28467 REGRESSION (r213926): We're sometimes trying to start WebKitTestRunner without proper DYLD variables
28468 <rdar://problem/31816459>
28470 Unreviewed infrastructure fix.
28472 Some of our iOS Simulator bots are slow and will register crashes due to an incorrect
28473 DYLD_FRAMEWORK_PATH when installing an app.
28475 * Scripts/webkitpy/port/ios.py:
28476 (IOSPort.setup_test_run): Pass DYLD_FRAMEWORK_PATH to app on install.
28478 2017-04-26 Joanmarie Diggs <jdiggs@igalia.com>
28480 [ATK] Elements with a defined, non-false value for aria-current should expose ATK_STATE_ACTIVE
28481 https://bugs.webkit.org/show_bug.cgi?id=171163
28483 Reviewed by Chris Fleizach.
28485 Add support for state-change notifications for ATK_STATE_ACTIVE.
28487 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
28489 2017-04-26 Jonathan Bedard <jbedard@apple.com>
28491 webkitpy: Teardown iOS Simulators on exit if managed Simulators are still running
28492 https://bugs.webkit.org/show_bug.cgi?id=171293
28494 Reviewed by Aakash Jain.
28496 We should make an effort to teardown simulators which we booted even when an exception is
28497 thrown while booting. Make some IOSSimulatorPort functions into static methods and register
28498 one of these functions to be run at exit to ensure any devices webkitpy is managing gets
28501 * Scripts/webkitpy/layout_tests/controllers/manager.py:
28502 (Manager._set_up_run): Rely on exit handlers to teardown, not exceptions.
28503 * Scripts/webkitpy/port/ios_simulator.py:
28504 (IOSSimulatorPort._teardown_managed_simulators): Function run on exit which will kill all
28505 iOS simulators and teardown and managed devices.
28506 (IOSSimulatorPort._create_simulators): Register teardown function.
28507 (IOSSimulatorPort.clean_up_test_run): Move device teardown to _teardown_managed_simulators.
28508 (IOSSimulatorPort._remove_device): Deleted.
28510 2017-04-26 Joanmarie Diggs <jdiggs@igalia.com>
28512 [ATK] Implement support for new ARIA 1.1 values of aria-haspopup
28513 https://bugs.webkit.org/show_bug.cgi?id=171164
28515 Reviewed by Chris Fleizach.
28517 hasPopup() should return whether or not ATK_STATE_HAS_POPUP is in the
28518 AtkStateSet; not what is found in the AtkObject's attributes.
28520 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
28521 (WTR::AccessibilityUIElement::hasPopup):
28523 2017-04-25 Alex Christensen <achristensen@webkit.org>
28525 Encoded filename should be decoded for WKContentExtension.identifier
28526 https://bugs.webkit.org/show_bug.cgi?id=171316
28528 Reviewed by Andy Estes.
28530 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
28531 * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm.
28533 * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm: Removed.
28535 2017-04-25 Alex Christensen <achristensen@webkit.org>
28537 REGRESSION(206450): WebKit2PlatformMouseEvent m_modifierFlags not set
28538 https://bugs.webkit.org/show_bug.cgi?id=171297
28539 <rdar://problem/31530719>
28541 Reviewed by Geoffrey Garen.
28543 * TestWebKitAPI/PlatformWebView.h:
28544 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
28545 * TestWebKitAPI/Tests/WebKit2/EventModifiers.cpp: Added.
28546 (TestWebKitAPI::didFinishLoadForFrame):
28547 (TestWebKitAPI::mouseDidMoveOverElement):
28548 (TestWebKitAPI::setClients):
28549 (TestWebKitAPI::TEST):
28550 * TestWebKitAPI/mac/PlatformWebViewMac.mm:
28551 (TestWebKitAPI::PlatformWebView::simulateRightClick):
28552 (TestWebKitAPI::PlatformWebView::simulateMouseMove):
28554 2017-04-25 Wenson Hsieh <wenson_hsieh@apple.com>
28556 Unreviewed, temporarily disable the data interaction unit tests.
28558 The API around data interaction will change significantly in the near future, and
28559 these tests will begin to fail. These will be reenabled once the bots are on an SDK
28560 that supports the updated data interaction API.
28562 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
28563 * TestWebKitAPI/ios/DataInteractionSimulator.h:
28564 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
28566 2017-04-25 Brent Fulgham <bfulgham@apple.com>
28568 Limit allowed size of document.title to avoid locking WebKit clients
28569 https://bugs.webkit.org/show_bug.cgi?id=165113
28570 <rdar://problem/28324389>
28572 Reviewed by Darin Adler.
28574 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
28575 * TestWebKitAPI/Tests/WebKit2/LimitTitleSize.cpp: Added.
28576 * TestWebKitAPI/Tests/WebKit2/set-long-title.html: Added.
28577 * TestWebKitAPI/Tests/mac/LimitTitleSize.mm: Added.
28579 2017-04-25 John Wilander <wilander@apple.com>
28581 Resource Load Statistics: Introduce shorter time-to-live for cookie partition whitelisting
28582 https://bugs.webkit.org/show_bug.cgi?id=171295
28583 <rdar://problem/31823818>
28585 Reviewed by Brent Fulgham.
28587 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
28588 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
28589 (WTR::TestRunner::setStatisticsTimeToLiveCookiePartitionFree):
28590 (WTR::TestRunner::statisticsFireShouldPartitionCookiesHandler):
28591 (WTR::TestRunner::statisticsFireShouldPartitionCookiesHandlerForOneDomain):
28592 * WebKitTestRunner/InjectedBundle/TestRunner.h:
28593 * WebKitTestRunner/TestController.cpp:
28594 (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree):
28595 (WTR::TestController::statisticsFireShouldPartitionCookiesHandler):
28596 (WTR::TestController::statisticsFireShouldPartitionCookiesHandlerForOneDomain):
28597 * WebKitTestRunner/TestController.h:
28598 * WebKitTestRunner/TestInvocation.cpp:
28599 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
28601 2017-04-25 Tim Horton <timothy_horton@apple.com>
28603 Try to fix the WKTR build after r215758
28605 * Scripts/build-webkittestrunner:
28607 2017-04-25 Daniel Bates <dabates@apple.com>
28609 Remove more EFL code
28610 https://bugs.webkit.org/show_bug.cgi?id=171288
28612 Rubber-stamped by Simon Fraser.
28614 The EFL port is no longer in the WebKit OpenSource Project repository. Remove more code
28615 that was part of the EFL port.
28618 * DumpRenderTree/AccessibilityController.h:
28619 * DumpRenderTree/AccessibilityUIElement.cpp:
28620 (AccessibilityUIElement::getJSClass):
28621 * DumpRenderTree/AccessibilityUIElement.h:
28622 * DumpRenderTree/DumpRenderTree.h:
28623 * DumpRenderTree/cairo/PixelDumpSupportCairo.h:
28624 * ImageDiff/efl/ImageDiff.cpp: Removed.
28625 * MiniBrowser/efl/CMakeLists.txt: Removed.
28626 * MiniBrowser/efl/main.c: Removed.
28627 * Scripts/build-dumprendertree:
28628 * Scripts/build-jsc:
28629 * Scripts/build-webkit:
28630 * Scripts/build-webkittestrunner:
28631 * Scripts/run-minibrowser:
28632 * Scripts/update-webkit-libs-jhbuild:
28633 * Scripts/update-webkitefl-libs: Removed.
28634 * Scripts/webkitdirs.pm:
28635 (argumentsForConfiguration):
28636 (extractNonMacOSHostConfiguration):
28637 (executableProductDir):
28638 (builtDylibPathForName):
28639 (determinePortName):
28643 (wrapperPrefixIfNeeded):
28644 (generateBuildSystemFromCMakeProject):
28645 (buildCMakeProjectOrExit):
28647 * Scripts/webkitperl/FeatureList.pm:
28648 * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl:
28649 * Scripts/webkitpy/common/config/ports.py:
28650 (DeprecatedPort.port):
28651 (GtkWK2Port.run_webkit_tests_command):
28652 (EflWK2Port): Deleted.
28653 (EflWK2Port.build_webkit_command): Deleted.
28654 * Scripts/webkitpy/port/builders.py:
28655 * Scripts/webkitpy/port/efl.py: Removed.
28656 * Scripts/webkitpy/port/efl_unittest.py: Removed.
28657 * Scripts/webkitpy/port/factory.py:
28658 (platform_options):
28660 * Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
28661 (TestExpectationsTestCase.test_determine_port_from_expectations_path):
28662 * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
28663 (TestRebaselineTest.test_baseline_directory):
28664 (TestRebaselineExpectations.test_rebaseline_expectations):
28665 * TestWebKitAPI/PlatformEfl.cmake: Removed.
28666 * TestWebKitAPI/PlatformWebView.h:
28667 * TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
28668 (TestWebKitAPI::TEST):
28669 * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp: Removed.
28670 * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks_Bundle.cpp: Removed.
28671 * TestWebKitAPI/Tests/WebKit2/efl/WKViewScrollTo.cpp: Removed.
28672 * TestWebKitAPI/Tests/WebKit2/efl/scrollTo.html: Removed.
28673 * TestWebKitAPI/efl/InjectedBundleController.cpp: Removed.
28674 * TestWebKitAPI/efl/PlatformUtilities.cpp: Removed.
28675 * TestWebKitAPI/efl/PlatformWebView.cpp: Removed.
28676 * TestWebKitAPI/efl/main.cpp: Removed.
28677 * WebKitTestRunner/EventSenderProxy.h:
28678 * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
28679 * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
28680 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
28681 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
28682 * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
28683 (WTR::EventSendingController::contextClick):
28684 * WebKitTestRunner/InjectedBundle/TestRunner.h:
28685 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
28686 (WTR::AccessibilityNotificationHandler::setNotificationFunctionCallback):
28687 (WTR::AccessibilityNotificationHandler::removeAccessibilityNotificationHandler):
28688 * WebKitTestRunner/InjectedBundle/efl/ActivateFontsEfl.cpp: Removed.
28689 * WebKitTestRunner/InjectedBundle/efl/FontManagement.cpp: Removed.
28690 * WebKitTestRunner/InjectedBundle/efl/FontManagement.h: Removed.
28691 * WebKitTestRunner/InjectedBundle/efl/InjectedBundleEfl.cpp: Removed.
28692 * WebKitTestRunner/InjectedBundle/efl/TestRunnerEfl.cpp: Removed.
28693 * WebKitTestRunner/PlatformEfl.cmake: Removed.
28694 * WebKitTestRunner/PlatformWebView.h:
28695 * WebKitTestRunner/TestController.cpp:
28696 (WTR::TestController::resetStateToConsistentValues):
28697 * WebKitTestRunner/efl/EventSenderProxyEfl.cpp: Removed.
28698 * WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Removed.
28699 * WebKitTestRunner/efl/TestControllerEfl.cpp: Removed.
28700 * WebKitTestRunner/efl/main.cpp: Removed.
28701 * efl/install-dependencies: Removed.
28702 * efl/jhbuild-optional.modules: Removed.
28703 * efl/jhbuild.modules: Removed.
28704 * efl/jhbuildrc: Removed.
28705 * efl/patches/evas-fix-build-with-giflib5.patch: Removed.
28706 * efl/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Removed.
28707 * efl/patches/gst-libav.patch: Removed.
28708 * efl/patches/gst-plugins-base-rtp-rtcpbuffer-fix-typo-in-enum.patch: Removed.
28709 * efl/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
28710 * efl/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
28711 * efl/patches/openwebrtc-gst-plugins-clang-warning-fix.patch: Removed.
28712 * gtk/manifest.txt.in:
28714 2017-04-25 Daniel Bates <dabates@apple.com>
28716 [Cocoa][Win] Enable of X-Content-Type-Options: nosniff header
28717 https://bugs.webkit.org/show_bug.cgi?id=136452
28718 <rdar://problem/23412620>
28720 Reviewed by Brent Fulgham.
28722 Enable X-Content-Type-Options: nosniff on Mac, iOS and Windows platforms.
28724 * Scripts/webkitperl/FeatureList.pm: Also do not enable nosniff on EFL
28725 as the EFL port is no longer in the WebKit OpenSource repository.
28726 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
28728 2017-04-25 Zan Dobersek <zdobersek@igalia.com>
28730 Unreviewed follow-up to r215739 and r215740.
28732 * gtk/jhbuild.modules: List the libgcrypt patch that has to be applied.
28733 This (and r215740) was supposed to land in r215739, but I managed to
28734 specify the previous version of the patch.
28736 2017-04-25 Zan Dobersek <zdobersek@igalia.com>
28738 Unreviewed follow-up to r215739.
28740 * gtk/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Add the missing
28741 libgcrypt patch that enforces the use of /dev/urandom.
28743 2017-04-25 Zan Dobersek <zdobersek@igalia.com>
28745 [GTK] Add libgpg-error, libgcrypt libraries to JHBuild
28746 https://bugs.webkit.org/show_bug.cgi?id=171270
28748 Reviewed by Michael Catanzaro.
28750 * gtk/jhbuild.modules: Add the latest stable versions of libgpg-error and libgcrypt
28751 libraries to the webkitgtk-testing-dependencies metamodule. This will help people
28752 that use systems that don't yet provide libgcrypt >= 1.7.0.
28754 2017-04-25 Carlos Alberto Lopez Perez <clopez@igalia.com>
28756 [GTK] Improve an unit test for the JHBuild wrapper.
28757 https://bugs.webkit.org/show_bug.cgi?id=168036
28759 Unreviewed follow-up patch after r215727
28761 * Scripts/webkitpy/port/base_unittest.py:
28762 (test_jhbuild_wrapper): Improve the unit test by ensuring the directory
28763 wasn't there before calling MockFileSystem.maybe_make_directory(), and
28764 also that it exists after calling it.
28766 2017-04-25 Carlos Alberto Lopez Perez <clopez@igalia.com>
28768 [GTK] ImageDiff should be run by jhbuild-wrapper in case of using jhbuild
28769 https://bugs.webkit.org/show_bug.cgi?id=168036
28771 Reviewed by Michael Catanzaro.
28773 Call ImageDiff with the JHBuild wrapper if we should use it.
28774 Also add some unit tests for the JHBuild wrapper feature.
28776 * Scripts/webkitpy/port/base.py:
28777 (Port._should_use_jhbuild): Use self._filesystem instead of os.path to allow mock testing.
28778 * Scripts/webkitpy/port/base_unittest.py:
28779 (test_jhbuild_wrapper): Add a test for port._should_use_jhbuild()
28780 * Scripts/webkitpy/port/image_diff.py:
28781 (ImageDiffer._start): The actual fix, use the wrapper if we should.
28782 * Scripts/webkitpy/port/image_diff_unittest.py: Removed. This two tests are now integrated in port_testcase
28783 * Scripts/webkitpy/port/port_testcase.py:
28785 (PortTestCase.test_diff_image): Test the command with wrapper and without it.
28786 (PortTestCase.test_diff_image_passed): Moved from image_diff_unittest.py
28787 (PortTestCase.test_diff_image_failed): Moved from image_diff_unittest.py
28789 2017-04-25 Wenson Hsieh <wenson_hsieh@apple.com>
28791 Support reading NSURL titles from the pasteboard when performing data interaction
28792 https://bugs.webkit.org/show_bug.cgi?id=171156
28793 <rdar://problem/31356937>
28795 Reviewed by Tim Horton.
28797 Adds a new unit test, DataInteractionTests.ExternalSourceTitledNSURL.
28799 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
28800 (TestWebKitAPI::TEST):
28802 2017-04-24 Wenson Hsieh <wenson_hsieh@apple.com>
28804 Respect fidelity order when reading web content from item providers
28805 https://bugs.webkit.org/show_bug.cgi?id=171155
28806 <rdar://problem/31356937>
28808 Reviewed by Tim Horton.
28810 Adds a new unit test (DataInteractionTests.RespectsExternalSourceFidelityRankings). See WebCore ChangeLog for
28813 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
28814 (TestWebKitAPI::TEST):
28816 2017-04-24 Carlos Alberto Lopez Perez <clopez@igalia.com>
28818 SyntaxError fix after r215702.
28819 https://bugs.webkit.org/show_bug.cgi?id=168944
28821 Unreviewed "build" fix.
28823 * BuildSlaveSupport/built-product-archive:
28824 (archiveBuiltProduct):
28826 2017-04-24 Jonathan Bedard <jbedard@apple.com>
28828 Package ImageDiff built with host SDK
28829 https://bugs.webkit.org/show_bug.cgi?id=168944
28830 <rdar://problem/30745642>
28832 Reviewed by David Kilzer.
28834 iOS Simulator and iOS device should archive the ImageDiff built for the host
28837 * BuildSlaveSupport/built-product-archive:
28838 (determineWebKitBuildDirectories): Add _hostBuildDirectory for iOS.
28839 (archiveBuiltProduct): Archive Mac products for iOS so that ImageDiff is included.
28841 2017-04-24 Keith Miller <keith_miller@apple.com>
28843 ThreadMessage API tests failing on release bots
28844 https://bugs.webkit.org/show_bug.cgi?id=171246
28846 Reviewed by Saam Barati.
28848 Need to make sure that C++ doesn't optimize away our spin loop.
28850 * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
28851 (runThreadMessageTest):
28854 2017-04-24 Alex Christensen <achristensen@webkit.org>
28856 Reduce copies and allocations in SharedBuffer::append
28857 https://bugs.webkit.org/show_bug.cgi?id=170956
28859 Reviewed by Andreas Kling.
28861 * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
28862 (TestWebKitAPI::TEST_F):
28864 2017-04-24 Carlos Garcia Campos <cgarcia@igalia.com>
28866 [GTK] Switch to use ENABLE_REMOTE_INSPECTOR instead of ENABLE_INSPECTOR_SERVER for the remote inspector
28867 https://bugs.webkit.org/show_bug.cgi?id=166680
28869 Reviewed by Michael Catanzaro.
28871 Update remote inspector unit tests.
28873 * TestWebKitAPI/Tests/WebKit2Gtk/InspectorTestServer.cpp:
28875 * TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
28876 (connectToInspectorServer):
28877 (waitUntilInspectorServerIsReady):
28879 (testInspectorServerPageList):
28882 2017-04-23 Youenn Fablet <youenn@apple.com>
28884 Add a tool to update expected.txt files from EWS bot results
28885 https://bugs.webkit.org/show_bug.cgi?id=169538
28887 Reviewed by Ryosuke Niwa.
28889 This script updates expected-txt files from bugzilla posted EWS results.
28890 It uses mac-wk2 as the generic baseline and adds platform-specific results if other ports
28891 have results different from the generic baseline.
28893 * Scripts/update-test-expectations-from-bugzilla: Added.
28894 * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py: Added.
28895 * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py: Added.
28896 * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py: Adding helper routines.
28898 2017-04-22 Youenn Fablet <youenn@apple.com>
28900 Add an option to import tip-of-tree WPT tests
28901 https://bugs.webkit.org/show_bug.cgi?id=171152
28903 Reviewed by Joseph Pecoraro.
28905 Adding a '-t' option to import tip of tree WPT tests.
28906 Updating importer based on the fact that csswg-test is no longer a thing.
28908 * Scripts/webkitpy/w3c/test_downloader.py:
28909 (TestDownloader.download_tests):
28910 * Scripts/webkitpy/w3c/test_importer.py:
28911 (configure_logging):
28912 (TestImporter.do_import):
28913 (TestImporter.write_import_log):
28915 2017-04-22 Wenson Hsieh <wenson_hsieh@apple.com>
28917 File inputs only accept UTI types that can be inserted into contenteditable areas when dropping
28918 https://bugs.webkit.org/show_bug.cgi?id=171177
28919 <rdar://problem/31765379>
28921 Reviewed by Andy Estes.
28923 Tests uploading a JSON file to a file input.
28925 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
28926 (TestWebKitAPI::TEST):
28928 2017-04-21 Wenson Hsieh <wenson_hsieh@apple.com>
28930 Support writing link titles to the pasteboard when beginning data interaction on a link
28931 https://bugs.webkit.org/show_bug.cgi?id=171154
28932 <rdar://problem/31356937>
28934 Reviewed by Andy Estes.
28936 Augments an existing unit test, DataInteractionTests.LinkToInput, to also check that the fetching the NSURL from
28937 the source UIItemProvider generated by performing data interaction results in an NSURL with the _title attribute
28938 matching the title of the link.
28940 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
28941 (TestWebKitAPI::TEST):
28943 2017-04-21 Michael Catanzaro <mcatanzaro@igalia.com>
28945 Unreviewed, rolling out r215608.
28947 Hundreds of test failures on GTK bot
28949 Reverted changeset:
28951 "Reduce copies and allocations in SharedBuffer::append"
28952 https://bugs.webkit.org/show_bug.cgi?id=170956
28953 http://trac.webkit.org/changeset/215608
28955 2017-04-21 Wenson Hsieh <wenson_hsieh@apple.com>
28957 [WK2] Add delegate hooks for overriding unhanded data interaction operations
28958 https://bugs.webkit.org/show_bug.cgi?id=171005
28959 <rdar://problem/31669646>
28961 Reviewed by Tim Horton.
28963 Adds a new API test checking that normal WebKit behavior when vending updated data interaction operations may
28964 be overridden, resulting in a data interaction operation being performed when it otherwise would not have. Also
28965 adjusts for some changes in WebKit2 (See WebKit2 ChangeLog for more details).
28968 DataInteractionTests.OverrideDataInteractionOperation
28970 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
28971 (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
28972 (TestWebKitAPI::TEST):
28973 * TestWebKitAPI/ios/DataInteractionSimulator.h:
28974 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
28975 (-[DataInteractionSimulator initWithWebView:]):
28976 (-[DataInteractionSimulator dealloc]):
28977 (-[DataInteractionSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
28978 (-[DataInteractionSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]):
28979 (-[DataInteractionSimulator webViewDidPerformDataInteractionControllerOperation:]): Deleted.
28981 2017-04-21 Ryan Haddad <ryanhaddad@apple.com>
28983 Temporarily disable two flaky API tests.
28985 Unreviewed test gardening.
28987 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
28989 * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
28992 2017-04-21 Keith Miller <keith_miller@apple.com>
28994 Unreviewed, rolling out r215634.
28996 underlying build issues should have been fixed
28998 Reverted changeset:
29000 "Unreviewed, rolling out r215620 and r215623."
29001 https://bugs.webkit.org/show_bug.cgi?id=171139
29002 http://trac.webkit.org/changeset/215634
29004 2017-04-21 Aakash Jain <aakash_jain@apple.com>
29006 Bubbles on dashboard doesn't turn red for test262 failures
29007 https://bugs.webkit.org/show_bug.cgi?id=171129
29009 Reviewed by Alexey Proskuryakov.
29011 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js: Added test262-test.
29013 2017-04-21 Commit Queue <commit-queue@webkit.org>
29015 Unreviewed, rolling out r215620 and r215623.
29016 https://bugs.webkit.org/show_bug.cgi?id=171139
29018 broke arm64 build (Requested by keith_miller on #webkit).
29020 Reverted changesets:
29022 "Add signaling API"
29023 https://bugs.webkit.org/show_bug.cgi?id=170976
29024 http://trac.webkit.org/changeset/215620
29026 "Unreviewed, fix Cloop build."
29027 http://trac.webkit.org/changeset/215623
29029 2017-04-20 Keith Miller <keith_miller@apple.com>
29032 https://bugs.webkit.org/show_bug.cgi?id=170976
29034 Reviewed by Filip Pizlo.
29036 Add tests for ThreadMessages.
29038 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29039 * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp: Added.
29040 (runThreadMessageTest):
29043 2017-04-20 Conrad Shultz <conrad_shultz@apple.com>
29045 commit-log-editor should respect the git editor if one is set
29046 https://bugs.webkit.org/show_bug.cgi?id=171085
29047 <rdar://problem/31745506>
29049 Reviewed by Daniel Bates.
29051 * Scripts/commit-log-editor:
29052 If Git is available, consider GIT_LOG_EDITOR and any global Git editor preference when
29053 deciding which editor to present. We examine the global editor preference since that may be
29054 set automatically by installers or third-party tools.
29056 2017-04-21 Alex Christensen <achristensen@webkit.org>
29058 Reduce copies and allocations in SharedBuffer::append
29059 https://bugs.webkit.org/show_bug.cgi?id=170956
29061 Reviewed by Andreas Kling.
29063 * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
29064 (TestWebKitAPI::TEST_F):
29066 2017-04-20 Konstantin Tokarev <annulen@yandex.ru>
29068 [cmake] Define FORWARDING_HEADERS_DIR in WebKitFS and use it everywhere
29069 https://bugs.webkit.org/show_bug.cgi?id=171071
29071 Reviewed by Michael Catanzaro.
29073 "${DERIVED_SOURCES_DIR}/ForwardingHeaders" path occurs very often in the
29074 build system files. GTK-specifc FORWARDING_HEADERS_DIR variable should
29075 be available for all ports.
29077 * DumpRenderTree/PlatformMac.cmake:
29078 * MiniBrowser/mac/CMakeLists.txt:
29079 * MiniBrowser/win/CMakeLists.txt:
29080 * TestWebKitAPI/PlatformJSCOnly.cmake:
29081 * TestWebKitAPI/PlatformMac.cmake:
29082 * TestWebKitAPI/PlatformWin.cmake:
29083 * WebKitTestRunner/PlatformMac.cmake:
29085 2017-04-20 Joseph Pecoraro <pecoraro@apple.com>
29087 Test262 bot does not go red with failures
29088 https://bugs.webkit.org/show_bug.cgi?id=171044
29090 Reviewed by Aakash Jain.
29092 The piped output of run-jsc-stress-tests is different from
29093 its non-piped output. Switch to parsing the correct output.
29095 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
29096 (RunTest262Tests.countFailures):
29097 Just count the number of lines that start with "FAIL:".
29099 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
29100 (RunTest262TestsTest.test_no_regressions_output):
29101 (test_failure_output):
29102 (test_failures_output):
29103 Updated tests with new sample output produced partially from bots and
29104 locally. In cases of failure the return code of run-jsc-stress-tests
29105 is still 0 so update the expected return code in the tests.
29107 2017-04-20 Brady Eidson <beidson@apple.com>
29109 WebContent process becomes unresponsive after returning nil from async version of -webView:createWebViewWithConfiguration:...
29110 <rdar://problem/31739023> and https://bugs.webkit.org/show_bug.cgi?id=171090
29112 Reviewed by Andy Estes.
29114 * TestWebKitAPI/Tests/WebKit2/open-and-close-window.html:
29115 * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
29116 (resetToConsistentState):
29117 (-[OpenAndCloseWindowUIDelegate webViewDidClose:]):
29118 (-[OpenAndCloseWindowUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
29120 (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
29122 2017-04-20 Wenson Hsieh <wenson_hsieh@apple.com>
29124 [ios-simulator] PositionInformationTests API tests are timing out
29125 https://bugs.webkit.org/show_bug.cgi?id=171089
29127 Rubber-stamped by Tim Horton.
29129 Addresses failures observed in the new position information tests added in r215573 by only running them if the
29130 DATA_INTERACTION feature flag is enabled.
29132 * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
29134 2017-04-20 Brady Eidson <beidson@apple.com>
29136 Skip WebKit2.OpenAndCloseWindowAsyncCallbackException for now.
29137 https://bugs.webkit.org/show_bug.cgi?id=171083
29141 * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
29143 2017-04-20 Brady Eidson <beidson@apple.com>
29145 Add CompletionHandlerCallChecker to SPI added in r215545.
29146 https://bugs.webkit.org/show_bug.cgi?id=171067
29148 Reviewed by Dan Bernstein.
29150 * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
29152 (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
29154 2017-04-20 Wenson Hsieh <wenson_hsieh@apple.com>
29156 [WK2] -[WKContentView doAfterPositionInformationUpdate:atPosition:] should be robust against synchronous reentrancy
29157 https://bugs.webkit.org/show_bug.cgi?id=170922
29158 <rdar://problem/31634990>
29160 Reviewed by Tim Horton.
29162 Adds six new unit tests for retrieving interaction information at a given position in the UI process. See
29163 WebKit2 ChangeLog for more details.
29165 * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
29166 (-[_WKDraggableElementInfo expectToBeLink:image:atPoint:]):
29167 (TestWebKitAPI::TEST):
29168 (TestWebKitAPI::expectCGPointsToBeEqual): Deleted.
29170 2017-04-20 Xan Lopez <xlopez@igalia.com>
29172 [GTK][jhbuild] Update glib and glib-networking to the latest stable versions
29173 https://bugs.webkit.org/show_bug.cgi?id=170942
29175 Reviewed by Carlos Garcia Campos.
29177 Update glib and glib-networking to the last stable releases. This
29178 is needed to get working TLS certificate verification at all at
29181 * gtk/install-dependencies: add libmount, needed for newer glib.
29182 * gtk/jhbuild.modules: update glib and glib-networking to last
29185 2017-04-20 Joanmarie Diggs <jdiggs@igalia.com>
29187 [ATK] Implement support for DPub ARIA roles
29188 https://bugs.webkit.org/show_bug.cgi?id=170679
29190 Reviewed by Chris Fleizach.
29192 Add DPub ARIA landmark roles to roleToString().
29194 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
29196 2017-04-19 Joseph Pecoraro <pecoraro@apple.com>
29198 Remove WebKitTestRunner code for enabling features that are already enabled by default
29199 https://bugs.webkit.org/show_bug.cgi?id=171033
29201 Reviewed by Ryosuke Niwa.
29203 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
29204 (WTR::InjectedBundle::beginTesting):
29205 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
29206 (WTR::TestRunner::setShadowDOMEnabled): Deleted.
29207 (WTR::TestRunner::setCustomElementsEnabled): Deleted.
29208 (WTR::TestRunner::setFetchAPIEnabled): Deleted.
29209 (WTR::TestRunner::setDownloadAttributeEnabled): Deleted.
29210 * WebKitTestRunner/InjectedBundle/TestRunner.h:
29212 2017-04-19 Youenn Fablet <youenn@apple.com>
29214 [Mac] Allow customizing H264 encoder
29215 https://bugs.webkit.org/show_bug.cgi?id=170829
29217 Reviewed by Alex Christensen.
29219 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
29221 2017-04-19 Brady Eidson <beidson@apple.com>
29223 Add asynchronous equivalent of -[<WKUIDelegate> webView:createWebViewWithConfiguration:...].
29224 <rdar://problem/30699851> and https://bugs.webkit.org/show_bug.cgi?id=171018
29226 Reviewed by Tim Horton.
29228 * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
29230 (-[OpenAndCloseWindowUIDelegateAsync webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
29231 (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
29233 2017-04-19 Brady Eidson <beidson@apple.com>
29235 REGRESSION (r213168): An extra Web Content process is spun up on launch and is never closed.
29236 <rdar://problem/30774839> and https://bugs.webkit.org/show_bug.cgi?id=171002
29238 Reviewed by Alex Christensen.
29240 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29241 * TestWebKitAPI/Tests/WebKit2Cocoa/InitialWarmedProcessUsed.mm: Added.
29243 2017-04-19 Brent Fulgham <bfulgham@apple.com>
29245 [WK2] Run tests with ResourceLoadStatistics enabled
29246 https://bugs.webkit.org/show_bug.cgi?id=170952
29248 Reviewed by Andy Estes.
29250 Excercise the load statistics code during tests.
29252 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
29253 (WTR::initializeWebViewConfiguration):
29255 2017-04-19 Bill Ming <mbbill@gmail.com>
29257 close_fds should be set to False on Windows.
29258 https://bugs.webkit.org/show_bug.cgi?id=170838
29260 Reviewed by Brent Fulgham.
29262 * Scripts/webkitpy/common/system/executive.py:
29263 (Executive._should_close_fds):
29265 2017-04-19 David Kilzer <ddkilzer@apple.com>
29267 Stop using strcpy() in WebKit::EnvironmentUtilities::stripValuesEndingWithString()
29268 <https://webkit.org/b/170994>
29269 <rdar://problem/29889932>
29271 Reviewed by Brent Fulgham.
29273 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29274 (EnvironmentUtilitiesTest.cpp): Add to TestWebKitAPILibrary
29276 * TestWebKitAPI/Tests/WebKit2/EnvironmentUtilitiesTest.cpp: Add.
29277 (TestWebKitAPI::strip): Helper method to set/get environment
29278 variable for testing.
29279 (TestWebKitAPI::WebKit2_StripValuesEndingWithString_Test): Add
29282 2017-04-19 JF Bastien <jfbastien@apple.com>
29284 WebAssembly: add script which can import GCC torture tests
29285 https://bugs.webkit.org/show_bug.cgi?id=170740
29287 Reviewed by Saam Barati.
29289 Add a script which can import the GCC torture tests and create a
29290 yaml file to run them as part of jsc's WebAssembly regression
29293 This patch doesn't commit the tests themselves because they're
29294 licensed differently.
29296 * Scripts/run-jsc-stress-tests: learn how to run
29297 Emscripten-generated .js+.wasm files, and do a bit of cleanup on
29298 the options because WebAssembly is enabled by default.
29299 * Scripts/update-wasm-gcc-torture.py: Added.
29304 (waterfall_known_failures):
29308 2017-04-19 Youenn Fablet <youenn@apple.com>
29310 Import web-platform-tests/tools
29311 https://bugs.webkit.org/show_bug.cgi?id=170718
29313 Reviewed by Alex Christensen.
29315 * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
29317 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
29318 (WebPlatformTestServer.ports_to_forward):
29319 (WebPlatformTestServer._prepare_config):
29320 (WebPlatformTestServer._install_modules): Deleted.
29321 * Scripts/webkitpy/w3c/test_importer.py:
29322 (TestImporter.write_html_files_for_templated_js_tests):
29324 2017-04-18 Wenson Hsieh <wenson_hsieh@apple.com>
29326 [WK2] Add infrastructure and unit tests for file uploads using data interaction
29327 https://bugs.webkit.org/show_bug.cgi?id=170903
29328 <rdar://problem/31314689>
29330 Reviewed by Tim Horton.
29332 Adds 5 new unit tests covering different cases of uploading files through data interaction, as well as
29333 infrastructure for simulating UIItemProviders that load file data. Makes a few adjustments to the
29334 DataInteractionSimulator along the way, detailed in the per-method annotations below. See
29335 <https://bugs.webkit.org/show_bug.cgi?id=170880> for more details about the change this patch is testing.
29338 DataInteractionTests.ExternalSourceImageToFileInput
29339 DataInteractionTests.ExternalSourceHTMLToUploadArea
29340 DataInteractionTests.ExternalSourceImageAndHTMLToSingleFileInput
29341 DataInteractionTests.ExternalSourceImageAndHTMLToMultipleFileInput
29342 DataInteractionTests.ExternalSourceImageAndHTMLToUploadArea
29344 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
29346 (temporaryURLForDataInteractionFileLoad):
29347 (cleanUpDataInteractionTemporaryPath):
29349 Creates and tears down temporary file directories for testing data interaction.
29351 (-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]):
29352 (TestWebKitAPI::TEST):
29353 * TestWebKitAPI/ios/DataInteractionSimulator.h:
29354 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
29356 Make necessary changes to be able to test what happens when data interaction ends over an element with no
29357 operation. Previously, we would always simulate performing a data interaction operation when ending the
29358 simulation, but this causes us to wait indefinitely for a data operation response to arrive in the UI process.
29359 Instead, we need to note whether or not the content view is allowing data interaction, and only perform an
29360 operation and wait for the -didPerform call if the operation was allowed. Otherwise, we immediately transition
29361 the phase to Cancelled and end the run.
29363 (-[DataInteractionSimulator _resetSimulatedState]):
29364 (-[DataInteractionSimulator runFrom:to:]):
29365 (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
29366 (-[DataInteractionSimulator _advanceProgress]):
29367 (-[DataInteractionSimulator externalItemProviders]):
29368 (-[DataInteractionSimulator setExternalItemProviders:]):
29370 Previously, we hard-coded DataInteractionSimulator to only support a single external item provider. In order to
29371 test the scenario where multiple files are being "data interacted" into a file-type input, we generalize this to
29372 take multiple item providers.
29374 (-[DataInteractionSimulator externalItemProvider]): Deleted.
29375 (-[DataInteractionSimulator setExternalItemProvider:]): Deleted.
29377 2017-04-18 John Wilander <wilander@apple.com>
29379 Make WebCore::topPrivatelyControlledDomain() return "localhost" for localhost
29380 https://bugs.webkit.org/show_bug.cgi?id=170798
29381 <rdar://problem/31595108>
29383 Reviewed by Alex Christensen.
29385 * TestWebKitAPI/Tests/mac/PublicSuffix.mm:
29386 (TestWebKitAPI::TEST_F):
29387 Added two negative test cases for WebCore::isPublicSuffix().
29388 Added test cases with mixed case domains, localhost, and
29389 non-ASCII for WebCore::topPrivatelyControlledDomain().
29391 2017-04-18 Jonathan Bedard <jbedard@apple.com>
29393 Unreviewed, rolling out r215346 and 215361.
29395 The problem these changes were fixing was addressed in
29396 <https://trac.webkit.org/changeset/215416/webkit>.
29398 Reverted changesets:
29400 "webkitpy: Ignore previously launched pid when system is under
29402 https://bugs.webkit.org/show_bug.cgi?id=170741
29403 http://trac.webkit.org/changeset/215346
29404 http://trac.webkit.org/changeset/215361
29406 2017-04-17 Alex Christensen <achristensen@webkit.org>
29408 Allow Variants of RetainPtrs
29409 https://bugs.webkit.org/show_bug.cgi?id=170923
29411 Reviewed by Tim Horton and Sam Weinig.
29413 * TestWebKitAPI/Tests/WTF/Variant.cpp:
29414 (TestWebKitAPI::TEST):
29415 Add tests for RetainPtr and for another class with overloaded operator& to verify such classes can
29418 2017-04-17 Brady Eidson <beidson@apple.com>
29420 Make WKHTTPCookieStore public.
29421 <rdar://problem/31024691> and https://bugs.webkit.org/show_bug.cgi?id=170920
29423 Reviewed by Geoffrey Garen.
29425 * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
29428 2017-04-17 Youenn Fablet <youenn@apple.com>
29430 Disable outdated WritableStream API
29431 https://bugs.webkit.org/show_bug.cgi?id=170749
29432 <rdar://problem/31446233>
29434 Reviewed by Alex Christensen.
29436 Replacing READABLE_STREAM_API, READABLE_BYTE_STREAM_API and WRITABLE_STREAM_API compilation flag by:
29437 - A STREAMS_API compilation flag.
29438 - A ReadableByteStreamAPI and WritableStreamAPI runtime flags, turned off except for RWT and DRT.
29440 * DumpRenderTree/mac/DumpRenderTree.mm:
29441 (enableExperimentalFeatures):
29442 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
29443 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
29444 (WTR::InjectedBundle::beginTesting):
29445 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
29446 (WTR::TestRunner::setFetchAPIEnabled):
29447 (WTR::TestRunner::setWritableStreamAPIEnabled):
29448 (WTR::TestRunner::setReadableByteStreamAPIEnabled):
29449 * WebKitTestRunner/InjectedBundle/TestRunner.h:
29451 2017-04-17 Tim Horton <timothy_horton@apple.com>
29453 Provide a viewport parameter to disable clipping to the safe area
29454 https://bugs.webkit.org/show_bug.cgi?id=170766
29455 <rdar://problem/31564634>
29457 Reviewed by Beth Dakin.
29459 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
29460 (WTR::UIScriptController::setObscuredInsets):
29461 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
29462 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
29463 (WTR::UIScriptController::setObscuredInsets):
29464 * TestRunnerShared/UIScriptContext/UIScriptController.h:
29465 * WebKitTestRunner/ios/TestControllerIOS.mm:
29466 (WTR::TestController::platformResetStateToConsistentValues):
29467 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
29468 (WTR::UIScriptController::setObscuredInsets):
29469 Add a UIScriptController mechanism to install obscured insets
29472 2017-04-17 Dan Bernstein <mitz@apple.com>
29474 [Cocoa] Move isNullFunctionPointer down into WTF
29475 https://bugs.webkit.org/show_bug.cgi?id=170892
29477 Reviewed by Sam Weinig.
29479 * TestWebKitAPI/Configurations/TestWTF.xcconfig:
29480 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29481 * TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp: Added.
29482 (TestWebKitAPI::TEST):
29483 * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd: Added.
29484 * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS.tbd: Added.
29485 * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS-v2.tbd: Added.
29486 * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS.tbd: Added.
29488 2017-04-17 Jonathan Bedard <jbedard@apple.com>
29490 webkitpy: Correct poll when killing ServerProcess
29492 Unreviewed infrastructure fix.
29494 * Scripts/webkitpy/port/server_process.py:
29495 (ServerProcess._kill): A polled process equaling 'None' means the process is running.
29497 2017-04-17 Eric Carlson <eric.carlson@apple.com>
29499 [MediaStream] Enable getUserMedia API test
29500 https://bugs.webkit.org/show_bug.cgi?id=170901
29501 <rdar://problem/31656594>
29503 Reviewed by Youenn Fablet.
29505 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test.
29507 * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
29508 (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
29509 (TestWebKitAPI::TEST): Enable capture with mock devices.
29510 * TestWebKitAPI/Tests/WebKit2/getUserMedia.html: Update to mediaDevices.getUserMedia
29512 2017-04-17 Xan Lopez <xan@igalia.com>
29514 [GTK] Update the Fedora dependencies for WebKitGTK+
29515 https://bugs.webkit.org/show_bug.cgi?id=170590
29517 Reviewed by Carlos Alberto Lopez Perez.
29519 * gtk/install-dependencies: add a bunch of modules necessary to
29520 get a proper set of GStreamer codecs for WebRTC.
29522 2017-04-16 Sam Weinig <sam@webkit.org>
29524 [WebIDL] Switch IDLAttributes.txt over to a more structured format so that more information can be added for each attribute
29525 https://bugs.webkit.org/show_bug.cgi?id=170843
29527 Reviewed by Chris Dumez.
29529 * DumpRenderTree/DerivedSources.make:
29530 * WebKitTestRunner/DerivedSources.make:
29531 * Scripts/webkitpy/bindings/main.py:
29532 (BindingsTests.generate_from_idl):
29533 Pass IDLAttributes.json, as it is now mandatory to have one.
29535 2017-04-14 Mark Lam <mark.lam@apple.com>
29537 Update architectures in xcconfig files.
29538 https://bugs.webkit.org/show_bug.cgi?id=170867
29539 <rdar://problem/31628104>
29541 Reviewed by Joseph Pecoraro.
29543 * DumpRenderTree/mac/Configurations/Base.xcconfig:
29544 * MobileMiniBrowser/Configurations/Base.xcconfig:
29545 * TestWebKitAPI/Configurations/Base.xcconfig:
29546 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
29547 * WebKitTestRunner/Configurations/Base.xcconfig:
29549 2017-04-14 Brady Eidson <beidson@apple.com>
29551 Fix basic WKURLSchemeHandler bugs.
29552 <rdar://problem/30647559> and https://bugs.webkit.org/show_bug.cgi?id=170862
29554 Reviewed by Andy Estes.
29556 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29557 * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm: Added.
29558 (-[SchemeHandler initWithData:mimeType:]):
29559 (-[SchemeHandler dealloc]):
29560 (-[SchemeHandler webView:startTask:]):
29561 (-[SchemeHandler webView:stopTask:]):
29564 2017-04-14 Bill Ming <mbbill@gmail.com>
29566 webkit-patch failed to detect git repository
29567 https://bugs.webkit.org/show_bug.cgi?id=170859
29569 Reviewed by Daniel Bates.
29571 Windows cmd does not accept single quoted path. So, using
29572 double quotes here will provide better platform compatibility.
29574 * Scripts/VCSUtils.pm:
29576 (isGitSVNDirectory):
29577 (svnRevisionForDirectory):
29580 2017-04-14 Ryan Haddad <ryanhaddad@apple.com>
29582 Unreviewed, rolling out r215374.
29584 This change causes LayoutTests to exit early with crashes on
29587 Reverted changeset:
29589 "webkitpy: Ignore previously launched pid when system is under
29591 https://bugs.webkit.org/show_bug.cgi?id=170741
29592 http://trac.webkit.org/changeset/215374
29594 2017-04-14 Dan Bernstein <mitz@apple.com>
29596 [ios-simulator] API test WebKit2.AdditionalReadAccessAllowedURLs is failing
29597 https://bugs.webkit.org/show_bug.cgi?id=170856
29599 Disabled the newly-added test in the Simulator, which doesn’t enforce sandboxing.
29601 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
29603 2017-04-14 Jonathan Bedard <jbedard@apple.com>
29605 webkitpy: Ignore previously launched pid when system is under stress
29606 https://bugs.webkit.org/show_bug.cgi?id=170741
29608 Unreviewed infrastructure fix.
29610 Drivers are destroyed between failing layout tests, which is not necessary and
29611 prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
29613 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
29614 (Worker._kill_driver): Do not destroy drivers when they are stopped.
29615 * Scripts/webkitpy/port/driver.py:
29616 (Driver.stop): Reset driver values set in initializer.
29618 2017-04-14 Andy Estes <aestes@apple.com>
29620 [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
29621 https://bugs.webkit.org/show_bug.cgi?id=167594
29623 Re-enabled this API test now that webkit.org/b/161967 is fixed.
29625 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
29628 2017-04-14 Andy Estes <aestes@apple.com>
29630 [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
29631 https://bugs.webkit.org/show_bug.cgi?id=161967
29633 Reviewed by Alexey Proskuryakov.
29635 * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
29636 (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
29638 2017-04-14 Ryan Haddad <ryanhaddad@apple.com>
29640 Unreviewed, rolling out r215363.
29642 This change causes LayoutTests to exit early with crashes.
29644 Reverted changeset:
29646 "webkitpy: Ignore previously launched pid when system is under
29648 https://bugs.webkit.org/show_bug.cgi?id=170741
29649 http://trac.webkit.org/changeset/215363
29651 2017-04-14 Jonathan Bedard <jbedard@apple.com>
29653 webkitpy: Ignore previously launched pid when system is under stress
29654 https://bugs.webkit.org/show_bug.cgi?id=170741
29656 Unreviewed infrastructure fix.
29658 Drivers are destroyed between failing layout tests, which is not necessary and
29659 prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
29661 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
29662 (Worker._kill_driver): Do not destroy drivers when they are stopped.
29664 2017-04-14 Jonathan Bedard <jbedard@apple.com>
29666 webkitpy: Ignore previously launched pid when system is under stress
29667 https://bugs.webkit.org/show_bug.cgi?id=170741
29669 Unreviewed infrastructure fix.
29671 Server processes are destroyed in the driver, which is not necessary and prevents
29672 the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
29674 * Scripts/webkitpy/port/driver.py:
29675 (Driver.run_test): Do not destroy server process.
29676 (Driver._start): Only create the server process if it is None.
29677 (Driver.stop): Do not destroy server process.
29679 2017-04-13 Dan Bernstein <mitz@apple.com>
29681 [Cocoa] Allow clients to specify in _WKProcessPoolConfiguration additional directory sandbox extensions
29682 https://bugs.webkit.org/show_bug.cgi?id=170387
29684 Reviewed by Sam Weinig.
29686 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29687 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm: Added.
29689 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsPlugin.mm: Added.
29690 (-[AdditionalReadAccessAllowedURLsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
29691 (-[AdditionalReadAccessAllowedURLsPlugIn dealloc]):
29692 (-[AdditionalReadAccessAllowedURLsPlugIn readStringFromURL:completionHandler:]):
29693 * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsProtocol.h: Added.
29695 2017-04-13 Jonathan Bedard <jbedard@apple.com>
29697 webkitpy: Ignore previously launched pid when system is under stress
29698 https://bugs.webkit.org/show_bug.cgi?id=170741
29700 Reviewed by David Kilzer.
29702 We have seen cases where xcrun simctl launch will return a pid of a previous
29703 process and the process will appear to be running even though it is crashing.
29704 Ensure that the PID that simulator_process is receiving is not the pid of the
29705 previously run process.
29707 * Scripts/webkitpy/port/simulator_process.py:
29708 (SimulatorProcess._start): Check to make sure we aren't receiving an old PID.
29710 2017-04-13 Jonathan Bedard <jbedard@apple.com>
29712 Build ImageDiff with host SDK
29713 https://bugs.webkit.org/show_bug.cgi?id=168531
29715 Reviewed by David Kilzer.
29717 ImageDiff should be built and run with the host SDK, not the target SDK.
29718 Build ImageDiff twice, once for the target SDK and once for the host
29719 as an intermediate step towards building for only the host SDK.
29721 * ImageDiff/Makefile: Added.
29722 * Makefile: Add ImageDiff to list of targets.
29723 * Scripts/build-imagediff: Build bmalloc and WTF for the host.
29724 * Scripts/build-webkit: Build ImageDiff for host.
29725 * Scripts/webkitdirs.pm: Export extractNonMacOSHostConfiguration.
29726 (extractNonMacOSHostConfiguration): Remove non-host configuration data from the array.
29727 * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Added.
29728 * Scripts/webkitpy/port/base.py:
29729 (Port.check_build): Attempt to build image diff if not found.
29730 (Port.check_image_diff): Enable logging flag.
29731 (Port._build_image_diff): Allow webkitpy to build image-diff during testing.
29733 2017-04-12 Alex Christensen <achristensen@webkit.org>
29735 Clean up SharedBuffer public functions
29736 https://bugs.webkit.org/show_bug.cgi?id=170795
29738 Reviewed by Andreas Kling.
29740 * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
29741 (TestWebKitAPI::TEST_F):
29743 2017-04-12 Dan Bernstein <mitz@apple.com>
29745 [Mac] Future-proof .xcconfig files
29746 https://bugs.webkit.org/show_bug.cgi?id=170802
29748 Reviewed by Tim Horton.
29750 * DumpRenderTree/mac/Configurations/Base.xcconfig:
29751 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
29752 * MiniBrowser/Configurations/Base.xcconfig:
29753 * MiniBrowser/Configurations/DebugRelease.xcconfig:
29754 * TestWebKitAPI/Configurations/Base.xcconfig:
29755 * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
29756 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
29757 * WebKitTestRunner/Configurations/Base.xcconfig:
29758 * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
29760 2017-04-12 Alex Christensen <achristensen@webkit.org>
29762 Remove unused SharedBuffer::wrapCFDataArray
29763 https://bugs.webkit.org/show_bug.cgi?id=170794
29765 Reviewed by Brady Eidson.
29767 * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
29768 (TestWebKitAPI::TEST_F):
29770 2017-04-12 Yusuke Suzuki <utatane.tea@gmail.com>
29772 [WTF] Introduce Thread class and use RefPtr<Thread> and align Windows Threading implementation semantics to Pthread one
29773 https://bugs.webkit.org/show_bug.cgi?id=170502
29775 Reviewed by Mark Lam.
29777 Mechanical change. Use Thread:: APIs.
29779 * DumpRenderTree/JavaScriptThreading.cpp:
29780 (runJavaScriptThread):
29781 (startJavaScriptThreads):
29782 (stopJavaScriptThreads):
29783 * DumpRenderTree/mac/DumpRenderTree.mm:
29784 (testThreadIdentifierMap):
29785 * TestWebKitAPI/Tests/WTF/Condition.cpp:
29786 * TestWebKitAPI/Tests/WTF/Lock.cpp:
29787 (TestWebKitAPI::runLockTest):
29788 * TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
29790 2017-04-12 Alex Christensen <achristensen@webkit.org>
29792 Modernize vector adoption
29793 https://bugs.webkit.org/show_bug.cgi?id=170758
29795 Reviewed by Geoffrey Garen.
29797 * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
29798 (TestWebKitAPI::TEST_F):
29800 2017-04-11 Dean Jackson <dino@apple.com>
29802 Disable outdated WritableStream API
29803 https://bugs.webkit.org/show_bug.cgi?id=170749
29804 <rdar://problem/31446233>
29806 Reviewed by Tim Horton.
29808 The API we implement is no longer accurate. Disable it until we
29809 are compatible with the new specification
29811 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
29813 2017-04-11 David Quesada <david_quesada@apple.com>
29815 Add SPI for handling geolocation authorization requests
29816 https://bugs.webkit.org/show_bug.cgi?id=170362
29817 rdar://problem/17508627
29819 Reviewed by Alex Christensen.
29821 Add API tests for the new WKUIDelegate SPI for allowing or denying websites permission
29822 to use geolocation. Adopt the new WKProcessPool._coreLocationProvider property to
29823 provide a stub object to simulate the various configurations of geolocation permissions:
29824 1. The app doesn't have permission to use geolocation.
29825 2. The app is allowed to use geolocation, but the UI delegate denies the web view permission.
29826 3. The app is allowed to use geolocation, and the UI delegate allows the web view permission.
29828 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29829 * TestWebKitAPI/Tests/WebKit2Cocoa/Geolocation.mm: Added.
29830 (-[TestCoreLocationProvider setListener:]):
29831 (-[TestCoreLocationProvider requestGeolocationAuthorization]):
29832 (-[TestCoreLocationProvider start]):
29833 (-[TestCoreLocationProvider stop]):
29834 (-[TestCoreLocationProvider setEnableHighAccuracy:]):
29836 (-[GeolocationTestUIDelegate _webView:requestGeolocationAuthorizationForURL:frame:decisionHandler:]):
29837 (-[GeolocationTestUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
29838 (TestWebKitAPI::TEST):
29839 * TestWebKitAPI/Tests/WebKit2Cocoa/GeolocationGetCurrentPositionResult.html: Added.
29841 2017-04-10 Matt Rajca <mrajca@apple.com>
29843 Change autoplay state to "prevented" when media is paused due to restrictions.
29844 https://bugs.webkit.org/show_bug.cgi?id=170686
29846 Reviewed by Alex Christensen.
29848 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
29849 * TestWebKitAPI/Tests/WebKit2/autoplay-muted-with-controls.html: Added test.
29850 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
29853 2017-04-11 Yusuke Suzuki <utatane.tea@gmail.com>
29855 [WebCore][JSC] ResourceUsageData.{timeOfNextEdenCollection,timeOfNextFullCollection} should be MonotonicTime
29856 https://bugs.webkit.org/show_bug.cgi?id=170725
29858 Reviewed by Sam Weinig.
29860 * TestWebKitAPI/Tests/WTF/Time.cpp:
29861 (TestWebKitAPI::TEST):
29863 2017-04-10 Alex Christensen <achristensen@webkit.org>
29866 https://bugs.webkit.org/show_bug.cgi?id=170703
29868 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
29870 2017-04-10 Alex Christensen <achristensen@webkit.org>
29872 Continue enabling WebRTC
29873 https://bugs.webkit.org/show_bug.cgi?id=170703
29875 Reviewed by Youenn Fablet.
29877 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
29879 2017-04-10 Kocsen Chung <kocsen_chung@apple.com>
29881 Have parseRevisionProperty use default repo name as the Buildbot key.
29882 https://bugs.webkit.org/show_bug.cgi?id=170696
29884 Reviewed by Daniel Bates.
29886 Previously, we needed to set a key and a fallbackKey when addressing
29887 Buildbot data for Internal. That is no longer necessary as we can make a safe assumption
29888 that the repo name maps exactly to that key for every repository other
29891 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
29892 Set `key = repositoryName` and only use fallback keys when dealing with WebKit.
29894 2017-04-10 Aakash Jain <aakash_jain@apple.com>
29896 Add test262 JavaScriptCore tests to dashboard
29897 https://bugs.webkit.org/show_bug.cgi?id=170711
29899 Rubber-stamped by Joseph Pecoraro.
29901 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
29902 (WebKitBuildbot): Added test262 JSC tests to dashboard.
29904 2017-04-10 Alex Christensen <achristensen@webkit.org>
29906 REGRESSION(r195479) First main resource load in new WebProcess bypasses content extensions
29907 https://bugs.webkit.org/show_bug.cgi?id=170707
29908 <rdar://problem/27788755>
29910 Reviewed by Tim Horton.
29912 * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
29913 (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
29915 * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
29916 (-[ContentBlockingWebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
29917 (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
29920 2017-04-10 Alex Christensen <achristensen@webkit.org>
29922 Add API to get available content extension identifiers in a WKContentExtensionStore
29923 https://bugs.webkit.org/show_bug.cgi?id=170093
29925 Reviewed by Geoffrey Garen.
29927 * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
29930 2017-04-10 Wenson Hsieh <wenson_hsieh@apple.com>
29932 Refactor DataInteractionTests.UnresponsivePageDoesNotHangUI to not check against a fixed time interval
29933 https://bugs.webkit.org/show_bug.cgi?id=170658
29935 Reviewed by Tim Horton.
29937 Uses ignoreSynchronousMessagingTimeoutsForTesting to ensure that this test times out if data interaction
29938 preparation is synchronous, or passes if it is asynchronous.
29940 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
29941 (TestWebKitAPI::TEST):
29942 * TestWebKitAPI/cocoa/TestWKWebView.h:
29943 * TestWebKitAPI/cocoa/TestWKWebView.mm:
29944 (-[TestWKWebView initWithFrame:]):
29945 (-[TestWKWebView initWithFrame:configuration:processPoolConfiguration:]):
29946 (-[TestWKWebView _setUpTestWindow:]):
29948 2017-04-10 Brent Fulgham <bfulgham@apple.com>
29950 [WK2][macOS] Block access to Apple Events before launch.
29951 https://bugs.webkit.org/show_bug.cgi?id=170626
29952 <rdar://problem/16079334>
29954 Reviewed by Alexey Proskuryakov.
29956 Add a new TestWebKitAPI test that fails if Apple Events are sent.
29958 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
29959 * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent.cpp: Added.
29960 (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
29961 (TestWebKitAPI::didFinishLoadForFrame):
29962 (TestWebKitAPI::TEST):
29963 * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent_Bundle.cpp: Added.
29964 (TestWebKitAPI::InjectedBundleAppleEventTest::InjectedBundleAppleEventTest):
29965 (TestWebKitAPI::InjectedBundleAppleEventTest::didCreatePage):
29967 2017-04-10 Guillaume Emont <guijemont@igalia.com>
29969 [JSC] Do not run FTL stress tests on MIPS
29970 https://bugs.webkit.org/show_bug.cgi?id=170684
29972 Reviewed by Carlos Alberto Lopez Perez.
29974 run-jsc-stress-tests does not correctly detect MIPS platforms, and its
29975 logic to detect if the platform supports FTL ignores that MIPS does
29976 not support FTL. This adds detection of MIPS (with the magic number
29977 determined empirically) and fixes the determination of whether we
29980 * Scripts/run-jsc-stress-tests:
29982 2017-04-10 Jonathan Bedard <jbedard@apple.com>
29984 webkitpy: Increase estimate for processes run by iOS Simulators
29985 https://bugs.webkit.org/show_bug.cgi?id=170678
29986 <rdar://problem/31534061>
29988 Reviewed by Aakash Jain.
29990 Previously, it was estimated that each simulated iOS device would run about 100
29991 processes. With newer versions of iOS, this is closer to 125.
29993 * Scripts/webkitpy/port/ios_simulator.py:
29994 (IOSSimulatorPort): Increase process estimate from 100 to 125.
29996 2017-04-10 Adrian Perez de Castro <aperez@igalia.com>
29998 [GTK] Misplaced right click menu on web page due to deprecated gtk_menu_popup()
29999 https://bugs.webkit.org/show_bug.cgi?id=170553
30001 Reviewed by Michael Catanzaro.
30003 Use gtk_menu_popup_at_pointer() and gtk_menu_popup_at_rect() when
30004 building with GTK+ 3.22 or newer. This allows the Wayland GTK+ backend
30005 to properly position popup menus, and also avoids using functions
30006 which were deprecated starting at that GTK+ release.
30008 * MiniBrowser/gtk/BrowserSearchBar.c:
30009 (searchEntryMenuIconPressedCallback):
30010 Update MiniBrowser to use gtk_menu_popup_at_pointer().
30012 2017-04-10 Wenson Hsieh <wenson_hsieh@apple.com>
30014 REGRESSION (r214403): fast/events/drag-to-navigate.html and fast/events/only-valid-drop-targets-receive-file-drop.html failing
30015 https://bugs.webkit.org/show_bug.cgi?id=170677
30016 <rdar://problem/31512633>
30018 Reviewed by Tim Horton.
30020 Fixes two drag and drop LayoutTests by introducing and enabling a TestOptions switch (enableDragDestinationActionLoad)
30021 to allow dropping URLs to trigger page navigation.
30023 * DumpRenderTree/TestOptions.h:
30024 * DumpRenderTree/TestOptions.mm:
30025 (TestOptions::TestOptions):
30026 * DumpRenderTree/mac/DumpRenderTree.mm:
30027 (resetWebViewToConsistentStateBeforeTesting):
30028 * DumpRenderTree/mac/UIDelegate.h:
30029 * DumpRenderTree/mac/UIDelegate.mm:
30030 (-[UIDelegate resetToConsistentStateBeforeTesting:]):
30031 (-[UIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
30033 2017-04-10 Fujii Hironori <Hironori.Fujii@sony.com>
30035 update-webkit-dependency should report $response->message for diagnose
30036 https://bugs.webkit.org/show_bug.cgi?id=170666
30038 Reviewed by Alex Christensen.
30040 * Scripts/update-webkit-dependency: Print $response->message to STDERR if an error happens.
30042 2017-04-10 Wenson Hsieh <wenson_hsieh@apple.com>
30044 Data interaction on an image enclosed by an anchor should vend the anchor's URL
30045 https://bugs.webkit.org/show_bug.cgi?id=170660
30046 <rdar://problem/31043220>
30048 Reviewed by Tim Horton.
30050 Adds two new unit tests covering cases where data interaction is triggered from an image nested underneath an
30051 anchor. In one of the tests, the link has an href, and in the other, its href is missing, in which case we
30052 should fall back to the image URL instead. Also fixes a related unit test that was trying to check selection
30053 rects, but should not be.
30055 See WebCore ChangeLog for more details.
30057 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
30058 * TestWebKitAPI/Tests/WebKit2Cocoa/image-in-link-and-input.html: Added.
30059 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
30060 (TestWebKitAPI::TEST):
30062 2017-04-10 Carlos Garcia Campos <cgarcia@igalia.com>
30064 [GTK] Remove the GDK dependency from ImageDiff
30065 https://bugs.webkit.org/show_bug.cgi?id=85299
30067 Reviewed by Žan Doberšek.
30069 Add a cairo only implementation of ImageDiff. We currently have 3 different implementations of ImageDiff: the
30070 Gdk based one used by GTK+ port, the cairo based one used by WinCairo and the CG based one. Most of the code is
30071 actually common in all of them, but it's duplicated. So, I've taken advantage of this patch to refactor the
30072 ImageDiff code to share the common implementation. This patch adds the cross-platform code, and the cairo
30073 implementation and enables it in the GTK+ port. In follow up patches we can move WinCairo to this implementation
30074 and also add CG implementation.
30076 * ImageDiff/CMakeLists.txt:
30077 * ImageDiff/Cairo.cmake: Added.
30078 * ImageDiff/ImageDiff.cpp: Added.
30080 * ImageDiff/PlatformGTK.cmake:
30081 * ImageDiff/PlatformImage.cpp: Added.
30082 (ImageDiff::PlatformImage::isCompatible):
30083 (ImageDiff::PlatformImage::difference):
30084 * ImageDiff/PlatformImage.h: Added.
30085 * ImageDiff/cairo/PlatformImageCairo.cpp: Added.
30086 (ImageDiff::PlatformImage::createFromStdin):
30087 (ImageDiff::PlatformImage::createFromDiffData):
30088 (ImageDiff::PlatformImage::PlatformImage):
30089 (ImageDiff::PlatformImage::~PlatformImage):
30090 (ImageDiff::PlatformImage::width):
30091 (ImageDiff::PlatformImage::height):
30092 (ImageDiff::PlatformImage::rowBytes):
30093 (ImageDiff::PlatformImage::hasAlpha):
30094 (ImageDiff::PlatformImage::pixels):
30095 (ImageDiff::PlatformImage::writeAsPNGToStdout):
30096 * ImageDiff/gtk/ImageDiff.cpp: Removed.
30098 2017-04-10 Carlos Garcia Campos <cgarcia@igalia.com>
30100 REGRESSION(r214426): [GTK] Test media/video-click-dblckick-standalone.html started to fail in the bots after r214426
30101 https://bugs.webkit.org/show_bug.cgi?id=170667
30103 Reviewed by Žan Doberšek.
30105 In r214666 we disabled modern media controls runtime feature for the GTK+ port, but layout tests still override
30108 * WebKitTestRunner/gtk/TestControllerGtk.cpp:
30109 (WTR::TestController::updatePlatformSpecificTestOptionsForTest): Disable modern media controls.
30111 2017-04-10 Carlos Garcia Campos <cgarcia@igalia.com>
30113 WTR: Avoid conversion from platform image to WKImage and then to platform image again when dumping pixel results
30114 https://bugs.webkit.org/show_bug.cgi?id=170653
30116 Reviewed by Tim Horton.
30118 When dumping pixels from a web view snapshot, we create a platform image that is then converted to a WKImage,
30119 which is a ShareableBitmap, so the image is rendered into a graphics context. Then we immediately extract the
30120 platform image back from the WKImage to dump the pixels. We could avoid that conversion by taking the web
30121 snapshot from TestInvocation::dumpPixelsAndCompareWithExpected().
30123 * WebKitTestRunner/PlatformWebView.h: Add PlatformImage typedef and use it as return value of windowSnapshotImage().
30124 * WebKitTestRunner/TestInvocation.cpp:
30125 (WTR::TestInvocation::dumpResults): Pass the WKImage to dumpPixelsAndCompareWithExpected() only when pixel
30126 results were created in the web process.
30127 * WebKitTestRunner/TestInvocation.h: Make WKImage a default paramater of dumpPixelsAndCompareWithExpected().
30128 * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
30129 (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the cairo surface from the given WKimage in case
30130 of web contents snapshot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
30131 * WebKitTestRunner/cg/TestInvocationCG.cpp:
30132 (WTR::createCGContextFromCGImage): Changed to receive a CGImageRef and renamed.
30133 (WTR::createCGContextFromImage): Get the CGImageRef from the WKImage and call createCGContextFromCGImage().
30134 (WTR::paintRepaintRectOverlay): It receives now the image size instead of the WKImage.
30135 (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the CGContextRef from the WKImage in case of web
30136 contents snpashot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
30137 * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
30138 (WTR::PlatformWebView::windowSnapshotImage): Return the cairo surface instead of creating a WKImage. Also use
30139 RGB24 format to match what mac does (kCGWindowImageShouldBeOpaque).
30140 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
30141 (WTR::PlatformWebView::windowSnapshotImage): Return the CGImageRef instead of creating a WKImage.
30142 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
30143 (WTR::PlatformWebView::windowSnapshotImage): Ditto.
30145 2017-04-10 Chris Dumez <cdumez@apple.com>
30147 Drop Timer::startOneShot() overload taking a double
30148 https://bugs.webkit.org/show_bug.cgi?id=170659
30150 Reviewed by Yusuke Suzuki.
30152 Drop Timer::startOneShot() overload taking a double as people should use Seconds type now.
30154 * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
30155 (TestWebKitAPI::TEST):
30156 * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
30157 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
30159 2017-04-09 Wenson Hsieh <wenson_hsieh@apple.com>
30161 [WK2] Add infrastructure to perform actions after an asynchronous position information request finishes
30162 https://bugs.webkit.org/show_bug.cgi?id=170658
30163 <rdar://problem/31431450>
30165 Reviewed by Tim Horton.
30167 Adds a new test verifying that when a web page is unresponsive, the process of preparing for data interaction
30168 does not also cause the UI process to spin. We assume here that the call to prepare must be asynchronous, so it
30169 should complete before the unresponsiveness timeout is triggered.
30171 See WebKit2 ChangeLog for more details.
30173 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
30174 (TestWebKitAPI::TEST):
30176 2017-04-09 Chris Dumez <cdumez@apple.com>
30178 Drop Timer::startRepeating() overload taking a double
30179 https://bugs.webkit.org/show_bug.cgi?id=170656
30181 Reviewed by Yusuke Suzuki.
30183 Drop Timer::startRepeating() overload taking a double as people should use Seconds type now.
30185 * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
30186 (TestWebKitAPI::TEST):
30188 2017-04-09 Youenn Fablet <youenn@apple.com>
30190 Resync WPT tests up to 23cd07d4685d81024b7440e042f8bbdb33e7ddec
30191 https://bugs.webkit.org/show_bug.cgi?id=170647
30193 Reviewed by Sam Weinig.
30195 * Scripts/webkitpy/common/checkout/scm/git.py:
30196 (Git.fetch): Fetching origin remote in case there is more than one.
30198 2017-04-08 Simon Fraser <simon.fraser@apple.com>
30200 Update CSSProperties.json with correct fill-and-stroke status, and other cleanup
30201 https://bugs.webkit.org/show_bug.cgi?id=170643
30203 Reviewed by Chris Dumez.
30205 Update the CSSProperties.json style checker to allow:
30206 - comments in codegen_properties
30207 - obsolete-category and obsolete-url in specification blocks
30208 - renamed "done" to "supported"
30210 Fix some references to codegen_properties to be codegen-properties.
30212 * Scripts/webkitpy/style/checkers/jsonchecker.py:
30213 (JSONCSSPropertiesChecker.validate_status_type):
30214 (JSONCSSPropertiesChecker.validate_property_specification):
30215 (JSONCSSPropertiesChecker.check_codegen_properties):
30217 2017-04-08 Youenn Fablet <youenn@apple.com>
30219 WebRTC tests gardening
30220 https://bugs.webkit.org/show_bug.cgi?id=170508
30222 Reviewed by Eric Carlson.
30224 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
30226 2017-04-07 Keith Miller <keith_miller@apple.com>
30228 Add a PriorityQueue class
30229 https://bugs.webkit.org/show_bug.cgi?id=170579
30231 Reviewed by Saam Barati.
30233 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
30234 * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp: Added.
30241 2017-04-07 Ryosuke Niwa <rniwa@webkit.org>
30243 Replace ES6SampleBench by ARES-6 in run-benchmark
30244 https://bugs.webkit.org/show_bug.cgi?id=170585
30246 Reviewed by Saam Barati.
30248 Updated the plan file for ES6SampleBench to run ARES-6 instead. Also increased the number of iterations
30249 from 4 to 8 to match teh default, and reduced the number of browser instances to use from 5 to 3.
30251 * Scripts/webkitpy/benchmark_runner/data/patches/ARES-6.patch: Renamed from ES6SampleBench.patch.
30252 * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan: Renamed from es6bench.plan.
30254 2017-04-07 Myles C. Maxfield <mmaxfield@apple.com>
30256 REGRESSION(r211382): Complex text with justification erroneously overflows containers
30257 https://bugs.webkit.org/show_bug.cgi?id=170399
30258 <rdar://problem/31442008>
30260 Reviewed by Simon Fraser.
30262 Check for the invariant that the sum of the advances is equal to m_totalWidth.
30264 * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
30265 (TestWebKitAPI::TEST_F):
30267 2017-04-07 Ryan Haddad <ryanhaddad@apple.com>
30269 [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
30270 https://bugs.webkit.org/show_bug.cgi?id=167594
30272 Unreviewed test gardening.
30274 Disable this test because it is still timing out on the bots.
30276 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
30279 2017-04-07 Jonathan Bedard <jbedard@apple.com>
30281 REGRESSION (r214553): Allow layout-tests to be run from Xcode without re-directing stdout, stdin and stderr
30282 https://bugs.webkit.org/show_bug.cgi?id=170601
30283 <rdar://problem/31492696>
30285 Reviewed by Simon Fraser.
30287 * TestRunnerShared/IOSLayoutTestCommunication.cpp:
30288 (setUpIOSLayoutTestCommunication): Skip TCP setup if no port is in the environment.
30289 (tearDownIOSLayoutTestCommunication): Only teardown if TCP was used.
30291 2017-04-07 Aakash Jain <aakash_jain@apple.com>
30293 Add support for test262 JavaScriptCore tests
30294 https://bugs.webkit.org/show_bug.cgi?id=170523
30296 Reviewed by Daniel Bates.
30298 * BuildSlaveSupport/build.webkit.org-config/config.json: Added bot433 and bot434.
30299 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
30300 (RunTest262Tests): Added class to run Test262 tests.
30301 (RunTest262Tests.start): Added.
30302 (RunTest262Tests.countFailures): Method to count the failures.
30303 (Test262Factory): Added Test262 factory class.
30304 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
30305 (RunTest262TestsTest): Added unit tests.
30306 (RunTest262TestsTest.assertResults): Helper method.
30307 (RunTest262TestsTest.test_no_regressions_output): Added test case.
30308 (test_failure_output): Same.
30309 (test_failures_output): Same.
30311 2017-04-07 Caio Lima <ticaiolima@gmail.com>
30313 [JSC] Change --debug option to --debugger
30314 https://bugs.webkit.org/show_bug.cgi?id=170587
30316 Reviewed by Keith Miller.
30320 This patch is changing the new debugger flag for Tools/Scripts/run-jsc
30321 to --debugger to avoid shadowing --debug flag used to run JSC with
30324 2017-04-07 Brent Fulgham <bfulgham@apple.com>
30326 WebKit should percent encode single quotes in query strings
30327 https://bugs.webkit.org/show_bug.cgi?id=170561
30328 <rdar://problem/7415154>
30330 Reviewed by Alex Christensen.
30332 Add a test case for single-quote in the URL query string.
30334 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
30336 2017-04-06 Myles C. Maxfield <mmaxfield@apple.com>
30338 Make FontWithFeatures test font pass OTS
30339 https://bugs.webkit.org/show_bug.cgi?id=169788
30341 Reviewed by Tim Horton.
30343 OTS, or the OpenType Sanitizer, is a check which tells if fonts are properly formed.
30344 Previously, our FontWithFeatures test font did not pass this check. This patch updates
30345 the font to pass the checks. Now, we can use this font on other platforms, and
30346 contribute the font to the W3C for testing the CSS Fonts level 3 spec.
30348 * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
30349 (Generator::appendCFFTable):
30350 (Generator::Feature::operator<):
30351 (Generator::appendGSUBTable):
30352 (Generator::appendOS2Table):
30353 (Generator::appendFormat4CMAPTable):
30354 (Generator::appendHEADTable):
30355 (Generator::appendHHEATable):
30356 (Generator::NameRecord::operator<):
30357 (Generator::appendNameSubtable):
30358 (Generator::appendNAMETable):
30360 2017-04-06 Alexey Proskuryakov <ap@apple.com>
30362 Disable flaky WebKit2.ResizeWithHiddenContentDoesNotHang
30363 for https://bugs.webkit.org/show_bug.cgi?id=170195
30365 * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
30367 2017-04-06 Ryan Haddad <ryanhaddad@apple.com>
30369 Unreviewed, rolling out r215046.
30371 This change broke internal builds.
30373 Reverted changeset:
30375 "WebRTC tests gardening"
30376 https://bugs.webkit.org/show_bug.cgi?id=170508
30377 http://trac.webkit.org/changeset/215046
30379 2017-04-06 Youenn Fablet <youenn@apple.com>
30381 WebRTC tests gardening
30382 https://bugs.webkit.org/show_bug.cgi?id=170508
30384 Reviewed by Eric Carlson.
30386 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
30388 2017-04-06 Jonathan Bedard <jbedard@apple.com>
30390 REGRESSION: Simulators failing to install after launch_app times out
30391 <rdar://problem/31478107>
30393 Unreviewed infrastructure fix.
30395 * Scripts/webkitpy/xcode/simulated_device.py:
30396 (SimulatedDevice.launch_app._install_timeout): Raise RuntimeError, not Exception.
30398 2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
30400 test262: module test progressions need updated expectations (@@iterator changes)
30401 https://bugs.webkit.org/show_bug.cgi?id=170535
30403 Reviewed by Saam Barati.
30405 * Scripts/run-jsc-stress-tests:
30406 Add :failDueToOutdatedOrBadTest to distinguish between a test failure
30407 in JavaScriptCore or an outdated or incorrect test262 test.
30409 2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
30411 Remove run-jsc-stress-tests benign warning about otool '-S' switch
30412 https://bugs.webkit.org/show_bug.cgi?id=170527
30414 Reviewed by Aakash Jain.
30416 * Scripts/run-jsc-stress-tests:
30417 The switch is not necessary and produces an error.
30419 2017-04-05 Jonathan Bedard <jbedard@apple.com>
30421 webkitpy: Add pid logging for simulator processes
30422 https://bugs.webkit.org/show_bug.cgi?id=170505
30424 Reviewed by Alexey Proskuryakov.
30426 * Scripts/webkitpy/port/simulator_process.py:
30427 (SimulatorProcess._start.handler): Add pid to exception.
30428 (SimulatorProcess._start): Ditto.
30429 * Scripts/webkitpy/xcode/simulated_device.py:
30430 (SimulatedDevice.launch_app): Log pid when the process fails to launch and when
30431 a pid is successfully returned.
30433 2017-04-05 Ryan Haddad <ryanhaddad@apple.com>
30435 Unreviewed, rolling out r214932.
30437 This change broke an internal build.
30439 Reverted changeset:
30441 "[ios-simulator] API test WebKit2.DataDetectionReferenceDate
30443 https://bugs.webkit.org/show_bug.cgi?id=161967
30444 http://trac.webkit.org/changeset/214932
30446 2017-04-05 Ryan Haddad <ryanhaddad@apple.com>
30448 Unreviewed, rolling out r214962.
30450 Roll r214937 back in because it wasn't at fault for the build
30453 Reverted changeset:
30455 "Unreviewed, rolling out r214937."
30456 https://bugs.webkit.org/show_bug.cgi?id=170365
30457 http://trac.webkit.org/changeset/214962
30459 2017-04-05 Ryan Haddad <ryanhaddad@apple.com>
30461 Unreviewed, rolling out r214937.
30463 This change broke an internal build.
30465 Reverted changeset:
30467 "REGRESSION (r202472): Data Detection overwrites existing
30468 links in detected ranges"
30469 https://bugs.webkit.org/show_bug.cgi?id=170365
30470 http://trac.webkit.org/changeset/214937
30472 2017-04-05 Jonathan Bedard <jbedard@apple.com>
30474 Increase timeouts for simulator testing
30475 Unreviewed infrastructure fix.
30477 r214895 was not sufficient, increasing timeouts again.
30479 * Scripts/webkitpy/xcode/simulated_device.py:
30480 (SimulatedDevice.install_app): Increase timeout from 3 to 10 seconds.
30482 2017-04-05 Aakash Jain <aakash_jain@apple.com>
30484 Formatting fix to remove extra space.
30486 Unreviewed formatting fix.
30488 * Scripts/webkitdirs.pm:
30489 (isEmbeddedWebKit): Remove extra space.
30491 2017-04-05 Aakash Jain <aakash_jain@apple.com>
30493 Rename isIOSLikeWebKit to isEmbeddedWebKit.
30495 Rubber-stamped by Alexey Proskuryakov.
30497 * Scripts/webkitdirs.pm:
30498 (isEmbeddedWebKit): Added
30499 (isIOSLikeWebKit): Deleted.
30501 2017-04-05 Alex Christensen <achristensen@webkit.org>
30505 * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
30506 * TestRunnerShared/spi/CoreGraphicsSPI.h: Removed.
30507 * TestRunnerShared/spi/CoreGraphicsTestSPI.h: Copied from Tools/TestRunnerShared/spi/CoreGraphicsSPI.h.
30508 There is a CoreGraphicsSPI.h in WebCore and the CMake build was finding the wrong one.
30509 Since we just inherit the include paths from WebCore in the CMake build and since this SPI is only used for testing,
30510 I just renamed CoreGraphicsSPI.h to CoreGraphicsTestSPI.h to avoid any name collisions.
30511 * WebKitTestRunner/PlatformMac.cmake:
30512 Add some missing files.
30513 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
30515 2017-04-05 Keith Miller <keith_miller@apple.com>
30517 Add debug option to run-jsc script
30518 https://bugs.webkit.org/show_bug.cgi?id=170503
30520 Reviewed by Yusuke Suzuki.
30522 Adds a new option to the run-jsc script so that when passed
30523 "--debug" it will wrap the jsc call with an lldb invocation. If
30524 someone wishes to use a different debugger they can set the
30525 DEBUGGER environment variable. Additionally, run-jsc now exits
30526 with the exit status of the jsc call.
30530 2017-04-05 Andy Estes <aestes@apple.com>
30532 REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
30533 https://bugs.webkit.org/show_bug.cgi?id=170365
30534 <rdar://problem/29205721>
30536 Reviewed by Tim Horton.
30538 * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
30539 (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
30540 (TEST): Re-enabled the test, which now passes.
30542 2017-04-05 Andy Estes <aestes@apple.com>
30544 [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
30545 https://bugs.webkit.org/show_bug.cgi?id=167594
30547 Re-enabled this API test now that webkit.org/b/161967 is fixed.
30549 * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
30552 2017-04-05 Andy Estes <aestes@apple.com>
30554 [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
30555 https://bugs.webkit.org/show_bug.cgi?id=161967
30557 Reviewed by Alexey Proskuryakov.
30559 * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
30560 (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
30562 2017-04-04 Simon Fraser <simon.fraser@apple.com>
30564 Various settings in Minibrowser are off by default, and should be on
30565 https://bugs.webkit.org/show_bug.cgi?id=170465
30566 rdar://problem/31421543
30568 Reviewed by Tim Horton.
30570 Explicitly set preferences that should be on by default to enabled, if they have not been
30573 * MiniBrowser/mac/SettingsController.m:
30574 (-[SettingsController init]):
30576 2017-04-04 JF Bastien <jfbastien@apple.com>
30578 Add JF Bastien as reviewer
30579 https://bugs.webkit.org/show_bug.cgi?id=170481
30581 Reviewed by Mark Lam.
30583 * Scripts/webkitpy/common/config/contributors.json:
30585 2017-04-04 Jonathan Bedard <jbedard@apple.com>
30587 Increase timeouts for simulator testing
30589 Unreviewed infrastructure fix.
30591 * Scripts/webkitpy/port/simulator_process.py:
30592 (SimulatorProcess._start): Increase timeout from 3 to 6 seconds.
30593 * Scripts/webkitpy/xcode/simulated_device.py:
30594 (SimulatedDevice.install_app): Increase timeout from 1 to 3 seconds.
30596 2017-04-04 Tim Horton <timothy_horton@apple.com>
30598 [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
30599 https://bugs.webkit.org/show_bug.cgi?id=165801
30600 <rdar://problem/29649535>
30602 Reviewed by Wenson Hsieh.
30604 * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
30606 Add some tests for wrapping finds.
30608 2017-04-03 Joseph Pecoraro <pecoraro@apple.com>
30610 Add some new patterns to filter-build-webkit
30611 https://bugs.webkit.org/show_bug.cgi?id=170429
30613 Reviewed by Alexey Proskuryakov.
30615 * Scripts/filter-build-webkit:
30616 (setOutputFormatOption):
30618 2017-04-03 Wenson Hsieh <wenson_hsieh@apple.com>
30620 Data interaction should register type identifiers in order of priority
30621 https://bugs.webkit.org/show_bug.cgi?id=170428
30622 <rdar://problem/30633296>
30624 Reviewed by Tim Horton.
30626 Augments existing unit tests to check for the existence and priority of type identifiers in the UIItemProviders
30627 created upon starting data interaction. Also fixes a race condition in one of the unit tests and adds a new unit
30628 test for data interaction from a textarea to an input.
30630 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
30631 (checkTypeIdentifierPrecedesOtherTypeIdentifier):
30632 (TestWebKitAPI::TEST):
30633 * TestWebKitAPI/ios/DataInteractionSimulator.h:
30634 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
30635 (-[DataInteractionSimulator _advanceProgress]):
30636 (-[DataInteractionSimulator sourceItemProviders]):
30637 (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
30639 2017-04-03 Carlos Alberto Lopez Perez <clopez@igalia.com>
30641 [GTK][JHBuild] Update mesa repository url for tarballs
30642 https://bugs.webkit.org/show_bug.cgi?id=170431
30644 Reviewed by Michael Catanzaro.
30646 * gtk/jhbuild.modules:
30648 2017-04-03 Joseph Pecoraro <pecoraro@apple.com>
30650 TestWebKitAPI: Warning: Multiple build commands for Ahem.ttf
30651 https://bugs.webkit.org/show_bug.cgi?id=170430
30653 Reviewed by Alexey Proskuryakov.
30655 * TestWebKitAPI/Tests/mac/Ahem.ttf: Removed.
30656 Eliminate one of the copies of Ahem.ttf.
30658 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
30659 Once eliminated, there is now only one Ahem.ttf that is copied
30660 to the Resources bundle. Drive-by sort the project file.
30662 2017-04-03 Simon Fraser <simon.fraser@apple.com>
30664 Allow MiniBrowser windows to receive local file drags again
30665 https://bugs.webkit.org/show_bug.cgi?id=170422
30667 Reviewed by Wenson Hsieh.
30669 Adopt the new UIDelegate SPI to allow drops.
30671 * MiniBrowser/mac/WK2BrowserWindowController.m:
30672 (-[WK2BrowserWindowController _webView:dragDestinationActionMaskForDraggingInfo:]):
30674 2017-04-03 Carlos Alberto Lopez Perez <clopez@igalia.com>
30676 [GTK][JHBuild] Fetch libvpx from a release tarball instead of git
30677 https://bugs.webkit.org/show_bug.cgi?id=170426
30679 Reviewed by Michael Catanzaro.
30681 * gtk/jhbuild.modules:
30683 2017-04-03 Nan Wang <n_wang@apple.com>
30685 AX: Expose link children when doing search predication on iOS
30686 https://bugs.webkit.org/show_bug.cgi?id=170424
30687 <rdar://problem/31413335>
30689 Reviewed by Chris Fleizach.
30691 * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
30692 (AccessibilityUIElement::uiElementForSearchPredicate):
30693 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
30694 (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
30696 2017-04-03 Brian Burg <bburg@apple.com>
30698 run-safari should support launching with custom language and locale
30699 https://bugs.webkit.org/show_bug.cgi?id=170397
30701 Reviewed by Alexey Proskuryakov.
30703 Hook up -AppleLanguages and -AppleLocale to command line options.
30705 * Scripts/webkitdirs.pm:
30706 (printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
30707 (argumentsForRunAndDebugMacWebKitApp):
30709 2017-04-03 Jonathan Bedard <jbedard@apple.com>
30711 webkitpy: Provide option to skip install
30712 https://bugs.webkit.org/show_bug.cgi?id=170344
30714 Reviewed by Alexey Proskuryakov.
30716 Installing can take time for on device testing. Provide an option to skip install
30717 and use whatever driver is currently installed on the device or simulator.
30719 * Scripts/webkitpy/port/base.py:
30720 (Port.check_build): Do not check driver if skipping install.
30721 * Scripts/webkitpy/port/factory.py:
30722 (platform_options): Add '--no-install' option.
30723 * Scripts/webkitpy/port/ios.py:
30724 (IOSPort.setup_test_run): Check install option before installing.
30726 2017-04-03 Keith Miller <keith_miller@apple.com>
30728 WebAssembly: Update spec tests
30729 https://bugs.webkit.org/show_bug.cgi?id=170361
30731 Rubber-stamped by Saam Barati.
30733 Update the runner to know the new wasm spec test harness code.
30735 * Scripts/run-jsc-stress-tests:
30737 2017-04-01 Alexey Proskuryakov <ap@apple.com>
30739 Rolling back <https://trac.webkit.org/r214697>, as it made WebKit2.DataDetectionReferenceDate time out.
30741 Was REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
30742 https://bugs.webkit.org/show_bug.cgi?id=170365
30744 * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
30746 2017-04-01 Csaba Osztrogonác <ossy@webkit.org>
30748 Mac cmake buildfix after 214586.
30749 https://bugs.webkit.org/show_bug.cgi?id=170381
30751 Unreviewed speculative buildfix.
30753 * WebKitTestRunner/PlatformMac.cmake:
30755 2017-04-01 Csaba Osztrogonác <ossy@webkit.org>
30757 Unreviewed speculative Mac cmake buildfix after r214586, just for fun.
30758 https://bugs.webkit.org/show_bug.cgi?id=161675
30760 * WebKitTestRunner/PlatformMac.cmake:
30762 2017-03-31 Jonathan Bedard <jbedard@apple.com>
30764 webkitpy: Add target host concept
30765 https://bugs.webkit.org/show_bug.cgi?id=170186
30766 <rdar://problem/31301797>
30768 Reviewed by Alexey Proskuryakov.
30770 Adding the idea of a target host. Target hosts are objects conforming to the
30771 structure of the SystemHost object in Scripts/webkitpy/common/system/systemhost.py
30772 Target hosts are the hosts associated with a worker process.
30774 * Scripts/webkitpy/common/system/filesystem.py:
30775 (FileSystem.map_base_host_path): Convert a path from an absolute path on the base
30776 host to an absolute path on this host.
30777 (FileSystem.move_to_base_host): Move file from this host to the base host.
30778 (FileSystem.move_from_base_host): Move file from the base host to this host.
30779 (FileSystem.copy_to_base_host): Copy file from this host to the base host.
30780 (FileSystem.copy_from_base_host): Copy file from the base host to this host.
30781 * Scripts/webkitpy/common/system/filesystem_mock.py:
30782 (MockFileSystem.map_base_host_path): Convert a path from an absolute path on the base
30783 host to an absolute path on this host.
30784 (MockFileSystem.move_to_base_host): Move file from this host to the base host.
30785 (MockFileSystem.move_from_base_host): Move file from the base host to this host.
30786 (MockFileSystem.copy_to_base_host): Copy file from this host to the base host.
30787 (MockFileSystem.copy_from_base_host): Copy file from the base host to this host.
30788 * Scripts/webkitpy/port/base.py:
30789 (Port.target_host): Return host determined by worker number.
30790 (Port.abspath_for_test): Accept optional target_host argument to return location
30791 of test on a target host.
30792 (Port._driver_tempdir): Accept optional target_host argument to return a temporary
30793 directory on a target host.
30794 (Port.sample_process): Accept optional target_host argument to sample process on
30796 * Scripts/webkitpy/port/darwin.py:
30797 (DarwinPort.sample_process): Run sample process on target host.
30798 (DarwinPort.sample_file_path): Accept directory for file.
30799 (DarwinPort.spindump_file_path): Ditto.
30800 * Scripts/webkitpy/port/darwin_testcase.py:
30801 (DarwinTest.test_spindump): Check file movement.
30802 (DarwinTest.test_sample_process): Ditto.
30803 (DarwinTest.test_sample_process_exception):
30804 * Scripts/webkitpy/port/driver.py:
30805 (Driver.__init__): Add and set self._target_host variable.
30806 (Driver._start): Pass target host to _driver_tempdir().
30807 (Driver.stop): Call the target host's rmtree.
30808 (Driver._check_for_driver_timeout): Pass target host to sample_process.
30809 (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
30810 (Driver._command_from_driver_input): Pass target host to abspath_for_test and map
30811 layout test directory to target host.
30812 * Scripts/webkitpy/port/ios.py:
30814 (IOSPort.target_host): Replaced device_for_worker_number.
30815 (IOSPort.setup_test_run): Replace device_for_worker_number with target_host.
30816 (IOSPort.device_for_worker_number): Replaced with target_host.
30817 * Scripts/webkitpy/port/server_process.py:
30818 (ServerProcess.__init__): Accept target_host instead of worker_number.
30819 (ServerProcess._start): Replace _host with _target_host.
30820 (ServerProcess._handle_timeout): Ditto.
30821 (ServerProcess._kill): Ditto.
30822 * Scripts/webkitpy/port/simulator_process.py:
30823 (SimulatorProcess.__init__): Accept target_host instead of worker_number.
30824 (SimulatorProcess._start): Replace _device with _target_host.
30825 (SimulatorProcess.stop): Ditto.
30826 (SimulatorProcess._kill): Deleted.
30828 2017-03-31 Jonathan Bedard <jbedard@apple.com>
30830 Unreviewed fix after r214569
30831 https://bugs.webkit.org/show_bug.cgi?id=170255
30833 Unreviewed infrastructure fix.
30835 * Scripts/webkitpy/port/ios.py:
30836 (IOSPort.clean_up_test_run): Check if the device is defined before teardown.
30838 2017-03-31 Andy Estes <aestes@apple.com>
30840 REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
30841 https://bugs.webkit.org/show_bug.cgi?id=170365
30842 <rdar://problem/29205721>
30844 Reviewed by Tim Horton.
30846 * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
30847 (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
30848 (TEST): Re-enabled the test, which now passes.
30850 2017-03-31 Tim Horton <timothy_horton@apple.com>
30852 Mail can get stuck underneath FindController::findStringMatches after searching in a long message
30853 https://bugs.webkit.org/show_bug.cgi?id=170326
30854 <rdar://problem/30330395>
30856 Reviewed by Simon Fraser.
30858 * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
30861 2017-03-31 Carlos Garcia Campos <cgarcia@igalia.com>
30863 Unreviewed. Fix WTR crashes in GTK+ port after r214413.
30865 Fixes: http/tests/ssl/upgrade-origin-usage.html
30866 http/tests/websocket/tests/hybi/network-process-crash-error.html
30867 http/tests/websocket/tests/hybi/simple-wss.html
30869 * WebKitTestRunner/gtk/TestControllerGtk.cpp:
30870 (WTR::TestController::platformContext): Return the context.
30872 2017-03-30 Sam Weinig <sam@webkit.org>
30874 Expose the WKView SPI, _prepareForMoveToWindow:withCompletionHandler as WKWebView SPI
30875 https://bugs.webkit.org/show_bug.cgi?id=170315
30877 Reviewed by Simon Fraser.
30879 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
30880 * TestWebKitAPI/Tests/WebKit2Cocoa/PrepareForMoveToWindow.mm: Added.
30881 Add test showing the completion handler is called.
30883 2017-03-30 Filip Pizlo <fpizlo@apple.com>
30885 Air should support linear scan for optLevel<2
30886 https://bugs.webkit.org/show_bug.cgi?id=170161
30888 Reviewed by Saam Barati.
30890 This makes us run a bunch of JS tests at optLevel=1 to force testing of this new compiler
30893 * Scripts/run-jsc-stress-tests:
30895 2017-03-30 Aakash Jain <aakash_jain@apple.com>
30897 Support tvOS and watchOS in webkitdirs.pm
30898 https://bugs.webkit.org/show_bug.cgi?id=170267
30900 Reviewed by Alexey Proskuryakov.
30902 * Scripts/webkitdirs.pm:
30903 (determineXcodeSDK): Evaluate sdk for tvos and watchos.
30904 (xcodeSDKPlatformName): Added support for tvos and watchos.
30905 (determinePortName): Same.
30906 (isAppleCocoaWebKit): Same.
30907 (willUseAppleTVDeviceSDK): Added.
30908 (willUseAppleTVSimulatorSDK): Added.
30909 (willUseWatchDeviceSDK): Added.
30910 (willUseWatchSimulatorSDK): Added.
30911 (isTVOSWebKit): Added.
30912 (isWATCHOSWebKit): Added.
30913 (isIOSLikeWebKit): Added.
30915 2017-03-30 Wenson Hsieh <wenson_hsieh@apple.com>
30917 [WK2] Touches should not cancel when showing a custom action sheet while data interaction is active
30918 https://bugs.webkit.org/show_bug.cgi?id=170291
30919 <rdar://problem/31301388>
30921 Reviewed by Tim Horton.
30923 Adds support for testing how the custom action sheet presentation codepath interacts with data interaction, as
30924 well as a new unit test. In this case, we force data interaction to fail if touches are canceled on the
30925 shared UIApplication, and verify that data interaction completes successfully.
30927 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
30928 (TestWebKitAPI::TEST):
30929 * TestWebKitAPI/ios/DataInteractionSimulator.h:
30930 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
30931 (-[DataInteractionSimulatorApplication _cancelAllTouches]):
30932 (-[DataInteractionSimulator initWithWebView:]):
30933 (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
30934 (-[DataInteractionSimulator runFrom:to:]):
30935 (-[DataInteractionSimulator _advanceProgress]):
30936 (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
30938 2017-03-30 Per Arne Vollan <pvollan@apple.com>
30940 [Win] Pass close_fds = True in Python popen call.
30941 https://bugs.webkit.org/show_bug.cgi?id=170172
30943 Reviewed by Brent Fulgham.
30945 This was previously not supported on Windows, but in Python 2.7.10 it is.
30947 * Scripts/webkitpy/common/system/executive.py:
30948 (Executive._should_close_fds):
30949 * Scripts/webkitpy/port/server_process.py:
30950 (ServerProcess._start):
30952 2017-03-30 Aakash Jain <aakash_jain@apple.com>
30954 Change my status to be a WebKit reviewer.
30956 Unreviewed status update edit.
30958 * Scripts/webkitpy/common/config/contributors.json:
30960 2017-03-30 Carlos Alberto Lopez Perez <clopez@igalia.com>
30962 Change my status to be a WebKit reviewer.
30964 Unreviewed status update edit.
30966 * Scripts/webkitpy/common/config/contributors.json:
30968 2017-03-29 Tim Horton <timothy_horton@apple.com>
30970 Swipe gesture tests don't work on macOS Sierra
30971 https://bugs.webkit.org/show_bug.cgi?id=161675
30972 <rdar://problem/23379930>
30974 Reviewed by Darin Adler.
30976 * DumpRenderTree/mac/UIScriptControllerMac.mm:
30977 (WTR::UIScriptController::platformPlayBackEventStream):
30978 (WTR::UIScriptController::beginBackSwipe):
30979 (WTR::UIScriptController::completeBackSwipe):
30980 * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h: Copied from Tools/DumpRenderTree/mac/UIScriptControllerMac.mm.
30981 * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm: Added.
30984 (eventIsOfGestureType):
30985 (eventIsOfGestureTypes):
30986 (+[EventSerializer dictionaryForEvent:relativeToTime:]):
30987 (+[EventSerializer createEventForDictionary:inWindow:relativeToTime:]):
30988 (+[EventSerializer playEventStream:inWindow:completionHandler:]):
30989 * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.mm.
30990 * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.mm: Added.
30991 (beginSwipeBackEventStream):
30992 (completeSwipeBackEventStream):
30993 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
30994 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
30995 (WTR::UIScriptController::playBackEventStream):
30996 (WTR::UIScriptController::beginBackSwipe):
30997 (WTR::UIScriptController::completeBackSwipe):
30998 (WTR::UIScriptController::platformPlayBackEventStream):
30999 (WTR::UIScriptController::platformClearAllCallbacks): Deleted.
31000 * TestRunnerShared/UIScriptContext/UIScriptController.h:
31001 * TestRunnerShared/spi/CoreGraphicsSPI.h: Added.
31002 * TestRunnerShared/spi/IOKitSPI.h: Renamed from Tools/WebKitTestRunner/ios/IOKitSPI.h.
31003 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
31004 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
31005 (WTR::playBackEvents):
31006 (WTR::UIScriptController::beginBackSwipe):
31007 (WTR::UIScriptController::completeBackSwipe):
31008 (WTR::UIScriptController::platformPlayBackEventStream):
31010 2017-03-29 Jonathan Bedard <jbedard@apple.com>
31012 webkitpy: Robust test clean-up
31013 https://bugs.webkit.org/show_bug.cgi?id=170255
31015 Reviewed by Alexey Proskuryakov.
31017 On-device testing is the motivation for this change. Failure to run clean-up functions can
31018 result in zombie processes, residual NFS mounts and other undesirable remnants from a failed
31019 test run. Make an effort to clean-up even if exceptions are thrown during set-up or clean-up.
31021 * Scripts/webkitpy/layout_tests/controllers/manager.py:
31022 (Manager._set_up_run): Clean up test run if set-up fails.
31023 * Scripts/webkitpy/port/ios.py:
31024 (IOSPort.clean_up_test_run): Continue cleaning up devices even after an exception is thrown.
31026 2017-03-29 Jonathan Bedard <jbedard@apple.com>
31028 Simulator testing stops after the first crash
31029 <rdar://problem/31325362>
31031 Unreviewed infrastructure fix.
31033 * Scripts/webkitpy/xcode/simulated_device.py:
31035 (SimulatedDevice.launch_app): Increase timeout when attempting to launch app.
31037 2017-03-29 Jonathan Bedard <jbedard@apple.com>
31039 webkitpy: Standardize web-server port definitions
31040 https://bugs.webkit.org/show_bug.cgi?id=170144
31041 <rdar://problem/31284026>
31043 Reviewed by Daniel Bates.
31045 Default web-server ports should be declared in global variables.
31046 Add functions to web-servers which return the ports these servers
31047 are using so that other tools can forward them.
31049 * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
31050 (LayoutTestApacheHttpd.__init__): Use shared constants in http_server_base.py.
31051 * Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
31052 (TestLayoutTestApacheHttpd.test_start_cmd): Check port_to_forward for expected values.
31053 * Scripts/webkitpy/layout_tests/servers/http_server.py:
31054 (Lighttpd.__init__): Use shared constants in http_server_base.py.
31055 (Lighttpd._prepare_config): Ditto.
31056 * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
31057 (HttpServerBase): Add default port constants.
31058 (HttpServerBase.ports_to_forward): Add function to return ports used for http server.
31059 * Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
31060 (TestHttpServer.test_start_cmd): Check port_to_forward for expected values.
31061 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
31062 (WebPlatformTestServer.ports_to_forward): Add function to return ports used for web-platform tests.
31063 * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
31064 (PyWebSocket): Make default port values public.
31065 (PyWebSocket.__init__): Use public default port.
31066 (PyWebSocket.ports_to_forward): Return port used in an array.
31067 * Scripts/webkitpy/port/base.py:
31068 (Port.to.ports_to_forward): Return all ports used the various web-servers managed by the port object.
31069 (Port.to.start_websocket_server): Use PyWebSocket port constants.
31071 2017-03-29 Wenson Hsieh <wenson_hsieh@apple.com>
31073 Links with empty hrefs should not be drag sources
31074 https://bugs.webkit.org/show_bug.cgi?id=170241
31075 <rdar://problem/31305505>
31077 Reviewed by Tim Horton.
31079 Adds a new API test: DataInteractionTests.LinkWithEmptyHREF.
31081 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
31082 (TestWebKitAPI::TEST):
31083 * TestWebKitAPI/ios/DataInteractionSimulator.h:
31085 Expose the current phase of the data interaction simulator for verifying behaviors in unit tests.
31087 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
31088 (-[DataInteractionSimulator phase]):
31090 2017-03-29 Jonathan Bedard <jbedard@apple.com>
31092 Use TCP instead of FIFOs for Simulator/Device communication
31093 https://bugs.webkit.org/show_bug.cgi?id=169419
31094 <rdar://problem/30949615>
31096 Reviewed by Alexey Proskuryakov.
31098 Using TCP instead of FIFOs when communicating with devices allows the device being tested
31099 to be on a different machine then the one handling the management of the test run.
31101 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
31102 * DumpRenderTree/mac/DumpRenderTree.mm:
31103 (dumpRenderTree): Call setUp/tearDownIOSLayoutTestCommunication() instead of using FIFOs.
31104 * Scripts/webkitpy/port/device.py:
31105 (Device.__init__): Initialize the listening_socket.
31106 (Device.listening_port): Return port of listening socket.
31107 (Device.prepare_for_testing): Open listening socket on an open port, prepare platform device
31109 (Device.finished_testing): Close listening socket associated with this device, call the
31110 platform device's finished_testing function if it exists.
31111 * Scripts/webkitpy/port/ios.py:
31112 (IOSPort.setup_test_run): Prepare each device for testing.
31113 (IOSPort.clean_up_test_run): Notify each device that testing has completed.
31114 * Scripts/webkitpy/port/ios_simulator.py:
31115 (IOSSimulatorPort): Work around device persistence bug.
31116 (IOSSimulatorPort.__init__): Ditto.
31117 * Scripts/webkitpy/port/simulator_process.py:
31118 (SimulatorProcess):
31119 (SimulatorProcess.NonBlockingFileFromSocket): Add to work around shortcomings in
31120 Python 2’s makefile.
31121 (SimulatorProcess.NonBlockingFileFromSocket.__init__): Initialize file with socket.
31122 (SimulatorProcess.ReadFileSocket.close): Close file and then socket;
31123 (SimulatorProcess.__init__): Pass TCP port over environment, remove FIFO names.
31124 (SimulatorProcess.__getattr__): Expose all file attributes.
31125 (SimulatorProcess._accept_connection_create_file): Wait for connection from server and
31126 create and return a file-like object from the incoming connection.
31127 (SimulatorProcess._start): Use TCP connections instead of FIFOs.
31128 (SimulatorProcess._start.handler): Output server port in timeout exception.
31129 (SimulatorProcess._reset): Deleted.
31130 * TestRunnerShared/IOSLayoutTestCommunication.cpp: Added.
31131 (connectToServer): Return socket connected to the provided server address.
31132 (setupiOSLayoutTestCommunication): Connect stdin, stdout and stderr as socket to a
31133 TCP server running on localhost.
31134 (tearDownIOSLayoutTestCommunication): Close stdin, stdout and stderr TCP sockets.
31135 * TestRunnerShared/IOSLayoutTestCommunication.h: Added.
31136 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
31137 * WebKitTestRunner/ios/TestControllerIOS.mm:
31138 (WTR::TestController::platformInitialize): Call setUpIOSLayoutTestCommunication()
31139 instead of using FIFOs.
31140 (WTR::TestController::platformDestroy): Call tearDownIOSLayoutTestCommunication().
31142 2017-03-29 Jonathan Bedard <jbedard@apple.com>
31144 webkitpy: Add IOSDevicePort and IOSPort tests
31145 https://bugs.webkit.org/show_bug.cgi?id=170206
31146 <rdar://problem/31308364>
31148 Reviewed by Alexey Proskuryakov.
31150 * Scripts/webkitpy/port/darwin_testcase.py: Removed unused import.
31151 * Scripts/webkitpy/port/ios_device_unittest.py: Added.
31152 (iosDeviceTest): Contains tests for the IOSDevicePort.
31153 (iosDeviceTest.make_port): Creates an IOSDevicePort with arguments.
31154 (iosDeviceTest.test_operating_system): Check for the correct operating system.
31155 * Scripts/webkitpy/port/ios_simulator_unittest.py: Moved from Tools/Scripts/webkitpy/port/ios_unittest.py.
31156 (iosSimulatorTest): Inherit from ios_testcase.
31157 (iosSimulatorTest.make_port): Ditto.
31158 (iosSimulatorTest.test_get_crash_log): Ditto.
31159 * Scripts/webkitpy/port/ios_testcase.py: Added.
31160 (iOSTest): Contains shared tests for the IOSDevicePort and IOSSimulatorPort.
31161 (iOSTest.test_driver_name): Tests for iOS app driver.
31162 (iOSTest.test_baseline_searchpath): Check that ios and ios-wk1 are in the baseline search path.
31163 * Scripts/webkitpy/port/ios_unittest.py: Moved to ios_simulator_unittest.py.
31164 * Scripts/webkitpy/port/port_testcase.py:
31165 (PortTestCase): Rename is_simulator to disable_setup to more accurately describe it's meaning.
31166 (PortTestCase.test_diff_image): Use disable_setup instead of is_simulator.
31167 (PortTestCase.test_diff_image_crashed): Ditto.
31169 2017-03-28 Jason Marcell <jmarcell@apple.com>
31171 Fix `index-expected.txt` for dashboard test results.
31172 https://bugs.webkit.org/show_bug.cgi?id=170214
31174 Reviewed by Alexey Proskuryakov.
31176 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/index-expected.txt:
31178 2017-03-28 Alexey Proskuryakov <ap@apple.com>
31180 Bot watcher's dashboard has separate settings for "mac" and "macos"
31181 https://bugs.webkit.org/show_bug.cgi?id=170164
31183 Reviewed by Tim Horton.
31185 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
31186 (Settings.prototype.parsePlatformFamily): Aded a special case for "macos".
31188 2017-03-28 Alexey Proskuryakov <ap@apple.com>
31190 Fix dashboard test results on the dashboard
31191 https://bugs.webkit.org/show_bug.cgi?id=170158
31193 Reviewed by Tim Horton.
31195 Link to result diff instead of stdio. Looking at the diff, I wonder if it can be
31196 further improved, as it's not super readable, but stdio is entirely useless in this context.
31198 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
31199 (Buildbot.prototype.dashboardTestResultsURLForIteration): Generate formatted diff link.
31201 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
31202 Fixed a typo in step name, so that it's actually treated as productive.
31204 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
31205 (BuildbotTesterQueueView.prototype.appendBuilderQueueStatus):
31206 (BuildbotTesterQueueView.prototype.update):
31207 (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
31208 Added special handling for dashboard test results.
31210 2017-03-28 Aakash Jain <aakash_jain@apple.com>
31212 Fix Dashboard test _presentPopoverForJavaScriptCoreTestRegressions
31213 https://bugs.webkit.org/show_bug.cgi?id=170193
31215 Reviewed by Alexey Proskuryakov.
31217 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
31218 Fixed the order of arguments.
31220 2017-03-28 Aakash Jain <aakash_jain@apple.com>
31222 Dashboard tests fails to fetch the revision from commits
31223 https://bugs.webkit.org/show_bug.cgi?id=170191
31225 Reviewed by Alexey Proskuryakov.
31227 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
31228 Added recordedCommitIndicesByRevisionNumber.
31229 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
31230 (setup): Populated trac.recordedCommitIndicesByRevisionNumber since the dashboard code uses this variable.
31232 2017-03-28 Timothy Horton <timothy_horton@apple.com>
31234 Safari crashes when attempting to close tab that is displaying PDF
31235 https://bugs.webkit.org/show_bug.cgi?id=170201
31236 <rdar://problem/31242019>
31238 Reviewed by Wenson Hsieh.
31240 * TestWebKitAPI/Tests/WebKit2Cocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
31242 Add a test for doAfterNextStablePresentationUpdate just like the existing
31245 2017-03-28 Jonathan Bedard <jbedard@apple.com>
31247 webkitpy: Use host pattern for devices
31248 https://bugs.webkit.org/show_bug.cgi?id=170121
31250 Reviewed by Daniel Bates.
31252 Devices should be treated like hosts throughout webkitpy
31253 so that more code can be re-used. Add the needed properties
31254 and use executive over custom implemented polling/killing
31257 * Scripts/webkitpy/port/device.py:
31259 (Device.executive): Add optional executive property.
31260 (Device.filesystem): Add optional filesystem property.
31261 (Device.user): Add optional user property.
31262 (Device.platform): Add optional platform property.
31263 (Device.workspace): Add optional workspace property.
31264 (Device.poll): Deleted.
31265 * Scripts/webkitpy/port/simulator_process.py:
31266 (SimulatorProcess.Popen.poll): Use the devices executive.
31267 (SimulatorProcess.stop): Ditto.
31268 (SimulatorProcess._kill): Ditto.
31269 * Scripts/webkitpy/xcode/simulated_device.py:
31270 (SimulatedDevice.__init__): Add executive, filesystem, user, platform
31271 and workspace to the platform device.
31272 (SimulatedDevice.poll): Deleted.
31274 2017-03-28 Aakash Jain <aakash_jain@apple.com>
31276 Dashboard test fails with error: latestIterationGetter is not a function
31277 https://bugs.webkit.org/show_bug.cgi?id=170167
31279 Reviewed by Alexey Proskuryakov.
31281 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
31282 (this.view._latestProductiveIteration): Configure _latestProductiveIteration in setup.
31284 2017-03-27 Lucas Forschler <lforschler@apple.com>
31288 2017-03-27 Lucas Forschler <lforschler@apple.com>
31292 2017-03-27 Lucas Forschler <lforschler@apple.com>
31296 2017-03-27 Lucas Forschler <lforschler@apple.com>
31300 2017-03-27 Lucas Forschler <lforschler@apple.com>
31304 2017-03-27 Lucas Forschler <lforschler@apple.com>
31308 2017-03-27 Lucas Forschler <lforschler@apple.com>
31312 2017-03-27 Lucas Forschler <lforschler@apple.com>
31316 2017-03-27 Lucas Forschler <lforschler@apple.com>
31318 <rdar://problem/30949128>
31319 Update build.webkit.org to use port 16000 for PBChangeSource.
31321 Reviewed by Alexey Proskuryakov.
31323 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
31325 2017-03-27 Jason Marcell <jmarcell@apple.com>
31327 Bots should run the dashboard tests
31328 https://bugs.webkit.org/show_bug.cgi?id=168994
31330 Reviewed by Daniel Bates and David Kilzer.
31332 We pull the `--results-directory` argument value out so that `RunDashboardTests` can override it so that we can separately run the dashboard layout tests.
31334 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
31335 (RunWebKitTests): Define a class variable called resultDirectory for the `--results-directory` argument so that subclasses can override this if needed.
31336 (RunWebKitTests.start): Set the `--results-directory` argument value to the value of self.resultDirectory.
31337 (RunDashboardTests): Subclass of RunWebKitTests in which we run the layout tests for the Bot Watcher's Dashboard.
31338 (RunDashboardTests.start): Override the `--layout-tests-directory` to point to the dashboard layout tests.
31339 (ExtractTestResults.addCustomURLs): Update the current results URL label to indicate that it links to layout tests results and add a new link to link to dashboard layout test results.
31340 (TestFactory.__init__): Update unit tests to account for new RunDashboardTests step.
31341 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
31342 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
31344 2017-03-27 Jonathan Bedard <jbedard@apple.com>
31346 webkitpy: Look for 'ios' test expectations for IOSPorts
31347 https://bugs.webkit.org/show_bug.cgi?id=169413
31349 Reviewed by Alexey Proskuryakov.
31351 Test expectations for iOS tests should include the 'ios' folder. Modify
31352 default_baseline_search_path to include 'ios' folder and derivatives for
31355 * Scripts/webkitpy/port/ios.py:
31356 (IOSPort._generate_all_test_configurations): Moved from IOSSimulatorPort.
31357 (IOSPort.default_baseline_search_path): Add ios expectations along with port specific expectations.
31358 (IOSPort.test_expectations_file_position): Added for testing.
31359 * Scripts/webkitpy/port/ios_simulator.py:
31360 (IOSSimulatorPort._generate_all_test_configurations): Moved to IOSPort.
31361 (IOSSimulatorPort.default_baseline_search_path): Moved to IOSPort.
31363 2017-03-27 Jonathan Bedard <jbedard@apple.com>
31365 REGRESSION: Reseting _device_map on each child process
31366 <rdar://problem/31274476>
31368 Unreviewed infrastructure fix.
31370 * Scripts/webkitpy/port/ios_simulator.py:
31371 (IOSSimulatorPort): Add _DEVICE_MAP class variable.
31372 (IOSSimulatorPort.__init__): Use shared class variable
31373 (IOSSimulatorPort._device_for_worker_number_map): Use _DEVICE_MAP class variable
31374 (IOSSimulatorPort._create_devices): Ditto.
31375 (IOSSimulatorPort._quit_ios_simulator): Ditto.
31376 (IOSSimulatorPort.clean_up_test_run): Ditto.
31378 2017-03-27 Jonathan Bedard <jbedard@apple.com>
31380 REGRESSION: Failing to iterate over Simulator.managed_devices map
31381 <rdar://problem/31274476>
31383 Unreviewed infrastructure fix.
31385 * Scripts/webkitpy/port/ios_simulator.py:
31386 (IOSSimulatorPort._create_devices): Iterate through managed_devices by worker number.
31388 2017-03-27 Alex Christensen <achristensen@webkit.org>
31390 Make WebSockets work in network process
31391 https://bugs.webkit.org/show_bug.cgi?id=169930
31393 Reviewed by Youenn Fablet.
31395 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
31396 Add terminateNetworkProcess for the new test
31397 http/tests/websocket/tests/hybi/network-process-crash-error.html
31398 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
31399 (WTR::TestRunner::setAllowsAnySSLCertificate):
31400 (WTR::TestRunner::terminateNetworkProcess):
31401 * WebKitTestRunner/InjectedBundle/TestRunner.h:
31402 * WebKitTestRunner/TestController.cpp:
31403 (WTR::TestController::setAllowsAnySSLCertificate):
31404 (WTR::TestController::terminateNetworkProcess):
31405 * WebKitTestRunner/TestController.h:
31406 * WebKitTestRunner/TestInvocation.cpp:
31407 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
31408 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
31409 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
31410 (WTR::TestController::platformContext):
31411 * WebKitTestRunner/gtk/TestControllerGtk.cpp:
31412 (WTR::TestController::platformContext):
31413 (WTR::TestController::platformLibraryPathForTesting):
31414 Add some infrastructure for http/tests/websocket/tests/hybi/simple-wss.html
31415 which calls testRunner.setAllowsAnySSLCertificate. It used to only be effective
31416 for the WebProcess, but SocketStreamHandleImpl::createStreams is now in the NetworkProcess,
31417 and we need its call to Settings::allowsAnySSLCertificate to be loosened for this test,
31418 which tests that wss works, but our test certificate has an invalid certificate chain.
31419 We want production software to not have the ability to have its security weakened, so this
31420 is a test code path that is only implemented in WebKitTestRunner.
31422 2017-03-25 Jonathan Bedard <jbedard@apple.com>
31424 webkitpy: Use generalized device instead of platform specific one
31425 https://bugs.webkit.org/show_bug.cgi?id=170078
31427 Reviewed by Daniel Bates.
31429 SimulatedDevice is re-created each time 'xcrun simctl list' is called. Device
31430 should remain persistent. Changing Device to a more explicit interface.
31431 SimulatedDevice no longer inherits from Device and IOSSimulator returns Devices
31432 wrapping SimulatedDevices.
31434 * Scripts/webkitpy/port/device.py: Added.
31436 (Device.__init__): Construct with platform device.
31437 (Device.install_app): Install app at app path on platform device.
31438 (Device.launch_app): Launch app with bundle ID on platform device.
31439 (Device.poll): Poll platform device.
31440 (Device.udid): Access platform device UDID.
31441 (Device.__nonzero__): Check if instantiated with a valid platform device.
31442 (Device.__eq__): Compare by udid.
31443 (Device.__ne__): Ditto.
31444 (Device.__repr__): Print out platform_device representation.
31445 * Scripts/webkitpy/port/ios_simulator.py:
31446 (IOSSimulatorPort.__init__): Initialize the _device_map to an empty dictionary.
31447 (IOSSimulatorPort._device_for_worker_number_map): Return self._device_map.
31448 (IOSSimulatorPort._create_simulators): Call Simulator.managed_devices directly.
31449 (IOSSimulatorPort._create_devices): Place Simulator.managed_devices into the
31451 (IOSSimulatorPort._quit_ios_simulator): Reset self._device_map.
31452 * Scripts/webkitpy/xcode/device.py: Removed.
31453 * Scripts/webkitpy/xcode/simulated_device.py:
31455 (SimulatedDevice.__init__): Move host, name and did to SimulatedDevice.
31456 (SimulatedDevice.__eq__): Compare two simulated devices.
31457 (SimulatedDevice.__ne__): Ditto.
31458 (SimulatedDevice.__repr__): Print name and udid.
31460 2017-03-25 Adrian Perez de Castro <aperez@igalia.com>
31462 [GTK] No value returned from PrintCustomWidgetTest::createWebKitPrintOperation() in TestPrinting.cpp
31463 https://bugs.webkit.org/show_bug.cgi?id=170059
31465 Reviewed by Carlos Garcia Campos.
31467 * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: Use "void" as return type in the declaration,
31468 the only use of the method in this same file ignores the returned value anyway.
31470 2017-03-24 Srinivasan Vijayaraghavan <svijayaraghavan@apple.com>
31472 webkitpy should be able to run API tests
31473 https://bugs.webkit.org/show_bug.cgi?id=170028
31475 Reviewed by Alexey Proskuryakov.
31477 * Scripts/webkitpy/common/config/ports.py:
31478 (DeprecatedPort.run_api_tests_command): Added.
31479 * Scripts/webkitpy/port/base.py:
31480 (Port.api_results_directory): Added.
31481 * Scripts/webkitpy/tool/steps/runtests.py:
31482 (RunTests.run): Check if we should be running API tests.
31483 (RunTests._run_api_tests): Generate script to run API tests with json output.
31484 * Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
31486 2017-03-24 Srinivasan Vijayaraghavan <svijayaraghavan@apple.com>
31488 Add JSON results for API tests
31489 https://bugs.webkit.org/show_bug.cgi?id=170021
31491 Reviewed by Alexey Proskuryakov.
31493 * Scripts/run-api-tests:
31494 (runTestsBySuite): Appends failures and timeouts to JSON data.
31495 (writeJsonDataIfApplicable): Writes JSON data to a file.
31497 2017-03-24 Lucas Forschler <lforschler@apple.com>
31499 update committer_auth.py to be python 2.7 compliant
31500 https://bugs.webkit.org/show_bug.cgi?id=170063
31502 Reviewed by Alexey Proskuryakov.
31504 * BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
31505 (CommitterAuth.authenticate):
31506 convert e.message to e.args[0]
31508 2017-03-24 Srinivasan Vijayaraghavan <svijayaraghavan@apple.com>
31510 webkitpy: Parse JSON results from run-api-tests
31511 https://bugs.webkit.org/show_bug.cgi?id=170062
31513 Reviewed by Alexey Proskuryakov.
31515 * Scripts/webkitpy/common/net/apitestresults.py: Added.
31516 (APITestResults): Structure to represent API test results.
31517 (APITestResults.__init__):
31518 (APITestResults.intersection): Return the failures common to both sets of results.
31519 (APITestResults.results_from_string): Create an APITestResults object from a JSON results string.
31520 (APITestResults.equals): Return True if both results were the same.
31521 (APITestResults.is_subset): Return True if failing tests are a subset of the other failing tests.
31522 (APITestResults.all_passed): Return True if everything passed.
31523 (APITestResults.failing_tests): List of tests that didn't pass.
31524 (APITestResults.did_exceed_test_failure_limit): Always False.
31525 * Scripts/webkitpy/common/net/apitestresults_unittest.py: Added.
31526 (APITestResultsTest): Unit tests.
31527 * Scripts/webkitpy/tool/bot/apitestresultsreader.py: Added.
31528 (APITestResultsReader): Read contents of JSON results file.
31530 2017-03-24 Alex Christensen <achristensen@webkit.org>
31532 REGRESSION: Content Blocker: Blocking "a[href*=randomString]" doesn't work
31533 https://bugs.webkit.org/show_bug.cgi?id=169167
31535 Reviewed by Simon Fraser.
31537 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
31538 (TestWebKitAPI::TEST_F):
31539 Test an example of a selector that was incorrectly determined to be invalid.
31541 2017-03-24 Jonathan Bedard <jbedard@apple.com>
31543 Increase timeout for booting simulators.
31544 <rdar://problem/31080009>
31546 Unreviewed infrastructure fix.
31548 * Scripts/webkitpy/xcode/simulator.py:
31549 (Simulator.wait_until_device_is_booted): Increase timeout.
31550 (Simulator.wait_until_device_is_in_state): Increase timeout.
31552 2017-03-24 Carlos Garcia Campos <cgarcia@igalia.com>
31554 Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r214277.
31556 Since r214277 beforeunload events are not fired unless there's some user interaction, so we need to simulate it
31557 in our unit tests to work.
31559 * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
31560 (testWebViewJavaScriptDialogs):
31562 2017-03-24 Carlos Garcia Campos <cgarcia@igalia.com>
31564 [GTK] Add MIMETypeRegistry implementation using xdgmime and remove the GTK+ one
31565 https://bugs.webkit.org/show_bug.cgi?id=170001
31567 Reviewed by Michael Catanzaro.
31569 Ignore style of xdgmime sources.
31571 * Scripts/webkitpy/tool/steps/checkstyle.py:
31573 2017-03-23 Wenson Hsieh <wenson_hsieh@apple.com>
31575 Dragging on a large image should not revert to a file icon if data interaction is enabled
31576 https://bugs.webkit.org/show_bug.cgi?id=170018
31577 <rdar://problem/31184508>
31579 Reviewed by Tim Horton.
31581 Add new tests for data interaction. LargeImageToTargetDiv verifies the change made in this patch, while
31582 AttachmentElementItemProviders was a test that was previously removed due to <rdar://problem/31038797>.
31584 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
31585 * TestWebKitAPI/Tests/WebKit2Cocoa/large-red-square.png: Added.
31586 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
31587 (TestWebKitAPI::TEST):
31589 2017-03-23 Fujii Hironori <Hironori.Fujii@sony.com>
31591 Update WinCairoRequirements.zip
31592 https://bugs.webkit.org/show_bug.cgi?id=169950
31594 Reviewed by Alex Christensen.
31596 * Scripts/update-webkit-wincairo-libs: Replace $winCairoLibsURL.
31598 == Rolled over to ChangeLog-2017-03-23 ==