1 2018-09-11 Jiewen Tan <jiewen_tan@apple.com>
3 [WebAuthN] Polish AuthenticatorManager and rename it to AuthenticatorCoordinator
4 https://bugs.webkit.org/show_bug.cgi?id=189277
5 <rdar://problem/44115936>
7 Reviewed by Chris Dumez.
9 * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm:
10 (TestWebKitAPI::TEST):
12 2018-09-10 Michael Saboff <msaboff@apple.com>
14 Test262 failure with Named Capture Groups - using a reference before the group is defined
15 https://bugs.webkit.org/show_bug.cgi?id=189407
17 Reviewed by Alex Christensen.
21 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
22 (TestWebKitAPI::TEST_F):
24 2018-09-10 Thomas Denney <tdenney@apple.com>
26 [WHLSL] Inlining should be optional
27 https://bugs.webkit.org/show_bug.cgi?id=188641
29 Reviewed by Myles C. Maxfield.
31 Inlining functions is now optional, and disabled by default. This patch
32 additionally resolves https://bugs.webkit.org/show_bug.cgi?id=189326 as
33 the code for calling functions was completely rewritten.
35 * WebGPUShadingLanguageRI/All.js: Add LateCheckAndLayoutBuffers.js
36 * WebGPUShadingLanguageRI/CallFunction.js:
37 (callFunction): Remove dependency on inlining.
38 * WebGPUShadingLanguageRI/Evaluator.js:
39 (Evaluator.prototype._snapshot): Allow null srcPtr in the case of void
40 returns from functions.
41 (Evaluator.prototype._evaluateArguments): Abstract out argument
42 evaluation, ensuring that the order is right-to-left for
43 FunctionLikeBlocks (i.e. inlined functions) and regular calls.
44 (Evaluator.prototype._evaluateFunction): Abstracted out function body
45 evaluation for inlined and non-inlined functions.
46 (Evaluator.prototype.visitFunctionLikeBlock): Ditto.
47 (Evaluator.prototype.visitCallExpression): Ditto.
48 * WebGPUShadingLanguageRI/Inline.js:
49 (_inlineFunction): Moved logic that is needed regardless of inlining
50 into LateCheckAndLayoutBuffers.js
51 (resolveInlinedFunction): Deleted.
52 * WebGPUShadingLanguageRI/LateCheckAndLayoutBuffers.js: Moved logic for
54 * WebGPUShadingLanguageRI/Prepare.js: Make inlining optional and off by
56 * WebGPUShadingLanguageRI/SPIRV.html: Update include.
57 * WebGPUShadingLanguageRI/Test.html: Ditto.
58 * WebGPUShadingLanguageRI/Test.js: Right-to-left argument evaluation,
60 * WebGPUShadingLanguageRI/index.html: Update include.
62 2018-09-10 Wenson Hsieh <wenson_hsieh@apple.com>
64 [iOS] Unable to change the value of select elements while preserving focus state
65 https://bugs.webkit.org/show_bug.cgi?id=189475
66 <rdar://problem/41125764>
68 Reviewed by Tim Horton.
70 Adds a pair of new API tests to verify that (1) resigning first responder while preserving focus does not blur
71 the focused element, and (2) if another element is focused and presents an input view while preserving focus,
72 then we reset preservation state and allow first responder resignation to blur the focused element.
74 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
75 * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm: Added.
76 (webViewForTestingFocusPreservation):
77 (TestWebKitAPI::TEST):
78 * TestWebKitAPI/cocoa/TestWKWebView.h:
79 * TestWebKitAPI/cocoa/TestWKWebView.mm:
80 (-[TestWKWebView textInputContentView]):
81 * TestWebKitAPI/ios/UIKitSPI.h:
83 2018-09-10 Thomas Denney <tdenney@apple.com>
85 [WHLSL] Add the test shader type
86 https://bugs.webkit.org/show_bug.cgi?id=189484
88 Reviewed by Myles C. Maxfield.
90 Tests are now precedeed by the 'test' keyword so that they are treated
91 as entry points, in the same way as vertex and fragment shaders.
93 * WebGPUShadingLanguageRI/LateChecker.js:
94 (LateChecker.prototype._checkShaderType): Allow tests to return any
95 type, as some currently return void/pointer types.
96 * WebGPUShadingLanguageRI/Parse.js:
97 (parseFuncDecl): Add the test keyword.
98 * WebGPUShadingLanguageRI/Test.js: Prepend 'test' to every single test.
100 2018-09-10 Don Olmstead <don.olmstead@sony.com>
102 CBOR coders should only be compiled if WebAuthN is enabled
103 https://bugs.webkit.org/show_bug.cgi?id=189425
105 Reviewed by Jiewen Tan.
107 Just places ENABLE(WEB_AUTHN) guards around CBOR test files.
109 * TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
110 * TestWebKitAPI/Tests/WebCore/CBORValueTest.cpp:
111 * TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
113 2018-09-10 Daniel Bates <dabates@apple.com>
115 [iOS] Make WKWebView become the first responder to support testing key presses to non-editable elements
116 https://bugs.webkit.org/show_bug.cgi?id=189432
118 Reviewed by Simon Fraser.
120 Make the WKWebView become the first responder immediately without the need to focus an editable
121 element. This allows us to test that DOM keyboard events are dispatched to non-editable elements.
123 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
124 (WTR::PlatformWebView::PlatformWebView):
126 2018-09-10 Yusuke Suzuki <yusukesuzuki@slowstart.org>
128 [WTF] Add Markable<T, Traits>
129 https://bugs.webkit.org/show_bug.cgi?id=189231
131 Reviewed by Sam Weinig.
133 Add tests for Markable.
135 * TestWebKitAPI/CMakeLists.txt:
136 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
137 * TestWebKitAPI/Tests/WTF/Markable.cpp: Added.
138 (TestWebKitAPI::TEST):
140 2018-09-10 Simon Fraser <simon.fraser@apple.com>
142 Before tracking Document leaks, clear all caches
143 https://bugs.webkit.org/show_bug.cgi?id=189459
145 Reviewed by Sam Weinig.
147 It's not enough to clear the page and memory caches; font caches can reference Documents (for SVG fonts),
148 so just call WebCore::releaseMemory(), which empties caches including the page and memory caches, and
149 does the GC that we need to happen.
151 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
152 (WTR::InjectedBundle::didReceiveMessageToPage):
154 2018-09-07 Matt Rajca <mrajca@apple.com>
156 https://bugs.webkit.org/show_bug.cgi?id=189433
157 <rdar://problem/44186498> Touch Bar displays an active PIP button for audio elements (and it doesn't do anything)
159 Reviewed by Eric Carlson.
161 An API test has been added that checks the value of the canTogglePictureInPicture and ensures it
162 is NO when audio elements are playing.
164 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
165 * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.html:
166 * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
167 (TestWebKitAPI::TEST):
168 * TestWebKitAPI/Tests/WebKitCocoa/audio-with-controls.html: Added.
170 2018-09-09 Commit Queue <commit-queue@webkit.org>
172 Unreviewed, rolling out r235832.
173 https://bugs.webkit.org/show_bug.cgi?id=189464
175 Broke WebKit2 tests (Requested by ap on #webkit).
179 "[Cocoa] Turn on ARC for WebKitTestRunner"
180 https://bugs.webkit.org/show_bug.cgi?id=189228
181 https://trac.webkit.org/changeset/235832
183 2018-09-08 Simon Fraser <simon.fraser@apple.com>
185 accessibility/notification-listeners.html abandons a document
186 https://bugs.webkit.org/show_bug.cgi?id=188724
188 Reviewed by Darin Adler.
190 AccessibilityControllerMac leaked m_globalNotificationHandler, which leaks a JSValueProtect'd function,
191 which leaks a Document. Fix by using adoptNS().
193 * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
194 (WTR::AccessibilityController::addNotificationListener):
196 2018-09-08 Wenson Hsieh <wenson_hsieh@apple.com>
198 [Cocoa] Use more bridging casts in TestWebKitAPI
199 https://bugs.webkit.org/show_bug.cgi?id=189457
201 Reviewed by Darin Adler.
203 Adds some bridging casts to TestWebKitAPI, when converting betweeen several common types of objects, including:
204 CFStringRef <=> NSString
206 WKPreferences <=> WKPreferencesRef
209 * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
210 (TestWebKitAPI::TEST_F):
211 * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm:
212 (readHTMLFromPasteboard):
213 (createWebViewWithCustomPasteboardDataEnabled):
214 * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
215 (createWebViewWithCustomPasteboardDataEnabled):
216 * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
218 * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
219 (writeHTMLToPasteboard):
220 (createWebViewWithCustomPasteboardDataSetting):
221 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
223 * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
224 (TestWebKitAPI::setUpWebView):
225 (TestWebKitAPI::TEST):
226 * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
227 (writeRTFToPasteboard):
228 (writeRTFDToPasteboard):
229 (createWebViewWithCustomPasteboardDataEnabled):
231 * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
232 (createWebViewWithCustomPasteboardDataEnabled):
233 * TestWebKitAPI/Tests/WebKitCocoa/RestoreSessionStateWithoutNavigation.mm:
234 (TestWebKitAPI::TEST):
235 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
236 (webViewForTestingAttachments):
237 * TestWebKitAPI/Tests/WebKitLegacy/mac/AccessingPastedImage.mm:
238 (writeRTFDToPasteboard):
239 (TestWebKitAPI::TEST):
240 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
241 (TestWebKitAPI::TEST):
242 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
243 (checkRichTextTypePrecedesPlainTextType):
244 (TestWebKitAPI::TEST):
245 (TestWebKitAPI::setUpTestWebViewForDataTransferItems):
246 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
247 (TestWebKitAPI::TEST):
248 * TestWebKitAPI/mac/PlatformUtilitiesMac.mm:
249 (TestWebKitAPI::Util::createInjectedBundlePath):
250 (TestWebKitAPI::Util::createURLForResource):
251 (TestWebKitAPI::Util::URLForNonExistentResource):
252 (TestWebKitAPI::Util::MIMETypeForWKURLResponse):
253 * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
254 (TestWebKitAPI::WebKitAgnosticTest::loadURL):
256 2018-09-02 Darin Adler <darin@apple.com>
258 [Cocoa] Turn on ARC for WebKitTestRunner
259 https://bugs.webkit.org/show_bug.cgi?id=189228
261 Reviewed by Sam Weinig.
263 * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
264 (+[EventSerializer dictionaryForEvent:relativeToTime:]): Removed autorelease.
266 * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
267 (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Removed autorelease.
269 * WebKitTestRunner/Configurations/Base.xcconfig: Added CLANG_ENABLE_OBJC_ARC.
271 * WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm:
272 (WTR::AccessibilityController::accessibleElementById): Use a __bridge cast.
273 * WebKitTestRunner/InjectedBundle/ios/AccessibilityTextMarkerIOS.mm:
274 (WTR::AccessibilityTextMarker::isEqual): Ditto.
276 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
277 (WTR::AccessibilityUIElement::AccessibilityUIElement): Removed retain.
278 (WTR::AccessibilityUIElement::~AccessibilityUIElement): Removed release.
279 (WTR::AccessibilityUIElement::removeNotificationListener): Removed release.
280 (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use a __bridge cast.
281 (WTR::AccessibilityUIElement::textMarkerRangeForElement): Ditto.
282 (WTR::AccessibilityUIElement::textMarkerRangeLength): Ditto.
283 (WTR::AccessibilityUIElement::previousTextMarker): Ditto.
284 (WTR::AccessibilityUIElement::nextTextMarker): Ditto.
285 (WTR::AccessibilityUIElement::stringForTextMarkerRange): Ditto.
286 (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
287 (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
288 (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
289 (WTR::AccessibilityUIElement::accessibilityElementForTextMarker): Ditto.
290 (WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers): Ditto.
291 (WTR::_CGPathEnumerationIteration): Ditto.
292 (WTR::AccessibilityUIElement::pathDescription const): Ditto.
294 * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
295 (-[AccessibilityNotificationHandler dealloc]): Removed [super dealloc].
297 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
298 (WTR::AccessibilityUIElement::AccessibilityUIElement): Removed retain.
299 (WTR::AccessibilityUIElement::~AccessibilityUIElement): Removed release.
300 (WTR::AccessibilityUIElement::removeNotificationListener): Removed release.
301 (WTR::createJSStringRef): Removed autorelease.
303 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
304 (WTR::initializeWebViewConfiguration): Removed release.
305 (WTR::TestController::cocoaPlatformInitialize): Removed release.
306 (WTR::TestController::platformCreateOtherPage): Removed autorelease.
308 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
309 (-[TestRunnerWKWebView dealloc]): Removed [super dealloc] and also many
310 cases of setting properties to nil that were only present for memory
313 * WebKitTestRunner/ios/GeneratedTouchesDebugWindow.mm:
314 (-[GeneratedTouchesDebugWindow dealloc]): Removed release and [super dealloc].
316 * WebKitTestRunner/ios/HIDEventGenerator.mm:
317 (-[HIDEventGenerator dealloc]): Deleted.
318 (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]): Removed
320 (-[HIDEventGenerator markerEventReceived:]): Removed Block_release.
321 (-[HIDEventGenerator interpolatedEvents:]): Removed release.
322 (-[HIDEventGenerator sendEventStream:completionBlock:]): Removed autorelease.
324 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
325 (-[WebKitTestRunnerWindow dealloc]): Removed [super dealloc].
326 (WTR::PlatformWebView::PlatformWebView): Removed release.
327 (WTR::PlatformWebView::~PlatformWebView): Removed release.
328 (WTR::PlatformWebView::addChromeInputField): Removed release.
329 (WTR::PlatformWebView::removeChromeInputField): Removed release.
331 * WebKitTestRunner/ios/TestControllerIOS.mm:
332 (WTR::TestController::initializeInjectedBundlePath): Use __bridge cast.
333 (WTR::TestController::initializeTestPluginDirectory): Ditto.
335 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
336 (WTR::UIScriptController::accessibilitySpeakSelectionContent const):
338 (WTR::UIScriptController::enterText): Ditto.
339 (WTR::UIScriptController::selectFormPopoverTitle const): Ditto.
340 (WTR::UIScriptController::textContentType const): Ditto.
341 (WTR::UIScriptController::formInputLabel const): Ditto.
342 (WTR::UIScriptController::scrollingTreeAsText const): Ditto.
344 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
345 (WTR::PlatformWebView::~PlatformWebView): Removed release.
346 (WTR::PlatformWebView::addChromeInputField): Removed release.
348 * WebKitTestRunner/mac/TestControllerMac.mm:
349 (WTR::allowedFontFamilySet): Removed retain.
350 (WTR::systemHiddenFontFamilySet): Removed retain.
352 * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm:
353 (-[WebKitTestRunnerDraggingInfo draggingDestinationWindow]): Removed retain.
354 (-[WebKitTestRunnerDraggingInfo dealloc]): Deleted.
356 * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
357 (+[WebKitTestRunnerPasteboard _pasteboardWithName:]): Removed release.
358 (+[WebKitTestRunnerPasteboard releaseLocalPasteboards]): Removed release.
359 Method name is still OK because setting localPasteboards to nil will
361 (+[NSPasteboard superAlloc]): Added. Helper so that LocalPasteboard can
362 bypass +[NSPasteboard alloc].
363 (+[NSPasteboard superAllocWithZone:]): Ditto.
364 (+[LocalPasteboard alloc]): Call superAlloc instead of class_createInstance.
365 This is a different way to achieve the "bypass NSPasteboard" behavior we need.
366 (+[LocalPasteboard allocWithZone:]): Added. Calls superAllocWithZone: for the
367 same reason as above. Needed because, at least at this time, +[NSObject alloc]
368 calls +allocWithZone: so we have to override both.
369 (-[LocalPasteboard dealloc]): Deleted.
370 (-[LocalPasteboard addTypes:owner:]): Removed release.
372 * WebKitTestRunner/mac/WebKitTestRunnerWindow.mm:
373 (-[WebKitTestRunnerWindow dealloc]): Removed [super dealloc].
375 * WebKitTestRunner/mac/main.mm:
376 (disableAppNapInUIProcess): Removed retain.
378 2018-09-07 Fujii Hironori <Hironori.Fujii@sony.com>
380 [WinCairo][MiniBrowser][WebKit] REGRESSION(r235398): ASSERTION FAILED: !m_client.didReceiveTitleForFrame
381 https://bugs.webkit.org/show_bug.cgi?id=189336
383 Reviewed by Alex Christensen.
385 WKPageSetPageLoaderClient is deprecated. Replaced it with
386 WKPageSetPageNavigationClient.
388 * MiniBrowser/win/WebKitBrowserWindow.cpp:
389 (WebKitBrowserWindow::WebKitBrowserWindow):
390 Call WKPageSetPageNavigationClient instead of WKPageSetPageLoaderClient.
391 (WebKitBrowserWindow::didFinishNavigation):
392 Copied from didReceiveTitleForFrame. Use WKPageCopyTitle to get the title.
393 (WebKitBrowserWindow::didCommitNavigation):
394 Copied from didCommitLoadForFrame. Use WKPageCopyCommittedURL to get the URL.
395 (WebKitBrowserWindow::didReceiveTitleForFrame): Deleted.
396 (WebKitBrowserWindow::didCommitLoadForFrame): Deleted.
397 * MiniBrowser/win/WebKitBrowserWindow.h: Renamed the class methods.
399 2018-09-07 Daniel Bates <dabates@apple.com>
401 [iOS] uiController.typeCharacterUsingHardwareKeyboard("`", ...) dispatches DOM key events for ~
402 https://bugs.webkit.org/show_bug.cgi?id=189325
404 Reviewed by Wenson Hsieh.
406 Fixes an issue where the test infrastructure would incorrectly synthesized a shift key press followed
407 by a ` key press (i.e. type '~') when instructed to simulate typing a grave accent (`). Typing a
408 grave accent does not require holding the shift key.
410 * WebKitTestRunner/ios/HIDEventGenerator.mm:
411 (shouldWrapWithShiftKeyEventForCharacter):
413 2018-09-07 Frederic Wang <fwang@igalia.com>
415 [CSSOM View] Handle the scrollingElement in Element::scroll(Left/Top/Width/Height/To)
416 https://bugs.webkit.org/show_bug.cgi?id=182230
418 Reviewed by Simon Fraser.
420 This patch enables CSSOMViewScrollingAPI during test execution.
422 * DumpRenderTree/mac/DumpRenderTree.mm:
423 (enableExperimentalFeatures):
424 (resetWebPreferencesToConsistentValues):
425 * DumpRenderTree/win/DumpRenderTree.cpp:
426 (enableExperimentalFeatures):
427 * WebKitTestRunner/TestController.cpp:
428 (WTR::TestController::resetPreferencesToConsistentValues):
430 2018-09-07 Simon Fraser <simon.fraser@apple.com>
432 resultsjsonparser needs to handle leak failures
433 https://bugs.webkit.org/show_bug.cgi?id=189430
435 Reviewed by Alexey Proskuryakov.
437 Teach resultsjsonparser how to handle LEAK failures, building a FailureDocumentLeak
438 with a list of the leaked URLs.
440 * Scripts/webkitpy/common/net/resultsjsonparser.py:
441 (JSONTestResult._failure_types_from_actual_result):
442 * Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:
443 (ParsedJSONResultsTest):
446 2018-09-07 Aakash Jain <aakash_jain@apple.com>
448 [ews-build] API tests should output result summary in json
449 https://bugs.webkit.org/show_bug.cgi?id=189417
451 Reviewed by Lucas Forschler.
453 * BuildSlaveSupport/ews-build/steps.py:
454 (RunAPITests): Passed --json-output parameter to run-api-tests.
455 * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
457 2018-09-07 Commit Queue <commit-queue@webkit.org>
459 Unreviewed, rolling out r235784.
460 https://bugs.webkit.org/show_bug.cgi?id=189421
462 RunLoopCF does not agree to the fix (Requested by yusukesuzuki
467 "[RunLoopGeneric] OneShotTimer should be inactive when fired."
468 https://bugs.webkit.org/show_bug.cgi?id=189335
469 https://trac.webkit.org/changeset/235784
471 2018-09-07 Yoshiaki Jitsukawa <yoshiaki.jitsukawa@sony.com>
473 [RunLoopGeneric] OneShotTimer should be inactive when fired.
474 https://bugs.webkit.org/show_bug.cgi?id=189335
476 Reviewed by Yusuke Suzuki.
478 * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
479 (TestWebKitAPI::TEST):
481 Add test expectations about timer's active state.
483 Add a new test to restart a one-shot timer within
486 2018-09-06 Zalan Bujtas <zalan@apple.com>
488 [LFC] Add support for min/max-height percentage values.
489 https://bugs.webkit.org/show_bug.cgi?id=189391
491 Reviewed by Antti Koivisto.
493 * LayoutReloaded/misc/LFC-passing-tests.txt:
495 2018-09-06 Simon Fraser <simon.fraser@apple.com>
497 Log when leak detection changes the test result
498 https://bugs.webkit.org/show_bug.cgi?id=189293
502 When you have an "Leak" expectation in TestExpectations, it's confusing to see a test unexpectedly pass,
503 but then show up as an expected fail at the end (because leak detection happens at the end of a shard).
504 So log when leak detection changes a test result.
506 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
507 (LayoutTestRunner._annotate_results_with_additional_failures):
508 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
511 2018-09-06 Wenson Hsieh <wenson_hsieh@apple.com>
513 [macOS] [WK2] Support changing attributes for selected text (text shadow, underline, strike-through)
514 https://bugs.webkit.org/show_bug.cgi?id=189356
515 <rdar://problem/44185674>
517 Reviewed by Tim Horton.
519 Adds a new API test to verify that some font attributes (text shadow, underline, and strike-through) can be
520 added and removed using NSFontPanel.
522 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
523 * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
525 Add the new API test.
527 (TestWebKitAPI::TEST):
528 * TestWebKitAPI/cocoa/TestWKWebView.h:
529 * TestWebKitAPI/mac/NSFontPanelTesting.h: Added.
530 * TestWebKitAPI/mac/NSFontPanelTesting.mm: Added.
532 Introduce a new file that extends NSFontPanel with some additional testing functionality. This includes the
533 ability to interact with the text shadow toggle button, choose the text shadow blur radius and opacity, and
534 change underline and strike-through styles.
536 (findSubviewOfClass):
537 (findMenuItemWithTitle):
538 (-[NSFontPanel fontEffectsBox]):
540 NSFontEffectsBox (an internal AppKit class) is the sender in the case where -changeAttributes: is invoked
541 through interaction with the font panel. To simulate this for testing, grab this font effects box and pass it
542 directory to -changeAttributes:.
544 (-[NSFontPanel chooseUnderlineMenuItemWithTitle:]):
545 (-[NSFontPanel chooseStrikeThroughMenuItemWithTitle:]):
547 The supported values for these menu items are "none" and "single", which adds a single underline or
548 strike-through to selected text. We grab these menu items by asking for the font panel's NSToolbar, and finding
549 the relevant menu items via toolbar item identifiers.
551 (-[NSFontPanel _didChangeAttributes]):
552 (-[NSFontPanel shadowBlurSlider]):
553 (-[NSFontPanel shadowOpacitySlider]):
554 (-[NSFontPanel shadowToggleButton]):
555 (-[NSFontPanel toggleShadow]):
556 (-[NSFontPanel shadowOpacity]):
557 (-[NSFontPanel setShadowOpacity:]):
558 (-[NSFontPanel shadowBlur]):
559 (-[NSFontPanel setShadowBlur:]):
560 (-[NSFontPanel _toolbarItemWithIdentifier:]):
562 2018-09-06 Simon Fraser <simon.fraser@apple.com>
564 run-webkit-tests prints confusing messages when test expectations list results that are not compatible with the run options
565 https://bugs.webkit.org/show_bug.cgi?id=189219
569 If you call run-webkit-tests without --pixel-tests, and a non-ref test is marked as ImageOnlyFailure,
570 it will be reported as unexpectedly passing. This is more confusing if you run without --world-leaks, yet
571 tests are marked as [ Leak ] in TestExpectations.
573 Fix by filtering out expectations that don't apply given the run options. So without --pixel-tests,
574 a non-ref ImageOnlyFailure becomes a Pass, and without --world-leaks, a Leak becomes a Pass.
576 Add various unit tests to test the various combinations.
578 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
579 (LayoutTestRunner._update_summary_with_result):
580 (LayoutTestRunner._annotate_results_with_additional_failures):
581 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
582 (LayoutTestRunnerTests.test_update_summary_with_result):
583 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
584 (TestExpectationsModel.get_expectations_or_pass):
585 (TestExpectationsModel):
586 (TestExpectationsModel.expectations_to_string):
587 (TestExpectationsModel.get_expectations_string):
588 (TestExpectations.filtered_expectations_for_test):
590 (TestExpectations.matches_an_expected_result):
591 * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
592 * Scripts/webkitpy/layout_tests/models/test_run_results.py:
594 * Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
595 (summarized_results):
596 (SummarizedResultsTest.setUp):
597 (SummarizedResultsTest.test_summarized_results_include_passes):
598 (SummarizedResultsTest):
599 (SummarizedResultsTest.test_summarized_results_world_leaks_disabled):
600 * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
601 * Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
602 (BuildBotPrinterTests.test_print_unexpected_results):
603 (BuildBotPrinterTests.test_print_unexpected_results_with_options):
604 (BuildBotPrinterTests.test_print_results):
605 * Scripts/webkitpy/port/test.py:
608 2018-09-06 Zalan Bujtas <zalan@apple.com>
610 [LFC][BFC] Add support for min(max)-height
611 https://bugs.webkit.org/show_bug.cgi?id=189377
613 Reviewed by Antti Koivisto.
615 * LayoutReloaded/misc/LFC-passing-tests.txt:
617 2018-09-06 Dewei Zhu <dewei_zhu@apple.com>
619 BenchmarkResults.format should support specifying depth of tests to show.
620 https://bugs.webkit.org/show_bug.cgi?id=189135
622 Reviewed by Ryosuke Niwa.
624 Added the option to specify the depth of tests to show.
626 * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
628 (BenchmarkResults.format): Added 'max_depth' option.
629 (BenchmarkResults._format_tests): Added unit tests for 'max_depth'.
632 2018-09-06 Simon Fraser <simon.fraser@apple.com>
634 An EWS run that has leak test failures does not correctly add bugzilla comments showing the failures
635 https://bugs.webkit.org/show_bug.cgi?id=189368
637 Reviewed by Alexey Proskuryakov.
639 Include FailureDocumentLeak in ALL_FAILURE_CLASSES (with a fairly redundant test),
640 which should fix EWS showing leaks in Bugzilla.
642 * Scripts/webkitpy/layout_tests/models/test_failures.py:
643 (FailureDocumentLeak.__init__):
644 * Scripts/webkitpy/layout_tests/models/test_failures_unittest.py:
645 (TestFailuresTest.test_all_failure_classes):
647 2018-09-06 Commit Queue <commit-queue@webkit.org>
649 Unreviewed, rolling out r235755.
650 https://bugs.webkit.org/show_bug.cgi?id=189367
652 Didn't address the review comment (Requested by rniwa on
657 "BenchmarkResults.format should support specifying depth of
659 https://bugs.webkit.org/show_bug.cgi?id=189135
660 https://trac.webkit.org/changeset/235755
662 2018-08-29 Dewei Zhu <dewei_zhu@apple.com>
664 BenchmarkResults.format should support specifying depth of tests to show.
665 https://bugs.webkit.org/show_bug.cgi?id=189135
667 Reviewed by Ryosuke Niwa.
669 Added the option to specify the depth of tests to show.
671 * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
673 (BenchmarkResults.format): Added 'max_depth' option.
674 (BenchmarkResults._format_tests): Added unit tests for 'max_depth'.
676 2018-09-06 Thomas Denney <tdenney@apple.com>
678 [WHLSL] Call arguments should be copied as soon as they are evaluated
679 https://bugs.webkit.org/show_bug.cgi?id=189360
681 Reviewed by Myles C. Maxfield.
683 Previously all call arguments were evaluated and then their results were
684 copied into new buffers for the call. However, the results are not
685 necessarily independent, so the result should be copied immediately
688 * WebGPUShadingLanguageRI/Evaluator.js:
689 (Evaluator.prototype.visitCallExpression): Move location of copy.
691 * WebGPUShadingLanguageRI/Test.js: Add new test to verify correct
694 2018-09-06 Thomas Denney <tdenney@apple.com>
696 [WHLSL] The test suite should log the compile time for the standard library
697 https://bugs.webkit.org/show_bug.cgi?id=189354
699 Reviewed by Myles C. Maxfield.
701 The test suite previously only logged the time for test execution, and
702 not the compile time for the standard library.
704 * WebGPUShadingLanguageRI/Test.js:
706 2018-09-06 Wenson Hsieh <wenson_hsieh@apple.com>
708 [macOS] Cannot change font size at selection until font panel is shown
709 https://bugs.webkit.org/show_bug.cgi?id=189295
710 <rdar://problem/35593389>
712 Reviewed by Ryosuke Niwa.
714 Add API tests to simulate using menu items to increase or decrease font size, and also simulate using
715 NSFontPanel to specify the font family, font size, and other traits.
717 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
718 * TestWebKitAPI/Tests/mac/FontManagerTests.mm: Added.
719 (-[TestWKWebView selectedText]):
720 (-[TestWKWebView selectNextWord]):
721 (-[TestWKWebView stylePropertyAtSelectionStart:]):
722 (-[TestWKWebView stylePropertyAtSelectionEnd:]):
723 (webViewForFontManagerTesting):
724 (menuItemCellForFontAction):
725 (TestWebKitAPI::TEST):
727 2018-09-06 Zalan Bujtas <zalan@apple.com>
729 [LFC][BFC] Add support for min(max)-width
730 https://bugs.webkit.org/show_bug.cgi?id=189358
732 Reviewed by Antti Koivisto.
734 * LayoutReloaded/misc/LFC-passing-tests.txt:
736 2018-09-06 Myles C. Maxfield <mmaxfield@apple.com>
738 [WHLSL] The parser is too slow
739 https://bugs.webkit.org/show_bug.cgi?id=189014
741 Reviewed by Filip Pizlo.
743 This patch includes three changes:
744 1. Migrate from using try/catch to simply returning the WSyntaxError. This means that
745 each parser call has to check for this sentinel value. The lexer still can throw if
746 it encounters an unknown token or an unmatched "/*" token (which is rare).
747 2. After removing try/catch, making the sentinel values not inherit from Error (the
748 Error constructor was taking lots of time)
749 3. Previously, every time the parser failed (which is many times per expression) it was
750 running a regex over the entire source text to figure out where the error occurred.
751 Instead, we can preprocess the text string to find these line numbers ahead of time.
753 Together, these make the parser 75x faster. Parsing the standard library goes from 2.5
754 hours down to 2 minutes. Because it's now a reasonable length, this patch uncomments
755 the bulk of the standard library.
757 * WebGPUShadingLanguageRI/All.js:
758 * WebGPUShadingLanguageRI/Lexer.js:
760 (Lexer.prototype.lineNumberForIndex):
761 * WebGPUShadingLanguageRI/Parse.js:
766 (consumeEndOfTypeArgs):
769 (parseTypeArguments):
770 (parseType.getAddressSpace):
774 (parseCallExpression.let.parseArguments):
776 (parseSuffixOperator):
777 (parsePossibleSuffix):
779 (parsePossiblePrefix):
780 (parsePossibleTernaryConditional):
781 (parsePossibleAssignment):
782 (parsePostIncrement):
783 (parseEffectfulExpression):
784 (genericParseCommaExpression):
785 (parseEffectfulStatement):
793 (parseVariableDecls):
795 (parseSwitchStatement):
807 (parseRestrictedFuncDef):
811 * WebGPUShadingLanguageRI/SPIRV.html:
812 * WebGPUShadingLanguageRI/StandardLibrary.js:
813 (let.standardLibrary):
814 * WebGPUShadingLanguageRI/Test.html:
815 * WebGPUShadingLanguageRI/Test.js:
816 (checkFail.doPrep): Deleted.
817 * WebGPUShadingLanguageRI/WLexicalError.js: Added.
819 * WebGPUShadingLanguageRI/index.html:
821 2018-09-06 Xan Lopez <xan@igalia.com>
823 [test262] Do not call keys on a reference
824 https://bugs.webkit.org/show_bug.cgi?id=189301
826 Reviewed by Keith Miller.
828 * Scripts/test262/Runner.pm:
831 2018-09-06 David Kilzer <ddkilzer@apple.com>
833 svn-create-patch fails when svn mv is used on directory trees
834 <https://webkit.org/b/14590>
836 Reviewed by Daniel Bates.
838 * Scripts/VCSUtils.pm: Export parseSvnDiffStartLine() for
840 (parseDiffStartLine): Use parseSvnDiffStartLine().
841 (parseGitDiffStartLine): Document a prerequisite. Fix a bug
842 when parsing Git patches using `git diff --no-prefix` that have
843 non-native line endings. Found by new tests written for
844 Scripts/webkitperl/VCSUtils_unittest/parseDiffStartLine.pl.
845 (parseSvnDiffStartLine): Add. Extract logic from
846 parseDiffStartLine() for use with svn-create-patch.
848 * Scripts/svn-create-patch: Update copyright and license.
849 (generateDiff): Return early for moved directories since
850 individual files within the directory are handled separately.
851 (generateFileList): Keep track of moved directories in the
852 @additionWithHistoryDirectories array, then process this array
853 in reverse order to create delete/add patches for each file in
854 a moved directory. This also prevents duplicate patches.
855 (manufacturePatchForAdditionWithHistory): Fix a long-standing
856 bug where the path used to describe property changes contained
857 the original (moved-from) path instead of the new (moved-to)
858 path. This could cause svn-apply to fail mysteriously when
859 trying to apply an empty patch created by the property change
860 containing the moved-from path.
862 * Scripts/webkitperl/VCSUtils_unittest/parseDiffStartLine.pl: Add.
863 Tests for parseDiffStartLine(), parseGitDiffStartLine() and
864 parseSvnDiffStartLine().
866 2018-09-05 Don Olmstead <don.olmstead@sony.com>
868 [CMake] Allow port specific options on gtest
869 https://bugs.webkit.org/show_bug.cgi?id=189313
871 Reviewed by Alex Christensen.
873 Use the global property set by the gtest CMake file to add to the
874 compilation definitions for TestWebKitAPI rather than repeating the
877 * TestWebKitAPI/CMakeLists.txt:
879 2018-09-05 Woodrow Wang <woodrow_wang@apple.com>
881 Add infrastructure to dump resource load statistics
882 https://bugs.webkit.org/show_bug.cgi?id=189213
884 Reviewed by Daniel Bates.
886 The dumping functionality is not currently used, but will be included in tests for
887 <https://bugs.webkit.org/show_bug.cgi?id=187773>.
889 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
890 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
891 (WTR::TestRunner::setDumpResourceLoadStatistics):
892 * WebKitTestRunner/InjectedBundle/TestRunner.h:
893 * WebKitTestRunner/TestController.cpp:
894 (WTR::resourceStatisticsStringResultCallback):
895 (WTR::TestController::dumpResourceLoadStatistics):
896 * WebKitTestRunner/TestController.h:
897 * WebKitTestRunner/TestInvocation.cpp:
898 (WTR::TestInvocation::dumpResults):
899 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
900 (WTR::TestInvocation::setDumpResourceLoadStatistics):
901 * WebKitTestRunner/TestInvocation.h:
903 2018-09-05 Wenson Hsieh <wenson_hsieh@apple.com>
905 [macOS] DragAndDropTests.ExposeMultipleURLsInDataTransfer fails on macOS versions prior to Mojave
906 https://bugs.webkit.org/show_bug.cgi?id=189315
908 Reviewed by Tim Horton.
910 Fix the test failure by explicitly enabling custom pasteboard data.
912 * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
915 2018-09-05 Woodrow Wang <woodrow_wang@apple.com>
917 Added runtime feature flag for web API statistics
918 https://bugs.webkit.org/show_bug.cgi?id=189211
920 Reviewed by Daniel Bates.
922 Added functionality to set the runtime flag with a JavaScript exposed function
925 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
926 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
927 (WTR::TestRunner::setWebAPIStatisticsEnabled):
928 * WebKitTestRunner/InjectedBundle/TestRunner.h:
930 2018-09-05 Ross Kirsling <ross.kirsling@sony.com>
932 Add WinCairo to bot watcher's dashboard.
933 https://bugs.webkit.org/show_bug.cgi?id=189273
935 Reviewed by Aakash Jain.
937 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows10.png: Added.
938 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows10@2x.png: Added.
940 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
941 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
942 (table.queue-grid tr.platform.windows-10 img.logo): Added.
943 (table.queue-grid tr.platform.windows-8 img.logo): Deleted.
944 (table.queue-grid tr.platform.windows-xp img.logo): Deleted.
945 Add Win10 section to dashboard. Remove unused WinXP and Win8 sections.
947 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
949 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
951 Add WinCairo build, test, and EWS bots to Win10 section of dashboard.
953 2018-09-05 David Kilzer <ddkilzer@apple.com>
955 REGRESSION (r209470): EditingHistory folder is missing in EditingHistory Xcode project
957 Found using `tidy-Xcode-project-file --missing` (see Bug
958 188754). Fixes were made manually.
960 * EditingHistory/EditingHistory.xcodeproj/project.pbxproj:
961 (EditingHistory): Change the path of the folder to
962 "EditingHistory", then remove the now-redundant name.
963 (EditingHistory/Resources/DumpEditingHistory.js): Remove
964 redundant file reference since another file reference exists at
965 the top of the project file list, and that file reference is the
966 one used in the "Copy Bundle Resources" build phase.
967 (EditingHistory/Resources/EditingHistoryUtil.js): Ditto.
969 2018-09-05 David Kilzer <ddkilzer@apple.com>
971 REGRESSION (r160736): Bundle folder is missing in MiniBrowser Xcode project
973 Found using `tidy-Xcode-project-file --missing` (see Bug
974 188754). Folder fix was made manually.
976 * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
977 (Bundle): Change the path of the folder to "mac/Bundle", and set
978 the name back to "Bundle".
979 (Bundle/Info.plist): Change file reference to be relative to its
980 group. Accomplished using Xcode after fixing the folder path.
981 (Bundle/MiniBrowserBundle_Prefix.pch): Ditto.
983 2018-09-05 David Kilzer <ddkilzer@apple.com>
985 REGRESSION (r184033): ContentExtensionTester folder is missing in ContentExtensionTester Xcode project
987 Found using `tidy-Xcode-project-file --missing` (see Bug
988 188754). Fixes were made manually.
990 * ContentExtensionTester/ContentExtensionTester.xcodeproj/project.pbxproj:
991 (ContentExtensionTester): Change the path of the folder to map
992 to "." (which exists and is where main.m is located), and then
993 set the folder's name back to "ContentExtensionTester".
994 (main.m): Change file reference to be relative to its group now
995 that the group's path is fixed.
997 2018-09-04 Don Olmstead <don.olmstead@sony.com>
999 Add generic entrypoint and run loop in TestWebKitAPI
1000 https://bugs.webkit.org/show_bug.cgi?id=189287
1002 Reviewed by Michael Catanzaro.
1004 The implementations in jsconly are platform agnostic.
1006 * TestWebKitAPI/PlatformJSCOnly.cmake:
1007 Use the glib implementation of Utilities when using that as a run loop
1008 otherwise use the generic implementation.
1010 * TestWebKitAPI/PlatformUtilities.h:
1011 Remove repeated entries from Utilities.h.
1013 * TestWebKitAPI/PlatformWPE.cmake:
1014 Use the generic main.cpp.
1016 * TestWebKitAPI/generic/UtilitiesGeneric.cpp: Renamed from Tools/TestWebKitAPI/jsconly/PlatformUtilitiesJSCOnly.cpp.
1017 (TestWebKitAPI::Util::run):
1018 (TestWebKitAPI::Util::spinRunLoop):
1019 Moved to a generic implementation and added spinRunLoop.
1021 * TestWebKitAPI/generic/main.cpp: Renamed from Tools/TestWebKitAPI/jsconly/main.cpp.
1022 Share between JSCOnly and WPE
1024 * TestWebKitAPI/wpe/main.cpp: Removed.
1026 2018-09-04 Don Olmstead <don.olmstead@sony.com>
1028 [CMake] Make TestWebKitAPI dependencies explicit
1029 https://bugs.webkit.org/show_bug.cgi?id=189282
1031 Reviewed by Fujii Hironori.
1033 The config.h file includes files from JSC, WebCore and WebKit which
1034 places a dependency on those headers even when just building TestWTF.
1035 This makes the depedencies explicit for all CMake ports and shoud
1036 remove any race conditions that can be encountered when building tests.
1038 * TestWebKitAPI/CMakeLists.txt:
1039 * TestWebKitAPI/PlatformGTK.cmake:
1040 * TestWebKitAPI/PlatformWPE.cmake:
1041 * TestWebKitAPI/PlatformWin.cmake:
1043 2018-09-04 Wenson Hsieh <wenson_hsieh@apple.com>
1045 Populate "text/uri-list" with multiple URLs when the pasteboard contains multiple URLs
1046 https://bugs.webkit.org/show_bug.cgi?id=188890
1047 <rdar://problem/43648605>
1049 Reviewed by Tim Horton.
1051 * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
1052 (-[LocalPasteboard pasteboardItems]):
1054 Implement this method to avoid crashing when running layout tests that access the pasteboard.
1056 * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
1058 Add a test to verify that on macOS and iOS, multiple URLs dropped onto the page are accessible via
1061 * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
1063 Add a test that exercises 5 different ways to write one or more URLs to the pasteboard on macOS; in all cases,
1064 the URLs written to the pasteboard should be exposed to the page via "text/uri-list". In all of these different
1065 cases, the results of using `-[NSPasteboardItem stringForType:]`, `-[NSURL URLFromPasteboard:]` and
1066 `-[NSPasteboard stringForType:]` will yield different results, so the purpose of this API test is to ensure that
1067 our logic for grabbing a list of URLs from the pasteboard on macOS is robust enough to handle all of these
1068 different behaviors.
1070 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
1072 Add a test to verify that on iOS, using `-[UIPasteboard setURLs:]` to write to multiple URLs to the pasteboard
1073 and then pasting results in "text/uri-list" exposing a list of all the URLs written to the pasteboard.
1075 * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
1076 (-[LocalPasteboard pasteboardItems]):
1078 Implement this method to avoid crashing when running layout tests that access the pasteboard.
1080 2018-09-04 Simon Fraser <simon.fraser@apple.com>
1082 REGRESSION(r235408): GTK bots exiting early
1083 https://bugs.webkit.org/show_bug.cgi?id=189063
1085 Reviewed by Michael Catanzaro.
1087 WebKitTestRunner was running the world leak checks even when run without --world-leaks,
1088 causing GTK bot timeouts. So guard updateLiveDocumentsAfterTest(), checkForWorldLeaks()
1089 and findAndDumpWorldLeaks() with m_checkForWorldLeaks checks, and in
1090 TestController::handleControlCommand() print a message if the control script sends the
1091 "#CHECK FOR WORLD LEAKS" command if WTR was not run with --world-leaks.
1093 I tested that running with --world-leaks still works.
1095 * WebKitTestRunner/TestController.cpp:
1096 (WTR::TestController::resetStateToConsistentValues):
1097 (WTR::TestController::updateLiveDocumentsAfterTest):
1098 (WTR::TestController::checkForWorldLeaks):
1099 (WTR::TestController::findAndDumpWorldLeaks):
1100 (WTR::TestController::handleControlCommand):
1101 (WTR::TestController::run):
1103 2018-09-04 Myles C. Maxfield <mmaxfield@apple.com>
1105 Unreviewed follow-up to r235635
1106 https://bugs.webkit.org/show_bug.cgi?id=188940
1108 Use "let" variables instead of "var" variables.
1110 * WebGPUShadingLanguageRI/StandardLibrary.js:
1111 (let.standardLibrary):
1113 2018-09-04 Myles C. Maxfield <mmaxfield@apple.com>
1115 [WHLSL] Implement texture types
1116 https://bugs.webkit.org/show_bug.cgi?id=188940
1118 Rubber-stamped by Dean Jackson.
1120 Implement the texture types and operations. This includes Sample(), Load(), Store(), Gather(), and GetDimensions().
1121 These functions were implemented according to section 15 of the Vulkan 1.1.83 spec, which lists each operation
1122 and how to compute its results.
1124 * WebGPUShadingLanguageRI/All.js:
1125 * WebGPUShadingLanguageRI/Casts.js: Moved from Intrinsics. The texture operations need to cast too, so these are
1126 moved into a common location.
1137 * WebGPUShadingLanguageRI/Intrinsics.js: Use Casts.js and call into TextureOperations.js.
1139 (Intrinsics.checkFalse):
1140 (Intrinsics.boxVector):
1141 (Intrinsics.unboxVector):
1143 (Intrinsics.cast): Deleted.
1144 (Intrinsics.bitwiseCast): Deleted.
1145 (Intrinsics.castToHalf): Deleted.
1146 * WebGPUShadingLanguageRI/SPIRV.html:
1147 * WebGPUShadingLanguageRI/Sampler.js: Added. Represent the Sampler type.
1149 (Sampler.prototype.get rAddressMode):
1150 (Sampler.prototype.get sAddressMode):
1151 (Sampler.prototype.get tAddressMode):
1152 (Sampler.prototype.get minFilter):
1153 (Sampler.prototype.get magFilter):
1154 (Sampler.prototype.get mipmapFilter):
1155 (Sampler.prototype.get lodMinClamp):
1156 (Sampler.prototype.get lodMaxClamp):
1157 (Sampler.prototype.get maxAnisotropy):
1158 (Sampler.prototype.get compareFunction):
1159 (Sampler.prototype.get borderColor):
1160 (Sampler.prototype.calculateBorderColor.computeValues):
1161 (Sampler.prototype.calculateBorderColor):
1162 * WebGPUShadingLanguageRI/StandardLibrary.js: Update the standard library. Some of the functions were
1163 either missing or wrong.
1164 (let.standardLibrary):
1165 * WebGPUShadingLanguageRI/Test.html:
1166 * WebGPUShadingLanguageRI/Test.js: Test many, many combinations of the texture operations.
1169 (make1DTextureArray):
1171 (make2DTextureArray):
1175 (makeRW1DTextureArray):
1177 (makeRW2DTextureArray):
1179 (make2DDepthTexture):
1180 (make2DDepthTextureArray):
1181 (makeDepthTextureCube):
1182 (makeRW2DDepthTexture):
1183 (makeRW2DDepthTextureArray):
1185 * WebGPUShadingLanguageRI/Texture.js: Added. Represents each of the texture types.
1187 (Texture.prototype.get dimension):
1188 (Texture.prototype.get width):
1189 (Texture.prototype.get height):
1190 (Texture.prototype.get depth):
1191 (Texture.prototype.get levelCount):
1192 (Texture.prototype.get layerCount):
1193 (Texture.prototype.get innerType):
1194 (Texture.prototype.get data):
1195 (Texture.prototype.elementChecked):
1196 (Texture.prototype.setElementChecked):
1198 (Texture1D.prototype.widthAtLevel):
1199 (Texture1D.prototype.heightAtLevel):
1200 (Texture1D.prototype.depthAtLevel):
1201 (Texture1D.prototype.element):
1202 (Texture1D.prototype.setElement):
1204 (Texture1DArray.prototype.widthAtLevel):
1205 (Texture1DArray.prototype.heightAtLevel):
1206 (Texture1DArray.prototype.depthAtLevel):
1207 (Texture1DArray.prototype.element):
1208 (Texture1DArray.prototype.setElement):
1210 (Texture2D.prototype.widthAtLevel):
1211 (Texture2D.prototype.heightAtLevel):
1212 (Texture2D.prototype.depthAtLevel):
1213 (Texture2D.prototype.element):
1214 (Texture2D.prototype.setElement):
1216 (Texture2DArray.prototype.widthAtLevel):
1217 (Texture2DArray.prototype.heightAtLevel):
1218 (Texture2DArray.prototype.depthAtLevel):
1219 (Texture2DArray.prototype.element):
1220 (Texture2DArray.prototype.setElement):
1222 (Texture3D.prototype.widthAtLevel):
1223 (Texture3D.prototype.heightAtLevel):
1224 (Texture3D.prototype.depthAtLevel):
1225 (Texture3D.prototype.element):
1226 (Texture3D.prototype.setElement):
1228 (TextureCube.prototype.widthAtLevel):
1229 (TextureCube.prototype.heightAtLevel):
1230 (TextureCube.prototype.depthAtLevel):
1231 (TextureCube.prototype.element):
1232 (TextureCube.prototype.setElement):
1234 (Texture1DRW.prototype.widthAtLevel):
1235 (Texture1DRW.prototype.heightAtLevel):
1236 (Texture1DRW.prototype.depthAtLevel):
1237 (Texture1DRW.prototype.element):
1238 (Texture1DRW.prototype.setElement):
1240 (Texture1DArrayRW.prototype.widthAtLevel):
1241 (Texture1DArrayRW.prototype.heightAtLevel):
1242 (Texture1DArrayRW.prototype.depthAtLevel):
1243 (Texture1DArrayRW.prototype.element):
1244 (Texture1DArrayRW.prototype.setElement):
1246 (Texture2DRW.prototype.widthAtLevel):
1247 (Texture2DRW.prototype.heightAtLevel):
1248 (Texture2DRW.prototype.depthAtLevel):
1249 (Texture2DRW.prototype.element):
1250 (Texture2DRW.prototype.setElement):
1252 (Texture2DArrayRW.prototype.widthAtLevel):
1253 (Texture2DArrayRW.prototype.heightAtLevel):
1254 (Texture2DArrayRW.prototype.depthAtLevel):
1255 (Texture2DArrayRW.prototype.element):
1256 (Texture2DArrayRW.prototype.setElement):
1257 (let.TextureDepth2DArrayRW.Texture2DArrayRW.Texture3DRW):
1258 (let.TextureDepth2DArrayRW.Texture2DArrayRW.Texture3DRW.prototype.widthAtLevel):
1259 (let.TextureDepth2DArrayRW.Texture2DArrayRW.Texture3DRW.prototype.heightAtLevel):
1260 (let.TextureDepth2DArrayRW.Texture2DArrayRW.Texture3DRW.prototype.depthAtLevel):
1261 (let.TextureDepth2DArrayRW.Texture2DArrayRW.Texture3DRW.prototype.element):
1262 (let.TextureDepth2DArrayRW.Texture2DArrayRW.Texture3DRW.prototype.setElement):
1263 * WebGPUShadingLanguageRI/TextureOperations.js: Added. This implements the texture operations
1264 as described in section 15 of the Vulkan 1.1.83 spec.
1265 (depthCompareOperation):
1267 (projectionOperation):
1268 (cubeMapFaceSelection):
1269 (cubeMapCoordinateTransformation):
1270 (cubeMapDerivativeTransformation):
1271 (scaleFactorOperation):
1272 (levelOfDetailOperation):
1274 (imageLevelSelection):
1275 (strqaToUVWATransformation):
1277 (uvwaToIJKLNTransformationAndArrayLayerSelection):
1278 (integerTexelCoordinateOperations):
1281 (wrappingOperation):
1288 (computeColorFromLevel):
1290 (castToInnerTypeForGather):
1294 * WebGPUShadingLanguageRI/index.html:
1296 2018-09-04 Alexey Proskuryakov <ap@apple.com>
1298 Removing an accidentally committed debugging print.
1300 * Scripts/run-leaks: (runLeaks)
1302 2018-09-04 Alexey Proskuryakov <ap@apple.com>
1304 run-leaks should run leaks with --list (on Mojave)
1305 https://bugs.webkit.org/show_bug.cgi?id=187716
1306 <rdar://problem/42261676>
1308 Reviewed by Lucas Forschler.
1310 Also enabled dumping memgraphs. We'll be pruning these aggressively, as they take
1313 * Scripts/run-leaks:
1314 (main): Added an option to store memgraphs.
1315 (runLeaks): As there is no way to test whether the new format is supported in advance,
1316 we have to try with --list first, and retry if that fails. Also, made leaks operate
1317 on a memgraph file if we are saving it anyway.
1319 * Scripts/webkitpy/port/leakdetector.py:
1320 (LeakDetector._leaks_args): Pass --memgraph-file to run-leaks.
1321 (LeakDetector.leaks_file_name): Removed an incorrect comment.
1322 (LeakDetector.memgraph_file_name): Added.
1323 (LeakDetector.check_for_leaks): Changed how arguments are passed to _leaks_args.
1324 It is a bit ugly that leaks path ends up being computed twice, but this is the least
1325 ugly approach that I could find.
1327 * Scripts/webkitpy/port/leakdetector_unittest.py: Updated for _leaks_args changes.
1329 2018-09-04 Chris Dumez <cdumez@apple.com>
1331 Add process pool configuration flag to turn on automatic process pre-warming
1332 https://bugs.webkit.org/show_bug.cgi?id=189263
1333 <rdar://problem/44101941>
1335 Reviewed by Antti Koivisto.
1337 Add API test coverage.
1339 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1340 * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/InitialWarmedProcessUsed.mm.
1342 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1343 * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm: Removed.
1345 2018-09-04 Keith Miller <keith_miller@apple.com>
1347 Perl doesn't like calling keys on a reference
1348 https://bugs.webkit.org/show_bug.cgi?id=189261
1350 Reviewed by Michael Saboff.
1352 * Scripts/test262/Runner.pm:
1355 2018-09-04 Jer Noble <jer.noble@apple.com>
1357 REGRESSION (r234081): TestWebKitAPI.VideoControlsManager.VideoControlsManagerAudioElementFollowingUserInteraction is a flaky timeout
1358 https://bugs.webkit.org/show_bug.cgi?id=187972
1359 <rdar://problem/42667737>
1361 Reviewed by Darin Adler.
1363 Ensure that listeners are added in time to catch messages broadcast at them.
1365 * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
1366 (TestWebKitAPI::TEST):
1368 2018-09-04 Ross Kirsling <ross.kirsling@sony.com>
1371 https://bugs.webkit.org/show_bug.cgi?id=175722
1373 Reviewed by Brent Fulgham.
1375 * TestWebKitAPI/config.h:
1376 Instead of modifying the gtest source, add the necessary WTF includes here.
1378 * TestWebKitAPI/Configurations/Base.xcconfig
1379 Remove obsoleted definitions GTEST_HAS_TR1_TUPLE=0 and GTEST_HAS_RTTI=0.
1381 2018-09-03 Pablo Saavedra <psaavedra@igalia.com>
1383 [WPE] Add more WPE bots to dashboard
1384 https://bugs.webkit.org/show_bug.cgi?id=189245
1386 Reviewed by Daniel Bates.
1388 There are two missing bots which are not listed in the dashboard for
1389 a while: WPE Linux 64-bit Debug (Build) and WPE Linux 64-bit Debug (Tests)
1391 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1394 2018-09-01 Michael Catanzaro <mcatanzaro@igalia.com>
1396 [WPE] 2.21.91 fails to build with ENABLE_MINIBROWSER
1397 https://bugs.webkit.org/show_bug.cgi?id=189006
1399 Reviewed by Darin Adler.
1401 The MiniBrowser source code is missing from the tarball. Oops! Add it.
1403 * wpe/manifest.txt.in:
1405 2018-09-01 Yoshiaki Jitsukawa <yoshiaki.jitsukawa@sony.com>
1407 [WinCairo] Add CryptoDigestOpenSSL
1408 https://bugs.webkit.org/show_bug.cgi?id=188978
1410 Reviewed by Darin Adler.
1412 Add API tests for the PAL::CryptoDigest class.
1414 * TestWebKitAPI/PlatformWin.cmake:
1415 Add CryptoDigest.cpp to TestWebCoreLib_Sources.
1417 Define -DSTATICALLY_LINKED_WITH_PAL=1 to avoid warnings since
1418 without the definition the functions marked with PAL_EXPORT are supposed to be
1419 imported from another shared library, but as it is, TestWebCoreLib
1420 links PAL statically.
1422 * TestWebKitAPI/Tests/WebCore/CryptoDigest.cpp: Added.
1423 (TestWebKitAPI::toHex):
1424 (TestWebKitAPI::expect):
1425 (TestWebKitAPI::expectSHA1):
1426 (TestWebKitAPI::expectSHA224):
1427 (TestWebKitAPI::expectSHA256):
1428 (TestWebKitAPI::expectSHA384):
1429 (TestWebKitAPI::expectSHA512):
1430 (TestWebKitAPI::TEST):
1432 2018-09-01 Dan Bernstein <mitz@apple.com>
1434 [Cocoa] Crash using KVO for 'serverTrust' property of WKWebView - "this class is not key value coding-compliant for the key serverTrust"
1435 https://bugs.webkit.org/show_bug.cgi?id=189222
1436 <rdar://problem/33283179>
1438 Reviewed by Sam Weinig.
1440 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1441 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewServerTrustKVC.mm: Added.
1444 2018-08-31 Aditya Keerthi <akeerthi@apple.com>
1446 Unreviewed, add an alternate email for Aditya Keerthi.
1448 * Scripts/webkitpy/common/config/contributors.json:
1450 2018-08-31 Wenson Hsieh <wenson_hsieh@apple.com>
1452 [iOS] Consolidate the implementations of readString, stringForType, and readURL in PlatformPasteboardIOS.mm
1453 https://bugs.webkit.org/show_bug.cgi?id=189054
1454 <rdar://problem/43819779>
1456 Reviewed by Tim Horton.
1458 See WebCore/ChangeLog for more detail.
1460 * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
1461 (createWebViewWithCustomPasteboardDataEnabled):
1463 2018-08-31 Commit Queue <commit-queue@webkit.org>
1465 Unreviewed, rolling out r235565.
1466 https://bugs.webkit.org/show_bug.cgi?id=189212
1468 Broke the WHLSL build (Requested by litherum on #webkit).
1472 "[WHLSL] Remove useless code in NameResolver"
1473 https://bugs.webkit.org/show_bug.cgi?id=189176
1474 https://trac.webkit.org/changeset/235565
1476 2018-08-31 Myles C. Maxfield <mmaxfield@apple.com>
1478 [WHLSL] Remove useless code in NameResolver
1479 https://bugs.webkit.org/show_bug.cgi?id=189176
1481 Reviewed by Dean Jackson and Thomas Denney.
1483 The check will always pass becase the standard library contains at least one function with the correct name.
1485 * WebGPUShadingLanguageRI/NameResolver.js:
1486 (NameResolver.prototype.visitDotExpression):
1487 (NameResolver.prototype._handlePropertyAccess): Deleted.
1488 (NameResolver.prototype.visitIndexExpression): Deleted.
1490 2018-08-31 Simon Fraser <simon.fraser@apple.com>
1492 Make it possible to mark tests as leaks in TestExpectations
1493 https://bugs.webkit.org/show_bug.cgi?id=189088
1495 Reviewed by Jon Lee.
1497 Have webkitpy parse out "Leak" expectations in TestExpectations, and do the right
1498 thing if the test run did not use --world-leaks. Add unit tests for leaks combined
1499 with various other result combinations.
1501 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
1502 (LayoutTestRunner._update_summary_with_result):
1503 (LayoutTestRunner._annotate_results_with_additional_failures):
1504 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1505 (TestExpectationParser):
1506 (TestExpectations): The 'Leak' line was duplicated here, so remove a copy.
1507 (TestExpectations.remove_leak_failures):
1508 (TestExpectations.matches_an_expected_result):
1509 * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
1510 (Base.get_basic_tests):
1511 * Scripts/webkitpy/port/test.py:
1512 (TestList.add_reftest):
1515 2018-08-31 Zalan Bujtas <zalan@apple.com>
1517 [LFC] Add margin box verification back now that Display::Box has non-computed horizontal margin.
1518 https://bugs.webkit.org/show_bug.cgi?id=189193
1520 Reviewed by Antti Koivisto.
1522 * LayoutReloaded/misc/LFC-passing-tests.txt:
1524 2018-08-31 Antti Koivisto <antti@apple.com>
1526 Replace OptionSet |= and -= operators with add() and remove() functions
1527 https://bugs.webkit.org/show_bug.cgi?id=189169
1529 Reviewed by Anders Carlsson.
1531 * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
1532 (TestWebKitAPI::TEST):
1534 2018-08-31 Daniel Bates <dabates@apple.com>
1536 lldb-webkit: KeyError thrown for OptionSet with invalid value
1537 https://bugs.webkit.org/show_bug.cgi?id=189070
1539 Update comment to explain that we return early and do not compute the set of enumerators in the
1540 OptionSet when the underlying value of the set is an invalid value.
1542 Additionally, update the change log entry for r235482 to reflect the updated title for the bug
1543 and to better describe the change that was made.
1545 * lldb/lldb_webkit.py:
1546 (WTFOptionSetProvider.update):
1548 2018-08-31 David Kilzer <ddkilzer@apple.com>
1550 WebKitLauncher: Move WebKitLauncher.entitlements into Configurations directory
1552 This makes the Configurations folder in the Xcode project match
1553 what's in the Configurations directory on disk. Found by
1554 tidy-Xcode-project-file (see Bug 188754).
1556 * WebKitLauncher/Configurations/WebKitLauncher.entitlements: Rename from Tools/WebKitLauncher/WebKitLauncher.entitlements.
1557 * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:
1558 - Update project for file move.
1560 2018-08-31 David Kilzer <ddkilzer@apple.com>
1562 WebKitLauncher: Fix build failures
1564 * WebKitLauncher/Configurations/Base.xcconfig:
1565 (ARCHS): Use $(ARCHS_STANDARD_32_64_BIT).
1566 (MACOSX_DEPLOYMENT_TARGET): Update from Snow Leopard to Sierra.
1568 * WebKitLauncher/WebKitNightlyEnabler.m:
1569 (myApplicationWillFinishLaunching):
1570 * WebKitLauncher/main.m:
1571 (displayErrorAndQuit):
1572 (locateSafariBundle):
1573 - Use pragma to ignore deprecation warnings.
1575 2018-08-31 David Kilzer <ddkilzer@apple.com>
1577 MobileMiniBrowser: Move test2s.mp4 into Resources directory
1579 This makes the Resources folder in the Xcode project match
1580 what's in the Resources directory on disk. Found by
1581 tidy-Xcode-project-file (see Bug 188754).
1583 * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj:
1584 - Update project for file move.
1585 * MobileMiniBrowser/MobileMiniBrowserFramework/Resources/test2s.mp4: Rename from Tools/MobileMiniBrowser/MobileMiniBrowserFramework/test2s.mp4.
1587 2018-08-31 Frederic Wang <fwang@igalia.com>
1589 Bug 182053 - [CSSOM View] Implement standard behavior for scrollingElement
1590 https://bugs.webkit.org/show_bug.cgi?id=182053
1592 Reviewed by Simon Fraser.
1594 Add FIXMEs comments to add the new developer flag in the future and disable it for now.
1596 * DumpRenderTree/mac/DumpRenderTree.mm:
1597 (enableExperimentalFeatures):
1598 (resetWebPreferencesToConsistentValues):
1599 * DumpRenderTree/win/DumpRenderTree.cpp:
1600 (enableExperimentalFeatures):
1601 * WebKitTestRunner/TestController.cpp:
1602 (WTR::TestController::resetPreferencesToConsistentValues):
1604 2018-08-30 Thomas Denney <tdenney@apple.com>
1606 [WHLSL] Fix array indexing behavior
1607 https://bugs.webkit.org/show_bug.cgi?id=189175
1609 Array, pointer, and array ref types are now parsed and then constructed
1610 in reverse so that the declaration order matches the indexing order, as
1613 Reviewed by Myles C. Maxfield.
1615 * WebGPUShadingLanguageRI/Parse.js:
1617 * WebGPUShadingLanguageRI/Test.js:
1619 2018-08-30 Wenson Hsieh <wenson_hsieh@apple.com>
1621 Followup to [iOS] TestWebKitAPI.PasteImage tests are flaky failures
1622 https://bugs.webkit.org/show_bug.cgi?id=185965
1624 Reviewed by Andy Estes.
1626 The first attempt to fix these flaky tests on iOS caused timeouts on macOS while waiting for a "loaded" message
1627 from the page. To (hopefully) fix this across both platforms, make sure that we first register our script
1628 message handlers in the UI process *before* evaluating script that could propagate the script message.
1630 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
1631 (-[TestWKWebView waitForMessage:afterEvaluatingScript:]):
1634 2018-08-30 Thomas Denney <tdenney@apple.com>
1636 [WHLSL] Implement tests to verify array indexing order matches our desires
1637 https://bugs.webkit.org/show_bug.cgi?id=189099
1639 Reviewed by Myles C. Maxfield.
1641 * WebGPUShadingLanguageRI/Test.js: Add new test for array indexing order
1642 and the option to explicitly disable tests (this test is disabled by
1644 * WebGPUShadingLanguageRI/TypeRef.js:
1645 (TypeRef.wrap): Fixes typo.
1647 2018-08-30 Sihui Liu <sihui_liu@apple.com>
1649 WKNavigation.ProcessCrashDuringCallback is failing on iOS
1650 https://bugs.webkit.org/show_bug.cgi?id=189148
1652 Reviewed by Chris Dumez.
1654 We should not deference WebView or we may get WKErrorWebViewInvalidated error, because
1655 WebView could be destroyed before Web Process termination is noticed.
1657 * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
1660 2018-08-30 Zalan Bujtas <zalan@apple.com>
1662 [LFC][Floating] Formatting context roots avoid floats.
1663 https://bugs.webkit.org/show_bug.cgi?id=189150
1665 Reviewed by Antti Koivisto.
1667 * LayoutReloaded/misc/LFC-passing-tests.txt:
1669 2018-08-30 Wenson Hsieh <wenson_hsieh@apple.com>
1671 [iOS] TestWebKitAPI.PasteImage tests are flaky failures
1672 https://bugs.webkit.org/show_bug.cgi?id=185965
1674 Reviewed by Andy Estes.
1676 These tests pass reliably when run locally, but sometimes fail in automation when checking that the image
1677 element with its "src" attribute set to a new blob URL has an empty size. It's possible that this is happening
1678 because we're checking the size of the image element prior to image load after setting the blob URL; we can fix
1679 this by waiting for the "load" event (which is also done in some of the other tests in this file).
1681 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
1684 2018-08-30 Michael Catanzaro <mcatanzaro@igalia.com>
1686 Unreviewed, rolling out r235114.
1688 ostree server deleted our commits?
1692 "[Flatpak] Update to GNOME master runtime"
1693 https://bugs.webkit.org/show_bug.cgi?id=188731
1694 https://trac.webkit.org/changeset/235114
1696 2018-08-29 Myles C. Maxfield <mmaxfield@apple.com>
1698 [WHLSL] Test row-majorness of matrices
1699 https://bugs.webkit.org/show_bug.cgi?id=189101
1701 The matrix multiplication functions are temporarily commented out of the standard library,
1702 so I've temporarily copy/pasted them into the test. Matrix multiplication is not
1703 commutative, so it requires the right indexing order.
1705 Reviewed by Dean Jackson and Thomas Denney.
1707 * WebGPUShadingLanguageRI/Intrinsics.js:
1708 * WebGPUShadingLanguageRI/StandardLibrary.js:
1709 (let.standardLibrary):
1710 * WebGPUShadingLanguageRI/Test.js:
1712 2018-08-29 Jer Noble <jer.noble@apple.com>
1714 Unreviewed test gardening; NowPlayingTest API tests require High Sierra.
1716 * TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm:
1718 2018-08-29 Youenn Fablet <youenn@apple.com>
1720 Remove WebRTC legacy API implementation
1721 https://bugs.webkit.org/show_bug.cgi?id=189040
1723 Reviewed by Eric Carlson.
1725 * DumpRenderTree/mac/DumpRenderTree.mm:
1726 (enableExperimentalFeatures):
1727 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1728 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1729 (WTR::TestRunner::setWebRTCLegacyAPIEnabled): Deleted.
1730 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1731 * WebKitTestRunner/TestController.cpp:
1732 (WTR::TestController::resetPreferencesToConsistentValues):
1734 2018-08-29 Daniel Bates <dabates@apple.com>
1736 lldb-webkit: KeyError thrown for OptionSet with invalid value
1737 https://bugs.webkit.org/show_bug.cgi?id=189070
1739 Reviewed by Simon Fraser.
1741 Do not compute what enumerators are in an OptionSet with an invalid value. A local OptionSet
1742 variable is only considered valid when execution passes over its assignment/constructor.
1744 The LLDB Python API does not provide a way to determine whether a variable has a valid
1745 value (SBValue.IsValid() does not seem to check if the actual bit pattern in memory for
1746 a variable represents a valid value). So, we use a simple heuristic: when the value of
1747 the OptionSet is greater than the value of the bitmask with all enumerators set then we
1748 consider the OptionSet to be invalid. When the variable obtains a valid value then LLDB
1749 will notify us to update our state.
1751 * lldb/lldb_webkit.py:
1752 (WTFOptionSetProvider.update):
1754 2018-08-29 Chris Dumez <cdumez@apple.com>
1756 [PSON] We should only process-swap when eTLD+1 changes on navigation
1757 https://bugs.webkit.org/show_bug.cgi?id=189090
1758 <rdar://problem/43799225>
1760 Reviewed by Geoffrey Garen.
1762 Update existing PSON API tests to use different registrable domains instead of different
1763 protocols, as we now only process-swap when the eTLD+1 (aka "registrable domain") changes.
1765 Add test coverage to make sure that we do not process swap when eTLD+1 does not change.
1767 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1769 2018-08-29 Youenn Fablet <youenn@apple.com>
1771 Add a runtime flag for WebRTC unified plan
1772 https://bugs.webkit.org/show_bug.cgi?id=189068
1774 Reviewed by Eric Carlson.
1776 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1777 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1778 (WTR::TestRunner::setWebRTCUnifiedPlanEnabled):
1779 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1781 2018-08-29 Don Olmstead <don.olmstead@sony.com>
1783 [CMake] Split Tools/CMakeLists.txt into platform files
1784 https://bugs.webkit.org/show_bug.cgi?id=189093
1786 Reviewed by Michael Catanzaro.
1789 * PlatformGTK.cmake: Added.
1790 * PlatformMac.cmake: Added.
1791 * PlatformWPE.cmake: Added.
1792 * PlatformWin.cmake: Added.
1794 2018-08-29 Jer Noble <jer.noble@apple.com>
1796 Muted elements do not have their Now Playing status updated when unmuted.
1797 https://bugs.webkit.org/show_bug.cgi?id=189069
1799 Reviewed by Eric Carlson.
1801 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1802 * TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm: Added.
1803 (userInfoHasNowPlayingApplicationPID):
1804 (getNowPlayingClient):
1805 (getNowPlayingClientPid):
1806 (NowPlayingTest::webView):
1807 (NowPlayingTest::configuration):
1808 (NowPlayingTest::webViewPid):
1809 (NowPlayingTest::loadPage):
1810 (NowPlayingTest::runScriptWithUserGesture):
1811 (NowPlayingTest::runScriptWithoutUserGesture):
1812 (NowPlayingTest::executeAndWaitForPlaying):
1813 (NowPlayingTest::executeAndWaitForWebViewToBecomeNowPlaying):
1814 (NowPlayingTest::observers):
1815 (NowPlayingTest::addObserver):
1816 (NowPlayingTest::removeObserver):
1817 (NowPlayingTest::notificationCallback):
1818 (NowPlayingTest::receivedNotification):
1819 (NowPlayingTest::performAfterReceivingNotification):
1821 * TestWebKitAPI/Tests/WebKitCocoa/now-playing.html: Added.
1823 2018-08-29 Thomas Denney <tdenney@apple.com>
1825 [WHLSL] Ensure that isLValue is copied by the rewriter
1826 https://bugs.webkit.org/show_bug.cgi?id=189083
1828 The value of isLValue was not propagated when new TernaryExpressions are
1829 created in Rewriter.
1831 Reviewed by Myles C. Maxfield.
1833 * WebGPUShadingLanguageRI/Rewriter.js:
1834 (Rewriter.prototype.visitTernaryExpression):
1835 * WebGPUShadingLanguageRI/Test.js: Add new test to verify the value is
1838 2018-08-29 Myles C. Maxfield <mmaxfield@apple.com>
1840 [WHLSL] Add more functions to the standard library
1841 https://bugs.webkit.org/show_bug.cgi?id=188873
1843 Reviewed by Filip Pizlo.
1845 This patch adds the rest of the standard library to StandardLibrary.js, and updates the compiler to be able to compile it.
1847 There are a few major pieces:
1848 1. Swizzle operators are now implemented in the language, instead of as native functions
1849 2. Vector constructors are now implemented in the language, instead of as native functions
1850 3. The matrix type is implemented
1851 4. Vector operator&[] is illegal, and is removed from the compiler
1852 5. Vector index setters & index getters are now implemented in the language, instead of as native functions
1853 6. Vector and matrix equality operators are implemented in the language, instead of as native functions
1854 7. Casting a scalar to a boolean is implemented in the language, instead of as native functions
1855 8. Casting a vector to a boolean is not part of the language, and is removed from the compiler
1856 9. Half-precision floating point types are implemented
1858 * WebGPUShadingLanguageRI/All.js:
1859 * WebGPUShadingLanguageRI/BuiltinMatrixGetter.js: Copied from Tools/WebGPUShadingLanguageRI/BuiltinVectorIndexSetter.js.
1860 (BuiltinMatrixGetter):
1861 (BuiltinMatrixGetter.prototype.get height):
1862 (BuiltinMatrixGetter.prototype.get width):
1863 (BuiltinMatrixGetter.prototype.toString):
1864 (BuiltinMatrixGetter.functions):
1865 (BuiltinMatrixGetter.prototype.instantiateImplementation):
1866 * WebGPUShadingLanguageRI/BuiltinMatrixSetter.js: Renamed from Tools/WebGPUShadingLanguageRI/BuiltinVectorIndexSetter.js.
1867 (BuiltinMatrixSetter):
1868 (BuiltinMatrixSetter.prototype.get height):
1869 (BuiltinMatrixSetter.prototype.get width):
1870 (BuiltinMatrixSetter.prototype.toString):
1871 (BuiltinMatrixSetter.functions):
1872 (BuiltinMatrixSetter.prototype.instantiateImplementation):
1873 * WebGPUShadingLanguageRI/BuiltinVectorConstructors.js: Removed.
1874 * WebGPUShadingLanguageRI/BuiltinVectorEqualityOperator.js: Removed.
1875 * WebGPUShadingLanguageRI/BuiltinVectorGetter.js:
1876 (BuiltinVectorGetter.prototype.instantiateImplementation):
1877 (BuiltinVectorGetter):
1878 * WebGPUShadingLanguageRI/BuiltinVectorSetter.js:
1879 (BuiltinVectorSetter.functions):
1880 (BuiltinVectorSetter.prototype.instantiateImplementation):
1881 (BuiltinVectorSetter):
1882 * WebGPUShadingLanguageRI/CallExpression.js:
1883 (CallExpression.prototype.resolve):
1884 * WebGPUShadingLanguageRI/CheckTypesWithArguments.js:
1885 (checkTypesWithArguments.TypeWithArgumentsChecker.prototype.visitTypeRef):
1886 (checkTypesWithArguments.TypeWithArgumentsChecker):
1887 (checkTypesWithArguments):
1888 * WebGPUShadingLanguageRI/Checker.js:
1889 (Checker.prototype.visitVectorType):
1890 (Checker.prototype.visitMatrixType):
1891 * WebGPUShadingLanguageRI/ConstexprFolder.js:
1892 (ConstexprFolder.prototype.visitCallExpression):
1894 * WebGPUShadingLanguageRI/Evaluator.js:
1895 (Evaluator.prototype.visitTernaryExpression):
1896 * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
1897 (FlattenedStructOffsetGatherer.prototype.visitMatrixType):
1898 (FlattenedStructOffsetGatherer):
1899 * WebGPUShadingLanguageRI/Intrinsics.js:
1902 * WebGPUShadingLanguageRI/MatrixType.js: Renamed from Tools/WebGPUShadingLanguageRI/BuiltinVectorIndexGetter.js.
1904 (MatrixType.prototype.get elementType):
1905 (MatrixType.prototype.get numRows):
1906 (MatrixType.prototype.get numColumns):
1907 (MatrixType.prototype.get numRowsValue):
1908 (MatrixType.prototype.get numColumnsValue):
1909 (MatrixType.prototype.get size):
1910 (MatrixType.prototype.unifyImpl):
1911 (MatrixType.prototype.populateDefaultValue):
1912 (MatrixType.prototype.toString):
1913 * WebGPUShadingLanguageRI/NameContext.js:
1914 (NameContext.prototype.add):
1915 * WebGPUShadingLanguageRI/NativeType.js:
1916 (NativeType.create):
1918 * WebGPUShadingLanguageRI/OperatorAnderIndexer.js: Renamed from Tools/WebGPUShadingLanguageRI/OperatorAnderIndex.js.
1919 (OperatorAnderIndexer):
1920 * WebGPUShadingLanguageRI/OperatorBool.js: Removed.
1921 * WebGPUShadingLanguageRI/Prepare.js:
1923 * WebGPUShadingLanguageRI/Program.js:
1924 (Program.prototype.add):
1925 * WebGPUShadingLanguageRI/Rewriter.js:
1926 (Rewriter.prototype.visitMatrixType):
1928 * WebGPUShadingLanguageRI/SPIRV.html:
1929 * WebGPUShadingLanguageRI/StandardLibrary.js:
1973 (float2x2.operator):
1974 (float2x3.operator):
1975 (float2x4.operator):
1976 (float3x2.operator):
1977 (float3x3.operator):
1978 (float3x4.operator):
1979 (float4x2.operator):
1980 (float4x3.operator):
1981 (float4x4.operator):
1985 (uint.operator.length):
2013 (allVectorTypeNames):
2014 * WebGPUShadingLanguageRI/SwizzleOp.js: Removed.
2015 * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js:
2016 (synthesizeDefaultConstructorOperator.FindAllTypes.prototype.visitMatrixType):
2017 (synthesizeDefaultConstructorOperator.FindAllTypes):
2018 (synthesizeDefaultConstructorOperator):
2019 * WebGPUShadingLanguageRI/SynthesizeOperatorBool.js: Removed.
2020 * WebGPUShadingLanguageRI/Test.html:
2021 * WebGPUShadingLanguageRI/Test.js:
2024 * WebGPUShadingLanguageRI/Visitor.js:
2025 (Visitor.prototype.visitMatrixType):
2027 * WebGPUShadingLanguageRI/index.html:
2029 2018-08-29 Simon Fraser <simon.fraser@apple.com>
2031 Teach webkitpy how to check leaks and treat leaks as test failures
2032 https://bugs.webkit.org/show_bug.cgi?id=189067
2034 Reviewed by Darin Adler.
2036 Add a new "--world-leaks" argument to run-webkit-tests. When enabled, DRT/WTR are launched
2037 with a --world-leaks argument (which is renamed in this patch for consistency). This enables the
2038 behavior added in r235408, namely that they check for leaked documents after each test, and at
2039 the end of one (if --run-singly) or a set of tests run in a single DRT/WTR instance handle the
2040 "#CHECK FOR WORLD LEAKS" command to get still-live documents.
2042 LayoutTestRunner in webkitpy now has the notion of doing "post-tests work", called via _finished_test_group(),
2043 and here it sends the "#CHECK FOR WORLD LEAKS" command to the runner and parses the resulting output block.
2044 If this results block includes leaks, we convert an existing TestResult into a LEAK failure
2045 in TestRunResults.change_result_to_failure(). Leaks are then added to the ouput JSON for display in results.html
2047 Unit tests are updated with some leak examples.
2049 * DumpRenderTree/mac/DumpRenderTree.mm:
2050 (initializeGlobalsFromCommandLineOptions):
2051 * Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:
2052 (ParsedJSONResultsTest):
2053 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2054 (LayoutTestRunner._annotate_results_with_additional_failures):
2055 (LayoutTestRunner._handle_finished_test_group):
2058 (Worker._do_post_tests_work):
2059 (Worker._finished_test_group):
2060 (Worker._run_test_in_another_thread):
2061 * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
2062 (JSONLayoutResultsGenerator):
2063 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2064 (TestExpectationParser):
2066 * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
2067 (Base.get_basic_tests):
2068 * Scripts/webkitpy/layout_tests/models/test_failures.py:
2069 (determine_result_type):
2071 (FailureLeak.__init__):
2072 (FailureLeak.message):
2073 (FailureDocumentLeak):
2074 (FailureDocumentLeak.__init__):
2075 (FailureDocumentLeak.message):
2076 * Scripts/webkitpy/layout_tests/models/test_results.py:
2077 (TestResult.convert_to_failure):
2078 * Scripts/webkitpy/layout_tests/models/test_run_results.py:
2079 (TestRunResults.change_result_to_failure):
2080 (_interpret_test_failures):
2081 (summarize_results):
2082 * Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
2085 (summarized_results):
2086 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2088 * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2090 (RunTest.test_check_for_world_leaks):
2091 * Scripts/webkitpy/port/driver.py:
2092 (DriverPostTestOutput):
2093 (DriverPostTestOutput.__init__):
2094 (Driver.do_post_tests_work):
2095 (Driver._parse_world_leaks_output):
2097 (DriverProxy.do_post_tests_work):
2098 * Scripts/webkitpy/port/test.py:
2100 * WebKitTestRunner/Options.cpp:
2101 (WTR::OptionsHandler::OptionsHandler):
2102 * WebKitTestRunner/TestController.cpp:
2103 (WTR::TestController::checkForWorldLeaks):
2105 2018-08-29 David Kilzer <ddkilzer@apple.com>
2107 Remove empty directories from from svn.webkit.org repository
2108 <https://webkit.org/b/189081>
2110 * DumpRenderTree/TestNetscapePlugIn/unix: Removed.
2111 * WebKitTestRunner/UIScriptContext: Removed.
2113 2018-08-29 Pablo Saavedra <psaavedra@igalia.com>
2115 [GTK][WPE] Add JSCOnly Release bot for Linux ARMv7 Thumb2 SoftFP
2116 https://bugs.webkit.org/show_bug.cgi?id=189077
2118 Reviewed by Michael Catanzaro.
2120 Deployed new bot for WPE Release in Linux ARMv7 Thumb2 SoftFP
2121 This bot (jsconly-linux-igalia-bot-5) will run the 'JSCOnly
2122 Linux ARMv7 Thumb2 SoftFP Release' buildjob.
2124 * BuildSlaveSupport/build.webkit.org-config/config.json:
2125 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2127 2018-08-28 Daniel Bates <dabates@apple.com>
2129 lldb-webkit: KeyError thrown for OptionSet
2130 https://bugs.webkit.org/show_bug.cgi?id=189062
2132 Reviewed by Simon Fraser.
2134 For some reason lldb(1) may not retrieve the enumerator names for an enum value
2135 when it calls update() on the synthetic children provider. If this occurs then
2136 bail out as we cannot compute what enumerators are in the set.
2138 * lldb/lldb_webkit.py:
2139 (WTFOptionSetProvider.update):
2141 2018-08-28 Sihui Liu <sihui_liu@apple.com>
2143 Add error information to help debug test failure in WKNavigation.ProcessCrashDuringCallback
2144 https://bugs.webkit.org/show_bug.cgi?id=189037
2146 Reviewed by Chris Dumez.
2148 * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
2151 2018-08-28 David Kilzer <ddkilzer@apple.com>
2153 Fix incorrect use of `sourceTree = "<group>";` for built products and frameworks in Xcode projects
2155 Found by tidy-Xcode-project-file script (see Bug 188754).
2157 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2158 (IOKit.framework): Use `sourceTree = "<absolute>";` to match
2159 other frameworks in the project.
2160 * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj:
2161 (WebKit.framework): Use `sourceTree = BUILT_PRODUCTS_DIR;` for
2162 built product instead of relative build directory path.
2163 * jsc-cli/jsc-cli.xcodeproj/project.pbxproj:
2164 (JavaScriptCore.framework): Ditto.
2165 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
2166 (libWTF.a): Use `sourceTree = BUILT_PRODUCTS_DIR;` for built
2169 2018-08-28 Alex Christensen <achristensen@webkit.org>
2171 Fix 32-bit Mac build.
2173 * TestWebKitAPI/Tests/WebKitCocoa/RestoreSessionStateWithoutNavigation.mm:
2175 2018-08-28 Alex Christensen <achristensen@webkit.org>
2177 REGRESSION (r235391): [iOS] TestWebKitAPI.WebKit.RestoreSessionStateWithoutNavigation is timing out
2178 https://bugs.webkit.org/show_bug.cgi?id=189050
2180 Reviewed by Tim Horton.
2182 * TestWebKitAPI/Tests/WebKitCocoa/RestoreSessionStateWithoutNavigation.mm:
2183 This test wasn't run on iOS before. Let's re-introduce the WK_HAVE_C_SPI guard.
2185 2018-08-28 Wenson Hsieh <wenson_hsieh@apple.com>
2187 [iOS] WKAttachmentTests.DropFolderAsAttachmentAndMoveByDragging encounters an exception on iOS simulator
2188 https://bugs.webkit.org/show_bug.cgi?id=189049
2190 Reviewed by Tim Horton.
2192 Wrap an NSURL in a RetainPtr to prevent it from being freed prematurely. It seems this broke when I changed the
2193 load handler from an Objective-C block that captured `folderURL` to a C++ lambda that didn't retain `folderURL`.
2195 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2196 (simulateFolderDragWithURL):
2198 2018-08-27 Wenson Hsieh <wenson_hsieh@apple.com>
2200 [Attachment Support] Remove WebCore::AttachmentDisplayOptions and friends
2201 https://bugs.webkit.org/show_bug.cgi?id=189004
2203 Reviewed by Dan Bernstein.
2205 Move off of deprecated attachment insertion SPI.
2207 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2208 (-[TestWKWebView synchronouslyInsertAttachmentWithFileWrapper:contentType:]):
2209 (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
2210 (-[_WKAttachment synchronouslySetDisplayOptions:error:]): Deleted.
2212 2018-08-27 Simon Fraser <simon.fraser@apple.com>
2214 Teach WebKitTestRunner and DumpRenderTree about detecting world leaks
2215 https://bugs.webkit.org/show_bug.cgi?id=188994
2217 Reviewed by Tim Horton.
2219 This patch adds the notion of a "control command" in the protocol between webkitpy and
2220 WebKitTestRunner/DumpRenderTree. A command is simply an input string starting with a #
2221 that is checked for before trying to parse the input as test URL. For now, just one
2222 commmand is supported, which is "#CHECK FOR WORLD LEAKS".
2224 In response to the command, the tool dumps an output block in the usual pseudo-MIME-style,
2225 with a trailing "#EOF". Future patches will add support to webkitpy to parse this output.
2227 DumpRenderTree stubs out the command, returning an empty block.
2229 WebKitTestRunner responds to the command by dumping the list of live documents, if it was
2230 run with the --check-for-world-leaks option.
2232 When run with --check-for-world-leaks, WebKitTestRunner gets the list of live documents via
2233 WKBundleGetLiveDocumentURLs() after every test (this allows it to detect the first test
2234 that leaked a document), and keeps them in a map of document identifier to test and live document URL.
2235 Then when it receives the "#CHECK FOR WORLD LEAKS" command, it calls into the bundle to
2236 clear the page and memory caches, runs a GC, then posts a task (in the Document::postTaks() sense)
2237 after which it requests the list of live documents for a final time, excluding any that are loaded
2238 in live Frames (thus omitting the about:blank that will be loaded at this point). Documents in this
2239 list are therefore leaked (or abandoned).
2241 Future patches will hook up webkitpy reporting for leaked documents.
2243 * DumpRenderTree/mac/DumpRenderTree.mm:
2244 (initializeGlobalsFromCommandLineOptions):
2245 (handleControlCommand):
2246 (runTestingServerLoop):
2247 * DumpRenderTree/win/DumpRenderTree.cpp:
2248 (handleControlCommand):
2250 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2252 (WTR::InjectedBundle::reportLiveDocuments):
2253 (WTR::InjectedBundle::didReceiveMessageToPage):
2254 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2255 * WebKitTestRunner/Options.cpp:
2256 (WTR::handleOptionCheckForWorldLeaks):
2257 (WTR::OptionsHandler::OptionsHandler):
2258 * WebKitTestRunner/Options.h:
2259 * WebKitTestRunner/TestController.cpp:
2260 (WTR::AsyncTask::run):
2261 (WTR::AsyncTask::currentTask):
2262 (WTR::TestController::initialize):
2263 (WTR::TestController::ensureViewSupportsOptionsForTest):
2264 (WTR::TestController::resetStateToConsistentValues):
2265 (WTR::TestController::updateLiveDocumentsAfterTest):
2266 (WTR::TestController::checkForWorldLeaks):
2267 (WTR::TestController::findAndDumpWorldLeaks):
2268 (WTR::TestController::willDestroyWebView):
2269 (WTR::parseInputLine):
2270 (WTR::TestController::waitForCompletion):
2271 (WTR::TestController::handleControlCommand):
2272 (WTR::TestController::runTestingServerLoop):
2273 (WTR::TestController::run):
2274 (WTR::TestController::didReceiveLiveDocumentsList):
2275 (WTR::TestController::didReceiveMessageFromInjectedBundle):
2276 * WebKitTestRunner/TestController.h:
2277 (WTR::AsyncTask::AsyncTask):
2278 (WTR::AsyncTask::taskComplete):
2279 (WTR::TestController::AbandonedDocumentInfo::AbandonedDocumentInfo):
2280 * WebKitTestRunner/TestInvocation.cpp:
2281 (WTR::TestInvocation::invoke):
2282 * WebKitTestRunner/TestOptions.h:
2283 (WTR::TestOptions::hasSameInitializationOptions const):
2285 2018-08-27 Alex Christensen <achristensen@webkit.org>
2287 Fix API test after r235398
2288 https://bugs.webkit.org/show_bug.cgi?id=188997
2290 * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
2291 (TestWebKitAPI::setPageLoaderClient):
2292 (TestWebKitAPI::willGoToBackForwardListItem): Deleted.
2293 willGoToBackForwardListItem is unused and unsupported. Removing its check.
2295 2018-08-27 Daniel Bates <dabates@apple.com>
2297 Partial revert of r235376
2298 https://bugs.webkit.org/show_bug.cgi?id=189011
2300 For now revert the unit tests added in r235376 as the following tests are failing on Apple Sierra
2301 Debug and Apple High Sierra Debug bots:
2303 lldb_webkit_unittest.TestSummaryProviders.serial_test_WTFOptionSetProvider_simple
2304 lldb_webkit_unittest.TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple
2306 Will investigate offline.
2308 * lldb/lldbWebKitTester/main.cpp:
2309 (testSummaryProviders):
2310 * lldb/lldb_webkit_unittest.py:
2311 (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
2312 (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty): Deleted.
2313 (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple): Deleted.
2314 (TestSummaryProviders.serial_test_WTFOptionSetProvider_empty): Deleted.
2315 (TestSummaryProviders.serial_test_WTFOptionSetProvider_simple): Deleted.
2317 2018-08-27 Aditya Keerthi <akeerthi@apple.com>
2319 Consolidate ENABLE_INPUT_TYPE_COLOR and ENABLE_INPUT_TYPE_COLOR_POPOVER
2320 https://bugs.webkit.org/show_bug.cgi?id=188931
2322 Reviewed by Wenson Hsieh.
2324 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Removed ENABLE_INPUT_TYPE_COLOR_POPOVER.
2326 2018-08-27 Justin Fan <justin_fan@apple.com>
2328 Add Justin Fan to list of WebKit contributors
2329 https://bugs.webkit.org/show_bug.cgi?id=184431
2331 * Scripts/webkitpy/common/config/contributors.json:
2333 2018-08-27 Simon Fraser <simon.fraser@apple.com>
2335 Convert timeout values in WebKitTestRunner to WTF::Seconds
2336 https://bugs.webkit.org/show_bug.cgi?id=188987
2338 Reviewed by Ryosuke Niwa.
2340 Replace various 'int' timeout values with WTF::Seconds. The timeout argument
2341 comes in as milliseconds, so convert on input. When sending messages to the InjectedBundle
2342 using integers, convert to and from milliseconds.
2344 Also do some #pragma once, and initializer cleanup.
2346 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2347 (WTR::InjectedBundle::didReceiveMessageToPage):
2348 (WTR::InjectedBundle::beginTesting):
2349 (WTR::InjectedBundle::InjectedBundle): Deleted.
2350 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2351 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2352 (WTR::TestRunner::timeout):
2353 (WTR::TestRunner::setCustomTimeout):
2354 * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
2355 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2356 * WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
2357 (WTR::TestRunner::invalidateWaitToDumpWatchdogTimer):
2358 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2359 * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
2360 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2361 * WebKitTestRunner/TestController.cpp:
2362 (WTR::TestController::TestController):
2363 (WTR::parseInputLine):
2364 (WTR::TestController::runTest):
2365 (WTR::TestController::runUntil):
2366 (WTR::TestController::didReceiveMessageFromInjectedBundle):
2367 * WebKitTestRunner/TestController.h:
2368 * WebKitTestRunner/TestInvocation.cpp:
2369 (WTR::TestInvocation::shortTimeout const):
2370 (WTR::TestInvocation::createTestSettingsDictionary):
2371 * WebKitTestRunner/TestInvocation.h:
2372 * WebKitTestRunner/TestOptions.h:
2373 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2374 (WTR::TestController::platformRunUntil):
2375 * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2376 (WTR::TestController::platformRunUntil):
2377 * WebKitTestRunner/wpe/TestControllerWPE.cpp:
2378 (WTR::TestController::platformRunUntil):
2380 2018-08-27 Simon Fraser <simon.fraser@apple.com>
2382 Convert timeout values in WebKitTestRunner to WTF::Seconds
2383 https://bugs.webkit.org/show_bug.cgi?id=188987
2385 Reviewed by Ryosuke Niwa.
2387 Replace various 'int' timeout values with WTF::Seconds. The timeout argument
2388 comes in as milliseconds, so convert on input. When sending messages to the InjectedBundle
2389 using integers, convert to and from milliseconds.
2391 Also do some #pragma once, and initializer cleanup.
2393 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2394 (WTR::InjectedBundle::didReceiveMessageToPage):
2395 (WTR::InjectedBundle::beginTesting):
2396 (WTR::InjectedBundle::InjectedBundle): Deleted.
2397 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2398 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2399 (WTR::TestRunner::timeout):
2400 (WTR::TestRunner::setCustomTimeout):
2401 * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
2402 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2403 * WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
2404 (WTR::TestRunner::invalidateWaitToDumpWatchdogTimer):
2405 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2406 * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
2407 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
2408 * WebKitTestRunner/TestController.cpp:
2409 (WTR::TestController::TestController):
2410 (WTR::parseInputLine):
2411 (WTR::TestController::runTest):
2412 (WTR::TestController::runUntil):
2413 (WTR::TestController::didReceiveMessageFromInjectedBundle):
2414 * WebKitTestRunner/TestController.h:
2415 * WebKitTestRunner/TestInvocation.cpp:
2416 (WTR::TestInvocation::shortTimeout const):
2417 (WTR::TestInvocation::createTestSettingsDictionary):
2418 * WebKitTestRunner/TestInvocation.h:
2419 * WebKitTestRunner/TestOptions.h:
2420 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2421 (WTR::TestController::platformRunUntil):
2422 * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2423 (WTR::TestController::platformRunUntil):
2424 * WebKitTestRunner/wpe/TestControllerWPE.cpp:
2425 (WTR::TestController::platformRunUntil):
2427 2018-08-27 Alex Christensen <achristensen@webkit.org>
2429 REGRESSION(r234985/r234989) WKPageLoadHTMLString with a 16-bit String has the wrong encoding
2430 https://bugs.webkit.org/show_bug.cgi?id=189002
2432 Reviewed by Tim Horton.
2434 * TestWebKitAPI/Tests/WebKit/WillLoad.cpp:
2435 (TestWebKitAPI::TEST_F):
2437 2018-08-27 Wenson Hsieh <wenson_hsieh@apple.com>
2439 [Cocoa] Exception (fileType 'dyn.agq8u' is not a valid UTI) raised when dragging an attachment whose file wrapper is a directory
2440 https://bugs.webkit.org/show_bug.cgi?id=188903
2441 <rdar://problem/43702993>
2443 Reviewed by Tim Horton.
2445 Add two API tests and adjust existing WKAttachment API tests. The new tests exercise the following scenarios, in
2447 • Dropping a folder as an attachment element, and then moving that attachment element in the document by
2448 dragging and dropping.
2449 • Using WKWebView SPI to insert a folder and a file with an unknown extension, and then using more
2450 _WKAttachment SPI to swap the attachments' backing file wrappers.
2452 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2453 (runTestWithTemporaryFolder):
2455 Add a helper function to run a test with a new folder path, created in the temporary directory and populated
2456 with some sample content. This folder is deleted after running the test.
2458 (simulateFolderDragWithURL):
2460 Add a helper function to prepare a given DragAndDropSimulator for simulating a dragged folder from a source
2461 external to the web view.
2463 (platformCopyRichTextWithMultipleAttachments):
2464 (platformCopyRichTextWithImage):
2466 (TestWebKitAPI::TEST):
2468 Add new API tests, and adjust existing tests to reflect new -setFileWrapper:…: behavior. Specifically,
2469 ChangeAttachmentDataAndFileInformation previously required that changing a _WKAttachment's NSFileWrapper would
2470 preserve the previous NSFileWrapper's preferred name if the new file wrapper does not have a preferred name, but
2471 this quirk is no longer supported.
2473 Also add a few bridging casts for the eventual transition of TestWebKitAPI to ARC.
2475 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
2477 Add a new hook to clear any external drag information on an existing DragAndDropSimulator. This is convenient
2478 when using the same DragAndDropSimulator to perform multiple drags in a single test.
2480 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2481 (-[DragAndDropSimulator clearExternalDragInformation]):
2482 * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
2483 (-[DragAndDropSimulator clearExternalDragInformation]):
2485 2018-08-27 Alex Christensen <achristensen@webkit.org>
2487 Translate 4 tests using WKPageLoaderClient to ObjC
2488 https://bugs.webkit.org/show_bug.cgi?id=188827
2490 Reviewed by Tim Horton.
2492 They use processDidBecomeUnresponsive, didChangeBackForwardList, or willGoToBackForwardListItem.
2493 Rather than introduce these to WKPageNavigationClient, I just translated the tests to use WKNavigationDelegate, which already have equivalent callbacks.
2494 willGoToBackForwardListItem had userData from the InjectedBundle, but nobody was using it so I did not add that to the ObjC SPI, so I don't test that unused
2495 bundle functionality any more.
2497 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2498 * TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp: Removed.
2499 * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp: Removed.
2500 * TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp: Removed.
2501 * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp: Removed.
2502 * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem_Bundle.cpp: Removed.
2503 * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimer.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp.
2504 (-[ResponsivenessTimerDelegate webView:didFinishNavigation:]):
2505 (-[ResponsivenessTimerDelegate _webViewWebProcessDidBecomeUnresponsive:]):
2506 (TestWebKitAPI::TEST):
2508 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2509 (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
2510 (TestWebKitAPI::setPageLoaderClient): Deleted.
2511 * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimerDoesntFireEarly.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp.
2512 (-[ResponsivenessDelegate webView:didFinishNavigation:]):
2513 (-[ResponsivenessDelegate _webViewWebProcessDidBecomeUnresponsive:]):
2514 (TestWebKitAPI::TEST):
2515 (TestWebKitAPI::didReceiveMessageFromInjectedBundle): Deleted.
2516 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2517 (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
2518 (TestWebKitAPI::setInjectedBundleClient): Deleted.
2519 (TestWebKitAPI::setPageLoaderClient): Deleted.
2520 * TestWebKitAPI/Tests/WebKitCocoa/RestoreSessionStateWithoutNavigation.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp.
2521 (-[SessionStateDelegate webView:didFinishNavigation:]):
2522 (-[SessionStateDelegate _webView:backForwardListItemAdded:removed:]):
2523 (TestWebKitAPI::createSessionStateData):
2524 (TestWebKitAPI::TEST):
2525 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2526 (TestWebKitAPI::didChangeBackForwardListForPage): Deleted.
2527 (TestWebKitAPI::setPageLoaderClient): Deleted.
2528 * TestWebKitAPI/Tests/WebKitCocoa/ShouldGoToBackForwardListItem.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp.
2529 (-[BackForwardClient webView:didFinishNavigation:]):
2530 (-[BackForwardClient _webView:willGoToBackForwardListItem:inPageCache:]):
2531 (TestWebKitAPI::TEST):
2532 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2533 (TestWebKitAPI::willGoToBackForwardListItem): Deleted.
2534 (TestWebKitAPI::setPageLoaderClient): Deleted.
2536 2018-08-27 Wenson Hsieh <wenson_hsieh@apple.com>
2538 [Cocoa] "video.html" appears at the top level of the TestWebKitAPI Xcode project
2539 https://bugs.webkit.org/show_bug.cgi?id=188989
2541 Reviewed by Andy Estes.
2543 Move this into the Tests/WebKit/Resources group in the project.
2545 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2547 2018-08-27 Thomas Denney <tdenney@apple.com>
2549 Avoid an exception in the interactive interpreter
2550 https://bugs.webkit.org/show_bug.cgi?id=188991
2552 Reviewed by Myles C. Maxfield.
2554 * WebGPUShadingLanguageRI/index.html: Corrects a typo in the name of a
2557 2018-08-27 Thomas Denney <tdenney@apple.com>
2559 Allow new vector types to work with the interactive interpreter
2560 https://bugs.webkit.org/show_bug.cgi?id=188988
2562 Reviewed by Myles C. Maxfield.
2564 * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
2565 (FlattenedStructOffsetGatherer.prototype.visitTypeRef): Do not
2566 unncessarily visit the type arguments of a TypeRef, as by this point
2567 there are none that are relevant.
2568 * WebGPUShadingLanguageRI/Intrinsics.js:
2569 (Intrinsics): Treat VectorType as a primitive type.
2571 2018-08-27 Keith Rollin <krollin@apple.com>
2573 Build system support for LTO
2574 https://bugs.webkit.org/show_bug.cgi?id=187785
2575 <rdar://problem/42353132>
2577 Reviewed by Dan Bernstein.
2579 Add tools/scripts support for controlling LTO builds.
2581 * Scripts/build-webkit: Add --lto-mode={none,thin,full}.
2582 * Scripts/set-webkit-configuration: Add support for saving LTO
2583 configuration to WebKitBuild/LTO.
2584 * Scripts/webkitdirs.pm: Add support for reading configuration from
2585 WebKitBuild/LTO and providing it to xcodebuild.
2590 2018-08-27 Daniel Bates <dabates@apple.com>
2592 lldb-webkit: Pretty-print OptionSet
2593 https://bugs.webkit.org/show_bug.cgi?id=188936
2595 Reviewed by Simon Fraser.
2597 Add LLDB formatters to pretty-print an OptionSet.
2599 * lldb/lldbWebKitTester/main.cpp:
2600 (testSummaryProviders):
2601 * lldb/lldb_webkit.py:
2602 (__lldb_init_module):
2603 (__lldb_init_module.lldb_webkit):
2604 (WTFOptionSet_SummaryProvider):
2605 (WTFOptionSetProvider):
2606 (WTFOptionSetProvider.__init__):
2607 (WTFOptionSetProvider.has_children):
2608 (WTFOptionSetProvider.num_children):
2609 (WTFOptionSetProvider.get_child_index):
2610 (WTFOptionSetProvider.get_child_at_index):
2611 (WTFOptionSetProvider.update):
2612 * lldb/lldb_webkit_unittest.py:
2613 (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
2614 (TestSummaryProviders):
2615 (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty):
2616 (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple):
2617 (TestSummaryProviders.serial_test_WTFOptionSetProvider_empty):
2618 (TestSummaryProviders.serial_test_WTFOptionSetProvider_simple):
2620 2018-08-27 Wenson Hsieh <wenson_hsieh@apple.com>
2622 [Attachment Support] [WK2] Images copied from Mail message view paste with the wrong file name in compose
2623 https://bugs.webkit.org/show_bug.cgi?id=188957
2624 <rdar://problem/43737715>
2626 Reviewed by Darin Adler.
2628 Add a new API test to verify that pasting a web archive containing several image elements with alt attributes
2629 generates _WKAttachments whose names reflect those alt attributes.
2631 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2634 (TestWebKitAPI::TEST):
2636 2018-08-27 Alex Christensen <achristensen@webkit.org>
2638 Unreviewed, rolling out r235367.
2644 "Translate 4 tests using WKPageLoaderClient to ObjC"
2645 https://bugs.webkit.org/show_bug.cgi?id=188827
2646 https://trac.webkit.org/changeset/235367
2648 2018-08-27 Alex Christensen <achristensen@webkit.org>
2652 * TestWebKitAPI/CMakeLists.txt:
2654 2018-08-27 Alex Christensen <achristensen@webkit.org>
2658 * TestWebKitAPI/PlatformWebView.h:
2660 2018-08-27 Alex Christensen <achristensen@webkit.org>
2662 Translate 4 tests using WKPageLoaderClient to ObjC
2663 https://bugs.webkit.org/show_bug.cgi?id=188827
2665 Reviewed by Tim Horton.
2667 They use processDidBecomeUnresponsive, didChangeBackForwardList, or willGoToBackForwardListItem.
2668 Rather than introduce these to WKPageNavigationClient, I just translated the tests to use WKNavigationDelegate, which already have equivalent callbacks.
2669 willGoToBackForwardListItem had userData from the InjectedBundle, but nobody was using it so I did not add that to the ObjC SPI, so I don't test that unused
2670 bundle functionality any more.
2672 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2673 * TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp: Removed.
2674 * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp: Removed.
2675 * TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp: Removed.
2676 * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp: Removed.
2677 * TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem_Bundle.cpp: Removed.
2678 * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimer.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimer.cpp.
2679 (-[ResponsivenessTimerDelegate webView:didFinishNavigation:]):
2680 (-[ResponsivenessTimerDelegate _webViewWebProcessDidBecomeUnresponsive:]):
2681 (TestWebKitAPI::TEST):
2683 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2684 (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
2685 (TestWebKitAPI::setPageLoaderClient): Deleted.
2686 * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimerDoesntFireEarly.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ResponsivenessTimerDoesntFireEarly.cpp.
2687 (-[ResponsivenessDelegate webView:didFinishNavigation:]):
2688 (-[ResponsivenessDelegate _webViewWebProcessDidBecomeUnresponsive:]):
2689 (TestWebKitAPI::TEST):
2690 (TestWebKitAPI::didReceiveMessageFromInjectedBundle): Deleted.
2691 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2692 (TestWebKitAPI::processDidBecomeUnresponsive): Deleted.
2693 (TestWebKitAPI::setInjectedBundleClient): Deleted.
2694 (TestWebKitAPI::setPageLoaderClient): Deleted.
2695 * TestWebKitAPI/Tests/WebKitCocoa/RestoreSessionStateWithoutNavigation.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/RestoreSessionStateWithoutNavigation.cpp.
2696 (-[SessionStateDelegate webView:didFinishNavigation:]):
2697 (-[SessionStateDelegate _webView:backForwardListItemAdded:removed:]):
2698 (TestWebKitAPI::createSessionStateData):
2699 (TestWebKitAPI::TEST):
2700 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2701 (TestWebKitAPI::didChangeBackForwardListForPage): Deleted.
2702 (TestWebKitAPI::setPageLoaderClient): Deleted.
2703 * TestWebKitAPI/Tests/WebKitCocoa/ShouldGoToBackForwardListItem.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit/ShouldGoToBackForwardListItem.cpp.
2704 (-[BackForwardClient webView:didFinishNavigation:]):
2705 (-[BackForwardClient _webView:willGoToBackForwardListItem:inPageCache:]):
2706 (TestWebKitAPI::TEST):
2707 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
2708 (TestWebKitAPI::willGoToBackForwardListItem): Deleted.
2709 (TestWebKitAPI::setPageLoaderClient): Deleted.
2711 2018-08-27 Keith Miller <keith_miller@apple.com>
2713 test262-runner -s --test-only should replace test results
2714 https://bugs.webkit.org/show_bug.cgi?id=188450
2716 Reviewed by Michael Saboff.
2718 * Scripts/test262/Runner.pm:
2720 (SetFailureForTest):
2723 2018-08-26 Sam Weinig <sam@webkit.org>
2725 Using _WKRemoteObjectInterface with a protocol that inherits from a non-NSObject protocol crashes
2726 https://bugs.webkit.org/show_bug.cgi?id=188958
2728 Reviewed by Anders Carlsson.
2730 * TestWebKitAPI/Tests/WebKitCocoa/RemoteObjectRegistry.h:
2731 Update test protocol to have inheritance.
2733 2018-08-26 Wenson Hsieh <wenson_hsieh@apple.com>
2735 [Attachment Support] Dropping and pasting images should insert inline image elements with _WKAttachments
2736 https://bugs.webkit.org/show_bug.cgi?id=188933
2737 <rdar://problem/43699724>
2739 Reviewed by Darin Adler.
2741 Rebaseline existing API tests that involve dropping or pasting image files, and additionally write some new
2742 tests. These new tests exercise the following cases:
2743 • Inserting and removing newlines before an inline image with an attachment element does not cause new
2744 _WKAttachments to be created and destroyed.
2745 • Pasting an image, cutting it, and then pasting it again propagates an attachment update to the UI
2746 process with the original _WKAttachment.
2747 • A pasted attachment in the document can be moved around by dragging, and doing so does not cause us to
2748 lose a _WKAttachment.
2750 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2751 (-[TestWKWebView expectElementCount:tagName:]):
2752 (TestWebKitAPI::TEST):
2754 Add the new tests described above, and also adjust existing tests to check that images are dropped or pasted
2755 as image elements, but still have associated attachment elements whose attachment identifiers (observed via
2756 script) match that of the corresponding _WKAttachment's uniqueIdentifier in the UI process.
2758 * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
2759 (-[DragAndDropSimulator runFrom:to:]):
2760 (-[DragAndDropSimulator continueDragSession]):
2761 (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
2763 Teach DragAndDropSimulator on macOS to wait until the drop has been handled by the web process before returning
2764 execution to the caller. This ensures that tests which involve dropping promised files as attachments aren't
2765 flaky, due to how the promised data is retrieved asynchronously when performing the drop.
2767 (-[DragAndDropSimulator _webView:didPerformDragOperation:]):
2769 2018-08-26 Lucas Forschler <lforschler@apple.com>
2771 Open svn.webkit.org for commits.
2773 2018-08-24 Myles C. Maxfield <mmaxfield@apple.com>
2775 Unreviewed test fix after r235249
2776 https://bugs.webkit.org/show_bug.cgi?id=178981
2778 * WebGPUShadingLanguageRI/Test.js:
2780 2018-08-24 Alex Christensen <achristensen@webkit.org>
2782 Introduce _WKInspector
2783 https://bugs.webkit.org/show_bug.cgi?id=188923
2784 <rdar://problem/34657861>
2786 Reviewed by Brian Burg.
2788 * MiniBrowser/mac/WK2BrowserWindowController.m:
2789 (-[WK2BrowserWindowController validateMenuItem:]):
2790 (-[WK2BrowserWindowController showHideWebInspector:]):
2792 2018-08-24 Jonathan Bedard <jbedard@apple.com>
2794 Fix handling of iOS minor versions in default_baseline_search_path
2795 https://bugs.webkit.org/show_bug.cgi?id=188902
2797 Reviewed by Aakash Jain.
2799 * Scripts/webkitpy/port/ios.py:
2800 (IOSPort.default_baseline_search_path): When the major version matches the major version of the CURRENT_VERSION, treat
2801 it as a the CURRENT_VERSION.
2803 2018-08-24 Antti Koivisto <antti@apple.com>
2805 Allow creating WeakPtrs to const objects
2806 https://bugs.webkit.org/show_bug.cgi?id=188785
2808 Reviewed by Geoff Garen.
2810 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
2811 (TestWebKitAPI::Base::weakPtrFactory const):
2812 (TestWebKitAPI::TEST):
2813 (TestWebKitAPI::Base::weakPtrFactory): Deleted.
2815 2018-08-23 Carlos Garcia Campos <cgarcia@igalia.com>
2817 [GTK][WPE] Add API to inject/register user content in isolated worlds
2818 https://bugs.webkit.org/show_bug.cgi?id=188883
2820 Reviewed by Michael Catanzaro.
2822 Add test cases for the new API.
2824 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
2825 (isStyleSheetInjectedForURLAtPath):
2826 (isScriptInjectedForURLAtPath):
2827 (testUserContentManagerInjectedStyleSheet):
2828 (testUserContentManagerInjectedScript):
2829 (UserScriptMessageTest::registerHandler):
2830 (UserScriptMessageTest::unregisterHandler):
2831 (UserScriptMessageTest::postMessageAndWaitUntilReceived):
2832 (testUserContentManagerScriptMessageInWorldReceived):
2835 2018-08-23 Simon Fraser <simon.fraser@apple.com>
2837 Add support for dumping GC heap snapshots, and a viewer
2838 https://bugs.webkit.org/show_bug.cgi?id=186416
2840 Reviewed by Joseph Pecoraro.
2842 Add a viewer for GC heap snapshots. A snapshot JSON file can be dragged into this
2843 page for inspection (or set via the 'filename' URL parameter).
2845 For now, this page shows all objects, all roots, and the shortest path from a root
2846 to all HTMLDocuments and Windows.
2848 * GCHeapInspector/gc-heap-inspector.html: Added.
2849 * GCHeapInspector/heap-analysis/HeapSnapshot.js: Copied from Source/WebInspectorUI/UserInterface/Workers/HeapSnapshot/HeapSnapshot.js.
2850 * GCHeapInspector/script/interface.js: Added.
2852 2018-08-23 Alex Christensen <achristensen@webkit.org>
2854 Add new _webViewRequestPointerLock SPI with a completionHandler
2855 https://bugs.webkit.org/show_bug.cgi?id=188907
2856 <rdar://problem/35871109>
2858 Reviewed by Andy Estes.
2860 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
2861 (-[PointerLockDelegate _webViewRequestPointerLock:completionHandler:]):
2862 (-[PointerLockDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2865 2018-08-23 David Fenton <david_fenton@apple.com>
2867 Unreviewed, rolling out r235129.
2869 broke internal builds
2873 "Allow creating WeakPtrs to const objects"
2874 https://bugs.webkit.org/show_bug.cgi?id=188785
2875 https://trac.webkit.org/changeset/235129
2877 2018-08-23 Jonathan Bedard <jbedard@apple.com>
2879 API tests should output json results
2880 https://bugs.webkit.org/show_bug.cgi?id=188869
2881 <rdar://problem/43615652>
2883 Reviewed by Aakash Jain.
2885 JSON output for API tests is of the form:
2887 "Failed": [{"name": <test name>, "output": <test log>}],
2892 Tests which are successful are not displayed in the json output.
2894 * Scripts/webkitpy/api_tests/manager.py:
2895 (Manager.run): Print test results to provided file as a json dictionary.
2896 * Scripts/webkitpy/api_tests/run_api_tests.py:
2897 (run): Pass json option.
2898 (parse_args): Add --json-output flag.
2900 2018-08-23 Andy Estes <aestes@apple.com>
2902 [Apple Pay] Introduce Apple Pay JS v4 on iOS 12 and macOS Mojave
2903 https://bugs.webkit.org/show_bug.cgi?id=188829
2905 Reviewed by Tim Horton.
2907 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2909 2018-08-23 Myles C. Maxfield <mmaxfield@apple.com>
2911 [WSL] Ternary expressions appear to be unimplemented
2912 https://bugs.webkit.org/show_bug.cgi?id=178981
2914 Reviewed by Saam Barati.
2916 Implement ternary statements. These can be both lvalues and rvalues. (a ? b : c ? d : e)
2917 is parsed as (a ? b : (c ? d : e)).
2919 * WebGPUShadingLanguageRI/All.js:
2920 * WebGPUShadingLanguageRI/Checker.js:
2921 (Checker.prototype.visitTernaryExpression):
2922 * WebGPUShadingLanguageRI/Evaluator.js:
2923 (Evaluator.prototype.visitTernaryExpression):
2924 * WebGPUShadingLanguageRI/NormalUsePropertyResolver.js:
2925 (NormalUsePropertyResolver.prototype.visitTernaryExpression):
2926 (NormalUsePropertyResolver):
2927 * WebGPUShadingLanguageRI/Parse.js:
2928 (parsePossibleTernaryConditional):
2929 * WebGPUShadingLanguageRI/PropertyResolver.js:
2930 (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder.prototype.visitTernaryExpression):
2931 (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder):
2932 (PropertyResolver.prototype._visitRValuesWithinLValue):
2933 * WebGPUShadingLanguageRI/Rewriter.js:
2934 (Rewriter.prototype.visitTernaryExpression):
2935 * WebGPUShadingLanguageRI/SPIRV.html:
2936 * WebGPUShadingLanguageRI/Test.html:
2937 * WebGPUShadingLanguageRI/Test.js:
2938 * WebGPUShadingLanguageRI/Visitor.js:
2939 (Visitor.prototype.visitProtocolDecl):
2940 * WebGPUShadingLanguageRI/index.html:
2942 2018-08-22 Ryosuke Niwa <rniwa@webkit.org>
2944 Assert in NetworkBlobRegistry::unregisterBlobURL after network process had terminated
2945 https://bugs.webkit.org/show_bug.cgi?id=188880
2947 Reviewed by Saam Barati.
2949 Fixed the bug that testRunner's terminateNetworkProcess, terminateServiceWorkerProcess, and terminateStorageProcess
2950 were asynchronously terminating respective processes. Do so synchronously so that we can deterministically
2951 test WebKit's behavior in layout tests.
2953 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2954 (WTR::TestRunner::terminateNetworkProcess):
2955 (WTR::TestRunner::terminateServiceWorkerProcess):
2956 (WTR::TestRunner::terminateStorageProcess):
2957 * WebKitTestRunner/TestInvocation.cpp:
2958 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2959 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2961 2018-08-23 Myles C. Maxfield <mmaxfield@apple.com>
2963 [WHLSL] Allow native types to have type arguments (like "vector<float, 4>")
2964 https://bugs.webkit.org/show_bug.cgi?id=188773
2966 Reviewed by Filip Pizlo.
2968 Before this patch, it was impossible to represent "native typedef vector<float, 4>" because NativeTypes couldn't have
2971 Previously, the way to identify a type was strictly by name, which was represented by a string. Therefore, when something like
2972 "vector<int, 3>" was parsed, it would produce a TypeRef with the name "vector" and typeArguments [TypeRef, IntLiteral]. Then,
2973 there was a pass to convert the TypeRef to have the name "int3" and no typeArguments. After this transformation, each type could
2974 be uniquely identified by name. That name was then matched to the string-only NativeType name.
2976 This is okay for vectors and matrices, but it is unfortunate for textures (e.g. Texture2D<float4>) because they don't have any
2977 natural string-only name. In addition, the canonicalization would have to be made aware of the fact that Texture2D<float4> is
2978 the same as Texture2D<vector<float, 4>>. Similarly, an author may wish to typedef float4 to a different name.
2980 It would be possible to mangle the names of the texture types to something unique, but then we lose information about the inner
2981 type. For example, if we did this, Visitor wouldn't recurse into the float4 when encountering Texture2D<float4> because that
2982 information would be lost. This could potentially make operations like programWithUnnecessaryThingsRemoved() more difficult to
2983 implement in the future.
2985 So, it would be better to have each type uniquely identified by (name, typeArguments). TypeRef will therefore also have
2986 typeArguments which are used to determine which type it is referencing. After this analysis is done to determine what each
2987 TypeRef is referencing, subsequent passes shouldn't care about the typeArguments and should only care about the .type field
2988 which had been set - this was true even before this patch.
2990 This means that NameContext has to aggregate types that accept typeArguments into arrays, where each array holds all the Types
2991 that have the same name but different typeArguments. Then, when we need to match a TypeRef with a Type, we can ask the
2992 NameContext for the appropriate array. This is the same way that function resolution works.
2994 We can use Node.unify() to determine whether a TypeRef matches a NativeType. Eventually, this will go away, but for now, this is
2995 an okay start. This works just about the same way that function overload resolution works.
2997 * WebGPUShadingLanguageRI/All.js:
2998 * WebGPUShadingLanguageRI/CallExpression.js:
2999 (CallExpression.prototype.resolve):
3000 * WebGPUShadingLanguageRI/CheckTypesWithArguments.js: Copied from Tools/WebGPUShadingLanguageRI/ResolveTypeDefs.js. After types
3001 have been resolved, there should be no TypeRefs with name "vector" that don't have type arguments. This is just a sanity check.
3002 (checkTypesWithArguments.TypeWithArgumentsChecker.prototype.visitTypeRef):
3003 (checkTypesWithArguments.TypeWithArgumentsChecker):
3004 (checkTypesWithArguments):
3005 * WebGPUShadingLanguageRI/Checker.js:
3006 (Checker.prototype.visitProgram): Program.types mirrors NameContext: it's a Map that maps strings to types. Because types with
3007 typeArguments share names, this has to be updated to map strings to arrays for these types.
3008 (Checker.prototype.visitTypeRef):
3009 * WebGPUShadingLanguageRI/InferTypesForCall.js:
3010 (inferTypesForCall): Don't know why this was here.
3011 (inferTypesForTypeArguments): Same as inferTypesForCall, but this one is for matching type arguments.
3012 * WebGPUShadingLanguageRI/Intrinsics.js: Adding the types. This patch also adds some scalar types like half, char, etc, but they
3013 don't have any functions which accept them. Those will be tested in my next patch which adds math functions for these types. This
3014 moves in the direction of matching the standard library in the spec.
3016 (Intrinsics.bitwiseCast):
3017 (Intrinsics.castToHalf):
3020 * WebGPUShadingLanguageRI/NameContext.js: Aggregate types with typeArguments into arrays.
3021 (NameContext.prototype.add):
3022 (NameContext.prototype.get let):
3023 (NameContext.underlyingThings.prototype.else):
3024 (NameContext.prototype.Symbol.iterator):
3026 * WebGPUShadingLanguageRI/NameResolver.js:
3027 (NameResolver.prototype.visitTypeRef): Call TypeRef.resolve().
3028 (NameResolver.prototype.visitCallExpression):
3030 (NameResolver.prototype.visitVectorType): Deleted.
3031 * WebGPUShadingLanguageRI/NativeType.js: NativeTypes can have type arguments now.
3033 (NativeType.prototype.get typeArguments):
3034 (NativeType.prototype.toString):
3035 (NativeType.create):
3036 * WebGPUShadingLanguageRI/Prepare.js:
3038 * WebGPUShadingLanguageRI/Program.js: Update to work with types aggregated into arrays.
3039 (Program.prototype.add):
3040 (Program.prototype.toString):
3042 * WebGPUShadingLanguageRI/RemoveTypeArguments.js: Removed.
3043 * WebGPUShadingLanguageRI/ResolveNames.js: Update to work with types aggregated into arrays.
3044 (resolveNamesInTypes):
3045 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js: Resolve the type overload for types with typeArguments.
3046 * WebGPUShadingLanguageRI/ResolveTypeDefs.js: Update to work with types aggregated into arrays.
3047 (resolveTypeDefsInTypes):
3048 * WebGPUShadingLanguageRI/Rewriter.js: TypeRefs and Native/Vector types can have typeArguments.
3049 (Rewriter.prototype.visitTypeRef):
3050 (Rewriter.prototype.visitVectorType):
3052 * WebGPUShadingLanguageRI/SPIRV.html:
3053 * WebGPUShadingLanguageRI/StandardLibrary.js: Matches Intrinsics.
3055 * WebGPUShadingLanguageRI/StatementCloner.js: Native types can have typeArguments.
3056 (StatementCloner.prototype.visitNativeType):
3057 * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js: Vector types need constructors too.
3058 (synthesizeDefaultConstructorOperator.FindAllTypes.prototype.visitVectorType):
3059 (synthesizeDefaultConstructorOperator.FindAllTypes):
3060 (synthesizeDefaultConstructorOperator):
3061 * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: No reason to distinguish between wrapping and instantiating a TypeRef.
3062 (synthesizeStructAccessors.createTypeRef):
3063 * WebGPUShadingLanguageRI/Test.html:
3064 * WebGPUShadingLanguageRI/Test.js:
3065 * WebGPUShadingLanguageRI/TypeOverloadResolutionFailure.js: Copied from Tools/WebGPUShadingLanguageRI/ResolveTypeDefs.js.
3066 (TypeOverloadResolutionFailure):
3067 (TypeOverloadResolutionFailure.prototype.get type):
3068 (TypeOverloadResolutionFailure.prototype.get reason):
3069 (TypeOverloadResolutionFailure.prototype.toString):
3070 * WebGPUShadingLanguageRI/TypeRef.js:
3072 (TypeRef.prototype.resolve): Figure out which item in the possibleOverloads array matches this.
3073 (TypeRef.prototype.toString):
3075 (TypeRef.instantiate): Deleted.
3076 * WebGPUShadingLanguageRI/UnificationContext.js: We need to give literals a chance to assume their preferred type. This
3077 adds this facility back into the compiler (it was previously deleted).
3078 (UnificationContext.prototype.verify):
3079 * WebGPUShadingLanguageRI/VectorType.js: Vector types have type arguments.
3081 (VectorType.prototype.get elementType):
3082 (VectorType.prototype.get numElements):
3083 (VectorType.prototype.get numElementsValue):
3084 (VectorType.prototype.toString):
3085 * WebGPUShadingLanguageRI/Visitor.js: Iterate over the typeArguments.
3086 (Visitor.prototype.visitTypeRef):
3087 (Visitor.prototype.visitNativeType):
3088 (Visitor.prototype.visitVectorType):
3090 * WebGPUShadingLanguageRI/index.html:
3092 2018-08-23 Wenson Hsieh <wenson_hsieh@apple.com>
3094 [Attachment Support] Attachment elements don't appear in drag images on macOS
3095 https://bugs.webkit.org/show_bug.cgi?id=188823
3096 <rdar://problem/43616378>
3098 Reviewed by Tim Horton.
3100 Adjusts a couple of existing tests to additionally verify that the drag image generated when dragging an
3101 attachment element in macOS is not completely transparent.
3103 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3104 (isCompletelyTransparent):
3105 (TestWebKitAPI::TEST):
3107 2018-08-23 Jonathan Bedard <jbedard@apple.com>
3109 Explain test name matching in run-api-tests help
3110 https://bugs.webkit.org/show_bug.cgi?id=188280
3112 Reviewed by Ryosuke Niwa.
3114 Improve the run-api-tests help message to explain how test
3115 name matching works.
3117 * Scripts/webkitpy/api_tests/run_api_tests.py:
3119 * Scripts/webkitpy/port/base.py:
3121 (Port.path_to_api_test_binaries): Make binary names a globally accessible array.
3122 * Scripts/webkitpy/port/win.py:
3124 (WinPort.path_to_api_test_binaries): Ditto.
3126 2018-08-23 Youenn Fablet <youenn@apple.com>
3128 Use "wpt serve" to launch WPT server
3129 https://bugs.webkit.org/show_bug.cgi?id=188848
3131 Reviewed by Ryosuke Niwa.
3133 Use "wpt serve" provided by WPT instead of using our custom launcher.
3134 This simplifies things and will avoid future breakage.
3135 Further simplify web_platform_test_server.py by removing no longer needed actions.
3136 - Do not copy files but use alias
3137 - Do not kill main pid, which leaves subprocesses alive, use interrupt instead.
3138 - Stop enumerating subprocess pids.
3140 * Scripts/webkitpy/common/system/executive_mock.py:
3141 (MockExecutive.interrupt):
3142 * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py: Removed.
3143 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3144 (WebPlatformTestServer.__init__):
3145 (WebPlatformTestServer.ports_to_forward):
3146 (WebPlatformTestServer._prepare_config):
3147 (WebPlatformTestServer._spawn_process):
3148 (WebPlatformTestServer._stop_running_server):
3150 2018-08-23 Jonathan Bedard <jbedard@apple.com>
3152 run-api-tests: Add --webkit-only, --webcore-only and --webkit-legacy-only options to run WebKit, WebCore and WebKitLegacy tests
3153 https://bugs.webkit.org/show_bug.cgi?id=188262
3155 Reviewed by Ryosuke Niwa.
3157 * Scripts/webkitpy/api_tests/run_api_tests.py:
3160 2018-08-22 Wenson Hsieh <wenson_hsieh@apple.com>
3162 [Attachment Support] Support dragging attachment elements out as files on macOS
3163 https://bugs.webkit.org/show_bug.cgi?id=181294
3164 <rdar://problem/36298801>
3166 Reviewed by Tim Horton.
3168 Add DragAndDropSimulator support for intercepting calls to -beginDraggingSessionWithitems:event:source:. This
3169 enables us to write API tests for macOS that exercise the attachment SPI in combination with dragging attachment
3172 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3173 (-[TestWKWebView attachmentElementMidPoint]):
3175 Add a helper method local to this test suite that grabs the midpoint (in client coordinates) or the first
3176 attachment element in the document.
3178 (TestWebKitAPI::TEST):
3180 Add a new API test to verify that dragging an attachment element on macOS produces file providers which may be
3181 used to write attachment data to a path on disk. Additionally, refactor an existing API test,
3182 MoveAttachmentElementAsIconByDragging, so that it runs on both iOS and macOS, to test the ability to move
3183 attachment elements around in a document by using drag and drop.
3185 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
3186 * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
3187 (-[DragAndDropTestWKWebView beginDraggingSessionWithItems:event:source:]):
3188 (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
3189 (-[DragAndDropSimulator dealloc]):
3190 (-[DragAndDropSimulator runFrom:to:]):
3191 (-[DragAndDropSimulator beginDraggingSessionInWebView:withItems:source:]):
3193 Begin a drag session and kick off the -continueDragSession loop. Unlike -performDragInWebView:…, which spins
3194 the main runloop until dragging ends, this version returns execution to the web view and schedules dragging
3195 updates asynchronously. This matches AppKit behavior.
3197 (-[DragAndDropSimulator continueDragSession]):
3199 Increment the dragging progress amount, send a drag update to the web view, and continue scheduling calls to
3200 itself until the progress reaches 1.
3202 (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
3203 (-[DragAndDropSimulator initializeDraggingInfo:dragImage:source:]):
3205 Pull out common logic for creating a new TestDraggingInfo after starting a drag.
3207 (-[DragAndDropSimulator insertedAttachments]):
3208 (-[DragAndDropSimulator removedAttachments]):
3209 (-[DragAndDropSimulator draggingSession]):
3210 (-[DragAndDropSimulator receivePromisedFiles]):
3212 Helper method to save promised files written to the pasteboard after a drag to the temporary directory. These
3213 files are tracked by DragAndDropSimulator and automatically cleaned up after the test finishes.
3215 (-[DragAndDropSimulator endDataTransfer]):
3217 Add a method stub on macOS, so that MoveAttachmentElementAsIconByDragging can be made cross-platform.
3219 (-[DragAndDropSimulator _webView:didInsertAttachment:withSource:]):
3220 (-[DragAndDropSimulator _webView:didRemoveAttachment:]):
3222 Implement method stubs to keep track of inserted or removed attachments while simulating a drag.
3224 2018-08-22 Aditya Keerthi <akeerthi@apple.com>
3226 [iOS] Add support for the inputmode attribute
3227 https://bugs.webkit.org/show_bug.cgi?id=183621
3229 Reviewed by Tim Horton.
3231 Added an API test to verify that the correct UIKeyboardType is set depending on
3232 the type, inputmode, and pattern specified for an input field.
3234 * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3235 (TestWebKitAPI::TEST):
3236 * TestWebKitAPI/ios/UIKitSPI.h:
3238 2018-08-22 Alex Christensen <achristensen@webkit.org>
3240 Fix API test on Sierra after r235139
3241 https://bugs.webkit.org/show_bug.cgi?id=188810
3243 * TestWebKitAPI/Tests/mac/LimitTitleSize.mm:
3246 2018-08-22 David Kilzer <ddkilzer@apple.com>
3248 Move files in WebCore project to match Xcode folder structure
3249 <https://webkit.org/b/188851>
3251 Reviewed by Tim Horton.
3253 * Scripts/extract-localizable-strings:
3254 * Scripts/update-webkit-localizable-strings:
3255 - Update to match new location of extract-localizable-strings.pl.
3257 2018-08-21 Alex Christensen <achristensen@webkit.org>
3259 Roll out r235139 and r235146
3260 https://bugs.webkit.org/show_bug.cgi?id=188805
3262 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3263 * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
3265 2018-08-21 Wenson Hsieh <wenson_hsieh@apple.com>
3267 [Attachment Support] Remove _WKAttachments and notify the UI client upon mainframe navigation
3268 https://bugs.webkit.org/show_bug.cgi?id=188715
3269 <rdar://problem/43541790>
3271 Reviewed by Tim Horton.
3273 Adds API tests to exercises cases where (1) the UI client is notified of attachment removal upon mainframe
3274 navigation, and (2) the UI client is notified of attachment removal upon web content process termination.
3276 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3277 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
3278 (TestWebKitAPI::TEST):
3280 2018-08-21 Alex Christensen <achristensen@webkit.org>
3282 Transition ResizeReversePaginatedWebView API test from WKPageLoaderClient to WKPageNavigationClient
3283 https://bugs.webkit.org/show_bug.cgi?id=188821
3285 Reviewed by Simon Fraser.
3287 * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
3288 (TestWebKitAPI::didLayout):
3289 (TestWebKitAPI::TEST):
3291 2018-08-21 Myles C. Maxfield <mmaxfield@apple.com>
3293 [WHLSL] Call expressions shouldn't have type arguments
3294 https://bugs.webkit.org/show_bug.cgi?id=188770
3296 Reviewed by Filip Pizlo.
3298 Call expressions only had type arguments for casts, becuase native types can have type arguments.
3299 However, instead of putting those type arguments on the CallExpression, we should parse the casted
3300 type as a real type and not as an identifier, which puts the type arguments in the TypeRef.
3304 * WebGPUShadingLanguageRI/CallExpression.js:
3306 (CallExpression.prototype.get name):
3307 (CallExpression.resolve):
3308 (CallExpression.prototype.get typeArguments): Deleted.
3309 (CallExpression.prototype.becomeCast): Deleted.
3310 * WebGPUShadingLanguageRI/NameResolver.js:
3311 (NameResolver.prototype.visitCallExpression):
3312 * WebGPUShadingLanguageRI/Parse.js:
3315 (parseLeftOperatorCall):
3316 (parseCallExpression.let.parseArguments):
3317 (parsePossiblePrefix):
3318 (parsePossibleRelationalEquality):
3319 (parseLeftLogicalExpression):
3324 * WebGPUShadingLanguageRI/RemoveTypeArguments.js:
3325 * WebGPUShadingLanguageRI/Rewriter.js:
3326 (Rewriter.prototype.visitCallExpression):
3328 2018-08-21 Alex Christensen <achristensen@webkit.org>
3330 Translate WebKit.LimitTitleSize API test into ObjC
3331 https://bugs.webkit.org/show_bug.cgi?id=188810
3333 Reviewed by Andy Estes.
3335 It uses WKPageLoaderClient.didReceiveTitleForFrame which has been replaced by KVO.
3336 I'm translating the test into ObjC rather than introducing a new callback to WKPageNavigationClient.
3338 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3339 * TestWebKitAPI/Tests/WebKit/LimitTitleSize.cpp: Removed.
3340 * TestWebKitAPI/Tests/mac/LimitTitleSize.mm:
3342 (-[LimitTitleSizeTestObserver observeValueForKeyPath:ofObject:change:context:]):
3343 (TestWebKitAPI::TEST): Deleted.
3345 2018-08-21 Alex Christensen <achristensen@webkit.org>
3347 Remove unused shouldKeepCurrentBackForwardListItemInList check
3348 https://bugs.webkit.org/show_bug.cgi?id=188805
3350 Reviewed by Andy Estes.
3352 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3353 * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp: Removed.
3355 2018-08-21 Alex Christensen <achristensen@webkit.org>
3357 Transition more API tests from WKPageLoaderClient to WKPageNavigationClient
3358 https://bugs.webkit.org/show_bug.cgi?id=188813
3360 Reviewed by Andy Estes.
3362 * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
3363 (TestWebKitAPI::didLayout):
3364 (TestWebKitAPI::setPageLoaderClient):
3365 * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
3366 (TestWebKitAPI::didFinishNavigation):
3367 (TestWebKitAPI::didLayout):
3368 (TestWebKitAPI::setPageLoaderClient):
3369 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3370 * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
3371 (TestWebKitAPI::didLayout):
3372 (TestWebKitAPI::setPageLoaderClient):
3374 2018-08-21 Wenson Hsieh <wenson_hsieh@apple.com>
3376 [Attachment Support] Augment _WKAttachment SPI to handle NSFileWrappers in addition to NSData
3377 https://bugs.webkit.org/show_bug.cgi?id=188496
3378 <rdar://problem/43216836>
3380 Reviewed by Tim Horton.
3382 Adjusts existing attachment API tests. See below for more detail.
3384 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3385 (-[TestWKWebView synchronouslyInsertAttachmentWithFileWrapper:contentType:]):
3386 (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
3387 (-[_WKAttachment synchronouslySetData:newContentType:newFilename:error:]):
3388 (-[_WKAttachment synchronouslySetFileWrapper:newContentType:error:]):
3390 Move off of deprecated attachment SPI, and add new helper functions to synchronously insert a new attachment or
3391 update an existing attachment with a file wrapper.
3393 (-[_WKAttachment expectRequestedDataToBe:]):
3394 (TestWebKitAPI::TEST):
3396 Add a new test to verify that file-URL-backed NSFileWrappers can be used to insert and update attachment data.
3397 Also augment an existing test to check that an attachment element which has been copied and pasted within the
3398 same document has a different _WKAttachment wrapper object than its duplicate, but both _WKAttachments are
3399 backed by the same NSFileWrapper that was originally used to insert the attachment.
3401 Additionally, add another macOS test to verify that dropping promised files in an attachment-element-enabled
3402 editable area inserts attachment elements into the document and notifies the UI client with the inserted
3405 (-[_WKAttachment synchronouslyRequestInfo:]): Deleted.
3406 (-[_WKAttachment synchronouslyRequestData:]): Deleted.
3407 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3408 (-[DragAndDropSimulator _webView:didInsertAttachment:withSource:]):
3410 Move off of -_webView:didInsertAttachment:.
3412 (-[DragAndDropSimulator _webView:didInsertAttachment:]): Deleted.
3414 2018-08-21 David Kilzer <ddkilzer@apple.com>
3416 sort-Xcode-project-file: top-level files and folders are sorted unintentionally when `mainGroup` has no name
3417 <https://webkit.org/b/188755>
3419 Reviewed by Andy Estes.
3421 * Scripts/sort-Xcode-project-file: Fix regular expression to
3422 make `mainGroup` name optional.
3424 2018-08-21 Andy VanWagoner <andy@vanwagoner.family>
3426 Unreviewed, add myself to committers list.
3428 * Scripts/webkitpy/common/config/contributors.json:
3430 2018-08-21 Antti Koivisto <antti@apple.com>
3432 Allow creating WeakPtrs to const objects
3433 https://bugs.webkit.org/show_bug.cgi?id=188785
3435 Reviewed by Geoffrey Garen.
3437 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
3438 (TestWebKitAPI::Base::weakPtrFactory const):
3439 (TestWebKitAPI::TEST):
3440 (TestWebKitAPI::Base::weakPtrFactory): Deleted.
3442 2018-08-21 Per Arne Vollan <pvollan@apple.com>
3444 [WebGL] Contexts are not updated when display configuration changed.
3445 https://bugs.webkit.org/show_bug.cgi?id=188750
3447 Reviewed by Brent Fulgham.
3449 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3450 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3451 (WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
3452 * WebKitTestRunner/InjectedBundle/TestRunner.h:
3453 * WebKitTestRunner/TestController.cpp:
3454 (WTR::TestController::sendDisplayConfigurationChangedMessageForTesting):
3455 * WebKitTestRunner/TestController.h:
3456 * WebKitTestRunner/TestInvocation.cpp:
3457 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3459 2018-08-21 John Wilander <wilander@apple.com>
3461 Make ResourceLoadObserver::logWebSocketLoading() handle websockets in detached frames
3462 https://bugs.webkit.org/show_bug.cgi?id=188757
3463 <rdar://problem/38713390>
3465 Reviewed by Alex Christensen.
3467 These changes add the new WebKitTestRunner function
3468 isStatisticsRegisteredAsSubresourceUnder().
3470 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3471 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3472 (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
3473 * WebKitTestRunner/InjectedBundle/TestRunner.h:
3474 * WebKitTestRunner/TestController.cpp:
3475 (WTR::TestController::isStatisticsRegisteredAsSubresourceUnder):
3476 * WebKitTestRunner/TestController.h:
3477 * WebKitTestRunner/TestInvocation.cpp:
3478 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3480 2018-08-21 Alex Christensen <achristensen@webkit.org>
3482 Transition more API tests from WKPageLoaderClient to WKPageNavigationClient
3483 https://bugs.webkit.org/show_bug.cgi?id=188797
3485 Reviewed by Tim Horton.
3487 * TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
3488 (TestWebKitAPI::didFinishNavigation):
3489 (TestWebKitAPI::TEST):
3490 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3491 * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
3492 (TestWebKitAPI::didSameDocumentNavigation):
3493 (TestWebKitAPI::TEST):
3494 (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
3495 * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
3496 (TestWebKitAPI::didFailProvisionalNavigation):
3497 (TestWebKitAPI::TEST):
3498 (TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame): Deleted.
3499 * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
3500 (TestWebKitAPI::didStartProvisionalNavigation):
3501 (TestWebKitAPI::didCommitNavigation):
3502 (TestWebKitAPI::didFinishNavigation):
3503 (TestWebKitAPI::TEST):
3504 (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
3505 (TestWebKitAPI::didCommitLoadForFrame): Deleted.
3506 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3507 * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
3508 (TestWebKitAPI::didStartProvisionalNavigation):
3509 (TestWebKitAPI::didCommitNavigation):
3510 (TestWebKitAPI::didFinishNavigation):
3511 (TestWebKitAPI::TEST):
3512 (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
3513 (TestWebKitAPI::didCommitLoadForFrame): Deleted.
3514 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3515 * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
3516 (TestWebKitAPI::renderingProgressDidChange):
3517 (TestWebKitAPI::TEST):
3518 (TestWebKitAPI::didLayout): Deleted.
3519 * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
3520 (TestWebKitAPI::didFinishNavigation):
3521 (TestWebKitAPI::renderingProgressDidChange):
3522 (TestWebKitAPI::setPageLoaderClient):
3523 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3524 (TestWebKitAPI::didLayout): Deleted.
3525 * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
3526 (TestWebKitAPI::State::State):
3527 (TestWebKitAPI::didStartProvisionalNavigation):
3528 (TestWebKitAPI::didCommitNavigation):
3529 (TestWebKitAPI::didFinishNavigation):
3530 (TestWebKitAPI::decidePolicyForNavigationAction):
3531 (TestWebKitAPI::decidePolicyForResponse):
3532 (TestWebKitAPI::TEST):
3533 (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
3534 (TestWebKitAPI::didCommitLoadForFrame): Deleted.
3535 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3536 (TestWebKitAPI::decidePolicyForNewWindowAction): Deleted.
3537 * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
3538 (TestWebKitAPI::didSameDocumentNavigation):
3539 (TestWebKitAPI::TEST):
3540 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3541 (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
3542 * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
3543 (TestWebKitAPI::TEST):
3544 (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
3545 * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
3546 (TestWebKitAPI::didFinishLoad):
3547 (TestWebKitAPI::TEST):
3548 * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle.cpp:
3549 (TestWebKitAPI::didFinishNavigation):
3550 (TestWebKitAPI::TEST):
3551 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3552 * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
3553 (TestWebKitAPI::didFinishLoad):
3554 (TestWebKitAPI::TEST):
3555 * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
3556 (WebKit2_CommandBackForwardTestWKView::SetUp):
3557 (WebKit2_CommandBackForwardTestWKView::didFinishLoadForFrame): Deleted.
3559 2018-08-20 Alex Christensen <achristensen@webkit.org>
3561 Replace WKPageLoaderClient with WKPageNavigationClient in many API tests
3562 https://bugs.webkit.org/show_bug.cgi?id=188771
3564 Reviewed by Tim Horton.
3566 * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
3567 (TestWebKitAPI::didFinishNavigation):
3568 (TestWebKitAPI::TEST):
3569 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3570 * TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
3571 (TestWebKitAPI::didFinishNavigation):
3572 (TestWebKitAPI::TEST):
3573 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3574 * TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
3575 (TestWebKitAPI::didFinishNavigation):
3576 (TestWebKitAPI::setPageLoaderClient):
3577 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3578 * TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
3579 (TestWebKitAPI::TEST):
3580 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3581 * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache.cpp:
3582 (TestWebKitAPI::didFinishNavigation):
3583 (TestWebKitAPI::setPageLoaderClient):
3584 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3585 * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
3586 (TestWebKitAPI::didFinishNavigation):
3587 (TestWebKitAPI::setClients):
3588 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3589 * TestWebKitAPI/Tests/WebKit/Find.cpp:
3590 (TestWebKitAPI::didFinishNavigation):
3591 (TestWebKitAPI::TEST):
3592 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3593 * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
3594 (TestWebKitAPI::didFinishNavigation):
3595 (TestWebKitAPI::TEST):
3596 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3597 * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
3598 (TestWebKitAPI::didFinishNavigation):
3599 (TestWebKitAPI::TEST):
3600 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3601 * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
3602 (TestWebKitAPI::didFinishNavigation):
3603 (TestWebKitAPI::TEST):
3604 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3605 * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
3606 (TestWebKitAPI::didFinishNavigation):
3607 (TestWebKitAPI::TEST):
3608 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3609 * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
3610 (TestWebKitAPI::didFinishNavigation):
3611 (TestWebKitAPI::setPageLoaderClient):
3612 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3613 * TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
3614 (TestWebKitAPI::didFinishNavigation):
3615 (TestWebKitAPI::TEST):
3616 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3617 * TestWebKitAPI/Tests/WebKit/LimitTitleSize.cpp:
3618 (TestWebKitAPI::didFinishLoadForFrame):
3619 * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
3620 (TestWebKitAPI::didFinishNavigation):
3621 (TestWebKitAPI::loadAlternateHTMLString):
3622 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3623 * TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
3624 (TestWebKitAPI::didFinishNavigation):
3625 (TestWebKitAPI::TEST):
3626 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3627 * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
3628 (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
3629 (TestWebKitAPI::didFinishLoad):
3630 * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
3631 (TestWebKitAPI::didFinishNavigation):
3632 (TestWebKitAPI::setPageLoaderClient):
3633 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3634 * TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
3635 (TestWebKitAPI::didFinishNavigation):
3636 (TestWebKitAPI::setPageLoaderClient):
3637 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3638 * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
3639 (TestWebKitAPI::didFinishLoadForFrame):
3640 * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
3641 (TestWebKitAPI::TEST):
3642 * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
3643 (TestWebKitAPI::TEST):
3644 * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
3645 (TestWebKitAPI::didFinishLoad):
3646 (TestWebKitAPI::TEST):
3647 * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
3648 (TestWebKitAPI::didFinishNavigation):
3649 (TestWebKitAPI::setPageLoaderClient):
3650 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3651 * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
3652 (TestWebKitAPI::didFinishNavigation):
3653 (TestWebKitAPI::setPageLoaderClient):
3654 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3655 * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
3656 (TestWebKitAPI::didFinishNavigation):
3657 (TestWebKitAPI::TEST):
3658 (TestWebKitAPI::didFinishDocumentLoadForFrame): Deleted.
3659 * TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
3660 (TestWebKitAPI::didFinishNavigation):
3661 (TestWebKitAPI::TEST):
3662 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3663 * TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
3664 (TestWebKitAPI::didFailProvisionalNavigation):
3665 (TestWebKitAPI::TEST):
3666 (TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame): Deleted.
3667 * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
3668 (TestWebKitAPI::didFinishNavigation):
3669 (TestWebKitAPI::TEST):
3670 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3671 * TestWebKitAPI/Tests/WebKit/TextFieldDidBeginAndEndEditing.cpp:
3672 (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::didFinishNavigation):
3673 (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::setPageLoaderClient):
3674 (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::didFinishLoadForFrame): Deleted.
3675 * TestWebKitAPI/Tests/WebKit/UserMessage.cpp:
3676 (TestWebKitAPI::WebKit2UserMessageRoundTripTest::didFinishNavigation):
3677 (TestWebKitAPI::WebKit2UserMessageRoundTripTest::setPageLoaderClient):
3678 (TestWebKitAPI::WebKit2UserMessageRoundTripTest::didFinishLoadForFrame): Deleted.
3679 * TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
3680 (TestWebKitAPI::didFinishNavigation):
3681 (TestWebKitAPI::setPageLoaderClient):
3682 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3683 * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
3684 (TestWebKitAPI::didFinishNavigation):
3685 (TestWebKitAPI::setPageLoaderClient):
3686 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3687 * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
3688 (TestWebKitAPI::didFinishNavigation):
3689 (TestWebKitAPI::setPageLoaderClient):
3690 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3691 * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
3692 (TestWebKitAPI::didFinishNavigation):
3693 (TestWebKitAPI::setUpClients):
3694 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3695 * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
3696 (TestWebKitAPI::didFinishNavigation):
3697 (TestWebKitAPI::setPageLoaderClient):
3698 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3699 * TestWebKitAPI/Tests/WebKit/WebArchive.cpp:
3700 (TestWebKitAPI::didFinishNavigation):
3701 (TestWebKitAPI::TEST):
3702 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3703 * TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
3704 (TestWebKitAPI::didFinishNavigation):
3705 (TestWebKitAPI::TEST):
3706 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3707 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
3708 (TestWebKitAPI::didFinishNavigation):
3709 (TestWebKitAPI::TEST):
3710 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3711 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
3712 (TestWebKitAPI::didFinishNavigation):
3713 (TestWebKitAPI::TEST):
3714 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3715 * TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
3716 (TestWebKitAPI::didFinishNavigation):
3717 (TestWebKitAPI::TEST):
3718 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3719 * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
3720 (TestWebKitAPI::didFinishNavigation):
3721 (TestWebKitAPI::TEST):
3722 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3723 * TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
3724 (TestWebKitAPI::didFinishNavigation):
3725 (TestWebKitAPI::TEST):
3726 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3727 * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
3728 (didFinishNavigation):
3729 (TestWebKitAPI::TEST):
3730 (didFinishLoadForFrame): Deleted.
3731 * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
3732 (didFinishNavigation):
3733 (TestWebKitAPI::TEST):
3734 (didFinishLoadForFrame): Deleted.
3735 * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
3736 (TestWebKitAPI::didFinishNavigation):
3737 (TestWebKitAPI::TEST):
3738 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3739 * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
3740 (TestWebKitAPI::didFinishNavigation):
3741 (TestWebKitAPI::setPageLoaderClient):
3742 (TestWebKitAPI::didFinishLoadForFrame): Deleted.
3744 2018-08-21 Adrian Perez de Castro <aperez@igalia.com>
3746 [WPE] Update to use libwpe-1.0.0 and WPEBackend-fdo-1.0.0
3747 https://bugs.webkit.org/show_bug.cgi?id=188782
3749 Reviewed by Michael Catanzaro.
3751 Make the build depend on wpe-0.2, and change the Flatpak and JHBuild development
3752 environments to use version 1.0.0 of libwpe and WPEBackend-fdo.
3754 * flatpak/org.webkit.WPE.yaml: Update to use libwpe and WPEBackend-fdo version 1.0.0 from
3755 release tarballs, and removed the (now unneeded) Lua and LuaJIT modules.
3756 * wpe/jhbuild.modules: Ditto.
3758 2018-08-21 Michael Catanzaro <mcatanzaro@igalia.com>
3760 [Flatpak] Update to GNOME master runtime
3761 https://bugs.webkit.org/show_bug.cgi?id=188731
3763 Reviewed by Philippe Normand.
3765 The 3.28 runtime is pretty stale at this point. We could wait a couple weeks for the 3.30
3766 runtime, but I don't think there's any need to stick with the stable runtime when we have
3767 the ability to pin to a particular version of the master runtime. There are also several
3768 advantages to switching to the master runtime.
3770 * flatpak/files/httpd-autogen.sh: Removed.
3771 * flatpak/flatpakutils.py:
3772 (WebkitFlatpak.clean_args):
3773 * flatpak/org.webkit.GTK.yaml:
3774 * flatpak/org.webkit.WebKit.yaml:
3775 * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Removed.
3776 * flatpak/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Removed.
3778 2018-08-20 Jonathan Bedard <jbedard@apple.com>
3780 WebKitTestRunner: Add watchOS entitlements
3781 https://bugs.webkit.org/show_bug.cgi?id=188758
3783 Reviewed by Tim Horton.
3785 watchOS needs an additional entitlement to open up a socket for on-device testing.
3787 * WebKitTestRunner/Configurations/WebKitTestRunnerApp-watchOS.entitlements: Added.
3788 * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
3789 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3791 2018-08-20 Thomas Denney <tdenney@apple.com>
3793 [WHLSL] Remove generics from the interpreter
3794 https://bugs.webkit.org/show_bug.cgi?id=187988
3796 Reviewed by Myles C. Maxfield.
3798 This patch completely removes generic and protocol support from WHLSL
3799 whilst adding back any features that were originally implemented with
3802 Many of the changes in this patch just remove occurrences of type
3803 arguments and type parameters --- although there are some cases where
3804 they have been deliberately left in --- as well as removing tests only
3805 relevant to those features. These changes are not listed below.
3807 * WebGPUShadingLanguageRI/All.js: Add/remove JS dependencies
3808 * WebGPUShadingLanguageRI/AutoWrapper.js:
3809 (AutoWrapper.prototype.visitConstexprTypeParameter): Deleted.
3810 * WebGPUShadingLanguageRI/BuiltinVectorCasts.js: Added. The built-in
3811 vectors have many constructors for different scalar and vector types.
3812 These were originally implemented with generics.
3813 * WebGPUShadingLanguageRI/BuiltinVectorEqualityOperator.js: Adds the
3814 equality operator for built-in vectors, again this was removed with
3816 * WebGPUShadingLanguageRI/BuiltinVectorGetter.js: Added, as above.
3817 Built-in vectors only support the getter and setter, and not the ander.
3818 * WebGPUShadingLanguageRI/BuiltinVectorIndexGetter.js: Added.
3819 * WebGPUShadingLanguageRI/BuiltinVectorIndexSetter.js: Added.
3820 * WebGPUShadingLanguageRI/BuiltinVectorSetter.js: Added.
3821 * WebGPUShadingLanguageRI/CallExpression.js: Adds support for
3822 instantiating functions which cannot be discovered earlier in
3823 preparation because their types are absent (specifically support for the
3824 operator &[] for array references and the length operator for array
3825 references). Previously support for these was implemented with generics.
3826 (CallExpression.resolve):
3827 (CallExpression.prototype.resolve):
3828 (CallExpression.prototype._resolveByInstantiation):
3829 (CallExpression.prototype._resolveToOperatorAnderIndexer):
3830 (CallExpression.prototype._resolveToOperatorLength):
3831 (CallExpression.prototype.resolveToOverload):
3832 (CallExpression.prototype.becomeCast):
3833 (CallExpression.prototype.toString):
3835 * WebGPUShadingLanguageRI/CallExpressionTypeArgumentResolver.js: Added.
3836 We support syntax like vector<int, 2>(a, b) for constructing vectors;
3837 this new preparation step resolves them to specific constructors.
3838 * WebGPUShadingLanguageRI/CallFunction.js:
3839 * WebGPUShadingLanguageRI/Checker.js:
3840 * WebGPUShadingLanguageRI/ConstexprFolder.js:
3841 * WebGPUShadingLanguageRI/CreateLiteralType.js:
3842 * WebGPUShadingLanguageRI/ExpressionFinder.js:
3843 * WebGPUShadingLanguageRI/FlattenProtocolExtends.js: Removed.
3844 * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
3845 * WebGPUShadingLanguageRI/Func.js:
3846 * WebGPUShadingLanguageRI/FuncDef.js:
3847 * WebGPUShadingLanguageRI/FuncInstantiator.js: Deleted.
3848 * WebGPUShadingLanguageRI/InferTypesForCall.js: Removed usage of type arguments.
3849 * WebGPUShadingLanguageRI/Inline.js: Remove use of FuncInstantiator.
3850 * WebGPUShadingLanguageRI/Inliner.js: Ditto.
3851 * WebGPUShadingLanguageRI/Intrinsics.js:
3852 * WebGPUShadingLanguageRI/Lexer.js:
3853 * WebGPUShadingLanguageRI/LiteralTypeChecker.js:
3854 * WebGPUShadingLanguageRI/NameContext.js:
3855 (NameContext.prototype.add):
3856 (NameContext.prototype.get let):
3857 (NameContext.underlyingThings.prototype.else):
3858 (NameContext.prototype.resolveFuncOverload):
3859 * WebGPUShadingLanguageRI/NameFinder.js:
3860 * WebGPUShadingLanguageRI/NameResolver.js:
3861 (NameResolver.prototype.visitFunc):
3862 (NameResolver.prototype.visitFuncDef):
3863 (NameResolver.prototype.visitTypeDef):
3864 (NameResolver.prototype.visitStructType):
3865 (NameResolver.prototype.visitTypeRef):
3866 (NameResolver.prototype.visitCallExpression):
3867 (NameResolver.prototype.visitVectorType):
3869 (NameResolver.prototype._visitTypeParametersAndBuildNameContext): Deleted.
3870 (NameResolver.prototype.visitProtocolDecl): Deleted.
3871 * WebGPUShadingLanguageRI/NativeFunc.js:
3873 * WebGPUShadingLanguageRI/NativeFuncInstance.js: Deleted.
3874 * WebGPUShadingLanguageRI/NativeType.js:
3876 (NativeType.prototype.get name):
3877 (NativeType.prototype.toString):
3878 (NativeType.prototype.get typeParameters): Deleted.
3879 (NativeType.prototype.instantiate): Deleted.
3880 * WebGPUShadingLanguageRI/Node.js:
3881 (Node.prototype.commit):
3883 (Node.prototype.substitute): Deleted.
3884 (Node.prototype.substituteToUnification): Deleted.
3885 * WebGPUShadingLanguageRI/OperatorAnderIndex.js: Added, previously
3886 implemented with generics.
3887 * WebGPUShadingLanguageRI/OperatorArrayRefLength.js: Ditto.
3888 * WebGPUShadingLanguageRI/OperatorBool.js: Ditto.
3889 * WebGPUShadingLanguageRI/Parse.js: Removed everything related to
3890 generics and protocols.
3891 * WebGPUShadingLanguageRI/Prepare.js: Added new stages.
3892 * WebGPUShadingLanguageRI/Program.js:
3894 (Program.prototype.get types):
3895 (Program.prototype.add):
3896 (Program.prototype.get protocols): Deleted.
3897 * WebGPUShadingLanguageRI/ProtocolDecl.js: Removed.
3898 * WebGPUShadingLanguageRI/ProtocolRef.js: Removed.
3899 * WebGPUShadingLanguageRI/RecursiveTypeChecker.js:
3900 * WebGPUShadingLanguageRI/ResolveCallExpressionsWithTypeArguments.js: Added.
3901 * WebGPUShadingLanguageRI/ResolveNames.js:
3902 * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
3903 * WebGPUShadingLanguageRI/ResolveTypeDefs.js:
3904 (resolveTypeDefsInProtocols): Deleted.
3905 * WebGPUShadingLanguageRI/Rewriter.js: Changes for new classes.
3906 * WebGPUShadingLanguageRI/SPIRV.html:
3907 * WebGPUShadingLanguageRI/SPIRVCodegen.js:
3908 * WebGPUShadingLanguageRI/StandardLibrary.js: Replace old generic features.
3909 * WebGPUShadingLanguageRI/StatementCloner.js: Changes for new classes.
3910 (StructLayoutBuilder):
3911 * WebGPUShadingLanguageRI/StructType.js:
3912 * WebGPUShadingLanguageRI/SwizzleOp.js:
3914 (SwizzleOp.prototype.get baseTypeName):
3915 (SwizzleOp.prototype.toString):
3916 (SwizzleOp.functions.):
3917 (SwizzleOp.functions):
3918 (SwizzleOp.prototype.instantiateImplementation):
3919 (SwizzleOp.allSwizzleOperators.): Deleted.
3920 (SwizzleOp.allSwizzleOperators): Deleted.
3921 * WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js: Added,
3922 previously implemented with generics.
3923 * WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js: Ditto.
3924 * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js: Ditto.
3925 * WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js: Ditto.
3926 * WebGPUShadingLanguageRI/SynthesizeOperatorBool.js: Ditto.
3927 * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
3928 (synthesizeStructAccessors.setupImplementationData):
3929 (synthesizeStructAccessors.createFieldType):
3930 (synthesizeStructAccessors.createTypeRef):
3931 (synthesizeStructAccessors.setupAnder):
3932 (synthesizeStructAccessors):
3933 (synthesizeStructAccessors.createTypeParameters): Deleted.
3934 (synthesizeStructAccessors.): Deleted.
3935 * WebGPUShadingLanguageRI/Test.html:
3936 * WebGPUShadingLanguageRI/Test.js: Removed redundant tests and added new
3937 tests for changed language features.
3938 * WebGPUShadingLanguageRI/Type.js:
3939 * WebGPUShadingLanguageRI/TypeDef.js:
3940 * WebGPUShadingLanguageRI/TypeDefResolver.js:
3941 * WebGPUShadingLanguageRI/TypeParameterRewriter.js: Removed.
3942 * WebGPUShadingLanguageRI/TypeRef.js:
3943 * WebGPUShadingLanguageRI/TypeVariable.js: Removed.
3944 * WebGPUShadingLanguageRI/UnificationContext.js:
3945 * WebGPUShadingLanguageRI/VectorType.js: Added.
3946 * WebGPUShadingLanguageRI/Visitor.js: Changes for new classes.
3947 * WebGPUShadingLanguageRI/WSL.md: Removed description of
3949 * WebGPUShadingLanguageRI/WrapChecker.js:
3951 (WrapChecker.visitConstexprTypeParameter): Deleted.
3952 (WrapChecker.prototype.visitFuncParameter): Deleted.
3953 (WrapChecker.prototype.visitTypeVariable): Deleted.
3954 * WebGPUShadingLanguageRI/index.html:
3956 2018-08-20 Thomas Denney <tdenney@apple.com>
3958 Added Thomas Denney to contributors.json.
3959 https://bugs.webkit.org/show_bug.cgi?id=188525
3961 Reviewed by Myles C. Maxfield.
3963 * Scripts/webkitpy/common/config/contributors.json:
3965 2018-08-20 Bernhard M. Wiedemann <bwiedemann@suse.de>
3967 [GTK] Sort inspector GResource manifest to ensure reproducible builds
3968 https://bugs.webkit.org/show_bug.cgi?id=188738
3970 Reviewed by Michael Catanzaro.
3972 * glib/generate-inspector-gresource-manifest.py:
3973 (get_filenames): sort list of input files
3975 2018-08-20 Wenson Hsieh <wenson_hsieh@apple.com>
3977 [iOS] Paste is missing from callout bar when pasteboard only contains custom data
3978 https://bugs.webkit.org/show_bug.cgi?id=184271
3979 <rdar://problem/39256708>
3981 Reviewed by Andy Estes.
3983 This API test is failing when run against older macOS builds, where custom pasteboard
3984 data is not enabled by default.
3986 * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
3987 (TestWebKitAPI::TEST):
3989 2018-08-20 Claudio Saavedra <csaavedra@igalia.com>
3991 Add WPE Debug configuration to the flakiness dashboard
3992 https://bugs.webkit.org/show_bug.cgi?id=188743
3994 Reviewed by Michael Catanzaro.
3996 * TestResultServer/static-dashboards/builders.jsonp:
3997 * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
3999 2018-08-19 Carlos Garcia Campos <cgarcia@igalia.com>
4001 [GLIB] Add API to throw exceptions using printf formatted strings
4002 https://bugs.webkit.org/show_bug.cgi?id=188698
4004 Reviewed by Michael Catanzaro.
4006 Add cases to test the new API.
4008 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
4009 (createFormattedError):
4010 (createCustomFormattedError):
4011 (testJSCExceptions):
4013 2018-08-19 Carlos Garcia Campos <cgarcia@igalia.com>
4015 [GLIB] Complete the JSCException API
4016 https://bugs.webkit.org/show_bug.cgi?id=188695
4018 Reviewed by Michael Catanzaro.
4020 Add cases to test the new API.
4022 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
4023 (testJSCCheckSyntax):
4024 (createCustomError):
4025 (testJSCExceptions):
4027 2018-08-18 Wenson Hsieh <wenson_hsieh@apple.com>
4029 [iOS] Paste is missing from callout bar when pasteboard only contains custom data
4030 https://bugs.webkit.org/show_bug.cgi?id=184271
4031 <rdar://problem/39256708>
4033 Reviewed by Ryosuke Niwa.
4035 Add a new API test to verify that on both iOS and macOS, copied custom pasteboard data can only be pasted in a
4036 matching origin. Additionally verify that on iOS, the web view is capable of performing the "paste:" selector.
4038 * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
4039 (TestWebKitAPI::TEST):
4040 (imagePath): Deleted.
4041 (writeTypesAndDataToPasteboard): Deleted.
4042 (setUpWebView): Deleted.
4043 (markupString): Deleted.
4045 Make this test file no longer exclusive to macOS.
4047 * TestWebKitAPI/cocoa/TestWKWebView.h:
4048 * TestWebKitAPI/cocoa/TestWKWebView.mm:
4049 (-[TestWKWebView synchronouslyLoadHTMLString:baseURL:]):
4051 Tweak this helper to also take in a `baseURL`. Defaults to using the TestWebKitAPI bundle resource URL.
4053 (-[TestWKWebView synchronouslyLoadHTMLString:]):
4055 2018-08-17 Jonathan Bedard <jbedard@apple.com>
4057 Add back --wtf-only to run-api-tests
4058 https://bugs.webkit.org/show_bug.cgi?id=187893
4059 <rdar://problem/42483983>
4061 Reviewed by Aakash Jain.
4063 When doing WTF development, it is not necessary to build or run all of the API
4064 tests. Generally, if a user has specified a specific binary (or binaries) that
4065 they are interested in testing, it is not necessary to check all API test binaries.
4067 * Scripts/webkitpy/api_tests/manager.py:
4068 (Manager._collect_tests): Only use the binaries matching the program arguments
4069 when collecting tests.
4070 (Manager._binaries_for_arguments): Generate a list of binaries which match the
4072 (Manager.run): Pass a list binaries to check.
4073 * Scripts/webkitpy/api_tests/run_api_tests.py:
4075 * Scripts/webkitpy/port/base.py:
4076 (Port.check_api_test_build): If the caller specifies which API test binaries it
4077 requires, only check the ones specified.
4078 (Port.path_to_api_test_binaries): Allow the caller to only build the WTF API tests.
4079 (Port._build_api_tests): Allow the caller to only build the WTF API tests.
4080 * Scripts/webkitpy/port/win.py:
4081 (WinPort.path_to_api_test_binaries):
4083 2018-08-17 Jer Noble <jer.noble@apple.com>
4085 REGRESSION (234743) Timeouts in TestWebKitAPI.PreferredAudioBufferSize.AudioWithWebAudio and TestWebKitAPI.PreferredAudioBufferSize.WebAudio
4086 https://bugs.webkit.org/show_bug.cgi?id=188470
4087 <rdar://problem/43144969>
4089 Reviewed by Alex Christensen.
4091 On a loaded server, the WebContent process may send the "playing" message before the
4092 UIProcess has a chance to register a listener for that message. Restructure the tests
4093 so that the listener is registered before the page is loaded.
4095 * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
4096 (PreferredAudioBufferSize::runPlayingTestWithPageNamed):
4099 2018-08-16 Wenson Hsieh <wenson_hsieh@apple.com>
4101 [macOS] [WK2] Add infrastructure to test receiving file promises on drop
4102 https://bugs.webkit.org/show_bug.cgi?id=188583
4104 Reviewed by Andy Estes.
4106 Enable testing file promise drop handling on the WebKit2 port of macOS by introducing a subclass of
4107 NSFilePromiseReceiver and implementing `-enumerateDraggingItemsWithOptions:forView:…` on TestDraggingInfo (the
4108 concrete NSDraggingInfo implementation used by DragAndDropSimulator) using the mock file receiver. Also
4109 introduces 3 new macOS tests. See below for more details.
4111 A large portion of this logic is ported over from DumpRenderTree testing infrastructure added in r229297. In a
4112 future patch, we should introduce a way to write code common to both API tests, WebKitTestRunner and
4113 DumpRenderTree, and make this code shared among all three testing harnesses.
4115 Tests: DragAndDropTests.DragImageElementIntoFileUpload
4116 DragAndDropTests.DragPromisedImageFileIntoFileUpload
4117 DragAndDropTests.DragImageFileIntoFileUpload
4119 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4120 * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
4123 Drive-by fix: Replace NSMakePoint with CGPointMake.
4125 * TestWebKitAPI/Tests/WebKitCocoa/image-and-file-upload.html:
4127 Add a new test page consisting of an image and a "file upload" area that updates exercises DataTransfer API to
4128 load the dropped image.
4130 * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
4131 (waitForConditionWithLogging):
4133 Add a helper function to wait for a condition to evaluate to true. To make failures more informative,
4134 additionally add a mechanism to log a warning message after a given timeout, if the condition has yet to be met.
4138 Add new tests to exercise a few cases of file upload in WebKit, including: (1) dragging from an image element,
4139 (2) dragging files written to the pasteboard as promises, and (3) files written to the pasteboard as file URLs.
4141 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
4143 Surface the new functionality provided by the file promise receiver mock via two new methods on
4144 DragAndDropSimulator to (1) write files as file promises to the pasteboard, and (2) write files as file paths
4145 directly to the pasteboard.
4147 * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
4148 (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
4149 (-[DragAndDropSimulator externalPromisedFiles]):
4150 (getFilePathsAndTypeIdentifiers):
4151 (-[DragAndDropSimulator writePromisedFiles:]):
4152 (-[DragAndDropSimulator writeFiles:]):
4153 * TestWebKitAPI/mac/TestDraggingInfo.h:
4154 * TestWebKitAPI/mac/TestDraggingInfo.mm:
4155 (-[TestDraggingInfo initWithDragAndDropSimulator:]):
4156 (-[TestDraggingInfo filePromiseReceivers]):
4157 (-[TestDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
4159 Implement this by invoking the given block with a TestFilePromiseReceiver. While all other classes are
4160 unhandled by this testing code, WebKit only calls into this with [NSFilePromiseReceiver class], this is
4161 currently sufficient for testing purposes.
4163 * TestWebKitAPI/mac/TestFilePromiseReceiver.h: Copied from Tools/TestWebKitAPI/mac/TestDraggingInfo.h.
4164 * TestWebKitAPI/mac/TestFilePromiseReceiver.mm: Added.
4165 (-[TestFilePromiseReceiver initWithPromisedTypeIdentifiers:dragAndDropSimulator:]):
4166 (-[TestFilePromiseReceiver fileTypes]):
4167 (-[TestFilePromiseReceiver fileNames]):
4168 (-[TestFilePromiseReceiver dealloc]):
4169 (-[TestFilePromiseReceiver draggingSource]):
4170 (-[TestFilePromiseReceiver setDraggingSource:]):
4171 (fileNameWithNumericSuffix):
4174 Add a helper to copy a file into a destination directory. Used to implement the main functionality of our
4175 NSFilePromiseReceiver subclass, which copies the files specified by test code into the directory determined by
4178 (-[TestFilePromiseReceiver receivePromisedFilesAtDestination:options:operationQueue:reader:]):
4180 2018-08-16 Alex Christensen <achristensen@webkit.org>
4182 Add entitlement to MiniBrowser to allow it to communicate with com.apple.Safari.SafeBrowsing.Service
4183 https://bugs.webkit.org/show_bug.cgi?id=188677
4185 Reviewed by Tim Horton.
4187 * MiniBrowser/MiniBrowser.entitlements:
4188 SSBLookupContext lookUpURL:completionHandler: fails to communicate with its service without this entitlement
4189 on released operating systems. See <rdar://problem/42749777>
4191 2018-08-16 Jer Noble <jer.noble@apple.com>
4193 Add option to run-api-tests to force running of DISABLED tests.
4194 https://bugs.webkit.org/show_bug.cgi?id=188674
4196 Reviewed by Joseph Pecoraro.
4198 * Scripts/webkitpy/api_tests/run_api_tests.py:
4200 * Scripts/webkitpy/api_tests/runner.py:
4201 (Runner.command_for_port):
4202 (_Worker._run_single_test):
4204 2018-08-16 Aakash Jain <aakash_jain@apple.com>
4206 [ews-build] Separate queues for Builders and Testers - macOS High Sierra
4207 https://bugs.webkit.org/show_bug.cgi?id=188540
4209 Reviewed by Lucas Forschler.
4211 * BuildSlaveSupport/ews-build/config.json: Splitted few macOS queues into builders and testers.
4213 2018-08-16 Aakash Jain <aakash_jain@apple.com>
4215 [ews-build] Add build steps ArchiveTestResults, UploadTestResults and ExtractTestResults
4216 https://bugs.webkit.org/show_bug.cgi?id=188666
4218 Reviewed by Lucas Forschler.
4220 * BuildSlaveSupport/ews-build/steps.py:
4221 (ArchiveTestResults): Build step to Archive the test results.
4222 (UploadTestResults): Build step to upload the archive.
4223 (ExtractTestResults): Build step to unzip the archive on server and generate a link.
4224 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
4225 (ExpectMasterShellCommand): Copied from other similar internal code.
4227 2018-08-16 Aakash Jain <aakash_jain@apple.com>
4229 [ews-build] Separate queues for Builders and Testers - macOS Sierra
4230 https://bugs.webkit.org/show_bug.cgi?id=188516
4232 Reviewed by Lucas Forschler.
4234 * BuildSlaveSupport/ews-build/config.json: Splitted macOS Sierra Release queues into builders and testers.
4235 * BuildSlaveSupport/ews-build/factories.py: Used appropriate base classes for builders and testers.
4237 2018-08-16 Basuke Suzuki <Basuke.Suzuki@sony.com>
4239 [Win][DumpRenderTree] Remove error message for duplicated tests.
4240 https://bugs.webkit.org/show_bug.cgi?id=188662
4242 Reviewed by Per Arne Vollan.
4244 This was added to track down an issue where the same tests appeared
4245 to be run multiple times. This turned out to not be the case.
4246 See https://bugs.webkit.org/show_bug.cgi?id=166760 .
4248 * DumpRenderTree/win/DumpRenderTree.cpp:
4251 2018-08-16 Alex Christensen <achristensen@webkit.org>
4253 Re-introduce assertion removed in r234890
4254 https://bugs.webkit.org/show_bug.cgi?id=188611
4256 Reviewed by Geoffrey Garen.
4258 * TestWebKitAPI/Tests/WTF/Vector.cpp:
4259 (TestWebKitAPI::TEST):
4261 2018-08-16 Jer Noble <jer.noble@apple.com>
4263 Add Experimental Feature support for SourceBuffer.changeType()
4264 https://bugs.webkit.org/show_bug.cgi?id=188626
4265 <rdar://problem/43356021>
4267 Reviewed by Eric Carlson.
4269 * DumpRenderTree/mac/DumpRenderTree.mm:
4270 (enableExperimentalFeatures):
4271 (resetWebPreferencesToConsistentValues):
4272 * WebKitTestRunner/TestController.cpp:
4273 (WTR::TestController::resetPreferencesToConsistentValues):
4275 2018-08-16 Aditya Keerthi <akeerthi@apple.com>
4277 Support drag-and-drop for input[type=color]
4278 https://bugs.webkit.org/show_bug.cgi?id=188464
4280 Reviewed by Wenson Hsieh.
4282 Added five cross-platform API tests, to verify that dragging and dropping with
4283 color inputs changes the value of the drop target if and only if both inputs are
4284 enabled. Also tests that the change and input events are fired when changing the
4285 value of a color input through drag and drop.
4287 Additionally, added a macOS-specific test to verify that dropping an item with
4288 NSColorPboardType changes the value of the color input.
4290 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4291 * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
4292 (TestWebKitAPI::TEST):
4293 * TestWebKitAPI/Tests/WebKitCocoa/color-drop.html: Added.
4294 * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
4295 (TestWebKitAPI::TEST):
4297 2018-08-16 Antti Koivisto <antti@apple.com>
4299 Use OptionSet for ActivityState::Flags
4300 https://bugs.webkit.org/show_bug.cgi?id=188554
4302 Reviewed by Brent Fulgham.
4304 * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
4305 (TestWebKitAPI::TEST):
4307 2018-08-16 Carlos Garcia Campos <cgarcia@igalia.com>
4309 [GTK] MiniBrowser: web view doesn't get the focus when new window is created
4310 https://bugs.webkit.org/show_bug.cgi?id=188546
4312 Reviewed by Michael Catanzaro.
4314 When a new window is created, the first widget of the windo is getting the focus, the toolbar in this case. We
4315 always want the WebView to grab the focus. In case of new empty tab, we want to the URL bar to be focused
4316 instead. This was causing failures in WebDriver tests that create a popup window with an input element that is
4317 filled with send keys command. The input element is marked as focused in the DOM, but the actual focused widget
4318 is the toolbar, so key events are sent to the toolbar instead of the web view.
4320 * MiniBrowser/gtk/BrowserWindow.c:
4323 (openPrivateWindow):
4324 (browser_window_get_or_create_web_view_for_automation):
4326 2018-08-16 Carlos Garcia Campos <cgarcia@igalia.com>
4328 Unreviewed. Fix WebDriver tests after r234839.
4330 New pytest requires to autoinstall attrs too.
4332 * Scripts/webkitpy/thirdparty/__init__.py:
4333 (AutoinstallImportHook._install_pytest):
4335 2018-08-15 Ansh Shukla <ansh_shukla@apple.com>
4337 NSURLAuthenticationMethodOAuth challenges are surfaced to clients in -didReceiveAuthenticationChallenge as NSURLAuthenticationMethodDefault
4338 https://bugs.webkit.org/show_bug.cgi?id=186870
4339 <rdar://problem/41314410>
4341 Reviewed by Alex Christensen.
4343 * WebKitTestRunner/TestController.cpp:
4345 (WTR::TestController::canAuthenticateAgainstProtectionSpace): Expose type of authentication challenge so we can test OAuth.
4346 (WTR::TestController::didReceiveAuthenticationChallenge):
4348 2018-08-15 Ben Richards <benton_richards@apple.com>
4350 We should cache the compiled sandbox profile in a data vault
4351 https://bugs.webkit.org/show_bug.cgi?id=184991
4353 Reviewed by Ryosuke Niwa.
4355 Added trace points for sandbox initialization
4357 * Tracing/SystemTracePoints.plist:
4359 2018-08-15 Ryan Haddad <ryanhaddad@apple.com>
4361 Unreviewed, rolling out r234870.
4363 The test introduced with this change is a flaky failure.
4367 "NSURLAuthenticationMethodOAuth challenges are surfaced to
4368 clients in -didReceiveAuthenticationChallenge as
4369 NSURLAuthenticationMethodDefault"
4370 https://bugs.webkit.org/show_bug.cgi?id=186870
4371 https://trac.webkit.org/changeset/234870
4373 2018-08-15 Jonathan Bedard <jbedard@apple.com>
4375 WebKitTestRunner should support watch devices
4376 https://bugs.webkit.org/show_bug.cgi?id=188570
4378 Reviewed by Alex Christensen.
4380 * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
4382 2018-08-15 Wenson Hsieh <wenson_hsieh@apple.com>
4384 [Attachment SPI] Remove attachment display mode options
4385 https://bugs.webkit.org/show_bug.cgi?id=188596
4387 Reviewed by Dan Bernstein.
4389 Remove API tests and API test helpers for verifying the behavior of in-place media attachment elements.
4391 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
4392 (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
4393 (TestWebKitAPI::TEST):
4394 (testVideoData): Deleted.
4395 (displayOptionsWithMode): Deleted.
4396 (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:options:]): Deleted.
4398 2018-08-14 Devin Rousso <drousso@apple.com>
4400 Unreviewed, change my emails.
4402 * Scripts/webkitpy/common/config/contributors.json:
4403 * Scripts/webkitpy/common/config/watchlist:
4405 2018-08-14 Saam barati <sbarati@apple.com>
4407 HashMap<Ref<P>, V> asserts when V is not zero for its empty value
4408 https://bugs.webkit.org/show_bug.cgi?id=188582
4410 Reviewed by Sam Weinig.
4412 * TestWebKitAPI/Tests/WTF/HashMap.cpp:
4413 (TestWebKitAPI::TEST):
4415 2018-08-14 Zalan Bujtas <zalan@apple.com>
4417 [LFC][Floating] Add support for negative clearance.
4418 https://bugs.webkit.org/show_bug.cgi?id=188555
4420 Reviewed by Simon Fraser.
4422 * LayoutReloaded/misc/LFC-passing-tests.txt:
4424 2018-08-14 Sihui Liu <sihui_liu@apple.com>
4426 Crash in WebKit::filterPreloadHSTSEntry via NetworkProcess::getHostNamesWithHSTSCache
4427 https://bugs.webkit.org/show_bug.cgi?id=188576
4428 <rdar://problem/43148977>
4430 Reviewed by Alex Christensen.
4432 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4433 * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm: Added.
4436 2018-08-14 Alex Christensen <achristensen@webkit.org>
4438 isValidCSSSelector is unsafe to be called from a non-main thread
4439 https://bugs.webkit.org/show_bug.cgi?id=188581
4440 <rdar://problem/40517358>
4442 Reviewed by Sam Weinig.
4444 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
4445 (TestWebKitAPI::InMemoryCompiledContentExtension::create):
4446 (TestWebKitAPI::checkCompilerError):
4448 2018-08-14 Ansh Shukla <ansh_shukla@apple.com>
4450 NSURLAuthenticationMethodOAuth challenges are surfaced to clients in -didReceiveAuthenticationChallenge as NSURLAuthenticationMethodDefault
4451 https://bugs.webkit.org/show_bug.cgi?id=186870
4452 <rdar://problem/41314410>
4454 Reviewed by Alex Christensen.
4456 * WebKitTestRunner/TestController.cpp:
4458 (WTR::TestController::canAuthenticateAgainstProtectionSpace): Expose type of authentication challenge so we can test OAuth.
4459 (WTR::TestController::didReceiveAuthenticationChallenge):
4461 2018-08-14 Fujii Hironori <Hironori.Fujii@sony.com>
4463 [webkitpy][Win] LayoutTests: test names should be Unix style, separated by slash not backslash
4464 https://bugs.webkit.org/show_bug.cgi?id=187973
4466 Reviewed by Alex Christensen.
4468 In LayoutTests, test names have been canonicalized in Unix style
4469 since Bug 63597, for example 'fast/css/001.html'. But Bug 179219,
4470 Bug 179572, Bug 180660, and Bug 181814 have changed to use
4471 os.path.seq instead of slash if Windows Python is used.
4473 Revert parts of those changes. Change relative_test_filename to
4474 return a slash-separated test name as chromium_win.py used to do.
4476 This change fixes all 41 test-webkitpy failures in WinCairo port.
4478 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
4479 (TestExpectationParser._parse_line): Do not convert test names with normpath.
4480 * Scripts/webkitpy/port/base.py:
4481 (Port.normalize_test_name): Use TEST_PATH_SEPARATOR instead of os.path.sep.
4482 (Port.relative_test_filename): Replace self.host.filesystem.sep with self.TEST_PATH_SEPARATOR.
4483 (Port.abspath_for_test): Replace self.TEST_PATH_SEPARATOR with self.host.filesystem.sep.
4484 * Scripts/webkitpy/port/driver.py:
4485 (Driver): Use '/' instead of os.sep.
4486 * Scripts/webkitpy/port/win.py:
4487 (WinCairoPort): Do not override TEST_PATH_SEPARATOR.
4489 2018-08-14 Aakash Jain <aakash_jain@apple.com>
4491 [ews-build] Add build step to run WK1 layout-test
4492 https://bugs.webkit.org/show_bug.cgi?id=188498
4494 Reviewed by Lucas Forschler.
4496 * BuildSlaveSupport/ews-build/steps.py:
4497 (RunWebKit1Tests): Class to run WebKit1Tests.
4498 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
4500 2018-08-14 Patrick Griffis <pgriffis@igalia.com>
4502 [Flatpak] Fix --cmakeargs
4503 https://bugs.webkit.org/show_bug.cgi?id=188567
4505 Reviewed by Michael Catanzaro.
4507 * flatpak/flatpakutils.py:
4508 (WebkitFlatpak.setup_dev_env):
4510 2018-08-14 Darshan Kadu <dkadu@igalia.com>
4512 Enhancement request: Make export-w3c-test-changes add the PR to "See Also" links
4513 https://bugs.webkit.org/show_bug.cgi?id=186140
4515 Reviewed by Youenn Fablet.
4517 Added an optional parameter see_also to post_comment_to_bug function and used it for adding see_also variable's content in "See Also"
4518 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
4519 (Bugzilla.post_comment_to_bug):
4520 Modified mock for see_also parameter
4521 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
4522 (MockBugzilla.post_comment_to_bug):
4523 Made following unit tests to have see_also in bug comment
4524 * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
4525 * Scripts/webkitpy/tool/bot/sheriff_unittest.py:
4526 (SheriffTest.test_post_blame_comment_on_bug):
4527 * Scripts/webkitpy/tool/commands/applywatchlistlocal_unittest.py:
4528 * Scripts/webkitpy/tool/commands/queues_unittest.py:
4529 * Scripts/webkitpy/tool/commands/upload_unittest.py:
4530 * Scripts/webkitpy/tool/steps/applywatchlist_unittest.py:
4531 * Scripts/webkitpy/w3c/test_exporter.py:
4532 (WebPlatformTestExporter.make_pull_request):
4533 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
4534 (TestExporterTest.MockBugzilla.post_comment_to_bug):
4535 (TestExporterTest.test_export):
4537 2018-08-14 Aakash Jain <aakash_jain@apple.com>
4539 [ews-build] Add support for max_builds parameter for workers
4540 https://bugs.webkit.org/show_bug.cgi?id=188531
4542 Reviewed by Lucas Forschler.
4544 * BuildSlaveSupport/ews-build/loadConfig.py:
4545 (loadBuilderConfig): Added support for max_builds.
4547 2018-08-14 Zalan Bujtas <zalan@apple.com>
4549 [LFC][Floating] Adjust vertical position with non-collapsing previous sibling margin.
4550 https://bugs.webkit.org/show_bug.cgi?id=188543
4552 Reviewed by Antti Koivisto.
4554 * LayoutReloaded/misc/LFC-passing-tests.txt:
4556 2018-08-14 Carlos Garcia Campos <cgarcia@igalia.com>
4558 Unreviewed. Fix WebDriver tests after r234839.
4560 New pytest requires to autoinstall more_itertools and six too.
4562 * Scripts/webkitpy/thirdparty/__init__.py:
4563 (AutoinstallImportHook._install_pytest):
4565 2018-08-14 Tomas Popela <tpopela@redhat.com>
4567 [GTK] Minibrowser: Add labels for buttons
4568 https://bugs.webkit.org/show_bug.cgi?id=188549
4570 Reviewed by Carlos Garcia Campos.
4572 So they are accessible easier (i.e. while testing WebKitGTK+ through Minibrowser in Dogtail).
4574 * MiniBrowser/gtk/BrowserWindow.c:
4575 (webViewIsLoadingChanged):
4576 (browserWindowSetupEditorToolbar):
4577 (browser_window_init):
4579 2018-08-14 Carlos Garcia Campos <cgarcia@igalia.com>
4581 Unreviewed. Fix WebDriver tests after r234839.
4583 New pytest requires to autoinstall atomicwrites too.
4585 * Scripts/webkitpy/thirdparty/__init__.py:
4586 (AutoinstallImportHook._install_pytest):
4588 2018-08-14 Carlos Garcia Campos <cgarcia@igalia.com>
4590 Unreviewed. Fix WebDriver tests after r234839.
4592 New pytest requires to autoinstall pluggy and funcsigs too.
4594 * Scripts/webkitpy/thirdparty/__init__.py:
4595 (AutoinstallImportHook._install_pytest):
4597 2018-08-13 Carlos Garcia Campos <cgarcia@igalia.com>
4599 Unreviewed. Update W3C WebDriver imported tests.
4601 Bump pytest version to 3.6.2.
4603 * Scripts/webkitpy/thirdparty/__init__.py:
4604 (AutoinstallImportHook._install_pytest):
4606 2018-08-13 Thomas Denney <tdenney@apple.com>
4608 Allow the substring 'me' in contributor names and email addresses
4609 https://bugs.webkit.org/show_bug.cgi?id=188538
4611 Reviewed by Tim Horton.
4613 A test didn't permit the string "me" in email addresses or names of contributors.
4615 * Scripts/webkitpy/common/config/committers_unittest.py:
4616 (CommittersTest.test_contributors_by_fuzzy_match):
4618 2018-08-13 Commit Queue <commit-queue@webkit.org>
4620 Unreviewed, rolling out r234812.
4621 https://bugs.webkit.org/show_bug.cgi?id=188536
4623 broke the build (Requested by ThomasDenney on #webkit).
4627 "Added Thomas Denney to contributors.json."
4628 https://bugs.webkit.org/show_bug.cgi?id=188525
4629 https://trac.webkit.org/changeset/234812
4631 2018-08-13 Sihui Liu <sihui_liu@apple.com>
4633 Avoid timeout resulted from calling waitUntilDone when test is not running
4634 https://bugs.webkit.org/show_bug.cgi?id=188389
4636 Reviewed by Chris Dumez.
4638 If test is not running, we should not set the waitUntilDone flag, or it may cause subsequent tests timeout.
4640 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4641 (WTR::TestRunner::waitUntilDone):
4643 2018-08-13 Wenson Hsieh <wenson_hsieh@apple.com>
4645 [WK2] [macOS] Implement a mechanism to test drag and drop
4646 https://bugs.webkit.org/show_bug.cgi?id=181898
4647 <rdar://problem/39181698>
4649 Reviewed by Simon Fraser.
4651 Implements the currently stubbed DragAndDropSimulator on macOS, and introduces a new API test for r227266. See
4652 comments below for more detail.
4654 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4655 * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm: Copied from Tools/TestWebKitAPI/mac/DragAndDropSimulatorMac.mm.
4657 Introduce a file for cross-platform drag and drop tests, currently for iOS and macOS. Additionally add a test
4658 for r227266, which was fixed earlier this year but could not be tested due to a lack of testing mechanism on
4662 * TestWebKitAPI/Tests/WebKitCocoa/full-page-dropzone.html: Added.
4664 Minor tweaks to this test page to add "dragover" and "drop" event handlers.
4666 * TestWebKitAPI/Tests/WebKitCocoa/image-in-link-and-input.html:
4667 * TestWebKitAPI/Tests/WebKitCocoa/link-in-iframe-and-input.html: Added.
4669 Add a new test page that includes a link embedded within an iframe below a plain text input.
4671 * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm: Added.
4673 * TestWebKitAPI/Tests/mac/LegacyDragAndDropTests.mm: Renamed from Tools/TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm.
4675 Move only existing WebKit2 macOS drag and drop test (DragAndDropPasteboardTests.NumberOfValidItemsForDrop) out
4676 of DragAndDropPasteboardTests.mm and into a new file, DragAndDropTestsMac.mm. Additionally, rename
4677 DragAndDropPasteboardTests to LegacyDragAndDropTests, since it now only contains two legacy WebView tests for
4680 (+[FrameLoadCompletionListener listenerWithCompletionBlock:]):
4681 (-[FrameLoadCompletionListener initWithCompletionBlock:]):
4682 (-[FrameLoadCompletionListener webView:didFinishLoadForFrame:]):
4683 (-[DragSource draggingSourceOperationMaskForLocal:]):
4684 (-[DragInfo initWithImage:offset:pasteboard:source:destinationWindow:]):
4685 (-[DragInfo lastMousePosition]):
4686 (-[DragInfo setLastMousePosition:]):
4687 (-[DragInfo draggingDestinationWindow]):
4688 (-[DragInfo draggingSourceOperationMask]):
4689 (-[DragInfo draggingLocation]):
4690 (-[DragInfo draggedImageLocation]):
4691 (-[DragInfo draggedImage]):
4692 (-[DragInfo draggingPasteboard]):
4693 (-[DragInfo draggingSource]):
4694 (-[DragInfo draggingSequenceNumber]):
4695 (-[DragInfo slideDraggedImageTo:]):
4696 (-[DragInfo namesOfPromisedFilesDroppedAtDestination:]):
4697 (-[DragInfo draggingFormation]):
4698 (-[DragInfo setDraggingFormation:]):
4699 (-[DragInfo animatesToDestination]):
4700 (-[DragInfo setAnimatesToDestination:]):
4701 (-[DragInfo numberOfValidItemsForDrop]):
4702 (-[DragInfo setNumberOfValidItemsForDrop:]):
4703 (-[DragInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
4704 (-[DragInfo springLoadingHighlight]):
4705 (-[DragInfo resetSpringLoading]):
4706 (TestWebKitAPI::getTestImage):
4707 (TestWebKitAPI::webViewAfterPerformingDragOperation):
4708 (TestWebKitAPI::TEST):
4709 * TestWebKitAPI/Tests/mac/full-page-dropzone.html: Removed.
4710 * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
4712 Flesh out some of the DragAndDropSimulator API for macOS, exposing (among other things) the drag pasteboard,
4713 the current NSDraggingInfo, the initial location of the drag image, and the drag image itself.
4715 * TestWebKitAPI/cocoa/TestWKWebView.h:
4716 * TestWebKitAPI/cocoa/TestWKWebView.mm:
4717 (-[TestWKWebView mouseDownAtPoint:simulatePressure:]):
4718 (-[TestWKWebView mouseUpAtPoint:]):
4719 (-[TestWKWebView mouseMoveToPoint:withFlags:]):
4720 (-[TestWKWebView sendClicksAtPoint:numberOfClicks:]):
4721 (-[TestWKWebView mouseEnterAtPoint:]):
4722 (-[TestWKWebView mouseExitAtPoint:]):
4723 (-[TestWKWebView mouseDragToPoint:]):
4724 (-[TestWKWebView _mouseEventWithType:atLocation:]):
4725 (-[TestWKWebView _mouseEventWithType:atLocation:flags:timestamp:clickCount:]):
4727 Add TestWKWebView helpers to send MouseMove, MouseEnter and MouseDrag NSEvents to the web view. Additionally,
4728 rename parameter names to these helpers to make it more obvious that these locations are all in NSWindow
4731 (-[TestWKWebView typeCharacter:]):
4733 Drive-by style fix: put this opening brace on the beginning of the next line.
4735 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
4736 (-[DragAndDropSimulator initWithWebViewFrame:]):
4737 (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
4738 (-[DragAndDropSimulator webView]):
4740 Small iOS DragAndDropSimulator adjustments for new DragAndDropSimulator interfaces.
4742 * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
4743 (-[DragAndDropTestWKWebView initWithFrame:configuration:simulator:]):
4745 Introduce a WKWebView subclass for testing drag and drop that overrides `-dragImage:at:offset:…`, and instead
4746 allows DragAndDropSimulator to take over the drag.
4748 (-[DragAndDropTestWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
4750 Override this entry point into drag and drop code, and instead call out to the DragAndDropSimulator to
4751 coordinate the drag.
4753 (-[DragAndDropTestWKWebView waitForPendingMouseEvents]):
4755 Helper method to wait for the web process to finish handling all in-flight mouse events.
4757 (defaultExternalDragImage):
4759 Set this image as the default drag image when simulating an incoming drag session from outside of the web view.
4761 (-[DragAndDropSimulator initWithWebViewFrame:]):
4762 (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
4763 (-[DragAndDropSimulator flipAboutXAxisInHostWindow:]):
4765 Helper method to flip a given point about the X axis of the window.
4767 (-[DragAndDropSimulator locationInViewForCurrentProgress]):
4769 Map a progress value (between 0 and 1) to a drag location.
4771 (-[DragAndDropSimulator initialProgressForMouseDrag]):
4773 Determines the initial progress value when initiation a drag in web content. This is the initial progress
4774 required to ensure that the first mouse drag event exceeds the drag distance hysteresis and causes any drag
4775 (if applicable) to begin.
4777 (-[DragAndDropSimulator runFrom:to:]):
4778 (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
4780 Helper to coordinate drag updates in both the cases where we're simulating a drag session entering from outside
4781 of the web view, and in the case where we've initiated a drag from the web view itself.
4783 (-[DragAndDropSimulator webView]):
4784 (-[DragAndDropSimulator setExternalDragPasteboard:]):
4785 (-[DragAndDropSimulator externalDragPasteboard]):
4787 Just like its iOS counterpart (setExternalItemProviders:), setting an external drag pasteboard on macOS puts the
4788 DragAndDropSimulator in a mode that simulates a drag coming in from outside the web view, using the given
4791 (-[DragAndDropSimulator setExternalDragImage:]):
4792 (-[DragAndDropSimulator externalDragImage]):
4794 May be optionally set when specifying an external drag pasteboard to specify the drag image used. If no external
4795 drag image is specified, falls back to the default image returned by `defaultExternalDragImage()`.
4797 (-[DragAndDropSimulator draggingInfo]):
4798 (-[DragAndDropSimulator willEndDraggingHandler]):
4799 (-[DragAndDropSimulator setWillEndDraggingHandler:]):
4801 Hook to allow tests to run logic right before performing the drop (if the current drag operation is not none) or
4802 ending the drag session without performing a drag operation.
4804 (-[DragAndDropSimulator initWithWebView:]): Deleted.
4805 (-[DragAndDropSimulator dealloc]): Deleted.
4806 (-[DragAndDropSimulator phase]): Deleted.
4807 * TestWebKitAPI/mac/TestDraggingInfo.h: Copied from Tools/TestWebKitAPI/mac/DragAndDropSimulatorMac.mm.
4808 * TestWebKitAPI/mac/TestDraggingInfo.mm: Added.
4810 Mock object conforming to NSDraggingInfo that is passed to WKWebView when invoking -draggingUpdated:,
4811 -draggingEntered: and -draggingExited:.
4813 (-[TestDraggingInfo draggingPasteboard]):
4814 (-[TestDraggingInfo setDraggingPasteboard:]):
4815 (-[TestDraggingInfo draggingSource]):
4816 (-[TestDraggingInfo setDraggingSource:]):
4817 (-[TestDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
4818 (-[TestDraggingInfo draggingDestinationWindow]):
4819 (-[TestDraggingInfo draggedImage]):
4820 (-[TestDraggingInfo setDraggedImage:]):
4821 (-[TestDraggingInfo slideDraggedImageTo:]):
4822 (-[TestDraggingInfo namesOfPromisedFilesDroppedAtDestination:]):
4823 (-[TestDraggingInfo resetSpringLoading]):
4825 Empty method stubs, to be implemented in the future as needed.
4827 2018-08-13 Thomas Denney <tdenney@apple.com>
4829 Added Thomas Denney to contributors.json.
4830 https://bugs.webkit.org/show_bug.cgi?id=188525
4832 Reviewed by Myles C. Maxfield.
4834 * Scripts/webkitpy/common/config/contributors.json:
4836 2018-08-13 Antti Koivisto <antti@apple.com>
4838 Meaning of OptionSet::contains is unclear when used with OptionSet argument
4839 https://bugs.webkit.org/show_bug.cgi?id=188501
4841 Reviewed by Anders Carlsson.
4843 * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
4844 (TestWebKitAPI::TEST):
4846 2018-08-13 Commit Queue <commit-queue@webkit.org>
4848 Unreviewed, rolling out r234747.
4849 https://bugs.webkit.org/show_bug.cgi?id=188524
4851 plugin processes crash on launch (Requested by smfr on
4856 "We should cache the compiled sandbox profile in a data vault"
4857 https://bugs.webkit.org/show_bug.cgi?id=184991
4858 https://trac.webkit.org/changeset/234747
4860 2018-08-13 Wenson Hsieh <wenson_hsieh@apple.com>
4862 [iOS] Dragging a non-editable text selection into a plain text input inserts HTML markup
4863 https://bugs.webkit.org/show_bug.cgi?id=188485
4864 <rdar://problem/43168784>
4866 Reviewed by Tim Horton.
4868 Add a new API test to verify that dropping selected non-editable rich text into a textarea inserts text as
4869 expected, rather than markup.
4871 It's somewhat interesting to note that this particular use case isn't exercised by any existing tests; the
4872 closest test is DragAndDropTests.ContentEditableToTextarea, which drags a rich text selection from a
4873 contenteditable element to a text area. However, due to logic in `DragController::concludeEditDrag` that handles
4874 drag and drop across editable content differently than drag and drop from non-editable to editable content, the
4875 bug that is fixed here doesn't surface in that existing test.
4877 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4878 * TestWebKitAPI/Tests/WebKitCocoa/selected-text-and-textarea.html: Added.
4879 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
4880 (TestWebKitAPI::TEST):
4882 2018-08-13 Alex Christensen <achristensen@webkit.org>
4884 Use a 1-byte enum class for TextDirection
4885 https://bugs.webkit.org/show_bug.cgi?id=188350
4887 Reviewed by Simon Fraser.
4889 * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
4890 (TestWebKitAPI::TEST_F):
4891 * TestWebKitAPI/Tests/WebCore/StringWithDirection.cpp:
4892 (WebCore::operator<<):
4893 (TestWebKitAPI::TEST):
4894 * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
4897 2018-08-13 Zalan Bujtas <zalan@apple.com>
4899 [LFC][Floating] Add basic clearance support
4900 https://bugs.webkit.org/show_bug.cgi?id=188492
4902 Reviewed by Antti Koivisto.
4904 * LayoutReloaded/misc/LFC-passing-tests.txt:
4906 2018-08-12 Zalan Bujtas <zalan@apple.com>
4908 [LFC] Float prev/next sibling should prevent top/bottom margin collapsing with parent.
4909 https://bugs.webkit.org/show_bug.cgi?id=188487
4911 Reviewed by Antti Koivisto.
4913 * LayoutReloaded/misc/LFC-passing-tests.txt:
4915 2018-08-11 Aakash Jain <aakash_jain@apple.com>
4917 [ews-build] Separate queues for Builders and Testers - iOS
4918 https://bugs.webkit.org/show_bug.cgi?id=188396
4920 Reviewed by Lucas Forschler.
4922 * BuildSlaveSupport/ews-build/config.json: Splitted iOS queues into builders and testers.
4923 Also added ews121 and ews122 to match with current EWS configuration.
4924 * BuildSlaveSupport/ews-build/factories.py:
4925 (TestsFactory): Base classes for various Test factories.
4926 (TestsFactory.getProduct): Download and extract the archive.
4928 2018-08-10 Daniel Bates <dabates@apple.com>
4930 webkit-patch setup-git-clone should set Git core editor to commit-log-editor
4931 https://bugs.webkit.org/show_bug.cgi?id=188473
4933 Reviewed by Ryosuke Niwa.
4935 Have "webkit-patch setup-git-clone" set the Git core editor to "perl Tools/Scripts/commit-log-editor --regenerate-log"
4936 so that the Git commit message is generated from the ChangeLog for developers that manually
4937 generate their ChangeLog using prepare-ChangeLog.
4939 * Scripts/webkitpy/tool/commands/setupgitclone.py:
4940 (SetupGitClone.execute):
4942 2018-08-10 Truitt Savell <tsavell@apple.com>
4944 Unreviewed, rolling out r234749.
4946 Caused all perf tests to fail in Sierra
4950 "[webkitpy][Win] LayoutTests: test names should be Unix style,
4951 separated by slash not backslash"
4952 https://bugs.webkit.org/show_bug.cgi?id=187973
4953 https://trac.webkit.org/changeset/234749
4955 2018-08-10 David Fenton <david_fenton@apple.com>
4957 Timeouts in TestWebKitAPI.PreferredAudioBufferSize.AudioWithWebAudio and TestWebKitAPI.PreferredAudioBufferSize.WebAudio.
4958 https://bugs.webkit.org/show_bug.cgi?id=188470.
4960 Unreviewed test gardening, disabling the tests.
4962 * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
4965 2018-08-10 Joseph Pecoraro <pecoraro@apple.com>
4967 Eliminate remaining instances of "ElCapitan" from LayoutTests / Tools
4968 https://bugs.webkit.org/show_bug.cgi?id=188458
4970 Reviewed by Alex Christensen.
4972 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
4973 (TestExpectationParser):
4974 * TestResultServer/static-dashboards/flakiness_dashboard.js:
4976 2018-08-09 Fujii Hironori <Hironori.Fujii@sony.com>
4978 [webkitpy][Win] LayoutTests: test names should be Unix style, separated by slash not backslash
4979 https://bugs.webkit.org/show_bug.cgi?id=187973
4981 Reviewed by Alex Christensen.
4983 In LayoutTests, test names have been canonicalized in Unix style
4984 since Bug 63597, for example 'fast/css/001.html'. But, Bug 179219,
4985 Bug 179572, Bug 180660 and Bug 181814 have changed to use
4986 os.path.seq instead of slash if Windows Python is used.
4988 Revert parts of those changes. Change relative_test_filename to
4989 return a slash sperated test name as well as chromium_win.py used
4992 This change fixes all 41 test-webkitpy failures in WinCairo port.
4994 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
4995 (TestExpectationParser._parse_line): Do not convert a test name by using normpath.
4996 * Scripts/webkitpy/port/base.py:
4997 (Port.normalize_test_name): Use TEST_PATH_SEPARATOR instead of os.path.sep.
4998 (Port.relative_test_filename): Replace self.host.filesystem.sep with self.TEST_PATH_SEPARATOR.
4999 (Port.abspath_for_test): Split test_name with TEST_PATH_SEPARATOR.
5000 * Scripts/webkitpy/port/driver.py:
5001 (Driver): Use '/' instead of os.sep.
5002 * Scripts/webkitpy/port/win.py:
5003 (WinCairoPort): Do not override TEST_PATH_SEPARATOR.
5005 2018-08-09 Thomas Denney <tdenney@apple.com>
5007 [WHLSL] Add individual test durations to output
5008 https://bugs.webkit.org/show_bug.cgi?id=188448
5010 Reviewed by Myles C. Maxfield.
5012 * WebGPUShadingLanguageRI/Test.js: Add timing output.
5014 2018-08-09 Ben Richards <benton_richards@apple.com>
5016 We should cache the compiled sandbox profile in a data vault
5017 https://bugs.webkit.org/show_bug.cgi?id=184991
5019 Reviewed by Ryosuke Niwa.
5021 Added trace points for sandbox initialization
5023 * Tracing/SystemTracePoints.plist:
5025 2018-08-09 Jer Noble <jer.noble@apple.com>
5027 Video playback is using more power
5028 https://bugs.webkit.org/show_bug.cgi?id=188452
5029 <rdar://problem/42298937>
5031 Reviewed by Eric Carlson.
5033 * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
5034 (PreferredAudioBufferSize::createView):
5035 (PreferredAudioBufferSize::preferredAudioBufferSize const):
5038 2018-08-09 Alex Christensen <achristensen@webkit.org>
5040 REGRESSION(234640) Loading stalls in environments without SafariSafeBrowsing framework
5041 https://bugs.webkit.org/show_bug.cgi?id=188453
5042 <rdar://problem/43102553>
5044 Reviewed by Chris Dumez
5046 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
5048 (+[NullLookupContext sharedLookupContext]):
5049 (TestWebKitAPI::TEST): Deleted.
5051 2018-08-09 Alex Christensen <achristensen@webkit.org>
5053 WKURLSchemeHandler crashes when sent errors with sync XHR
5054 https://bugs.webkit.org/show_bug.cgi?id=188358
5056 Reviewed by Chris Dumez.
5058 * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
5059 (-[SyncErrorScheme webView:startURLSchemeTask:]):
5060 (-[SyncErrorScheme webView:stopURLSchemeTask:]):
5061 (-[SyncErrorScheme webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
5063 2018-08-09 Per Arne Vollan <pvollan@apple.com>
5065 REGRESSION(r234652): fast/scrolling/rtl-scrollbars-animation-property.html is failing
5066 https://bugs.webkit.org/show_bug.cgi?id=188397
5068 Reviewed by Tim Horton.
5070 After r234652, [NSScroller preferredScrollerStyle] is called in the UI process, and we need to set the same
5071 user defaults related to scrollbars in the UI process as we do in the WebProcess.
5073 * WebKitTestRunner/mac/main.mm:
5074 (setDefaultsToConsistentValuesForTesting):
5076 2018-08-09 Wenson Hsieh <wenson_hsieh@apple.com>
5078 [iOS WK2] Rename and refactor DataInteractionTests and DataInteractionSimulator
5079 https://bugs.webkit.org/show_bug.cgi?id=188439
5081 Reviewed by Andy Estes and Megan Gardner.
5083 Refactor DataInteractionSimulator (currently used for drag and drop testing on iOS) so that it exists across
5084 macOS and iOS, and rename it to DragAndDropSimulator. Additionally, rename DataInteractionTests to
5087 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
5088 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
5089 (TestWebKitAPI::TEST):
5090 * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm: Renamed from Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm.
5093 (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
5094 (-[TestWKWebView editorContainsImageElement]):
5095 (-[TestWKWebView editorValue]):
5097 (checkCGRectIsEqualToCGRectWithLogging):
5098 (checkSelectionRectsWithLogging):
5099 (checkRichTextTypePrecedesPlainTextType):
5100 (checkFirstTypeIsPresentAndSecondTypeIsMissing):
5101 (checkTypeIdentifierIsRegisteredAtIndex):
5102 (checkEstimatedSize):
5103 (checkSuggestedNameAndEstimatedSize):
5104 (checkStringArraysAreEqual):
5105 (checkDragCaretRectIsContainedInRect):
5106 (checkJSONWithLogging):
5107 (testIconImageData):
5108 (runTestWithTemporaryTextFile):
5109 (runTestWithTemporaryFolder):
5110 (TestWebKitAPI::TEST):
5111 (TestWebKitAPI::setUpTestWebViewForDataTransferItems):
5112 (TestWebKitAPI::testDragAndDropOntoTargetElements):
5113 (TestWebKitAPI::testIconImageData):
5114 * TestWebKitAPI/cocoa/DragAndDropSimulator.h: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.h.
5115 * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.mm.
5116 (-[WKWebView dropInteractionDelegate]):
5117 (-[WKWebView dragInteractionDelegate]):
5118 (-[WKWebView dropInteraction]):
5119 (-[WKWebView dragInteraction]):
5120 (-[MockDragDropSession initWithItems:location:window:allowMove:]):
5121 (-[MockDragDropSession allowsMoveOperation]):
5122 (-[MockDragDropSession isRestrictedToDraggingApplication]):
5123 (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
5124 (-[MockDragDropSession canLoadObjectsOfClass:]):
5125 (-[MockDragDropSession canLoadObjectsOfClasses:]):
5126 (-[MockDragDropSession items]):
5127 (-[MockDragDropSession setItems:]):
5128 (-[MockDragDropSession addItems:]):
5129 (-[MockDragDropSession locationInView:]):
5130 (-[MockDropSession initWithProviders:location:window:allowMove:]):
5131 (-[MockDropSession isLocal]):
5132 (-[MockDropSession progress]):
5133 (-[MockDropSession setProgressIndicatorStyle:]):
5134 (-[MockDropSession progressIndicatorStyle]):
5135 (-[MockDropSession operationMask]):
5136 (-[MockDropSession localDragSession]):
5137 (-[MockDropSession hasItemsConformingToTypeIdentifier:]):
5138 (-[MockDropSession canCreateItemsOfClass:]):
5139 (-[MockDropSession loadObjectsOfClass:completion:]):
5140 (-[MockDragSession initWithWindow:allowMove:]):
5141 (-[MockDragSession localOperationMask]):
5142 (-[MockDragSession externalOperationMask]):
5143 (-[MockDragSession session]):
5144 (-[MockDragSession localContext]):
5145 (-[MockDragSession setLocalContext:]):
5146 (dragAndDropEventNames):
5147 (-[DragAndDropSimulatorApplication _cancelAllTouches]):
5148 (-[DragAndDropSimulator initWithWebView:]):
5149 (-[DragAndDropSimulator dealloc]):
5150 (-[DragAndDropSimulator _resetSimulatedState]):
5151 (-[DragAndDropSimulator observedEventNames]):
5152 (-[DragAndDropSimulator simulateAllTouchesCanceled:]):
5153 (-[DragAndDropSimulator runFrom:to:]):
5154 (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
5155 (-[DragAndDropSimulator finalSelectionRects]):
5156 (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
5157 (-[DragAndDropSimulator _enqueuePendingAdditionalItemRequestLocations]):
5158 (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
5159 (-[DragAndDropSimulator _advanceProgress]):
5160 (-[DragAndDropSimulator _currentLocation]):
5161 (-[DragAndDropSimulator _scheduleAdvanceProgress]):
5162 (-[DragAndDropSimulator sourceItemProviders]):
5163 (-[DragAndDropSimulator externalItemProviders]):
5164 (-[DragAndDropSimulator setExternalItemProviders:]):
5165 (-[DragAndDropSimulator phase]):
5166 (-[DragAndDropSimulator liftPreviews]):
5167 (-[DragAndDropSimulator lastKnownDragCaretRect]):
5168 (-[DragAndDropSimulator waitForInputSession]):
5169 (-[DragAndDropSimulator insertedAttachments]):
5170 (-[DragAndDropSimulator removedAttachments]):
5171 (-[DragAndDropSimulator endDataTransfer]):
5172 (-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
5173 (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]):
5174 (-[DragAndDropSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
5175 (-[DragAndDropSimulator _webView:showCustomSheetForElement:]):
5176 (-[DragAndDropSimulator _webView:willPerformDropWithSession:]):
5177 (-[DragAndDropSimulator _webView:didInsertAttachment:]):
5178 (-[DragAndDropSimulator _webView:didRemoveAttachment:]):
5179 (-[DragAndDropSimulator _webView:focusShouldStartInputSession:]):
5180 (-[DragAndDropSimulator _webView:didStartInputSession:]):
5181 * TestWebKitAPI/ios/UIKitSPI.h:
5182 * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm: Added.
5183 (-[DragAndDropSimulator initWithWebView:]):
5184 (-[DragAndDropSimulator dealloc]):
5185 (-[DragAndDropSimulator runFrom:to:]):
5186 (-[DragAndDropSimulator insertedAttachments]):
5187 (-[DragAndDropSimulator removedAttachments]):
5189 2018-08-09 Sihui Liu <sihui_liu@apple.com>
5191 REGRESSION (r232083): WKWebView loses first-party cookies on iOS
5192 https://bugs.webkit.org/show_bug.cgi?id=188443
5193 <rdar://problem/42991584>
5195 Reviewed by Chris Dumez.
5197 Skip WebKit.WKHTTPCookieStoreWithoutProcessPool on iOS.
5199 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
5201 2018-08-09 Ross Kirsling <ross.kirsling@sony.com>
5203 Unreviewed follow-up fix for r234720.
5205 * Scripts/webkitpy/bindings/main.py:
5206 (BindingsTests.close_and_remove):
5207 (BindingsTests.main):
5208 Return to the original approach, since this seems to be the simplest cross-platform solution.
5210 2018-08-09 Ali Juma <ajuma@chromium.org>
5212 Import WPTs for IntersectionObserver
5213 https://bugs.webkit.org/show_bug.cgi?id=188416
5215 Reviewed by Simon Fraser.
5217 Enable IntersectionObserver in DumpRenderTree.
5219 * DumpRenderTree/mac/DumpRenderTree.mm:
5220 (enableExperimentalFeatures):
5221 (setWebPreferencesForTestOptions):
5222 * WebKitTestRunner/TestController.cpp:
5223 (WTR::TestController::resetPreferencesToConsistentValues):
5225 2018-08-08 Ross Kirsling <ross.kirsling@sony.com>
5227 run-bindings-tests is not Win32-compatible
5228 https://bugs.webkit.org/show_bug.cgi?id=188424
5230 Reviewed by Fujii Hironori.
5232 * Scripts/webkitpy/bindings/main.py:
5233 (BindingsTests.main):
5234 Stop leaking file descriptors.
5235 (See https://www.logilab.org/blogentry/17873 for details, though the solution here is even simpler.)
5237 2018-08-08 Alex Christensen <achristensen@webkit.org>
5239 Fix possible null dereference in WebBackForwardList::restoreFromState
5240 https://bugs.webkit.org/show_bug.cgi?id=188418
5241 <rdar://problem/42531726>
5243 Reviewed by Chris Dumez.
5245 * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
5246 (TestWebKitAPI::TEST):
5248 2018-08-08 Ross Kirsling <ross.kirsling@sony.com>
5250 run-builtins-generator-tests does not correctly handle CRLFs from stderr
5251 https://bugs.webkit.org/show_bug.cgi?id=188392
5253 Reviewed by Fujii Hironori.
5256 file.write converts LF to os.linesep, so if the input string contains CRLF, we end up writing CRCRLF to the file.
5258 * Scripts/webkitpy/common/system/executive.py:
5259 (Executive.run_command):
5260 Normalize CRLF to LF in decoded stdout/stderr data, so that we don't return consumers a platform-specific string.
5262 2018-08-08 Aditya Keerthi <akeerthi@apple.com>
5264 Unreviewed, add myself to committers list.
5266 * Scripts/webkitpy/common/config/contributors.json:
5268 2018-08-08 Commit Queue <commit-queue@webkit.org>
5270 Unreviewed, rolling out r234314, r234320, and r234321.
5271 https://bugs.webkit.org/show_bug.cgi?id=188414
5273 Caused email sign in issue (Requested by ryanhaddad on
5276 Reverted changesets:
5278 "Remove unused WKNavigationDelegatePrivate
5279 decidePolicyForNavigationAction SPI"
5280 https://bugs.webkit.org/show_bug.cgi?id=188077
5281 https://trac.webkit.org/changeset/234314
5283 "Fix API tests after r234314"
5284 https://bugs.webkit.org/show_bug.cgi?id=188077
5285 https://trac.webkit.org/changeset/234320
5287 "Fix API tests after r234314"
5288 https://bugs.webkit.org/show_bug.cgi?id=188077
5289 https://trac.webkit.org/changeset/234321
5291 2018-08-08 Wenson Hsieh <wenson_hsieh@apple.com>
5293 [iOS] fast/events/ios/contenteditable-autocapitalize.html is a flaky failure
5294 https://bugs.webkit.org/show_bug.cgi?id=188401
5295 <rdar://problem/32542300>
5297 Reviewed by Ryosuke Niwa.
5299 When run individually, fast/events/ios/contenteditable-autocapitalize.html passes consistently; however, when
5300 run right after another layout test that finishes while the keyboard is shown, this test sometimes fails. This
5301 is because each of the three steps of this test ends when UIScriptController's `didHideKeyboardCallback` is
5302 invoked, and if the keyboard only begins to dismiss after the previous test completes, we have a race. When the
5303 keyboard finishes dismissing after the UI script is evaluated, it will trigger UI script completion early and
5304 skip over one of the steps in the layout test, resulting in a text diff failure.
5306 To fix this, add a mechanism in WebKitTestRunner to wait until the keyboard is dismissed (with a short timeout)
5307 as a part of resetting test controller state, before moving on to the next layout test.
5309 * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
5310 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
5311 (-[TestRunnerWKWebView didStartFormControlInteraction]):
5312 (-[TestRunnerWKWebView didEndFormControlInteraction]):
5314 Use these hooks to keep track of whether the previous test is presenting any form input UI.
5316 (-[TestRunnerWKWebView isInteractingWithFormControl]):
5317 * WebKitTestRunner/ios/TestControllerIOS.mm:
5318 (WTR::handleKeyboardWillHideNotification):
5319 (WTR::handleKeyboardDidHideNotification):
5320 (WTR::TestController::platformInitialize):
5321 (WTR::TestController::platformDestroy):
5323 Register during initialization (and unregister during teardown) for keyboard hiding notifications, to keep track
5324 of when the keyboard dismissal animation ends.
5326 (WTR::TestController::platformResetStateToConsistentValues):
5328 Make a couple of tweaks here: (1) if form input UI is being shown, tell the web view to resign first responder,
5329 which causes the field to lose focus. (2) If necessary, wait for the current keyboard dismissal animation to
5330 finish. This includes any keyboard dismissal animations triggered as a result of step (1).
5332 2018-08-05 Darin Adler <darin@apple.com>
5334 [Cocoa] More tweaks and refactoring to prepare for ARC
5335 https://bugs.webkit.org/show_bug.cgi?id=188245
5337 Reviewed by Dan Bernstein.
5339 * DumpRenderTree/TestNetscapePlugIn/PluginObject.h: Use const void* for a
5340 CFTypeRef instead of void*.
5342 * DumpRenderTree/TestNetscapePlugIn/PluginObjectMac.mm:
5343 (createCoreAnimationLayer): Use CFBridgingRetain.
5345 * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
5346 (AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging casts.
5347 (AccessibilityUIElement::textMarkerRangeForElement): Ditto.
5348 (AccessibilityUIElement::selectedTextMarkerRange): Ditto.
5349 (AccessibilityUIElement::textMarkerRangeLength): Ditto.
5350 (AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute): Ditto.
5351 (AccessibilityUIElement::indexForTextMarker): Ditto.
5352 (AccessibilityUIElement::textMarkerForIndex): Ditto.
5353 (AccessibilityUIElement::isTextMarkerValid): Ditto.
5354 (AccessibilityUIElement::previousTextMarker): Ditto.
5355 (AccessibilityUIElement::nextTextMarker): Ditto.
5356 (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
5357 (createJSStringRef): Ditto.
5358 (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
5359 (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
5360 (AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
5361 (AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
5362 (AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
5363 (AccessibilityUIElement::endTextMarkerForBounds): Ditto.
5364 (AccessibilityUIElement::startTextMarkerForBounds): Ditto.
5365 (AccessibilityUIElement::textMarkerForPoint): Ditto.
5366 (AccessibilityUIElement::accessibilityElementForTextMarker): Ditto.
5367 (AccessibilityUIElement::startTextMarker): Ditto.
5368 (AccessibilityUIElement::endTextMarker): Ditto.
5369 (AccessibilityUIElement::setSelectedVisibleTextRange): Ditto.
5370 (AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
5371 (AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
5372 (AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
5373 (AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
5374 (AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
5375 (AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
5376 (AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
5377 (AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
5378 (AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
5379 (AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
5381 * DumpRenderTree/mac/DumpRenderTree.mm:
5382 (resetWebPreferencesToConsistentValues): Use bridging cast.
5383 (dumpFramesAsText): Ditto.
5384 (dumpBackForwardListForAllWindows): Use a modern for loop instead of
5385 CFArray functions to iterate the array.
5386 (dump): Use bridging cast.
5389 * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
5390 (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
5391 (toUTI): Return a RetainPtr<CFStringRef>.
5392 (-[LocalPasteboard types]): Use the above and bridging casts.
5393 (-[LocalPasteboard availableTypeFromArray:]): Ditto.
5394 (-[LocalPasteboard setData:forType:]): Ditto.
5395 (-[LocalPasteboard dataForType:]): Ditto.
5396 (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
5397 instead of CFPropertyList.
5398 (-[LocalPasteboard setString:forType:]): Use NSString method instead of
5399 CFStringCreateExternalRepresentation.
5401 * DumpRenderTree/mac/MockGeolocationProvider.h: Put CFTypeRef in a HashSet
5402 instead of an Objective-C object pointer type.
5403 * DumpRenderTree/mac/MockGeolocationProvider.mm:
5404 (-[MockGeolocationProvider registerWebView:]): Update for above.
5405 (-[MockGeolocationProvider unregisterWebView:]): Ditto.
5406 (-[MockGeolocationProvider timerFired]): Ditto.
5408 * DumpRenderTree/mac/MockWebNotificationProvider.h: Use CFTypeRef in
5409 HashMap and HashSet instead of an Objective-C object pointer type.
5410 * DumpRenderTree/mac/MockWebNotificationProvider.mm:
5411 (-[MockWebNotificationProvider registerWebView:]): Update for above.
5412 (-[MockWebNotificationProvider unregisterWebView:]): Ditto.
5413 (-[MockWebNotificationProvider showNotification:fromWebView:]): Ditto.
5414 (-[MockWebNotificationProvider cancelNotification:]): Ditto.
5415 (-[MockWebNotificationProvider simulateWebNotificationClick:]): Ditto.
5417 * DumpRenderTree/mac/ObjCPlugin.m:
5418 (-[JSObjC retainObject:]): Use CFRetain instead of -[NSObject retain].
5420 * DumpRenderTree/mac/TestRunnerMac.mm:
5421 (TestRunner::addDisallowedURL): Use bridging cast.
5422 (TestRunner::applicationCacheDiskUsageForOrigin): Ditto.
5423 (TestRunner::clearApplicationCacheForOrigin): Ditto.
5424 (originsArrayToJS): Ditto.
5425 (TestRunner::copyDecodedHostName): Ditto.
5426 (TestRunner::copyEncodedHostName): Ditto.
5427 (TestRunner::queueLoad): Ditto.
5428 (TestRunner::setDomainRelaxationForbiddenForURLScheme): Ditto.
5429 (TestRunner::setMockGeolocationPositionUnavailableError): Ditto.
5430 (TestRunner::setUserStyleSheetLocation): Ditto.
5431 (TestRunner::setValueForUser): Ditto.
5432 (TestRunner::overridePreference): Ditto.
5433 (TestRunner::execCommand): Ditto.
5434 (TestRunner::findString): Ditto.
5435 (TestRunner::isCommandEnabled): Ditto.
5436 (TestRunner::addOriginAccessWhitelistEntry): Ditto.
5437 (TestRunner::removeOriginAccessWhitelistEntry): Ditto.
5438 (TestRunner::addUserScript): Ditto.
5439 (TestRunner::addUserStyleSheet): Ditto.
5440 (TestRunner::evaluateInWebInspector): Ditto.
5441 (TestRunner::evaluateScriptInIsolatedWorld): Ditto.
5442 (TestRunner::authenticateSession): Ditto.
5443 (TestRunner::grantWebNotificationPermission): Ditto.
5444 (TestRunner::denyWebNotificationPermission): Ditto.
5445 * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
5446 (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Ditto.
5448 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
5449 (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging cast.
5450 (WTR::AccessibilityUIElement::textMarkerRangeForElement): Ditto.
5451 (WTR::AccessibilityUIElement::previousTextMarker): Ditto.
5452 (WTR::AccessibilityUIElement::nextTextMarker): Ditto.
5453 (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
5454 (WTR::AccessibilityUIElement::selectedTextMarkerRange): Ditto.
5455 (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
5456 (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
5457 (WTR::AccessibilityUIElement::endTextMarkerForBounds): Ditto.
5458 (WTR::AccessibilityUIElement::startTextMarkerForBounds): Ditto.
5459 (WTR::AccessibilityUIElement::textMarkerForPoint): Ditto.
5460 (WTR::AccessibilityUIElement::textMarkerForIndex): Ditto.
5461 (WTR::AccessibilityUIElement::startTextMarker): Ditto.
5462 (WTR::AccessibilityUIElement::endTextMarker): Ditto.
5463 (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
5464 (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
5465 (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
5466 (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
5467 (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
5468 (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
5469 (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
5470 (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
5471 (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
5472 (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
5474 * WebKitTestRunner/PlatformMac.cmake: Added WebKitTestRunnerWindow.h and .mm files.
5475 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Ditto.
5477 * WebKitTestRunner/mac/EventSenderProxy.mm: Add include of WebKitTestRunnerWindow.h
5478 so we can use the type and know it inherits from NSWindow.
5480 * WebKitTestRunner/mac/PlatformWebViewMac.mm: Add include of WebKitTestRunnerWindow.h
5481 so we can use the type and know it inherits from NSWindow. Moved WebKitTestRunnerWindow
5482 class into a separate file.
5483 (WTR::PlatformWebView::keyWindow): Call +[WebKitTestRunnerWindow _WTR_keyWindow]
5484 instead of have a second copy of the implementation.
5486 * WebKitTestRunner/mac/WebKitTestRunnerEvent.mm: Add include of WebKitTestRunnerWindow.h
5487 so we can use the type and know it inherits from NSWindow. Also removed "using namespace".
5488 (+[WebKitTestRunnerEvent mouseLocation]): Updated for above.
5490 * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
5491 (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
5492 (-[LocalPasteboard availableTypeFromArray:]): Use modern for loop.
5493 (-[LocalPasteboard setData:forType:]): Reordered method to be a tiny bit more efficient.
5494 (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
5495 instead of CFPropertyList.
5496 (-[LocalPasteboard setString:forType:]): Use NSString method instead of
5497 CFStringCreateExternalRepresentation.
5499 * WebKitTestRunner/mac/WebKitTestRunnerWindow.h: Moved declaration of
5500 WebKitTestRunnerWindow here so it can be included by files that need to know
5501 what the type is and that it inherits from NSWindow.
5503 * WebKitTestRunner/mac/WebKitTestRunnerWindow.mm: Added. Moved implementation here.
5504 (+[WebKitTestRunnerWindow _WTR_keyWindow]): Use modern for loop instead of the old,
5505 messier implementation.
5507 2018-08-07 Alex Christensen <achristensen@webkit.org>
5509 Add a test for using SafeBrowsing
5510 https://bugs.webkit.org/show_bug.cgi?id=188290
5512 Reviewed by Chris Dumez.
5514 Swizzle out SSBLookupContext to write tests for how WebKit responds when it responds in different ways.
5515 We don't do anything with its results in WebKit yet, but when we do I'll add the expected behavior to this test.
5517 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
5518 * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm: Added.
5519 (-[SafeBrowsingDelegate webView:didFinishNavigation:]):
5520 (TestWebKitAPI::TEST):
5522 2018-08-07 Lucas Forschler <lforschler@apple.com>
5524 If there's a Radar in the ChangeLog, webkit-patch upload/create-bug should put the radar in the bug and set InRadar
5525 https://bugs.webkit.org/show_bug.cgi?id=188235
5527 Reviewed by Daniel Bates, Kocsen Chung, and Aakash Jain.
5529 * Scripts/webkitpy/common/checkout/changelog.py:
5530 (ChangeLogEntry): Teach the ChangeLog tools how to parse a radar_id
5531 * Scripts/webkitpy/common/checkout/changelog_unittest.py: Test out the new _parse_radar_id functionality
5532 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
5533 (Bugzilla.add_keyword_to_bug): Add logic to add keywords using the changeform
5534 * Scripts/webkitpy/tool/commands/upload.py:
5535 (Upload): Teach the upload step how to add radar information when creating a new bug.
5536 * Scripts/webkitpy/tool/steps/__init__.py:
5537 * Scripts/webkitpy/tool/steps/addradar.py: Added.
5539 (AddRadar.run): Contains the logic to add the radar information to bugzilla.
5540 * Scripts/webkitpy/tool/steps/createbug.py:
5541 (CreateBug.run): set a "created_new_bug" state when creating a new bugzilla bug.
5543 2018-08-07 Wenson Hsieh <wenson_hsieh@apple.com>
5545 Post-review feedback after r234614.
5546 https://bugs.webkit.org/show_bug.cgi?id=188322
5547 <rdar://problem/42455270>
5549 Reviewed by Sam Weinig.
5551 Use std::round instead of roundl — there's no reason to go from double to long double precision when rounding.
5553 * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
5556 2018-08-07 Don Olmstead <don.olmstead@sony.com>
5558 [MiniBrowser][Win] Allow selection of recent user agents
5559 https://bugs.webkit.org/show_bug.cgi?id=188371
5561 Reviewed by Fujii Hironori.
5563 Updates the user agent spoofing strings to the latest released
5564 versions and adds Microsoft Edge's user agent.
5566 Moves the menu item selection to the common base class, BrowserWindow
5567 to support user agent spoofing in a WebKitLegacyBrowserWindow and
5568 WebKitBrowserWindow.
5570 * MiniBrowser/win/BrowserWindow.cpp: Added.
5571 (BrowserWindow::setUserAgent):
5572 * MiniBrowser/win/BrowserWindow.h:
5573 * MiniBrowser/win/CMakeLists.txt:
5574 * MiniBrowser/win/MainWindow.cpp:
5575 (MainWindow::toggleMenuItem):
5576 * MiniBrowser/win/MiniBrowserLib.rc:
5577 * MiniBrowser/win/MiniBrowserLibResource.h:
5578 * MiniBrowser/win/WebKitBrowserWindow.cpp:
5579 * MiniBrowser/win/WebKitBrowserWindow.h:
5580 * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
5581 (WebKitLegacyBrowserWindow::setUserAgent):
5582 * MiniBrowser/win/WebKitLegacyBrowserWindow.h:
5584 2018-08-07 Yusuke Suzuki <utatane.tea@gmail.com>
5586 Unreviewed, add a new address to my configuration
5588 * Scripts/webkitpy/common/config/contributors.json:
5590 2018-08-06 David Quesada <david_quesada@apple.com>
5592 webkitdirs.pm should default to iPhone SE for 64-bit testing
5593 https://bugs.webkit.org/show_bug.cgi?id=188361
5595 Reviewed by Daniel Bates.
5597 Use iPhone SE as the default iOS Simulator device type. This corresponds to the change to webkitpy in r234467.
5599 * Scripts/webkitdirs.pm:
5600 (findOrCreateSimulatorForIOSDevice):
5601 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
5603 Update the help text for --device-type to reflect the new default device.
5605 2018-08-06 Wenson Hsieh <wenson_hsieh@apple.com>
5607 [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
5608 https://bugs.webkit.org/show_bug.cgi?id=188322
5609 <rdar://problem/42455270>
5611 Reviewed by Tim Horton.
5613 Fixes an API test added in r234600, which had incorrect test expectations — namely, the width of the caret rect
5614 was not in content view coordinates, unlike the x, y, and height.
5616 * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
5618 (-[TestWKWebView waitForCaretViewFrameToBecome:]):
5619 (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
5620 (TestWebKitAPI::TEST):
5622 2018-08-06 Ryan Haddad <ryanhaddad@apple.com>
5624 Unreviewed, rolling out r234569.
5626 Breaks internal builds.
5630 "We should cache the compiled sandbox profile in a data vault"
5631 https://bugs.webkit.org/show_bug.cgi?id=184991
5632 https://trac.webkit.org/changeset/234569
5634 2018-08-06 Fujii Hironori <Hironori.Fujii@sony.com>
5636 [Win][DLLLauncher] Remove --highDPI switch
5637 https://bugs.webkit.org/show_bug.cgi?id=188255
5639 Reviewed by Yusuke Suzuki.
5641 Bug 149417 has added `--highDPI` switch to make MiniBrowser DPI
5642 aware. But, Bug 158733 has made MiniBrowser always DPI aware. It
5643 became useless since the change. Remove the switch.
5645 This change fixes the issue all dump render tree tests are failing
5646 in WinCairo port if high DPI display is connected.
5648 * MiniBrowser/win/Common.cpp:
5649 (parseCommandLine): Removed `--highDPI` switch.
5650 * win/DLLLauncher/DLLLauncherMain.cpp:
5651 (wWinMain): Do not call SetProcessDPIAware.
5652 (shouldUseHighDPI): Deleted.
5654 2018-08-06 Wenson Hsieh <wenson_hsieh@apple.com>
5656 [iOS] Tests that try to interact with the QuickType bar time out on iOS 11+
5657 https://bugs.webkit.org/show_bug.cgi?id=188335
5658 <rdar://problem/32542437> and <rdar://problem/32542433>
5660 Reviewed by Tim Horton.
5662 Remove a UIScriptController helper method that attempted to wait for QuickType buttons to appear, and then send
5663 touch events to the buttons. These were only used for the two tests which this patch refactors. See the
5664 LayoutTests ChangeLog for more detail.
5666 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
5667 (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
5668 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
5669 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
5670 (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
5671 (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
5672 * TestRunnerShared/UIScriptContext/UIScriptController.h:
5673 * TestRunnerShared/spi/UIKitTestSPI.h:
5675 Remove an internal class declaration that is now unnecessary.
5677 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
5678 (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
5679 (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
5681 2018-08-06 Wenson Hsieh <wenson_hsieh@apple.com>
5683 [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
5684 https://bugs.webkit.org/show_bug.cgi?id=188322
5685 <rdar://problem/42455270>
5687 Reviewed by Tim Horton.
5689 Adds plumbing in UIScriptController to grab the start and end selection handle rects for use in the new layout
5690 test. Also adds new API tests to verify that when a web view resigns first responder, both caret and range
5691 selection views are hidden, and when first responder status is restored, both caret and range selection views
5692 are made visible again.
5694 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
5695 (WTR::UIScriptController::selectionStartGrabberViewRect const):
5696 (WTR::UIScriptController::selectionEndGrabberViewRect const):
5697 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
5698 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
5699 (WTR::UIScriptController::selectionStartGrabberViewRect const):
5700 (WTR::UIScriptController::selectionEndGrabberViewRect const):
5701 * TestRunnerShared/UIScriptContext/UIScriptController.h:
5702 * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
5703 (-[TestWKWebView waitForCaretViewFrameToBecome:]):
5704 (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
5705 (webViewWithAutofocusedInput):
5707 Pull out some common logic for creating a web view that allows programmatic focus to present the keyboard, and
5708 immediately loading a web page with an autofocusing text field.
5710 (TestWebKitAPI::TEST):
5711 * TestWebKitAPI/cocoa/TestWKWebView.h:
5712 * TestWebKitAPI/cocoa/TestWKWebView.mm:
5713 (-[TestWKWebView caretViewRectInContentCoordinates]):
5714 (-[TestWKWebView selectionViewRectsInContentCoordinates]):
5715 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
5716 (WTR::UIScriptController::selectionStartGrabberViewRect const):
5717 (WTR::UIScriptController::selectionEndGrabberViewRect const):
5719 2018-08-06 Wenson Hsieh <wenson_hsieh@apple.com>
5721 [iOS] Layout tests that send HID events cause WebKitTestRunner to crash on recent SDKs
5722 https://bugs.webkit.org/show_bug.cgi?id=188334
5723 <rdar://problem/40630074>
5725 Reviewed by Tim Horton.
5727 To mark the end of previously dispatched IOHID events, HIDEventGenerator currently sends a vendor-defined event
5728 and stores the completion callback ID for the previously dispatched events as vendor-defined data. When this
5729 vendor-defined marker event is handled by the application, we then read the callback ID back from the event, map
5730 it to a completion block, and invoke the completion block to signal that the previous HID event has been
5733 This callback ID is an unsigned, so we tell IOKit that we need `sizeof(unsigned)` (4 bytes) to store it. On
5734 shipping software, IOKit clamps this to a minimum of 8 bytes, i.e. `sizeof(CFIndex)`. When we later call
5735 IOHIDEventGetIntegerValue to read the value of our vendor-defined data as a CFIndex, we get our expected
5736 callback ID because the buffer was clamped to 8 bytes.
5738 However, on recent iOS SDKs that contain the fix for <rdar://problem/20082284>, IOKit no longer clamps the size
5739 of the vendor-defined data buffer to 8 bytes. This means that when we try to use IOHIDEventGetIntegerValue to
5740 read our callback ID back, we end up getting a CFIndex where the lower 4 bytes are the callback ID we wrote, and
5741 the upper 4 bytes are garbage. In the case where any of these upper 4 bytes are non-zero, we fail to map the
5742 callback ID to a completion handler, and so we never finish dispatching the HID event, causing an exception to
5745 To fix this, we adjust callback ID to be a CFIndex, which matches IOHIDEventGetIntegerValue's return type.
5747 * WebKitTestRunner/ios/HIDEventGenerator.mm:
5748 (+[HIDEventGenerator nextEventCallbackID]):
5749 (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
5751 Also refactor a bit of `-_sendMarkerHIDEventWithCompletionBlock:` by using auto and move semantics.
5753 2018-08-03 Ben Richards <benton_richards@apple.com>
5755 We should cache the compiled sandbox profile in a data vault
5756 https://bugs.webkit.org/show_bug.cgi?id=184991
5758 Reviewed by Ryosuke Niwa.
5760 Added trace points for sandbox initialization
5762 * Tracing/SystemTracePoints.plist:
5764 2018-08-03 David Fenton <david_fenton@apple.com>
5766 Unreviewed, rolling out r234517.
5768 Caused API test failures on iOS
5772 "[Cocoa] setCookie API fails to set session cookies for
5773 defaultDataStore if processPool created but not used"
5774 https://bugs.webkit.org/show_bug.cgi?id=188209
5775 https://trac.webkit.org/changeset/234517
5777 2018-08-03 Ben Richards <benton_richards@apple.com>
5779 Add configuration for automatic process pre-warming
5780 https://bugs.webkit.org/show_bug.cgi?id=187108
5782 Reviewed by Ryosuke Niwa.
5784 Added new test case for setting maximum prewarmed process count and updated test case for process swap on navigation to set the maximum prewarmed process count to be 1 where relevant.
5786 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
5787 * TestWebKitAPI/Tests/WebKitCocoa/InitialWarmedProcessUsed.mm:
5789 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
5790 * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm:
5793 2018-08-03 Aakash Jain <aakash_jain@apple.com>
5795 [ews-build] Add build step to Check Patch Relevance
5796 https://bugs.webkit.org/show_bug.cgi?id=188295
5798 Reviewed by Lucas Forschler.
5800 * BuildSlaveSupport/ews-build/steps.py:
5801 (CheckPatchRelevance): Added step to check patch relevance.
5802 (CheckPatchRelevance._patch_is_relevant): Checks if the patch is relevant.
5803 (CheckPatchRelevance._get_patch): Retrieves the patch from buildbot.
5804 (CheckPatchRelevance._addToLog): Add the log message.
5805 (CheckPatchRelevance.start):
5806 * BuildSlaveSupport/ews-build/factories.py: Added CheckPatchRelevance step appropriately.
5808 2018-08-03 Jer Noble <jer.noble@apple.com>
5810 Unreviewed gardening; r234534 changed the policy for what audio session is set when a
5811 media element is paused. Updating the test to reflect the new policy.
5813 * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
5814 (TestWebKitAPI::TEST):
5816 2018-08-03 Zalan Bujtas <zalan@apple.com>
5818 [LFC][Floating] Now that the document renderer belongs to "complicated cases", adjust viewport stretching.
5819 https://bugs.webkit.org/show_bug.cgi?id=188306
5821 Reviewed by Antti Koivisto.
5823 * LayoutReloaded/misc/LFC-passing-tests.txt:
5825 2018-08-03 Carlos Garcia Campos <cgarcia@igalia.com>
5827 [WPE] Use the new key mapper API from WPEBackend
5828 https://bugs.webkit.org/show_bug.cgi?id=188216
5830 Reviewed by Žan Doberšek.
5832 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
5833 (WTR::EventSenderProxy::keyDown): Use wpe_input_xkb_context_get_entries_for_key_code() to get the hardware key
5835 * wpe/backends/WindowViewBackend.cpp:
5836 (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
5837 (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
5838 (WPEToolingBackends::WindowViewBackend::modifiers const):
5839 * wpe/backends/WindowViewBackend.h:
5841 2018-08-03 Carlos Garcia Campos <cgarcia@igalia.com>
5843 [WPE] Implement MouseEvent.buttons
5844 https://bugs.webkit.org/show_bug.cgi?id=187998
5846 Reviewed by Žan Doberšek.
5848 Pass modifiers to mouse events.
5850 * WebKitTestRunner/EventSenderProxy.h:
5851 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
5852 (WTR::senderButtonToWPEButton):
5853 (WTR::modifierForButton):
5854 (WTR::EventSenderProxy::mouseDown):
5855 (WTR::EventSenderProxy::mouseUp):
5856 (WTR::EventSenderProxy::mouseMoveTo):
5857 (WTR::EventSenderProxy::mouseScrollBy):
5858 (WTR::wkEventModifiersToWPE):
5859 (WTR::wpeKeySymForKeyRef):
5860 (WTR::EventSenderProxy::keyDown):
5861 (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
5862 * wpe/backends/WindowViewBackend.cpp:
5863 (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
5864 (WPEToolingBackends::WindowViewBackend::modifiers const):
5865 * wpe/backends/WindowViewBackend.h:
5867 2018-08-03 Carlos Garcia Campos <cgarcia@igalia.com>
5869 [WPE] Use WPE key symbols and new API instead of xkbcommon and the key mapper
5870 https://bugs.webkit.org/show_bug.cgi?id=188093
5872 Reviewed by Žan Doberšek.
5874 * MiniBrowser/wpe/main.cpp: Use WPE key symbols.
5875 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
5876 (WTR::wpeKeySymForKeyRef): Use WPE key symbols and wpe_unicode_to_key_code().
5877 (WTR::EventSenderProxy::keyDown): Do not set unicode char to the event since it was removed.
5878 * flatpak/org.webkit.WPE.yaml: Bump WPEBackend and WPEBackend-fdo versions.
5879 * wpe/backends/WindowViewBackend.cpp:
5880 (WPEToolingBackends::WindowViewBackend::handleKeyEvent): Do not set unicode char to the event since it was removed.
5881 * wpe/jhbuild.modules: Bump WPEBackend and WPEBackend-fdo versions.
5883 2018-08-02 Nan Wang <n_wang@apple.com>
5885 AX: [iOS] add support to return the attributed string under the element
5886 https://bugs.webkit.org/show_bug.cgi?id=188276
5887 <rdar://problem/42872357>
5889 Reviewed by Chris Fleizach.
5891 * DumpRenderTree/AccessibilityUIElement.cpp:
5892 (attributedStringForElementCallback):
5893 (AccessibilityUIElement::getJSClass):
5894 * DumpRenderTree/AccessibilityUIElement.h:
5895 * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
5896 (AccessibilityUIElement::attributedStringForElement):
5897 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
5898 (WTR::AccessibilityUIElement::attributedStringForElement):
5899 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
5900 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
5901 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
5902 (WTR::AccessibilityUIElement::attributedStringForElement):
5904 2018-08-02 Ryan Haddad <ryanhaddad@apple.com>
5906 Skip API test DataInteractionTests.CustomActionSheetPopover on current SDKs.
5907 https://bugs.webkit.org/show_bug.cgi?id=175204
5909 Unreviewed test gardening.
5911 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
5913 2018-08-02 Sihui Liu <sihui_liu@apple.com>
5915 [Cocoa] setCookie API fails to set session cookies for defaultDataStore if processPool created but not used
5916 https://bugs.webkit.org/show_bug.cgi?id=188209
5918 Reviewed by Geoffrey Garen.
5920 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
5923 2018-08-02 Dan Bernstein <mitz@apple.com>
5925 Fixed WebKit.AttrStyle timing out on build.webkit.org.
5927 * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Changed from a URL that requires network
5928 access to one that doesn’t.
5929 * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm:
5930 (TEST): Updated expected value.
5932 2018-08-02 Wenson Hsieh <wenson_hsieh@apple.com>
5934 [iOS] Keyboard becomes unresponsive after pressing delete while pressing down on a character key with accents
5935 https://bugs.webkit.org/show_bug.cgi?id=188251
5936 <rdar://problem/37842108>
5938 Reviewed by Tim Horton.
5940 Adds a new API test to verify that clients (in this case, UIKit) is allowed to invoke
5941 -handleKeyWebEvent:withCompletionHandler: within the completion block of a prior invocation.
5943 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
5944 * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm: Added.
5945 (TestWebKitAPI::TEST):
5946 * TestWebKitAPI/Tests/ios/TestInputDelegate.h: Added.
5948 Pull some logic used to force an input session to start out from an existing API test file
5949 (WKWebViewAutofillTests) and into a separate helper class that is used by both the existing API tests and the
5950 new keyboard input test.
5952 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
5953 (-[AutofillTestView initWithFrame:]):
5954 (TestWebKitAPI::TEST):
5955 (-[TestInputDelegate init]): Deleted.
5956 (-[TestInputDelegate _webView:focusShouldStartInputSession:]): Deleted.
5957 * TestWebKitAPI/ios/UIKitSPI.h:
5959 Add some UIKit SPI utilized by the new API test.
5961 2018-08-01 Dan Bernstein <mitz@apple.com>
5963 Optionally expose Attr::style to JavaScript
5964 https://bugs.webkit.org/show_bug.cgi?id=188226
5965 <rdar://problem/42818113>
5967 Reviewed by Darin Adler.
5969 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
5970 * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Added.
5971 * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm: Added.
5974 2018-08-02 David Fenton <david_fenton@apple.com>
5976 Unreviewed, rolling out r234489.
5978 Caused 50+ crashes and 60+ API failures on iOS
5982 "[WTF] Rename String::format to String::deprecatedFormat"
5983 https://bugs.webkit.org/show_bug.cgi?id=188191
5984 https://trac.webkit.org/changeset/234489
5986 2018-08-01 Ross Kirsling <ross.kirsling@sony.com>
5988 TestWTF.WTF_NeverDestroyed.Construct output differs for MSVC in Debug mode
5989 https://bugs.webkit.org/show_bug.cgi?id=188244
5991 Reviewed by Daniel Bates.
5993 Follow-up to r234179. MSVC chooses not to inline the lambda in Debug mode.
5995 * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp:
5997 2018-08-01 Tomas Popela <tpopela@redhat.com>
5999 [WTF] Rename String::format to String::deprecatedFormat
6000 https://bugs.webkit.org/show_bug.cgi?id=188191
6002 Reviewed by Darin Adler.
6004 It should be replaced with string concatenation.
6006 * DumpRenderTree/win/DumpRenderTree.cpp:
6009 * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
6010 (TestWebKitAPI::Util::createURLForResource):
6011 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6012 (WTR::cacheTestRunnerCallback):
6013 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
6014 (WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
6015 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
6016 (WTR::AccessibilityUIElement::attributedStringForRange):
6017 (WTR::AccessibilityUIElement::url):
6018 (WTR::stringAtOffset):
6019 * WebKitTestRunner/TestController.cpp:
6020 (WTR::TestController::didReceiveAuthenticationChallenge):
6021 (WTR::TestController::downloadDidFail):
6022 (WTR::originUserVisibleName):
6023 (WTR::userMediaOriginHash):
6024 (WTR::TestController::didNavigateWithNavigationData):
6025 (WTR::TestController::didPerformClientRedirect):
6026 (WTR::TestController::didPerformServerRedirect):
6027 (WTR::TestController::didUpdateHistoryTitle):
6029 2018-08-01 Nan Wang <n_wang@apple.com>
6031 AX: AOM: Add ARIA IDL Attribute Reflection
6032 https://bugs.webkit.org/show_bug.cgi?id=184676
6033 <rdar://problem/39476882>
6035 Reviewed by Chris Fleizach.
6037 * DumpRenderTree/mac/DumpRenderTree.mm:
6038 (enableExperimentalFeatures):
6039 * WebKitTestRunner/TestController.cpp:
6040 (WTR::TestController::resetPreferencesToConsistentValues):
6042 2018-08-01 Jonathan Bedard <jbedard@apple.com>
6044 Use iPhone SE as the default simulated device
6045 https://bugs.webkit.org/show_bug.cgi?id=188227
6047 Reviewed by Aakash Jain.
6049 * Scripts/webkitpy/port/ios_simulator.py:
6052 2018-08-01 Commit Queue <commit-queue@webkit.org>
6054 Unreviewed, rolling out r234443 and r234445.
6055 https://bugs.webkit.org/show_bug.cgi?id=188224
6057 Revision caused 3 api failures across all platforms.
6058 (Requested by Truitt on #webkit).
6060 Reverted changesets:
6062 "Add configuration for automatic process pre-warming"
6063 https://bugs.webkit.org/show_bug.cgi?id=187108
6064 https://trac.webkit.org/changeset/234443
6066 "Add configuration for automatic process pre-warming"
6067 https://bugs.webkit.org/show_bug.cgi?id=187108
6068 https://trac.webkit.org/changeset/234445
6070 2018-07-31 Ben Richards <benton_richards@apple.com>
6072 Add configuration for automatic process pre-warming
6073 https://bugs.webkit.org/show_bug.cgi?id=187108
6075 Reviewed by Ryosuke Niwa.
6077 Added new test case for setting maximum prewarmed process count and updated test case for process swap on navigation to set the maximum prewarmed process count to be 1 where relevant.
6079 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6080 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
6081 * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm: Added.
6084 2018-07-31 John Wilander <wilander@apple.com>
6086 Resource Load Statistics: Remove partitioned cookies for reduced complexity, lower memory footprint, and ability to support more platforms
6087 https://bugs.webkit.org/show_bug.cgi?id=188109
6088 <rdar://problem/42664391>
6090 Reviewed by Brent Fulgham, Chris Dumez, and Alex Christensen.
6092 This patch removes cookie partitioning which reduces the model to just
6093 blocked cookies (in third-party contexts) and first-party cookie access.
6095 Several of the changes are renaming to reflect that there are no more
6098 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6099 Removed or renamed functions to reflect that there are no more
6100 partitioned cookies.
6101 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
6102 (WTR::InjectedBundle::didReceiveMessageToPage):
6103 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6104 (WTR::TestRunner::statisticsUpdateCookieBlocking):
6105 (WTR::TestRunner::statisticsCallDidSetBlockCookiesForHostCallback):
6106 (WTR::TestRunner::setCookieStoragePartitioningEnabled): Deleted.
6107 (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction): Deleted.
6108 (WTR::TestRunner::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
6109 (WTR::TestRunner::statisticsUpdateCookiePartitioning): Deleted.
6110 (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost): Deleted.
6111 (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback): Deleted.
6112 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6113 * WebKitTestRunner/TestController.cpp:
6114 (WTR::TestController::statisticsUpdateCookieBlocking):
6115 (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction): Deleted.
6116 (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
6117 (WTR::TestController::statisticsUpdateCookiePartitioning): Deleted.
6118 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost): Deleted.
6119 * WebKitTestRunner/TestController.h:
6120 * WebKitTestRunner/TestInvocation.cpp:
6121 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
6122 (WTR::TestInvocation::didSetBlockCookiesForHost):
6123 (WTR::TestInvocation::didSetHasHadUserInteraction):
6124 (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost): Deleted.
6125 (WTR::TestInvocation::didSetHasHadNonRecentUserInteraction): Deleted.
6126 * WebKitTestRunner/TestInvocation.h:
6127 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
6128 (WTR::initializeWebViewConfiguration):
6130 2018-07-31 Alex Christensen <achristensen@webkit.org>
6132 Build fix. Remove unused variable.
6134 * TestWebKitAPI/Tests/WebCore/TransformationMatrix.cpp:
6135 (TestWebKitAPI::TEST):
6136 transform was never used. It was introduced in r205871
6137 Apparently I'm the first one to build in a certain configuration that found it.
6139 2018-07-31 Fujii Hironori <Hironori.Fujii@sony.com>
6141 server_process.py should print returncode in debug log if the process crashed
6142 https://bugs.webkit.org/show_bug.cgi?id=188160
6144 Reviewed by Konstantin Tokarev.
6146 * Scripts/webkitpy/port/server_process.py:
6147 (ServerProcess.has_crashed): Put self._proc.returncode into the debug log message.
6149 2018-07-31 Tomas Popela <tpopela@redhat.com>
6151 [WTF] String::formatWithArguments() is unused
6152 https://bugs.webkit.org/show_bug.cgi?id=187955
6154 Reviewed by Darin Adler.
6156 Remove tests for WTF::String::formatWithArguments() as it's unused and
6159 * TestWebKitAPI/Tests/WTF/WTFString.cpp:
6161 2018-07-30 Aakash Jain <aakash_jain@apple.com>
6163 [ews-build] Fix typo in builder name for Bindings-tests-EWS.
6165 * BuildSlaveSupport/ews-build/config.json: Changed 'tests' to 'Tests' to make it consistent with
6168 2018-07-30 Aakash Jain <aakash_jain@apple.com>
6170 [ews-build] Add support for API tests in OpenSource EWS
6171 https://bugs.webkit.org/show_bug.cgi?id=188156
6173 Reviewed by Lucas Forschler.
6175 * BuildSlaveSupport/ews-build/config.json:
6176 * BuildSlaveSupport/ews-build/factories.py:
6177 (BuildFactory.__init__): Added triggers parameter.
6178 (BuildFactory): If trigger is defined, create and upload archive and trigger appropriate queues.
6179 (BuildFactory.propertiesToPassToTriggers): Pass all the required properties to triggered queue.
6180 (APITestsFactory): Factory for running API tests.
6181 * BuildSlaveSupport/ews-build/steps.py:
6182 (ConfigureBuild.start): Set the property only if property is defined in config.json. Also set the
6183 source of the property.
6185 2018-07-30 Aakash Jain <aakash_jain@apple.com>
6187 [ews-build] loadConfig should ensure that the triggers are valid
6188 https://bugs.webkit.org/show_bug.cgi?id=188134
6190 Reviewed by Lucas Forschler.
6192 * BuildSlaveSupport/ews-build/loadConfig.py:
6193 (checkValidBuilder): Added a check to ensure that the builder doesn't refernce non-existing scheduler.
6194 (checkValidSchedulers): Ensures that the scheduler is not un-used.
6195 * BuildSlaveSupport/ews-build/loadConfig_unittest.py: Updated unit-tests.
6197 2018-07-27 Michael Catanzaro <mcatanzaro@igalia.com>
6199 Unreviewed, fix typo in test expectations and mark another test as timing out
6201 * TestWebKitAPI/glib/TestExpectations.json:
6203 2018-07-27 Michael Catanzaro <mcatanzaro@igalia.com>
6205 More unreviewed GTK test gardening
6207 * TestWebKitAPI/glib/TestExpectations.json:
6209 2018-07-27 Simon Fraser <simon.fraser@apple.com>
6211 Be more conservative with compositing layer creation when memory is low
6212 https://bugs.webkit.org/show_bug.cgi?id=187866
6213 rdar://problem/42366345
6215 Reviewed by Zalan Bujtas.
6217 When process physical footprint is above a fraction of the jetsam limit, be more conservative in making
6218 compositing layers. We avoid compositing for these situations:
6219 1. Layers with 3D transforms which are affine (like translateZ(0)).
6220 2. Layers with will-change
6221 3. Layers for canvases (other than WebGL/WebGPU)
6223 We reuse some macOS code in MemoryPressureHandler() but choose different thresholds for iOS,
6224 falling into "conservative mode" at 50% of jetsam limit, and "strict mode" at 65%.
6225 Compositing chooses to be more conservative in either "conservative" or "strict" memory modes.
6227 Plumb through a "compositingPolicyOverride" both so that on-device testing isn't
6228 flakily falling into a different mode, and so that we can impose the conservative
6231 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
6232 (WTR::InjectedBundlePage::prepare):
6234 2018-07-27 Michael Catanzaro <mcatanzaro@igalia.com>
6236 Unreviewed GTK test gardening
6238 * TestWebKitAPI/glib/TestExpectations.json:
6240 2018-07-27 Alex Christensen <achristensen@webkit.org>
6242 Fix API tests after r234314
6243 https://bugs.webkit.org/show_bug.cgi?id=188077
6245 Make API tests use new delegate method.
6247 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
6248 (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
6249 (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
6251 2018-07-27 Alex Christensen <achristensen@webkit.org>
6253 Fix API tests after r234314
6254 https://bugs.webkit.org/show_bug.cgi?id=188077
6256 Make API tests use new delegate method.
6258 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
6259 (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
6260 (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
6261 (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
6262 (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
6263 (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
6264 (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
6265 (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
6266 (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
6267 (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
6268 (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
6270 2018-07-26 Andy VanWagoner <andy@vanwagoner.family>
6272 [INTL] Remove INTL sub-feature compile flags
6273 https://bugs.webkit.org/show_bug.cgi?id=188081
6275 Reviewed by Michael Catanzaro.
6277 * Scripts/webkitperl/FeatureList.pm:
6278 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
6280 2018-07-26 Chris Dumez <cdumez@apple.com>
6282 Loading a file URL and then issuing a reload right away causes the load to fail due to sandboxing
6283 https://bugs.webkit.org/show_bug.cgi?id=188078
6284 <rdar://problem/42562493>
6286 Reviewed by Geoff Garen.
6288 Add API test coverage. It exercises the right code path but unfortunately is not yet a regression
6289 test because TestWebKitAPI does not appear to be sandboxed (rdar://problem/42638129).
6291 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6292 * TestWebKitAPI/Tests/WebKitCocoa/LoadFileThenReload.mm: Added.
6293 (-[LoadFileThenReloadDelegate webView:didFinishNavigation:]):
6294 (-[LoadFileThenReloadDelegate webView:didFailProvisionalNavigation:withError:]):
6295 (-[LoadFileThenReloadDelegate webView:didFailNavigation:withError:]):
6298 2018-07-26 Aaron Chu <aaron_chu@apple.com>
6300 Add Aaron Chu as a committer to contributors.json
6301 https://bugs.webkit.org/show_bug.cgi?id=188066
6303 Unreviwed. Added myself as committer.
6305 * Scripts/webkitpy/common/config/contributors.json:
6307 2018-07-26 Aakash Jain <aakash_jain@apple.com>
6309 [ews-build] Add build step to run API Tests
6310 https://bugs.webkit.org/show_bug.cgi?id=188079
6312 Reviewed by Lucas Forschler.
6314 * BuildSlaveSupport/ews-build/steps.py:
6315 (TestWithFailureCount): Common class for various tests with failure count.
6316 (TestWithFailureCount.start): Configure Buildbot's logobserver.
6317 (TestWithFailureCount.commandComplete): Updates the failure count.
6318 (TestWithFailureCount.evaluateCommand): Set the step status appropriately.
6319 (TestWithFailureCount.getResultSummary): Set the step summary appropriately.
6320 (RunAPITests): Build step to run API tests.
6321 (RunAPITests.countFailures): Count the failures by parsing the output.
6322 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
6324 2018-07-26 Ross Kirsling <ross.kirsling@sony.com>
6326 String(View) should have a splitAllowingEmptyEntries function instead of a flag parameter
6327 https://bugs.webkit.org/show_bug.cgi?id=187963
6329 Reviewed by Alex Christensen.
6331 * TestWebKitAPI/Tests/WTF/WTFString.cpp:
6332 Add tests for String::split and String::splitAllowingEmptyEntries.
6334 * TestWebKitAPI/Tests/WTF/StringView.cpp:
6335 * WebKitTestRunner/TestController.cpp:
6336 (WTR::updateTestOptionsFromTestHeader):
6337 Update split/splitAllowingEmptyEntries usage.
6339 2018-07-26 Commit Queue <commit-queue@webkit.org>
6341 Unreviewed, rolling out r234181 and r234189.
6342 https://bugs.webkit.org/show_bug.cgi?id=188075
6344 These are not needed right now (Requested by thorton on
6347 Reverted changesets:
6349 "Enable Web Content Filtering on watchOS"
6350 https://bugs.webkit.org/show_bug.cgi?id=187979
6351 https://trac.webkit.org/changeset/234181
6353 "HAVE(PARENTAL_CONTROLS) should be true on watchOS"
6354 https://bugs.webkit.org/show_bug.cgi?id=187985
6355 https://trac.webkit.org/changeset/234189
6357 2018-07-04 Darin Adler <darin@apple.com>
6359 Improve WebGPU implementation, including using Metal Objective-C protocols more simply and correctly
6360 https://bugs.webkit.org/show_bug.cgi?id=187333
6362 Reviewed by Sam Weinig.
6364 * TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm: Updated.
6365 * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Updated.
6366 * TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm: Updated.
6367 * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm: Updated.
6368 * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm: Updated.
6370 2018-07-25 Aakash Jain <aakash_jain@apple.com>
6372 [ews-build] Add build steps DownloadBuiltProduct and ExtractBuiltProduct
6373 https://bugs.webkit.org/show_bug.cgi?id=188031
6375 Reviewed by Lucas Forschler.
6377 * BuildSlaveSupport/ews-build/steps.py:
6378 (DownloadBuiltProduct): Added build step DownloadBuiltProduct.
6379 (ExtractBuiltProduct): Added build step ExtractBuiltProduct.
6380 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
6382 2018-07-25 Aakash Jain <aakash_jain@apple.com>
6384 [ews-build] Add build step UploadBuiltProduct
6385 https://bugs.webkit.org/show_bug.cgi?id=188016
6387 Reviewed by Lucas Forschler.
6389 * BuildSlaveSupport/ews-build/steps.py:
6390 (UploadBuiltProduct): Added build step UploadBuiltProduct.
6391 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-test.
6393 2018-07-25 Aakash Jain <aakash_jain@apple.com>
6395 [ews-build] Add build step ArchiveBuiltProduct
6396 https://bugs.webkit.org/show_bug.cgi?id=188014
6398 Reviewed by Lucas Forschler.
6400 * BuildSlaveSupport/ews-build/steps.py:
6401 (ArchiveBuiltProduct): Added build step ArchiveBuiltProduct.
6402 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
6404 2018-07-25 Chris Dumez <cdumez@apple.com>
6406 navigator.userAgent may return outdated value after webView.customUserAgent is set
6407 https://bugs.webkit.org/show_bug.cgi?id=188009
6408 <rdar://problem/42566456>
6410 Reviewed by Alex Christensen.
6412 Add API test coverage.
6414 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6415 * TestWebKitAPI/Tests/WebKitCocoa/CustomUserAgent.mm: Added.
6418 2018-07-25 Charlie Turner <cturner@igalia.com>
6420 [Flatpak] Pass more environment variables to sandbox
6421 https://bugs.webkit.org/show_bug.cgi?id=188002
6423 Reviewed by Michael Catanzaro.
6425 * flatpak/flatpakutils.py:
6426 (WebkitFlatpak.run_in_sandbox):
6428 2018-07-25 Zan Dobersek <zdobersek@igalia.com>
6430 [WPE] Switch ViewBackend to using wpe_view_backend_exportable_fdo_egl APIs
6431 https://bugs.webkit.org/show_bug.cgi?id=187997
6433 Reviewed by Carlos Garcia Campos.
6435 Instead of the raw wpe_view_backend_exportable_fdo API, switch to using
6436 the EGL-oriented API that simply serves EGLImageKHR objects instead of
6437 raw buffer resources. This allows us not to wrangle with creating and
6438 managing lifetime of the same EGLImageKHR by ourselves.
6440 ViewBackend now defines a wpe_view_backend_exportable_fdo_egl_client
6441 struct and uses wpe_view_backend_exportable_fdo_egl_create() to create
6442 the exportable object. This means that for each frame we're served an
6443 EGLImageKHR object that is passed on to the displayBuffer()
6446 HeadlessViewBackend now just manages the pending and committed image
6447 objects. Width and height values used during pixel data retrieval are
6448 gathered from the ViewBackend's size that was specified when
6451 WindowViewBackend similarly only manages the committed image object,
6452 not having to create an equivalent EGLImageKHR object from the raw
6453 buffer resource anymore.
6455 Unused EGL entrypoints in both HeadlessViewBackend and WindowViewBackend
6456 classes are removed, and destructors for both classes are made virtual.
6458 The WPEBackend-fdo version is bumped in order to have the EGL-specific
6459 export API available.
6461 * flatpak/org.webkit.WPE.yaml:
6462 * wpe/backends/HeadlessViewBackend.cpp:
6463 (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend):
6464 (WPEToolingBackends::HeadlessViewBackend::~HeadlessViewBackend):
6465 (WPEToolingBackends::HeadlessViewBackend::createSnapshot):
6466 (WPEToolingBackends::HeadlessViewBackend::performUpdate):
6467 (WPEToolingBackends::HeadlessViewBackend::displayBuffer):
6468 * wpe/backends/HeadlessViewBackend.h:
6469 * wpe/backends/ViewBackend.cpp:
6470 (WPEToolingBackends::ViewBackend::initialize):
6471 * wpe/backends/ViewBackend.h:
6472 * wpe/backends/WindowViewBackend.cpp:
6473 (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
6474 (WPEToolingBackends::WindowViewBackend::~WindowViewBackend):
6475 (WPEToolingBackends::WindowViewBackend::displayBuffer):
6476 * wpe/backends/WindowViewBackend.h:
6477 * wpe/jhbuild.modules:
6479 2018-07-24 Thomas Denney <tdenney@apple.com>
6481 Remove support for the double type from WHLSL
6482 https://bugs.webkit.org/show_bug.cgi?id=187977
6484 Reviewed by Myles C. Maxfield.
6486 * WebGPUShadingLanguageRI/All.js: Removed DoubleLiteral.js and DoubleLiteralType.js include.
6487 * WebGPUShadingLanguageRI/DoubleLiteral.js: Removed.
6488 * WebGPUShadingLanguageRI/DoubleLiteralType.js: Removed.
6489 * WebGPUShadingLanguageRI/Intrinsics.js: Removed double arithmetic functions.
6490 * WebGPUShadingLanguageRI/Parse.js:
6491 (parseTerm): Removed parsing of double literals.
6492 * WebGPUShadingLanguageRI/SPIRV.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
6493 * WebGPUShadingLanguageRI/SPIRVCodegen.js: Removed double type logic.
6494 * WebGPUShadingLanguageRI/StandardLibrary.js: Removed double type declarations.
6495 * WebGPUShadingLanguageRI/Test.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
6496 * WebGPUShadingLanguageRI/Test.js: Removed tests that test doubles or ported them to use floats.
6497 * WebGPUShadingLanguageRI/index.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
6499 2018-07-24 Tim Horton <timothy_horton@apple.com>
6501 Enable Web Content Filtering on watchOS
6502 https://bugs.webkit.org/show_bug.cgi?id=187979
6503 <rdar://problem/42559346>
6505 Reviewed by Wenson Hsieh.
6507 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
6509 2018-07-24 Daniel Bates <dabates@apple.com>
6511 Move-constructing NeverDestroyed should move construct underlying object instead of copy constructing it
6512 https://bugs.webkit.org/show_bug.cgi?id=187971
6514 Reviewed by Saam Barati.
6516 Add unit tests to cover move constructing a NeverDestroyed with a non-const and const data type
6517 as well as invoking makeNeverDestroyed() with the result of a function that returns a move-only
6520 * TestWebKitAPI/CMakeLists.txt:
6521 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6522 * TestWebKitAPI/Tests/WTF/MoveOnlyLifecycleLogger.cpp: Added.
6523 (TestWebKitAPI::MoveOnlyLifecycleLogger::MoveOnlyLifecycleLogger):
6524 (TestWebKitAPI::MoveOnlyLifecycleLogger::~MoveOnlyLifecycleLogger):
6525 (TestWebKitAPI::MoveOnlyLifecycleLogger::operator=):
6526 (TestWebKitAPI::MoveOnlyLifecycleLogger::setName):
6527 (TestWebKitAPI::TEST):
6528 * TestWebKitAPI/Tests/WTF/MoveOnlyLifecycleLogger.h: Added.
6529 * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp:
6530 (TestWebKitAPI::TEST):
6532 2018-07-24 Thomas Denney <tdenney@apple.com>
6533 Minor changes to the WHLSL interpreter to support the new compiler
6534 https://bugs.webkit.org/show_bug.cgi?id=187728
6536 Reviewed by Myles C. Maxfield.
6538 This bug contains small changes that are make minor changes to the
6539 behaviour of the existing interpreter (the tests are unaffected and all
6542 * WebGPUShadingLanguageRI/EnumType.js:
6543 (EnumType.prototype.get isEnum): Property added to EnumType and Type
6544 * WebGPUShadingLanguageRI/Evaluator.js: Correct typo
6545 * WebGPUShadingLanguageRI/Func.js:
6546 (Func.prototype.get isEntryPoint): Add boolean property
6547 * WebGPUShadingLanguageRI/FuncInstantiator.js:
6548 (FuncInstantiator.prototype.get instances): Public accessor for existing
6550 * WebGPUShadingLanguageRI/FunctionLikeBlock.js: Refactored the class so
6551 that it directly wraps a Func instance (therefore the only interface
6552 change is to the constructor and the addition of the func accessor).
6553 This change allows the de-inlining of functions.
6554 (FunctionLikeBlock):
6555 (FunctionLikeBlock.prototype.get func):
6556 (FunctionLikeBlock.prototype.get returnType):
6557 (FunctionLikeBlock.prototype.get parameters):
6558 (FunctionLikeBlock.prototype.get body):
6559 * WebGPUShadingLanguageRI/Inliner.js: Use the new FunctionLikeBlock
6561 (Inliner.prototype.visitCallExpression):
6563 * WebGPUShadingLanguageRI/Intrinsics.js: Migrate the swizzle operators
6564 to native functions (with additional support in StandardLibrary.js).
6565 This reduces first-time compile-time from around 4s to around 0.1s.
6567 * WebGPUShadingLanguageRI/Lexer.js: Ensure that the parsing of multiline
6568 comments completes correctly
6569 (Lexer.prototype.next):
6571 * WebGPUShadingLanguageRI/MakeArrayRefExpression.js: Addition of type
6572 property, which is based on the type of the lValue and the semantics of
6573 the language (the @ operator yields an array reference with the thread
6575 (MakeArrayRefExpression):
6576 (MakeArrayRefExpression.prototype.get type):
6577 * WebGPUShadingLanguageRI/NativeFunc.js: Add setter/getter for
6578 implementationData to support swizzle operator change
6579 (NativeFunc.prototype.get implementationData):
6580 (NativeFunc.prototype.set implementationData):
6581 * WebGPUShadingLanguageRI/Rewriter.js: Use new FunctionLikeBlock
6583 (Rewriter.prototype.visitFunctionLikeBlock):
6584 * WebGPUShadingLanguageRI/StandardLibrary.js:
6585 (_generateSwizzle): Deleted.
6586 * WebGPUShadingLanguageRI/SwizzleOp.js: Introduces a new class for
6587 carrying metadata about swizzle operators so that they are implemented
6588 as native functions rather than generated at compile time.
6590 (SwizzleOp.prototype.get outSize):
6591 (SwizzleOp.prototype.get components):
6592 (SwizzleOp.prototype.get inSize):
6593 (SwizzleOp.prototype.toString):
6594 (SwizzleOp.allSwizzleOperators.):
6595 (SwizzleOp.allSwizzleOperators):
6596 * WebGPUShadingLanguageRI/StandardLibrary.js: + (SwizzleOp):
6597 (SwizzleOp.prototype.get outSize):
6598 (SwizzleOp.prototype.get components):
6599 (SwizzleOp.prototype.get inSize):
6600 (SwizzleOp.prototype.toString):
6602 (_generateSwizzle): Deleted.
6603 * WebGPUShadingLanguageRI/Type.js: Addition of isEnum property, as
6605 (Type.prototype.get isEnum):
6607 2018-07-24 Ryan Haddad <ryanhaddad@apple.com>
6609 Unreviewed, rolling out r234121.
6611 Caused perf test failures.
6615 "We should cache the compiled sandbox profile in a data vault"
6616 https://bugs.webkit.org/show_bug.cgi?id=184991
6617 https://trac.webkit.org/changeset/234121
6619 2018-07-24 Thibault Saunier <tsaunier@igalia.com>
6621 [Flatpak] Add openh264 as needed by WebRTC
6622 https://bugs.webkit.org/show_bug.cgi?id=187956
6624 Reviewed by Philippe Normand.
6626 * flatpak/org.webkit.WebKit.yaml:
6628 2018-07-24 Ross Kirsling <ross.kirsling@sony.com>
6630 WebCore::URL::hostIsIPAddress needs a Windows implementation
6631 https://bugs.webkit.org/show_bug.cgi?id=187859
6633 Reviewed by Fujii Hironori.
6635 * TestWebKitAPI/Tests/WebCore/URL.cpp:
6636 Check for a few other ways an IP address could be invalid.
6638 2018-07-24 Charlie Turner <cturner@igalia.com>
6640 [Flatpak] Avoid consuming unknown arguments in flatpak wrapper
6641 https://bugs.webkit.org/show_bug.cgi?id=187951
6643 When running run-webkit-tests --wpe --debug, it was observed that
6644 both self.platform != 'wpe' and self.debug != True. This turned
6645 out to be because of the "args" argument consuming the remainder
6646 of future arguments that came after it. Since the first argument
6647 to load_from_args was the test script to run, it would end up
6648 never processing the other arguments supplied to the wrapper
6651 Tested this by rebuilding GTK in debug mode, running the
6652 minibrowser with various extra options, and running some tests
6653 with various extra options.
6655 Reviewed by Michael Catanzaro.
6657 * flatpak/flatpakutils.py:
6658 (WebkitFlatpak.load_from_args):
6660 2018-07-24 Thibault Saunier <tsaunier@igalia.com>
6662 [Flatpak] Remove now unnecessary 'hacks' for running tests
6663 https://bugs.webkit.org/show_bug.cgi?id=187608
6665 Reviewed by Philippe Normand.
6667 We used to need to not share X11 with the sandbox when running tests
6668 but it is not needed anymore as we do not mount `/tmp` on `/tmp` in the
6669 sandbox (we mount it on `/run/host/tmp` now).
6671 This has the advantage of making running the MiniBrowser to display test
6672 results working again.
6674 * flatpak/flatpakutils.py:
6675 (WebkitFlatpak.clean_args):
6676 (WebkitFlatpak.run_in_sandbox):
6677 (WebkitFlatpak._cleanup_faltpak_args_for_tests_if_needed): Deleted.
6679 2018-07-23 Fujii Hironori <Hironori.Fujii@sony.com>
6681 webkitpy.port.server_process_unittest.TestServerProcess.test_basic failed on Windows Python
6682 https://bugs.webkit.org/show_bug.cgi?id=187581
6684 Reviewed by Daniel Bates.
6686 There are two failures in this test case:
6687 1. proc.poll() doesn't return 0.
6688 2. stderr is not output.
6690 For failure #1, this is expected. the process should not exit at
6691 the time. proc.poll() should return None because the process is
6694 This change added a new test to check proc.poll() becomes 0 after
6695 the process successfully exits.
6697 For failure #2, stderr is not flushed even though stdout is
6698 flushed. This change uses '-u' command switch to force stdin,
6699 stdout and stderr to be totally unbuffered.
6701 * Scripts/webkitpy/port/server_process_unittest.py:
6702 (TestServerProcess.test_basic): Added -u command switch. Do not
6703 flush stdout. Removed the special condition for Windows. Add a new
6704 test to check proc.poll() returns 0.
6705 (TestServerProcess.test_process_crashing): Added -u command
6706 switch. Do not flush stdout.
6708 2018-07-23 Ross Kirsling <ross.kirsling@sony.com>
6710 WTF::StringView::split should have an allowEmptyEntries flag
6711 https://bugs.webkit.org/show_bug.cgi?id=187864
6713 Reviewed by Konstantin Tokarev.
6715 * TestWebKitAPI/Tests/WTF/StringView.cpp: Add test.
6717 2018-07-23 Ben Richards <benton_richards@apple.com>
6719 We should cache the compiled sandbox profile in a data vault
6720 https://bugs.webkit.org/show_bug.cgi?id=184991
6722 Reviewed by Ryosuke Niwa.
6724 Added trace points for sandbox initialization
6726 * Tracing/SystemTracePoints.plist:
6728 2018-07-23 Zalan Bujtas <zalan@apple.com>
6730 DRT relies on [webView display] to call -viewWillDraw on the WebHTMLView
6731 https://bugs.webkit.org/show_bug.cgi?id=187924
6732 <rdar://problem/41745884>
6734 Reviewed by Simon Fraser.
6736 WebKit relies on -viewWillDraw getting called on WebHTMLView, even though that view has not been marked as needing display.
6738 * DumpRenderTree/mac/PixelDumpSupportMac.mm:
6739 (createBitmapContextFromWebView):
6741 2018-07-23 Chris Dumez <cdumez@apple.com>
6743 WebResourceLoadStatisticsStore fails to unregister itself as a MessageReceiver in its destructor
6744 https://bugs.webkit.org/show_bug.cgi?id=187910
6745 <rdar://problem/42356526>
6747 Reviewed by Brent Fulgham.
6749 Add API test coverage.
6751 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6752 * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
6753 (-[DisableITPDuringNavigationDelegate webView:didCommitNavigation:]):
6754 (-[DisableITPDuringNavigationDelegate webView:didFinishNavigation:]):
6756 * TestWebKitAPI/Tests/WebKitCocoa/notify-resourceLoadObserver.html: Added.
6758 2018-07-23 Daniel Bates <dabates@apple.com>
6760 test-webkitpy should take configuration command line options
6761 https://bugs.webkit.org/show_bug.cgi?id=187872
6763 Reviewed by David Kilzer.
6765 Add --debug and --release optional command line options and teach the test bots to invoke test-webkitpy
6766 with the appropriate configuration. At the moment these options are only meaningful on Mac since they
6767 effect the configuration lldbWebKitTester is built with and we only build lldbWebKitTester on Mac.
6769 * BuildSlaveSupport/build.webkit.org-config/steps.py:
6770 (RunPythonTests): Pass the configuration to test-webkitpy. On Mac this will effect
6771 how lldbWebKitTester is built. All other ports do not make use of the specified configuration.
6772 * Scripts/webkitpy/test/main.py:
6773 (_build_lldb_webkit_tester): Modified to take the configuration to build lldbWebKitTester. If
6774 the specified configuration is None then we fall back to using the default configuration (as set
6775 by script set-webkit-configuration).
6776 (Tester._parse_args): Add command line options --debug and --release to build lldbWebKitTester
6777 with a Debug configuration and a Release configuration, respectively
6778 (Tester._run_tests): Pass the configuration to build lldbWebKitTester that we parsed from
6779 the command line options. It may be None if neither --debug nor --release were passed.
6781 2018-07-23 Commit Queue <commit-queue@webkit.org>
6783 Unreviewed, rolling out r233030.
6784 https://bugs.webkit.org/show_bug.cgi?id=187904
6786 Broke tarball builds (Requested by mcatanzaro on #webkit).
6790 "run-gtk-tests (glib/common.py) cannot determine build
6791 directory when webKitBranchBuild=true"
6792 https://bugs.webkit.org/show_bug.cgi?id=185643
6793 https://trac.webkit.org/changeset/233030
6795 2018-07-21 Simon Fraser <simon.fraser@apple.com>
6797 Fix lldb summarizers for HashMaps and HashSets
6798 https://bugs.webkit.org/show_bug.cgi?id=187883
6800 Reviewed by Dan Bates.
6802 HashMap and HashSet summarizers were broken in various ways.
6804 The 'type summary add -x' regexp needs to match at the start and end of the string
6805 to avoid finding types nested inside other templates.
6807 The HashTable synthetic child code incorrectly used the type of the key, rather than
6808 the value when synthesizing children.
6810 Add HashMap and HashSet summarizers.
6812 I tried to get synthetic children working directly for HashMap and HashSet, but was unable.
6814 * lldb/lldbWebKitTester/main.cpp:
6815 (testSummaryProviders):
6816 * lldb/lldb_webkit.py:
6817 (__lldb_init_module):
6818 (__lldb_init_module.lldb_webkit):
6819 (WTFHashMap_SummaryProvider):
6820 (WTFHashSet_SummaryProvider):
6821 (WebCoreColorProvider._to_string_extended):
6822 (WebCoreURLProvider.to_string):
6823 (WTFHashMapProvider):
6824 (WTFHashMapProvider.__init__):
6825 (WTFHashMapProvider.tableSize):
6826 (WTFHashMapProvider.keyCount):
6827 (WTFHashSetProvider):
6828 (WTFHashSetProvider.__init__):
6829 (WTFHashSetProvider.tableSize):
6830 (WTFHashSetProvider.keyCount):
6831 (WTFHashTableProvider.tableSize):
6832 (WTFHashTableProvider):
6833 (WTFHashTableProvider.keyCount):
6834 (WTFHashTableProvider.get_child_at_index):
6835 (WTFHashTableProvider.update):
6836 * lldb/lldb_webkit_unittest.py:
6837 (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector):
6838 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
6839 (TestSummaryProviders):
6840 (TestSummaryProviders.serial_test_WTFHashMap_tablesize_and_size):
6841 (TestSummaryProviders.serial_test_WTFHashMap_of_vectors_tablesize_and_size):
6842 (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
6844 2018-07-21 Simon Fraser <simon.fraser@apple.com>
6846 Add lldb formatters for WebCore geometry types
6847 https://bugs.webkit.org/show_bug.cgi?id=187884
6849 Reviewed by Daniel Bates.
6851 Add lldb formatters for IntPoint, IntSize, IntRect, FloatPoint, FloatSize, FloatRect
6854 Testing is blocked by webkit.org/b/187872.
6856 * lldb/lldbWebKitTester/main.cpp:
6857 (testSummaryProviders):
6858 * lldb/lldb_webkit.py:
6859 (__lldb_init_module.lldb_webkit):
6860 (__lldb_init_module):
6861 (WebCoreLayoutRect_SummaryProvider):
6862 (WebCoreIntSize_SummaryProvider):
6863 (WebCoreIntPoint_SummaryProvider):
6864 (WebCoreFloatSize_SummaryProvider):
6865 (WebCoreFloatPoint_SummaryProvider):
6866 (WebCoreIntRect_SummaryProvider):
6867 (WebCoreFloatRect_SummaryProvider):
6868 (WebCoreLayoutRectProvider):
6869 (WebCoreLayoutRectProvider.__init__):
6870 (WebCoreLayoutRectProvider.get_x):
6871 (WebCoreLayoutRectProvider.get_y):
6872 (WebCoreLayoutRectProvider.get_width):
6873 (WebCoreLayoutRectProvider.get_height):
6874 (WebCoreIntPointProvider):
6875 (WebCoreIntPointProvider.__init__):
6876 (WebCoreIntPointProvider.get_x):
6877 (WebCoreIntPointProvider.get_y):
6878 (WebCoreIntSizeProvider):
6879 (WebCoreIntSizeProvider.__init__):
6880 (WebCoreIntSizeProvider.get_width):
6881 (WebCoreIntSizeProvider.get_height):
6882 (WebCoreIntRectProvider):
6883 (WebCoreIntRectProvider.__init__):
6884 (WebCoreIntRectProvider.get_x):
6885 (WebCoreIntRectProvider.get_y):
6886 (WebCoreIntRectProvider.get_width):
6887 (WebCoreIntRectProvider.get_height):
6888 (WebCoreFloatPointProvider):
6889 (WebCoreFloatPointProvider.__init__):
6890 (WebCoreFloatPointProvider.get_x):
6891 (WebCoreFloatPointProvider.get_y):
6892 (WebCoreFloatSizeProvider):
6893 (WebCoreFloatSizeProvider.__init__):
6894 (WebCoreFloatSizeProvider.get_width):
6895 (WebCoreFloatSizeProvider.get_height):
6896 (WebCoreFloatRectProvider):
6897 (WebCoreFloatRectProvider.__init__):
6898 (WebCoreFloatRectProvider.get_x):
6899 (WebCoreFloatRectProvider.get_y):
6900 (WebCoreFloatRectProvider.get_width):
6901 (WebCoreFloatRectProvider.get_height):
6903 2018-07-20 John Wilander <wilander@apple.com>
6905 Resource Load Statistics: Enable basic functionality in experimental debug mode
6906 https://bugs.webkit.org/show_bug.cgi?id=187835
6907 <rdar://problem/42408590>
6909 Reviewed by Chris Dumez.
6911 This patch makes the experimental ITP Debug Mode feature work, at least
6912 to a basic level. All of the changes to TestRunner are to support the
6913 layout tests for the functionality.
6915 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6916 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
6917 (WTR::InjectedBundle::didReceiveMessageToPage):
6918 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6919 (WTR::TestRunner::setStatisticsDebugMode):
6920 (WTR::TestRunner::statisticsCallDidSetDebugModeCallback):
6921 (WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
6922 (WTR::TestRunner::statisticsCallDidSetPrevalentResourceForDebugModeCallback):
6923 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6924 * WebKitTestRunner/TestController.cpp:
6925 (WTR::TestController::setStatisticsDebugMode):
6926 (WTR::TestController::setStatisticsPrevalentResourceForDebugMode):
6927 * WebKitTestRunner/TestController.h:
6928 * WebKitTestRunner/TestInvocation.cpp:
6929 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
6930 (WTR::TestInvocation::didSetStatisticsDebugMode):
6931 (WTR::TestInvocation::didSetPrevalentResourceForDebugMode):
6932 * WebKitTestRunner/TestInvocation.h:
6934 2018-07-20 Ryosuke Niwa <rniwa@apple.com>
6936 Picking a color from the color panel for typing attributes needs to inverse transform through color-filter
6937 https://bugs.webkit.org/show_bug.cgi?id=187846
6939 Reviewed by Simon Fraser.
6941 Fixed the bug that testRunner.execCommand was using the second argument as the value.
6943 The second argument, aShowDefaultUI, should always be ignored in testRunner.execCommand,
6944 and the third argument should be used as the value. DumpRenderTree's implementation does this already.
6946 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
6947 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
6948 (WTR::TestRunner::execCommand):
6949 * WebKitTestRunner/InjectedBundle/TestRunner.h:
6951 2018-07-20 Dean Jackson <dino@apple.com>
6953 Accidentally checked in the wrong version of these files.
6955 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
6956 * lldb/lldbWebKitTester/main.cpp:
6957 (testSummaryProviders):
6958 * lldb/lldb_webkit_unittest.py:
6959 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
6960 (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color): Deleted.
6961 (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color): Deleted.
6962 (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color): Deleted.
6963 (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color): Deleted.
6964 (TestSummaryProviders.serial_test_WebCoreColorProvider_semantic_color): Deleted.
6966 2018-07-20 Dean Jackson <dino@apple.com>
6968 Provide an lldb type summary for WebCore::Color
6969 https://bugs.webkit.org/show_bug.cgi?id=187776
6971 Reviewed by Dan Bates.
6973 This time without the tests because we don't want to build
6974 all of WebKit just for python tests.
6976 * lldb/lldb_webkit.py: Add a Color summary provider.
6977 (__lldb_init_module):
6978 (WebCoreColor_SummaryProvider):
6979 (WebCoreColorProvider):
6980 (WebCoreColorProvider.__init__):
6981 (WebCoreColorProvider._is_extended):
6982 (WebCoreColorProvider._is_valid):
6983 (WebCoreColorProvider._is_semantic):
6984 (WebCoreColorProvider._to_string_extended):
6985 (WebCoreColorProvider.to_string):
6987 2018-07-20 Brady Eidson <beidson@apple.com>
6989 Add WKNavigation/WKNavigationAction related SPI.
6990 https://bugs.webkit.org/show_bug.cgi?id=187826
6992 Reviewed by Chris Dumez.
6994 * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
6995 (-[NavigationActionHasNavigationDelegate webView:didFinishNavigation:]):
6996 (-[NavigationActionHasNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
6999 2018-07-20 Commit Queue <commit-queue@webkit.org>
7001 Unreviewed, rolling out r233943, r233988, r234004, and
7003 https://bugs.webkit.org/show_bug.cgi?id=187856
7005 webkitpy tests are failing to build lldbWebKitTester
7006 (Requested by ryanhaddad on #webkit).
7008 Reverted changesets:
7010 "Provide an lldb type summary for WebCore::Color"
7011 https://bugs.webkit.org/show_bug.cgi?id=187776
7012 https://trac.webkit.org/changeset/233943
7014 "Provide an lldb type summary for WebCore::Color"
7015 https://bugs.webkit.org/show_bug.cgi?id=187776
7016 https://trac.webkit.org/changeset/233988
7018 "Provide an lldb type summary for WebCore::Color"
7019 https://bugs.webkit.org/show_bug.cgi?id=187776
7020 https://trac.webkit.org/changeset/234004
7022 "Provide an lldb type summary for WebCore::Color"
7023 https://bugs.webkit.org/show_bug.cgi?id=187776
7024 https://trac.webkit.org/changeset/234012
7026 2018-07-20 Philippe Normand <pnormand@igalia.com>
7028 [GTK][WPE] enable-media-capabilities websetting
7029 https://bugs.webkit.org/show_bug.cgi?id=187847
7031 Reviewed by Carlos Garcia Campos.
7033 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
7034 (testWebKitSettings): Unit test for the new enable-media-capabilities setting.
7036 2018-07-19 Carlos Garcia Campos <cgarcia@igalia.com>
7038 [GLIB] jsc_context_evaluate_in_object() should receive an instance when a JSCClass is given
7039 https://bugs.webkit.org/show_bug.cgi?id=187798
7041 Reviewed by Michael Catanzaro.
7043 Update test cases to the new API and use a destroy function and vtable in the test case of calling
7044 jsc_context_evaluate_in_object() with a JSCClass.
7046 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
7047 (testJSCEvaluateInObject):
7049 2018-07-19 Ross Kirsling <ross.kirsling@sony.com>
7051 TestWTF.WTF.StringConcatenate_Unsigned fails for unsigned short on Windows
7052 https://bugs.webkit.org/show_bug.cgi?id=187712
7054 Reviewed by Fujii Hironori.
7056 * TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
7057 Mark result of unsigned short test case as platform-specific,
7058 since Windows' behavior is actually *less* surprising here.
7060 2018-07-19 Lucas Forschler <lforschler@apple.com>
7062 Teach the AWS Lambda to use the [minified]-platforms database
7063 https://bugs.webkit.org/show_bug.cgi?id=187817
7065 Reviewed by David Kilzer.
7067 * WebKitArchiveSupport/lambda/register-archive-in-dynamodb.py:
7068 (lambda_handler): Add support for the platforms.webkit.org database
7069 * WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py:
7070 (lambda_handler): Add support for the minified-platforms.webkit.org database
7072 2018-07-19 Dean Jackson <dino@apple.com>
7074 Provide an lldb type summary for WebCore::Color
7075 https://bugs.webkit.org/show_bug.cgi?id=187776
7077 Dan Bates helped me with this attempted fix. Fingers crossed!
7079 * Scripts/build-lldbwebkittester:
7081 2018-07-19 Stephan Szabo <stephan.szabo@sony.com>
7083 [WinCairo] Support DEVELOPER_MODE for allowing inspection of web inspector
7084 https://bugs.webkit.org/show_bug.cgi?id=187786
7086 Reviewed by Fujii Hironori.
7088 * Scripts/webkitdirs.pm:
7089 (generateBuildSystemFromCMakeProject): Turn on DEVELOPER_MODE
7090 for WinCairo builds.
7092 2018-07-19 Dean Jackson <dino@apple.com>
7094 Provide an lldb type summary for WebCore::Color
7095 https://bugs.webkit.org/show_bug.cgi?id=187776
7097 Another attempted build fix for Debug.
7099 * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
7100 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
7102 2018-07-19 Thomas Denney <tdenney@apple.com>
7104 [WHLSL] The interpreter doesn't support boolean short-circuiting
7105 https://bugs.webkit.org/show_bug.cgi?id=187779
7107 Reviewed by Alex Christensen.
7109 * WebGPUShadingLanguageRI/Evaluator.js:
7110 (Evaluator.prototype.visitLogicalExpression): RHS is only evaluated when necessary
7111 * WebGPUShadingLanguageRI/Test.js:
7112 (tests.booleanShortcircuiting): Adds 4 tests for the evaluation of logical expresions
7114 2018-07-19 Dean Jackson <dino@apple.com>
7116 Provide an lldb type summary for WebCore::Color
7117 https://bugs.webkit.org/show_bug.cgi?id=187776
7119 Attempted build fix.
7121 * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
7123 2018-07-19 Brady Eidson <beidson@apple.com>
7125 Add an SPI policy action to allow clients to explicitly ask for a new process on a navigation.
7126 https://bugs.webkit.org/show_bug.cgi?id=187789
7128 Reviewed by Andy Estes.
7130 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
7131 (-[PSONNavigationDelegate init]):
7132 (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
7134 2018-07-19 Thibault Saunier <tsaunier@igalia.com>
7136 [Flatpak] Let flatpak process handle SIGINT
7137 https://bugs.webkit.org/show_bug.cgi?id=187521
7139 Reviewed by Philippe Normand.
7141 Ensuring that flatpak process ends properly and that the sandbox is teard down.
7142 It also avoids showing usless backtrace to the end user and makes gdb
7145 Also make flatpakutils not verbose by default
7147 * flatpak/flatpakutils.py:
7149 (WebkitFlatpak.run_in_sandbox):
7150 (WebkitFlatpak.run_gdb):
7152 2018-07-18 Stephan Szabo <stephan.szabo@sony.com>
7154 Unreviewed. Fix contributors entry.
7156 * Scripts/webkitpy/common/config/contributors.json:
7158 2018-07-18 Dean Jackson <dino@apple.com>
7160 Provide an lldb type summary for WebCore::Color
7161 https://bugs.webkit.org/show_bug.cgi?id=187776
7163 Reviewed by Dan Bates.
7165 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Link against WebKit
7167 * lldb/lldbWebKitTester/main.cpp:
7168 (testSummaryProviders): Create some Color objects for testing.
7170 * lldb/lldb_webkit.py: Add a Color summary provider.
7171 (__lldb_init_module):
7172 (WebCoreColor_SummaryProvider):
7173 (WebCoreColorProvider):
7174 (WebCoreColorProvider.__init__):
7175 (WebCoreColorProvider._is_extended):
7176 (WebCoreColorProvider._is_valid):
7177 (WebCoreColorProvider._is_semantic):
7178 (WebCoreColorProvider._to_string_extended):
7179 (WebCoreColorProvider.to_string):
7181 * lldb/lldb_webkit_unittest.py: Tests.
7182 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
7183 (TestSummaryProviders):
7184 (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color):
7185 (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color):
7186 (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color):
7187 (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color):
7189 2018-07-18 Truitt Savell <tsavell@apple.com>
7191 Unreviewed, rolling out r233934.
7193 Revision caused 5 webkitpy failures on Mac and broke webkitpy
7194 testing on iOS simulator
7198 "Provide an lldb type summary for WebCore::Color"
7199 https://bugs.webkit.org/show_bug.cgi?id=187776
7200 https://trac.webkit.org/changeset/233934
7202 2018-07-18 Chris Dumez <cdumez@apple.com>
7204 REGRESSION (r233897): CrashTracer: com.apple.WebKit.WebContent.Development at com.apple.WebKit: WKBooleanGetValue + 9
7205 https://bugs.webkit.org/show_bug.cgi?id=187784
7206 <rdar://problem/42329230>
7208 Reviewed by Brady Eidson.
7210 When process swapping on navigation, WebPageProxy::reattachToWebProcess() unregisters the page as a MessageReceiver
7211 from the old WebProcessProxy and registers itself as a MessageReceiver for the new WebProcessProxy instead. This
7212 means that after this point, IPC sent by the previous WebProcess to its WebPageProxy will fail.
7214 When we process swap, we also navigate the page in the old WebProcess to about:blank, when the navigation to
7215 about:blank would complete, the WebKitTestRunner's injected bundle would try and send IPC to the WebPageProxy
7216 which would fail and would cause WKBundlePagePostSynchronousMessageForTesting() to return a null result. WKTR
7217 would crash when dereferencing this null result. This patch addresses this by dealing with the potential null
7220 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
7221 (WTR::InjectedBundle::shouldProcessWorkQueue const):
7223 2018-07-18 Dean Jackson <dino@apple.com>
7225 Provide an lldb type summary for WebCore::Color
7226 https://bugs.webkit.org/show_bug.cgi?id=187776
7228 Reviewed by Dan Bates.
7230 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Link against WebKit
7232 * lldb/lldbWebKitTester/main.cpp:
7233 (testSummaryProviders): Create some Color objects for testing.
7235 * lldb/lldb_webkit.py: Add a Color summary provider.
7236 (__lldb_init_module):
7237 (WebCoreColor_SummaryProvider):
7238 (WebCoreColorProvider):
7239 (WebCoreColorProvider.__init__):
7240 (WebCoreColorProvider._is_extended):
7241 (WebCoreColorProvider._is_valid):
7242 (WebCoreColorProvider._is_semantic):
7243 (WebCoreColorProvider._to_string_extended):
7244 (WebCoreColorProvider.to_string):
7246 * lldb/lldb_webkit_unittest.py: Tests.
7247 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
7248 (TestSummaryProviders):
7249 (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color):
7250 (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color):
7251 (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color):
7252 (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color):
7254 2018-07-18 Stephan Szabo <stephan.szabo@sony.com>
7256 Adding myself to contributors.json
7258 Unreviewed contributors.json change.
7260 * Scripts/webkitpy/common/config/contributors.json:
7262 2018-07-18 Jer Noble <jer.noble@apple.com>
7264 -_beginAnimatedResizeWithUpdates: can leave view in bad state if called during an existing animation
7265 https://bugs.webkit.org/show_bug.cgi?id=187739
7266 <rdar://problem/42304518>
7268 Reviewed by Tim Horton.
7270 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
7273 2018-07-18 Jer Noble <jer.noble@apple.com>
7275 PiP from Element Fullscreen should match AVKit's behavior
7276 https://bugs.webkit.org/show_bug.cgi?id=187623
7277 <rdar://problem/41212379>
7279 Reviewed by Jon Lee.
7281 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7282 * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.html: Added.
7283 * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.mm: Added.
7284 (-[ExitFullscreenOnEnterPiPUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
7285 (-[ExitFullscreenOnEnterPiPUIDelegate _webViewDidEnterFullscreen:]):
7286 (-[ExitFullscreenOnEnterPiPUIDelegate _webViewDidExitFullscreen:]):
7287 (TestWebKitAPI::TEST):
7289 2018-07-18 Aakash Jain <aakash_jain@apple.com>
7291 [ews-build] Add build step to run layout-test
7292 https://bugs.webkit.org/show_bug.cgi?id=187674
7294 Reviewed by Lucas Forschler.
7296 * BuildSlaveSupport/ews-build/steps.py:
7297 (RunWebKitTests): Added build step to run layout-tests. This is similar to current EWS.
7298 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
7299 * BuildSlaveSupport/ews-build/factories.py: Added build-step to run layout-test in iOSSimulatorFactory.
7301 2018-07-18 Wenson Hsieh <wenson_hsieh@apple.com>
7303 Add SPI to defer running async script until after document load
7304 https://bugs.webkit.org/show_bug.cgi?id=187748
7305 <rdar://problem/42317378>
7307 Reviewed by Ryosuke Niwa and Tim Horton.
7309 Add an API test to verify that when the deferred async script configuration is set, async scripts will be
7310 executed after the DOMContentLoaded event.
7312 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7313 * TestWebKitAPI/Tests/WebKitCocoa/RunScriptAfterDocumentLoad.mm: Added.
7316 2018-07-18 Charlie Turner <cturner@igalia.com>
7318 [WPE] Update WPEBackend in flatpak
7319 https://bugs.webkit.org/show_bug.cgi?id=187753
7321 r233763 updated WPEBackend for the jhbuild, but not the flatpak. This
7322 caused WPE_BACKEND_CHECK_VERSION to not be defined, triggering a bug
7323 in the version guard,
7325 #if defined(WPE_BACKEND_CHECK_VERSION) && WPE_BACKEND_CHECK_VERSION(0, 2, 0)
7327 This doesn't work as intended, since the C preprocessor first expands
7328 all macro arguments in the #if expression before evaluating the
7329 expression. When WPE_BACKEND_CHECK_VERSION is not defined, this will
7330 lead to a syntax error and some head scratching.
7332 A future patch should address the buggy macro check, when it is
7333 decided whether the assume the macro is always defined and bump
7334 the API requirements on WPEBackend, or to move the check into two
7335 conditionals to avoid the expansion problem.
7337 Unreviewed build fix.
7339 * flatpak/org.webkit.WPE.yaml:
7341 2018-07-18 Simon Fraser <simon.fraser@apple.com>
7343 Fix the parsing of colors in attributed string tests, and make it possible to dump the typing attributes
7344 https://bugs.webkit.org/show_bug.cgi?id=187747
7346 Reviewed by Ryosuke Niwa.
7348 Add textInputController.attributedStringForTyping(), which returns a one-character
7349 attributed string whose attributes are the typing attributes, making it possible to
7350 test -[WebView typingAttributes].
7352 Sadly WebCore's convertObjcValueToValue() doesn't know how to convert NSDictionary,
7353 so we can't return -typingAttributes directly.
7355 * DumpRenderTree/mac/TextInputControllerMac.m:
7356 (+[TextInputController isSelectorExcludedFromWebScript:]):
7357 (-[TextInputController attributedStringForTyping]):
7359 2018-07-18 Carlos Garcia Campos <cgarcia@igalia.com>
7361 [GLIB] Add jsc_context_check_syntax() to GLib API
7362 https://bugs.webkit.org/show_bug.cgi?id=187694
7364 Reviewed by Yusuke Suzuki.
7366 Add a new test case.
7368 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
7369 (testJSCCheckSyntax):
7372 2018-07-17 Sihui Liu <sihui_liu@apple.com>
7374 REGRESSION: [macOS Sierra] TestWebKitAPI.WebKit.WebsiteDataStoreCustomPaths is a flaky failure
7375 https://bugs.webkit.org/show_bug.cgi?id=187066
7376 <rdar://problem/41609065>
7378 Reviewed by Chris Dumez.
7380 In r232668 we started to do reload if web process crashes by default. As we killed the web
7381 process explicitly in this test, if web page got reloaded, messages would be sent again,
7382 and flag set in message handler could keep the test continue to evaluate the expectation
7383 without waiting for removeDataOfTypes to finish.
7385 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
7386 (-[WebsiteDataStoreCustomPathsMessageHandler webViewWebContentProcessDidTerminate:]):
7389 2018-07-17 Chris Dumez <cdumez@apple.com>
7391 Turn on PSON in WebKitTestRunner
7392 https://bugs.webkit.org/show_bug.cgi?id=186542
7394 Reviewed by Brady Eidson.
7396 Turn on PSON by default in WebKitTestRunner.
7398 * WebKitTestRunner/TestOptions.h:
7400 2018-07-17 Wenson Hsieh <wenson_hsieh@apple.com>
7402 Add an SPI hook to allow clients to yield document parsing and script execution
7403 https://bugs.webkit.org/show_bug.cgi?id=187682
7404 <rdar://problem/42207453>
7406 Reviewed by Ryosuke Niwa.
7408 Add a few tests to exercise the new document yield token SPI, verifying that clients can use the SPI to defer
7409 document load, and that doing so doesn't cause deferred `script` to execute in the wrong order (i.e. before
7410 synchronous script, or after "DOMContentLoaded").
7412 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7413 * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm: Added.
7414 (-[ParserYieldTokenPlugIn takeDocumentParserTokenAfterCommittingLoad]):
7415 (-[ParserYieldTokenPlugIn releaseDocumentParserToken]):
7416 (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
7417 (-[ParserYieldTokenPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
7418 (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didFinishDocumentLoadForFrame:]):
7419 (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
7421 Add an injected bundle object that knows how to take and release multiple document parser yield tokens.
7423 * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenTests.h: Added.
7424 * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenTests.mm: Added.
7425 (+[ParserYieldTokenTestWebView webView]):
7426 (-[ParserYieldTokenTestWebView bundle]):
7427 (-[ParserYieldTokenTestWebView schemeHandler]):
7428 (-[ParserYieldTokenTestWebView didFinishDocumentLoad]):
7429 (-[ParserYieldTokenTestWebView didFinishLoad]):
7432 * TestWebKitAPI/Tests/WebKitCocoa/TestURLSchemeHandler.h: Added.
7433 * TestWebKitAPI/Tests/WebKitCocoa/TestURLSchemeHandler.mm: Added.
7434 (-[TestURLSchemeHandler webView:startURLSchemeTask:]):
7435 (-[TestURLSchemeHandler webView:stopURLSchemeTask:]):
7436 (-[TestURLSchemeHandler setStartURLSchemeTaskHandler:]):
7437 (-[TestURLSchemeHandler startURLSchemeTaskHandler]):
7438 (-[TestURLSchemeHandler setStopURLSchemeTaskHandler:]):
7439 (-[TestURLSchemeHandler stopURLSchemeTaskHandler]):
7441 Add a new test helper class to handle custom schemes via a block-based API.
7443 * TestWebKitAPI/Tests/WebKitCocoa/text-with-async-script.html: Added.
7445 New test HTML page that contains a deferred script element, a synchronous script element, another deferred
7446 script element, and then some text, images, and links.
7448 * TestWebKitAPI/Tests/WebKitCocoa/text-with-deferred-script.html: Added.
7450 2018-07-17 Truitt Savell <tsavell@apple.com>
7452 Adding myself to Contributors.json
7456 * Scripts/webkitpy/common/config/contributors.json:
7458 2018-07-17 Aditya Keerthi <akeerthi@apple.com>
7460 [macOS] TestWebKitAPI.PictureInPicture.WKUIDelegate is timing out
7461 https://bugs.webkit.org/show_bug.cgi?id=187730
7463 Reviewed by Jer Noble.
7465 This regression was introduced by r233865. PIP can now only be initiated from a
7466 window that is on screen.
7468 * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
7469 (TestWebKitAPI::TEST):
7471 2018-07-17 John Wilander <wilander@apple.com>
7473 Add completion handlers to TestRunner functions setStatisticsLastSeen(), setStatisticsPrevalentResource(), setStatisticsVeryPrevalentResource(), setStatisticsHasHadUserInteraction(), and setStatisticsHasHadNonRecentUserInteraction()
7474 https://bugs.webkit.org/show_bug.cgi?id=187710
7475 <rdar://problem/42252757>
7477 Reviewed by Chris Dumez.
7479 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
7480 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
7481 (WTR::InjectedBundle::didReceiveMessageToPage):
7482 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
7483 (WTR::TestRunner::setStatisticsLastSeen):
7484 (WTR::TestRunner::statisticsCallDidSetLastSeenCallback):
7485 (WTR::TestRunner::setStatisticsPrevalentResource):
7486 (WTR::TestRunner::statisticsCallDidSetPrevalentResourceCallback):
7487 (WTR::TestRunner::setStatisticsVeryPrevalentResource):
7488 (WTR::TestRunner::statisticsCallDidSetVeryPrevalentResourceCallback):
7489 (WTR::TestRunner::setStatisticsHasHadUserInteraction):
7490 (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction):
7491 (WTR::TestRunner::statisticsCallDidSetHasHadUserInteractionCallback):
7492 * WebKitTestRunner/InjectedBundle/TestRunner.h:
7493 * WebKitTestRunner/TestController.cpp:
7494 (WTR::TestController::setStatisticsLastSeen):
7495 (WTR::TestController::setStatisticsPrevalentResource):
7496 (WTR::TestController::setStatisticsVeryPrevalentResource):
7497 (WTR::TestController::setStatisticsHasHadUserInteraction):
7498 (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction):
7499 * WebKitTestRunner/TestInvocation.cpp:
7500 (WTR::TestInvocation::didSetLastSeen):
7501 (WTR::TestInvocation::didSetPrevalentResource):
7502 (WTR::TestInvocation::didSetVeryPrevalentResource):
7503 (WTR::TestInvocation::didSetHasHadUserInteraction):
7504 (WTR::TestInvocation::didSetHasHadNonRecentUserInteraction):
7505 * WebKitTestRunner/TestInvocation.h:
7507 2018-07-16 Jeremy Jones <jeremyj@apple.com>
7509 Fix API Test failures introduced by r233865
7510 https://bugs.webkit.org/show_bug.cgi?id=187720
7512 Unreviewed APITest fix after r233865.
7514 Fullscreen can now only be initiated from a window that is on screen.
7516 * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
7517 (TestWebKitAPI::TEST):
7518 * TestWebKitAPI/Tests/WebKitCocoa/FullscreenTopContentInset.mm:
7519 (TestWebKitAPI::TEST):
7521 2018-07-11 Dean Jackson <dino@apple.com>
7523 Allow removal of white backgrounds
7524 https://bugs.webkit.org/show_bug.cgi?id=187574
7525 <rdar://problem/41146792>
7527 Reviewed by Simon Fraser.
7529 Add a new menu item for punching out white backgrounds in MiniBrowser.
7530 In WebKitTestRunner, expose the new setting and hook that up to
7531 drawing a background in the WebView.
7533 * MiniBrowser/mac/AppDelegate.m:
7534 (defaultConfiguration): Add _punchOutWhiteBackgroundsInDarkMode.
7536 * MiniBrowser/mac/SettingsController.h: Ditto.
7537 * MiniBrowser/mac/SettingsController.m:
7538 (-[SettingsController _populateMenu]):
7539 (-[SettingsController validateMenuItem:]):
7540 (-[SettingsController togglePunchOutWhiteBackgroundsInDarkMode:]):
7541 (-[SettingsController punchOutWhiteBackgroundsInDarkMode]):
7543 * MiniBrowser/mac/WK1BrowserWindowController.m:
7544 (-[WK1BrowserWindowController didChangeSettings]): Set the new preference.
7546 * WebKitTestRunner/PlatformWebView.h: Expose a drawsBackground property.
7547 * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp: Null implementation.
7548 (WTR::PlatformWebView::drawsBackground const):
7549 (WTR::PlatformWebView::setDrawsBackground):
7550 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp: Ditto.
7551 (WTR::PlatformWebView::drawsBackground const):
7552 (WTR::PlatformWebView::setDrawsBackground):
7553 * WebKitTestRunner/ios/PlatformWebViewIOS.mm: Call into the WKWebView and
7555 (WTR::PlatformWebView::drawsBackground const):
7556 (WTR::PlatformWebView::setDrawsBackground):
7557 * WebKitTestRunner/mac/PlatformWebViewMac.mm: Ditto.
7558 (WTR::PlatformWebView::drawsBackground const):
7559 (WTR::PlatformWebView::setDrawsBackground):
7561 * WebKitTestRunner/TestController.cpp: Reset and copy the new preference.
7562 (WTR::TestController::resetPreferencesToConsistentValues):
7563 (WTR::updateTestOptionsFromTestHeader):
7564 * WebKitTestRunner/TestOptions.h:
7565 (WTR::TestOptions::hasSameInitializationOptions const):
7567 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
7568 (WTR::TestController::platformCreateWebView): If the option for punching
7569 out the background was set, tell the WebView to not draw its background.
7571 2018-07-16 Aditya Keerthi <akeerthi@apple.com>
7573 [Datalist][macOS] Add suggestions UI for TextFieldInputTypes
7574 https://bugs.webkit.org/show_bug.cgi?id=186531
7576 Reviewed by Tim Horton.
7578 Added isShowingDatalistSuggestions testing hook in order to enable testing of the
7579 visibility of the suggestions view.
7581 * DumpRenderTree/mac/UIScriptControllerMac.mm:
7582 (WTR::UIScriptController::isShowingDataListSuggestions const):
7583 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
7584 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
7585 (WTR::UIScriptController::isShowingDataListSuggestions const):
7586 * TestRunnerShared/UIScriptContext/UIScriptController.h:
7587 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
7588 (WTR::UIScriptController::isShowingDataListSuggestions const):
7590 2018-07-16 Yusuke Suzuki <utatane.tea@gmail.com>
7592 Add --target-path option to dump-class-layout
7593 https://bugs.webkit.org/show_bug.cgi?id=187687
7595 Reviewed by Simon Fraser.
7597 We add an escape hatch to dump-class-layout for specifying target path directly.
7598 This `--target-path` allows us to use dump-class-layout in the other ports
7601 We can dump class layout if we build the target with clang by using the following command.
7603 Tools/Scripts/dump-class-layout \
7604 --architecture=x86_64 \
7605 --target-path=path/to/libJavaScriptCore.so \
7609 * Scripts/dump-class-layout:
7612 2018-07-16 Sihui Liu <sihui_liu@apple.com>
7614 IndexedDB: closeAndDeleteDatabasesForOrigins should remove all databases for those origins
7615 https://bugs.webkit.org/show_bug.cgi?id=187631
7616 <rdar://problem/42164227>
7618 Reviewed by Brady Eidson.
7620 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
7623 2018-07-15 Carlos Garcia Campos <cgarcia@igalia.com>
7625 [GLIB] Add API to evaluate code using a given object to store global symbols
7626 https://bugs.webkit.org/show_bug.cgi?id=187639
7628 Reviewed by Michael Catanzaro.
7630 Add a new test case.
7632 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
7633 (testJSCEvaluateInObject):
7634 (testJSCExceptions):
7637 2018-07-15 Zan Dobersek <zdobersek@igalia.com>
7639 [webkitpy] run-web-platform-tests should allow specifying custom WPT metadata directories
7640 https://bugs.webkit.org/show_bug.cgi?id=187353
7642 Reviewed by Youenn Fablet.
7644 When using run-web-platform-tests, allow specifying custom WPT metadata
7645 directory. This will avoid generating such metadata-filled directory
7646 from the port-specific JSON expectations file, and instead will search
7647 for the metadata files and the include manifest inside the specified
7648 directory. The MANIFEST.json file will also be generated under there.
7650 Rationale for this change is prototyping using custom metadata
7651 directories and avoiding generating all this content from a JSON file.
7652 Using this by default in the future would avoid sporradic changes in how
7653 WPT handles metadata .ini files and releases us from the obligation of
7654 adjusting the generator for every such change. This would also allow
7655 managing this metadata content in a separate repository, avoiding
7656 polluting the main webkit.org repository with thousands of .ini files.
7658 If this turns out to be the preferable way of managing the metadata
7659 content, the JSON files under WebPlatformTests/ and the related code in
7660 wpt_runner.py would be removed.
7662 * Scripts/webkitpy/w3c/wpt_runner.py:
7664 (WPTRunner._wpt_run_paths):
7666 * Scripts/webkitpy/w3c/wpt_runner_unittest.py:
7667 (WPTRunnerTest.test_run_with_specified_options):
7669 2018-07-13 Ross Kirsling <ross.kirsling@sony.com>
7671 [WinCairo] run-api-tests is timing out for almost all test cases
7672 https://bugs.webkit.org/show_bug.cgi?id=187547
7674 Reviewed by Fujii Hironori.
7676 * Scripts/webkitpy/port/server_process.py:
7677 (ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
7678 Still attempt to read from stdout/stderr even if the process has exited, as long as it's before the deadline.
7680 * Scripts/webkitpy/port/server_process_unittest.py:
7681 (TestServerProcess.test_read_after_process_exits):
7684 2018-07-13 Ryan Haddad <ryanhaddad@apple.com>
7686 Add TestExpectations and baselines for iOS 12
7687 https://bugs.webkit.org/show_bug.cgi?id=187628
7689 Reviewed by Alexey Proskuryakov.
7691 * Scripts/webkitpy/port/ios.py:
7692 (IOSPort): Bump current version to 12.
7694 2018-07-13 Ryan Haddad <ryanhaddad@apple.com>
7696 Add TestExpectations and baselines for Mojave.
7697 https://bugs.webkit.org/show_bug.cgi?id=187620
7699 Reviewed by Alexey Proskuryakov.
7701 * Scripts/webkitpy/port/mac.py:
7702 (MacPort): Bump current version to 10.14.
7704 2018-07-13 Timothy Hatcher <timothy@apple.com>
7706 Add _drawsBackground to WKWebViewConfiguration.
7707 https://bugs.webkit.org/show_bug.cgi?id=187665
7708 rdar://problem/42182268
7710 Reviewed by Tim Horton.
7712 * TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm:
7713 (TestWebKitAPI.WebKit.ConfigurationDrawsBackground): Added.
7715 2018-07-13 Chris Dumez <cdumez@apple.com>
7717 Add a FrameLoaderClient willInjectUserScriptForFrame callback
7718 https://bugs.webkit.org/show_bug.cgi?id=187565
7719 <rdar://problem/42095701>
7721 Unreviewed WKTR fix after r233782.
7723 * WebKitTestRunner/TestInvocation.cpp:
7724 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
7726 2018-07-13 Chris Dumez <cdumez@apple.com>
7728 Reduce size of WebCore::URL
7729 https://bugs.webkit.org/show_bug.cgi?id=186820
7730 <rdar://problem/42087508>
7732 Unreviewed, re-generates Service worker registrations database used by API tests after r233789.
7734 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7735 * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3: Removed.
7736 * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3-shm: Removed.
7737 * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-3.sqlite3: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3-wal.
7738 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
7741 2018-07-12 Wenson Hsieh <wenson_hsieh@apple.com>
7743 Make it easier to hit the significant rendered text layout milestone on pages with main article elements
7744 https://bugs.webkit.org/show_bug.cgi?id=187578
7745 <rdar://problem/42104637>
7747 Reviewed by Ryosuke Niwa.
7749 Tweak an existing layout test to additionally check that the significant text layout milestone is fired on a
7750 page with an article element that is clearly the "main" content on the page (i.e. much taller than all other
7753 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7754 * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone-article.html: Copied from Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html.
7755 * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html:
7756 * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
7759 2018-07-12 Fujii Hironori <Hironori.Fujii@sony.com>
7761 Change my status to be a WebKit reviewer.
7763 Unreviewed status update.
7765 * Scripts/webkitpy/common/config/contributors.json:
7767 2018-07-12 Fujii Hironori <Hironori.Fujii@sony.com>
7769 Unreviewed contributors.json update
7771 Just run "validate-committer-lists -c" to canonicalize the style.
7773 * Scripts/webkitpy/common/config/contributors.json:
7775 2018-07-12 Alex Christensen <achristensen@webkit.org>
7777 Reduce size of WebCore::URL
7778 https://bugs.webkit.org/show_bug.cgi?id=186820
7780 Reviewed by Yusuke Suzuki and Youenn Fablet.
7782 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
7783 (TestWebKitAPI::TEST_F):
7785 2018-07-12 Brady Eidson <beidson@apple.com>
7787 Make process-swap-on-navigation an experimental feature.
7788 <rdar://problem/41995053> and https://bugs.webkit.org/show_bug.cgi?id=187558
7790 Reviewed by Chris Dumez.
7792 Make sure WKTR doesn't enable ProcessSwapOnNavigation by default simply because it's an experimental feature.
7794 * WebKitTestRunner/TestController.cpp:
7795 (WTR::TestController::createWebViewWithOptions):
7796 (WTR::TestController::resetPreferencesToConsistentValues):
7798 * WebKitTestRunner/TestOptions.h:
7799 (WTR::TestOptions::shouldEnableProcessSwapOnNavigation const):
7801 2018-07-12 Youenn Fablet <youenn@apple.com>
7803 Add a FrameLoaderClient willInjectUserScriptForFrame callback
7804 https://bugs.webkit.org/show_bug.cgi?id=187565
7806 Reviewed by Alex Christensen.
7808 Added new test runner API to check for willInjectUserScriptForFrame callback.
7810 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
7811 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
7812 (WTR::InjectedBundle::resetUserScriptInjectedCount):
7813 (WTR::InjectedBundle::increaseUserScriptInjectedCount):
7814 (WTR::InjectedBundle::userScriptInjectedCount const):
7815 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
7816 (WTR::InjectedBundlePage::InjectedBundlePage):
7817 (WTR::InjectedBundlePage::resetAfterTest):
7818 (WTR::InjectedBundlePage::willInjectUserScriptForFrame):
7819 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
7820 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
7821 (WTR::TestRunner::userScriptInjectedCount const):
7822 (WTR::TestRunner::injectUserScript):
7823 * WebKitTestRunner/InjectedBundle/TestRunner.h:
7824 * WebKitTestRunner/TestController.cpp:
7825 (WTR::TestController::injectUserScript):
7826 * WebKitTestRunner/TestController.h:
7827 * WebKitTestRunner/TestInvocation.cpp:
7828 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
7829 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
7830 (WTR::TestController::injectUserScript):
7832 2018-07-12 Sihui Liu <sihui_liu@apple.com>
7834 IndexedDB: database file of subframe cannot be removed
7835 https://bugs.webkit.org/show_bug.cgi?id=187564
7837 Reviewed by Youenn Fablet.
7839 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
7840 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
7843 2018-07-12 Timothy Hatcher <timothy@apple.com>
7845 Make WebKit.LinkColorWithSystemAppearance work across system versions.
7846 https://bugs.webkit.org/show_bug.cgi?id=187573
7848 Reviewed by Wenson Hsieh.
7850 * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
7851 (TestWebKitAPI.WebKit.LinkColorWithSystemAppearance): Dynamically generate the expected string.
7853 2018-07-11 Carlos Garcia Campos <cgarcia@igalia.com>
7855 [WPE] Pass the backend library name as command line parameter to the web process
7856 https://bugs.webkit.org/show_bug.cgi?id=186841
7858 Reviewed by Žan Doberšek.
7860 * MiniBrowser/wpe/main.cpp:
7861 (main): Stop using WPE_BACKEND_LIBRARY env var.
7862 * Scripts/run-wpe-tests:
7863 (WPETestRunner.__init__): Ditto.
7864 * Scripts/webkitpy/port/wpe.py:
7865 (WPEPort.setup_environ_for_server): Ditto.
7866 * wpe/backends/ViewBackend.cpp:
7867 (WPEToolingBackends::ViewBackend::ViewBackend): Call wpe_loader_init() to ensure WPEBackend-fdo is used.
7868 * wpe/jhbuild.modules: Upgrade WPEBackend to version 0.2.0.
7870 2018-07-11 Carlos Garcia Campos <cgarcia@igalia.com>
7872 [GLIB] Add API to allow creating variadic functions
7873 https://bugs.webkit.org/show_bug.cgi?id=187517
7875 Reviewed by Michael Catanzaro.
7879 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
7881 (fooCreateWithFooV):
7884 2018-07-11 Carlos Garcia Campos <cgarcia@igalia.com>
7886 [GLIB] Add jsc_context_get_global_object() to GLib API
7887 https://bugs.webkit.org/show_bug.cgi?id=187515
7889 Reviewed by Michael Catanzaro.
7893 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
7894 (testJSCGlobalObject):
7897 2018-07-11 Carlos Garcia Campos <cgarcia@igalia.com>
7899 [GLIB] Handle G_TYPE_STRV in glib API
7900 https://bugs.webkit.org/show_bug.cgi?id=187512
7902 Reviewed by Michael Catanzaro.
7906 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
7911 2018-07-11 Aakash Jain <aakash_jain@apple.com>
7913 [ews-build] EWS should unapply patch and re-run jsc tests when patch fails jsc tests
7914 https://bugs.webkit.org/show_bug.cgi?id=187549
7916 Reviewed by Alexey Proskuryakov.
7918 * BuildSlaveSupport/ews-build/factories.py:
7919 (JSCTestsFactory.__init__):
7920 * BuildSlaveSupport/ews-build/steps.py:
7921 (CompileJSCOnlyToT): Build ToT without patch.
7922 (CompileJSCOnlyToT.doStepIf): Run this step only if patch failed to build.
7923 (RunJavaScriptCoreTests.evaluateCommand): Set patchFailedJSCTests property appropriately.
7924 (ReRunJavaScriptCoreTests): Re-runs JSC tests.
7925 (ReRunJavaScriptCoreTests.doStepIf): Run this step only if patch failed JSC tests.
7926 (ReRunJavaScriptCoreTests.evaluateCommand): Set patchFailedJSCTests property appropriately.
7927 (RunJavaScriptCoreTestsToT): Run JSC tests on ToT without patch.
7928 (RunJavaScriptCoreTestsToT.doStepIf): Run this step only if patch failed JSC tests.
7929 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
7931 2018-07-11 Commit Queue <commit-queue@webkit.org>
7933 Unreviewed, rolling out r233742.
7934 https://bugs.webkit.org/show_bug.cgi?id=187577
7936 Binary incompatible change with respect to Service Worker
7937 registration map (Requested by dydz on #webkit).
7941 "Reduce size of WebCore::URL"
7942 https://bugs.webkit.org/show_bug.cgi?id=186820
7943 https://trac.webkit.org/changeset/233742
7945 2018-07-11 Aditya Keerthi <akeerthi@apple.com>
7947 REGRESSION (231276): Attempting to copy an image fails
7948 https://bugs.webkit.org/show_bug.cgi?id=187212
7950 Reviewed by Ryosuke Niwa.
7951 <rdar://problem/41540074>
7953 Augmented test to include a URL where the lastPathComponent looks similar to a
7956 * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.html:
7957 * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.mm:
7958 (TestWebKitAPI::TEST):
7960 2018-07-11 Alex Christensen <achristensen@webkit.org>
7962 Add SPI for immediate injection of user scripts
7963 https://bugs.webkit.org/show_bug.cgi?id=173342
7964 <rdar://problem/29202285>
7966 Reviewed by Brady Eidson, Youenn Fablet, and Geoff Garen.
7968 * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
7972 2018-07-11 Myles C. Maxfield <mmaxfield@apple.com>
7974 Move WHLSL spec work to the W3C GPUWeb GitHub repository
7976 See https://github.com/gpuweb/WHLSL
7978 * WebGPUShadingLanguageRI/SpecWork/Makefile: Removed.
7979 * WebGPUShadingLanguageRI/SpecWork/WSL.g4: Removed.
7980 * WebGPUShadingLanguageRI/SpecWork/WSL.ott: Removed.
7981 * WebGPUShadingLanguageRI/SpecWork/source/conf.py: Removed.
7982 * WebGPUShadingLanguageRI/SpecWork/source/index.rst: Removed.
7984 2018-07-11 Dean Jackson <dino@apple.com>
7986 Force WKTR to use the light appearance
7987 https://bugs.webkit.org/show_bug.cgi?id=187572
7988 <rdar://problem/42097805>
7990 Reviewed by Simon Fraser.
7992 Set the NSAppearance on the NSWindow to light mode.
7994 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
7995 (WTR::PlatformWebView::PlatformWebView): Use the Aqua appearance.
7997 2018-07-11 Alex Christensen <achristensen@webkit.org>
7999 Reduce size of WebCore::URL
8000 https://bugs.webkit.org/show_bug.cgi?id=186820
8002 Reviewed by Yusuke Suzuki.
8004 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
8005 (TestWebKitAPI::TEST_F):
8007 2018-07-11 Youenn Fablet <youenn@apple.com>
8009 Fix remaining Cross-Origin-Resource-Policy failures, if any
8010 https://bugs.webkit.org/show_bug.cgi?id=186761
8011 <rdar://problem/41209829>
8013 Reviewed by Alex Christensen.
8015 * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp:
8016 (TestWebKitAPI::TEST):
8018 2018-07-11 Aakash Jain <aakash_jain@apple.com>
8020 [ews-build] EWS should unapply the patch and build ToT when patch fails to build
8021 https://bugs.webkit.org/show_bug.cgi?id=187358
8023 Reviewed by Alexey Proskuryakov.
8025 * BuildSlaveSupport/ews-build/factories.py:
8026 (BuildFactory.__init__):
8027 * BuildSlaveSupport/ews-build/steps.py:
8028 (CompileWebKit): Set haltOnFailure to false so as to run next steps (e.g.: un-apply patch, compile ToT).
8029 (CompileWebKit.evaluateCommand): Set patchFailedToBuild property.
8030 (CompileWebKitToT): Build ToT without patch.
8031 (CompileWebKitToT.doStepIf): Run this step only if patch failed to build.
8032 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests. Also lower-cased Release and Debug.
8034 2018-07-11 Robin Morisset <rmorisset@apple.com>
8036 [WSL] WIP, more of the spec
8037 https://bugs.webkit.org/show_bug.cgi?id=186310
8039 Rubberstamped by Filip Pizlo.
8041 Fixed a few issues with the formal rules (such as adding the restrictions on pointers for compilation to SpirV),
8042 and started writing some of the english in the spec.
8044 * WebGPUShadingLanguageRI/SpecWork/WSL.ott:
8045 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
8047 2018-07-10 Aakash Jain <aakash_jain@apple.com>
8049 [ews-build] Add build step to UnApply patch
8050 https://bugs.webkit.org/show_bug.cgi?id=187357
8052 Reviewed by Alexey Proskuryakov.
8054 * BuildSlaveSupport/ews-build/steps.py:
8055 (UnApplyPatchIfRequired.__init__): Pass alwaysUseLatest parameter in order to unapply the patch.
8056 (UnApplyPatchIfRequired.doStepIf): Run this step only if patch failed to build or failed test. These
8057 properties will be set by build-steps for build and test.
8058 (UnApplyPatchIfRequired.hideStepIf): Hide this step if it is not run.
8060 2018-07-10 Dewei Zhu <dewei_zhu@apple.com>
8062 Update ARES-6.patch file accordingly for r233631.
8063 https://bugs.webkit.org/show_bug.cgi?id=187534
8065 Reviewed by Saam Barati.
8067 Update ARES-6.patch file acoordingly after ARES-6 plan file change to
8068 avoid warning while applying the patch.
8070 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/ARES-6.patch:
8072 2018-07-10 Tim Horton <timothy_horton@apple.com>
8074 doAfterNextPresentationUpdate should not be called while content is hidden due to animated resize
8075 https://bugs.webkit.org/show_bug.cgi?id=187500
8076 <rdar://problem/41294139>
8078 Reviewed by Simon Fraser.
8080 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
8081 (-[AnimatedResizeWebView _endAnimatedResize]):
8082 Set didEndAnimatedResize before calling super, because it makes the
8083 new test easier and doesn't affect any of the existing ones.
8085 (AnimatedResizeBlocksViewportFitChanges):
8086 This doAfterNextPresentationUpdate is always called during animated resize,
8087 and then synchronously waited for, so it /must/ use
8088 _doAfterNextPresentationUpdateWithoutWaitingForAnimatedResizeWithTesting.
8090 (AnimatedResizeBlocksDoAfterNextPresentationUpdate):
8091 Add a test ensuring that doAfterNextPresentationUpdate is deferred
8092 until endAnimatedResize is called.
8094 * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
8095 (-[WKWebView _test_waitForDidFinishNavigation]):
8096 _test_waitForDidFinishNavigation is sometimes called during animated resize,
8097 and synchronously waits for a doAfterNextPresentationUpdate, so
8098 it cannot wait for the animated resize to complete.
8100 2018-07-10 Fujii Hironori <Hironori.Fujii@sony.com>
8102 [GTK][WPE] TestWTF and TestJSC fail to compile due to missing forwarding headers
8103 https://bugs.webkit.org/show_bug.cgi?id=184441
8105 Reviewed by Michael Catanzaro.
8107 All executables of TestWebKitAPI need the forwarding headers of
8108 WebCore and PAL because config.h includes
8109 <WebCore/PlatformExportMacros.h> and <pal/ExportMacros.h>.
8111 The forwarding headers of WebCore are generated by
8112 generate-forwarding-headers.pl in GTK and WPE ports. The
8113 forwarding headers of PAL are generated by
8114 WEBKIT_MAKE_FORWARDING_HEADERS in all CMake ports.
8116 * TestWebKitAPI/PlatformGTK.cmake: Added PALForwardingHeaders to
8117 ForwardingHeadersForTestWebKitAPI_NAME. Added dependencies of
8118 ${ForwardingHeadersForTestWebKitAPI_NAME} to TestJSC.
8119 * TestWebKitAPI/PlatformWPE.cmake: Ditto.
8121 2018-07-10 Stephan Szabo <stephan.szabo@sony.com>
8123 [WinCairo] Support display of webinspector ui on non-legacy minibrowser
8124 https://bugs.webkit.org/show_bug.cgi?id=187415
8126 Reviewed by Brian Burg.
8128 * MiniBrowser/win/WebKitBrowserWindow.cpp:
8129 (WebKitBrowserWindow::WebKitBrowserWindow):
8131 2018-07-10 John Wilander <wilander@apple.com>
8133 Resource Load Statistics: Make testRunner.statisticsResetToConsistentState() take a completion handler
8134 https://bugs.webkit.org/show_bug.cgi?id=187499
8135 <rdar://problem/41999431>
8137 Reviewed by Chris Dumez.
8139 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
8140 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
8141 (WTR::InjectedBundle::didReceiveMessageToPage):
8142 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
8143 (WTR::TestRunner::statisticsResetToConsistentState):
8144 (WTR::TestRunner::statisticsCallDidResetToConsistentStateCallback):
8145 * WebKitTestRunner/InjectedBundle/TestRunner.h:
8146 * WebKitTestRunner/TestController.cpp:
8147 (WTR::TestController::statisticsResetToConsistentState):
8148 * WebKitTestRunner/TestInvocation.cpp:
8149 (WTR::TestInvocation::didResetStatisticsToConsistentState):
8150 * WebKitTestRunner/TestInvocation.h:
8152 2018-07-10 Ryosuke Niwa <rniwa@webkit.org>
8154 Disable cross-origin-window-policy by default
8155 https://bugs.webkit.org/show_bug.cgi?id=187509
8157 Reviewed by Chris Dumez.
8159 Enable the feature for testing purposes. DumpRenderTree does this already in enableExperimentalFeatures.
8161 * WebKitTestRunner/TestController.cpp:
8162 (WTR::TestController::resetPreferencesToConsistentValues):
8164 2018-07-10 Thibault Saunier <tsaunier@igalia.com>
8166 [Flatpak] Feature options to build-webkit and --makeargs are not passed inside the sandbox
8167 https://bugs.webkit.org/show_bug.cgi?id=187470
8169 Reviewed by Philippe Normand.
8171 Never force building, the user is responsible to make that decision and the workflow is
8172 now based on external scripts so it doesn't make sense anymore. Doing that leads
8173 to ignoring the options the user passed in.
8175 * flatpak/flatpakutils.py:
8176 (WebkitFlatpak.setup_dev_env):
8178 2018-07-10 Thibault Saunier <tsaunier@igalia.com>
8180 [Flatpak] Fix running wpt tests inside flatpak
8181 https://bugs.webkit.org/show_bug.cgi?id=187490
8183 Reviewed by Philippe Normand.
8185 Still not *all* passing but a big majority do.
8187 * Scripts/webkitpy/w3c/wpt_runner.py:
8188 (main): Generate the /etc/hosts and mount it in flatpak as required.
8189 (WPTRunner.prepare_wpt_checkout): Renamed as we need to first checkout WPT code before generating /etc/hosts.
8190 (WPTRunner._prepare_wpt_checkout): Deleted.
8191 * flatpak/flatpakutils.py: Added a stdout= argument to run_in_sandbox() and
8192 added a way to pass extra env to flatpak itself (so we can mount /etc/hosts).
8193 Stopped passing `--device=all` as it is not required since r233638 (Bug 187400).
8194 * flatpak/org.webkit.WebKit.yaml: Added virtualenv for python2 as required by wpt.
8196 2018-07-10 Thibault Saunier <tsaunier@igalia.com>
8198 [Flatpak] Use logging to print debug information
8199 https://bugs.webkit.org/show_bug.cgi?id=187496
8201 Reviewed by Philippe Normand.
8203 * flatpak/flatpakutils.py:
8204 (WebkitFlatpak.load_from_args):
8205 (WebkitFlatpak.clean_args):
8206 (WebkitFlatpak.run_in_sandbox):
8208 2018-07-09 Timothy Hatcher <timothy@apple.com>
8210 Semantic colors don't update when accessibility Increase Contrast mode is enabled.
8211 https://bugs.webkit.org/show_bug.cgi?id=187425
8212 rdar://problem/39948240
8213 rdar://problem/41796865
8215 Reviewed by Tim Horton.
8217 * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
8218 (TestWebKitAPI.WebKit.LinkColorWithSystemAppearance): Use new color value.
8220 2018-07-09 Simon Fraser <simon.fraser@apple.com>
8222 Fix dump-class-layout to show bit padding, and fix issues with padding offsets
8223 https://bugs.webkit.org/show_bug.cgi?id=187442
8225 Reviewed by Daniel Bates.
8227 Synthetic padding members were shown with the wrong offset because they used the
8228 absolute offset rather than the class-relative offset. This didn't change the padding
8229 math, but made the output confusing.
8231 Also add support for showing empty bits in bitfields, and fix computation of padding
8232 after bitfields. Empty bits are computed by inserting a bit padding member after
8233 a bitfield that is not followed by another bitfield (making the assumption that bit
8234 padding will fill to the next byte boundary).
8236 The computation of padding after bitfields was also wrong, since lldb's member_type.GetByteSize()
8237 just reports the size of the type without the bitfield modifier (e.g. for "unsigned : 2" it returned 4).
8238 Fix by setting the byte size for bitfield fields to the number of bits rounded up to the next byte;
8239 this allows byte padding following the bitfield to be computed correctly.
8241 Add or modify test to cover these issues.
8243 * lldb/dump_class_layout_unittest.py:
8244 (serial_test_ClassWithPaddedBitfields):
8245 (serial_test_MemberHasBitfieldPadding):
8246 (serial_test_InheritsFromClassWithPaddedBitfields):
8247 * lldb/lldbWebKitTester/DumpClassLayoutTesting.cpp:
8248 (avoidClassDeadStripping):
8249 * lldb/lldb_dump_class_layout.py:
8251 (ClassLayoutBase._to_string_recursive):
8252 (ClassLayout._parse):
8253 (ClassLayout._compute_padding_recursive):
8255 2018-07-09 Youenn Fablet <youenn@apple.com>
8257 StringView operator==(char*) should check the length of the string
8258 https://bugs.webkit.org/show_bug.cgi?id=187422
8260 Reviewed by Chris Dumez.
8262 * TestWebKitAPI/Tests/WTF/StringView.cpp:
8263 (TestWebKitAPI::equal2):
8264 (TestWebKitAPI::TEST):
8266 2018-07-09 Ross Kirsling <rkirsling@gmail.com>
8268 [WinCairo] httpd service install needs to precede server start
8269 https://bugs.webkit.org/show_bug.cgi?id=187283
8271 Reviewed by Daniel Bates.
8273 * Scripts/webkitpy/port/base.py:
8275 Remove unused parameter `needs_http`.
8277 (Port.check_sys_deps):
8278 (Port.start_http_server):
8279 Move `check_httpd` call.
8281 * Scripts/webkitpy/port/win.py:
8282 (WinPort.check_httpd): Added.
8283 (WinCairoPort.check_httpd): Deleted.
8284 Move `httpd -k install` logic to common Windows location.
8286 * Scripts/webkitpy/layout_tests/controllers/manager.py:
8287 (Manager._set_up_run):
8288 * Scripts/webkitpy/performance_tests/perftestsrunner.py:
8289 * Scripts/webkitpy/port/gtk.py:
8290 (GtkPort.check_sys_deps):
8291 * Scripts/webkitpy/port/ios_simulator.py:
8292 (IOSSimulatorPort.check_sys_deps):
8293 * Scripts/webkitpy/port/mock_drt.py:
8294 (MockDRTPort.check_build):
8295 (MockDRTPort.check_sys_deps):
8296 * Scripts/webkitpy/port/port_testcase.py:
8297 (PortTestCase.integration_test_check_sys_deps):
8299 * Scripts/webkitpy/port/test.py:
8300 * Scripts/webkitpy/port/wpe.py:
8301 (WPEPort.check_sys_deps):
8302 * Scripts/webkitpy/tool/commands/perfalizer.py:
8303 (PerfalizerTask.run):
8304 Remove `needs_http` arguments.
8306 2018-07-09 Philippe Normand <pnormand@igalia.com>
8308 [Flatpak] Unreviewed, switch to https for the gst-libav tarball.
8310 * flatpak/org.webkit.WebKit.yaml:
8312 2018-07-09 Thibault Saunier <tsaunier@igalia.com>
8314 [Flatpak] HTTP layout tests broken due to missing CGI.pm in the sandbox
8315 https://bugs.webkit.org/show_bug.cgi?id=187384
8317 Reviewed by Philippe Normand.
8319 And make it usable inside the sandbox even when
8320 perl is launched "tainted" (as the PERL5LIB won't
8323 * flatpak/flatpakutils.py:
8324 (WebkitFlatpak.run_in_sandbox):
8325 * flatpak/org.webkit.WebKit.yaml:
8327 2018-07-09 Thibault Saunier <tsaunier@igalia.com>
8329 [WPE][GTK] Mount /dev/shm on /run/shm in sandbox
8330 https://bugs.webkit.org/show_bug.cgi?id=187400
8332 Reviewed by Philippe Normand.
8334 This is where it is expected to be when it is a symlink,
8335 without mounting it the websocket python server can't work
8338 * flatpak/flatpakutils.py:
8339 (WebkitFlatpak.run_in_sandbox):
8341 2018-07-08 Filip Pizlo <fpizlo@apple.com>
8343 run-benchmark should run ARES-6 1.0.1
8344 https://bugs.webkit.org/show_bug.cgi?id=187452
8346 Reviewed by Sam Weinig.
8348 We forgot to update this when we released 1.0.1!
8350 * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
8352 2018-07-07 Youenn Fablet <youenn@apple.com>
8354 WPT importer should create dummy HTML files for *.window.js script files
8355 https://bugs.webkit.org/show_bug.cgi?id=187426
8357 Reviewed by Ryosuke Niwa.
8359 Some WPT tests use *.window.js tests, which should be accessed as *.window.html.
8360 Do the same strategy as done for worker.js/any.js files.
8362 * Scripts/webkitpy/w3c/test_importer.py:
8363 (TestImporter.write_html_files_for_templated_js_tests):
8365 2018-07-07 Wenson Hsieh <wenson_hsieh@apple.com>
8367 Introduce a layout milestone to track when the document contains a large number of rendered characters
8368 https://bugs.webkit.org/show_bug.cgi?id=187412
8369 <rdar://problem/41744338>
8371 Reviewed by Ryosuke Niwa.
8373 Add a new API test to check that we observe the new rendering milestone in an article-like document.
8375 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8376 * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html: Added.
8377 * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
8380 2018-06-30 Simon Fraser <simon.fraser@apple.com>
8382 dump-class-layout reports wrong padding in many cases
8383 https://bugs.webkit.org/show_bug.cgi?id=185801
8385 Reviewed by Dan Bates.
8387 Enhance dump-class-layout, fixing bugs and adding unit tests. This also includes
8388 the patch from bug 187141.
8390 Move the code that uses lldb to fetch the class layout to its own module,
8391 lldb_dump_class_layout.py, so it can be unit tested. Change this code
8392 to build up a data structure for the class. This is necessary since correct
8393 padding computation is easier with second traversal over the data structure.
8395 Try to deal with the empty base class optimization, which is necessary to report
8396 correct padding in classes using std::unique_ptr, and correctly handle virtual base classes.
8398 The ClassLayoutBase class knows how to test for equality and generate a string
8399 or string list representation of itself. The derived ClassLayout class knows
8400 how to build up the class layout using the lldb Python bindings.
8402 Finally we wrap the lldb debugger instance in LLDBDebuggerInstance so that we don't
8403 have to make a new one for each unit test. The tests have to run serially.
8405 Add to lldbWebKitTester a .cpp file that contains a set of C++ classes to unit-test
8408 * Scripts/dump-class-layout:
8410 * lldb/dump_class_layout_unittest.py:
8411 (destroy_cached_debug_session):
8412 (TestDumpClassLayout):
8413 (TestDumpClassLayout.setUpClass):
8414 (TestDumpClassLayout.setUp):
8415 (TestDumpClassLayout.serial_test_BasicClassLayout):
8416 (serial_test_PaddingBetweenClassMembers):
8417 (serial_test_BoolPaddingClass):
8418 (serial_test_ClassWithEmptyClassMembers):
8419 (serial_test_SimpleVirtualClass):
8420 (serial_test_SimpleVirtualClassWithNonVirtualBase):
8421 (serial_test_InterleavedVirtualNonVirtual):
8422 (serial_test_ClassWithTwoVirtualBaseClasses):
8423 (serial_test_ClassWithClassMembers):
8424 (serial_test_ClassWithBitfields):
8425 (serial_test_ClassWithUniquePtrs):
8426 (serial_test_ClassWithOptionals):
8427 (TestDumpClassLayout.test_BasicClassLayout): Deleted.
8428 * lldb/lldbWebKitTester/DumpClassLayoutTesting.cpp:
8429 (EmptyClass::doStuff):
8430 (VirtualBaseClass::~VirtualBaseClass):
8431 (VirtualBaseClass2::~VirtualBaseClass2):
8432 (SimpleVirtualClass::~SimpleVirtualClass):
8433 (SimpleVirtualClass::doStuff):
8434 (SimpleVirtualClassWithNonVirtualBase::~SimpleVirtualClassWithNonVirtualBase):
8435 (SimpleVirtualClassWithNonVirtualBase::doStuff):
8436 (avoidClassDeadStripping):
8437 * lldb/lldb_dump_class_layout.py:
8440 (ClassLayoutBase.__init__):
8441 (ClassLayoutBase.__ne__):
8442 (ClassLayoutBase.__eq__):
8443 (ClassLayoutBase._to_string_recursive):
8444 (ClassLayoutBase.as_string_list):
8445 (ClassLayoutBase.as_string):
8446 (ClassLayoutBase.dump):
8447 (ClassLayoutExpected):
8448 (ClassLayoutExpected.__init__):
8450 (ClassLayout.__init__):
8451 (ClassLayout._has_polymorphic_base_class):
8452 (ClassLayout._parse):
8453 (ClassLayout._probably_has_empty_base_class_optimization):
8454 (ClassLayout._compute_padding_recursive):
8455 (ClassLayout._compute_padding):
8456 (LLDBDebuggerInstance):
8457 (LLDBDebuggerInstance.__init__):
8458 (LLDBDebuggerInstance.__del__):
8459 (LLDBDebuggerInstance._get_first_file_architecture):
8460 (LLDBDebuggerInstance.layout_for_classname):
8461 (ClassLayoutDumper): Deleted.
8462 (ClassLayoutDumper.__init__): Deleted.
8463 (ClassLayoutDumper._get_first_file_architecture): Deleted.
8464 (ClassLayoutDumper.verify_type): Deleted.
8465 (ClassLayoutDumper.verify_type_recursive): Deleted.
8466 (ClassLayoutDumper._class_layout_as_string): Deleted.
8467 (ClassLayoutDumper.dump_to_string): Deleted.
8468 (ClassLayoutDumper.dump): Deleted.
8470 2018-07-06 Christopher Reid <chris.reid@sony.com>
8472 [WinCairo] WebKit MiniBrowser crashes when attempting to navigate to certain URLs
8473 https://bugs.webkit.org/show_bug.cgi?id=187167
8475 Reviewed by Alex Christensen.
8477 A null byte was written past the end of the buffer causing the crash.
8478 Some of the heap allocated buffers were also not getting deleted.
8480 * MiniBrowser/win/WebKitBrowserWindow.cpp:
8482 2018-07-06 Thibault Saunier <tsaunier@igalia.com>
8484 [WPE][GTK] Build php zlib plugin and enable sockets in flatpak
8485 https://bugs.webkit.org/show_bug.cgi?id=187401
8487 Reviewed by Philippe Normand.
8489 * flatpak/org.webkit.WebKit.yaml:
8491 2018-07-06 Aakash Jain <aakash_jain@apple.com>
8493 [ews-build] EWS should run javascriptcore tests
8494 https://bugs.webkit.org/show_bug.cgi?id=187365
8496 Reviewed by David Kilzer.
8498 * BuildSlaveSupport/ews-build/steps.py: Added step to run JavaScriptCoreTests.
8499 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
8500 * BuildSlaveSupport/ews-build/factories.py:
8502 2018-07-06 Carlos Garcia Campos <cgarcia@igalia.com>
8504 [GTK][WPE] REGRESSION(r233111): Test /webkit/WebKitUserContentManager/script-message-received fails
8505 https://bugs.webkit.org/show_bug.cgi?id=187383
8507 Reviewed by Žan Doberšek.
8509 This is actually a problem in the test itself. The problem is that we run js, connect to message-received and
8510 quite the main loop when the message is received, which happens before the run js operation has been
8511 completed. The test finishes early and since r233111 an IPC message is still pending (I guess the run js
8512 callback) and the web page is still protected. Just adding a run loop operation before finishing the test would
8513 fix it. We should wait for the js run to complete, instead of the message.
8515 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
8516 (UserScriptMessageTest::scriptMessageReceived):
8517 (UserScriptMessageTest::waitUntilMessageReceived):
8518 (UserScriptMessageTest::runJavaScriptFinished):
8519 (UserScriptMessageTest::postMessageAndWaitUntilReceived):
8521 2018-07-05 Youenn Fablet <youenn@apple.com>
8523 REGRESSION (r230843): Flash doesn't work; Produces blue box on page
8524 https://bugs.webkit.org/show_bug.cgi?id=187346
8525 <rdar://problem/41773974>
8527 Reviewed by Ryosuke Niwa.
8529 * WebKitTestRunner/TestController.cpp:
8530 (WTR::TestController::resetStateToConsistentValues):
8531 (WTR::TestController::setBlockAllPlugins):
8532 When not blocked, set the load policy to allow once.
8533 * WebKitTestRunner/TestController.h:
8535 2018-07-05 Aakash Jain <aakash_jain@apple.com>
8537 [ews-build] Bindings-tests-EWS should output result in json
8538 https://bugs.webkit.org/show_bug.cgi?id=187330
8540 Reviewed by David Kilzer.
8542 * BuildSlaveSupport/ews-build/steps.py:
8543 (RunBindingsTests): Passed --json-output parameter to run-bindings-tests.
8544 * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
8546 2018-07-05 Aakash Jain <aakash_jain@apple.com>
8548 [ews-build] WebKitPy-Tests-EWS should output result in json
8549 https://bugs.webkit.org/show_bug.cgi?id=187331
8551 Follow-up fix to r233527. Extracting jsonFileName as a variable and re-using it.
8553 2018-07-05 Aakash Jain <aakash_jain@apple.com>
8555 [ews-build] WebKitPy-Tests-EWS should output result in json
8556 https://bugs.webkit.org/show_bug.cgi?id=187331
8558 Reviewed by David Kilzer.
8560 * BuildSlaveSupport/ews-build/steps.py:
8561 (RunWebKitPyTests): Passed --json-output parameter to test-webkitpy.
8562 * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
8564 2018-07-05 Philippe Normand <pnormand@igalia.com>
8566 [Flatpak] Add gst-libav to dependencies
8567 https://bugs.webkit.org/show_bug.cgi?id=187340
8569 Reviewed by Žan Doberšek.
8571 * flatpak/org.webkit.WebKit.yaml: Use tarballs instead of git
8572 clones because the FFMPeg git server doesn't support shallow
8575 2018-07-05 Thibault Saunier <tsaunier@igalia.com>
8577 [WPE][GTK]: Call gtk platform 'gtk' by default as this is what PortFactory expects
8578 https://bugs.webkit.org/show_bug.cgi?id=187322
8580 Reviewed by Žan Doberšek.
8582 * flatpak/flatpakutils.py:
8583 (WebkitFlatpak.__init__):
8585 2018-07-05 Zan Dobersek <zdobersek@igalia.com>
8587 Unreviewed, rolling out r233511.
8589 Proper fix provided in bug #187322
8593 "Unreviewed. Fixing a call in flatpakutils.py to
8595 https://trac.webkit.org/changeset/233511
8597 2018-07-04 Zan Dobersek <zdobersek@igalia.com>
8599 Unreviewed. Fixing a call in flatpakutils.py to PortFactory.get(),
8600 enforcing the passed platform argument to always be lowercase, as is
8601 expected from the PortFactory code.
8603 * flatpak/flatpakutils.py:
8604 (WebkitFlatpak.clean_args):
8606 2018-07-04 Tim Horton <timothy_horton@apple.com>
8608 Introduce PLATFORM(IOSMAC)
8609 https://bugs.webkit.org/show_bug.cgi?id=187315
8611 Reviewed by Dan Bernstein.
8613 * TestWebKitAPI/Configurations/Base.xcconfig:
8614 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
8616 2018-07-03 Brady Eidson <beidson@apple.com>
8618 WebKit.ResponsivenessTimerCrash sometimes fails.
8619 https://bugs.webkit.org/show_bug.cgi?id=187314
8621 Reviewed by Tim Horton.
8623 Actually unregister observers from objects we're about to destroy before destroying them.
8625 * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerCrash.mm:
8626 (-[ResponsivenessTimerObserver observeValueForKeyPath:ofObject:change:context:]):
8628 2018-07-03 Fujii Hironori <Hironori.Fujii@sony.com>
8630 update-webkitgtk-flatpak fails if running with python2
8631 https://bugs.webkit.org/show_bug.cgi?id=187240
8633 Reviewed by Michael Catanzaro.
8635 urllib.urlretrieve of Python2 sends invalid requests. Use
8636 urllib2.urlopen instead.
8638 * flatpak/flatpakutils.py: Import urllib2.urlopen for Python2,
8639 urllib.request.urlopen for Python3.
8640 (FlatpakRepo.repo_file): Copy the content of urlopen result to the
8643 2018-07-03 Chris Dumez <cdumez@apple.com>
8645 Make CallbackMap::invalidate() safe to re-enter
8646 https://bugs.webkit.org/show_bug.cgi?id=187298
8647 <rdar://problem/41057167>
8649 Reviewed by Geoffrey Garen.
8651 Add API test coverage.
8653 * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
8656 2018-07-03 Chris Dumez <cdumez@apple.com>
8658 [Cocoa] Disable vnode guard related simulated crashes for WKTR / DRT and WebSQL
8659 https://bugs.webkit.org/show_bug.cgi?id=187270
8660 <rdar://problem/40674034>
8662 Reviewed by Geoffrey Garen.
8664 Disable vnode guard related simulated crashes for WKTR / DRT by setting the
8665 expected environment variable in the test driver.
8667 * Scripts/webkitpy/port/driver.py:
8668 (Driver._setup_environ_for_driver):
8670 2018-07-03 Eric Carlson <eric.carlson@apple.com>
8672 Video sometimes flickers when playing to AppleTV
8673 https://bugs.webkit.org/show_bug.cgi?id=187193
8674 <rdar://problem/40153865>
8676 Unreviewed, fix test broken by r233435.
8678 * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
8679 (TestWebKitAPI::waitUntilAudioSessionCategoryIsEqualTo): Poll for a change in audio session
8680 category because it doesn't necessarily happen synchronously.
8681 (TestWebKitAPI::TEST):
8683 2018-07-03 Thibault Saunier <tsaunier@igalia.com>
8685 Unreviewed, add myself as a WebKit committer.
8687 And canonicalize the file as suggested by `check-webkit-style`
8689 * Scripts/webkitpy/common/config/contributors.json:
8691 2018-07-03 Basuke Suzuki <Basuke.Suzuki@sony.com>
8693 check-webkit-style: Run the tool without SVN client.
8694 https://bugs.webkit.org/show_bug.cgi?id=187294
8696 Reviewed by Daniel Bates.
8698 When invoking check-webkit-style without SVN client, the exception was raised and terminated.
8699 Using Git repository is acceptable workflow according to the wording on:
8700 <https://webkit.org/getting-the-code/#checking-out-with-git>
8701 and using Subversion is considered optional by following link:
8702 <https://webkit.org/webkit-on-windows/#installing-developer-tools>.
8703 This patch makes it so that people with only a Git checkout of WebKit that commit using
8704 the commit-queue (or another machine with an SVN checkout) can run check-webkit-style.
8706 * Scripts/webkitpy/common/checkout/scm/svn.py:
8707 (SVN.in_working_directory):
8709 2018-07-03 Aakash Jain <aakash_jain@apple.com>
8711 Remove old JSCTestsFactory
8713 Follow-up fix to r233471.
8715 2018-07-03 Aakash Jain <aakash_jain@apple.com>
8717 [ews-build] Add support for JSC-Tests-EWS
8718 https://bugs.webkit.org/show_bug.cgi?id=187201
8720 Reviewed by Lucas Forschler.
8722 * BuildSlaveSupport/ews-build/factories.py:
8723 (JSCTestsFactory): Added JSCTestsFactory.
8724 * BuildSlaveSupport/ews-build/steps.py:
8725 (CompileJSCOnly): Command to compile JSC.
8726 * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
8727 * BuildSlaveSupport/ews-build/config.json: Changed platform to jsc-only. This matches with build.webkit.org configuration.
8729 2018-07-03 Zalan Bujtas <zalan@apple.com>
8731 [LFC] Add test-list file for regression testing
8732 https://bugs.webkit.org/show_bug.cgi?id=187296
8734 Reviewed by Antti Koivisto.
8736 run-webkit-tests --test-list=./Tools/LayoutReloaded/misc/LFC-passing-tests.txt
8738 * LayoutReloaded/misc/LFC-passing-tests.txt: Added.
8740 2018-07-03 John Wilander <wilander@apple.com>
8742 Resource Load Statistics: Make WebsiteDataStore::getAllStorageAccessEntries() call the right network process instead of iterating over the process pools
8743 https://bugs.webkit.org/show_bug.cgi?id=187277
8744 <rdar://problem/41745510>
8746 Reviewed by Chris Dumez.
8748 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
8749 (WTR::TestController::getAllStorageAccessEntries):
8751 2018-07-02 Wenson Hsieh <wenson_hsieh@apple.com>
8753 Fix a leak in ActionSheetTests.DismissingActionSheetShouldNotDismissPresentingViewController
8754 https://bugs.webkit.org/show_bug.cgi?id=187280
8756 Reviewed by Tim Horton.
8758 Add a missing `adoptNS()`.
8760 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
8761 (TestWebKitAPI::TEST):
8763 2018-07-02 Myles C. Maxfield <mmaxfield@apple.com>
8765 [Cocoa] Google Fonts doesn't work if the user has the requested font locally-installed
8766 https://bugs.webkit.org/show_bug.cgi?id=187228
8767 <rdar://problem/40967280>
8769 Reviewed by Brent Fulgham.
8771 The test only fails before the patch if the lookup for Helvetica2 is allowed to occur.
8773 * WebKitTestRunner/mac/TestControllerMac.mm:
8774 (WTR::allowedFontFamilySet):
8776 2018-07-02 Ryosuke Niwa <rniwa@webkit.org>
8778 run-benchmark should include the version number of MotionMark's results
8779 https://bugs.webkit.org/show_bug.cgi?id=187274
8781 Reviewed by Jon Lee.
8783 Append the version number as a part of the suite name.
8785 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/MotionMark.patch:
8787 2018-07-02 Wenson Hsieh <wenson_hsieh@apple.com>
8789 [WK1] editing/spelling/markers.html is failing on recent builds of macOS Mojave
8790 https://bugs.webkit.org/show_bug.cgi?id=187253
8792 Reviewed by Tim Horton.
8794 Enhances and refactors LayoutTestSpellChecker, which was introduced in r233412.
8796 * DumpRenderTree/TestRunner.cpp:
8797 (setSpellCheckerResultsCallback):
8799 Rename setSpellCheckerTextReplacements to setSpellCheckerResults.
8801 (TestRunner::staticFunctions):
8802 (setSpellCheckerTextReplacementsCallback): Deleted.
8803 * DumpRenderTree/TestRunner.h:
8804 * DumpRenderTree/mac/TestRunnerMac.mm:
8805 (TestRunner::setSpellCheckerResults):
8806 (TestRunner::setSpellCheckerTextReplacements): Deleted.
8807 * DumpRenderTree/win/TestRunnerWin.cpp:
8808 (TestRunner::setSpellCheckerResults):
8809 (TestRunner::setSpellCheckerTextReplacements): Deleted.
8810 * TestRunnerShared/cocoa/LayoutTestSpellChecker.h:
8811 * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
8812 (-[LayoutTestTextCheckingResult initWithType:range:replacement:details:]):
8813 (-[LayoutTestTextCheckingResult grammarDetails]):
8814 (-[LayoutTestSpellChecker reset]):
8815 (-[LayoutTestSpellChecker results]):
8816 (-[LayoutTestSpellChecker setResults:]):
8817 (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]):
8819 Add support for passing in a list of grammar correction detail ranges. Necessary for simulating grammar errors.
8821 (-[LayoutTestSpellChecker checkString:range:types:options:inSpellDocumentWithTag:orthography:wordCount:]):
8823 Tweaked to always call the superclass method. This ensures that we set the `orthography` and `wordCount`
8824 outpointers if applicable.
8826 (-[LayoutTestSpellChecker requestCheckingOfString:range:types:options:inSpellDocumentWithTag:completionHandler:]):
8828 Added support for simulating asynchronous spell checking.
8830 (-[LayoutTestTextCheckingResult initWithType:range:replacement:]): Deleted.
8831 (-[LayoutTestSpellChecker replacements]): Deleted.
8832 (-[LayoutTestSpellChecker setReplacements:]): Deleted.
8833 (-[LayoutTestSpellChecker setReplacementsFromJSObject:inContext:]): Deleted.
8835 2018-07-02 Brady Eidson <beidson@apple.com>
8837 Another unreviewed followup to:
8838 Crash notifying observers of responsiveness state change
8840 * TestWebKitAPI/cocoa/TestWKWebView.h:
8841 * TestWebKitAPI/cocoa/TestWKWebView.mm:
8842 (-[TestWKWebView typeCharacter:]): Move this back to the Mac-only category, as we won't be running this
8843 test on iOS for other reasons.
8845 2018-07-02 Brady Eidson <beidson@apple.com>
8847 Unreviewed followup to:
8848 Crash notifying observers of responsiveness state change
8850 * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerCrash.mm: Need the C-SPI for this test.
8852 2018-07-02 Brady Eidson <beidson@apple.com>
8854 Crash notifying observers of responsiveness state change
8855 <rdar://problem/41267796> and https://bugs.webkit.org/show_bug.cgi?id=187262
8857 Reviewed by Tim Horton.
8859 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
8860 * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerCrash.mm: Added.
8861 (-[RTObserver observeValueForKeyPath:ofObject:change:context:]):
8862 (TestWebKitAPI::TEST):
8863 * TestWebKitAPI/cocoa/TestWKWebView.h:
8864 * TestWebKitAPI/cocoa/TestWKWebView.mm:
8865 (-[TestWKWebView typeCharacter:]):
8866 (-[TestWKWebView hostWindow]):
8868 2018-07-02 Michael Catanzaro <mcatanzaro@igalia.com>
8870 [WPE][GTK] flatpakutils.py should respect set-webkit-configuration build type
8871 https://bugs.webkit.org/show_bug.cgi?id=187218
8873 Reviewed by Philippe Normand.
8875 Using the webkitpy Config module, if the build type is not passed on the command line, we
8876 read it from WebKitBuild/Configuration and respect it.
8878 * flatpak/flatpakutils.py:
8879 (WebkitFlatpak.__init__):
8880 (WebkitFlatpak.clean_args):
8882 2018-07-02 Zan Dobersek <zdobersek@igalia.com>
8884 [WPE] Add touch support to WindowViewBackend
8885 https://bugs.webkit.org/show_bug.cgi?id=187245
8887 Reviewed by Carlos Garcia Campos.
8889 Add touch input support to the WindowViewBackend implementation,
8890 plugging into the Wayland protocol in order to get properly notified
8891 about these events, and then dispatching them against the appropriate
8892 wpe_view_backend object so that WebKit can process them.
8894 * wpe/backends/ViewBackend.cpp:
8895 (WPEToolingBackends::ViewBackend::dispatchInputTouchEvent):
8896 * wpe/backends/ViewBackend.h:
8897 * wpe/backends/WindowViewBackend.cpp:
8898 * wpe/backends/WindowViewBackend.h:
8900 2018-07-02 Rob Buis <rbuis@igalia.com>
8902 [GTK] ASSERTION FAILED: url == m_string in UserAgentQuirks test
8903 https://bugs.webkit.org/show_bug.cgi?id=186838
8905 This URL constructor expects canonicalized input, so fix the passed URL. I missed
8906 this one some weeks ago since I had an older checkout.
8908 Reviewed by Michael Catanzaro.
8910 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
8911 (TestWebKitAPI::TEST):
8913 2018-07-01 Wenson Hsieh <wenson_hsieh@apple.com>
8915 [macOS] Text replacements that end with symbols are expanded immediately
8916 https://bugs.webkit.org/show_bug.cgi?id=187225
8917 <rdar://problem/41112433>
8919 Reviewed by Darin Adler.
8921 Adds testing support for mocking NSSpellChecker's text checking results. See below for more details, and the new
8922 layout test for an example of its usage.
8924 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
8925 * DumpRenderTree/TestRunner.cpp:
8926 (setSpellCheckerTextReplacementsCallback):
8928 Add bindings support in TestRunner to specify a set of text replacement mappings. Each entry in the dictionary
8929 maps a string representing an input to the NSSpellChecker to some information describing the spell checking
8930 result that LayoutTestSpellChecker will return.
8932 (TestRunner::staticFunctions):
8933 * DumpRenderTree/TestRunner.h:
8934 * DumpRenderTree/mac/DumpRenderTree.mm:
8935 (resetWebViewToConsistentStateBeforeTesting):
8937 Restore the original shared NSSpellchecker before transitioning to the next layout test, if needed.
8939 * DumpRenderTree/mac/DumpRenderTreeSpellChecker.mm: Removed.
8940 * DumpRenderTree/mac/TestRunnerMac.mm:
8941 (TestRunner::setSpellCheckerLoggingEnabled):
8942 (TestRunner::setSpellCheckerTextReplacements):
8944 These testRunner methods ensure that `-[NSSpellChecker sharedSpellChecker]` is swizzled to return our mock
8945 LayoutTestSpellChecker instance before calling into it.
8947 * DumpRenderTree/win/TestRunnerWin.cpp:
8948 (TestRunner::setSpellCheckerTextReplacements):
8949 * TestRunnerShared/cocoa/LayoutTestSpellChecker.h: Renamed from Tools/DumpRenderTree/mac/DumpRenderTreeSpellChecker.h.
8950 * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm: Added.
8952 Moved DumpRenderTreeSpellChecker to LayoutTestSpellChecker, and made it compile for both WebKitTestRunner
8953 (modern WebKit) and DumpRenderTree (legacy WebKit) by putting it in TestRunnerShared.
8955 (existingGlobalLayoutTestSpellChecker):
8956 (ensureGlobalLayoutTestSpellChecker):
8957 (stringForCorrectionResponse):
8958 (nsTextCheckingType):
8959 (-[LayoutTestTextCheckingResult initWithType:range:replacement:]):
8960 (-[LayoutTestTextCheckingResult range]):
8961 (-[LayoutTestTextCheckingResult resultType]):
8962 (-[LayoutTestTextCheckingResult replacementString]):
8963 (-[LayoutTestTextCheckingResult description]):
8965 LayoutTestTextCheckingResult represents a fake NSTextCheckingResult containing spell checking results supplied
8968 (+[LayoutTestSpellChecker installIfNecessary]):
8969 (+[LayoutTestSpellChecker uninstallAndReset]):
8971 Helper methods to begin and end swizzling the shared NSSpellChecker.
8973 (-[LayoutTestSpellChecker reset]):
8975 Resets the state of the LayoutTestSpellChecker (this entails clearing the fake replacements dictionary and
8976 turning off logging for recorded spellchecking responses).
8978 (-[LayoutTestSpellChecker replacements]):
8979 (-[LayoutTestSpellChecker setReplacements:]):
8980 (-[LayoutTestSpellChecker setReplacementsFromJSObject:inContext:]):
8982 Helper method to take a `JSObjectRef` supplied by the test runner and transform it into a map of spell checking
8983 string inputs to LayoutTestTextCheckingResults.
8985 (-[LayoutTestSpellChecker checkString:range:types:options:inSpellDocumentWithTag:orthography:wordCount:]):
8987 Consult the text replacement map and bail early if a match is found, before calling into real NSSpellChecker
8988 logic to perform spellchecking.
8990 (-[LayoutTestSpellChecker recordResponse:toCorrection:forWord:language:inSpellDocumentWithTag:]):
8992 Reimplement the original functionality in DumpRenderTreeSpellChecker to make `-recordResponse:…` print to stdout
8993 by overriding the method and printing if the `-spellCheckerLoggingEnabled` property has been set to YES.
8995 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
8997 2018-07-01 Thibault Saunier <tsaunier@igalia.com>
8999 [WPE][GTK] Fix retrieving backtrace from within flatpak sandbox in test runner
9000 https://bugs.webkit.org/show_bug.cgi?id=187232
9002 Reviewed by Michael Catanzaro.
9004 The place where host tmp folder is mounted changed to /run/host/ we
9005 need to take that into account.
9007 Also explicitely close temporary files as relying on garbage collection to
9008 remove them is a bad idea.
9010 Also minor optimization avoiding to compile regex for each backtrace
9013 * Scripts/webkitpy/port/linux_get_crash_log.py:
9014 (GDBCrashLogGenerator):
9015 (GDBCrashLogGenerator._get_tmp_file_name):
9016 (GDBCrashLogGenerator._get_trace_from_systemd):
9018 2018-06-30 Daniel Bates <dabates@apple.com>
9020 test-webkitpy never rebuilds lldbWebKitTester
9021 https://bugs.webkit.org/show_bug.cgi?id=187229
9023 Reviewed by David Kilzer.
9025 Have test-webkitpy always call script build-lldbwebkittester to build lldbWebKitTester, if needed.
9027 Currently test-webkitpy only calls script build-lldbwebkittester if lldbWebKitTester does not
9028 exist in the build products directory for the active configuration (e.g. Debug); => we do not
9029 build lldbWebKitTester again if its source changes (say, as a result of hacking on lldbWebKitTester).
9030 Instead we should have test-webkitpy unconditionally call build-lldbwebkittester to ensure
9031 that we have an up-to-date build of lldbWebKitTester.
9033 * Scripts/webkitpy/test/main.py:
9034 (Tester._run_tests):
9035 (_find_lldb_webkit_tester): Deleted.
9037 2018-06-30 Michael Catanzaro <mcatanzaro@igalia.com>
9039 [CMake] build-webkit should be able to enable address sanitizer
9040 https://bugs.webkit.org/show_bug.cgi?id=187222
9042 Reviewed by Daniel Bates.
9044 If 'set-webkit-configuration --asan' has been run, then build-webkit should pass
9045 -DENABLE_ADDRESS_SANITIZER=ON to CMake, so that it actually does something.
9047 This also works for build-jsc.
9049 * Scripts/webkitdirs.pm:
9050 (generateBuildSystemFromCMakeProject):
9052 2018-06-30 Thibault Saunier <tsaunier@igalia.com>
9054 Make check_flatpak() not verbose when only trying to run command inside flatpak
9055 https://bugs.webkit.org/show_bug.cgi?id=187187
9057 Reviewed by Michael Catanzaro.
9059 * flatpak/flatpakutils.py:
9060 (run_in_sandbox_if_available):
9062 2018-06-29 Daniel Bates <dabates@apple.com>
9064 build-webkit: Perl "use of uninitialized value $previousContents"
9065 https://bugs.webkit.org/show_bug.cgi?id=185776
9067 Reviewed by Michael Catanzaro.
9069 Fixes an issue where reading an empty cached argument file would cause
9070 Perl "uninitialized value" warnings of the form:
9071 Use of uninitialized value $previousContents in chomp at C:/WebKit-BuildWorker/wincairo-wkl-debug/build/Tools/Scripts/webkitdirs.pm line 1969.
9072 Use of uninitialized value $previousContents in string ne at C:/WebKit-BuildWorker/wincairo-wkl-debug/build/Tools/Scripts/webkitdirs.pm line 1972.
9074 * Scripts/webkitdirs.pm:
9075 (isCachedArgumentfileOutOfDate):
9077 2018-06-29 Daniel Bates <dabates@apple.com>
9079 Perl uninitialized value $isEnabled when running build-jsc using a CMake build
9080 https://bugs.webkit.org/show_bug.cgi?id=187208
9082 Reviewed by Tim Horton.
9084 Share logic for computing the feature flags to enable in CMake with both script
9085 build-webkit and script build-jsc instead of duplicating it. This also fixes a
9086 bug in the version of this logic in build-jsc that was inadvertently not updated
9087 in r222394. In r222394 we removed the notion of a default value for a feature flag
9088 listed in webkitperl::FeatureList.
9090 We keep the current behavior of build-jsc and leave it up to the build system
9091 to determine whether to enable or disable ENABLE_EXPERIMENTAL_FEATURES.
9093 * Scripts/build-jsc:
9095 (cMakeArgsFromFeatures): Deleted.
9096 * Scripts/build-webkit:
9097 (cMakeArgsFromFeatures): Deleted; moved to webkitdirs.pm.
9098 * Scripts/webkitdirs.pm:
9099 (cmakeArgsFromFeatures): Moved code from script build-webkit so that it can be shared
9102 2018-06-29 Tim Horton <timothy_horton@apple.com>
9104 Add -apple-color-filter and system appearance toggles to MiniBrowser
9105 https://bugs.webkit.org/show_bug.cgi?id=187210
9107 Reviewed by Simon Fraser.
9109 * MiniBrowser/mac/AppDelegate.m:
9110 (defaultConfiguration):
9111 * MiniBrowser/mac/SettingsController.h:
9112 * MiniBrowser/mac/SettingsController.m:
9113 (-[SettingsController _populateMenu]):
9114 (-[SettingsController validateMenuItem:]):
9115 (-[SettingsController toggleAppleColorFilterEnabled:]):
9116 (-[SettingsController appleColorFilterEnabled]):
9117 (-[SettingsController toggleUseSystemAppearance:]):
9118 (-[SettingsController useSystemAppearance]):
9119 * MiniBrowser/mac/WK1BrowserWindowController.m:
9120 (-[WK1BrowserWindowController didChangeSettings]):
9121 * MiniBrowser/mac/WK2BrowserWindowController.m:
9122 (-[WK2BrowserWindowController didChangeSettings]):
9124 2018-06-29 Aditya Keerthi <akeerthi@apple.com>
9126 [macOS] Do not crash if there is an attempt to copy a file URL to the clipboard
9127 https://bugs.webkit.org/show_bug.cgi?id=187183
9129 Reviewed by Wenson Hsieh.
9131 Added a 'runSingly' option to the TestOptions struct. Setting this option to true
9132 will force a new PlatformWebView to be created before running a test. This ensures
9133 that any state set by previous tests are not preserved.
9135 One example of the importance of having this ability is in the case where we want
9136 to test functionality that deals with read access to files. If a test were to
9137 load a valid file URL, universal read access will be granted in WebProcessProxy.
9138 This prevents us from testing cases that rely on us not have universal read
9139 access. Now, if we write the test using the 'runSingly' option, any state set
9140 by previous tests is cleared. Consequently, our test will behave as expected.
9142 * WebKitTestRunner/PlatformWebView.h:
9143 (WTR::PlatformWebView::viewSupportsOptions const):
9144 * WebKitTestRunner/TestController.cpp:
9145 (WTR::updateTestOptionsFromTestHeader):
9146 * WebKitTestRunner/TestOptions.h:
9147 (WTR::TestOptions::hasSameInitializationOptions const):
9149 2018-06-29 Daniel Bates <dabates@apple.com>
9151 [lldb-webkit] Non-empty strings may be pretty-printed as empty
9152 https://bugs.webkit.org/show_bug.cgi?id=187185
9154 Reviewed by Simon Fraser.
9156 For some reason lldb(1) sometimes has an issue accessing members of WTF::StringImplShape
9157 via a WTF::StringImpl pointer (why?). Explicitly casting a WTF::StringImpl* to a
9158 WTF::StringImplShape* before accessing such members makes LLDB happy.
9160 I tried writing a test for this both for the LLVM project and to add to our lldb_webkit unit
9161 tests to no avail. I have only been able to reproduce this bug sporadically during my WebCore/WebKit
9162 debugging sessions so far.
9164 * lldb/lldb_webkit.py:
9165 (WTFStringImplProvider.__init__): Explicitly cast the WTF::StringImpl* to WTF::StringImplShape*.
9166 (WTFStringImplProvider.get_data8): Update code now that we are directly accessing WTF::StringImplShape*.
9167 (WTFStringImplProvider.get_data16): Ditto.
9169 2018-06-29 Chris Dumez <cdumez@apple.com>
9171 WebKitLegacy: Can trigger recursive loads triggering debug assertions
9172 https://bugs.webkit.org/show_bug.cgi?id=187121
9173 <rdar://problem/41259430>
9175 Reviewed by Brent Fulgham.
9177 Add API test coverage.
9179 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
9180 * TestWebKitAPI/Tests/mac/StartLoadInDidFailProvisionalLoad.mm: Added.
9181 (-[StartLoadInDidFailProvisionalLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
9182 (-[StartLoadInDidFailProvisionalLoadDelegate webView:didFinishLoadForFrame:]):
9183 (TestWebKitAPI::TEST):
9185 2018-06-29 Lucas Forschler <lforschler@apple.com>
9187 Teach bisect-builds to retrieve supported platforms from the rest api.
9188 https://bugs.webkit.org/show_bug.cgi?id=187195
9190 This patch updates bisect-builds to use v2_2 of the API. v2_2 adds two api endpoints: /platforms, and /minified-platforms.
9191 These endpoints scan a dynamoDB database, returning the identifier key for all available platforms.
9192 The identifier keys are in the format: platform-architecture-configuration.
9194 Reviewed by Aakash Jain.
9196 * Scripts/bisect-builds:
9197 (get_api_archive_url): refactored from get_api_url.
9198 (get_platforms): helper function to retrieve from the platforms api.
9199 (minified_platforms): returns a list of minified platforms currently in the database
9200 (unminified_platforms): returns a list of unminified platforms currently in the database
9201 (is_supported_platform): checks if the platform-architecture-configuration combo is supported
9202 (fetch_revision_list): refactored to use get_api_archive_url
9203 (get_api_url): Deleted/refactored to get_api_archive_url.
9205 2018-06-29 Keith Miller <keith_miller@apple.com>
9207 run-jsc should print when jsc exits with non-zero status
9208 https://bugs.webkit.org/show_bug.cgi?id=187192
9210 Reviewed by Saam Barati.
9214 2018-06-29 Aakash Jain <aakash_jain@apple.com>
9216 [ews-build] Add timeout to webkitpy and webkitperl tests
9217 https://bugs.webkit.org/show_bug.cgi?id=187191
9219 Reviewed by Lucas Forschler.
9221 * BuildSlaveSupport/ews-build/steps.py:
9222 (RunWebKitPerlTests.__init__): Set timeout of 2 minutes.
9223 (RunWebKitPyTests.__init__): Ditto.
9224 * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
9226 2018-06-29 Carlos Alberto Lopez Perez <clopez@igalia.com>
9228 [WPE]: Fix exception handling when flatpak is not installed
9229 https://bugs.webkit.org/show_bug.cgi?id=186771
9231 Unreviewed followup-fix after r233362
9233 This was causing failures when flatpak is not installed.
9235 * flatpak/flatpakutils.py:
9238 2018-06-29 Ross Kirsling <ross.kirsling@sony.com>
9240 [JSCOnly] Restore Windows build.
9241 https://bugs.webkit.org/show_bug.cgi?id=187127
9243 Reviewed by Michael Catanzaro.
9245 * Scripts/build-jsc:
9246 Fix condition for disabling FTL JIT on Windows.
9248 * Scripts/webkitdirs.pm:
9249 (executableProductDir):
9250 JSCOnly should still use bin64 on Windows (for consistency with full WebKit build).
9252 JSCOnly already defaults to 64-bit on Windows with Ninja -- ensure that this is true even with MSBuild.
9254 2018-06-29 Thibault Saunier <tsaunier@igalia.com>
9256 [GTK][WPE]: Add a way to setup our development environment inside flatpak
9257 https://bugs.webkit.org/show_bug.cgi?id=186771
9259 Reviewed by Carlos Alberto Lopez Perez.
9261 This patch introduce a way to setup the development environment inside flatpak[0]
9262 removing the need for jhbuild when doing so. Anything needed to build/run minibrowser/ run
9263 layout tests is provided either but the org.gnome.Sdk runtime or built with flatpak-builder.
9265 The workflow is very similar to the "jhbuild based" one except that you should use update-webkit$PORTNAME-flatpak instead
9266 of update-webkit$PORTNAME-libs and that script requires to specify a build configuration (--release is default).
9268 Our scripts have been updated to be able to run inside that new build environment.
9270 Since everything runs inside a flatpak sandbox, gdb needs to be run from within the sandbox, the script exposes a way to do it
9271 easily with the `--gdb` option:
9273 $ webkit-flatpak --gdb [-m COREDUMPCTL MATCHES]
9275 The Layout test `GDBCrashLogGenerator` has been taugth how to use that and is able to retrieve stacktrace as with the jhbuild based workflow.
9277 [0] http://flatpak.org
9279 * Scripts/build-webkit:
9280 * Scripts/generate-jsc-bundle:
9282 * Scripts/run-gtk-tests:
9283 * Scripts/run-minibrowser:
9284 * Scripts/run-webdriver-tests:
9285 * Scripts/run-webkit-tests:
9286 * Scripts/run-wpe-tests:
9287 * Scripts/update-webkitgtk-libs:
9288 * Scripts/update-webkitwpe-libs:
9289 * Scripts/webkit-flatpak: Added.
9290 * Scripts/webkitdirs.pm:
9295 (runInFlatpakIfAvalaible):
9296 (wrapperPrefixIfNeeded):
9298 * Scripts/webkitpy/port/base.py:
9299 (Port._path_to_apache):
9301 (Port._apache_config_file_name_for_platform):
9302 (Port._should_use_flatpak):
9304 (Port._in_flatpak_sandbox):
9305 (Port._should_use_jhbuild):
9306 * Scripts/webkitpy/port/gtk.py:
9307 (GtkPort.setup_environ_for_server):
9308 * Scripts/webkitpy/port/linux_get_crash_log.py:
9309 (GDBCrashLogGenerator._get_trace_from_systemd):
9310 (GDBCrashLogGenerator.generate_crash_log):
9311 * Scripts/webkitpy/port/wpe.py:
9312 (WPEPort.setup_environ_for_server):
9313 * Scripts/webkitpy/w3c/wpt_runner.py:
9315 * flatpak/files/default.xkm: Added.
9316 * flatpak/files/httpd-autogen.sh: Added.
9317 * flatpak/flatpakutils.py: Added.
9321 (remove_extension_points):
9323 (remove_comments._replacer):
9327 (FlatpakObject.__init__):
9328 (FlatpakObject.flatpak):
9330 (FlatpakPackages.__init__):
9331 (FlatpakPackages.__detect_packages):
9332 (FlatpakPackages.__detect_packages.in):
9333 (FlatpakPackages.__detect_runtimes):
9334 (FlatpakPackages.__detect_apps):
9335 (FlatpakPackages.__iter__):
9337 (FlatpakRepos.__init__):
9338 (FlatpakRepos.update):
9341 (FlatpakRepo.__init__):
9342 (FlatpakRepo.repo_file):
9344 (FlatpakPackage.__init__):
9345 (FlatpakPackage.__str__):
9346 (FlatpakPackage.is_installed):
9347 (FlatpakPackage.install):
9348 (FlatpakPackage.update):
9350 (WebkitFlatpak.load_from_args):
9351 (WebkitFlatpak.__init__):
9352 (WebkitFlatpak.check_flatpak):
9353 (WebkitFlatpak.check_flatpak.comparable_version):
9354 (WebkitFlatpak.clean_args):
9355 (WebkitFlatpak.run_in_sandbox):
9356 (WebkitFlatpak.run):
9357 (WebkitFlatpak.has_environment):
9358 (WebkitFlatpak.setup_dev_env):
9359 (WebkitFlatpak.install_all):
9360 (WebkitFlatpak.run_gdb):
9361 (WebkitFlatpak.update_all):
9363 (run_in_sandbox_if_available):
9364 * flatpak/org.webkit.GTK.yaml: Added.
9365 * flatpak/org.webkit.WPE.yaml: Added.
9366 * flatpak/org.webkit.WebKit.yaml: Added.
9367 * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Added.
9368 * flatpak/patches/xvfb-0001-HACK-Avoid-compiling-a-kbm-file.patch: Added.
9370 2018-06-28 Wenson Hsieh <wenson_hsieh@apple.com>
9372 [iOS] DataTransfer.getData always returns the empty string when dropping text
9373 https://bugs.webkit.org/show_bug.cgi?id=187130
9374 <rdar://problem/41014117>
9376 Reviewed by Ryosuke Niwa.
9378 Add 2 new API tests to verify that:
9379 - When dropping an item with text, markup, and URL representations, the page is allowed to get "text/html",
9380 "text/plain" and "text/uri-list" data.
9381 - Adding a suggested name to a plain text item causes WebKit to treat it as a file, and suppress access to
9382 DataTransfer.getData().
9384 Additionally tweaks a couple of existing API tests. Namely, in two API tests
9385 (ExternalSourceOverrideDropFileUpload and ExternalSourceHTMLToUploadArea) only a markup string is dropped, and
9386 we previously expected to handle the drop as a file. To allow this test to continue serving its purpose, tweak
9387 them such that the registered items appear to be file-backed (i.e. by adding a suggested filename in one of the
9388 tests, and specifying UIPreferredPresentationStyleAttachment in the other).
9390 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
9391 (TestWebKitAPI::TEST):
9393 2018-06-28 Basuke Suzuki <Basuke.Suzuki@sony.com>
9395 Unreviewed, rolling out r226652.
9396 https://bugs.webkit.org/show_bug.cgi?id=180827
9398 "PlatformInfo should never be instantiated in isolation. So, PlatformInfo should
9399 not have default argument values. The preferred way to get a PlatformInfo object
9400 is to instantiate a Host object." (Requested by dbates).
9404 "[webkitpy] PlatformInfo should have default argument for casual use"
9405 https://bugs.webkit.org/show_bug.cgi?id=180827
9407 2018-06-28 Simon Fraser <simon.fraser@apple.com>
9409 Try to address test failures on the bots.
9411 Allow the test to distinguish between a failure to find the variable, and an error
9412 reporting vector capacity.
9414 * lldb/lldb_webkit_unittest.py:
9415 (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector):
9416 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
9418 2018-06-28 Lucas Forschler <lforschler@apple.com>
9420 Add Windows support for WEBKIT_API_KEY.
9421 https://bugs.webkit.org/show_bug.cgi?id=187155
9423 Reviewed by Daniel Bates.
9425 * EWSTools/start-queue-win.sh:
9427 2018-06-28 Aakash Jain <aakash_jain@apple.com>
9429 [ews-build] Add support for WebKitPy-Tests-EWS
9430 https://bugs.webkit.org/show_bug.cgi?id=187148
9432 Reviewed by Lucas Forschler.
9434 * BuildSlaveSupport/ews-build/factories.py: Added WebKitPyFactory.
9435 * BuildSlaveSupport/ews-build/steps.py: Added build step RunWebKitPyTests.
9436 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
9437 * BuildSlaveSupport/ews-build/config.json: Updated to use CamelCase.
9439 2018-06-28 Daniel Bates <dabates@apple.com>
9441 Fix the iOS build following r233299
9442 (https://bugs.webkit.org/show_bug.cgi?id=183744)
9444 Only build lldbWebKitTester on Mac as that is the only supported platform at the time of writing.
9448 2018-06-28 Sihui Liu <sihui_liu@apple.com>
9450 Cookie API: cookie creation time is wrong
9451 https://bugs.webkit.org/show_bug.cgi?id=187101
9453 Reviewed by Geoffrey Garen.
9455 Add test coverage: make sure the cookie creation time returned is the same as set.
9457 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
9460 2018-06-28 Simon Fraser <simon.fraser@apple.com>
9462 The lldb vector summary provider always shows zero capacity
9463 https://bugs.webkit.org/show_bug.cgi?id=187132
9465 Reviewed by Daniel Bates.
9467 WTFVectorProvider in lldb_webkit.py was calling GetChildMemberWithName('m_capacity')
9468 on the buffer instead of the valobj.
9470 * lldb/lldbWebKitTester/main.cpp:
9471 (testSummaryProviders):
9472 * lldb/lldb_webkit.py:
9473 (WTFVectorProvider.update):
9474 * lldb/lldb_webkit_unittest.py:
9475 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string):
9476 (TestSummaryProviders):
9477 (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector):
9478 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
9480 2018-06-28 Adam Barth <abarth@webkit.org>
9482 Switch OS(FUCHSIA) to using JSCOnly
9483 https://bugs.webkit.org/show_bug.cgi?id=187133
9485 Reviewed by Yusuke Suzuki.
9487 Switch Fuchsia from being a port to just being an OS. We now use a
9488 CMAKE_TOOLCHAIN_FILE to configure the toolchain and the target triple.
9490 * Scripts/webkitdirs.pm: Remove isFuchsia() and clients. Turns out we
9491 can do everything we need using a CMAKE_TOOLCHAIN_FILE via the
9494 2018-06-27 Ryosuke Niwa <rniwa@webkit.org>
9496 Make MotionMark's plan file more robust against code changes
9497 https://bugs.webkit.org/show_bug.cgi?id=187116
9498 <rdar://problem/41533956>
9500 Reviewed by Saam Barati.
9502 Moved the code to auto-start the test to the load event listener.
9504 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/MotionMark.patch:
9506 2018-06-27 Daniel Bates <dabates@apple.com>
9508 Add some tests for lldb_webkit.py
9509 https://bugs.webkit.org/show_bug.cgi?id=183744
9511 Reviewed by Alexey Proskuryakov.
9513 Adds some tests to ensure we do not regress LLDB pretty-printing of WTF::StringImpl
9514 and WTF::String objects.
9516 The tests make use of the LLDB Python API (lldb.py) and a simple debug-built test
9517 program, lldbWebKitTester, to run. For now, we only support building lldbWebKitTester
9520 * Makefile: Build the simple test tool lldbWebKitTester on Mac.
9521 * Scripts/build-lldbwebkittester: Added.
9522 (buildProjectOrDie):
9523 * Scripts/dump-class-layout: Extract logic to compute the path to the LLDB Python module
9524 from here to Scripts/webkitpy/common/system/systemhost.py so that it can used by both
9525 this script and lldb/lldb_webkit_unittest.py. Also import the lldb module at the top of
9526 the file and take advantage of Python's default error semantics to throw an exception
9527 if the import fails instead of handling it ourself. This has the side effect that we
9528 now always import the LLDB Python module even if this script is invoked with --help.
9529 If this turns out to be a significant annoyance then we can look to dynamically import
9530 the module as we did before this change.
9533 (developer_dir): Deleted.
9534 (import_lldb): Deleted.
9535 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py: Update FIXME comment to reflect
9536 that fact that test-webkitpy does not support class and module fixtures. This is because
9537 test-webkitpy currently implements parallelism by breaking down existing test classes
9538 into individual test methods itself and having each worker run exactly one test method (via
9539 unittest.TestLoader.loadTestsFromName()) at a time. As a result of this reorganization,
9540 setUpModule()/setUpClass() are called for each test method as opposed to once per test
9542 (remove_dir): Ditto.
9543 * Scripts/webkitpy/common/system/systemhost.py:
9545 (SystemHost.path_to_lldb_python_directory): Added.
9546 * Scripts/webkitpy/test/main.py:
9547 (_find_lldb_webkit_tester): Returns whether there exists a Debug or Release-built lldbWebKitTester.
9548 (_build_lldb_webkit_tester): Builds lldbWebKitTester. For now, we only support building
9549 lldbWebKitTester on Mac.
9550 (main): Add Tools/lldb to the test search path if the platform has lldb.py.
9551 (Tester.run): Pass a boolean as to whether we will run the lldb_webkit unit tests.
9552 (Tester._run_tests): Modified to take a boolean as to whether to run the lldb_webkit unit tests.
9553 If we will run these tests then build lldbWebKitTester if it has not already been built as the
9554 unit tests depend on this program.
9555 * lldb/lldbWebKitTester/Configurations/Base.xcconfig: Added.
9556 * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig: Added.
9557 * lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: Added.
9558 * lldb/lldbWebKitTester/Makefile: Added.
9559 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Added.
9560 * lldb/lldbWebKitTester/main.cpp: Added.
9561 (breakForTestingSummaryProviders):
9563 (testSummaryProviders):
9565 * lldb/lldb_webkit_unittest.py: Added.
9566 (destroy_cached_debug_session):
9568 (LLDBDebugSession.setup):
9569 (LLDBDebugSession.tearDown):
9570 (TestSummaryProviders):
9571 (TestSummaryProviders.setUpClass):
9572 (TestSummaryProviders._sbFrame):
9573 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_null_string):
9574 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_empty_string):
9575 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_8bit_string):
9576 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_16bit_string):
9577 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_null_string):
9578 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_empty_string):
9579 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_8bit_string):
9580 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string):
9582 2018-06-27 Adam Barth <abarth@webkit.org>
9584 Add Fuchsia support to build-jsc
9585 https://bugs.webkit.org/show_bug.cgi?id=187086
9587 Reviewed by Yusuke Suzuki.
9589 Add Fuchsia port to webkitdirs.pm. This patch is sufficient to make
9590 build-jsc kick off a cmake for Fuchsia.
9592 * Scripts/webkitdirs.pm:
9593 (determineSourceDir):
9594 (argumentsForConfiguration):
9595 (determineXcodeSDK):
9596 (findMatchingArguments):
9597 (determinePortName):
9600 (wrapperPrefixIfNeeded):
9601 (relaunchIOSSimulator):
9604 2018-06-27 Daniel Bates <dabates@apple.com>
9606 style-queue "AttributeError: 'NoneType' object has no attribute 'is_obsolete'" when processing security patch
9607 https://bugs.webkit.org/show_bug.cgi?id=187120
9609 Reviewed by David Kilzer.
9611 Teach the style queue how to refetch a patch from the status server as we did for non-Style
9614 * Scripts/webkitpy/tool/bot/stylequeuetask.py:
9615 (StyleQueueTask.validate): Similar to change made to EarlyWarningSystemTask.validate() in r233107,
9616 only check if the bug associated with the patch we are processing is closed if the attachment has a
9617 non-None Bug object.
9618 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
9619 (AbstractEarlyWarningSystem.refetch_patch): Extract logic to refetch a patch from here...
9620 * Scripts/webkitpy/tool/commands/queues.py:
9621 (PatchProcessingQueue._refetch_patch): ... to here.
9622 (StyleQueue.refetch_patch): Turn around and call PatchProcessingQueue._refetch_patch().
9624 2018-06-27 Tadeu Zagallo <tzagallo@apple.com>
9626 Unreviewed, add myself as a WebKit committer.
9628 * Scripts/webkitpy/common/config/contributors.json:
9630 2018-06-27 Daniel Bates <dabates@apple.com>
9632 webkit-patch should ignore non-ASCII characters in the status server API key
9633 https://bugs.webkit.org/show_bug.cgi?id=187107
9635 Reviewed by Lucas Forschler.
9637 The API key should only consists of ASCII characters. If it contains any
9638 non-ASCII characters then log a warning and ignore them.
9640 * Scripts/webkitpy/common/net/statusserver.py:
9641 (StatusServer.set_api_key): Force conversion to ASCII.
9642 * Scripts/webkitpy/tool/main.py:
9643 (WebKitPatch._status_server_api_key): Convert to ASCII, ignoring non-ASCII
9644 characters and logging a warning.
9646 2018-06-27 Jonathan Bedard <jbedard@apple.com>
9648 Enable WebKit iOS 12 build
9649 https://bugs.webkit.org/show_bug.cgi?id=187024
9650 <rdar://problem/39759057>
9652 Reviewed by David Kilzer.
9654 * Scripts/configure-xcode-for-ios-development:
9655 (copyMissingHeadersFromSDKToSDKIfNeeded): Copy launch.h into embedded SDKs.
9657 2018-06-27 Robin Morisset <rmorisset@apple.com>
9659 [WSL] Add a control-flow stack to the execution rules in WSL.ott
9660 https://bugs.webkit.org/show_bug.cgi?id=186310
9662 Rubberstamped by Filip Pizlo.
9664 The goal of this is to enable (future) rules about uniform control flow for barriers.
9665 It required adding two new special construct: Join(s) and JoinExpr(e) whose only role is to pop the last element of the stack.
9667 * WebGPUShadingLanguageRI/SpecWork/WSL.ott:
9669 2018-06-27 Robin Morisset <rmorisset@apple.com>
9671 [WSL] Fix minor formatting issues in the grammar section
9672 https://bugs.webkit.org/show_bug.cgi?id=186310
9674 Rubberstamped by Filip Pizlo.
9676 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
9678 2018-06-27 Robin Morisset <rmorisset@apple.com>
9680 [WSL] Put the full grammar in the Sphinx document
9681 https://bugs.webkit.org/show_bug.cgi?id=186310
9683 Rubberstamped by Filip Pizlo.
9685 Put the grammar's production rules in the Sphinx document, along with a few comments and the rules for desugaring.
9686 Also includes a bit of clean-up of the antlr rules.
9688 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
9689 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
9691 2018-06-26 Chris Dumez <cdumez@apple.com>
9693 Deal better with the network process crashing on startup
9694 https://bugs.webkit.org/show_bug.cgi?id=187065
9695 <rdar://problem/41451622>
9697 Reviewed by Geoffrey Garen.
9699 Add layout test coverage.
9701 * TestWebKitAPI/Tests/WebKit/NetworkProcessCrashWithPendingConnection.mm:
9702 (-[MonitorWebContentCrashNavigationDelegate _webView:webContentProcessDidTerminateWithReason:]):
9703 (-[MonitorWebContentCrashNavigationDelegate webView:didFinishNavigation:]):
9704 (TestWebKitAPI::TEST):
9706 2018-06-25 Yusuke Suzuki <utatane.tea@gmail.com>
9708 Remove static initializers more
9709 https://bugs.webkit.org/show_bug.cgi?id=186969
9711 Reviewed by Michael Catanzaro.
9713 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
9714 (WTR::assignedUrlsCache):
9715 (WTR::dumpResourceURL):
9716 (WTR::InjectedBundlePage::resetAfterTest):
9717 (WTR::InjectedBundlePage::didInitiateLoadForResource):
9718 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
9719 (WTR::AccessibilityNotificationHandler::setNotificationFunctionCallback):
9720 (WTR::AccessibilityNotificationHandler::removeAccessibilityNotificationHandler):
9721 (WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
9722 (WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks):
9723 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
9724 (WTR::AccessibilityUIElement::stringAttributeValue):
9725 Use NeverDestroyed<> and static functions.
9727 2018-06-26 Aakash Jain <aakash_jain@apple.com>
9729 [ews-build] Add support for compiling WebKit
9730 https://bugs.webkit.org/show_bug.cgi?id=187019
9732 Reviewed by Lucas Forschler.
9734 * BuildSlaveSupport/ews-build/steps.py:
9735 (CompileWebKit): Added, class to compile WebKit.
9736 (CleanBuild): Added, class to clean up the build.
9737 (KillOldProcesses): Added, class to kill old processes.
9738 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
9739 * BuildSlaveSupport/ews-build/config.json: Renamed ios-11-simulator to ios-simulator-11, to match with build.webkit.org code.
9740 Added configuration, architecture which is required for compiling. Renamed Release to release as the tools expect lower-case release.
9741 * BuildSlaveSupport/ews-build/factories.py: Added BuildFactory.
9742 * BuildSlaveSupport/ews-build/loadConfig.py: Renamed configuraton value to lower-case as tools expect lower-case values.
9743 * BuildSlaveSupport/ews-build/loadConfig_unittest.py: Ditto.
9745 2018-06-26 Aakash Jain <aakash_jain@apple.com>
9747 [ews-build] Add support for WebKitPerl-Tests-EWS
9748 https://bugs.webkit.org/show_bug.cgi?id=187023
9750 Reviewed by Lucas Forschler.
9752 * BuildSlaveSupport/ews-build/config.json: Added WebKitPerl-tests-EWS.
9753 * BuildSlaveSupport/ews-build/factories.py: Added WebKitPerlFactory.
9754 * BuildSlaveSupport/ews-build/steps.py: Added build step RunWebKitPerlTests.
9755 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-test.
9757 2018-06-26 Aakash Jain <aakash_jain@apple.com>
9759 [build.webkit.org] Rename badly named variable kls to schedulerType
9760 https://bugs.webkit.org/show_bug.cgi?id=186926
9762 Reviewed by Lucas Forschler.
9764 * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
9765 (loadBuilderConfig): Renamed kls to schedulerType.
9767 2018-06-26 Daniel Bates <dabates@apple.com>
9769 EWS should pass --status-host-uses-http when invoking webkit-patch, if needed
9770 https://bugs.webkit.org/show_bug.cgi?id=187061
9772 Reviewed by Per Arne Vollan.
9774 When EWS invokes webkit-patch to perform an operation (e.g. apply an attachment)
9775 it should pass the command line option --status-host-uses-http, if EWS was
9776 started with this command line option, so that we query the status server over
9777 HTTP in child "webkit-patch" processes as we do in the main EWS process.
9779 * Scripts/webkitpy/common/net/statusserver_mock.py:
9780 (MockStatusServer.__init__):
9781 * Scripts/webkitpy/tool/commands/queues.py:
9782 (AbstractQueue.run_webkit_patch):
9784 2018-06-26 Daniel Bates <dabates@apple.com>
9786 webkit-patch: Make attachment commands work with status-server hosted attachments
9787 https://bugs.webkit.org/show_bug.cgi?id=187056
9789 Reviewed by Per Arne Vollan.
9791 Allow the EWS bots to apply, build, test, check-style, and (in the future) land
9792 attachments hosted on the status server. We only download an attachment from the
9793 status server if we do not have sufficient permission to download it from Bugzilla
9794 (e.g. security-sensitive patches).
9796 A valid status server API key is required to run these commands by hand. Otherwise,
9797 the status server will not provide attachment data.
9799 * Scripts/webkitpy/common/net/statusserver_mock.py:
9800 (MockStatusServer.fetch_attachment): Log a message for testing purposes.
9801 * Scripts/webkitpy/tool/commands/download.py:
9802 (ProcessAttachmentsMixin._fetch_list_of_patches_to_process): Fetch the attachment
9803 from the status server if we do not have permission to fetch it from Bugzilla.
9804 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
9805 (EarlyWarningSystemTest._default_expected_logs): Update expected result when
9806 using a custom work item and when fetching an attachment from the status server.
9807 (_test_ews): Modified to take use_security_sensitive_patch (defaults to False) as
9808 to whether to use a security-sensitive patch when testing.
9809 (test_ewses_with_security_sensitive_patch): Added.
9811 2018-06-26 Daniel Bates <dabates@apple.com>
9813 contributors.json fails to parse after r233209
9815 Removing trailing ',' that caused this file to be malformed. Also ran
9816 "validate-committer-lists -c" to canonicalize the style of this file.
9818 * Scripts/webkitpy/common/config/contributors.json:
9820 2018-06-26 Timothy Horton <timothy_horton@apple.com>
9822 Add Aditya to contributors.json as a contributor
9824 * Scripts/webkitpy/common/config/contributors.json:
9826 2018-06-26 Brent Fulgham <bfulgham@apple.com>
9828 Provide a way for Injected Bundles to indicate classes approved for NSSecureCoding
9829 https://bugs.webkit.org/show_bug.cgi?id=186788
9830 <rdar://problem/41094167>
9832 Reviewed by Chris Dumez.
9834 Add a new test case to exercise the class check during NSSecureCoding.
9836 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
9837 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleObject.h: Added.
9838 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleObject.mm: Added.
9839 (-[CustomBundleObject initWithValue:]):
9840 (+[CustomBundleObject supportsSecureCoding]):
9841 (-[CustomBundleObject copyWithZone:]):
9842 (-[CustomBundleObject initWithCoder:]):
9843 (-[CustomBundleObject encodeWithCoder:]):
9844 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm: Added.
9845 (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
9846 (TestWebKitAPI::didFinishLoadForFrame):
9847 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter_Bundle.mm: Added.
9848 (TestWebKitAPI::CustomBundleParameterTest::CustomBundleParameterTest):
9849 (TestWebKitAPI::CustomBundleParameterTest::didCreatePage):
9851 2018-06-25 Daniel Bates <dabates@apple.com>
9853 Log a message when fetching attachment data from the status server
9854 https://bugs.webkit.org/show_bug.cgi?id=187032
9856 Reviewed by Zalan Bujtas.
9858 Currently we silently fetch from the status server an attachment when fetching
9859 the attachment from Bugzilla fails due to an access denied error. Instead we
9860 should emit a message when fetching data from the status server to indicate
9861 that webkit-patch/EWS is still processing the command/trying to obtain the
9864 * Scripts/webkitpy/common/net/statusserver.py:
9865 (StatusServer._fetch_attachment_page):
9867 2018-06-25 Aakash Jain <aakash_jain@apple.com>
9869 [ews-build] Add support for Bindings-tests-EWS
9870 https://bugs.webkit.org/show_bug.cgi?id=187014
9872 Reviewed by Lucas Forschler.
9874 * BuildSlaveSupport/ews-build/factories.py:
9875 (BindingsFactory): Added RunBindingsTests build step to BindingsFactory.
9876 * BuildSlaveSupport/ews-build/steps.py:
9877 (RunBindingsTests): Added build-step for running Bindings tests.
9878 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
9880 2018-06-25 Aakash Jain <aakash_jain@apple.com>
9882 [ews-build] Add support for Style-EWS
9883 https://bugs.webkit.org/show_bug.cgi?id=186955
9885 Reviewed by Lucas Forschler.
9887 * BuildSlaveSupport/ews-build/factories.py:
9888 (Factory): Base class for all the factory.
9889 * BuildSlaveSupport/ews-build/loadConfig.py: Initialize factory with required parameters.
9890 * BuildSlaveSupport/ews-build/runUnittests.py: Added, script to run all the unit tests.
9891 * BuildSlaveSupport/ews-build/steps.py: Added.
9892 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
9894 2018-06-25 Youenn Fablet <youenn@apple.com>
9896 Add API to control mock media devices
9897 https://bugs.webkit.org/show_bug.cgi?id=186958
9899 Reviewed by Eric Carlson.
9901 Add test runner API to clear/add/remove/reset mock media devices.
9903 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
9904 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
9905 (WTR::TestRunner::addMockMediaDevice):
9906 (WTR::TestRunner::addMockCameraDevice):
9907 (WTR::TestRunner::addMockMicrophoneDevice):
9908 (WTR::TestRunner::addMockScreenDevice):
9909 (WTR::TestRunner::clearMockMediaDevices):
9910 (WTR::TestRunner::removeMockMediaDevice):
9911 (WTR::TestRunner::resetMockMediaDevices):
9912 * WebKitTestRunner/InjectedBundle/TestRunner.h:
9913 * WebKitTestRunner/TestController.cpp:
9914 (WTR::TestController::addMockMediaDevice):
9915 (WTR::TestController::clearMockMediaDevices):
9916 (WTR::TestController::removeMockMediaDevice):
9917 (WTR::TestController::resetMockMediaDevices):
9918 * WebKitTestRunner/TestController.h:
9919 * WebKitTestRunner/TestInvocation.cpp:
9920 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
9922 2018-06-25 Aakash Jain <aakash_jain@apple.com>
9924 [ews-build] Add support for try Buildbot try schedulers
9925 https://bugs.webkit.org/show_bug.cgi?id=186948
9927 Reviewed by Lucas Forschler.
9929 * BuildSlaveSupport/ews-build/config.json: Use Try_Userpass scheduler.
9930 * BuildSlaveSupport/ews-build/loadConfig.py: Updated to use try scheduler.
9932 2018-06-25 Ross Kirsling <ross.kirsling@sony.com>
9934 [WinCairo] Unreviewed build fix for r233088.
9936 * BuildSlaveSupport/built-product-archive:
9937 (extractBuiltProduct):
9938 "move" throws instead of overwriting, so just use "copy" instead.
9940 2018-06-25 Leo Balter <leonardo.balter@gmail.com>
9942 [test262-runner] Sort the list of failing files in the HTML report
9943 https://bugs.webkit.org/show_bug.cgi?id=186998
9945 Reviewed by Michael Saboff.
9947 * Scripts/test262/Runner.pm:
9948 (printHTMLResults): The current list of failing files it not ordered and it's hard to read.
9949 This small patch will sort the list.
9951 2018-06-25 Robin Morisset <rmorisset@apple.com>
9953 [WSL] Start writing the Sphinx document
9954 https://bugs.webkit.org/show_bug.cgi?id=186310
9956 Rubberstamped by Filip Pizlo.
9958 Very early work, just has the lexer and a few fragments of the parser so far.
9959 Also fixing some minor mistake in the formal rules.
9961 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
9962 * WebGPUShadingLanguageRI/SpecWork/WSL.ott:
9963 * WebGPUShadingLanguageRI/SpecWork/source/conf.py:
9964 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
9966 2018-06-23 Yusuke Suzuki <utatane.tea@gmail.com>
9968 [WTF] Add user-defined literal for ASCIILiteral
9969 https://bugs.webkit.org/show_bug.cgi?id=186839
9971 Reviewed by Darin Adler.
9973 * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
9974 (TestWebKitAPI::TEST):
9975 * TestWebKitAPI/Tests/WTF/WTFString.cpp:
9976 (TestWebKitAPI::TEST):
9977 * TestWebKitAPI/Tests/WTF/WorkerPool.cpp:
9978 (TestWebKitAPI::TEST):
9979 * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
9981 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
9982 (TestWebKitAPI::TEST_F):
9983 * TestWebKitAPI/Tests/WebCore/URL.cpp:
9984 (TestWebKitAPI::TEST_F):
9985 * TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
9986 (TestWebKitAPI::TEST):
9987 * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm:
9988 (TestWebKitAPI::TEST_F):
9989 * TestWebKitAPI/Tests/WebCore/mac/GPUTest.h:
9990 * TestWebKitAPI/Tests/WebKitCocoa/ContentFilteringPlugIn.mm:
9991 (-[MockContentFilterEnabler initWithCoder:]):
9992 * TestWebKitAPI/Tests/mac/ContentFiltering.mm:
9993 (TestWebKitAPI::loadAlternateTest):
9995 2018-06-22 Brady Eidson <beidson@apple.com>
9997 WKURLSchemeHandler doesn't handle sync XHR.
9998 <rdar://problem/40955884> and https://bugs.webkit.org/show_bug.cgi?id=186902
10000 Reviewed by Chris Dumez.
10002 * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
10003 (-[SyncScheme webView:startURLSchemeTask:]):
10004 (-[SyncScheme webView:stopURLSchemeTask:]):
10005 (-[SyncMessageHandler userContentController:didReceiveScriptMessage:]):
10008 2018-06-22 Daniel Bates <dabates@apple.com>
10010 Security EWS: bots fails with exception 'NoneType' object has no attribute 'is_closed'
10011 https://bugs.webkit.org/show_bug.cgi?id=186923
10013 Reviewed by Lucas Forschler.
10015 Attachments downloaded from the status server (http://webkit-queues.webkit.org) do not
10016 have an associated Bug object (i.e. Attachment.bug() is None) and reflect the state they
10017 were in, including flags set, at the time they were uploaded to the status server. We
10018 will add support for fetching up-to-date status info about the attachment and its bug
10019 in <https://bugs.webkit.org/show_bug.cgi?id=186817>. For now, we only check if the
10020 bug associated with the patch we are processing is closed if the attachment has a
10021 non-None Bug object.
10023 * Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
10024 (EarlyWarningSystemTask.validate):
10026 2018-06-22 Ross Kirsling <ross.kirsling@sony.com>
10028 [Win] ImageDiff should use DLLLauncher
10029 https://bugs.webkit.org/show_bug.cgi?id=186927
10031 ImageDiff should use DLLLauncher to find DLLs under WEBKIT_LIBRARIES, in the same way as DRT & TestWebKitAPI.
10033 Reviewed by Per Arne Vollan.
10035 * ImageDiff/CMakeLists.txt:
10036 * ImageDiff/ImageDiff.cpp:
10037 (dllLauncherEntryPoint):
10038 * ImageDiff/PlatformWin.cmake:
10040 2018-06-22 Basuke Suzuki <Basuke.Suzuki@sony.com>
10042 [style] Fix --git-index option for check-webkit-style command
10043 https://bugs.webkit.org/show_bug.cgi?id=186810
10045 When --git-index is specified, it should be compared with HEAD, not the origin/master.
10047 Reviewed by Daniel Bates.
10049 * Scripts/webkitpy/common/checkout/scm/git.py:
10050 (Git.create_patch):
10051 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
10052 (test_create_patch_with_git_index): Added.
10054 2018-06-22 Ryan Haddad <ryanhaddad@apple.com>
10056 Unreviewed, fix syntax error introduced by r233088.
10058 * BuildSlaveSupport/built-product-archive:
10059 (extractBuiltProduct):
10061 2018-06-22 Ross Kirsling <ross.kirsling@sony.com>
10063 [WinCairo][Buildbot] Test bots should use same WinCairoRequirements version as the triggering build
10064 https://bugs.webkit.org/show_bug.cgi?id=186857
10066 Reviewed by Lucas Forschler.
10068 * BuildSlaveSupport/built-product-archive:
10069 (archiveBuiltProduct):
10070 (extractBuiltProduct):
10071 Save and restore the WinCairoRequirements version using the build archive.
10073 * Scripts/download-github-release.py: Renamed from Tools/Scripts/download-latest-github-release.py.
10074 Generalize download script -- get the latest version by default, but allow an arbitrary version to be specified.
10076 * Scripts/update-vswhere.py:
10077 Consume renamed script.
10079 * Scripts/update-webkit-wincairo-libs.py:
10080 Consume renamed script and specify a version to download when a config file is present.
10082 2018-06-20 Darin Adler <darin@apple.com>
10084 [Cocoa] Use the isDirectory: variants of NSURL methods more to eliminate unnecessary file system activity
10085 https://bugs.webkit.org/show_bug.cgi?id=186875
10087 Reviewed by Anders Carlsson.
10089 * DumpRenderTree/mac/DumpRenderTree.mm:
10090 (activateTestingFonts): Use isDirectory:NO to create a URL for a font file.
10091 * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
10092 (WTR::activateFonts): Ditto.
10093 (WTR::installFakeHelvetica): Ditto.
10095 2018-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
10097 [GTK] WebDriver: use a dictionary for session capabilities in StartAutomationSession message
10098 https://bugs.webkit.org/show_bug.cgi?id=186915
10100 Reviewed by Žan Doberšek.
10102 Update /webkit/WebKitAutomationSession/request-session to use the new StartAutomationSession message signature.
10104 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
10106 2018-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
10108 Unreviewed. Fix GLib test /webkit/WebKitSecurityManager/file-xhr after r231000
10110 We are now receiving two console messages instead of one. Simply update the test to check both messages.
10112 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
10113 (consoleMessageReceivedCallback):
10114 (testWebContextSecurityFileXHR):
10116 2018-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
10118 Unreviewed GLib gardening. Update expectations of TestSSL.
10120 /webkit/WebKitWebView/tls-errors-policy and /webkit/WebKitWebView/load-failed-with-tls-errors are failing only
10123 * TestWebKitAPI/glib/TestExpectations.json:
10125 2018-06-21 Daniel Bates <dabates@apple.com>
10127 EWS for security bugs
10128 https://bugs.webkit.org/show_bug.cgi?id=186291
10129 <rdar://problem/40829658>
10131 Substitute webkit.status-api-key for webkit.status_api_key as Git configuration variables can
10132 only consist of alphanumeric characters and underscores (_) per the second paragraph of section
10133 Configuration File of <https://git-scm.com/docs/git-config/2.18.0#_configuration_file>:
10135 The variable names are case-insensitive, allow only alphanumeric characters and -, and must
10136 start with an alphabetic character.
10138 * Scripts/webkitpy/tool/main.py:
10139 (WebKitPatch._status_server_api_key_from_git):
10141 2018-06-21 Daniel Bates <dabates@apple.com>
10143 EWS for security bugs
10144 https://bugs.webkit.org/show_bug.cgi?id=186291
10145 <rdar://problem/40829658>
10147 In r232979, I inadvertently removed a line of code in _parse_authorized_api_keys() to define a local called api_keys.
10148 Add this code back.
10150 * QueueStatusServer/config/authorization.py:
10151 (_parse_authorized_api_keys):
10153 2018-06-21 Daniel Bates <dabates@apple.com>
10155 EWS should not try to post comments or upload result archives to security-sensitive
10156 bugs unless it has access
10157 https://bugs.webkit.org/show_bug.cgi?id=186831
10159 Reviewed by Lucas Forschler.
10161 Following r232979 security-sensitive patches are uploaded to the status server so
10162 that they can be retrieved and processed by EWS bots without the need for Bugzilla
10163 security bug access. Although the EWS machinery is robust against unexpected exceptions,
10164 including exceptions raised when interacting with Bugzilla bugs/attachments with
10165 insufficient credentials, we should not depend on such defenses as they cause webkit-
10166 patch to log a message for the "unexpected" exception. We should reserve such logging
10167 for truly unexpected exceptions that indicate a programming mistake that we need to fix.
10169 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
10170 (AbstractEarlyWarningSystem._post_reject_message_on_bug): Bail out early if we cannot
10172 * Scripts/webkitpy/tool/commands/queues.py:
10173 (PatchProcessingQueue._can_access_bug): Added.
10174 (PatchProcessingQueue._upload_results_archive_for_patch): Only add an attachment if we
10175 can access the bug.
10176 (CommitQueue.process_work_item): Only post a rejection comment (i.e. call CommitterValidatorreject_patch_from_commit_queue())
10177 if we can access the bug.
10179 2018-06-21 Lucas Forschler <lforschler@apple.com>
10181 bisect-builds --list not showing all builds
10182 https://bugs.webkit.org/show_bug.cgi?id=185790
10184 The AWS Gateway API call into dynamoDB is limited to returning 1MB of query data. Our archive set has overgrown this limit,
10185 causing us to retrieve a truncated list of results. Fortunately, when this limit is reached, dynamoDB returns a
10186 "LastEvaluatedKey", which can be used to continue the query in another request.
10188 This patch teaches bisect-build to pass along this key when needed. The backend api was updated from v2 to v2_1 to support
10189 this new querystring option. Any existing code using v2 will not be affected.
10191 Reviewed by Aakash Jain.
10193 * Scripts/bisect-builds:
10194 (get_api_url): added optional LastEvaluatedKey argument, which will append the query string to the base api url.
10195 (fetch_revision_list): Added to allow a recursive call which will query until we retrieve every item requested.
10196 (main): teach how to use fetch_revision_list.
10198 2018-06-21 Keith Rollin <krollin@apple.com>
10200 check-webkit-style should warn about exported inline functions
10201 https://bugs.webkit.org/show_bug.cgi?id=186861
10202 <rdar://problem/41303668>
10204 Reviewed by Brent Fulgham.
10206 When checking binaries compiled with LTO enabled, WebKit's
10207 check-for-weak-vtables-and-externals script can complain about
10208 exported inline functions. For instance, in
10209 Source/WebCore/page/scrolling/ScrollingTree.h, the following:
10211 WEBCORE_EXPORT virtual void reportSynchronousScrollingReasonsChanged(MonotonicTime, SynchronousScrollingReasons) { }
10212 WEBCORE_EXPORT virtual void reportExposedUnfilledArea(MonotonicTime, unsigned /* unfilledArea */) { }
10214 Can result in the following error messages:
10216 ERROR: WebCore has a weak external symbol in it (.../OpenSource/WebKitBuild/Release/WebCore.framework/Versions/A/WebCore)
10217 ERROR: A weak external symbol is generated when a symbol is defined in multiple compilation units and is also marked as being exported from the library.
10218 ERROR: A common cause of weak external symbols is when an inline function is listed in the linker export file.
10219 ERROR: symbol __ZN7WebCore13ScrollingTree25reportExposedUnfilledAreaEN3WTF13MonotonicTimeEj
10220 ERROR: symbol __ZN7WebCore13ScrollingTree40reportSynchronousScrollingReasonsChangedEN3WTF13MonotonicTimeEj
10222 Unfortunately, these errors are only emitted when LTO is enabled,
10223 meaning that a developer could check-in a file that will fail an LTO
10224 build if they don't build with that option locally. Therefore, try to
10225 head this off by updating check-webkit-style to identify and warn
10226 about these cases (which includes when an export macro is applied
10227 directly to an inline method as well as when an inline method is part
10228 of an exported class).
10230 * Scripts/webkitpy/style/checkers/cpp.py:
10231 (_FunctionState.begin):
10232 (_FunctionState.export_macro):
10233 (_ClassInfo.__init__):
10234 (check_for_non_standard_constructs):
10235 (check_function_definition):
10238 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
10239 (FunctionDetectionTest.perform_function_detection):
10240 (FunctionDetectionTest.test_webcore_export):
10242 2018-06-21 Aakash Jain <aakash_jain@apple.com>
10244 [ews-build] unit-tests fail when run from another directory
10245 https://bugs.webkit.org/show_bug.cgi?id=186872
10247 Reviewed by Lucas Forschler.
10249 * BuildSlaveSupport/ews-build/loadConfig.py:
10250 (loadBuilderConfig): Add support for passing master_prefix_path.
10251 * BuildSlaveSupport/ews-build/loadConfig_unittest.py:
10252 (ConfigDotJSONTest.test_configuration): Set master_prefix_path as current directory.
10254 2018-06-21 Aakash Jain <aakash_jain@apple.com>
10256 Add support for using localhost worker in OpenSource EWS Buildbot
10257 https://bugs.webkit.org/show_bug.cgi?id=186871
10259 Reviewed by Lucas Forschler.
10261 * BuildSlaveSupport/ews-build/loadConfig.py:
10262 (loadBuilderConfig): Added a worker named 'local-worker' if use_localhost_worker option is used.
10263 * BuildSlaveSupport/ews-build/master.cfg: Check BUILDBOT_TESTING environment variable and use_localhost_worker if so.
10265 2018-06-21 Aakash Jain <aakash_jain@apple.com>
10267 Add force schedulers to OpenSource EWS Buildbot
10268 https://bugs.webkit.org/show_bug.cgi?id=186876
10270 Reviewed by Lucas Forschler.
10272 * BuildSlaveSupport/ews-build/loadConfig.py:
10273 (loadBuilderConfig): Added support for ForceScheduler.
10275 2018-06-21 Robin Morisset <rmorisset@apple.com>
10277 [WSL] Merge WSL_type.ott and WSL_exec.ott
10278 https://bugs.webkit.org/show_bug.cgi?id=186310
10280 Rubberstamped by Filip Pizlo.
10282 I moved the execution rules into WSL_type.ott, that was renamed WSL.ott.
10283 I also changed the execution judgements:
10284 - they now emit memory events instead of having an explicit store (so they can be connected later to a memory model)
10285 - the environment is now unchangeable (except inside blocks, which are the only place that variable declarations can appear)
10286 - various rules were simplified.
10288 * WebGPUShadingLanguageRI/SpecWork/WSL.ott: Copied from Tools/WebGPUShadingLanguageRI/SpecWork/WSL_type.ott.
10289 * WebGPUShadingLanguageRI/SpecWork/WSL_exec.ott: Removed.
10290 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott: Removed.
10292 2018-06-21 Leo Balter <leonardo.balter@gmail.com>
10294 [test262-runner] Improve failures output
10295 https://bugs.webkit.org/show_bug.cgi?id=186858
10297 Reviewed by Michael Saboff.
10299 * Scripts/test262/Runner.pm:
10303 2018-06-21 Caitlin Potter <caitp@igalia.com>
10305 [Tools] add a --debug option to test262/Runner.pm for buildbots
10306 https://bugs.webkit.org/show_bug.cgi?id=186113
10308 Reviewed by Michael Saboff.
10310 test262-runner runs Debug builds by default, but this allows us to be
10311 explicit about it in buildbots.
10313 * Scripts/test262/Runner.pm:
10316 2018-06-21 Carlos Garcia Campos <cgarcia@igalia.com>
10318 run-gtk-tests (glib/common.py) cannot determine build directory when webKitBranchBuild=true
10319 https://bugs.webkit.org/show_bug.cgi?id=185643
10321 Reviewed by Frédéric Wang.
10323 Check if webKitBranchBuild is true in git config to add the branch name to the build path.
10325 * Scripts/webkitpy/common/checkout/scm/git.py:
10326 (Git.read_git_config): Add output_type parameter.
10327 (Git.read_config): Call read_git_config with cws and executive.
10328 (Git._upstream_branch): Use read_config().
10329 (Git._assert_can_squash): Ditto.
10330 (Git.remote_branch_ref): Ditto.
10331 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
10332 (GitSVNTest.test_read_git_config):
10336 2018-06-20 Wenson Hsieh <wenson_hsieh@apple.com>
10338 [WebKit on watchOS] Fixed position elements sometimes flicker when scrolling
10339 https://bugs.webkit.org/show_bug.cgi?id=186860
10340 <rdar://problem/39953563>
10342 Reviewed by Tim Horton.
10344 Add a new API test to exercise a race condition between receiving remote layer tree commits and updating visible
10345 content rects which would result in the compositing layer for a fixed position element sometimes appearing in
10346 the wrong place. See WebKit ChangeLog for more details.
10348 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
10349 * TestWebKitAPI/Tests/WebKitCocoa/fixed-nav-bar.html: Added.
10350 * TestWebKitAPI/Tests/ios/WKScrollViewTests.mm: Added.
10351 (traverseLayerTree):
10354 2018-06-20 Daniel Bates <dabates@apple.com>
10356 AttributeError: StatusServer instance has no attribute '_api_key' thrown when processing a patch
10357 https://bugs.webkit.org/show_bug.cgi?id=186852
10359 Fixes an issue where StatusServer._api_key may not be defined. This issue manifests itself
10360 in a Python AttributeError exception when an EWS bot tries to fetch the next patch to process.
10362 Currently StatusServer._api_key is only defined when either the environment variable WEBKIT_STATUS_API_KEY
10363 or the Git configuration key webkit.status_api_key has a non-empty value. Instead we should
10364 always define StatusServer._api_key in the StatusServer constructor.
10366 * Scripts/webkitpy/common/net/statusserver.py:
10367 (StatusServer.__init__):
10369 2018-06-20 Robin Morisset <rmorisset@apple.com>
10371 [WSL] Add details to the sphinx outline
10372 https://bugs.webkit.org/show_bug.cgi?id=186310
10374 Rubberstamped by Filip Pizlo.
10376 Mostly improving the sphinx outline.
10377 Also started moving the execution rules to WSL_type.ott (which will eventually become WSL.ott).
10378 Tried formalizing the gathering of declarations into the environment, but I think I will scratch it.
10379 It is both trivial to do (and to explain in english) and a bit of a pain to formalize.
10381 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott:
10382 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
10384 2018-06-20 Commit Queue <commit-queue@webkit.org>
10386 Unreviewed, rolling out r232844.
10387 https://bugs.webkit.org/show_bug.cgi?id=186843
10389 "Too many flakiness on the tests, so the EWS bots cant process
10390 patches correctly" (Requested by clopez on #webkit).
10392 Reverted changeset:
10394 "[GTK] Enable tests on the GTK EWS queue"
10395 https://bugs.webkit.org/show_bug.cgi?id=186559
10396 https://trac.webkit.org/changeset/232844
10398 2018-06-20 Rob Buis <rbuis@igalia.com>
10400 [GTK] ASSERTION FAILED: url == m_string in UserAgentQuirks test
10401 https://bugs.webkit.org/show_bug.cgi?id=186838
10403 This URL constructor expects canonicalized input, so fix the passed URL.
10405 Reviewed by Frédéric Wang.
10407 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
10408 (TestWebKitAPI::TEST):
10410 2018-06-20 Robin Morisset <rmorisset@apple.com>
10412 [WSL] Make the typing rules explicitely translate type syntax into actual types
10413 https://bugs.webkit.org/show_bug.cgi?id=186310
10415 Rubberstamped by Filip Pizlo.
10417 The typing rules must describe how and most importantly when typedefs and the like are resolved.
10418 This is important because they can be shadowed (by type variables for example), and we want to make it unambiguous what behaviour is required in that case.
10420 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
10421 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott:
10423 2018-06-20 Yusuke Suzuki <utatane.tea@gmail.com>
10425 [GTK][WPE][Nicosia] Add name for Nicosia Painting Threads
10426 https://bugs.webkit.org/show_bug.cgi?id=186836
10428 Reviewed by Carlos Garcia Campos.
10430 * TestWebKitAPI/Tests/WTF/WorkerPool.cpp:
10431 (TestWebKitAPI::TEST):
10433 2018-06-20 Yusuke Suzuki <utatane.tea@gmail.com>
10435 [WPE] Remove warnings by setting nullptr for unused listeners
10436 https://bugs.webkit.org/show_bug.cgi?id=186835
10438 Reviewed by Carlos Garcia Campos.
10440 frame, axis_source, axis_stop, and axis_discrete are unused.
10441 Setting nullptr explicitly to remove warnings in GCC.
10443 * wpe/backends/WindowViewBackend.cpp:
10445 2018-06-19 Leo Balter <leonardo.balter@gmail.com>
10447 [test262-runner] Reduce flakiness of unit tests for the runner
10448 https://bugs.webkit.org/show_bug.cgi?id=186824
10450 Reviewed by Michael Saboff.
10452 * Scripts/test262/Runner.pm:
10454 * Scripts/webkitperl/test262_unittest/test262-runner-tests.pl:
10456 2018-06-19 Leo Balter <leonardo.balter@gmail.com>
10458 [test262-runner] Print results report to HTML
10459 https://bugs.webkit.org/show_bug.cgi?id=186790
10461 Reviewed by Michael Saboff.
10463 After runing the tests, 2 html files are created with a list to failing tests and summaries.
10464 * Scripts/test262/Runner.pm:
10466 (summarizeResults):
10469 2018-06-19 Keith Rollin <krollin@apple.com>
10471 Crash running check-webkit-style on webrtc/.../exceptions.py
10472 https://bugs.webkit.org/show_bug.cgi?id=186816
10473 <rdar://problem/41262553>
10475 Reviewed by Michael Catanzaro.
10477 It's not apparent to me why the crash is occurring. Trying to write a
10478 unittest that checks this file in isolation does not reproduce the
10479 crash. But the crash goes away when updating to pylint-0.25.2.
10481 * Scripts/webkitpy/thirdparty/__init__.py:
10482 (AutoinstallImportHook._install_pylint):
10484 2018-06-19 Keith Rollin <krollin@apple.com>
10486 cpp style checker needs to know more about NOLINT
10487 https://bugs.webkit.org/show_bug.cgi?id=186796
10489 Reviewed by Aakash Jain.
10491 Running check-webkit-style on
10492 ThirdParty/gtest/src/gtest-internal-inl.h crashes with a KeyError as
10493 it tries to look up information about a particular #include in a
10494 dictionary it maintains. The problem has to do with the following
10495 lines in gtest-internal-inl.h:
10497 #include <gtest/gtest.h> // NOLINT
10498 #include <gtest/gtest-spi.h>
10500 The NOLINT annotation will prevent the cpp-checker from processing or
10501 even seeing that line. In skipping that line, information regarding
10502 that line is NOT added to some internal tables. However, when the code
10503 that checks that #includes are correctly alphabetized gets to the
10504 "gtest-spi.h" line, it will not respect the NOLINT annotation and will
10505 see the gtest.h line. When doing so, it runs afoul of the fact that it
10506 hadn't seen that line before and it crashes when it tries to look up
10507 that line in some internal records.
10509 Fix this by catering to the possibility that a #include line may not
10510 have been entered into these internal records.
10512 * Scripts/webkitpy/style/checkers/cpp.py:
10513 (check_include_line):
10514 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
10516 2018-06-19 Daniel Bates <dabates@apple.com>
10518 EWS for security bugs
10519 https://bugs.webkit.org/show_bug.cgi?id=186291
10520 <rdar://problem/40829658>
10522 Update comment in AbstractEarlyWarningSystem.refetch_patch() to reference <https://bugs.webkit.org/show_bug.cgi?id=186817>.
10524 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
10525 (AbstractEarlyWarningSystem.refetch_patch):
10527 2018-06-19 Daniel Bates <dabates@apple.com>
10529 EWS for security bugs
10530 https://bugs.webkit.org/show_bug.cgi?id=186291
10531 <rdar://problem/40829658>
10533 Reviewed by Lucas Forschler.
10537 Implements support for EWS processing of patches on security sensitive bugs. We add new
10538 endpoints to the status server to support uploading and downloading of patches and associated
10539 metadata. When webkit-patch submits a patch for EWS processing it will now upload the contents
10540 and metadata for the patch to the status server if the patch is on a security sensitive bug.
10541 We teach the EWS machinery in webkitpy to query the status server for a patch only if fetching
10542 the patch from Bugzilla is not permitted due to an authorization error.
10544 Fetching patches from the status server requires an API key. The API key is read from the
10545 environment variable WEBKIT_STATUS_API_KEY or the value of the Git configuration key webkit.status_api_key
10546 (in that order). Contact me or another Apple engineer for an API key.
10548 Additionally, default to using HTTPS when querying the status server and expose an optional
10549 command line option called --status-host-uses-http to use the former behavior of querying
10552 * QueueStatusServer/config/authorization.py: Added.
10553 (_path_to_authorized_api_keys_file): Returns the absolute filesystem path to the file authorized_api_keys.txt.
10554 (_parse_authorized_api_keys):
10555 (authorized_api_keys):
10556 (_parse_authorization_header): Parses the API key from the Authorization header. We use a
10557 custom authentication scheme: "apikey". See remark below for more details.
10558 (is_authorized): Checks if the request includes an API key and whether that API key is in the
10559 list of authorized keys (performs a case-sensitive match). The API key may be specified either
10560 in a HTTP header Authorization or in the query string argument "apikey". When using the HTTP
10561 headers approach the Authorization header should have the form: "Authorization: apikey X" where
10562 X is the case-sensitive API key.
10563 * QueueStatusServer/handlers/fetchattachment.py: Added.
10565 (FetchAttachment.get):
10566 * QueueStatusServer/handlers/releasepatch.py:
10567 (ReleasePatch.check_processed_by_all_queues): Returns whether the specified attachment was processed by all the queues.
10568 (ReleasePatch.post): Delete the patch from AppEngine (if we have it) once the patch was processed
10570 * QueueStatusServer/handlers/submittoews.py:
10571 (SubmitToEWS._should_add_to_ews_queue): Fix a typo in a comment while I am working in this code.
10572 * QueueStatusServer/handlers/uploadattachment.py: Added.
10573 (UploadAttachment):
10574 (UploadAttachment.get):
10575 (UploadAttachment.post):
10576 * QueueStatusServer/main.py: Add new routes /upload-attachment and /attachment to upload an attachment
10577 and view an attachment (or its metadata), respectively.
10578 * QueueStatusServer/model/attachmentdata.py: Added.
10580 (AttachmentData.add_attachment_data):
10581 (AttachmentData.lookup_if_exists):
10582 (AttachmentData.remove_attachment_data):
10583 * QueueStatusServer/templates/uploadattachment.html: Added.
10584 * Scripts/webkitpy/common/net/bugzilla/attachment.py:
10585 (Attachment.committer):
10587 (Attachment.to_json): Serialize to JSON so that we can upload it to AppEngine.
10588 (Attachment.from_json): Deserialize from JSON. This is used as part of downloading a patch from AppEngine.
10589 * Scripts/webkitpy/common/net/bugzilla/attachment_unittest.py:
10590 (AttachmentTest.test_convert_to_json_and_back): Added.
10591 * Scripts/webkitpy/common/net/bugzilla/bug.py:
10592 (Bug.groups): Returns a frozenset of groups that the bug is a member of.
10593 (Bug.is_security_sensitive): Returns whether the bug is in group Security-Sensitive.
10594 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
10595 (BugzillaQueries.fetch_attachment_ids_from_review_queue): Modified to take an optional boolean, only_security_bugs,
10596 as to whether to only fetch attachment ids for unreviewed patches associated with security bugs. By default, we
10597 keep the current behavior and query for the attachment ids of all unreviewed patches that the currently logged in
10598 Bugzilla user can see, which may include patches associated with security bugs.
10599 (Bugzilla._parse_date): Update for moved and renamed constant. See remark for class Bugzilla.
10600 (Bugzilla._parse_bug_dictionary_from_xml): Modified to return an empty dictionary if we do not have access to view the bug.
10601 Otherwise, extract the name of the group the bug is in.
10602 (Bugzilla.fetch_bug): Modified to return None if we do not have access to view the bug.
10603 (Bugzilla._parse_bug_title_from_attachment_page): Extracted out logic to parse the title of the Attachment page
10604 from _parse_bug_id_from_attachment_page() so that it can be used from both _parse_bug_id_from_attachment_page()
10605 and get_bug_id_for_attachment_id().
10606 (Bugzilla): Moved class constant _bugzilla_date_format to Scripts/webkitpy/common/net/bugzilla/constants.py
10607 and renamed it to BUGZILLA_DATE_FORMAT.
10608 (Bugzilla.AccessError):
10609 (Bugzilla.AccessError.__init__):
10610 (Bugzilla._parse_bug_id_from_attachment_page): Modified to return a tuple of ("bug id", "error code") so that
10611 the caller can know the reason the parse failed if it did. The parse will fail if we do not have access to view
10613 (Bugzilla.bug_id_for_attachment_id): Modified to take a boolean throw_on_access_error (default: False)
10614 as to whether to raise a Bugzilla.AccessError exception and pass it through to get_bug_id_for_attachment_id().
10615 (Bugzilla.get_bug_id_for_attachment_id): Modified to take a boolean throw_on_access_error (default: False)
10616 as to whether to raise a Bugzilla.AccessError exception if we do not have access to the bug associated with
10617 the specified attachment id.
10618 (Bugzilla.fetch_attachment):
10619 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
10620 (MockBugzillaQueries.fetch_attachment_ids_from_review_queue):
10622 (MockBugzilla.fetch_attachment):
10623 (MockBugzilla.fetch_attachment_contents):
10624 (MockBugzilla.add_patch_to_bug):
10625 * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
10626 * Scripts/webkitpy/common/net/bugzilla/constants.py: Added.
10627 * Scripts/webkitpy/common/net/statusserver.py:
10629 (StatusServer.__init__): Modified to take an boolean use_https as to whether to query the server using
10630 HTTPS (default: True - use HTTPS).
10631 (StatusServer.set_host): Moved logic to compute the server URL from her to _server_url().
10632 (StatusServer.set_use_https): Added.
10633 (StatusServer.set_api_key): Added.
10634 (StatusServer._server_url): Added.
10635 (StatusServer._authorization_header_name_and_value_pair): Added.
10636 (StatusServer.results_url_for_status): Update to use _server_url().
10637 (StatusServer._post_status_to_server): Ditto.
10638 (StatusServer._post_svn_revision_to_server): Ditto.
10639 (StatusServer._post_work_items_to_server): Ditto.
10640 (StatusServer._upload_attachment_to_server): Added.
10641 (StatusServer.upload_attachment): Added.
10642 (StatusServer._post_work_item_to_ews): Update to use _server_url().
10643 (StatusServer.next_work_item): Ditto.
10644 (StatusServer._post_release_work_item): Ditto.
10645 (StatusServer._post_release_lock): Ditto.
10646 (StatusServer._fetch_attachment_page): Added.
10647 (StatusServer.fetch_attachment): Added.
10648 (StatusServer._fetch_url): Add the API Key to the request if we have one.
10649 (StatusServer.patch_status): Update to use _server_url().
10650 (StatusServer.svn_revision): Ditto.
10651 * Scripts/webkitpy/common/net/statusserver_mock.py:
10652 (MockStatusServer.upload_attachment): Added.
10653 (MockStatusServer.fetch_attachment): Added.
10654 * Scripts/webkitpy/tool/bot/feeders.py:
10655 (EWSFeeder.feed): Modified to download patches on security bugs and upload them to the status server (AppEngine).
10656 * Scripts/webkitpy/tool/commands/download.py:
10657 (ProcessAttachmentsMixin._fetch_list_of_patches_to_process): Modified to handle the case when fetching the
10658 bug details from Bugzilla fail, say because we are not allowed to the view the bug.
10659 (ProcessBugsMixin._fetch_list_of_patches_to_process): Filter out None values for attachments that we failed
10660 to fetch, say because we are not allowed to the view the bug the attachment is on.
10661 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
10662 (AbstractEarlyWarningSystem.refetch_patch): For now, refetch the patch from the status server. Ideally, we
10663 need a way to ask the status server to fetch the patch again from Bugzilla (or at least its metadata) so
10664 that the EWS can check the current state of the patch (i.e. is it still marked r?).
10665 * Scripts/webkitpy/tool/commands/queries_unittest.py:
10666 (QueryCommandsTest.test_patches_to_review): Update expected result.
10667 * Scripts/webkitpy/tool/commands/queues.py:
10668 (AbstractPatchQueue._next_patch): Fetch the patch from the status server if we failed to fetch it from
10669 Bugzilla because we do not have permission to view it.
10670 * Scripts/webkitpy/tool/commands/queues_unittest.py:
10671 * Scripts/webkitpy/tool/commands/upload_unittest.py:
10672 (test_upload_of_security_sensitive_patch_with_no_review_and_ews): Added.
10673 * Scripts/webkitpy/tool/main.py:
10675 (WebKitPatch._status_server_api_key_from_git): Read the API key from the Git configuration key webkit.status_api_key.
10676 (WebKitPatch._status_server_api_key): Read the API key from the environment variable WEBKIT_STATUS_API_KEY.
10677 (WebKitPatch.handle_global_options): Read the API key and update the state of the StatusServer object, if applicable.
10678 * Scripts/webkitpy/tool/steps/obsoletepatches.py:
10679 (ObsoletePatches.run): Modified to handle the case when fetching the bug details from Bugzilla fail, say because we
10680 are not allowed to the view the bug.
10681 * Scripts/webkitpy/tool/steps/submittoews.py:
10682 (SubmitToEWS.run): Upload the contents of the patch and the Bugzilla metadata about it to the status server
10683 if the patch was posted to a security bug.
10685 2018-06-19 Daniel Bates <dabates@apple.com>
10687 QueueStatusServer: "'NoneType' object has no attribute 'message'" in ReleasePatch.get()
10688 when attachment is skipped by queue
10689 https://bugs.webkit.org/show_bug.cgi?id=186748
10691 Reviewed by Lucas Forschler.
10693 Fixes an issue where releasing a patch that was skipped by a queue would cause an AttributeError
10694 in ReleasePatch.get().
10696 When removing a patch from a queue we update queue statistics. As part of this process
10697 we record the last message posted to the status server for the patch. Currently if a patch
10698 is skipped by the queue when picking the next patch to process (say, we failed to fetch the
10699 attachment) then the queue does not post a message to the status server before it asks the
10700 status server to remove the patch from the list of patches the queue needs to process. Instead
10701 the queue should tell the status server that it chose to skip the patch before asking for the
10702 patch to be removed from its list of patches to process.
10704 * Scripts/webkitpy/common/net/bugzilla/attachment.py:
10705 (Attachment.bug_id): Return None if we do not have a bug ID. This can happen if we failed
10706 to fetch the attachment from Bugzilla (say, Bugzilla's markup changed) or we do not have
10707 have permission to view the Bugzilla bug.
10708 * Scripts/webkitpy/common/net/bugzilla/attachment_unittest.py: Added.
10710 (AttachmentTest.test_no_bug_id):
10711 * Scripts/webkitpy/tool/commands/queues.py:
10712 (AbstractPatchQueue._next_patch): Call AbstractPatchQueue._did_skip() to post a status
10713 update to the status server and then release the work item.
10714 * Scripts/webkitpy/tool/commands/queues_unittest.py:
10715 (AbstractPatchQueueTest.test_next_patch): Update expected result.
10717 2018-06-19 Leo Balter <leonardo.balter@gmail.com>
10719 Test262-Runner: Improve files queue to optimize CPU usage/balancing
10720 https://bugs.webkit.org/show_bug.cgi?id=186443
10722 Reviewed by Michael Saboff.
10724 This patch creates a queue manager for to keep the child process open while the parent process feed each child with test files to run.
10725 * Scripts/test262/Runner.pm:
10729 2018-06-19 Wenson Hsieh <wenson_hsieh@apple.com>
10731 [WebKit on watchOS] Vend username text content type when using scribble in login fields
10732 https://bugs.webkit.org/show_bug.cgi?id=186791
10733 <rdar://problem/41226935>
10735 Reviewed by Beth Dakin.
10737 Add testing support for grabbing the current text content type of the focused element.
10739 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
10740 (WTR::UIScriptController::textContentType const):
10741 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
10742 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
10743 (WTR::UIScriptController::textContentType const):
10744 * TestRunnerShared/UIScriptContext/UIScriptController.h:
10745 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
10746 (WTR::UIScriptController::textContentType const):
10748 2018-06-19 Robin Morisset <rmorisset@apple.com>
10750 [WSL] Improving the typing rules
10751 https://bugs.webkit.org/show_bug.cgi?id=186310
10753 Rubberstamped by Filip Pizlo.
10756 - added a "well_formed" judgement, and defined it on function definitions (tying together with the typing rules)
10757 - cleaned up the desugaring relation (it now works on normal statements, and deals with for loops correctly)
10758 - added the null literal, the comma operator, the not operator, and parens
10759 - fixed a bunch of minor typographic issues
10761 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott:
10763 2018-06-18 Robin Morisset <rmorisset@apple.com>
10765 [WSL] Starting to write the spec
10766 https://bugs.webkit.org/show_bug.cgi?id=186310
10768 Rubberstamped by Filip Pizlo.
10770 This is a snapshot of my current work on the WSL spec (I will try to commit more regularly in the future).
10772 WSL.g4 is the grammar, in antlr4 format. I only made minor changes in it since last time.
10774 source/index.rst is the Sphinx document.
10775 It currently only contain a very rough outline, and some TODOs.
10776 It can be compiled with make html or make pdf, and relies on Makefile and source/conf.py.
10778 WSL_exec.ott is the current set of execution rules I have formalized.
10779 They will need a fair bit of refactoring, to account for the new desugaring phase,
10780 to be compatible with whatever memory model we decide on,
10781 and to be explicit about the memory layout of structs and arrays
10782 They can be compiled to latex with OTT (which in turn requires OCaml and opam).
10783 Just ask me by email if you want a pdf of all the rules without having to install all that.
10785 WSL_type.ott is the current set of local typing rules I have formalized.
10786 Like WSL_exex.ott, it is very incomplete, lacking all function calls among other things.
10788 * WebGPUShadingLanguageRI/SpecWork/Makefile: Added.
10789 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
10790 * WebGPUShadingLanguageRI/SpecWork/WSL_exec.ott: Added.
10791 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott: Added.
10792 * WebGPUShadingLanguageRI/SpecWork/source: Added.
10793 * WebGPUShadingLanguageRI/SpecWork/source/conf.py: Added.
10794 * WebGPUShadingLanguageRI/SpecWork/source/index.rst: Added.
10796 2018-06-18 Chris Dumez <cdumez@apple.com>
10798 Crash under WebProcessPool::networkProcessFailedToLaunch():
10799 https://bugs.webkit.org/show_bug.cgi?id=186784
10800 <rdar://problem/33535377>
10802 Reviewed by Brady Eidson.
10804 Add API test coverage.
10806 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
10809 2018-06-18 Zan Dobersek <zdobersek@igalia.com>
10811 [webkitpy] WPTRunner should remove any metadata content before (re)generating it
10812 https://bugs.webkit.org/show_bug.cgi?id=186755
10814 Reviewed by Carlos Garcia Campos.
10816 WPTRunner generates the WPT-compliant metadata content before each test
10817 run. Before it does so, it should remove the complete target directory
10818 for this metadata, allowing any change in the expectations JSON to be
10819 immediately reflected.
10821 For example, if a test failure expectation is removed, the related .ini
10822 metadata file is not generated anymore, but the stale .ini file isn't
10823 removed from the current metadata directory. To avoid this, purging
10824 the metadata directory and regenerating it from scratch should be done
10827 * Scripts/webkitpy/w3c/wpt_runner.py:
10828 (WPTRunner._generate_metadata_directory):
10829 * Scripts/webkitpy/w3c/wpt_runner_unittest.py:
10830 (WPTRunnerTest.test_generate_metadata_directory):
10832 2018-06-12 Darin Adler <darin@apple.com>
10834 [Cocoa] Make some RetainPtr refinements to get more ready for ARC
10835 https://bugs.webkit.org/show_bug.cgi?id=186526
10837 Reviewed by Anders Carlsson.
10839 * DumpRenderTree/mac/LayoutTestHelper.m:
10840 (colorProfileURLForDisplay): Use CFBridgingRelease instead of using
10841 CFAutorelease for a bridging use case.
10843 2018-06-16 Leo Balter <leonardo.balter@gmail.com>
10845 [test262-runner] Handle items from the config list with inline comments
10846 https://bugs.webkit.org/show_bug.cgi?id=186707
10848 Reviewed by Michael Saboff.
10850 This is a workaround for the Yaml parser that bundles inline comments together with any items.
10851 * Scripts/test262/Runner.pm:
10854 2018-06-16 Valerie R Young <valerie@bocoup.com>
10856 test262/Runner.pm: option to run test skipped in config file
10857 https://bugs.webkit.org/show_bug.cgi?id=186660
10859 Reviewed by Michael Saboff.
10861 Adds option --skipped-files, -S, to run all files skipped in the
10864 * Scripts/test262/Runner.pm:
10871 2018-05-18 Basuke Suzuki <basuke.suzuki@sony.com>
10873 Unreviewed, add myself as a WebKit committer.
10875 * Scripts/webkitpy/common/config/contributors.json:
10877 2018-06-15 Chris Dumez <cdumez@apple.com>
10879 Add API test coverage for SW RegistrationDatabase destruction and fix issues found by the test
10880 https://bugs.webkit.org/show_bug.cgi?id=186681
10882 Reviewed by Brady Eidson.
10884 Add API test coverage.
10886 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
10888 2018-06-15 Brady Eidson <beidson@apple.com>
10890 Crash in both StorageProcess and UIProcess when using custom WKWebsiteDataStores for data management.
10891 <rdar://problem/41019893> and https://bugs.webkit.org/show_bug.cgi?id=186682
10893 Reviewed by Chris Dumez.
10895 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
10896 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
10899 2018-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
10901 [GTK] Fix adding error in browserperfdash_runner.
10903 Unreviewed follow-up fix after r232820.
10905 * Scripts/webkitpy/browserperfdash/browserperfdash_runner.py:
10906 (BrowserPerfDashRunner.run):
10908 2018-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
10910 [GTK][WKE] Disable memory pressure handling when running layout tests (WTR)
10911 https://bugs.webkit.org/show_bug.cgi?id=186663
10913 Reviewed by Michael Catanzaro.
10915 Disable memory pressure handling when running tests via WTR by
10916 setting WEBKIT_DISABLE_MEMORY_PRESSURE_MONITOR=1 on the environment.
10918 * WebKitTestRunner/gtk/main.cpp:
10920 * WebKitTestRunner/wpe/main.cpp:
10923 2018-06-15 Jonathan Bedard <jbedard@apple.com>
10925 Add iOS 12 and watchOS 5 to webkitpy
10926 https://bugs.webkit.org/show_bug.cgi?id=186285
10928 Reviewed by Aakash Jain.
10930 * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
10931 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
10932 Trigger the right build queues for iOS 12 on check-in.
10933 * Scripts/webkitpy/common/version_name_map.py:
10934 (VersionNameMap.__init__): Add iOS 12, tvOS 12 and watchOS 5.
10935 * Scripts/webkitpy/common/version_name_map_unittest.py:
10936 (VersionMapTestCase.test_ios_name_by_version): Test iOS 12 version-name mapping.
10937 * Scripts/webkitpy/port/ios_device_unittest.py:
10938 (IOSDeviceTest.test_layout_test_searchpath_without_apple_additions):
10939 * Scripts/webkitpy/port/ios_simulator_unittest.py:
10940 (IOSSimulatorTest.test_layout_test_searchpath_without_apple_additions):
10942 2018-06-14 Saam Barati <sbarati@apple.com>
10944 sun spider compile time benchmark fails in run-jsc-benchmarks with JSC_validateOptions=1
10945 https://bugs.webkit.org/show_bug.cgi?id=186647
10947 Reviewed by Yusuke Suzuki.
10949 Let's use `unset JSC_useBlah` instead of `export JSC_useBlah=` to clear environment
10950 variables. The latter was causing crashes with when JSC_validateOptions was true.
10952 * Scripts/run-jsc-benchmarks:
10954 2018-06-14 Carlos Alberto Lopez Perez <clopez@igalia.com>
10956 [GTK][buildbot] Raise timeouts for the step benchmark-test on the GTK perf bot
10957 https://bugs.webkit.org/show_bug.cgi?id=186635
10959 Reviewed by Michael Catanzaro.
10961 The current maximum timeout for a run-benchmark test is 1800 (Motionmark plan),
10962 but the buildbot default timeout for the whole step without text output is 1200.
10963 That means that a timeout on a single test can cause a whole step abort because
10964 the buildbot one will trigger first.
10966 Set the benchmark-test step timeout to 2000 to avoid this.
10968 When this benchmark-test was added in r197505 it was already added with a higher
10969 timeout than default (1500) due to the above problem, but it seems this has been
10970 ignored so far because buildbot won't accept the timeout to be set on the class
10971 definition (not even on the class constructor).
10972 The new timeout has to be defined in the addStep call itself.
10973 I have double-checked that by testing locally with the script run-buildbot-test.py
10974 And this upstream issue confirms that https://github.com/buildbot/buildbot/issues/3887
10976 * BuildSlaveSupport/build.webkit.org-config/factories.py:
10977 (BuildAndPerfTestFactory.__init__):
10978 (DownloadAndPerfTestFactory.__init__):
10979 * BuildSlaveSupport/build.webkit.org-config/steps.py:
10980 (RunBenchmarkTests):
10982 2018-06-14 Roy Reapor <rreapor@apple.com>
10984 Use new jQuery file layout
10985 https://bugs.webkit.org/show_bug.cgi?id=186636
10987 Reviewed by Aakash Jain.
10989 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
10990 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/rebaseline.html:
10991 * TestResultServer/static-dashboards/run-embedded-unittests.html:
10993 2018-06-14 Basuke Suzuki <Basuke.Suzuki@sony.com>
10995 [Win][MiniBrowser] Change to use WebKit by default if it's available
10996 https://bugs.webkit.org/show_bug.cgi?id=186633
10998 When MiniBrowser is built with WebKit, use it by default. Also add command
10999 line switch for WebKitLegacy.
11001 Reviewed by Youenn Fablet.
11003 * MiniBrowser/win/Common.cpp:
11004 (parseCommandLine):
11005 (dllLauncherEntryPoint): Deleted.
11006 * MiniBrowser/win/Common.h:
11007 * MiniBrowser/win/WinMain.cpp:
11009 (dllLauncherEntryPoint):
11011 2018-06-14 Matt Lewis <jlewis3@apple.com>
11013 Unreviewed, rolling out r232823.
11015 This caused both test timeouts and api failures.
11017 Reverted changeset:
11019 "[Mail] Use the Mail Viewer width as the base for resolving
11020 horizontal viewport units"
11021 https://bugs.webkit.org/show_bug.cgi?id=186585
11022 https://trac.webkit.org/changeset/232823
11024 2018-06-14 Youenn Fablet <youenn@apple.com>
11026 TestWebKitAPI.WebKit.WKNavigationResponsePDFType fails after r232815
11027 https://bugs.webkit.org/show_bug.cgi?id=186631
11029 Reviewed by Chris Dumez.
11031 * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
11032 (TEST): Update PDF plug-in identifier.
11034 2018-06-14 Leo Balter <leonardo.balter@gmail.com>
11036 [test262-runner] Improve displayed settings, use rel paths
11037 https://bugs.webkit.org/show_bug.cgi?id=186626
11039 Reviewed by Michael Saboff.
11041 Use relative paths for the information printed in the settings summary after calling the Test262 Runner. This provides a cleaner summary that is easier to read and consume.
11042 * Scripts/test262/Runner.pm:
11046 2018-06-14 Leo Balter <leonardo.balter@gmail.com>
11048 Test262-Runner: Add more information in the summarized stats
11049 https://bugs.webkit.org/show_bug.cgi?id=185749
11051 Reviewed by Michael Saboff.
11053 This patch adds extra information in the summarized stats for the given results for each run.
11054 This includes a total of files, a total of executed files and a time information per path and feature.
11055 * Scripts/test262/Runner.pm:
11056 (summarizeResults):
11058 2018-06-14 Carlos Alberto Lopez Perez <clopez@igalia.com>
11060 [GTK] Enable tests on the GTK EWS queue
11061 https://bugs.webkit.org/show_bug.cgi?id=186559
11063 Reviewed by Michael Catanzaro.
11065 Enable testing for the gtk-wk2 EWS queue.
11067 * Scripts/webkitpy/common/config/ews.json:
11069 2018-06-14 Valerie R Young <valerie@bocoup.com>
11071 [test262-runner] Test output should summarize tests that are
11072 unexpectedly passing/failing.
11073 https://bugs.webkit.org/show_bug.cgi?id=186527
11075 Reviewed by Michael Saboff.
11077 * Scripts/test262/Runner.pm:
11079 In verbose mode, a summary of all new failing tests
11080 and all new passing tests are printed at the end of
11083 2018-06-14 Zan Dobersek <zdobersek@igalia.com>
11085 [GTK][WPE] MiniBrowsers should be able to ignore TLS errors
11086 https://bugs.webkit.org/show_bug.cgi?id=186557
11088 Reviewed by Carlos Garcia Campos.
11090 Add the --ignore-tls-errors flags to the GTK and WPE MiniBrowsers.
11091 Enabling the flag enforces ignoring of TLS errors that occur during
11092 load. This is primarily useful for loading test cases from the wpt or
11093 run-webkit-httpd servers where testing-purpose certificates are used.
11095 * MiniBrowser/gtk/main.c:
11097 * MiniBrowser/wpe/main.cpp:
11100 2018-06-13 Adrian Perez de Castro <aperez@igalia.com>
11102 [WPE] Trying to access the remote inspector hits an assertion in the UIProcess
11103 https://bugs.webkit.org/show_bug.cgi?id=186588
11105 Reviewed by Carlos Garcia Campos.
11107 Make both the WPE and GTK+ ports use /org/webkit/inspector as base prefix
11108 for resource paths, which avoids needing a switcheroo depending on the port.
11110 * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
11111 (WTR::TestRunner::inspectorTestStubURL):
11112 * glib/generate-inspector-gresource-manifest.py:
11114 2018-06-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
11116 [GTK] Add a script to upload the data generated with run-benchmark to a browserperfdash server and use it on the gtk perf bot
11117 https://bugs.webkit.org/show_bug.cgi?id=166885
11119 Reviewed by Michael Catanzaro.
11121 This patch adds a new script that will execute run-benchmark and upload the results it generates to a browserperfdash web app.
11123 It also modifies the buildbot config file so the GTK performance bot runs this script on the perf-test step.
11125 * BuildSlaveSupport/build.webkit.org-config/steps.py:
11126 (RunBenchmarkTests):
11127 * Scripts/browserperfdash-benchmark: Added.
11128 * Scripts/webkitpy/browserperfdash/README: Added.
11129 * Scripts/webkitpy/browserperfdash/__init__.py: Added.
11130 * Scripts/webkitpy/browserperfdash/browserperfdash_runner.py: Added.
11132 (BrowserPerfDashRunner):
11133 (BrowserPerfDashRunner.__init__):
11134 (BrowserPerfDashRunner._parse_config_file):
11135 (BrowserPerfDashRunner._get_test_version_string):
11136 (BrowserPerfDashRunner._get_test_data_json_string):
11137 (BrowserPerfDashRunner._upload_result):
11138 (BrowserPerfDashRunner.run):
11141 * Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py: Added.
11142 (FakeBenchmarkRunner):
11143 (FakeBenchmarkRunner.__init__):
11144 (FakeBenchmarkRunner.execute):
11145 (BrowserPerfDashRunnerTest):
11146 (BrowserPerfDashRunnerTest.test_list_plans_at_least_five):
11147 (BrowserPerfDashRunnerTest.test_benchmark_runner_subclasses_at_least_two):
11148 (BrowserPerfDashRunnerTest.test_can_construct_runner_object_minimum_parameters):
11149 * Scripts/webkitpy/browserperfdash/config-file-example.txt: Added.
11151 2018-06-13 David Fenton <david_fenton@apple.com>
11153 Unreviewed, add myself as a WebKit committer.
11155 * Scripts/webkitpy/common/config/contributors.json:
11157 2018-06-13 Carlos Alberto Lopez Perez <clopez@igalia.com>
11159 [JSCOnly] Add a MIPS32el JSCOnly EWS (follow-up fix)
11160 https://bugs.webkit.org/show_bug.cgi?id=186523
11162 Unreviewed follow-up fix after r232748
11164 * Scripts/webkitpy/common/config/ports.py:
11165 (JscOnlyPort.build_jsc_command): It is needed to pass a --jsc-only argument to the build-jsc script.
11166 * Scripts/webkitpy/common/config/ports_unittest.py:
11167 (DeprecatedPortTest.test_jsconly_port):
11169 2018-06-12 Thibault Saunier <tsaunier@igalia.com>
11171 webkitpy: Implement coredumpctl support on linux
11172 https://bugs.webkit.org/show_bug.cgi?id=184039
11174 Reviewed by Daniel Bates.
11176 And start using an Executive to run subprocesses
11177 in GDBCrashLogGenerator.
11179 Unit tests adapted to the new API and still passing.
11181 * Scripts/webkitpy/port/linux_get_crash_log.py:
11182 (GDBCrashLogGenerator):
11183 (GDBCrashLogGenerator._get_trace_from_systemd):
11184 (GDBCrashLogGenerator.generate_crash_log):
11186 2018-06-12 Valerie R Young <valerie@bocoup.com>
11188 test262/Runner.pm: fix one test (can't find jsc)
11189 https://bugs.webkit.org/show_bug.cgi?id=186573
11191 Reviewed by Michael Saboff.
11193 * Scripts/webkitperl/test262_unittest/test262-runner-tests.pl:
11194 fix subtest to use mock JSC
11196 2018-06-12 Tim Horton <timothy_horton@apple.com>
11198 Add a API test for r232601
11199 https://bugs.webkit.org/show_bug.cgi?id=186417
11201 Reviewed by Wenson Hsieh.
11203 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
11204 (immediateSubviewOfClass):
11206 Ensure that we put the view hierarchy back together (move WKContentView
11207 out of the animated resize view) and unhide WKContentView after a
11208 resize-with-hidden-content.
11210 2018-06-12 Valerie R Young <valerie@bocoup.com>
11212 test262/Runner.pm: add unit tests
11213 https://bugs.webkit.org/show_bug.cgi?id=185783
11215 Reviewed by Michael Saboff.
11217 * Scripts/webkitperl/test262_unittest/README: Added.
11218 * Scripts/webkitperl/test262_unittest/fixtures/expectations-compare.yaml: Added.
11219 * Scripts/webkitperl/test262_unittest/fixtures/expectations.yaml: Added.
11220 * Scripts/webkitperl/test262_unittest/fixtures/mock-jsc-fail-new-error.pl: Added.
11221 * Scripts/webkitperl/test262_unittest/fixtures/mock-jsc-fail.pl: Added.
11222 * Scripts/webkitperl/test262_unittest/fixtures/mock-jsc-pass.pl: Added.
11223 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing-with-new-error.js: Added.
11224 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing.js: Added.
11225 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-passing.js: Added.
11227 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-pass-now-failing.js: Added.
11228 * Scripts/webkitperl/test262_unittest/fixtures/test/fail.js: Added.
11229 * Scripts/webkitperl/test262_unittest/fixtures/test/pass.js: Added.
11231 * Scripts/webkitperl/test262_unittest/test262-runner-tests.pl: Added.
11233 2018-06-12 Valerie R Young <valerie@bocoup.com>
11235 test262/Runner.pm: minor updates
11236 https://bugs.webkit.org/show_bug.cgi?id=186399
11238 - If harness files cannot be found in a CLI supplied
11239 test262 path, then default to webkit's test262 harness files.
11240 - Lazily create the test262-results directory (only right before
11242 - If an expectation file is supplied via the CLI, save to the
11243 supplied location instead of the default webkit location
11244 (JSTest/test262/expectation.yaml).
11246 Reviewed by Michael Saboff.
11248 * Scripts/test262/Runner.pm:
11254 (summarizeResults):
11256 2018-06-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
11258 [JSCOnly] Add a MIPS32el JSCOnly EWS
11259 https://bugs.webkit.org/show_bug.cgi?id=186523
11261 Reviewed by Michael Catanzaro.
11263 Add a new jsc-mips-ews queue that will execute build-jsc for the jsc-only (Linux) port.
11264 The worker(s) on this queue should be pre-configured to cross-build JSC for MIPS32el.
11266 * QueueStatusServer/config/queues.py:
11267 * QueueStatusServer/model/queues.py:
11268 (Queue.display_name):
11269 * Scripts/webkitpy/common/config/ews.json:
11270 * Scripts/webkitpy/common/config/ports.py:
11271 (DeprecatedPort.port):
11272 (WpePort.run_webkit_tests_command):
11274 (JscOnlyPort.build_jsc_command):
11275 * Scripts/webkitpy/common/config/ports_unittest.py:
11276 (DeprecatedPortTest.test_wincairo_port):
11277 (DeprecatedPortTest):
11278 (DeprecatedPortTest.test_jsconly_port):
11279 * Scripts/webkitpy/port/factory.py:
11281 * Scripts/webkitpy/port/jsc_only.py: Added. Add a basic port definition. Required by the EWS tooling.
11283 (JscOnlyPort.__init__):
11284 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
11287 2018-06-12 Zan Dobersek <zdobersek@igalia.com>
11289 Add run-web-platform-tests script
11290 https://bugs.webkit.org/show_bug.cgi?id=183356
11292 Reviewed by Carlos Alberto Lopez Perez.
11294 Add the run-web-platform-tests script that allows running WebKit builds
11295 against the external web-platform-tests project.
11297 The script sets up all the port-specific information, including the
11298 display driver. If no web-platform-tests repository location is
11299 specified, the TestDownloader utility is used to clone the repository,
11300 and path to that clone is leveraged instead.
11302 Port-specific TestManifest.ini and TestExpectations.json file paths are
11303 then constructed, bailing if any of the files is missing. The JSON file
11304 is then used to construct the metadata file tree, creating an .ini file
11305 for each test that is disabled, has a certain expectation, or has
11306 subtests that themselves have certain expectations. This metadata tree
11307 is built under the build directory, and is purged and reconstructed for
11310 Lastly, the WPT python module is imported from the web-platform-tests
11311 source location, and wpt.main() is invoked along with all the necessary
11312 arguments that set up a web-platform-tests suite run using the WebKit
11315 * Scripts/run-web-platform-tests: Added.
11316 * Scripts/webkitpy/common/config/ports_mock.py:
11317 (MockPort.run_bindings_tests_command):
11319 (MockPort.wpt_metadata_directory):
11320 (MockPort.wpt_manifest_file):
11321 * Scripts/webkitpy/port/base.py:
11322 (Port.wpt_metadata_directory):
11324 (Port.wpt_manifest_file):
11325 * Scripts/webkitpy/w3c/common.py:
11326 (is_file_exportable):
11328 (WPTPaths.checkout_directory):
11329 (WPTPaths.wpt_checkout_path):
11330 * Scripts/webkitpy/w3c/test_downloader.py:
11331 (TestDownloader.clone_tests):
11333 (TestDownloader.download_tests):
11334 * Scripts/webkitpy/w3c/test_exporter.py:
11335 (WebPlatformTestExporter.__init__):
11336 * Scripts/webkitpy/w3c/wpt_runner.py: Added.
11339 (create_webdriver):
11342 (WPTRunner.__init__):
11343 (WPTRunner._prepare_wpt_checkout):
11344 (WPTRunner._generate_metadata_directory):
11346 * Scripts/webkitpy/w3c/wpt_runner_unittest.py: Added.
11348 (WPTRunnerTest.MockTestDownloader):
11349 (WPTRunnerTest.MockTestDownloader.default_options):
11350 (WPTRunnerTest.MockTestDownloader.__init__):
11351 (WPTRunnerTest.MockTestDownloader.clone_tests):
11352 (WPTRunnerTest.MockWebDriver):
11353 (WPTRunnerTest.MockWebDriver.create):
11354 (WPTRunnerTest.MockWebDriver.binary_path):
11355 (WPTRunnerTest.MockWebDriver.browser_path):
11356 (WPTRunnerTest.MockWebDriver.browser_args):
11357 (WPTRunnerTest.MockSpawnWPT):
11358 (WPTRunnerTest.MockSpawnWPT.__init__):
11359 (WPTRunnerTest.MockSpawnWPT.__call__):
11360 (WPTRunnerTest.TestInstance):
11361 (WPTRunnerTest.TestInstance.__init__):
11362 (WPTRunnerTest.TestInstance.prepare_mock_files_for_run):
11363 (WPTRunnerTest.test_prepare_wpt_checkout):
11364 (WPTRunnerTest.test_prepare_wpt_checkout_specified_path):
11365 (WPTRunnerTest.test_generate_metadata_directory):
11366 (WPTRunnerTest.test_run):
11367 (WPTRunnerTest.test_run_with_specified_options):
11368 (WPTRunnerTest.test_run_with_args):
11370 2018-06-11 Mark Lam <mark.lam@apple.com>
11372 Add support for webkit-test-runner jscOptions in DumpRenderTree and WebKitTestRunner.
11373 https://bugs.webkit.org/show_bug.cgi?id=186451
11374 <rdar://problem/40875792>
11376 Reviewed by Tim Horton.
11378 This jscOptions option can be used by a layout test to specify some JSC runtime
11379 options needed by the test e.g. by adding something like this to the top of the
11380 html file after the DOCTYPE tag:
11381 <!-- webkit-test-runner [ jscOptions=--useIntlPluralRules=true ] -->
11383 If more than one option is needed, the options can be specified as a comma
11384 separated string e.g.
11385 <!-- webkit-test-runner [ jscOptions=--useIntlPluralRules=true,--useZombieMode=true ] -->
11387 This only works with JSC options that can be changed at runtime. Not all JSC
11388 options can be changed this way as some options are only checked and set once at
11389 VM / process initialization time: changing this type of options may have no
11390 effect. It's the test writer's responsibility to determine which options are
11391 appropriate for with this webkit-test-runner jscOptions option.
11393 This implementation is a workaround until we can change the run-webkit-tests
11394 scripts to parse the option and apply it to a new launch of DRT or WKTR:
11395 https://bugs.webkit.org/show_bug.cgi?id=186452
11397 * DumpRenderTree/TestOptions.cpp:
11398 (TestOptions::TestOptions):
11399 (TestOptions::webViewIsCompatibleWithOptions const):
11400 * DumpRenderTree/TestOptions.h:
11401 * DumpRenderTree/mac/DumpRenderTree.mm:
11403 (resetWebViewToConsistentStateBeforeTesting):
11404 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
11405 (WTR::InjectedBundle::didReceiveMessageToPage):
11406 * WebKitTestRunner/TestController.cpp:
11407 (WTR::TestController::resetStateToConsistentValues):
11408 (WTR::updateTestOptionsFromTestHeader):
11409 * WebKitTestRunner/TestOptions.h:
11410 (WTR::TestOptions::hasSameInitializationOptions const):
11412 2018-06-11 Brady Eidson <beidson@apple.com>
11414 Add a command line default to force WebKitTestRunner to turn on process swap on navigation.
11415 https://bugs.webkit.org/show_bug.cgi?id=186534
11417 Reviewed by Chris Dumez.
11419 Right now Process Swap On Navigation is enabled on a per-test basis.
11420 The future is to enable it by default.
11422 Adding a 'defaults write' helps us get to that future.
11424 * WebKitTestRunner/TestController.cpp:
11425 (WTR::TestController::testOptionsForTest const):
11426 (WTR::TestController::platformAddTestOptions const):
11427 * WebKitTestRunner/TestController.h:
11428 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
11429 (WTR::TestController::platformAddTestOptions const):
11431 2018-06-11 Chris Dumez <cdumez@apple.com>
11433 Allow enabling PSON in layout tests without window.open support
11434 https://bugs.webkit.org/show_bug.cgi?id=186537
11436 Reviewed by Geoffrey Garen.
11438 Allow enabling PSON in layout tests without window.open support since window.open support
11439 is far from being ready and we plan to enable PSON in layout tests soon.
11441 * WebKitTestRunner/TestController.cpp:
11442 (WTR::TestController::createWebViewWithOptions):
11443 (WTR::updateTestOptionsFromTestHeader):
11444 * WebKitTestRunner/TestOptions.h:
11445 (WTR::TestOptions::hasSameInitializationOptions const):
11447 2018-06-11 Brady Eidson <beidson@apple.com>
11449 Followup to [Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC
11450 https://bugs.webkit.org/show_bug.cgi?id=186436
11452 Patch by Darin Adler
11453 Reviewed by Brady Eidson.
11455 * TestWebKitAPI/Tests/mac/StopLoadingFromDidFinishLoading.mm:
11456 (TestWebKitAPI::TEST):
11458 2018-06-11 Mark Lam <mark.lam@apple.com>
11460 Gardening: skip BigInt tests on iOS until the feature is stable.
11461 <rdar://problem/40331121>
11465 * Scripts/run-jsc-stress-tests:
11467 2018-06-11 Fujii Hironori <Hironori.Fujii@sony.com>
11469 [Win][MiniBrowser] Add WebKitBrowserWindow class for modern WebKit API
11470 https://bugs.webkit.org/show_bug.cgi?id=186478
11472 Reviewed by Alex Christensen.
11474 Added "New WebKit Window" and "New WebKitLegacy Window" menu
11475 items. Disabled the menu item "New WebKit Window" if
11478 * MiniBrowser/win/CMakeLists.txt: Added WebKitBrowserWindow.cpp
11479 source file and ENABLE_WEBKIT macro if ENABLE_WEBKIT.
11480 * MiniBrowser/win/MainWindow.cpp:
11481 (MainWindow::MainWindow):
11482 (MainWindow::create):
11483 (MainWindow::init):
11484 (MainWindow::WndProc):
11485 * MiniBrowser/win/MainWindow.h:
11486 * MiniBrowser/win/MiniBrowserLib.rc:
11487 * MiniBrowser/win/MiniBrowserLibResource.h:
11488 * MiniBrowser/win/PrintWebUIDelegate.cpp:
11489 (PrintWebUIDelegate::createWebViewWithRequest):
11490 * MiniBrowser/win/WebKitBrowserWindow.cpp: Added.
11495 (WebKitBrowserWindow::create):
11496 (WebKitBrowserWindow::WebKitBrowserWindow):
11497 (WebKitBrowserWindow::init):
11498 (WebKitBrowserWindow::hwnd):
11499 (WebKitBrowserWindow::loadURL):
11500 (WebKitBrowserWindow::loadHTMLString):
11501 (WebKitBrowserWindow::navigateForwardOrBackward):
11502 (WebKitBrowserWindow::navigateToHistory):
11503 (WebKitBrowserWindow::setPreference):
11504 (WebKitBrowserWindow::print):
11505 (WebKitBrowserWindow::launchInspector):
11506 (WebKitBrowserWindow::setUserAgent):
11507 (WebKitBrowserWindow::userAgent):
11508 (WebKitBrowserWindow::showLayerTree):
11509 (WebKitBrowserWindow::updateStatistics):
11510 (WebKitBrowserWindow::resetZoom):
11511 (WebKitBrowserWindow::zoomIn):
11512 (WebKitBrowserWindow::zoomOut):
11513 (toWebKitBrowserWindow):
11514 (WebKitBrowserWindow::didReceiveTitleForFrame):
11515 (WebKitBrowserWindow::didCommitLoadForFrame):
11516 * MiniBrowser/win/WebKitBrowserWindow.h:
11517 * MiniBrowser/win/WinMain.cpp:
11520 2018-06-11 Keith Miller <keith_miller@apple.com>
11522 Add missing whitespace to run-jsc command
11523 https://bugs.webkit.org/show_bug.cgi?id=186528
11525 Reviewed by Mark Lam.
11529 2018-06-11 Philippe Normand <pnormand@igalia.com>
11531 [webkitpy] PHP7.2 support on Debian platforms
11532 https://bugs.webkit.org/show_bug.cgi?id=186521
11534 Reviewed by Michael Catanzaro.
11536 * Scripts/webkitpy/port/base.py:
11537 (Port._debian_php_version): Refactor and add PHP 7.2 version support.
11539 2018-06-11 Carlos Garcia Campos <cgarcia@igalia.com>
11541 Unreviewed. Fix WPE API and layout tests after r232670.
11543 Now that dyz is not installed, there's not -default.so symlink for the WPE backend, so we need to use
11544 WPE_BACKEND_LIBRARY environment variable to ensure tests are run with fdo backend.
11546 * Scripts/run-wpe-tests:
11547 (WPETestRunner.__init__):
11549 (WPETestRunner.setup_testing_environment):
11550 * Scripts/webkitpy/port/wpe.py:
11551 (WPEPort.setup_environ_for_server):
11552 * glib/api_test_runner.py:
11553 (TestRunner.setup_testing_environment):
11554 (TestRunner.run_tests):
11555 (TestRunner._setup_testing_environment): Deleted.
11557 2018-06-10 Carlos Garcia Campos <cgarcia@igalia.com>
11559 [GTK][WPE] Add API run run javascript from a WebKitWebView in an isolated world
11560 https://bugs.webkit.org/show_bug.cgi?id=186192
11562 Reviewed by Michael Catanzaro.
11564 Add tests cases for the new API.
11566 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
11567 (testWebViewRunJavaScript):
11568 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
11569 (methodCallCallback):
11570 (webkit_web_extension_initialize_with_user_data):
11571 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
11572 (runJavaScriptInWorldReadyCallback):
11573 (WebViewTest::runJavaScriptFromGResourceAndWaitUntilFinished):
11574 (WebViewTest::runJavaScriptInWorldAndWaitUntilFinished):
11575 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
11577 2018-06-10 Carlos Garcia Campos <cgarcia@igalia.com>
11579 [WPE] Add a MiniBrowser and use it to run WebDriver tests
11580 https://bugs.webkit.org/show_bug.cgi?id=186345
11582 Reviewed by Žan Doberšek.
11584 Most of the code is based on dyz and gtk MiniBrowser. This patch adds a new internal library WPEToolingBackends,
11585 including the headless view backend and a new window backend to be used by the MiniBrowser. MiniBrowser can also
11586 run in headless mode, by using the headless backend instead of the window one, which will allow us to run the
11587 WebDriver tests in the bots.
11590 * MiniBrowser/wpe/CMakeLists.txt: Added.
11591 * MiniBrowser/wpe/main.cpp: Added.
11592 (automationStartedCallback):
11593 (createViewBackend):
11595 * Scripts/run-minibrowser: Remove WPE specific code.
11596 * Scripts/run-webdriver-tests: Add headless display-server option.
11597 * Scripts/webkitdirs.pm:
11598 (launcherName): Remove WPE specific code.
11599 * Scripts/webkitpy/webdriver_tests/webdriver_driver_wpe.py:
11600 (WebDriverWPE.browser_name): Return MiniBrowser.
11601 (WebDriverWPE.browser_path): Return the path to the MiniBrowser in build dir.
11602 (WebDriverWPE.browser_args): Add --headless when running in headless mode.
11603 (WebDriverWPE.capabilities): Use the full browser path.
11604 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
11605 (WebDriverTestRunnerSelenium.collect_tests): Fix early return value.
11606 * TestWebKitAPI/PlatformWPE.cmake: Use WPEToolingBackends instead of HeadlessViewBackend.
11607 * TestWebKitAPI/PlatformWebView.h: Ditto.
11608 * TestWebKitAPI/glib/PlatformWPE.cmake: Ditto
11609 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
11610 (Test::createWebViewBackend): Ditto.
11611 * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp:
11612 (TestWebKitAPI::PlatformWebView::initialize): Ditto.
11613 * WebKitTestRunner/PlatformWPE.cmake: Ditto.
11614 * WebKitTestRunner/PlatformWebView.h: Ditto.
11615 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
11616 (WTR::PlatformWebView::PlatformWebView): Ditto.
11617 * wpe/HeadlessViewBackend/CMakeLists.txt: Removed.
11618 * wpe/backends/CMakeLists.txt: Added.
11619 * wpe/backends/HeadlessViewBackend.cpp: Renamed from Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.cpp.
11620 (WPEToolingBackends::getEGLDisplay):
11621 (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend):
11622 (WPEToolingBackends::HeadlessViewBackend::~HeadlessViewBackend):
11623 (WPEToolingBackends::HeadlessViewBackend::createSnapshot):
11624 (WPEToolingBackends::HeadlessViewBackend::performUpdate):
11625 (WPEToolingBackends::HeadlessViewBackend::displayBuffer):
11626 * wpe/backends/HeadlessViewBackend.h: Renamed from Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.h.
11627 * wpe/backends/ViewBackend.cpp: Added.
11628 (WPEToolingBackends::ViewBackend::ViewBackend):
11629 (WPEToolingBackends::ViewBackend::~ViewBackend):
11630 (WPEToolingBackends::ViewBackend::initialize):
11631 (WPEToolingBackends::ViewBackend::setInputClient):
11632 (WPEToolingBackends::ViewBackend::backend const):
11633 (WPEToolingBackends::ViewBackend::dispatchInputPointerEvent):
11634 (WPEToolingBackends::ViewBackend::dispatchInputAxisEvent):
11635 (WPEToolingBackends::ViewBackend::dispatchInputKeyboardEvent):
11636 * wpe/backends/ViewBackend.h: Added.
11637 * wpe/backends/WindowViewBackend.cpp: Added.
11638 (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
11639 (WPEToolingBackends::WindowViewBackend::~WindowViewBackend):
11640 (WPEToolingBackends::WindowViewBackend::displayBuffer):
11641 (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
11642 * wpe/backends/WindowViewBackend.h: Added.
11643 * wpe/jhbuild.modules: Remove dyz and add wayland-protocols.
11645 2018-06-10 Fujii Hironori <Hironori.Fujii@sony.com>
11647 [Win][MiniBrowser] MiniBrowser class should be renamed to WebKitLegacyBrowserWindow
11648 https://bugs.webkit.org/show_bug.cgi?id=186427
11650 Reviewed by Ryosuke Niwa.
11652 * MiniBrowser/win/AccessibilityDelegate.cpp:
11653 * MiniBrowser/win/AccessibilityDelegate.h:
11654 (AccessibilityDelegate::AccessibilityDelegate):
11655 * MiniBrowser/win/CMakeLists.txt: Removed MiniBrowser.cpp. Added WebKitLegacyBrowserWindow.cpp.
11656 * MiniBrowser/win/Common.h:
11657 * MiniBrowser/win/MainWindow.cpp:
11658 (MainWindow::init):
11659 * MiniBrowser/win/MainWindow.h:
11660 * MiniBrowser/win/MiniBrowserWebHost.cpp:
11661 * MiniBrowser/win/MiniBrowserWebHost.h:
11662 (MiniBrowserWebHost::MiniBrowserWebHost):
11663 * MiniBrowser/win/PageLoadTestClient.cpp:
11664 (PageLoadTestClient::PageLoadTestClient):
11665 * MiniBrowser/win/PageLoadTestClient.h:
11666 * MiniBrowser/win/PrintWebUIDelegate.cpp:
11667 (PrintWebUIDelegate::createWebViewWithRequest):
11668 * MiniBrowser/win/PrintWebUIDelegate.h:
11669 (PrintWebUIDelegate::PrintWebUIDelegate):
11670 * MiniBrowser/win/ResourceLoadDelegate.cpp:
11671 * MiniBrowser/win/ResourceLoadDelegate.h:
11672 (ResourceLoadDelegate::ResourceLoadDelegate):
11673 * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp: Renamed from Tools/MiniBrowser/win/MiniBrowser.cpp.
11674 * MiniBrowser/win/WebKitLegacyBrowserWindow.h: Renamed from Tools/MiniBrowser/win/MiniBrowser.h.
11675 * MiniBrowser/win/WebDownloadDelegate.cpp:
11676 (WebDownloadDelegate::WebDownloadDelegate):
11677 * MiniBrowser/win/WebDownloadDelegate.h:
11679 2018-06-10 Chris Dumez <cdumez@apple.com>
11681 Reload the Web view in case of crash if the client does not implement webViewWebContentProcessDidTerminate delegate
11682 https://bugs.webkit.org/show_bug.cgi?id=186468
11684 Reviewed by Geoffrey Garen.
11686 Add API test coverage.
11688 * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
11689 (-[BasicNavigationDelegateWithoutCrashHandler webView:didStartProvisionalNavigation:]):
11690 (-[BasicNavigationDelegateWithoutCrashHandler webView:didFinishNavigation:]):
11693 2018-06-10 Michael Catanzaro <mcatanzaro@igalia.com>
11695 [WPE][GTK] paypal.com requires user agent quirk
11696 https://bugs.webkit.org/show_bug.cgi?id=186466
11698 Reviewed by Carlos Garcia Campos.
11700 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
11701 (TestWebKitAPI::TEST):
11703 2018-06-09 Dan Bernstein <mitz@apple.com>
11705 [Xcode] Clean up and modernize some build setting definitions
11706 https://bugs.webkit.org/show_bug.cgi?id=186463
11708 Reviewed by Sam Weinig.
11710 * DumpRenderTree/mac/Configurations/Base.xcconfig: Removed definition for macOS 10.11.
11711 Simplified the definition of WK_PRIVATE_FRAMEWORK_STUBS_DIR now that
11712 WK_XCODE_SUPPORTS_TEXT_BASED_STUBS is true for all supported Xcode versions.
11713 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: Removed definition for macOS
11715 * MiniBrowser/Configurations/Base.xcconfig: Ditto.
11716 * MiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
11717 * TestWebKitAPI/Configurations/Base.xcconfig: Ditto.
11718 * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Ditto.
11719 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Simplified the definitions of
11720 ENABLE_APPLE_PAY and ENABLE_VIDEO_PRESENTATION_MODE now macOS 10.12 is the earliest
11722 * TestWebKitAPI/Configurations/WebKitTargetConditionals.xcconfig: Removed definitions for
11724 * WebKitTestRunner/Configurations/Base.xcconfig: Ditto. Also simplified the definition of
11725 WK_PRIVATE_FRAMEWORK_STUBS_DIR now that WK_XCODE_SUPPORTS_TEXT_BASED_STUBS is true for all
11726 supported Xcode versions
11727 * WebKitTestRunner/Configurations/DebugRelease.xcconfig: Removed definition for macOS 10.11.
11729 2018-06-09 Dan Bernstein <mitz@apple.com>
11731 Added missing file references to the Configuration group.
11733 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
11735 2018-06-08 Darin Adler <darin@apple.com>
11737 [Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC
11738 https://bugs.webkit.org/show_bug.cgi?id=186436
11740 Reviewed by Anders Carlsson.
11742 * TestWebKitAPI/Tests/WebKitObjC/CustomProtocolsTest.mm:
11743 (TestWebKitAPI::WebKit2CustomProtocolsTest_ProcessPoolDestroyedDuringLoading):
11744 Use @autoreleasepool.
11745 * TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:
11746 (TestWebKitAPI::buildAndPerformTest): Ditto.
11747 * TestWebKitAPI/Tests/mac/StopLoadingFromDidFinishLoading.mm:
11748 (TestWebKitAPI::WebKitLegacy_StopLoadingFromDidFinishLoading): Ditto.
11750 2018-06-08 Wenson Hsieh <wenson_hsieh@apple.com>
11752 [WebKit on watchOS] Upstream watchOS source additions to OpenSource (Part 1)
11753 https://bugs.webkit.org/show_bug.cgi?id=186442
11754 <rdar://problem/40879364>
11756 Reviewed by Tim Horton.
11758 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
11760 2018-06-08 Alicia Boya GarcÃa <aboya@igalia.com>
11762 [GTK] Update to libva-2.1.0 in jhbuild
11763 https://bugs.webkit.org/show_bug.cgi?id=186434
11765 Reviewed by Philippe Normand.
11767 * gstreamer/jhbuild.modules:
11769 2018-06-07 Yusuke Suzuki <utatane.tea@gmail.com>
11771 [WTF] Add WorkerPool
11772 https://bugs.webkit.org/show_bug.cgi?id=174569
11774 Reviewed by Carlos Garcia Campos.
11776 * TestWebKitAPI/CMakeLists.txt:
11777 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
11778 * TestWebKitAPI/Tests/WTF/WorkerPool.cpp: Added.
11779 (TestWebKitAPI::TEST):
11781 2018-06-07 Fujii Hironori <Hironori.Fujii@sony.com>
11783 [Win][MiniBrowser] Add a new BrowserWindow interface to abstract WK1 and WK2 BrowserWindow
11784 https://bugs.webkit.org/show_bug.cgi?id=186421
11786 Reviewed by Ryosuke Niwa.
11788 This is the core patch to make MiniBrowser to support WK1 and WK2
11789 windows (Bug 184770).
11791 I will rename MiniBrowser class to WK1BrowserWindow in a follow-up
11792 patch (Bug 184770 Comment 12).
11794 * MiniBrowser/win/BrowserWindow.h: Added.
11795 * MiniBrowser/win/MainWindow.cpp:
11796 (MainWindow::WndProc):
11797 * MiniBrowser/win/MainWindow.h:
11798 (MainWindow::browserWindow const):
11799 * MiniBrowser/win/MiniBrowser.cpp:
11800 (MiniBrowser::create):
11801 (MiniBrowser::navigateForwardOrBackward): Removed the unsed first argument hWnd.
11802 (MiniBrowser::navigateToHistory): Ditto.
11803 * MiniBrowser/win/MiniBrowser.h: Inherit BrowserWindow interface.
11804 Make all other methods private and make delegates classes friends.
11805 * MiniBrowser/win/PrintWebUIDelegate.cpp:
11806 (PrintWebUIDelegate::createWebViewWithRequest):
11808 2018-06-07 Fujii Hironori <Hironori.Fujii@sony.com>
11810 [Win][MiniBrowser] MiniBrowser::updateDeviceScaleFactor should be a MainWindow's method
11811 https://bugs.webkit.org/show_bug.cgi?id=186387
11813 Reviewed by Ryosuke Niwa.
11815 MiniBrowser::updateDeviceScaleFactor does nothing for MiniBrowser.
11816 It should be a MainWindow's method.
11818 * MiniBrowser/win/MainWindow.cpp:
11819 (MainWindow::init): Call MainWindow::updateDeviceScaleFactor.
11820 (MainWindow::resizeSubViews): Do not set a font every time window size is changed.
11821 (MainWindow::WndProc): Call MainWindow::updateDeviceScaleFactor on WM_DPICHANGED.
11822 (MainWindow::updateDeviceScaleFactor): Converted from
11823 MiniBrowser::updateDeviceScaleFactor and
11824 MiniBrowser::generateFontForScaleFactor. Set a URL bar's font if DPI is changed.
11825 * MiniBrowser/win/MainWindow.h:
11826 * MiniBrowser/win/MiniBrowser.cpp:
11827 (MiniBrowser::init):
11828 (MiniBrowser::generateFontForScaleFactor): Deleted.
11829 (MiniBrowser::updateDeviceScaleFactor): Deleted.
11830 * MiniBrowser/win/MiniBrowser.h:
11831 (MiniBrowser::deviceScaleFactor): Deleted.
11832 (MiniBrowser::urlBarFont): Deleted.
11834 2018-06-07 Jonathan Bedard <jbedard@apple.com>
11836 [webkitpy] Treat svn versions as Version objects
11837 https://bugs.webkit.org/show_bug.cgi?id=186403
11838 <rdar://problem/40904860>
11840 Reviewed by Dan Bernstein.
11842 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
11843 * Scripts/webkitpy/common/checkout/scm/svn.py:
11844 (SVN.svn_version): Return Version object instead of string.
11845 (SVN._status_regexp): Convert version string to Version object.
11846 (SVN.add_list): Ditto.
11848 2018-06-07 Tadeu Zagallo <tzagallo@apple.com>
11850 Don't try to allocate JIT memory if we don't have the JIT entitlement
11851 https://bugs.webkit.org/show_bug.cgi?id=182605
11852 <rdar://problem/38271229>
11854 Reviewed by Mark Lam.
11856 Add the Security framework to the TestWTF target, since it's required by the new function to check the entitlements.
11858 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
11860 2018-06-07 Mark Lam <mark.lam@apple.com>
11862 Enhance run-jsc-stress-tests to allow a test to specify test specific options required for it to run.
11863 https://bugs.webkit.org/show_bug.cgi?id=186409
11864 <rdar://problem/40909007>
11866 Reviewed by Saam Barati.
11868 This is needed because some tests are written with specific features in mind, and
11869 we may not necessarily want to enable that option for all tests.
11871 We can now specify something like this at the top of a test file:
11872 //@ requireOptions("--useIntlPluralRules=true")
11874 ... and ensure that that test will be run with the --useIntlPluralRules=true
11875 option for all test configurations that run the test.
11877 * Scripts/run-jsc-stress-tests:
11879 2018-06-07 Tim Horton <timothy_horton@apple.com>
11881 REGRESSION (r232544): [iOS] TestWebKitAPI.WebKit.OverrideLayoutSizeChangesDuringAnimatedResizeSucceed is failing
11882 https://bugs.webkit.org/show_bug.cgi?id=186395
11883 <rdar://problem/40902427>
11885 Reviewed by Wenson Hsieh.
11887 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
11889 endAnimatedResize no longer synchronizes, so we have to wait for the next presentation update.
11891 2018-06-07 Thibault Saunier <tsaunier@igalia.com>
11893 [GTK][WPE] Start implementing MediaStream API
11894 https://bugs.webkit.org/show_bug.cgi?id=185787
11896 Reviewed by Philippe Normand.
11898 * Scripts/webkitpy/style/checker.py: Apply special formatting rules for new GObject subclasses.
11899 * gstreamer/jhbuild.modules: Added a patch for the gst-plugins-base.
11900 * gstreamer/patches/gst-plugins-base-0001-parsebin-Post-STREAM_COLLECTION-on-EVENT_STREAM_COLL.patch:
11901 Added this fix to gst-plugings-base to fix the decodebin3. Merged as 89d0e9cc92a86aa0227ee87406737b6d31670aea
11903 2018-06-07 Brendan McLoughlin <brendan@bocoup.com>
11905 Update web-platform-tests github location in webkitpy.w3c.test_importer
11906 https://bugs.webkit.org/show_bug.cgi?id=186392
11908 Reviewed by Youenn Fablet.
11910 * Scripts/webkitpy/w3c/test_importer.py:
11911 (TestImporter.write_import_log):
11913 2018-06-07 Jonathan Bedard <jbedard@apple.com>
11915 webkitperl: Generalize .internal SDK suffix
11916 https://bugs.webkit.org/show_bug.cgi?id=186352
11917 <rdar://problem/40853947>
11919 Reviewed by Alexey Proskuryakov.
11921 * Scripts/build-webkit:
11922 * Scripts/package-root:
11924 * Scripts/webkitdirs.pm:
11925 (parseAvailableXcodeSDKS): Parse 'xcodebuild -showsdks' output.
11926 (availableXcodeSDKS): Generate a list of all available Xcode SDKs on this machine.
11927 (determineXcodeSDK): Always prefer .internal SDKs if available.
11928 * Scripts/webkitperl/webkitdirs_unittest/availableXcodeSDKS.pl:
11930 2018-06-07 Fujii Hironori <Hironori.Fujii@sony.com>
11932 [Win][MiniBrowser] Support multiple windows properly
11933 https://bugs.webkit.org/show_bug.cgi?id=186263
11935 Reviewed by Ryosuke Niwa.
11937 The current implementation of
11938 PrintWebUIDelegate::createWebViewWithRequest is wrong. It is using
11939 CreateProcess to open a new window, and doesn't return the new
11940 instance of IWebView. As the result, for example, window.close
11941 doesn't work as expected.
11943 In this change, a new MainWindow is created and return the
11944 IWebView in PrintWebUIDelegate::createWebViewWithRequest.
11946 In addition to it, this change unifies the lifetime of MiniBrowser
11947 and its delegates AccessibilityDelegate, PrintWebUIDelegate,
11948 ResourceLoadDelegate and WebDownloadDelegate in order to keep
11949 MiniBrowser alive as long as the delegates live. Because the
11950 window of webview keeps references of such delegates and accesses
11951 those after MiniBrowser destruction.
11953 * MiniBrowser/win/MainWindow.h: Added s_numInstances class member
11954 to count the number of instance to close the application. Do not
11955 use unique_ptr for m_browserWindow because it has ref count now.
11956 * MiniBrowser/win/MainWindow.cpp:
11957 (MainWindow::MainWindow): Increment s_numInstances.
11958 (MainWindow::~MainWindow): Decrement s_numInstances.
11959 (MainWindow::create):
11960 (MainWindow::init):
11961 (MainWindow::WndProc): Rename thiz to thisWindow. Keep this
11962 instance alive during this function by using RefPtr<MainWindow>.
11963 Deref the MainWindow instance on WM_DESTROY. Quit the application
11964 when the last MainWindow is closed.
11965 (MainWindow::cachesDialogProc): Rename thiz to thisWindow.
11966 (MainWindow::customUserAgentDialogProc): Ditto.
11967 * MiniBrowser/win/MiniBrowser.h: Added declarations AddRef and Release.
11968 * MiniBrowser/win/MiniBrowser.cpp:
11969 (MiniBrowser::create):
11970 (MiniBrowser::AddRef):
11971 (MiniBrowser::Release):
11972 (MiniBrowser::init): Passes this to the constructors of delegates.
11973 * MiniBrowser/win/AccessibilityDelegate.cpp:
11974 (AccessibilityDelegate::AddRef): Delegate to MiniBrowser.
11975 (AccessibilityDelegate::Release): Ditto.
11976 * MiniBrowser/win/AccessibilityDelegate.h: Removed m_refCount.
11977 (AccessibilityDelegate::AccessibilityDelegate):
11978 * MiniBrowser/win/MiniBrowserWebHost.cpp:
11979 (MiniBrowserWebHost::AddRef): Delegate to MiniBrowser.
11980 (MiniBrowserWebHost::Release): Ditto.
11981 * MiniBrowser/win/MiniBrowserWebHost.h: Removed m_refCount.
11982 * MiniBrowser/win/PrintWebUIDelegate.cpp:
11983 (PrintWebUIDelegate::createWebViewWithRequest): Create a new
11984 MainWindow and return the IWebView.
11985 (PrintWebUIDelegate::AddRef): Delegate to MiniBrowser.
11986 (PrintWebUIDelegate::Release): Ditto.
11987 * MiniBrowser/win/PrintWebUIDelegate.h: Removed m_refCount.
11988 (PrintWebUIDelegate::PrintWebUIDelegate):
11989 * MiniBrowser/win/ResourceLoadDelegate.cpp:
11990 (ResourceLoadDelegate::AddRef): Delegate to MiniBrowser.
11991 (ResourceLoadDelegate::Release): Ditto.
11992 * MiniBrowser/win/ResourceLoadDelegate.h: Removed m_refCount.
11993 * MiniBrowser/win/WebDownloadDelegate.cpp:
11994 (WebDownloadDelegate::WebDownloadDelegate):
11995 (WebDownloadDelegate::AddRef): Delegate to MiniBrowser.
11996 (WebDownloadDelegate::Release): Ditto.
11997 * MiniBrowser/win/WebDownloadDelegate.h: Removed m_refCount.
11999 2018-06-06 Fujii Hironori <Hironori.Fujii@sony.com>
12001 [Win][MiniBrowser] Remove gMainWindow global variable
12002 https://bugs.webkit.org/show_bug.cgi?id=186378
12004 Reviewed by Ryosuke Niwa.
12006 I'm going to support multiple MainWindow in Bug 186263. It should
12007 not be assumed that MainWindow has only one instance. gMainWindow
12008 is used only in DisplayAuthDialog.
12010 * MiniBrowser/win/Common.cpp:
12011 (authDialogProc): Use DWLP_USER to store the dialog data.
12012 (displayAuthDialog): Moved and renamed from
12013 MainWindow::displayAuthDialog. Use DialogBoxParam instead of
12014 DialogBox to pass a data pointer. Do not return S_OK if
12015 DialogBoxParam returns -1. Take a HWND argument as the parent
12017 (DisplayAuthDialog): Deleted.
12018 * MiniBrowser/win/Common.h:
12019 * MiniBrowser/win/MainWindow.cpp:
12020 (authDialogProc): Moved to Common.cpp.
12021 (MainWindow::displayAuthDialog): Ditto.
12022 * MiniBrowser/win/MainWindow.h:
12023 * MiniBrowser/win/ResourceLoadDelegate.cpp:
12024 (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
12025 * MiniBrowser/win/WinMain.cpp:
12026 (wWinMain): Added a local variable mainWindow instead of using
12029 2018-06-06 Dan Bernstein <mitz@apple.com>
12031 [Xcode] Opt out of the New Build System
12032 https://bugs.webkit.org/show_bug.cgi?id=186380
12034 Reviewed by Alexey Proskuryakov.
12036 * Scripts/webkitdirs.pm:
12037 (XcodeOptions): Have -UseNewBuildSystem=NO passed to xcodebuild.
12039 2018-06-06 Antoine Quint <graouts@apple.com>
12041 Rename color-filter to -apple-color-filter and do not expose it to Web content
12042 https://bugs.webkit.org/show_bug.cgi?id=186306
12043 <rdar://problem/39874167>
12045 Reviewed by Simon Fraser.
12047 Adding an option to turn support for the -apple-color-filter property on via an HTML comment.
12049 * DumpRenderTree/TestOptions.cpp:
12050 (TestOptions::TestOptions):
12051 * DumpRenderTree/TestOptions.h:
12052 * DumpRenderTree/mac/DumpRenderTree.mm:
12053 (setWebPreferencesForTestOptions):
12054 * WebKitTestRunner/TestController.cpp:
12055 (WTR::TestController::resetPreferencesToConsistentValues):
12056 (WTR::updateTestOptionsFromTestHeader):
12057 * WebKitTestRunner/TestOptions.h:
12058 (WTR::TestOptions::hasSameInitializationOptions const):
12059 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
12060 (WTR::TestController::platformCreateWebView):
12062 2018-06-06 Brent Fulgham <bfulgham@apple.com>
12064 Adjust compile and runtime flags to match shippable state of features (Part 2)
12065 https://bugs.webkit.org/show_bug.cgi?id=186319
12066 <rdar://problem/40352045>
12068 Unreviewed test fix.
12070 TestWebKitAPI was timing out because 'color' input types are no longer support. I also discovered that the
12071 ASSERT_STREQ macro returns on error, which causes tests to time out whenever a 'done = true' call (needed to
12072 end the test) is done after ASSERT_STREQ, which might fail and return early, preventing the flag from being
12075 * TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsTextField.mm:
12076 (-[InjectedBundleNodeHandleIsTextField webProcessPlugIn:didCreateBrowserContextController:]): Make testing of
12077 the 'color' input type conditional on the feature being part of the build.
12078 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
12079 (-[AutoFillDelegate _webView:didClickAutoFillButtonWithUserInfo:]): Set the 'done=true' state before performing
12080 string equality assertions, since they do an early return and bypass the end state of the test.
12081 (-[DidResignInputElementStrongPasswordAppearanceDelegate _webView:didResignInputElementStrongPasswordAppearanceWithUserInfo:]): Ditto.
12082 (-[AutoFillAvailableDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Ditto.
12083 (-[InjectedBundleNodeHandleIsTextFieldDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Ditto.
12085 2018-06-05 Chris Dumez <cdumez@apple.com>
12087 Regression(r232082): Websites get loaded inside of Messages App chat transcript
12088 https://bugs.webkit.org/show_bug.cgi?id=186331
12089 <rdar://problem/40735446>
12091 Reviewed by Darin Adler.
12093 Add API test coverage.
12095 * TestWebKitAPI/Tests/mac/NoPolicyDelegateResponse.mm:
12096 (-[NoDecidePolicyForNavigationActionDecisionDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
12097 (-[NoDecidePolicyForNavigationActionDecisionDelegate webView:didStartProvisionalLoadForFrame:]):
12098 (TestWebKitAPI::TEST):
12099 (-[NoPolicyDelegateDecisionDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]): Deleted.
12100 (-[NoPolicyDelegateDecisionDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]): Deleted.
12101 (-[NoPolicyDelegateDecisionDelegate webView:didFinishLoadForFrame:]): Deleted.
12103 2018-06-05 Wenson Hsieh <wenson_hsieh@apple.com>
12105 DataInteractionTests ContentEditableToTextarea and ContentEditableToContentEditable are failing on recent iOS 12
12106 https://bugs.webkit.org/show_bug.cgi?id=186325
12107 <rdar://problem/40527850>
12109 Reviewed by Tim Horton.
12111 Tweak these API tests so that they're robust against changes to how NSAttributedStrings are serialized in item
12112 providers ("public.rtf" vs. "com.apple.flat-rtfd"). Across all versions of iOS, just verify that either rich
12113 text type is present in the list of dragged type identifiers, and that the rich text type is placed at a higher
12114 fidelity than plain text.
12116 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
12117 (checkRichTextTypePrecedesPlainTextType):
12118 (TestWebKitAPI::TEST):
12119 (checkTypeIdentifierPrecedesOtherTypeIdentifier): Deleted.
12121 2018-06-05 Brent Fulgham <bfulgham@apple.com>
12123 Adjust compile and runtime flags to match shippable state of features
12124 https://bugs.webkit.org/show_bug.cgi?id=186319
12125 <rdar://problem/40352045>
12127 Reviewed by Maciej Stachowiak, Jon Lee, and others.
12129 This patch revises the compile time and runtime state for various features to match their
12130 suitability for end-user releases.
12132 * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Update to match WebKit definition of
12133 WK_RELOCATABLE_FRAMEWORKS so that ENABLE(EXPERIMENTAL_FEATURES) is defined properly for
12135 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Don't build ENABLE_INPUT_TYPE_COLOR
12136 or ENABLE_INPUT_TYPE_COLOR_POPOVER.
12138 2018-06-05 Saam Barati <sbarati@apple.com>
12140 run-testmem should have a dry run option and an option to parse the stdout of executing the dry run
12141 https://bugs.webkit.org/show_bug.cgi?id=186293
12143 Reviewed by Mark Lam.
12145 This makes it easier to execute run-testmem on a device that doesn't have ruby
12146 on it. run-testmem now has a --dry option that will output commands to execute
12147 in bash. To run on a device that doesn't have ruby, just put its output into
12148 a bash script, and copy the PerformanceTests/testmem directory onto that device,
12149 and execute the bash script. Running that bash script will give you raw output.
12150 Make a file with that output and pass it into run-testmem using the --parse option.
12151 run-testmem will parse the raw output and compute the benchmark score.
12153 * Scripts/run-testmem:
12155 2018-06-05 Youenn Fablet <youenn@apple.com>
12157 ServiceWorker registration should store any script fetched through importScripts
12158 https://bugs.webkit.org/show_bug.cgi?id=182444
12159 <rdar://problem/37164835>
12161 Reviewed by Chris Dumez.
12163 Add support to crash the storage process from Internals.
12165 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
12166 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
12167 (WTR::TestRunner::terminateStorageProcess):
12168 * WebKitTestRunner/InjectedBundle/TestRunner.h:
12169 * WebKitTestRunner/TestController.cpp:
12170 (WTR::TestController::terminateStorageProcess):
12171 * WebKitTestRunner/TestController.h:
12172 * WebKitTestRunner/TestInvocation.cpp:
12173 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
12175 2018-06-05 Brent Fulgham <bfulgham@apple.com>
12177 Revise DEFAULT_EXPERIMENTAL_FEATURES_ENABLED to work properly on Apple builds
12178 https://bugs.webkit.org/show_bug.cgi?id=186286
12179 <rdar://problem/40782992>
12181 Reviewed by Dan Bernstein.
12183 Use the WK_RELOCATABLE_FRAMEWORKS flag (which is always defined for non-production builds)
12184 to define ENABLE(EXPERIMENTAL_FEATURES) so that we do not need to manually
12185 change this flag when preparing for a production release.
12187 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Use WK_RELOCATABLE_FRAMEWORKS to
12188 determine whether experimental features should be enabled, and use it to properly define
12191 2018-06-05 Robin Morisset <rmorisset@apple.com>
12193 Add a grammar (in antlr4 format) to the WSL spec.
12194 https://bugs.webkit.org/show_bug.cgi?id=186310
12196 Rubberstamped by Filip Pizlo
12198 It is just the raw rules, without much comments and no typesetting.
12199 Compiles to any of Java/JS/C++/etc.. with antlr4 (requires a JDK)
12201 It does not exactly match the parser of the current js implementation of WSL, it:
12202 - Accepts negative literals
12203 - Reserves keywords fallthrough/auto
12204 - Refuses '_' as a valid identifier
12205 - Accepts several capitalizations for Null/True/False
12206 - Accepts variable declarations at the top-level
12207 - Correctly parses ternary expressions
12208 - Forbids empty extension list for protocols
12209 - Does not allow a space between '[' and ']' in type suffixes
12210 - Correctly parses nested generics
12211 - Accepts a 'fallthrough;' statement (for switches)
12212 - Refuses chained relational operator (e.g. x < y < z)
12213 - Generally a completely different structure for parsing effectful expressions, although it probably accepts about the same language
12214 - Currently only accepts literals and identifiers as constexpr (while the js parser accepts way too much, including '(x += 42)')
12215 There are probably more differences that I missed. The js parser will probably have to be mostly rewritten to follow the spec more closely (and fix all the bugs).
12216 I will try to see if it can be automatically derived from the antlr4 grammar.
12218 * WebGPUShadingLanguageRI/SpecWork/WSL.g4: Added.
12220 2018-06-04 Frederic Wang <fwang@igalia.com>
12222 import-w3c-tests should rely on <meta name="flags"> to detect CSS manual tests
12223 https://bugs.webkit.org/show_bug.cgi?id=186261
12225 Reviewed by Youenn Fablet.
12227 * Scripts/webkitpy/w3c/test_parser.py:
12228 (TestParser.is_wpt_manualtest): Add code to detect whether a file is a manual test
12229 from its <meta name="flags"> tags. This is based on SourceFile::content_is_css_manual from
12230 the WPT repository.
12231 * Scripts/webkitpy/w3c/test_parser_unittest.py: Add a test to verify whether files with
12232 <meta name="flags"> are manual or non-manual according to CSS WG rules.
12234 2018-06-04 Dan Bernstein <mitz@apple.com>
12236 Fixed building ImageDiff with the default build system in the Xcode 10 developer beta.
12238 * ImageDiff/cg/Configurations/Base.xcconfig: Use #include? to include
12239 HaveInternalSDK.xcconfig, since it may not be preent.
12241 2018-06-04 Dan Bernstein <mitz@apple.com>
12243 Fixed building TestWebKitAPI with a shared build directory with XCBuild, which is the
12244 default build system in the Xcode 10 developer beta.
12246 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Changed the reference to the
12247 built libWTF.a to be relative to the built products directory.
12249 2018-06-04 Chris Dumez <cdumez@apple.com>
12251 Rename "Cross-Origin-Options" HTTP header to "Cross-Origin-Window-Policy"
12252 https://bugs.webkit.org/show_bug.cgi?id=186287
12253 <rdar://problem/40783352>
12255 Reviewed by Youenn Fablet.
12257 * DumpRenderTree/mac/DumpRenderTree.mm:
12258 (enableExperimentalFeatures):
12259 * DumpRenderTree/win/DumpRenderTree.cpp:
12260 (enableExperimentalFeatures):
12262 2018-06-04 Daniel Bates <dabates@apple.com>
12264 Typo in MockBugzillaQueries.fetch_attachment_ids_from_review_queue()
12265 https://bugs.webkit.org/show_bug.cgi?id=186290
12267 Reviewed by Aakash Jain.
12269 Although the usefulness of the code in MockBugzillaQueries.fetch_attachment_ids_from_review_queue() is
12270 questionable we should fix a typo when calling this mocked function with argument since.
12272 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
12273 (MockBugzillaQueries.fetch_attachment_ids_from_review_queue):
12275 2018-06-04 Dan Bernstein <mitz@apple.com>
12277 Fixed building with the macOS Mojave seed SDK.
12279 * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
12281 2018-06-04 Alexey Proskuryakov <ap@apple.com>
12283 Add Mojave support to WebKit tools
12284 https://bugs.webkit.org/show_bug.cgi?id=186282
12286 Reviewed by Daniel Bates.
12288 Nightly build support will be added separately.
12290 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave.png: Added.
12291 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave@2x.png: Added.
12292 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
12293 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
12294 Added dashboard support.
12296 * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
12297 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
12298 Trigger the right build queues on check-in.
12300 * Scripts/webkitpy/common/version_name_map.py:
12301 * Scripts/webkitpy/common/version_name_map_unittest.py:
12302 The main version mapping class updated.
12304 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
12305 * Scripts/webkitpy/port/mac_unittest.py:
12306 Updated for more platforms in unit tests.
12308 * TestResultServer/static-dashboards/flakiness_dashboard.js:
12309 Added the new platform to flakiness dashboard.
12311 2018-06-04 Wenson Hsieh <wenson_hsieh@apple.com>
12313 [WebKit on watchOS] Remove all uses of the EXTRA_ZOOM_MODE compiler flag
12314 https://bugs.webkit.org/show_bug.cgi?id=186279
12316 Reviewed by Tim Horton.
12318 Replaces uses of ENABLE(EXTRA_ZOOM_MODE) with PLATFORM(WATCHOS).
12320 * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
12322 2018-06-03 Fujii Hironori <Hironori.Fujii@sony.com>
12324 [Win][MiniBrowser] Remove gMiniBrowser global variable
12325 https://bugs.webkit.org/show_bug.cgi?id=186134
12327 Reviewed by Brent Fulgham.
12329 It should not be assumed there is only one main window and one browser
12330 window to support multiple windows properly. gMainWindow and
12331 gMiniBrowser global variables should be removed. This change
12332 removes gMiniBrowser.
12334 * MiniBrowser/win/Common.cpp: Removed gMiniBrowser global variable.
12335 * MiniBrowser/win/Common.h: Ditto.
12336 * MiniBrowser/win/MainWindow.cpp:
12337 (MainWindow::init):
12338 (MainWindow::WndProc):
12339 (EditProc): Post WM_COMMAND if the enter key is pressed in URL bar.
12340 (MainWindow::cachesDialogProc): Renamed from Caches.
12341 (MainWindow::customUserAgentDialogProc): Renamed from CustomUserAgent.
12342 (MainWindow::onURLBarEnter): Extracted from EditProc.
12343 (BackButtonProc): Deleted.
12344 (ForwardButtonProc): Deleted.
12345 (Caches): Renamed to MainWindow::cachesDialogProc.
12346 (CustomUserAgent): Renamed to MainWindow::customUserAgentDialogProc.
12347 * MiniBrowser/win/MainWindow.h: Convert hCacheWnd global variable to a member variable of MainWindow.
12348 * MiniBrowser/win/MiniBrowserLibResource.h:
12349 * MiniBrowser/win/WinMain.cpp:
12352 2018-06-02 Darin Adler <darin@apple.com>
12354 [Cocoa] Update some code to be more ARC-compatible to prepare for future ARC adoption
12355 https://bugs.webkit.org/show_bug.cgi?id=186227
12357 Reviewed by Dan Bernstein.
12359 * DumpRenderTree/mac/AccessibilityCommonMac.mm:
12360 (+[NSString stringWithJSStringRef:]): Use CFBridgingRelease instead of autorelease.
12361 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
12363 * DumpRenderTree/mac/AccessibilityControllerMac.mm: Add a missing include.
12365 * DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
12366 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
12367 * DumpRenderTree/mac/AccessibilityTextMarkerMac.mm:
12368 (AccessibilityTextMarker::isEqual): Ditto.
12369 (AccessibilityTextMarkerRange::isEqual): Ditto.
12371 * DumpRenderTree/mac/DumpRenderTree.mm:
12372 (-[DumpRenderTree _waitForWebThread]): Use @autoreleasepool instead of NSAutoreleasePool.
12373 (DumpRenderTreeMain): Ditto.
12374 (WebThreadLockAfterDelegateCallbacksHaveCompleted): Ditto.
12377 * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
12378 (copyFile): Use a std::pair to return both a URL and an error rather than using an
12379 out argument for the NSError.
12380 (-[DumpRenderTreeFilePromiseReceiver receivePromisedFilesAtDestination:options:operationQueue:reader:]):
12381 Updated for the above change.
12383 * DumpRenderTree/mac/DumpRenderTreeWindow.mm:
12384 (-[DumpRenderTreeWindow _addToOpenWindows]): Add __bridge to a bridging typecast.
12385 (-[DumpRenderTreeWindow close]): Ditto.
12386 * DumpRenderTree/mac/LayoutTestHelper.m:
12387 (setDisplayColorProfile): Ditto.
12389 * DumpRenderTree/mac/PolicyDelegate.mm: Add a missing include.
12391 * DumpRenderTree/mac/ResourceLoadDelegate.mm:
12392 (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
12393 Add __bridge to a bridging typecast.
12394 * DumpRenderTree/mac/TestRunnerMac.mm:
12395 (-[APITestDelegateIPhone initWithTestRunner:utf8Data:baseURL:]): Ditto.
12396 (TestRunner::apiTestNewWindowDataLoadBaseURL): Use @autoreleasepool instead of NSAutoreleasePool.
12398 * DumpRenderTree/mac/TextInputControllerMac.m: Fix a comment.
12400 * DumpRenderTree/mac/UIScriptControllerMac.mm:
12401 (WTR::UIScriptController::replaceTextAtRange): Add __bridge to a bridging typecast.
12402 (WTR::UIScriptController::contentsOfUserInterfaceItem const): Ditto.
12403 (WTR::UIScriptController::overridePreference): Ditto.
12404 * DumpRenderTree/mac/WorkQueueItemMac.mm:
12405 (LoadItem::invoke const): Ditto.
12406 (LoadHTMLStringItem::invoke const): Ditto.
12407 (ScriptItem::invoke const): Ditto.
12409 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
12410 (+[NSString stringWithJSStringRef:]): Use CFBridgingRelease instead of autorelease.
12411 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
12413 * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
12414 (+[NSString stringWithJSStringRef:]): Use CFBridgingRelease instead of autorelease.
12415 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
12417 * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
12418 (WTR::AccessibilityController::accessibleElementById): Add __bridge to a bridging typecast.
12419 * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
12420 (-[NSString createJSStringRef]): Ditto.
12421 * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm:
12422 (WTR::AccessibilityTextMarker::isEqual): Ditto.
12423 * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm:
12424 (WTR::AccessibilityTextMarkerRange::isEqual): Ditto.
12425 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
12426 (WTR::AccessibilityUIElement::setSelectedVisibleTextRange): Ditto.
12427 (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Ditto.
12428 (WTR::AccessibilityUIElement::textMarkerRangeLength): Ditto.
12429 (WTR::AccessibilityUIElement::previousTextMarker): Ditto.
12430 (WTR::AccessibilityUIElement::nextTextMarker): Ditto.
12431 (WTR::AccessibilityUIElement::stringForTextMarkerRange): Ditto.
12432 (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
12433 (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
12434 (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
12435 (WTR::AccessibilityUIElement::accessibilityElementForTextMarker): Ditto.
12436 (WTR::createJSStringRef): Ditto.
12437 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
12438 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
12439 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute): Ditto.
12440 (WTR::AccessibilityUIElement::indexForTextMarker): Ditto.
12441 (WTR::AccessibilityUIElement::isTextMarkerValid): Ditto.
12442 (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
12443 (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
12444 (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
12445 (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
12446 (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
12447 (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
12448 (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
12449 (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
12450 (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
12451 (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
12452 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
12453 (WTR::initializeWebViewConfiguration): Ditto.
12454 (WTR::TestController::platformContext): Ditto.
12455 (WTR::TestController::platformPreferences): Ditto.
12456 (WTR::TestController::platformAdjustContext): Ditto.
12457 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
12458 (WTR::PlatformWebView::PlatformWebView): Ditto.
12459 * WebKitTestRunner/mac/TestControllerMac.mm:
12460 (WTR::TestController::initializeInjectedBundlePath): Ditto.
12461 (WTR::TestController::initializeTestPluginDirectory): Ditto.
12462 (WTR::TestController::platformConfigureViewForTest): Ditto.
12464 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
12465 (WTR::nsString): Use CFBridgingRelease instead of autorelease.
12466 (WTR::UIScriptController::platformPlayBackEventStream): Add __bridge to a bridging
12469 * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm: Add a missing include.
12471 * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
12472 (-[LocalPasteboard setPropertyList:forType:]): Add _bridge to a bridging typecast.
12473 (-[LocalPasteboard setString:forType:]): Ditto.
12475 * WebKitTestRunner/mac/main.mm:
12476 (main): Use @autoreleasepool instead of NSAutoreleasePool.
12478 2018-06-02 Keith Miller <keith_miller@apple.com>
12480 run-jsc should pass the option to use dollar vm by default
12481 https://bugs.webkit.org/show_bug.cgi?id=186170
12483 Reviewed by Yusuke Suzuki.
12487 2018-06-02 Commit Queue <commit-queue@webkit.org>
12489 Unreviewed, rolling out r232421.
12490 https://bugs.webkit.org/show_bug.cgi?id=186240
12492 Breaks webkitpy tests (Requested by aakashjain on #webkit).
12494 Reverted changeset:
12496 "Add some tests for lldb_webkit.py"
12497 https://bugs.webkit.org/show_bug.cgi?id=183744
12498 https://trac.webkit.org/changeset/232421
12500 2018-06-01 Daniel Bates <dabates@apple.com>
12502 Add some tests for lldb_webkit.py
12503 https://bugs.webkit.org/show_bug.cgi?id=183744
12505 Reviewed by Alexey Proskuryakov.
12507 Adds some tests to ensure we do not regress LLDB pretty-printing of WTF::StringImpl
12508 and WTF::String objects.
12510 The tests make use of the LLDB Python API (lldb.py) and a simple debug-built test
12511 program, lldbWebKitTester, to run. For now, we only support building lldbWebKitTester
12514 * Makefile: Build the simple test tool lldbWebKitTester on Mac.
12515 * Scripts/build-lldbwebkittester: Added.
12516 (buildProjectOrDie):
12517 * Scripts/dump-class-layout: Extract logic to compute the path to the LLDB Python module
12518 from here to Scripts/webkitpy/common/system/systemhost.py so that it can used by both
12519 this script and lldb/lldb_webkit_unittest.py. Also import the lldb module at the top of
12520 the file and take advantage of Python's default error semantics to throw an exception
12521 if the import fails instead of handling it ourself. This has the side effect that we
12522 now always import the LLDB Python module even if this script is invoked with --help.
12523 If this turns out to be a significant annoyance then we can look to dynamically import
12524 the module as we did before this change.
12525 (webkit_build_dir):
12527 (developer_dir): Deleted.
12528 (import_lldb): Deleted.
12529 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py: Update FIXME comment to reflect
12530 that fact that test-webkitpy does not support class and module fixtures. This is because
12531 test-webkitpy currently implements parallelism by breaking down existing test classes
12532 into individual test methods itself and having each worker run exactly one test method (via
12533 unittest.TestLoader.loadTestsFromName()) at a time. As a result of this reorganization,
12534 setUpModule()/setUpClass() are called for each test method as opposed to once per test
12536 (remove_dir): Ditto.
12537 * Scripts/webkitpy/common/system/systemhost.py:
12539 (SystemHost.path_to_lldb_python_directory): Added.
12540 * Scripts/webkitpy/test/main.py:
12541 (_find_lldb_webkit_tester): Returns whether there exists a Debug or Release-built lldbWebKitTester.
12542 (_build_lldb_webkit_tester): Builds lldbWebKitTester. For now, we only support building
12543 lldbWebKitTester on Mac.
12544 (main): Add Tools/lldb to the test search path if the platform has lldb.py.
12545 (Tester.run): Pass a boolean as to whether we will run the lldb_webkit unit tests.
12546 (Tester._run_tests): Modified to take a boolean as to whether to run the lldb_webkit unit tests.
12547 If we will run these tests then build lldbWebKitTester if it has not already been built as the
12548 unit tests depend on this program.
12549 * lldb/lldbWebKitTester/Configurations/Base.xcconfig: Added.
12550 * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig: Added.
12551 * lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: Added.
12552 * lldb/lldbWebKitTester/Makefile: Added.
12553 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Added.
12554 * lldb/lldbWebKitTester/main.cpp: Added.
12555 (breakForTestingSummaryProviders):
12557 (testSummaryProviders):
12559 * lldb/lldb_webkit_unittest.py: Added.
12560 (destroy_cached_debug_session):
12561 (LLDBDebugSession):
12562 (LLDBDebugSession.setup):
12563 (LLDBDebugSession.tearDown):
12564 (TestSummaryProviders):
12565 (TestSummaryProviders.setUpClass):
12566 (TestSummaryProviders._sbFrame):
12567 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_null_string):
12568 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_empty_string):
12569 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_8bit_string):
12570 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_16bit_string):
12571 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_null_string):
12572 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_empty_string):
12573 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_8bit_string):
12574 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string):
12576 2018-06-01 Frederic Wang <fwang@igalia.com>
12578 export-w3c-test-changes cannot apply patches when some w3c-import.log files are changed
12579 https://bugs.webkit.org/show_bug.cgi?id=186133
12581 Reviewed by Youenn Fablet.
12583 * Scripts/webkitpy/w3c/test_exporter.py: Exclude w3c-import.log from the diff.
12584 * Scripts/webkitpy/w3c/test_exporter_unittest.py: Add unit test.
12586 2018-05-31 Frederic Wang <fwang@igalia.com>
12588 export-w3c-test-changes should use the new location & name of the WPT repo
12589 https://bugs.webkit.org/show_bug.cgi?id=186135
12591 Reviewed by Youenn Fablet.
12593 Web platform tests have been moved to GitHub's web-platform-tests/wpt. This patch updates the
12594 corresponding variables to use the new organization and repository name. It also refactors a
12595 bit the code to reduce the amount of hardcoded strings.
12597 * Scripts/webkitpy/w3c/common.py: Use org web-platform-tests, repo name wpt. Also removes the
12598 final slash to WPT_GH_URL, so it can be used for repo URL too.
12599 * Scripts/webkitpy/w3c/test_exporter.py: Import more symbols and define WPT_PR_URL from
12601 (WebPlatformTestExporter._wpt_fork_branch_github_url): Use WPT_GH_REPO_NAME.
12602 (WebPlatformTestExporter._wpt_fork_push_url): Use WPT_GH_REPO_NAME.
12603 (WebPlatformTestExporter._git): Use WPT_GH_URL.
12604 (WebPlatformTestExporter._ensure_username_and_token): Use WPT_GH_ORG, WPT_GH_REPO_NAME.
12605 (WebPlatformTestExporter.make_pull_request): Use WPT_GH_ORG, WPT_GH_REPO_NAME.
12606 (parse_args): Use WPT_GH_REPO_NAME, WPT_GH_URL.
12607 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
12608 (TestExporterTest.test_export): Update organization and repository names for the remote
12609 branch and pull request.
12610 (TestExporterTest.test_export_with_specific_branch): Update repository name.
12612 2018-05-31 Ryan Haddad <ryanhaddad@apple.com>
12614 Update expected results for BuildStepsConstructorTest
12615 https://bugs.webkit.org/show_bug.cgi?id=186119
12617 Reviewed by Alex Christensen.
12619 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Add missing entries for 'WinCairo 64-bit' bots.
12621 2018-05-31 Sihui Liu <sihui_liu@apple.com>
12623 [iOS] TestWebKitAPI.WebKit.WKHTTPCookieStoreWithoutProcessPool fails because cookies use different files with/without processpool
12624 https://bugs.webkit.org/show_bug.cgi?id=185831
12625 <rdar://problem/40468716>
12627 Reviewed by David Kilzer.
12629 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
12630 (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
12633 2018-05-31 Chris Dumez <cdumez@apple.com>
12635 [iOS] API test ScrollViewInsetTests.InnerHeightWithLargeTopContentInset is a flaky failure
12636 https://bugs.webkit.org/show_bug.cgi?id=184893
12637 <rdar://problem/39747271>
12639 Reviewed by Wenson Hsieh.
12641 Update test to wait until the view is the expected height instead of
12642 calling waitForNextPresentationUpdate once and expect the view to
12643 have the right height. This fixes the flakiness.
12645 * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
12646 (TestWebKitAPI::waitUntilInnerHeightIs):
12647 (TestWebKitAPI::TEST):
12649 2018-05-31 Leo Balter <leonardo.balter@gmail.com>
12651 test262-runner should run in verbose mode in automation
12652 https://bugs.webkit.org/show_bug.cgi?id=186115
12654 Reviewed by Yusuke Suzuki.
12656 This patch toggles the verbose mode in the build bot and reports every test file
12657 in order to avoid the '1200 seconds without output' issue.
12658 * BuildSlaveSupport/build.webkit.org-config/steps.py:
12660 * Scripts/test262/Runner.pm:
12663 2018-05-30 Fujii Hironori <Hironori.Fujii@sony.com>
12665 [Win][MiniBrowser] Move MainWindow related code from Common.cpp to MainWindow.cpp
12666 https://bugs.webkit.org/show_bug.cgi?id=186079
12668 Reviewed by Alex Christensen.
12670 This is a sub task of Bug 184770.
12672 This change is partial. I'm going to remove global variables
12673 gMainWindow and gMiniBrowser and convert more functions to
12674 MainWindow's methods in follow-up patches.
12676 * MiniBrowser/win/CMakeLists.txt: Added Common.cpp
12677 * MiniBrowser/win/Common.cpp:
12678 (menuItemIsChecked): Moved to MainWindow.cpp.
12679 (turnOffOtherUserAgents): Ditto.
12681 (BackButtonProc): Ditto.
12682 (ForwardButtonProc): Ditto.
12685 (CustomUserAgent): Ditto.
12686 (AuthDialogProc): Ditto.
12687 (DisplayAuthDialog): Converted to MainWindow's method.
12688 (ToggleMenuItem): Ditto.
12690 * MiniBrowser/win/Common.h:
12691 * MiniBrowser/win/MainWindow.cpp:
12692 (MainWindow::init): Call SetFocus at the end of the construction.
12693 (MainWindow::WndProc):
12694 (menuItemIsChecked): Moved from Common.cpp.
12695 (turnOffOtherUserAgents): Ditto.
12697 (BackButtonProc): Ditto.
12698 (ForwardButtonProc): Ditto.
12701 (CustomUserAgent): Ditto.
12702 (authDialogProc): Ditto.
12703 (MainWindow::displayAuthDialog): Converted from a function of Common.cpp.
12704 (MainWindow::toggleMenuItem): Ditto.
12705 (MainWindow::loadURL): Ditto.
12706 * MiniBrowser/win/MainWindow.h: Added method declarations.
12707 * MiniBrowser/win/MiniBrowser.h: Added pragma once.
12708 * MiniBrowser/win/WinMain.cpp:
12709 (wWinMain): Include Common.h instead of Common.cpp.
12711 2018-05-30 Brady Eidson <beidson@apple.com>
12713 REGRESSION (r224684): User-agent seen by page does not change when modified by the develop menu options after reloading.
12714 <rdar://problem/34918109> and https://bugs.webkit.org/show_bug.cgi?id=186111
12716 Reviewed by Andy Estes.
12718 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
12719 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
12720 (WTR::TestRunner::setCustomUserAgent):
12721 * WebKitTestRunner/InjectedBundle/TestRunner.h:
12722 * WebKitTestRunner/TestController.cpp:
12723 (WTR::TestController::resetStateToConsistentValues):
12724 * WebKitTestRunner/TestInvocation.cpp:
12725 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
12727 2018-05-30 Youenn Fablet <youenn@apple.com>
12729 Rename CrossOriginResourcePolicy same to same-origin
12730 https://bugs.webkit.org/show_bug.cgi?id=186080
12732 Reviewed by Chris Dumez.
12734 * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp:
12735 (TestWebKitAPI::TEST):
12737 2018-05-30 Ms2ger <Ms2ger@igalia.com>
12739 [GTK] Unreviewed test gardening
12740 https://bugs.webkit.org/show_bug.cgi?id=186098
12742 Unreviewed gardening.
12744 * TestWebKitAPI/glib/TestExpectations.json: update expectations.
12746 2018-05-29 Youenn Fablet <youenn@apple.com>
12748 Add a consistency check between URL and CFURL
12749 https://bugs.webkit.org/show_bug.cgi?id=182444
12750 <rdar://problem/37164835>
12752 Reviewed by Geoff Garen.
12754 DRT code expected a non null URL which is no longer the case now.
12755 Updated DRT to remove that assumption.
12757 * DumpRenderTree/TestRunner.cpp:
12758 (TestRunner::redirectionDestinationForURL):
12759 * DumpRenderTree/TestRunner.h:
12760 * DumpRenderTree/mac/ResourceLoadDelegate.mm:
12761 (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
12763 2018-05-29 Brendan McLoughlin <brendan@bocoup.com>
12765 Export changes to web-platform-test as part of the webkit-patch upload workflow
12766 https://bugs.webkit.org/show_bug.cgi?id=184914
12768 Reviewed by Youenn Fablet.
12770 * Scripts/webkitpy/tool/commands/upload.py:
12772 (CreateBug.execute):
12774 * Scripts/webkitpy/tool/steps/__init__.py:
12775 * Scripts/webkitpy/tool/steps/wptchangeexport.py: Added.
12777 (WPTChangeExport.options):
12778 (WPTChangeExport.run):
12779 * Scripts/webkitpy/w3c/common.py:
12780 * Scripts/webkitpy/w3c/test_exporter.py:
12781 (WebPlatformTestExporter):
12782 (WebPlatformTestExporter.__init__):
12783 (WebPlatformTestExporter.username):
12784 (WebPlatformTestExporter.token):
12785 (WebPlatformTestExporter._github):
12786 (WebPlatformTestExporter._wpt_fork_branch_github_url):
12787 (WebPlatformTestExporter._wpt_fork_remote):
12788 (WebPlatformTestExporter._wpt_fork_push_url):
12789 (WebPlatformTestExporter._git):
12790 (WebPlatformTestExporter._branch_name):
12791 (WebPlatformTestExporter._public_branch_name):
12792 (WebPlatformTestExporter._wpt_patch):
12793 (WebPlatformTestExporter.has_wpt_changes):
12794 (WebPlatformTestExporter._find_filename):
12795 (WebPlatformTestExporter._is_ignored_file):
12796 (WebPlatformTestExporter._strip_ignored_files_from_diff):
12797 (WebPlatformTestExporter.write_git_patch_file):
12798 (WebPlatformTestExporter._prompt_for_token):
12799 (WebPlatformTestExporter._prompt_for_username):
12800 (WebPlatformTestExporter._ensure_username_and_token):
12801 (WebPlatformTestExporter._validate_and_save_token):
12802 (WebPlatformTestExporter.create_branch_with_patch):
12803 (WebPlatformTestExporter.push_to_wpt_fork):
12804 (WebPlatformTestExporter.make_pull_request):
12805 (WebPlatformTestExporter.delete_local_branch):
12806 (WebPlatformTestExporter.create_upload_remote_if_needed):
12807 (WebPlatformTestExporter.do_export):
12809 (TestExporter): Deleted.
12810 (TestExporter.__init__): Deleted.
12811 (TestExporter._ensure_wpt_repository): Deleted.
12812 (TestExporter._fetch_wpt_repository): Deleted.
12813 (TestExporter._ensure_new_branch_name): Deleted.
12814 (TestExporter.download_and_commit_patch): Deleted.
12815 (TestExporter.clean): Deleted.
12816 (TestExporter.create_branch_with_patch): Deleted.
12817 (TestExporter.push_to_wpt_fork): Deleted.
12818 (TestExporter.make_pull_request): Deleted.
12819 (TestExporter.create_wpt_pull_request): Deleted.
12820 (TestExporter.delete_local_branch): Deleted.
12821 (TestExporter.create_git_patch): Deleted.
12822 (TestExporter.create_upload_remote): Deleted.
12823 (TestExporter.do_export): Deleted.
12824 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
12825 (TestExporterTest.MockGit):
12826 (TestExporterTest.MockGit.create_patch):
12827 (TestExporterTest.test_export):
12828 (TestExporterTest.test_export_with_specific_branch):
12829 (TestExporterTest):
12830 (TestExporterTest.test_export_interactive_mode):
12831 (TestExporterTest.test_export_invalid_token):
12832 (TestExporterTest.test_export_wrong_token):
12833 (TestExporterTest.test_has_wpt_changes):
12834 (TestExporterTest.test_has_no_wpt_changes_for_no_diff):
12835 (TestExporterTest.test_ignore_changes_to_expected_file):
12837 2018-05-29 Fujii Hironori <Hironori.Fujii@sony.com>
12839 [Win][MiniBrowser] Move WK1 specific code from Common.cpp to MiniBrowser.cpp
12840 https://bugs.webkit.org/show_bug.cgi?id=186029
12842 Reviewed by Alex Christensen.
12844 This is a sub task of Bug 184770.
12846 * MiniBrowser/win/Common.cpp:
12847 (ToggleMenuItem): Extracted WK1 specific code to MiniBrowser::setPreference.
12848 (Caches): Call MiniBrowser::updateStatistics instead of updateStatistics.
12849 (AbortProc): Moved to MiniBrowser.cpp.
12850 (getPrinterDC): Ditto.
12851 (initDocStruct): Ditto.
12852 (PrintView): Ditto.
12853 (ToggleMenuFlag): Ditto.
12854 (setWindowText): Ditto.
12855 (updateStatistics): Ditto.
12856 * MiniBrowser/win/MainWindow.cpp:
12857 (MainWindow::WndProc): Call MiniBrowser::print instead of PrintView.
12858 * MiniBrowser/win/MiniBrowser.cpp:
12859 (AbortProc): Moved from Common.cpp.
12860 (getPrinterDC): Moved from Common.cpp.
12861 (initDocStruct): Moved from Common.cpp.
12862 (setWindowText): Moved from Common.cpp.
12863 (MiniBrowser::print): Renamed from PrintView of Common.cpp.
12864 (MiniBrowser::updateStatistics): Renamed from updateStatistics of Common.cpp.
12865 (MiniBrowser::setPreference): Extracted from ToggleMenuItem of Common.cpp.
12866 * MiniBrowser/win/MiniBrowser.h: Add method declarations.
12867 * MiniBrowser/win/MiniBrowserWebHost.cpp: Removed duplicated IWebFramePtr typedef.
12869 2018-05-29 Saam Barati <sbarati@apple.com>
12871 JSC should put bmalloc's scavenger into mini mode
12872 https://bugs.webkit.org/show_bug.cgi?id=185988
12874 Reviewed by Michael Saboff.
12876 This patch makes it so that we turn off the JIT when running run-testmem
12877 that way we make JSC use its mini mode.
12879 * Scripts/run-testmem:
12881 2018-05-29 Sihui Liu <sihui_liu@apple.com>
12883 Unable to remove IndexedDB Databases with Cocoa API removeDataOfTypes
12884 https://bugs.webkit.org/show_bug.cgi?id=185835
12885 <rdar://problem/39142257>
12887 Reviewed by Chris Dumez.
12889 Add API test coverage.
12891 * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
12894 2018-05-29 Wenson Hsieh <wenson_hsieh@apple.com>
12896 [Extra zoom mode] "Significant area painted" rendering progress event is rarely fired
12897 https://bugs.webkit.org/show_bug.cgi?id=186042
12898 <rdar://problem/40604182>
12900 Reviewed by Tim Horton.
12902 Adds a new API test to check that the "significant area painting" rendering milestone is dispatched when a
12903 significant portion of the page has been painted before document load is finished.
12905 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
12906 * TestWebKitAPI/Tests/WebKitCocoa/paint-significant-area-milestone.html: Added.
12907 * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm: Added.
12908 (-[MissingResourceSchemeHandler webView:stopURLSchemeTask:]):
12909 (-[MissingResourceSchemeHandler webView:startURLSchemeTask:]):
12910 (-[RenderingProgressHandler initWithHandler:]):
12911 (-[RenderingProgressHandler _webView:renderingProgressDidChange:]):
12914 2018-05-29 Thibault Saunier <tsaunier@igalia.com>
12916 [GStreamer] Update "qtdemux: Clarify field name about stream-encryption-system" patch
12917 https://bugs.webkit.org/show_bug.cgi?id=186040
12919 The patch we merge contained a type and was merged in upstream GStreamer fixing that
12920 (s/avalaible/available/).
12922 Reviewed by Xabier Rodriguez-Calvar.
12924 * gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch:
12926 2018-05-28 Sihui Liu <sihui_liu@apple.com>
12928 Add an API test to check process privilege when using Cookie API
12929 https://bugs.webkit.org/show_bug.cgi?id=185406
12931 Reviewed by Geoffrey Garen.
12933 Add API test coverage.
12935 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
12938 2018-05-28 Thibault Saunier <tsaunier@igalia.com>
12940 [GStreamer] Handle changes in the "drm-preferred-decryption-system-id" NEED_CONTEXT message.
12941 https://bugs.webkit.org/show_bug.cgi?id=185948
12943 Reviewed by Xabier Rodriguez-Calvar.
12945 When the patch introducing gst_protection_filter_systems_by_available_decryptors was merged, we changed sensibly its behaviour
12946 concerning the way empty results is represented (now returning NULL instead of an array of 1(NULL) element) and this change was not
12947 properly taken into account in the qtdemux patch that uses it and got upstreamed. Those 3 new patches fixe that and change the
12948 NEED_CONTEXT field names to clarify the meaning of "stream-encryption-systems".
12950 * gstreamer/jhbuild.modules:
12951 * gstreamer/patches/gst-plugins-good-0001-qtdemux-Do-not-run-the-preferred-decryptor-context-q.patch: Added. Merged upstream as 3e063703b3a51b8aaa7f75f36c4660c583a60e93
12952 * gstreamer/patches/gst-plugins-good-0002-qtdemux-Do-not-unref-a-NULL-stream_tags.patch: Added. Merged upstream as 43a540b1cd9f162d3dae5d50e36703dfaf558a3e
12953 * gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch: Added.
12955 2018-05-27 Dan Bernstein <mitz@apple.com>
12957 Reverted the changes made for https://webkit.org/b/186016
12959 They broke the USE(APPLE_INTERNAL_SDK) Sierra build.
12961 2018-05-27 Dan Bernstein <mitz@apple.com>
12963 [Cocoa] Avoid importing directly from subumbrella frameworks
12964 https://bugs.webkit.org/show_bug.cgi?id=186016
12966 Reviewed by Sam Weinig.
12968 * DumpRenderTree/cg/PixelDumpSupportCG.cpp: Include CoreServices.h instead of a
12969 LaunchServices header.
12970 * DumpRenderTree/mac/Configurations/BaseTarget.xcconfig: Removed -iframework options from
12971 OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
12972 * DumpRenderTree/mac/LayoutTestHelper.m: Import ApplicationServices.h instead of ColorSync.h
12973 when using SDKs earlier than 10.13.
12974 * TestWebKitAPI/Configurations/Base.xcconfig: Removed -iframework options from OTHER_CFLAGS
12975 and OTHER_CPLUSPLUSFLAGS.
12976 * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Import Carbon.h instead of an
12978 * WebKitTestRunner/Configurations/BaseTarget.xcconfig: Removed -iframework options from
12979 OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
12980 * WebKitTestRunner/cg/TestInvocationCG.cpp: Include CoreServices.h instead of a
12981 LaunchServices header.
12983 2018-05-27 Fujii Hironori <Hironori.Fujii@sony.com>
12985 [Win][MiniBrowser] Add MainWindow class
12986 https://bugs.webkit.org/show_bug.cgi?id=185814
12988 Reviewed by Per Arne Vollan.
12990 This is a sub task of Bug 184770. Added a new class MainWindow to
12991 represent the main window which will be shared among WK1 and WK2.
12993 This change is partial so that it's easy to review this patch.
12994 I'll move more functions into MainWindow.cpp, and remove more
12995 global variables in forthcoming patches.
12997 * MiniBrowser/win/CMakeLists.txt: Added MainWindow.cpp.
12998 * MiniBrowser/win/Common.cpp: Removed MainWindow related global
12999 variables hMainWnd, hURLBarWnd, hBackButtonWnd and
13000 hForwardButtonWnd. Added a new global variable gMainWindow.
13001 (WndProc): Moved to MainWindow.cpp.
13002 (resizeSubViews): Ditto.
13003 (ToggleMenuFlag): Removed static to be called from MainWindow.cpp.
13004 (ToggleMenuItem): Ditto.
13005 (CustomUserAgent): Follow the global variables removal.
13006 (DisplayAuthDialog): Ditto.
13008 (WndProc): Renamed to MainWindow::WndProc.
13009 * MiniBrowser/win/MainWindow.cpp: Added.
13010 (MainWindow::registerClass): Renamed from MyRegisterClass of WinMain.cpp.
13011 (MainWindow::init): Extracted MainWindow initialization code from wWinMain.
13012 (MainWindow::resizeSubViews): Moved from Common.cpp.
13013 (MainWindow::WndProc): Ditto.
13014 * MiniBrowser/win/MainWindow.h: Added.
13015 (MainWindow::hwnd):
13016 (MainWindow::browserWindow):
13017 * MiniBrowser/win/MiniBrowser.cpp:
13018 (MiniBrowser::init):
13019 (MiniBrowser::prepareViews): Extract some code into MiniBrowser::loadDefaultHTML.
13020 (MiniBrowser::loadDefaultHTML): Extracted from MiniBrowser::prepareViews.
13021 * MiniBrowser/win/MiniBrowser.h:
13022 * MiniBrowser/win/WinMain.cpp:
13023 (wWinMain): Extracted MainWindow initialization code into MainWindow::init.
13024 (MyRegisterClass): Moved to MainWindow.cpp.
13026 2018-05-27 Fujii Hironori <Hironori.Fujii@sony.com>
13028 [Win][MiniBrowser] Remove URL argument of MiniBrowser::init
13029 https://bugs.webkit.org/show_bug.cgi?id=185969
13031 Reviewed by Alex Christensen.
13033 MiniBrowser::init takes URL argument, but it's used only for
13034 loading default HTML if URL is not given.
13036 - Add a new method MiniBrowser::loadHTMLString
13037 - Remove loadHTMLString process from MiniBrowser::prepareViews
13039 * MiniBrowser/win/MiniBrowser.cpp:
13040 (MiniBrowser::init): Removed `requestedURL` argument.
13041 (MiniBrowser::prepareViews): Ditto.
13042 (MiniBrowser::loadHTMLString): New.
13043 (MiniBrowser::loadURL): Return E_INVALIDARG if passedURL is null instead of calling loadHTMLString.
13044 * MiniBrowser/win/MiniBrowser.h: Removed URL argument. Added loadHTMLString.
13045 * MiniBrowser/win/WinMain.cpp:
13046 (wWinMain): Call MiniBrowser::loadHTMLString if URL is not given.
13048 2018-05-27 David Kilzer <ddkilzer@apple.com>
13050 svn-apply fails when a patch has an empty file
13051 <https://webkit.org/b/29684>
13053 Reviewed by Daniel Bates.
13055 Prior to this change, applying the following patches resulted in:
13056 - svn: add empty file (failure)
13057 - svn: delete empty file (failure)
13058 - svn: rename empty file (failure)
13059 - git: add empty file (false-positive success)
13060 - git: delete empty file (success)
13061 - git: rename empty file (failure)
13063 * Scripts/VCSUtils.pm:
13064 (parseSvnDiffHeader): Handle the case when there is no patch
13065 following the header. If the file exists and is empty, that
13066 means it's a deletion. If the file does not exist, that means
13067 it's an addition. Everything else is a fatal error.
13068 * Scripts/svn-apply:
13070 - Only apply a patch for deletion if it has one or more text
13072 - Add a case to handle adding an empty file (an addition with no
13073 text chunks), and verify the file doesn't exist yet.
13074 - Any unhandled patch is a fatal error.
13075 * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl:
13076 Add tests for adding an empty file and deleting an empty file.
13077 * Scripts/webkitperl/VCSUtils_unittest/resources/empty.txt: Add.
13078 Used by parseSvnDiffHeader.pl unit test for "add an empty file"
13081 2018-05-25 Aakash Jain <aakash_jain@apple.com>
13083 Display detailed error logs when a script fails in EWS
13084 https://bugs.webkit.org/show_bug.cgi?id=175696
13085 <rdar://problem/34841885>
13087 Reviewed by Darin Adler.
13089 * Scripts/webkitpy/tool/bot/queueengine.py: Set output_limit to 5000 characters instead of default 500 characters.
13090 * Scripts/webkitpy/tool/commands/abstractsequencedcommand.py: Ditto.
13091 * Scripts/webkitpy/tool/commands/download.py: Ditto.
13092 * Scripts/webkitpy/tool/commands/earlywarningsystem.py: Ditto.
13093 * Scripts/webkitpy/tool/commands/queues.py: Ditto.
13094 * Scripts/webkitpy/tool/commands/stepsequence.py: Ditto.
13096 2018-05-25 Daniel Bates <dabates@apple.com>
13098 test-webkitpy messages logged using __main__ logger are not displayed
13099 https://bugs.webkit.org/show_bug.cgi?id=185823
13101 Rubber-stamped by Aakash Jain.
13103 Configure the logger for __main__ so that messages that are logged before it parses its
13104 command line arguments are printed to standard error.
13106 Currently test-webkitpy creates a named logger (__main__) for its logging. However it does
13107 not configure a stream to use for printing until after it parses its command line arguments
13108 via webkitpy.test.printer.Printer.configure(). Messages logged until then are never written
13109 to the console. We explicitly configure the __main__ logger instead of calling webkitpy.test.printer.Printer.configure()
13110 earlier because the latter both configures a stream and filters logged messages based on
13111 the specified verbosity. Logged messaged from code in __main__ should not be subject to
13112 such filtering. So, we explicitly configure the __main__ logger.
13114 * Scripts/webkitpy/test/main.py:
13117 2018-05-25 Saam Barati <sbarati@apple.com>
13119 Make JSC have a mini mode that kicks in when the JIT is disabled
13120 https://bugs.webkit.org/show_bug.cgi?id=185931
13122 Reviewed by Mark Lam.
13124 This renames a variable for clarity.
13126 * Scripts/run-testmem:
13128 2018-05-25 Alex Christensen <achristensen@webkit.org>
13130 URL::host should return a StringView to reduce allocations
13131 https://bugs.webkit.org/show_bug.cgi?id=185986
13133 Reviewed by Geoff Garen.
13135 * TestWebKitAPI/Tests/WebCore/URL.cpp:
13136 (TestWebKitAPI::TEST_F):
13137 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
13138 (TestWebKitAPI::eq):
13139 * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
13140 (TestWebKitAPI::SSLKeyGeneratorTest::TearDown):
13142 2018-05-25 Ms2ger <Ms2ger@igalia.com>
13144 Minor improvements to wpt exporter.
13145 https://bugs.webkit.org/show_bug.cgi?id=185978
13147 Reviewed by Youenn Fablet.
13149 * Scripts/webkitpy/w3c/test_exporter.py:
13150 (TestExporter.push_to_wpt_fork): Update call to create_upload_remote().
13151 (TestExporter.make_pull_request): Improve the description of the created PR.
13152 (TestExporter.create_upload_remote): Always update the remote to override any obsolete state.
13154 2018-05-25 Saam Barati <sbarati@apple.com>
13156 Have a memory test where we can validate JSCs mini memory mode
13157 https://bugs.webkit.org/show_bug.cgi?id=185932
13159 Reviewed by Mark Lam.
13161 This patch adds the run-testmem script. This runs the new testmem
13162 CLI against the contents in the testmem benchmark. The contents of testmem
13163 contain tests from ARES-6, Sunspider, Octane, and JetStream.
13165 One iteration of the benchmark comprises of running each testmem test for
13166 a certain number of iterations. We collect the peak memory usage, the memory
13167 usage after running all the iterations, and the time it takes to run all the
13168 iterations. We then run the entire benchmark 3 times over. For each test, we
13169 compute the arithmetic mean over each iteration for time, peak memory, and
13170 end memory. The benchmark then computes a time score and memory score.
13172 peak memory score = geomean({peak memory of each individual test})
13173 end memory score = geomean({end memory of each individual test})
13174 memory score = geomean({peak memory score, end memory score})
13175 time score = geomean({time score of each individual test})
13177 We want the memory score to weigh improvements to peak memory usage and
13178 memory usage at the end equally.
13180 We plan to tune this benchmark in JSC's mini mode by improving the memory
13181 score while ensuring the time score is not more than 10-15% regressed.
13183 * Scripts/run-testmem: Added.
13185 2018-05-25 Sihui Liu <sihui_liu@apple.com>
13187 [WKHTTPCookieStore getAllCookies] returns inconsistent creation time
13188 https://bugs.webkit.org/show_bug.cgi?id=185041
13189 <rdar://problem/34684214>
13191 Reviewed by Geoffrey Garen.
13193 Add API test coverage.
13195 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
13198 2018-05-24 Chris Dumez <cdumez@apple.com>
13200 Reduce copying of FontCascadeDescription objects by moving them around
13201 https://bugs.webkit.org/show_bug.cgi?id=185963
13203 Reviewed by Simon Fraser.
13205 Reduce copying of FontCascadeDescription objects by moving them around when possible.
13207 * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
13208 (TestWebKitAPI::TEST_F):
13210 2018-05-24 Carlos Garcia Campos <cgarcia@igalia.com>
13212 WebDriver: implement maximize, minimize and fullscreen window commands
13213 https://bugs.webkit.org/show_bug.cgi?id=180398
13215 Reviewed by Brian Burg.
13217 * Scripts/webkitpy/port/xvfbdriver.py:
13218 (XvfbDriver._setup_environ_for_test): Set UNDER_XVFB environment variable when running under Xvfb.
13220 2018-05-24 Xabier Rodriguez Calvar <calvaris@igalia.com>
13222 [GStreamer] Save some time disabling some compile options in the dependencies
13223 https://bugs.webkit.org/show_bug.cgi?id=185909
13225 Reviewed by Philippe Normand.
13227 * gstreamer/jhbuild.modules: Added --disable-tests to gstreamer
13228 and --disable-examples --disable-gtk-doc to gstreamer-vaapi.
13230 2018-05-23 Roy Reapor <rreapor@apple.com>
13232 Use Helvetica on build.webkit.org webpages
13233 https://bugs.webkit.org/show_bug.cgi?id=185894
13235 Reviewed by Aakash Jain.
13237 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
13238 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/common.css:
13239 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/summary-mock.html:
13241 2018-05-23 Aakash Jain <aakash_jain@apple.com>
13243 Add Buildbot configuration for Opensource EWS
13244 https://bugs.webkit.org/show_bug.cgi?id=185484
13246 Rubber-stamped by Alexey Proskuryakov.
13248 * BuildSlaveSupport/ews-build/config.json: Added, config file.
13249 * BuildSlaveSupport/ews-build/factories.py: Added, basic template for factories.
13250 * BuildSlaveSupport/ews-build/loadConfig.py: Added.
13251 (loadBuilderConfig): Loads the configuration.
13252 (checkValidWorker): Checks if the worker is valid.
13253 (checkValidBuilder): Checks if the builder is valid.
13254 (checkWorkersAndBuildersForConsistency): Check if workers and builders are consistent.
13255 (checkWorkersAndBuildersForConsistency._find_worker_with_name):
13256 (getBlackListedTags): Returns a list of keywords which should not be listed as tags.
13257 (getValidTags): Returns a list of valid tags.
13258 (getTagsForBuilder): Return a list of tags for given builder.
13259 * BuildSlaveSupport/ews-build/loadConfig_unittest.py: unit-tests for loadConfig.py.
13260 * BuildSlaveSupport/ews-build/master.cfg: Configuration for buildbot.
13262 2018-05-23 Michael Catanzaro <mcatanzaro@igalia.com>
13264 [GTK] Silence GCC 8 warnings
13265 https://bugs.webkit.org/show_bug.cgi?id=185556
13267 Reviewed by Žan Doberšek.
13269 GCC is complaining about this strncpy. It's guaranteed to be safe, because the length of
13270 source and destination are always identical. But switching to snprintf avoids the warning.
13272 * DumpRenderTree/TestNetscapePlugIn/Tests/FormValue.cpp:
13273 (FormValue::NPP_GetValue):
13275 2018-05-23 Ryan Haddad <ryanhaddad@apple.com>
13277 Unreviewed, rolling out r232112.
13279 The tests added with this change are failing on the bots.
13281 Reverted changeset:
13283 "test262/Runner.pm: add unit tests"
13284 https://bugs.webkit.org/show_bug.cgi?id=185783
13285 https://trac.webkit.org/changeset/232112
13287 2018-05-23 Valerie R Young <valerie@bocoup.com>
13289 test262/Runner.pm: add unit tests
13290 https://bugs.webkit.org/show_bug.cgi?id=185783
13292 Reviewed by Aakash Jain.
13294 Add unit tests to be run by test-webkitperl
13296 * Scripts/test262/Runner.pm:
13298 - If harness files cannot be found in a custom, supplies test262 path,
13299 then sure the webkit test262 harness files.
13300 - Lazily create the test262-results directory.
13301 - If an expectation file is supplied via command line, save to the
13302 supplied location instead of the detault webkit location.
13306 * Scripts/webkitperl/test262_unittest/README: Added.
13307 * Scripts/webkitperl/test262_unittest/fixtures/expectations-compare.yaml: Added.
13308 * Scripts/webkitperl/test262_unittest/fixtures/expectations.yaml: Added.
13309 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing-with-new-error.js: Added.
13310 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing.js: Added.
13311 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-passing.js: Added.
13313 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-pass-now-failing.js: Added.
13314 * Scripts/webkitperl/test262_unittest/fixtures/test/fail.js: Added.
13315 * Scripts/webkitperl/test262_unittest/fixtures/test/pass.js: Added.
13317 * Scripts/webkitperl/test262_unittest/test262-runner-tests.pl: Added.
13319 2018-05-22 Roy Reapor <rreapor@apple.com>
13321 Test infrastructure websites should use jQuery and jQuery UI hosted on webkit.org
13322 https://bugs.webkit.org/show_bug.cgi?id=185788
13324 Reviewed by Aakash Jain.
13326 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
13327 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/index.html:
13328 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/rebaseline.html:
13329 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/run-unittests.html:
13330 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/summary-mock.html:
13331 * TestResultServer/static-dashboards/run-embedded-unittests.html:
13332 * TestResultServer/static-dashboards/run-unittests.html:
13334 2018-05-22 Sihui Liu <sihui_liu@apple.com>
13336 [iOS] TestWebKitAPI.WebKit.WKHTTPCookieStoreWithoutProcessPool is crashing with reason: 'Completion handler passed to -[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:] was not called'
13337 https://bugs.webkit.org/show_bug.cgi?id=185831
13339 Reviewed by Chris Dumez.
13341 Updated the test to prevent crash after assertion fails.
13343 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
13344 (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
13346 2018-05-22 Chris Dumez <cdumez@apple.com>
13348 Regression(AsyncPolicyDelegates): Box.app login Window is blank
13349 https://bugs.webkit.org/show_bug.cgi?id=185832
13350 <rdar://problem/40307871>
13352 Reviewed by Geoffrey Garen.
13354 Add API test coverage.
13356 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13357 * TestWebKitAPI/Tests/WebKit/cocoa/WeakObjCPtr.mm:
13358 * TestWebKitAPI/Tests/mac/NoPolicyDelegateResponse.mm: Added.
13359 (-[NoPolicyDelegateDecisionDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
13360 (-[NoPolicyDelegateDecisionDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
13361 (-[NoPolicyDelegateDecisionDelegate webView:didFinishLoadForFrame:]):
13362 (TestWebKitAPI::TEST):
13363 * TestWebKitAPI/cocoa/TestWKWebView.mm:
13364 (-[WKWebView _isBackground]):
13366 2018-05-22 Sihui Liu <sihui_liu@apple.com>
13368 Conversion between SecurityOriginData and DatabaseIdentifier is asymmetric when port is null
13369 https://bugs.webkit.org/show_bug.cgi?id=185715
13371 Reviewed by Geoffrey Garen.
13373 Add API test coverage.
13375 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13376 * TestWebKitAPI/Tests/WebKitCocoa/LocalStorageDatabaseTracker.mm: Added.
13377 (-[LocalStorageUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
13380 2018-05-22 Sihui Liu <sihui_liu@apple.com>
13382 Unreviewed, added myself as a WebKit committer.
13384 * Scripts/webkitpy/common/config/contributors.json:
13386 2018-05-22 Ryan Haddad <ryanhaddad@apple.com>
13388 Unreviewed, rolling out r232052.
13390 Breaks internal builds.
13392 Reverted changeset:
13395 https://bugs.webkit.org/show_bug.cgi?id=185176
13396 https://trac.webkit.org/changeset/232052
13398 2018-05-22 Thibault Saunier <tsaunier@igalia.com>
13400 [GStreamer] Update to GStreamer 1.14.1 in jhbuild
13401 https://bugs.webkit.org/show_bug.cgi?id=185689
13403 Reviewed by Philippe Normand.
13405 And update the patches, removing the ones that have been merged upstream.
13407 * gstreamer/jhbuild.modules:
13408 * gstreamer/patches/gst-plugins-good-0001-gstgdkpixbufdec-stop-pretending-to-decode-gifs.patch: Removed.
13409 * gstreamer/patches/gst-plugins-good-0001-souphttpsrc-cookie-jar-and-context-query-support.patch: Removed. Not needed anymore and closed as OBSELETE upstream.
13410 * gstreamer/patches/gst-plugins-good-0002-qtdemux-add-context-for-a-preferred-protection.patch: Renamed from Tools/gstreamer/patches/gst-plugins-good-0006-qtdemux-add-context-for-a-preferred-protection.patch
13411 This patch has now been merged in GStreamer master and will be there in GStreamer 1.16.
13412 * gstreamer/patches/gst-plugins-good-0003-qtdemux-also-push-buffers-without-encryption-info-in.patch: Renamed from Tools/gstreamer/patches/gst-plugins-good-0008-qtdemux-also-push-buffers-without-encryption-info-in.patch.
13413 This patch has now been merged in GStreamer master and will be there in GStreamer 1.16.
13414 * gstreamer/patches/gst-plugins-good-0009-qtdemux-fix-assert-when-moof-contains-one-sample.patch: Removed.
13415 * gstreamer/patches/gstreamer-0001-protection-added-function-to-filter-system-ids.patch: Removed.
13417 2018-05-21 Yusuke Suzuki <utatane.tea@gmail.com>
13420 https://bugs.webkit.org/show_bug.cgi?id=185176
13422 Reviewed by JF Bastien.
13424 * DumpRenderTree/mac/Configurations/Base.xcconfig:
13425 * ImageDiff/cg/Configurations/Base.xcconfig:
13426 * MiniBrowser/Configurations/Base.xcconfig:
13427 * MobileMiniBrowser/Configurations/Base.xcconfig:
13428 * TestWebKitAPI/Configurations/Base.xcconfig:
13429 * WebKitTestRunner/Configurations/Base.xcconfig:
13431 2018-05-21 Fujii Hironori <Hironori.Fujii@sony.com>
13433 [WinCairo] Enable WebKit build by default
13434 https://bugs.webkit.org/show_bug.cgi?id=185141
13436 Reviewed by Per Arne Vollan.
13438 TestWTF, TestWebCore and TestWebKitLegacy need a dependency to
13439 WebKitForwardingHeaders because config.h includes a header of WK2.
13441 * TestWebKitAPI/PlatformWin.cmake: Make TestWTFLib, TestWebCoreLib and TestWebKitLegacyLib depend on WebKitForwardingHeaders.
13442 * TestWebKitAPI/config.h: Use PLATFORM(WIN_CAIRO) instead of BUILDING_WIN_CAIRO_WEBKIT.
13444 2018-05-21 Jer Noble <jer.noble@apple.com>
13446 Complete fix for enabling modern EME by default
13447 https://bugs.webkit.org/show_bug.cgi?id=185770
13448 <rdar://problem/40368220>
13450 Reviewed by Eric Carlson.
13452 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
13454 2018-05-18 Christopher Reid <chris.reid@sony.com>
13456 Unreviewed, add myself as a WebKit committer.
13458 * Scripts/webkitpy/common/config/contributors.json:
13460 2018-05-21 Carlos Garcia Campos <cgarcia@igalia.com>
13462 Unreviewed, rolling out r222967.
13466 Reverted changeset:
13468 "[GTK][WPE] Add API to configure and enable resource load
13470 https://bugs.webkit.org/show_bug.cgi?id=177943
13471 https://trac.webkit.org/changeset/222967
13473 2018-05-20 Carlos Garcia Campos <cgarcia@igalia.com>
13475 [GTK] MiniBrowser crashes when loading twice quickly
13476 https://bugs.webkit.org/show_bug.cgi?id=185763
13478 Reviewed by Michael Catanzaro.
13480 This is very difficult to reproduce manually, but it happens when running WebDriver tests where loads are very
13481 fast and multiple loads are done quickly. The problem is that we use an idle to reset the progress bar, but we
13482 don't reset it when a new load starts. We always reset the last idle on destroy, but if there's another one
13483 leaked, it will crash when scheduled if the window has already been destroyed.
13485 * MiniBrowser/gtk/BrowserWindow.c:
13486 (webViewLoadProgressChanged): Stop any pending reset task when progress != 1.
13488 2018-05-19 Sihui Liu <sihui_liu@apple.com>
13490 Flaky API test WebKit.WKHTTPCookieStoreWithoutProcessPool: incorrect order of cookies
13491 https://bugs.webkit.org/show_bug.cgi?id=185624
13492 <rdar://problem/39111626>
13494 Reviewed by Chris Dumez.
13496 Modified expectation to make test more robust as cookies can be returned in different orders.
13498 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
13499 (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
13502 2018-05-18 Commit Queue <commit-queue@webkit.org>
13504 Unreviewed, rolling out r231982.
13505 https://bugs.webkit.org/show_bug.cgi?id=185793
13507 Caused layout test failures (Requested by realdawei on
13510 Reverted changeset:
13512 "Complete fix for enabling modern EME by default"
13513 https://bugs.webkit.org/show_bug.cgi?id=185770
13514 https://trac.webkit.org/changeset/231982
13516 2018-05-18 Eric Carlson <eric.carlson@apple.com>
13518 Handle failure to extend sandbox gracefully
13519 https://bugs.webkit.org/show_bug.cgi?id=185779
13520 <rdar://problem/40316349>
13522 Unreviewed, fix test results.
13524 * TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm:
13527 2018-05-18 Jer Noble <jer.noble@apple.com>
13529 Complete fix for enabling modern EME by default
13530 https://bugs.webkit.org/show_bug.cgi?id=185770
13531 <rdar://problem/40368220>
13533 Reviewed by Eric Carlson.
13535 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
13537 2018-05-18 Eric Carlson <eric.carlson@apple.com>
13539 Handle failure to extend sandbox gracefully
13540 https://bugs.webkit.org/show_bug.cgi?id=185779
13541 <rdar://problem/40316349>
13543 Reviewed by Brent Fulgham.
13545 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13546 * TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm: Added.
13547 (-[SimulateFailedSandboxMessageHandler userContentController:didReceiveScriptMessage:]):
13548 (-[SimulateFailedSandboxUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
13549 (-[SimulateFailedSandboxUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
13550 (MediaCaptureSimulateFailedSandbox::SetUp):
13551 (MediaCaptureSimulateFailedSandbox::loadTestAndWaitForMessage):
13553 * TestWebKitAPI/Tests/WebKitCocoa/disableGetUserMedia.html:
13555 2018-05-18 Daniel Bates <dabates@apple.com>
13557 "debug-safari --ios-simulator" creates lldb target to launch Mac Safari
13558 https://bugs.webkit.org/show_bug.cgi?id=185774
13560 Reviewed by Andy Estes.
13562 For now, the script debug-safari is not supported for WebKit for iOS. To
13563 fix this we differentiate between the Apple Mac port and Apple embedded
13566 * Scripts/webkitdirs.pm:
13567 (safariPath): Substitute isAppleMacWebKit() for isAppleCocoaWebKit().
13568 (isAppleMacWebKit): Added.
13569 (isAppleCocoaWebKit): Write in terms of isAppleMacWebKit() and isEmbeddedWebKit().
13570 (launcherName): Substitute isAppleMacWebKit() for isAppleCocoaWebKit().
13571 (mobileSafariBundle): Substitute isIOSWebKit() for isAppleCocoaWebKit().
13572 (debugSafari): Substitute isAppleMacWebKit() for isAppleCocoaWebKit().
13573 (runSafari): Ditto.
13574 (runMiniBrowser): Ditto.
13575 (debugMiniBrowser): Ditto.
13576 (runWebKitTestRunner): Ditto.
13577 (debugWebKitTestRunner): Ditto.
13579 2018-05-18 Antoine Quint <graouts@apple.com>
13581 [Web Animations] Turn Web Animations with CSS integration on for test runners
13582 https://bugs.webkit.org/show_bug.cgi?id=184819
13583 <rdar://problem/39597337>
13585 Unreviewed. Rolling out the patch for this bug, it caused some flaky timeouts for animation suspension tests.
13587 * DumpRenderTree/TestOptions.cpp:
13588 (TestOptions::TestOptions):
13589 * DumpRenderTree/TestOptions.h:
13590 * DumpRenderTree/mac/DumpRenderTree.mm:
13592 (shouldOverrideAndDisableWebAnimationsCSSIntegrationPreference): Deleted.
13593 * WebKitTestRunner/TestController.cpp:
13594 (WTR::TestController::resetPreferencesToConsistentValues):
13595 (WTR::updateTestOptionsFromTestHeader):
13596 * WebKitTestRunner/TestOptions.cpp:
13597 (WTR::TestOptions::TestOptions):
13598 (WTR::isLegacyAnimationEngineTestPath): Deleted.
13599 * WebKitTestRunner/TestOptions.h:
13601 2018-05-18 Fujii Hironori <Hironori.Fujii@sony.com>
13603 [Win][MiniBrowser] Create MainWindow even in transparent mode
13604 https://bugs.webkit.org/show_bug.cgi?id=185597
13606 Reviewed by Per Arne Vollan.
13608 The current implementations doesn't create the MainWindow in
13609 transparent mode. The screenshot is in Bug 58300.
13611 There were three problems:
13612 - Can't control the WebView. ie. going backward and forward.
13613 - Can't quit the program.
13614 - It makes implementation complicated.
13616 * MiniBrowser/win/Common.cpp (resizeSubViews): Resize sub views
13617 even in the transparent mode.
13618 * MiniBrowser/win/WinMain.cpp:
13619 (wWinMain): Create the main window even in the transparent mode.
13621 2018-05-18 Antoine Quint <graouts@apple.com>
13623 [Web Animations] Turn Web Animations with CSS integration on for test runners
13624 https://bugs.webkit.org/show_bug.cgi?id=184819
13625 <rdar://problem/39597337>
13627 Reviewed by Jon Lee.
13629 Make the test runners turn both the main Web Animations flag and the Web Animations CSS
13630 integration flag on.
13632 We also remove the ability to toggle the Web Animations CSS integration flag using an HTML
13633 comment directly at the top of the file since test runners now set the flag on by default
13634 and a dedicated directory exists for tests that need to run with this flag off.
13636 * DumpRenderTree/TestOptions.cpp:
13637 (TestOptions::TestOptions):
13638 * DumpRenderTree/TestOptions.h:
13639 * DumpRenderTree/mac/DumpRenderTree.mm:
13640 (shouldOverrideAndDisableWebAnimationsCSSIntegrationPreference):
13642 * WebKitTestRunner/TestController.cpp:
13643 (WTR::TestController::resetPreferencesToConsistentValues):
13644 (WTR::updateTestOptionsFromTestHeader):
13645 * WebKitTestRunner/TestOptions.cpp:
13646 (WTR::isLegacyAnimationEngineTestPath):
13647 (WTR::TestOptions::TestOptions):
13648 * WebKitTestRunner/TestOptions.h:
13650 2018-05-17 Nan Wang <n_wang@apple.com>
13652 AX: [macOS] Expose the primary screen height through AX API
13653 https://bugs.webkit.org/show_bug.cgi?id=185742
13655 Reviewed by Chris Fleizach.
13657 * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
13658 (attributesOfElement):
13659 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
13660 (WTR::attributesOfElement):
13662 2018-05-17 Commit Queue <commit-queue@webkit.org>
13664 Unreviewed, rolling out r231912.
13665 https://bugs.webkit.org/show_bug.cgi?id=185750
13667 It is prompting the user when there is no WPT changes
13668 (Requested by bmac on #webkit).
13670 Reverted changeset:
13672 "Export changes to web-platform-test as part of the webkit-
13673 patch upload workflow"
13674 https://bugs.webkit.org/show_bug.cgi?id=184914
13675 https://trac.webkit.org/changeset/231912
13677 2018-05-17 Valerie R Young <valerie@bocoup.com>
13679 test262/Runner.pm: expand $INC to find webkitdirs.pm
13680 https://bugs.webkit.org/show_bug.cgi?id=185739
13682 Reviewed by Michael Saboff.
13684 * Scripts/test262/Runner.pm:
13687 2018-05-17 Carlos Alberto Lopez Perez <clopez@igalia.com>
13689 [WPE] Implement and enable FULLSCREEN_API
13690 https://bugs.webkit.org/show_bug.cgi?id=185676
13692 Reviewed by Žan Doberšek.
13694 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
13695 (testWebViewFullScreen):
13697 2018-05-17 Brendan McLoughlin <brendan@bocoup.com>
13699 Export changes to web-platform-test as part of the webkit-patch upload workflow
13700 https://bugs.webkit.org/show_bug.cgi?id=184914
13702 Reviewed by Youenn Fablet.
13704 * Scripts/webkitpy/tool/commands/upload.py:
13706 (CreateBug.execute):
13708 * Scripts/webkitpy/tool/steps/__init__.py:
13709 * Scripts/webkitpy/tool/steps/wptchangeexport.py: Added.
13711 (WPTChangeExport.options):
13712 (WPTChangeExport.run):
13713 * Scripts/webkitpy/w3c/common.py:
13714 * Scripts/webkitpy/w3c/test_exporter.py:
13715 (WebPlatformTestExporter):
13716 (WebPlatformTestExporter.__init__):
13717 (WebPlatformTestExporter.username):
13718 (WebPlatformTestExporter.token):
13719 (WebPlatformTestExporter._github):
13720 (WebPlatformTestExporter._wpt_fork_branch_github_url):
13721 (WebPlatformTestExporter._wpt_fork_remote):
13722 (WebPlatformTestExporter._wpt_fork_push_url):
13723 (WebPlatformTestExporter._git):
13724 (WebPlatformTestExporter._branch_name):
13725 (WebPlatformTestExporter._public_branch_name):
13726 (WebPlatformTestExporter.has_wpt_changes):
13727 (WebPlatformTestExporter._create_patch):
13728 (WebPlatformTestExporter.create_git_patch):
13729 (WebPlatformTestExporter._prompt_for_token):
13730 (WebPlatformTestExporter._prompt_for_username):
13731 (WebPlatformTestExporter._ensure_username_and_token):
13732 (WebPlatformTestExporter._validate_and_save_token):
13733 (WebPlatformTestExporter.push_to_wpt_fork):
13734 (WebPlatformTestExporter.make_pull_request):
13735 (WebPlatformTestExporter.delete_local_branch):
13737 (TestExporter): Deleted.
13738 (TestExporter.__init__): Deleted.
13739 (TestExporter._ensure_wpt_repository): Deleted.
13740 (TestExporter._fetch_wpt_repository): Deleted.
13741 (TestExporter._ensure_new_branch_name): Deleted.
13742 (TestExporter.download_and_commit_patch): Deleted.
13743 (TestExporter.clean): Deleted.
13744 (TestExporter.create_branch_with_patch): Deleted.
13745 (TestExporter.push_to_wpt_fork): Deleted.
13746 (TestExporter.make_pull_request): Deleted.
13747 (TestExporter.create_wpt_pull_request): Deleted.
13748 (TestExporter.delete_local_branch): Deleted.
13749 (TestExporter.create_git_patch): Deleted.
13750 (TestExporter.create_upload_remote_if_needed): Deleted.
13751 (TestExporter.do_export): Deleted.
13752 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
13753 (TestExporterTest.test_export):
13754 (TestExporterTest.test_export_with_specific_branch):
13755 (TestExporterTest):
13756 (TestExporterTest.test_export_interactive_mode):
13757 (TestExporterTest.test_export_invalid_token):
13758 (TestExporterTest.test_export_wrong_token):
13760 2018-05-17 Valerie R Young <valerie@bocoup.com>
13762 test262/Runner.pm: look for jsc in path if cannot call webkit-build-directory
13763 https://bugs.webkit.org/show_bug.cgi?id=185650
13765 Reviewed by Michael Saboff.
13767 First, use jsc from CLI arg, then try to use webkit-build-directory,
13768 if that doesn't work, look for jsc in the $PATH
13770 * Scripts/test262/Runner.pm:
13775 2018-05-16 Leo Balter <leonardo.balter@gmail.com>
13777 Test262-Runner: Adds a --timeout option
13778 https://bugs.webkit.org/show_bug.cgi?id=185696
13780 Reviewed by Michael Saboff.
13782 The timeout option is used to set a timeout execution in ms for each test run in JSC.
13783 The passed value - if defined - will be used as the value for the JSC --watchdog arg.
13784 * Scripts/test262/Runner.pm:
13788 2018-05-16 Leo Balter <leonardo.balter@gmail.com>
13790 Test262-Runner: Set timer for each test run
13791 https://bugs.webkit.org/show_bug.cgi?id=185692
13793 Reviewed by Michael Saboff.
13795 Sets a high resolution timer for each execution call of JSC, reporting
13796 the time in the results report to allow identifying slow tests.
13797 * Scripts/test262/Runner.pm:
13803 2018-05-16 Andy VanWagoner <andy@vanwagoner.family>
13805 Add support for Intl NumberFormat formatToParts
13806 https://bugs.webkit.org/show_bug.cgi?id=185375
13808 Reviewed by Yusuke Suzuki.
13810 Add flag for NumberFormat formatToParts.
13812 * Scripts/webkitperl/FeatureList.pm:
13813 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
13815 2018-05-14 Yusuke Suzuki <utatane.tea@gmail.com>
13817 [Win] Use C++17 in MSVC
13818 https://bugs.webkit.org/show_bug.cgi?id=185232
13820 Reviewed by Alex Christensen.
13822 Do not use `using namespace std;`. In C++17, we have std::byte. This "byte"
13823 conflicts with ::byte defined in Windows' header.
13825 * DumpRenderTree/TestNetscapePlugIn/win/WindowedPluginTest.cpp:
13826 (WindowedPluginTest::WindowedPluginTest):
13827 * DumpRenderTree/win/AccessibilityControllerWin.cpp:
13830 (AccessibilityController::winNotificationReceived):
13831 * DumpRenderTree/win/TextInputController.cpp:
13832 (markedRangeCallback):
13833 (firstRectForCharacterRangeCallback):
13834 (selectedRangeCallback):
13835 * DumpRenderTree/win/TextInputController.h:
13836 * DumpRenderTree/win/TextInputControllerWin.cpp:
13837 (TextInputController::markedRange):
13838 (TextInputController::firstRectForCharacterRange):
13839 (TextInputController::selectedRange):
13841 2018-05-16 Sihui Liu <sihui_liu@apple.com>
13843 Session cookies aren't reliably set when using default WKWebSiteDataStore
13844 https://bugs.webkit.org/show_bug.cgi?id=185624
13845 <rdar://problem/39111626>
13847 Reviewed by Geoffrey Garen.
13849 Modified and enabled WebKit.WKHTTPCookieStoreWithoutProcessPool.
13851 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
13852 (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
13855 2018-05-16 Valerie R Young <valerie@bocoup.com>
13857 test262/Runner.pm: save to supplied expectation file if supplied
13858 https://bugs.webkit.org/show_bug.cgi?id=185660
13860 Reviewed by Michael Saboff.
13862 * Scripts/test262/Runner.pm:
13866 2018-05-15 Ryan Haddad <ryanhaddad@apple.com>
13868 Unreviewed, rolling out r231763.
13870 The test added with this change is failing an assertion.
13872 Reverted changeset:
13874 "NSEvent event trackers don't work from WebKitTestRunner"
13875 https://bugs.webkit.org/show_bug.cgi?id=185383
13876 https://trac.webkit.org/changeset/231763
13878 2018-05-15 David Kilzer <ddkilzer@apple.com>
13880 TestWebKitAPI: Fix warnings found by new clang compiler
13881 <https://webkit.org/b/185631>
13883 Reviewed by Michael Catanzaro.
13885 * TestWebKitAPI/Tests/WTF/NakedPtr.cpp:
13886 (TestWebKitAPI::TEST):
13887 * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
13888 (TestWebKitAPI::TEST):
13889 * TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp:
13890 (TestWebKitAPI::TEST):
13891 * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
13892 (TestWebKitAPI::TEST):
13893 - Add #pragma statements to ignore the new
13894 -Wself-assign-overloaded warning and to ignore
13895 this as an unknown warning on older clang versions. We want
13896 to keep these self assigments as this code is designed to test
13899 * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
13900 (TestWebKitAPI::didFindStringMatches):
13901 - Replace the "rect = rect;" statement that was used to avoid an
13902 unused variable warning with two expectations.
13904 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
13905 (-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
13906 - Switch from -integerValue to -unsignedIntegerValue when
13907 comparing against _WKRectEdgeAll since it's an enum declared
13910 2018-05-15 Michael Catanzaro <mcatanzaro@igalia.com>
13912 Unreviewed, rolling out r230749
13914 This did not work as desired.
13916 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
13917 (TestWebKitAPI::TEST):
13919 2018-05-15 Antoine Quint <graouts@apple.com>
13921 [Web Animations] Expose Web Animations CSS integration as an experimental feature
13922 https://bugs.webkit.org/show_bug.cgi?id=185647
13924 Reviewed by Dean Jackson.
13926 Rename the Web Animations CSS integration flag.
13928 * DumpRenderTree/TestOptions.cpp:
13929 (TestOptions::TestOptions):
13930 * DumpRenderTree/TestOptions.h:
13931 * DumpRenderTree/mac/DumpRenderTree.mm:
13932 (setWebPreferencesForTestOptions):
13933 * WebKitTestRunner/TestController.cpp:
13934 (WTR::TestController::resetPreferencesToConsistentValues):
13935 (WTR::updateTestOptionsFromTestHeader):
13936 * WebKitTestRunner/TestOptions.h:
13937 (WTR::TestOptions::hasSameInitializationOptions const):
13939 2018-05-14 Brady Eidson <beidson@apple.com>
13941 Add an API test to guard against regressions while re-entering setDefersLoading:.
13942 <rdar://problem/37033737> and https://bugs.webkit.org/show_bug.cgi?id=185630
13944 Reviewed by Chris Dumez.
13946 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13947 * TestWebKitAPI/Tests/WebKitCocoa/DoubleDefersLoading.mm: Added.
13948 (-[DoubleDefersNavigationDelegate _webView:navigation:didSameDocumentNavigation:]):
13949 (-[DoubleDefersNavigationDelegate webView:didFinishNavigation:]):
13950 (-[DefersScheme initWithBytes:]):
13951 (-[DefersScheme webView:startURLSchemeTask:]):
13952 (-[DefersScheme webView:stopURLSchemeTask:]):
13953 * TestWebKitAPI/Tests/WebKitCocoa/DoubleDefersLoadingPlugin.mm: Added.
13954 (-[DoubleDefersLoadingPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
13955 (-[DoubleDefersLoadingPlugIn webProcessPlugInBrowserContextController:didSameDocumentNavigation:forFrame:]):
13956 (-[DoubleDefersLoadingPlugIn dealloc]):
13958 2018-05-14 Daniel Bates <dabates@apple.com>
13960 [iOS] Add a test to ensure that setTimeout() does not fire more than expected when using UIWebView
13961 https://bugs.webkit.org/show_bug.cgi?id=185599
13962 <rdar://problem/22493890>
13964 Reviewed by Simon Fraser.
13966 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
13967 * TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm: Added.
13968 (-[SetTimeoutFunctionWebViewDelegate webViewDidFinishLoad:]):
13969 (-[SetTimeoutFunctionWebViewDelegate webView:didFailLoadWithError:]):
13970 (-[SetTimeoutFunctionWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
13971 (TestWebKitAPI::TEST):
13972 * TestWebKitAPI/ios/set-timeout-function.html: Added.
13974 2018-05-14 Valerie R Young <valerie@bocoup.com>
13976 test262/Runner.pm: small bugs in CLI and error codes
13977 https://bugs.webkit.org/show_bug.cgi?id=185629
13979 Reviewed by Michael Saboff.
13981 Fix two commandline args with use '-f', correct
13982 error code of failures.
13984 * Scripts/test262/Runner.pm:
13988 2018-05-14 Ryan Haddad <ryanhaddad@apple.com>
13990 Disable API tests that time out after pointer poisioning was disabled.
13991 https://bugs.webkit.org/show_bug.cgi?id=185586
13993 Unreviewed test gardening.
13995 * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
13996 (TestWebKitAPI::TEST):
13997 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
13998 (TestWebKitAPI::TEST):
13999 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
14000 (TestWebKitAPI::TEST):
14001 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
14002 (TestWebKitAPI::TEST):
14004 2018-05-14 Leo Balter <leonardo.balter@gmail.com>
14006 Test262-Runner: Fix RegExp for capturing tests metadata"
14007 https://bugs.webkit.org/show_bug.cgi?id=185622
14009 Reviewed by Michael Saboff.
14011 This patch fixes the RegExp used to capture each test metadata regarding their EOL characters for
14012 both LF and CRLF forms.
14014 The fix also allows the runner to capture the proper results from two specific files using CR and
14015 CRLF line terminators. They are updated in the expectations file.
14016 * Scripts/test262/Runner.pm:
14019 2018-05-14 Jeremy Jones <jeremyj@apple.com>
14021 NSEvent event trackers don't work from WebKitTestRunner
14022 https://bugs.webkit.org/show_bug.cgi?id=185383
14023 rdar://problem/40025045
14025 Reviewed by Simon Fraser.
14027 Post simulated wheel events to _sendEventToObservers: so they can be handled by NSEvent observers.
14028 NSEvent swipe tracking is used for webkit swipe navigation.
14030 * WebKitTestRunner/mac/EventSenderProxy.mm:
14031 (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
14033 2018-05-11 Leo Balter <leonardo.balter@gmail.com>
14035 Test262 Runner should search for the Debug JSC by default
14036 https://bugs.webkit.org/show_bug.cgi?id=185562
14038 Reviewed by Michael Saboff.
14040 The Test262 Runner is now searching for the Debug build of JSC by
14041 default, not the Release build.
14043 This fix allows a similar call from the previous runner, making
14044 it compatible with the current build bot configuration parameters.
14046 This patch also adds some minor improvements the verbose mode output.
14048 * Scripts/test262/Runner.pm:
14054 2018-05-11 Charles Vazac <cvazac@gmail.com>
14056 Runtime feature flag for Server-Timing
14057 https://bugs.webkit.org/show_bug.cgi?id=184758
14059 Reviewed by Youenn Fablet.
14061 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: added ENABLE_SERVER_TIMING.
14062 * DumpRenderTree/win/DumpRenderTree.cpp: enable Server Timing
14064 2018-05-11 Fujii Hironori <Hironori.Fujii@sony.com>
14066 [Win][MiniBrowser] Move WK1 related code into MiniBrowser
14067 https://bugs.webkit.org/show_bug.cgi?id=185418
14069 Reviewed by Alex Christensen.
14071 All WK1 related code should be moved into MiniBrowser for the preparation
14074 This change moves the initilization code of MiniBrowse into MiniBrowser::init().
14076 * MiniBrowser/win/Common.cpp:
14077 (getAppDataFolder): Removed `static` keyword to be called from MiniBrowser.cpp.
14078 (setCacheFolder): This is only for WK1. Moved into MiniBrowser.cpp.
14079 * MiniBrowser/win/Common.h: Added.
14080 * MiniBrowser/win/MiniBrowser.cpp:
14081 (MiniBrowser::init): Moved the initilization code from wWinMain.
14082 (MiniBrowser::setCacheFolder): Moved from Common.cpp and made it a method.
14083 * MiniBrowser/win/MiniBrowser.h:
14084 (MiniBrowser::setCacheFolder): Changed to a private method.
14085 (MiniBrowser::subclassForLayeredWindow): Changed to a private method.
14086 * MiniBrowser/win/WinMain.cpp:
14087 (wWinMain): Moved MiniBrowse initilization code into MiniBrowser.cpp.
14089 2018-05-11 Brady Eidson <beidson@apple.com>
14091 Make sure history navigations reuse the existing process when necessary.
14092 <rdar://problem/39746516> and https://bugs.webkit.org/show_bug.cgi?id=185532
14094 Reviewed by Ryosuke Niwa.
14096 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
14098 2018-05-10 Carlos Garcia Campos <cgarcia@igalia.com>
14100 [JSC][GLIB] Add introspectable alternatives to functions using vargars
14101 https://bugs.webkit.org/show_bug.cgi?id=185508
14103 Reviewed by Michael Catanzaro.
14105 Add test cases for the new API.
14107 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
14111 2018-05-10 Leo Balter <leonardo.balter@gmail.com>
14113 [Build Bot] Restore configuration options to the Test262 Runner
14115 During the switch from the previous Test262 runner to the new one,
14116 a call for an extra configurations options got removed.
14118 This call is important to inform the script to find the debug or
14119 release build of JSC. It's being restored in this patch.
14121 https://bugs.webkit.org/show_bug.cgi?id=185513
14123 Reviewed by Yusuke Suzuki.
14125 * BuildSlaveSupport/build.webkit.org-config/steps.py:
14128 2018-05-10 Jonathan Bedard <jbedard@apple.com>
14130 REGRESSION (r230998): Cannot stream API test output
14131 https://bugs.webkit.org/show_bug.cgi?id=185090
14133 Reviewed by Ryosuke Niwa.
14135 Change run-api-tests so that the stdout and stderr of a test will be printed
14136 before it's result. If -v is passed, the output of single test runs will be
14139 * Scripts/webkitpy/api_tests/run_api_tests.py:
14140 (run): Use print_timestamps flag.
14141 (parse_args): Add timestamps option to print timestamps in the log.
14142 * Scripts/webkitpy/api_tests/runner.py:
14143 (Runner): Add running status.
14144 (Runner.__init__): Add number of workers and a flag to detect if a newline
14145 is needed at the beginning of a log line.
14146 (Runner.run): Turn off most logging coming from server process since it is
14147 not constructive for API tests.
14148 (Runner.handle): Add new log message to stream stdout and stderr instead of
14149 caching values until the test run finished.
14150 (_Worker._run_single_test): Log stdout and stderr in real time.
14151 (_Worker._run_shard_with_binary): Log stderr and stdout buffer before ending
14153 (_Worker.post): Provide a post with explicitly enumerated argument names.
14154 * Scripts/webkitpy/layout_tests/views/metered_stream.py:
14155 (MeteredStream.__init__): Differentiate verbose logging and logging with timestamps.
14156 (MeteredStream.write): Allow for verbose logging without timestamps.
14157 * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
14158 (RegularTest): Add print_timestamps flag.
14159 (RegularTest.setUp):
14160 (RegularTest.test_logging_not_included):
14161 (VerboseTest.test_log_args):
14162 (VerboseWithOutTimestamp):
14163 (VerboseWithOutTimestamp.test_basic): Add test for verbose logging without timestamps.
14165 2018-05-10 Ryosuke Niwa <rniwa@webkit.org>
14167 build-webkit can erroneously warn about Xcode being too old
14168 https://bugs.webkit.org/show_bug.cgi?id=185533
14170 Reviewed by Dan Bernstein.
14172 Don't assume the version number is always a single digit.
14174 * Scripts/webkitdirs.pm:
14175 (determineXcodeVersion):
14177 2018-05-10 Ross Kirsling <ross.kirsling@sony.com>
14179 [WinCairo][Buildbot] Test bots need to acquire WinCairoRequirements.
14180 https://bugs.webkit.org/show_bug.cgi?id=185528
14182 Reviewed by Lucas Forschler.
14184 * BuildSlaveSupport/build.webkit.org-config/factories.py:
14185 (TestFactory.__init__):
14186 * BuildSlaveSupport/build.webkit.org-config/steps.py:
14187 (InstallWinCairoDependencies):
14189 2018-05-10 Michael Catanzaro <mcatanzaro@igalia.com>
14191 Fix some -Wstring-op-truncation warnings
14192 https://bugs.webkit.org/show_bug.cgi?id=185496
14194 Reviewed by Alex Christensen.
14196 We have an off-by-one in the use of strncpy. The strings would not be null-terminated if
14197 the input was too long. Ensure the buffers are zero-initialized so we don't need to manually
14198 set the last bucket to NUL.
14200 * TestWebKitAPI/Tests/WTF/AtomicString.cpp:
14201 (TestWebKitAPI::testAtomicStringNumber):
14202 * TestWebKitAPI/Tests/WTF/WTFString.cpp:
14203 (TestWebKitAPI::testStringNumberFixedPrecision):
14204 (TestWebKitAPI::testStringNumberFixedWidth):
14205 (TestWebKitAPI::testStringNumber):
14207 2018-05-10 Fujii Hironori <Hironori.Fujii@sony.com>
14209 [Win][MiniBrowser] Add a separate WndProc for the layered window
14210 https://bugs.webkit.org/show_bug.cgi?id=185460
14212 Reviewed by Brent Fulgham.
14214 All WK1 related code should be moved into MiniBrowser for the
14215 preparation of Bug 184770.
14217 The layered window was using WndProc of the main window. The
14218 layered window is specific only for WK1. the main window will be
14219 shared among WK1 and WK2.
14221 This change add a new WndProc for the layer window.
14223 * MiniBrowser/win/Common.cpp:
14224 (WndProc): Removed code for the layered windows.
14225 (subclassForLayeredWindow): Moved into MiniBrowser.cpp.
14226 * MiniBrowser/win/MiniBrowser.cpp:
14227 (MiniBrowser::prepareViews): Removed the fourth argument `viewHwnd`.
14228 (viewWndProc): New WndProc for the layered windows.
14229 (MiniBrowser::subclassForLayeredWindow): Moved from Common.cpp.
14230 * MiniBrowser/win/MiniBrowser.h:
14231 (MiniBrowser::hwnd):
14232 * MiniBrowser/win/WinMain.cpp:
14233 (wWinMain): Added m_viewWnd.
14235 2018-05-10 Stephan Szabo <stephan.szabo@sony.com>
14237 Support --verbose in run-javascriptcore-tests
14238 https://bugs.webkit.org/show_bug.cgi?id=185492
14240 Reviewed by Daniel Bates.
14242 * Scripts/run-javascriptcore-tests:
14243 (runJSCStressTests):
14245 2018-05-10 Valerie R Young <valerie@bocoup.com>
14247 test262/Runner.pm: --failing-files uses results file not expectations
14248 https://bugs.webkit.org/show_bug.cgi?id=185395
14250 Reviewed by Michael Saboff.
14252 --failing-files arg now uses results file to find failing tests
14253 to rerun. It will look in the test262-results directory from whereever
14254 the script is run, or a results.yaml file can be supplied via command
14256 --expectations arg added for suppling expectation file.
14258 * Scripts/test262/Runner.pm:
14264 2018-05-10 Carlos Garcia Campos <cgarcia@igalia.com>
14266 [GTK] Add support for settings cookies policy and storage type in MiniBrowser
14267 https://bugs.webkit.org/show_bug.cgi?id=185506
14269 Reviewed by Philippe Normand.
14271 Useful for testing and debugging.
14273 * MiniBrowser/gtk/main.c:
14276 2018-05-09 Chris Dumez <cdumez@apple.com>
14278 Unreviewed Windows build fix after r231622.
14280 * DumpRenderTree/win/DumpRenderTree.cpp:
14281 (enableExperimentalFeatures):
14283 2018-05-09 Sihui Liu <sihui_liu@apple.com>
14285 Update WebKit.WebsiteDataStoreCustomPaths after r231536
14286 https://bugs.webkit.org/show_bug.cgi?id=185486
14287 <rdar://problem/37214391>
14289 Reviewed by Chris Dumez.
14291 Update WebKit.WebsiteDataStoreCustomPaths as _syncNetworkProcessCookies is async now.
14293 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
14296 2018-05-09 Leo Balter <leonardo.balter@gmail.com>
14298 Test262-Runner: Improve the verbose output
14299 https://bugs.webkit.org/show_bug.cgi?id=185491
14301 Reviewed by Michael Saboff.
14303 * Scripts/test262/Import.pm:
14305 * Scripts/test262/Runner.pm:
14308 2018-05-09 Leo Balter <leonardo.balter@gmail.com>
14310 Fix Test262 Runner to have DYLD_FRAMEWORK_PATH always set
14311 https://bugs.webkit.org/show_bug.cgi?id=185488
14313 Reviewed by Michael Saboff.
14315 * Scripts/test262/Runner.pm:
14320 2018-05-09 Richard Houle <rhoule@apple.com>
14322 [Cocoa] Some fields are not identified as [WKWebProcessPlugInNodeHandle isTextField]
14323 https://bugs.webkit.org/show_bug.cgi?id=185260
14324 <rdar://problem/39290394>
14326 Reviewed by Tim Horton.
14328 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
14329 * TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsTextField.mm: Added.
14330 (-[InjectedBundleNodeHandleIsTextField isTextFieldForHTMLInputType:document:jsContext:]):
14331 (-[InjectedBundleNodeHandleIsTextField webProcessPlugIn:didCreateBrowserContextController:]):
14332 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
14333 (-[InjectedBundleNodeHandleIsTextFieldDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
14335 2018-05-09 Thibault Saunier <tsaunier@igalia.com>
14337 [tests][GStreamer]: Pass USE_PLAYBIN3 to the tests subprocess
14338 https://bugs.webkit.org/show_bug.cgi?id=185481
14340 Reviewed by Philippe Normand.
14342 [tests][GStreamer]: Pass USE_PLAYBIN3 to the tests subprocess
14344 * Scripts/webkitpy/port/gtk.py:
14345 (GtkPort.setup_environ_for_server):
14347 2018-05-09 Leo Balter <leonardo.balter@gmail.com>
14349 Set build.webkit.org to use the new Test262-runner
14350 https://bugs.webkit.org/show_bug.cgi?id=184933
14352 Reviewed by Aakash Jain.
14354 * BuildSlaveSupport/build.webkit.org-config/steps.py:
14356 (RunTest262Tests.countFailures):
14357 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
14359 2018-05-09 Carlos Eduardo Ramalho <cadubentzen@gmail.com>
14361 [GTK][JHBuild] LLVM 3.7.0 build is broken with GCC 8.1
14362 https://bugs.webkit.org/show_bug.cgi?id=185461
14364 Reviewed by Michael Catanzaro.
14366 JHBuild now compiles LLVM 6 and Mesa 18.0.3.
14368 * gtk/jhbuild.modules:
14370 2018-05-09 Michael Catanzaro <mcatanzaro@igalia.com>
14372 Unreviewed. Update OptionsWPE.cmake and NEWS for 2.21.1 release.
14374 * wpe/manifest.txt.in: Distribute the NEWS.
14376 2018-05-09 Michael Catanzaro <mcatanzaro@igalia.com>
14378 [WPE] Build cleanly with GCC 8 and ICU 60
14379 https://bugs.webkit.org/show_bug.cgi?id=185462
14381 Reviewed by Carlos Alberto Lopez Perez.
14383 * TestWebKitAPI/CMakeLists.txt: Fix weird build failure, we were missing a directory. Not
14384 sure why this was never noticed until now or why the bots are OK.
14385 * gtk/jhbuild.modules: Add upstream patch to avoid warnings inside G_DEFINE_TYPE.
14386 * gtk/patches/glib-cast-function-type.patch: Added.
14387 * wpe/jhbuild.modules: Add upstream patch to avoid warnings inside G_DEFINE_TYPE.
14388 * wpe/patches/glib-cast-function-type.patch: Added.
14390 2018-05-06 Yusuke Suzuki <utatane.tea@gmail.com>
14392 [JSC][GTK][JSCONLY] Use capstone disassembler
14393 https://bugs.webkit.org/show_bug.cgi?id=185283
14395 Reviewed by Michael Catanzaro.
14397 * gtk/manifest.txt.in:
14398 * wpe/manifest.txt.in:
14400 2018-05-09 Antti Koivisto <antti@apple.com>
14402 Add OptionSet::operator& and operator bool
14403 https://bugs.webkit.org/show_bug.cgi?id=185306
14405 Reviewed by Anders Carlsson.
14407 * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
14408 (TestWebKitAPI::TEST):
14410 2018-05-08 Wenson Hsieh <wenson_hsieh@apple.com>
14412 Consolidate WebContentReaderIOS and WebContentReaderMac into WebContentReaderCocoa
14413 https://bugs.webkit.org/show_bug.cgi?id=185340
14415 Reviewed by Tim Horton.
14417 Adds a new API test to verify that URLs written using -[NSPasteboard writeObjects:] are pasted as anchors with
14418 non-empty text in a contenteditable.
14420 * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
14421 (TestWebKitAPI::TEST):
14423 2018-05-08 Valerie R Young <valerie@bocoup.com>
14425 test262/Runner.pm: create results dir for results of test262 run
14426 https://bugs.webkit.org/show_bug.cgi?id=185392
14428 Reviewed by Michael Saboff.
14430 New directory test262-results created from where ever script is
14433 * Scripts/test262/Runner.pm:
14436 2018-05-08 Valerie R Young <valerie@bocoup.com>
14438 test262/Runner.pm: lower number of processes per core
14439 https://bugs.webkit.org/show_bug.cgi?id=185426
14441 Reviewed by Michael Saboff.
14443 * Scripts/test262/Runner.pm:
14446 2018-05-08 Leo Balter <leonardo.balter@gmail.com>
14448 Test262-Runner: Add base Perl UnicodeData
14449 https://bugs.webkit.org/show_bug.cgi?id=185444
14451 Reviewed by Michael Saboff.
14453 * Scripts/test262/local/lib/perl5/unicore/lib/gc_sc/SpacePer.pl: Added.
14454 * Scripts/test262/local/lib/perl5/unicore/lib/gc_sc/Word.pl: Added.
14456 2018-05-08 Daniel Bates <dabates@apple.com>
14458 Add tests to ensure that the Strong Password appearance is removed on form reset
14459 https://bugs.webkit.org/show_bug.cgi?id=185440
14461 Reviewed by Ryosuke Niwa.
14463 * TestWebKitAPI/Tests/WebKitCocoa/DidResignInputElementStrongPasswordAppearance.mm:
14464 (-[DidResignInputElementStrongPasswordAppearance webProcessPlugIn:didCreateBrowserContextController:]):
14465 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
14468 2018-05-08 Daniel Bates <dabates@apple.com>
14470 Resign Strong Password appearance when text field value changes
14471 https://bugs.webkit.org/show_bug.cgi?id=185433
14472 <rdar://problem/39958508>
14474 Reviewed by Ryosuke Niwa.
14476 Add a unit test to ensure the injected bundle API and WebKit UI delegate SPI is invoked
14477 when the field has the Strong Password button and its value changes.
14479 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
14480 (testDidResignInputElementStrongPasswordAppearanceAfterEvaluatingJavaScript):
14483 2018-05-06 Filip Pizlo <fpizlo@apple.com>
14485 InPlaceAbstractState::beginBasicBlock shouldn't have to clear any abstract values
14486 https://bugs.webkit.org/show_bug.cgi?id=185365
14488 Reviewed by Saam Barati.
14490 Make it possible to measure compile times.
14492 Rolling back in after fixing cloop builds.
14494 * Scripts/run-jsc-benchmarks:
14496 2018-05-08 Wenson Hsieh <wenson_hsieh@apple.com>
14498 [iOS] WKAttachmentTestsIOS.InsertDroppedItemProvidersInOrder fails after r231396
14499 https://bugs.webkit.org/show_bug.cgi?id=185414
14501 Reviewed by Tim Horton.
14503 Adjust a test expectation to check that the resulting DOM contains an attachment element,
14504 anchor element, and another attachment element in that order. This ensures that the test
14505 still passes, even after the anchor element is followed by a line break.
14507 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
14508 (TestWebKitAPI::TEST):
14510 2018-05-08 Commit Queue <commit-queue@webkit.org>
14512 Unreviewed, rolling out r231491.
14513 https://bugs.webkit.org/show_bug.cgi?id=185434
14515 Setting the Created key on a cookie does not work yet, due a
14516 bug in CFNetwork (Requested by ggaren on #webkit).
14518 Reverted changeset:
14520 "[WKHTTPCookieStore getAllCookies] returns inconsistent
14522 https://bugs.webkit.org/show_bug.cgi?id=185041
14523 https://trac.webkit.org/changeset/231491
14525 2018-05-08 Valerie R Young <valerie@bocoup.com>
14527 test262/Runner.pm: move input files to JSTests/test262
14528 https://bugs.webkit.org/show_bug.cgi?id=185389
14530 Reviewed by Michael Saboff.
14532 * Scripts/test262/Runner.pm:
14535 2018-05-08 Chris Dumez <cdumez@apple.com>
14537 Unreviewed, simplify Speedometer fixes landed in r231489, r231483 & r231474.
14539 * Scripts/webkitpy/performance_tests/perftest.py:
14542 2018-05-08 Ryan Haddad <ryanhaddad@apple.com>
14544 Unreviewed, rolling out r231468.
14546 Broke the CLoop build
14548 Reverted changeset:
14550 "InPlaceAbstractState::beginBasicBlock shouldn't have to clear
14551 any abstract values"
14552 https://bugs.webkit.org/show_bug.cgi?id=185365
14553 https://trac.webkit.org/changeset/231468
14555 2018-05-08 Sihui Liu <sihui_liu@apple.com>
14557 [WKHTTPCookieStore getAllCookies] returns inconsistent creation time
14558 https://bugs.webkit.org/show_bug.cgi?id=185041
14559 <rdar://problem/34684214>
14561 Reviewed by Geoffrey Garen.
14563 Add API test Coverage.
14565 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
14568 2018-05-08 Chris Dumez <cdumez@apple.com>
14570 Unreviewed, fix issue with running Speedometer PerfTest after r231450.
14572 * Scripts/webkitpy/performance_tests/perftest.py:
14575 2018-05-08 Chris Dumez <cdumez@apple.com>
14577 Unreviewed, fix issue with running Speedometer PerfTest after r231450.
14579 * Scripts/webkitpy/performance_tests/perftest.py:
14582 2018-05-07 Chris Dumez <cdumez@apple.com>
14584 Unreviewed, fix issue with running Speedometer PerfTest after r231450.
14586 * Scripts/webkitpy/performance_tests/perftest.py:
14589 2018-05-06 Filip Pizlo <fpizlo@apple.com>
14591 InPlaceAbstractState::beginBasicBlock shouldn't have to clear any abstract values
14592 https://bugs.webkit.org/show_bug.cgi?id=185365
14594 Reviewed by Saam Barati.
14596 Make it possible to measure compile times.
14598 * Scripts/run-jsc-benchmarks:
14600 2018-05-07 Leo Balter <leonardo.balter@gmail.com>
14602 Test262-Runner: Add base module to the local deps - unicore/Exact.pl
14603 https://bugs.webkit.org/show_bug.cgi?id=185390
14605 Reviewed by Michael Saboff.
14607 * Scripts/test262/local/lib/perl5/unicore/Exact.pl: Added.
14609 2018-05-07 Jonathan Bedard <jbedard@apple.com>
14611 Check for com.apple.datamigrator before declaring simulators booted
14612 https://bugs.webkit.org/show_bug.cgi?id=185315
14613 <rdar://problem/39986261>
14615 Reviewed by David Kilzer.
14617 * Scripts/webkitdirs.pm:
14618 (waitUntilProcessNotRunning): Wait until a process is not found.
14619 (relaunchIOSSimulator): Wait until com.apple.datamigrator stops running to declare
14620 a simulator booted.
14621 * Scripts/webkitpy/common/system/executive_mock.py:
14622 (MockExecutive2.__init__): Define _running_pids.
14623 * Scripts/webkitpy/xcode/simulated_device.py:
14624 (SimulatedDeviceManager.initialize_devices): Call wait_until_data_migration_is_done before
14625 declaring that devices have been booted, increase the timeout since data migration will frequently
14626 take longer than 60 seconds, especially with multiple simulators booting.
14627 (SimulatedDeviceManager.swap): Ditto.
14628 (SimulatedDeviceManager):
14629 (SimulatedDeviceManager.wait_until_data_migration_is_done): Wait until there are no com.apple.datamigrator
14632 2018-05-07 Daniel Bates <dabates@apple.com>
14634 REGRESSION (r229955): run-webkit-tests runs tests in skipped directories and subdirectories of directory given on command line
14635 https://bugs.webkit.org/show_bug.cgi?id=185054
14636 <rdar://problem/39773209>
14638 Reviewed by Ryosuke Niwa.
14640 Fallback to MacPort.CURRENT_VERSION if we are not using a known named macOS and do not have Apple Additions.
14642 Darwin-based ports have OS version-specific test expectations and are certified to support running tests using
14643 the currently shipping OS by way of a hardcoded class variable CURRENT_VERSION. The run-webkit-tests script
14644 depends on the OS version to find the applicable TestExpectations files to parse to compute the list of skipped
14645 tests for the port.
14647 * Scripts/webkitpy/port/mac.py:
14648 (MacPort.__init__): Fall back to MacPort.CURRENT_VERSION if we are not using a known named macOS and do not
14649 have Apple Additions.
14650 * Scripts/webkitpy/port/mac_unittest.py:
14651 (MacTest.test_factory_with_future_version): Added.
14652 (MacTest.test_factory_with_future_version_and_apple_additions): Renamed from MacTest.test_factory_with_future_version()
14653 and added code to use the mock Apple Additions so that running this code with- and without- the real Apple Additions
14654 produces consistent results now that the Mac port's OS version falls back to MacPort.CURRENT_VERSION when Apple Additions
14657 2018-05-07 Brian Burg <bburg@apple.com>
14659 Web Inspector: opt out of process swap on navigation if a Web Inspector frontend is connected
14660 https://bugs.webkit.org/show_bug.cgi?id=184861
14661 <rdar://problem/39153768>
14663 Reviewed by Timothy Hatcher.
14665 Add a new test that checks whether a new process is used for navigation when
14666 an Inspector is shown. Also check that the behavior reverts to normal after
14667 the Inspector has been closed.
14669 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
14671 2018-05-04 Wenson Hsieh <wenson_hsieh@apple.com>
14673 [iOS] Multiple links in Mail are dropped in a single line, and are difficult to tell apart
14674 https://bugs.webkit.org/show_bug.cgi?id=185289
14675 <rdar://problem/35756912>
14677 Reviewed by Tim Horton and Darin Adler.
14679 Augment and rebaseline some iOS drag-and-drop API tests that handle dropping URLs as a part of multi-item drop
14682 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
14683 (TestWebKitAPI::TEST):
14685 2018-05-04 Timothy Hatcher <timothy@apple.com>
14687 Deprecate legacy WebView and friends
14688 https://bugs.webkit.org/show_bug.cgi?id=185279
14689 rdar://problem/33268700
14691 Reviewed by Tim Horton.
14693 * MiniBrowser/Configurations/Base.xcconfig: Added GCC_PREPROCESSOR_DEFINITIONS
14694 to define DISABLE_LEGACY_WEBKIT_DEPRECATIONS.
14696 2018-05-04 Leo Balter <leonardo.balter@gmail.com>
14698 Test262-Runner: Add base module to the local deps - unicore/PVA.pl
14699 https://bugs.webkit.org/show_bug.cgi?id=185314
14701 Reviewed by Michael Saboff.
14703 * Scripts/test262/local/lib/perl5/unicore/PVA.pl: Added.
14705 2018-05-04 Wenson Hsieh <whsieh@berkeley.edu>
14707 REGRESSION: [ios-simulator] 3 WKWebViewAutofillTests API test failures seen with 11.3 SDK
14708 https://bugs.webkit.org/show_bug.cgi?id=184196
14709 <rdar://problem/39054481>
14711 Reviewed by Tim Horton.
14713 Removes some unnecessary workarounds to enable running app autofill tests against iOS versions
14714 earlier than 11.3. Also re-enables these tests.
14716 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
14717 (TestWebKitAPI::TEST):
14718 (-[UITextAutofillSuggestion initWithUsername:password:]): Deleted.
14719 (+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Deleted.
14721 2018-05-04 Myles C. Maxfield <mmaxfield@apple.com>
14723 Text shaping in the simple path is flipped in the y direction
14724 https://bugs.webkit.org/show_bug.cgi?id=185062
14725 <rdar://problem/39778678>
14727 Reviewed by Simon Fraser.
14729 Huge thanks to Ulrike Rausch of LiebeFonts for contributing the test fonts!!!
14731 * Scripts/webkitpy/common/config/contributors.json:
14733 2018-05-04 Leo Balter <leonardo.balter@gmail.com>
14735 Test262-Runner: place the processCLI inside the main call
14736 https://bugs.webkit.org/show_bug.cgi?id=185304
14738 Reviewed by Michael Saboff.
14740 * Scripts/test262/Runner.pm:
14743 2018-05-04 Carlos Garcia Campos <cgarcia@igalia.com>
14745 [GTK] Epiphany (GNOME Web) says "Error downloading: Service Unavailable." when trying to download an image from discogs.com
14746 https://bugs.webkit.org/show_bug.cgi?id=174730
14748 Reviewed by Michael Catanzaro.
14750 Update unit tests to check that User-Agent header is included in HTTP download requests.
14752 * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
14753 (testDownloadRemoteFile):
14754 (testWebViewDownloadURI):
14755 (testPolicyResponseDownload):
14756 (testPolicyResponseDownloadCancel):
14757 (testDownloadMIMEType):
14758 (testContextMenuDownloadActions):
14760 2018-05-03 Ross Kirsling <ross.kirsling@sony.com>
14762 [WinCairo] Test archive must use Python zipfile, just like build product.
14763 https://bugs.webkit.org/show_bug.cgi?id=185265
14765 Reviewed by Per Arne Vollan.
14767 * BuildSlaveSupport/test-result-archive:
14768 (archive_test_results):
14769 Copy over Win32-oriented archiving logic from built-product-archive.
14771 2018-05-03 Leo Balter <leonardo.balter@gmail.com>
14773 cleanup modules usage for the Test262-Runner
14774 https://bugs.webkit.org/show_bug.cgi?id=185263
14776 Reviewed by Michael Saboff.
14778 * Scripts/test262-runner:
14779 * Scripts/test262/Runner.pm:
14782 2018-05-03 Valerie R Young <valerie@bocoup.com>
14784 test262/Runner.pm: minor fixes
14785 https://bugs.webkit.org/show_bug.cgi?id=185250
14787 Reviewed by Michael Saboff.
14789 Add comments, change output and fix bug: unintended interpolation
14790 of filename when running jsc.
14792 * Scripts/test262/Runner.pm:
14797 2018-05-03 Chris Dumez <cdumez@apple.com>
14799 Load hangs if the WebProcess fails to launch
14800 https://bugs.webkit.org/show_bug.cgi?id=185225
14801 <rdar://problem/38249058>
14803 Reviewed by Geoff Garen.
14805 Add API test coverage.
14807 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
14808 * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm: Added.
14809 (-[CrashOnStartNavigationDelegate _webView:webContentProcessDidTerminateWithReason:]):
14810 (-[CrashOnStartNavigationDelegate webView:didFinishNavigation:]):
14811 (-[CrashRecoveryScriptMessageHandler userContentController:didReceiveScriptMessage:]):
14814 2018-05-03 Don Olmstead <don.olmstead@sony.com>
14816 [WinCairo] Add JSC test bots
14817 https://bugs.webkit.org/show_bug.cgi?id=185234
14819 Reviewed by Per Arne Vollan.
14821 * BuildSlaveSupport/build.webkit.org-config/config.json:
14822 * BuildSlaveSupport/build.webkit.org-config/steps.py:
14823 (RunJavaScriptCoreTests.start):
14825 2018-05-03 Michael Catanzaro <mcatanzaro@igalia.com>
14827 WebKit should send fake macOS user agent to docs.google.com
14828 https://bugs.webkit.org/show_bug.cgi?id=185165
14830 Reviewed by Carlos Garcia Campos.
14832 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
14833 (TestWebKitAPI::TEST):
14835 2018-05-03 Valerie R Young <valerie@bocoup.com>
14837 test262/Runner.pm: performance improvements
14838 https://bugs.webkit.org/show_bug.cgi?id=185202
14840 Reviewed by Michael Saboff.
14842 Batch the tests by the number of processes, and give each process
14843 a file to save results to to avoid threading. Do not parallelize
14844 when running small sets of tests.
14846 * Scripts/test262/Runner.pm:
14852 2018-05-03 Ryan Haddad <ryanhaddad@apple.com>
14854 Unreviewed, rolling out r231253.
14856 The API test added with this change is crashing on the bots.
14858 Reverted changeset:
14860 "Web Inspector: opt out of process swap on navigation if a Web
14861 Inspector frontend is connected"
14862 https://bugs.webkit.org/show_bug.cgi?id=184861
14863 https://trac.webkit.org/changeset/231253
14865 2018-05-03 Carlos Garcia Campos <cgarcia@igalia.com>
14867 REGRESSION(r222772): [GTK][WPE] WebProcess from WebKitGtk+ 2.19.9x SIGSEVs in WebKit::WebProcess::ensureNetworkProcessConnection() at Source/WebKit/WebProcess/WebProcess.cpp:1127
14868 https://bugs.webkit.org/show_bug.cgi?id=183348
14870 Reviewed by Michael Catanzaro.
14872 Add a test case to reproduce the crash.
14874 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
14875 (testWebViewCloseQuickly):
14878 2018-05-02 Aditya Keerthi <akeerthi@apple.com>
14880 Can't copy and paste URLs that have no title into Mail (macOS)
14881 https://bugs.webkit.org/show_bug.cgi?id=185205
14882 <rdar://problem/36352406>
14884 Reviewed by Tim Horton.
14886 Added test to verify behavior when copying and pasting a URL without a title.
14888 * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.html:
14889 * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.mm:
14890 (TestWebKitAPI::TEST):
14892 2018-05-02 Carlos Alberto Lopez Perez <clopez@igalia.com>
14894 [GTK] Generate a JSC bundle on the 64 and 32 bit release bots and upload it to webkitgtk.org (follow-up fix)
14895 https://bugs.webkit.org/show_bug.cgi?id=184699
14897 Unreviewed follow-up fix after r231230.
14899 * Scripts/generate-jsc-bundle:
14900 (generate_wrapper_script): Quote the arguments passed to jsc.
14902 2018-05-02 Brian Burg <bburg@apple.com>
14904 Web Inspector: opt out of process swap on navigation if a Web Inspector frontend is connected
14905 https://bugs.webkit.org/show_bug.cgi?id=184861
14906 <rdar://problem/39153768>
14908 Reviewed by Ryosuke Niwa.
14910 Add a new test that checks whether a new process is used for navigation when
14911 an Inspector is shown. Also check that the behavior reverts to normal after
14912 the Inspector has been closed.
14914 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
14916 2018-05-02 Valerie R Young <valerie@bocoup.com>
14918 test262/Runner.pm: save summary to file
14919 https://bugs.webkit.org/show_bug.cgi?id=185200
14921 Reviewed by Michael Saboff.
14923 * Scripts/test262/Runner.pm:
14926 (summarizeResults):
14928 2018-05-02 Carlos Alberto Lopez Perez <clopez@igalia.com>
14930 [GTK] Generate a JSC bundle on the 64 and 32 bit release bots and upload it to webkitgtk.org
14931 https://bugs.webkit.org/show_bug.cgi?id=184699
14933 Reviewed by Gustavo Noronha Silva.
14935 This adds a new step for the GTK 64-bit release build bot and the
14936 GTK 32-bit release build&test bot.
14938 This step will be run as one of the lasts ones (after the product
14939 is built) and will execute the script generate-jsc-bundle.
14940 This script will take care of creating a JSC bundle and uploading
14941 it to a server defined on a configuration file that has to be
14942 deployed on the bots with the required server data and credentials
14945 In this case, the built products should then be accessible at
14946 <https://webkitgtk.org/jsc-built-products>. But the implementation
14947 is not tied to any specific server. All the details about where
14948 to upload the file is done in configuration file that is kept
14949 private on each bot outside of the WebKit source tree.
14951 The script also supports generating a JSC bundle locally and not
14952 uploading it anywhere. This is the default mode of running.
14953 The remote upload will only be activated if a --remote-config-file
14954 parameter is passed (which is done from the buildbot config)
14956 * BuildSlaveSupport/build.webkit.org-config/config.json:
14957 * BuildSlaveSupport/build.webkit.org-config/factories.py:
14959 (BuildFactory.__init__):
14961 (TestFactory.__init__):
14962 (BuildAndGenerateJSCBundleFactory):
14963 (BuildAndNonLayoutTestAndGenerateJSCBundleFactory):
14964 * BuildSlaveSupport/build.webkit.org-config/steps.py:
14965 (GenerateJSCBundle):
14966 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
14967 * Scripts/generate-jsc-bundle: Added.
14968 (ldd_get_libs_and_interpreter):
14970 (generate_wrapper_script):
14971 (copy_and_remove_rpath):
14977 2018-05-01 Ryosuke Niwa <rniwa@webkit.org>
14979 PSON: Make WebKitTestRunner work with process swap on navigation turned on
14980 https://bugs.webkit.org/show_bug.cgi?id=185111
14982 Reviewed by Chris Dumez.
14984 Add the basic support for running layout tests with process-swap-on-navigation turned on.
14986 First, move m_whatToDump, m_dumpPixels, m_waitToDump, and m_dumpFrameLoadCallbacks from WebContent process
14987 to UI process so that calls to waitUntilDone, dumpAsText, etc... persist across process swaps.
14989 In addition, initialize the injected bundle inside a new WebContent process when the first page is created.
14990 This instantiates objects such as TestRunner, GCController, etc... in the new process. The initialization
14991 can't be done in InjectedBundle::beginTesting because some steps in InjectedBundle::initialize require
14992 the current PageGroup and Page objects. We avoid clearing databases and app cache in this case.
14994 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
14995 (WTR::InjectedBundle::didCreatePage): Send "Initialization" message to UI process. This message returns
14996 all the dictionary values usually present in "BeginTest" message from UI process as well as "ResumeTesting"
14997 boolean which is set when this process was created as a result of a process swap on navgation. Invoke
14998 beginTesting with BegingTestingMode::Resume when this boolean is set.
14999 (WTR::InjectedBundle::didReceiveMessageToPage):
15000 (WTR::InjectedBundle::beginTesting): Don't clear database, app cache, etc... when initializing an injected
15001 bundle after a process swap on navigation.
15002 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
15003 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
15004 (WTR::InjectedBundlePage::dump):
15005 (WTR::InjectedBundlePage::frameDidChangeLocation):
15006 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
15007 (WTR::TestRunner::TestRunner):
15008 (WTR::TestRunner::shouldDumpPixels const): Added.
15009 (WTR::TestRunner::setDumpPixels): Added.
15010 (WTR::TestRunner::dumpAsText):
15011 (WTR::TestRunner::whatToDump const): Added.
15012 (WTR::TestRunner::setWhatToDump): Added.
15013 (WTR::TestRunner::waitUntilDone):
15014 (WTR::TestRunner::setWaitUntilDone): Added.
15015 (WTR::TestRunner::shouldWaitUntilDone): Added.
15016 (WTR::TestRunner::notifyDone):
15017 (WTR::TestRunner::forceImmediateCompletion):
15018 (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Added.
15019 (WTR::TestRunner::shouldDumpFrameLoadCallbacks): Added.
15020 (WTR::TestRunner::setAudioResult):
15021 * WebKitTestRunner/InjectedBundle/TestRunner.h:
15022 (WTR::TestRunner::dumpChildFramesAsText):
15023 (WTR::TestRunner::dumpDOMAsWebArchive):
15024 (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Moved to cpp.
15025 (WTR::TestRunner::whatToDump const): Moved to cpp.
15026 (WTR::TestRunner::shouldDumpMainFrameScrollPosition const):
15027 (WTR::TestRunner::shouldDumpPixels const): Moved to cpp.
15028 (WTR::TestRunner::shouldDumpFrameLoadCallbacks const): Moved to cpp.
15029 (WTR::TestRunner::waitToDump const): Renamed to shouldWaitUntilDone and moved to cpp.
15030 * WebKitTestRunner/TestInvocation.cpp:
15031 (WTR::TestInvocation::TestInvocation): Initialize m_dumpFrameLoadCallbacks here.
15032 (WTR::TestInvocation::shouldLogFrameLoadDelegates const): Deleted.
15033 (WTR::TestInvocation::createTestSettingsDictionary): Extracted from invoke().
15034 (WTR::TestInvocation::invoke): Sets m_startedTesting to true immediately afte sending "BeginTest" message.
15035 m_startedTesting is later used in didReceiveSynchronousMessageFromInjectedBundle to detect whether a given
15036 "Initialization" message is sent from a regular WebContent process (m_startedTesting is false) or the one
15037 started as a result of a process swap on navigation (m_startedTesting is true).
15038 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): Added a bunch of new messgaes to
15039 support initializing the injected bundle in a process swapped after navigation and set/get messages for
15040 the states which must persist across process swaps within a test.
15041 * WebKitTestRunner/TestInvocation.h:
15042 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
15043 * Tools/WebKitTestRunner/WhatToDump.h:
15044 (WTR::WhatToDump): Added.
15046 2018-05-01 Leo Balter <leonardo.balter@gmail.com>
15048 Auto save the results for Test262
15049 https://bugs.webkit.org/show_bug.cgi?id=184926
15051 Reviewed by Michael Saboff.
15053 * Scripts/test262/Runner.pm:
15058 (summarizeResults):
15059 * Scripts/test262/config.yaml: Renamed from Tools/Scripts/test262/test262-config.yaml.
15061 2018-05-01 Jonathan Bedard <jbedard@apple.com>
15063 webkitpy: SIGKILL right after SIGTERM causes orphaned processes with 'xcrun simctl spawn'
15064 https://bugs.webkit.org/show_bug.cgi?id=185164
15066 Reviewed by David Kilzer.
15068 * Scripts/webkitpy/common/system/executive.py:
15069 (Executive.kill_process): First attempt will always send a SIGTERM, all subsequent attempts will
15070 send a SIGKILL. A SIGKILL with not be sent if the process is not running to avoid orphaning childen.
15072 2018-05-01 Chris Dumez <cdumez@apple.com>
15074 REGRESSION (r230919): API test WebKit.AutoLayoutIntegration is a flaky failure
15075 https://bugs.webkit.org/show_bug.cgi?id=184918
15076 <rdar://problem/39705516>
15078 Reviewed by Wenson Hsieh.
15080 Make sure provisional load has started before calling beginLayoutAtMinimumWidth
15081 on the AutoLayoutWKWebView to restore pre-r230919 behavior. The load now starts
15082 asynchronously because we ask the client if it is OK to do the load and the policy
15083 delegates are asynchronous nowadays.
15085 * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
15086 (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]):
15087 * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
15088 * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
15089 (-[TestNavigationDelegate webView:didStartProvisionalNavigation:]):
15090 (-[TestNavigationDelegate waitForDidStartProvisionalNavigation]):
15091 (-[WKWebView _test_waitForDidStartProvisionalNavigation]):
15093 2018-05-01 Ross Kirsling <ross.kirsling@sony.com>
15095 [WinCairo] Align buildbot test stages with AppleWin.
15096 https://bugs.webkit.org/show_bug.cgi?id=185094
15098 Reviewed by Brent Fulgham.
15100 * BuildSlaveSupport/build.webkit.org-config/factories.py:
15101 (TestFactory.__init__):
15102 Do run API tests, don't run dashboard tests.
15104 * BuildSlaveSupport/build.webkit.org-config/steps.py:
15106 Call run-api-tests with Python, not Perl (bugfix for r230998).
15108 * Scripts/webkitpy/port/win.py:
15109 (WinPort.environment_for_api_tests):
15110 Retrieve necessary Windows environment variables.
15112 2018-05-01 Eric Carlson <eric.carlson@apple.com>
15114 [MediaStream] remove WK1 support
15115 https://bugs.webkit.org/show_bug.cgi?id=185136
15117 Reviewed by Youenn Fablet.
15119 * DumpRenderTree/mac/UIDelegate.mm:
15120 (-[UIDelegate webView:decidePolicyForUserMediaRequestFromOrigin:listener:]): Deleted.
15122 2018-05-01 Chris Dumez <cdumez@apple.com>
15124 [WKTR] Move navigation policy for response decision from InjectedBundle to UIProcess
15125 https://bugs.webkit.org/show_bug.cgi?id=185157
15127 Reviewed by Geoffrey Garen.
15129 Move navigation policy for response decision from InjectedBundle to UIProcess. This is a more
15130 common configuration and should therefore be the configuration we test by default.
15132 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
15133 (WTR::InjectedBundlePage::decidePolicyForResponse):
15135 2018-05-01 Oleksandr Skachkov <gskachkov@gmail.com>
15137 WebAssembly: add support for stream APIs - JavaScript API
15138 https://bugs.webkit.org/show_bug.cgi?id=183442
15140 Reviewed by Yusuke Suzuki and JF Bastien.
15142 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
15144 2018-04-30 Mark Lam <mark.lam@apple.com>
15146 Apply PtrTags to the MetaAllocator and friends.
15147 https://bugs.webkit.org/show_bug.cgi?id=185110
15148 <rdar://problem/39533895>
15150 Reviewed by Saam Barati.
15152 Update the test to match MetaAllocator changes in WTF.
15154 * TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
15155 (TestWebKitAPI::TEST_F):
15159 2018-04-30 Alex Christensen <achristensen@webkit.org>
15161 Add WKUIDelegatePrivate equivalent of WKPageContextMenuClient getContextMenuFromProposedMenuAsync
15162 https://bugs.webkit.org/show_bug.cgi?id=180955
15164 Reviewed by Andy Estes.
15166 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.mm:
15167 (-[ContextMenuImgWithVideoDelegate _webView:contextMenu:forElement:]):
15168 (-[ContextMenuImgWithVideoDelegate _webView:getContextMenuFromProposedMenu:forElement:userInfo:completionHandler:]):
15170 2018-04-30 JF Bastien <jfbastien@apple.com>
15172 Use some C++17 features
15173 https://bugs.webkit.org/show_bug.cgi?id=185135
15175 Reviewed by Alex Christensen.
15177 * DumpRenderTree/PlatformMac.cmake:
15178 * gtk/ycm_extra_conf.py:
15181 2018-04-30 Yusuke Suzuki <utatane.tea@gmail.com>
15183 Use WordLock instead of std::mutex for Threading
15184 https://bugs.webkit.org/show_bug.cgi?id=185121
15186 Reviewed by Geoffrey Garen.
15188 * TestWebKitAPI/Tests/WTF/Signals.cpp:
15191 2018-04-30 Michael Catanzaro <mcatanzaro@igalia.com>
15193 [GTK] Webkit should spoof as Safari on a Mac when on Chase.com
15194 https://bugs.webkit.org/show_bug.cgi?id=185103
15196 Reviewed by Carlos Garcia Campos.
15198 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
15199 (TestWebKitAPI::TEST):
15201 2018-04-28 Sihui Liu <sihui_liu@apple.com>
15203 [Cocoa] Set HTTPOnly flag when converting Cookie to NSHTTPCookie
15204 https://bugs.webkit.org/show_bug.cgi?id=185052
15206 Reviewed by Geoffrey Garen.
15208 Modified API test to provide correct test cases for HTTPOnly flag.
15210 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
15213 2018-04-28 Rick Waldron <waldron.rick@gmail.com>
15215 Token misspelled "tocken" in error message string
15216 https://bugs.webkit.org/show_bug.cgi?id=185030
15218 Reviewed by Saam Barati.
15220 * Scripts/test262/test262-expectations.yaml: Fix typo "tocken" => "token"
15222 2018-04-27 Stephan Szabo <stephan.szabo@sony.com>
15224 [WinCairo] Support --no-copy for jsc tests in wincairo tests, add copying of dlls for copy case
15225 https://bugs.webkit.org/show_bug.cgi?id=185049
15227 Reviewed by Keith Miller.
15229 * Scripts/run-javascriptcore-tests:
15230 (runJSCStressTests):
15231 * Scripts/run-jsc-stress-tests:
15233 2018-04-26 Ryosuke Niwa <rniwa@webkit.org>
15235 PSON: Triggering a navigation to an invalid URL creates a new WebContent process
15236 https://bugs.webkit.org/show_bug.cgi?id=185066
15238 Reviewed by Youenn Fablet.
15240 Added a new test case (ProcessSwap.NavigateToInvalidURL) for navigating to an invalid URL.
15241 WebKit should not swap WebContent process in this case.
15243 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
15244 (-[PSONNavigationDelegate webView:didFailProvisionalNavigation:withError:]):
15245 (-[PSONUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
15247 2018-04-27 Nan Wang <n_wang@apple.com>
15249 AX: Accessibility needs to know which part of the content view is visible on iOS
15250 https://bugs.webkit.org/show_bug.cgi?id=185085
15251 <rdar://problem/39801363>
15253 Reviewed by Chris Fleizach.
15255 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
15256 (WTR::AccessibilityUIElement::stringAttributeValue):
15258 2018-04-27 Wenson Hsieh <wenson_hsieh@apple.com>
15260 [Extra zoom mode] Add a mechanism to override default viewport behaviors in extra zoom mode
15261 https://bugs.webkit.org/show_bug.cgi?id=185050
15262 <rdar://problem/39624038>
15264 Reviewed by Tim Horton.
15266 Remove a test that's no longer useful, now that the SPI it was testing is gone. This functionality is now
15267 tested by the layout test added in this patch.
15269 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
15270 * TestWebKitAPI/Tests/ios/ViewportSizingTests.mm: Removed.
15272 2018-04-26 Ryan Haddad <ryanhaddad@apple.com>
15274 REGRESSION (r231039): RunUnitTests step reports disabled tests as failures
15275 https://bugs.webkit.org/show_bug.cgi?id=185061
15277 Reviewed by Aakash Jain.
15279 * BuildSlaveSupport/build.webkit.org-config/steps.py:
15280 (RunUnitTests.countFailures): Return the difference between the total number of tests run and the number that passed.
15281 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Add a test.
15283 2018-04-26 Ross Kirsling <ross.kirsling@sony.com>
15285 Add release bots for WinCairo.
15286 https://bugs.webkit.org/show_bug.cgi?id=185042
15288 Reviewed by Lucas Forschler.
15290 * BuildSlaveSupport/build.webkit.org-config/config.json:
15291 Add a release build bot and two test bots, replacing the outdated WinCairo release bots.
15293 2018-04-26 Sihui Liu <sihui_liu@apple.com>
15295 -[WKHTTPCookieStore deleteCookie:completionHandler:] doesn't delete cookies
15296 https://bugs.webkit.org/show_bug.cgi?id=184938
15297 <rdar://problem/34737395>
15299 Reviewed by Geoffrey Garen.
15301 Add API test coverage.
15303 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
15306 2018-04-26 Ross Kirsling <ross.kirsling@sony.com>
15308 WinCairo test bots should run JSC tests with options for Windows command prompt.
15309 https://bugs.webkit.org/show_bug.cgi?id=185019
15311 Reviewed by Per Arne Vollan.
15313 * BuildSlaveSupport/build.webkit.org-config/steps.py:
15314 (RunJavaScriptCoreTests.start):
15316 2018-04-26 Ross Kirsling <ross.kirsling@sony.com>
15318 WinCairo WKL Debug Test bot is not using DRT.
15319 https://bugs.webkit.org/show_bug.cgi?id=185009
15321 Reviewed by Per Arne Vollan.
15323 * BuildSlaveSupport/build.webkit.org-config/config.json:
15325 2018-04-26 Per Arne Vollan <pvollan@apple.com>
15327 Disable content filtering in minimal simulator mode
15328 https://bugs.webkit.org/show_bug.cgi?id=185027
15329 <rdar://problem/39736091>
15331 Reviewed by Jer Noble.
15333 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
15335 2018-04-26 Brady Eidson <beidson@apple.com>
15337 Add a setting for keeping around all processes and always reusing them per-origin.
15338 <rdar://problem/39695798> and https://bugs.webkit.org/show_bug.cgi?id=185020
15340 Reviewed by Andy Estes.
15342 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
15344 2018-04-26 Andy VanWagoner <thetalecrafter@gmail.com>
15346 [INTL] Implement Intl.PluralRules
15347 https://bugs.webkit.org/show_bug.cgi?id=184312
15349 Reviewed by JF Bastien.
15351 Added Intl.PluralRules feature flag.
15353 * Scripts/webkitperl/FeatureList.pm:
15354 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
15356 2018-04-25 Michael Catanzaro <mcatanzaro@igalia.com>
15358 [WPE] Build and link against latest WPEBackend and WPEBackend-fdo
15359 https://bugs.webkit.org/show_bug.cgi?id=184643
15361 Reviewed by Žan Doberšek.
15363 Add missing INCLUDE_DIRS in many places.
15365 Adapt to single-header WPE includes.
15367 Null-initialize padding to silence -Wmissing-field-initializers. (Yuck.)
15369 * TestWebKitAPI/PlatformWPE.cmake:
15370 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
15371 (testWebViewWebBackend):
15372 * TestWebKitAPI/glib/PlatformWPE.cmake:
15373 * WebKitTestRunner/EventSenderProxy.h:
15374 * WebKitTestRunner/PlatformWPE.cmake:
15375 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
15376 * wpe/HeadlessViewBackend/CMakeLists.txt:
15377 * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
15378 * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
15379 * wpe/jhbuild.modules:
15381 2018-04-25 Jonathan Bedard <jbedard@apple.com>
15383 REGRESSION (r230998): Bot watcher's dashboard doesn't display number of API test failures
15384 https://bugs.webkit.org/show_bug.cgi?id=184982
15386 Rubber-stamped by Aakash Jain.
15388 Correctly count the number of API test failures.
15390 * BuildSlaveSupport/build.webkit.org-config/steps.py:
15391 (RunUnitTests.countFailures): Count the number of test failures for the new run-api-tests.
15392 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
15393 * Scripts/webkitpy/api_tests/manager.py:
15394 (Manager.run): Disabled tests are not run.
15396 2018-04-25 Jiewen Tan <jiewen_tan@apple.com>
15398 Remove access to keychain from the WebContent process
15399 https://bugs.webkit.org/show_bug.cgi?id=184428
15400 <rdar://problem/13150903>
15402 Reviewed by Brent Fulgham.
15404 This patch does the followings:
15405 1. Added an API test for this patch.
15406 2. Instrument DumpRenderTree and WebKitTestRunner to take advantages of new SPIs.
15408 * DumpRenderTree/mac/UIDelegate.mm:
15409 (-[UIDelegate signedPublicKeyAndChallengeStringForWebView:]):
15410 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
15411 * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm: Added.
15412 (TestWebKitAPI::SSLKeyGeneratorTest::SetUp):
15413 (TestWebKitAPI::SSLKeyGeneratorTest::TearDown):
15414 (TestWebKitAPI::TEST_F):
15415 * WebKitTestRunner/TestController.cpp:
15416 (WTR::copySignedPublicKeyAndChallengeString):
15417 (WTR::TestController::createOtherPage):
15418 (WTR::TestController::createWebViewWithOptions):
15420 2018-04-25 Wenson Hsieh <wenson_hsieh@apple.com>
15422 [Extra zoom mode] The search field on www.bing.com is missing label text
15423 https://bugs.webkit.org/show_bug.cgi?id=184975
15424 <rdar://problem/39723081>
15426 Reviewed by Tim Horton.
15428 Adds UIScriptController.formInputLabel, which asynchronously requests the input label text for the currently
15429 focused element in extra zoom mode.
15431 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
15432 (WTR::UIScriptController::formInputLabel const):
15433 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
15434 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
15435 (WTR::UIScriptController::formInputLabel const):
15436 * TestRunnerShared/UIScriptContext/UIScriptController.h:
15437 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
15438 (WTR::UIScriptController::formInputLabel const):
15440 2018-04-25 Michael Catanzaro <mcatanzaro@igalia.com>
15442 [WPE] Should load injected bundle from builddir in developer builds
15443 https://bugs.webkit.org/show_bug.cgi?id=184983
15445 Reviewed by Carlos Alberto Lopez Perez.
15447 Set WEBKIT_INJECTED_BUNDLE_PATH when running WPE MiniBrowser.
15449 * Scripts/run-minibrowser:
15451 2018-04-25 Michael Catanzaro <mcatanzaro@igalia.com>
15453 [WPE] libgstggtk.so broken in jhbuild environment
15454 https://bugs.webkit.org/show_bug.cgi?id=184984
15456 Reviewed by Carlos Alberto Lopez Perez.
15458 Don't pass --enable-glx=no when building libepoxy, to ensure it's compatible with
15461 * wpe/jhbuild.modules:
15463 2018-04-25 Ryosuke Niwa <rniwa@webkit.org>
15465 PSON: Don't create a new process when navigating to a blob URL, data URL, and about:blank
15466 https://bugs.webkit.org/show_bug.cgi?id=184962
15468 Reviewed by Youenn Fablet.
15470 Added four test cases for navigating to a blob URL, data URL, and about:blank with process-swap-on-navigation turned on.
15472 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
15473 (ProcessSwap.SameOriginBlobNavigation): Added.
15474 (ProcessSwap.CrossOriginBlobNavigation): Added.
15475 (ProcessSwap.NavigateToAboutBlank): Added.
15476 (ProcessSwap.NavigateToDataURL): Added.
15478 2018-04-25 Michael Catanzaro <mcatanzaro@igalia.com>
15480 [WPE] Remove deprecated functions and properties from the API
15481 https://bugs.webkit.org/show_bug.cgi?id=179295
15483 Reviewed by Žan Doberšek.
15485 * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
15486 (testWebViewAuthenticationStorage): Disable this test for now. It will require some effort
15487 to rewrite LoadTrackingTest to not require the web view at construction time.
15488 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
15489 (testWebKitSettings): Don't test private browsing setting, which is gone.
15490 * TestWebKitAPI/glib/CMakeLists.txt: Disable TestCookieManager for now.
15492 2018-04-25 Andy Estes <aestes@apple.com>
15494 [Mac] Number of drop items is always 0 when performing a DHTML drag
15495 https://bugs.webkit.org/show_bug.cgi?id=184943
15497 Reviewed by Ryosuke Niwa.
15499 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
15500 * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm:
15501 (-[DragInfo numberOfValidItemsForDrop]):
15502 (-[DragInfo setNumberOfValidItemsForDrop:]):
15503 (TestWebKitAPI::TEST):
15504 * TestWebKitAPI/Tests/mac/full-page-dropzone.html: Added.
15506 2018-04-25 Jonathan Bedard <jbedard@apple.com>
15508 API test harness should be Python
15509 https://bugs.webkit.org/show_bug.cgi?id=181043
15510 <rdar://problem/36164410>
15512 Reviewed by David Kilzer.
15514 Run API tests from a Python script rather than Perl. The Python API tests have
15515 the same structure as the layout tests.
15517 * Scripts/run-api-tests: Changed from Perl to Python.
15518 * Scripts/webkitpy/api_tests: Added.
15519 * Scripts/webkitpy/api_tests/__init__.py: Added.
15520 * Scripts/webkitpy/api_tests/manager.py: Added.
15522 (Manager.__init__):
15523 (Manager._test_list_from_output): Construct a list of tests from the output of
15524 TestWTF and TestWebKitAPI.
15525 (Manager._find_test_subset): Given a list of all possible tests and command line
15526 arguments, return a list of tests which match the provided arguments.
15527 (Manager._collect_tests): Run TestWTF and TestWebKitAPI with --gtest_list_tests
15528 to determine which tests will be run.
15529 (Manager._print_test_result): Formatted print of a test with it's output.
15530 (Manager._print_tests_result_with_status): Print all tests and output for tests
15531 which ran with a specified exit status.
15532 (Manager.run): Collect all tests, run them and then print results from the run.
15533 * Scripts/webkitpy/api_tests/run_api_tests.py: Added.
15534 (main): Parse arguments, construct a port, early exit for illegal ports and
15536 (run): Setup logging and printing before using the Manager to run tests.
15537 (parse_args): Use argparse to define all options used by run-api-tests.
15538 * Scripts/webkitpy/api_tests/runner.py: Added.
15541 (Runner._shard_tests): Split tests so that each suite runs together.
15542 (Runner.command_for_port): Run a command on the device specified by the given
15543 port object. Once <https://bugs.webkit.org/show_bug.cgi?id=175204> is completed,
15544 this function would be entirely replaced by the server_process factory owned
15545 by the port object.
15546 (Runner.run): Run all shards in the message_pool.
15547 (Runner.handle): Handle reports from child processes.
15548 (Runner.result_map_by_status): Return a mapping of tests to output for tests
15549 which exit with a specific status.
15551 (_Worker.__init__):
15552 (_Worker._filter_noisy_output): Filter out objc warnings since these polite the log.
15553 (_Worker._run_single_test): Runs a single test in a single child process.
15554 (_Worker._run_shard_with_binary): Attempts to run a group of tests in the same
15555 child process. If this technique fails, the remaining tests are run singly.
15556 (_Worker.handle): Run the specified shard.
15557 * Scripts/webkitpy/port/base.py:
15559 (Port.check_api_test_build): Check if TestWTF and TestWebKitAPI are built.
15560 (Port.environment_for_api_tests): Return the environment needed to run
15561 the TestWebKitAPI binary.
15562 (Port. path_to_api_test_binaries): Return a list of the path to all binaries
15563 used when running API tests.
15564 (Port._build_api_tests): Build TestWTF and TestWebKitAPI if required.
15565 * Scripts/webkitpy/port/mac.py:
15566 (MacPort.environment_for_api_tests): Enable GuardMalloc for API tests.
15567 * Scripts/webkitpy/port/server_process.py:
15568 (ServerProcess.pop_all_buffered_stdout):
15570 2018-04-25 Carlos Garcia Campos <cgarcia@igalia.com>
15572 Incorrect number of WebDriver test failures shown in the bots
15573 https://bugs.webkit.org/show_bug.cgi?id=184959
15575 Reviewed by Michael Catanzaro.
15577 The regular expression we are using to get the number of failures from the log is matching a particular test
15578 error output. Improve the regular expression to avoid matching other strings in the log. Ensure that only
15579 matches at the beginning of lines and add spaces after Unexpected and before the (<failures>).
15581 * BuildSlaveSupport/build.webkit.org-config/steps.py:
15582 (RunWebDriverTests.commandComplete):
15584 2018-04-25 Carlos Garcia Campos <cgarcia@igalia.com>
15586 [GTK] Implement MouseEvent.buttons
15587 https://bugs.webkit.org/show_bug.cgi?id=184913
15589 Reviewed by Žan Doberšek.
15591 Include the mouse buttons state in WTR synthesized events.
15593 * WebKitTestRunner/EventSenderProxy.h:
15594 * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
15595 (WTR::EventSenderProxy::EventSenderProxy):
15596 (WTR::EventSenderProxy::createMouseButtonEvent):
15597 (WTR::EventSenderProxy::mouseDown):
15598 (WTR::EventSenderProxy::mouseUp):
15599 (WTR::EventSenderProxy::mouseMoveTo):
15601 2018-04-24 Pablo Saavedra <psaavedra@igalia.com>
15603 [GTK][WPE] Fix triggered bot name on the WPE Debug Build bot
15604 https://bugs.webkit.org/show_bug.cgi?id=184954
15606 Reviewed by Michael Catanzaro.
15608 * BuildSlaveSupport/build.webkit.org-config/config.json:
15610 2018-04-24 Saam Barati <sbarati@apple.com>
15612 Keep around a pre-warmed process when doing process swap on navigation
15613 https://bugs.webkit.org/show_bug.cgi?id=184765
15614 <rdar://problem/39685099>
15616 Reviewed by Ryosuke Niwa and Brady Eidson.
15618 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
15620 2018-04-24 Aakash Jain <aakash_jain@apple.com>
15622 [build.webkit.org] unit-tests fail when passwords.json is missing
15623 https://bugs.webkit.org/show_bug.cgi?id=180390
15625 Reviewed by Carlos Alberto Lopez Perez.
15627 * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
15628 (loadBuilderConfig): Add support for test_mode. Load mock passwords in test_mode.
15629 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
15630 (BuildBotConfigLoader._add_dependant_modules_to_sys_modules): Call _add_webkitpy_to_sys_path as well.
15631 (BuildBotConfigLoader._mock_open): Deleted.
15632 (BuildBotConfigLoader.load_config): Deleted.
15634 2018-04-24 John Wilander <wilander@apple.com>
15636 From-Origin: Support for 'same' and 'same-site' response header, nested frame origin check
15637 https://bugs.webkit.org/show_bug.cgi?id=184560
15638 <rdar://problem/38901344>
15640 Reviewed by Youenn Fablet and Daniel Bates.
15642 This patch implements significant parts of https://github.com/whatwg/fetch/issues/687.
15643 We consume the From-Origin response header and only load the resource if:
15644 - The header is non-existent, empty, or invalid.
15645 - The header specifies 'same' and the resource's origin matches the originating
15646 document's origin and the origins up the frame tree.
15647 - The header specifies 'same-site' and the resource's eTLD+1 matches the originating
15648 document's eTLD+1 and the eTLD+1 of the documents up the frame tree.
15650 This feature is experimental and off by default.
15652 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
15653 * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp: Added.
15654 (TestWebKitAPI::TEST):
15655 Tests for From-Origin header parsing.
15657 2018-04-24 Carlos Garcia Campos <cgarcia@igalia.com>
15659 Unreviewed. Update W3C WebDriver imported tests.
15661 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
15662 (WebDriverW3CExecutor.__init__):
15664 2018-04-24 Zan Dobersek <zdobersek@igalia.com>
15666 [WPE] Remove libgbm dependency
15667 https://bugs.webkit.org/show_bug.cgi?id=184906
15669 Reviewed by Carlos Garcia Campos.
15671 Stop searching for libgbm, using its compiler flags for the
15672 HeadlessViewBackend compilation and linking against the .so object.
15673 This is not necessary anymore after r230562 switched to a different
15674 backend implementation for testing.
15676 * wpe/HeadlessViewBackend/CMakeLists.txt:
15677 * wpe/install-dependencies:
15679 2018-04-23 Carlos Garcia Campos <cgarcia@igalia.com>
15681 [GLIB] Make it possible to use a different timeout for slow test cases in GLib tests
15682 https://bugs.webkit.org/show_bug.cgi?id=184816
15684 Reviewed by Michael Catanzaro.
15686 Pass a function from api test runner to glib test runner to check if a test is slow and use the given slow
15689 * TestWebKitAPI/glib/TestExpectations.json:
15690 * glib/api_test_runner.py:
15691 (TestRunner._run_test_glib.is_slow_test):
15692 (TestRunner._run_test_glib):
15693 * glib/glib_test_runner.py:
15694 (GLibTestRunner.__init__):
15695 (GLibTestRunner._stop_timeout):
15696 (GLibTestRunner._subtest_start):
15697 (GLibTestRunner._subtest_end):
15699 2018-04-23 Wenson Hsieh <wenson_hsieh@apple.com>
15701 [Extra zoom mode] REGRESSION(230860) Unable to change time input values using UI
15702 https://bugs.webkit.org/show_bug.cgi?id=184901
15703 <rdar://problem/39664797>
15705 Reviewed by Tim Horton.
15707 Introduce a new UIScriptController method to set the value of a currently focused input of type time, by
15708 interacting with the UI. See WebKit ChangeLogs for more detail.
15710 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
15711 (WTR::UIScriptController::setTimePickerValue):
15712 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
15713 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
15714 (WTR::UIScriptController::setTimePickerValue):
15715 * TestRunnerShared/UIScriptContext/UIScriptController.h:
15716 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
15717 (WTR::UIScriptController::setTimePickerValue):
15719 2018-04-23 Zalan Bujtas <zalan@apple.com>
15721 [LayoutFormattingContext] Initial commit.
15722 https://bugs.webkit.org/show_bug.cgi?id=184896
15724 Reviewed by Antti Koivisto.
15726 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
15728 2018-04-23 Chris Dumez <cdumez@apple.com>
15730 [WKTR] Move navigation policy decision from the injected bundle to the UIProcess
15731 https://bugs.webkit.org/show_bug.cgi?id=184801
15733 Reviewed by Geoffrey Garen.
15735 Move navigation policy decision from the injected bundle to the UIProcess in WebKitTestRunner.
15736 This is a more common configuration and therefore should be the default testing configuration.
15738 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
15739 (WTR::InjectedBundlePage::decidePolicyForNavigationAction):
15740 Always respond with 'PassThrough' in the InjectedBundle so the UIProcess
15741 is now asked for the policy decision.
15743 2018-04-23 Pablo Saavedra <psaavedra@igalia.com>
15745 [GTK][WPE] Add Debug bots (build and tests) for WPE
15746 https://bugs.webkit.org/show_bug.cgi?id=184887
15748 Reviewed by Carlos Alberto Lopez Perez.
15750 Deployed 2 new bots for WPE Debug: wpe-linux-bot-3 and
15753 Both bots have already the credentials ready to authenticated against
15754 build.webkit.org. They provides the bots for the "debug" configuration over
15755 the "WPE" platform and building for the "x86_64" architecture:
15756 WPE Linux 64-bit Debug (Build)Â and WPE Linux 64-bit Debug (Tests)Â
15758 * BuildSlaveSupport/build.webkit.org-config/config.json:
15759 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
15761 2018-04-23 Chris Dumez <cdumez@apple.com>
15763 HTML String load cannot be prevented by responding 'Cancel' asynchronously in decidePolicyForNavigationAction
15764 https://bugs.webkit.org/show_bug.cgi?id=184848
15765 <rdar://problem/39145306>
15767 Reviewed by Brady Eidson.
15769 Add API test coverage.
15771 * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
15772 (-[DecidePolicyForNavigationActionController webView:decidePolicyForNavigationAction:decisionHandler:]):
15775 2018-04-23 Michael Catanzaro <mcatanzaro@igalia.com>
15777 [GTK][WPE] TestSSL fails due to additional TLS errors returned
15778 https://bugs.webkit.org/show_bug.cgi?id=184860
15780 Reviewed by Carlos Garcia Campos.
15782 Add script and config file for regenerating the test certificate.
15783 Regenerate it. TestSSL no longer fails on my machine.
15785 I do see a ton of network process crashes and JavaScript errors, none of
15786 which prevent the test from passing, but this commit only claims to fix
15787 the certificate validation portion of the test.
15789 * TestWebKitAPI/Tests/WebKitGLib/resources/generate-test-cert.sh: Added.
15790 * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.conf: Added.
15791 * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem:
15793 2018-04-20 Carlos Garcia Campos <cgarcia@igalia.com>
15795 [GLIB] ERROR: Thread was unable to be detached when running /jsc/vm test in debug
15796 https://bugs.webkit.org/show_bug.cgi?id=184815
15798 Reviewed by Michael Catanzaro.
15800 This is because in the test we are calling both join and detach. We should only call join.
15802 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
15803 (testsJSCVirtualMachine):
15805 2018-04-20 Carlos Garcia Campos <cgarcia@igalia.com>
15807 [GLIB] Test /jsc/prototypes crashes in debug
15808 https://bugs.webkit.org/show_bug.cgi?id=184814
15810 Reviewed by Michael Catanzaro.
15812 We should also call the constructor/destructor of Bar struct to ensure Foo is constructed.
15814 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
15818 2018-04-20 Michael Catanzaro <mcatanzaro@igalia.com>
15820 REGRESSION(r228088): [SOUP] Check TLS errors for WebSockets on GTlsConnection::accept-certificate
15821 https://bugs.webkit.org/show_bug.cgi?id=184804
15823 Reviewed by Carlos Garcia Campos.
15825 * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
15826 (WebSocketTest::WebSocketTest):
15827 (WebSocketTest::~WebSocketTest):
15828 (WebSocketTest::serverWebSocketCallback):
15829 (WebSocketTest::webSocketTestResultCallback):
15830 (WebSocketTest::connectToServerAndWaitForEvents):
15831 (testWebSocketTLSErrors):
15834 2018-04-20 Chris Dumez <cdumez@apple.com>
15836 Unreviewed, update 2 more API tests after r230876.
15838 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
15840 * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
15841 (TestWebKitAPI::TEST):
15843 2018-04-20 Tim Horton <timothy_horton@apple.com>
15845 Adjust geolocation feature flag
15846 https://bugs.webkit.org/show_bug.cgi?id=184856
15848 Reviewed by Wenson Hsieh.
15850 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
15852 2018-04-20 Chris Dumez <cdumez@apple.com>
15854 REGRESSION (r229828): web view doesn’t update or respond to resizing until client calls policy decision handler
15855 https://bugs.webkit.org/show_bug.cgi?id=184210
15856 <rdar://problem/39072354>
15858 Reviewed by Wenson Hsieh.
15860 * TestWebKitAPI/Tests/WebKit/large-red-square-image.html:
15861 * TestWebKitAPI/Tests/WebKitCocoa/dragstart-change-selection-offscreen.html:
15862 Add viewport meta tags.
15864 * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
15865 (-[WKWebView _test_waitForDidFinishNavigation]):
15866 Update _test_waitForDidFinishNavigation to wait for the next presentation update
15867 to make iOS API tests happy without having to modify each of them.
15869 2018-04-20 Timothy Hatcher <timothy@apple.com>
15871 REGRESSION: API test WebKit.BackgroundColorSystemColor is failing
15873 https://bugs.webkit.org/show_bug.cgi?id=184849
15874 rdar://problem/39386405
15876 Reviewed by Brian Burg.
15878 * TestWebKitAPI/Tests/mac/BackgroundColor.mm:
15879 (TestWebKitAPI::TEST): Use CGColorEqualToColor since we might get a different
15880 CGColor pointer from NSColor each time.
15882 2018-04-20 Wenson Hsieh <wenson_hsieh@apple.com>
15884 [Extra zoom mode] Injected bundle form client should be notified when editing text fields
15885 https://bugs.webkit.org/show_bug.cgi?id=184822
15886 <rdar://problem/38807319>
15888 Reviewed by Tim Horton.
15890 Add WebKitTestRunner support for listening to form editing SPI hooks in the injected bundle. The new layout test
15891 installs callbacks that listen for "begin editing", "end editing", and "text changed" calls to injected bundle
15892 SPI. See other ChangeLogs for more detail.
15894 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
15895 (WTR::UIScriptController::enterText):
15896 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
15898 Add UIScriptController support for simulating text entry in the currently focused element.
15900 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
15901 (WTR::UIScriptController::enterText):
15902 * TestRunnerShared/UIScriptContext/UIScriptController.h:
15903 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
15905 Add TestRunner bindings for registering injected bundle form client callbacks.
15907 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
15908 (WTR::handleTextDidChangeInTextField):
15909 (WTR::handleTextFieldDidBeginEditing):
15910 (WTR::handleTextFieldDidEndEditing):
15911 (WTR::InjectedBundle::didCreatePage):
15913 Set the injected bundle form editor client.
15915 (WTR::InjectedBundle::setUpInjectedBundleClients):
15916 (WTR::InjectedBundle::textDidChangeInTextField):
15917 (WTR::InjectedBundle::textFieldDidBeginEditing):
15918 (WTR::InjectedBundle::textFieldDidEndEditing):
15919 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
15920 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
15921 (WTR::TestRunner::installTextDidChangeInTextFieldCallback):
15922 (WTR::TestRunner::textDidChangeInTextFieldCallback):
15923 (WTR::TestRunner::installTextFieldDidBeginEditingCallback):
15924 (WTR::TestRunner::textFieldDidBeginEditingCallback):
15925 (WTR::TestRunner::installTextFieldDidEndEditingCallback):
15926 (WTR::TestRunner::textFieldDidEndEditingCallback):
15927 * WebKitTestRunner/InjectedBundle/TestRunner.h:
15928 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
15929 (WTR::UIScriptController::enterText):
15931 2018-04-20 Youenn Fablet <youenn@apple.com>
15933 WebPage sometimes incorrectly rules out PDF as a mime type that can be showed
15934 https://bugs.webkit.org/show_bug.cgi?id=184369
15936 Reviewed by Chris Dumez.
15938 * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
15941 2018-04-20 Daniel Bates <dabates@apple.com>
15943 Remove Strong Password decoration when text field type changes
15944 https://bugs.webkit.org/show_bug.cgi?id=184795
15945 <rdar://problem/38325108>
15947 Reviewed by Antti Koivisto.
15949 Add a unit test to ensure the injected bundle API and WebKit UI delegate SPI is invoked
15950 when the field has the Strong Password button and its type changes.
15952 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
15953 * TestWebKitAPI/Tests/WebKitCocoa/DidResignInputElementStrongPasswordAppearance.mm: Added.
15954 (didResignInputElementStrongPasswordAppearance):
15955 (-[DidResignInputElementStrongPasswordAppearance webProcessPlugIn:didCreateBrowserContextController:]):
15956 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
15957 (-[DidResignInputElementStrongPasswordAppearanceDelegate _webView:didResignInputElementStrongPasswordAppearanceWithUserInfo:]):
15958 (-[DidResignInputElementStrongPasswordAppearanceDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
15961 2018-04-20 Brady Eidson <beidson@apple.com>
15963 Add a test to verify load/unload/pageshow/pagehide all work with process swapping.
15964 https://bugs.webkit.org/show_bug.cgi?id=184807
15966 Reviewed by Chris Dumez.
15968 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
15969 (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
15971 2018-04-20 Carlos Garcia Campos <cgarcia@igalia.com>
15973 Unreviewed. Mark TestJSC as slow in debug.
15975 Only /jsc/vm is slow, but GLib API test runner only checks the test binary for GLib tests.
15977 * TestWebKitAPI/glib/TestExpectations.json:
15979 2018-04-20 Carlos Garcia Campos <cgarcia@igalia.com>
15981 [GTK] Local cross references are broken in API documentation
15982 https://bugs.webkit.org/show_bug.cgi?id=184771
15984 Reviewed by Michael Catanzaro.
15986 The problem is that gtkdoc-fixxref expects the links to be in the form html/modulename (like the installed
15987 ones), but we generate the documentation as modulename/html. So, links to WebKitDOM or JSC are generated as
15988 ../html/Foo. The rebase command considers html to be the module name in this case, creating broken links in all
15992 (GTKDoc._copy_doc_files_to_output_dir): We don't have any html dir in the source tree so, we are not copying
15994 (GTKDoc._run_gtkdoc_mkhtml): Create the html dir here using html/modulename instead now.
15995 (GTKDoc._run_gtkdoc_fixxref): Pass the new directory as module dir to gtkdoc-fixxref and fix several links for
15996 which gtkdoc-fixxref always uses absolute paths.
15997 * gtk/manifest.txt.in: Update the documentation html paths and include the JSC GLib API in the tarball too.
15999 2018-04-19 Brady Eidson <beidson@apple.com>
16001 Make back forward cache work with process swapping.
16002 <rdar://problem/38676604> and https://bugs.webkit.org/show_bug.cgi?id=184793
16004 Reviewed by Chris Dumez.
16006 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
16008 2018-04-19 David Kilzer <ddkilzer@apple.com>
16010 Enable Objective-C weak references
16011 <https://webkit.org/b/184789>
16012 <rdar://problem/39571716>
16014 Reviewed by Dan Bernstein.
16016 * ContentExtensionTester/Configurations/Base.xcconfig:
16017 (CLANG_ENABLE_OBJC_WEAK): Enable.
16018 * DumpRenderTree/mac/Configurations/Base.xcconfig:
16019 (CLANG_ENABLE_OBJC_WEAK): Enable.
16020 * ImageDiff/cg/Configurations/Base.xcconfig:
16021 (CLANG_ENABLE_OBJC_WEAK): Enable.
16022 * MiniBrowser/Configurations/Base.xcconfig:
16023 (CLANG_ENABLE_OBJC_WEAK): Enable.
16024 * TestWebKitAPI/Configurations/Base.xcconfig:
16025 (CLANG_ENABLE_OBJC_WEAK): Enable.
16026 * WebEditingTester/Configurations/Base.xcconfig:
16027 (CLANG_ENABLE_OBJC_ARC): Re-order.
16028 * WebKitLauncher/Configurations/Base.xcconfig: Add newline at
16030 (CLANG_ENABLE_OBJC_WEAK): Enable.
16031 * WebKitTestRunner/Configurations/Base.xcconfig:
16032 (CLANG_ENABLE_OBJC_WEAK): Enable.
16034 2018-04-19 Chris Dumez <cdumez@apple.com>
16036 REGRESSION (r229133): decidePolicyForNavigationAction not called for loading an HTML string
16037 https://bugs.webkit.org/show_bug.cgi?id=184209
16038 <rdar://problem/39145306>
16040 Reviewed by Ryosuke Niwa.
16042 Add API test coverage.
16044 * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
16047 2018-04-18 Ross Kirsling <ross.kirsling@sony.com>
16049 [WinCairo][EWS] Build bot should clean user temp directory each time.
16050 https://bugs.webkit.org/show_bug.cgi?id=184761
16052 Reviewed by Lucas Forschler.
16054 * EWSTools/Start-Queue.ps1:
16055 Clean user's temp directory before each build, so that Windows git doesn't fill it up over time.
16057 2018-04-18 Ross Kirsling <ross.kirsling@sony.com>
16059 Buildbots using Python zipfile should enable compression
16060 https://bugs.webkit.org/show_bug.cgi?id=184759
16062 Reviewed by Lucas Forschler.
16064 * BuildSlaveSupport/built-product-archive:
16065 (createZipManually):
16066 Default is to archive without compressing, so tell it to compress as well.
16068 2018-04-18 Nan Wang <n_wang@apple.com>
16070 AX: [macOS] WebKit hangs when triggering an alert from an AOM increment event
16071 https://bugs.webkit.org/show_bug.cgi?id=184742
16073 Reviewed by Chris Fleizach.
16075 * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
16076 (AccessibilityUIElement::increment):
16077 (AccessibilityUIElement::decrement):
16078 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
16079 (WTR::AccessibilityUIElement::asyncIncrement):
16080 (WTR::AccessibilityUIElement::asyncDecrement):
16081 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
16082 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
16083 (WTR::AccessibilityUIElement::increment):
16084 (WTR::AccessibilityUIElement::decrement):
16085 (WTR::AccessibilityUIElement::asyncIncrement):
16086 (WTR::AccessibilityUIElement::asyncDecrement):
16088 2018-04-18 Ross Kirsling <ross.kirsling@sony.com>
16090 Fix archive step for WinCairo build bot.
16091 https://bugs.webkit.org/show_bug.cgi?id=184715
16093 Reviewed by Lucas Forschler.
16095 * BuildSlaveSupport/built-product-archive:
16096 (archiveBuiltProduct):
16097 (extractBuiltProduct):
16099 2018-04-18 Sihui Liu <sihui_liu@apple.com>
16101 REGRESSION: Using the reload button while offline pushes identical pages onto the back/forward list
16102 https://bugs.webkit.org/show_bug.cgi?id=184570
16103 <rdar://problem/34807323>
16105 Reviewed by Chris Dumez.
16107 Add API test coverage.
16109 * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
16112 2018-04-18 Chris Dumez <cdumez@apple.com>
16114 Add support for converting a local window to a remote window
16115 https://bugs.webkit.org/show_bug.cgi?id=184515
16116 <rdar://problem/39011318>
16118 Reviewed by Ryosuke Niwa.
16120 * MiniBrowser/mac/AppDelegate.m:
16121 (defaultConfiguration):
16122 * MiniBrowser/mac/SettingsController.h:
16123 * MiniBrowser/mac/SettingsController.m:
16124 (-[SettingsController _populateMenu]):
16125 (-[SettingsController validateMenuItem:]):
16126 (-[SettingsController processSwapOnWindowOpenWithOpenerEnabled]):
16127 (-[SettingsController toggleProcessSwapOnWindowOpenWithOpener:]):
16128 Add menu entry in minibrowser to turn on process swap on cross-origin window.open().
16130 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
16131 Turn on process swap on cross-origin window.open() for corresponding test and update
16132 test to expect that a new WebProcess is created.
16134 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
16135 (WTR::InjectedBundlePage::decidePolicyForResponse):
16136 Add null checks for injectedBundle.testRunner(). When we swap process on navigation,
16137 the InjectedBundlePage::decidePolicyForResponse() gets called in the new process.
16138 In this new process, we have constructed a InjectedBundlePage for the page but we
16139 have not initialized the InjectedBundle members such as testRunner.
16141 * WebKitTestRunner/TestController.cpp:
16142 (WTR::TestController::createWebViewWithOptions):
16143 (WTR::updateTestOptionsFromTestHeader):
16144 * WebKitTestRunner/TestOptions.h:
16145 (WTR::TestOptions::hasSameInitializationOptions const):
16146 Add a way for layout tests to turn on process swap on navigation via a test header.
16148 2018-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
16150 Unreviewed, reland r230697, r230720, and r230724.
16151 https://bugs.webkit.org/show_bug.cgi?id=184600
16153 * Scripts/run-jsc-stress-tests:
16155 2018-04-17 Carlos Garcia Campos <cgarcia@igalia.com>
16157 [GLIB] Make it possible to handle JSCClass external properties not added to the prototype
16158 https://bugs.webkit.org/show_bug.cgi?id=184687
16160 Reviewed by Michael Catanzaro.
16162 Add test cases for the new API.
16164 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
16170 (testJSCGarbageCollector):
16171 (testsJSCVirtualMachine):
16172 * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
16173 (windowObjectClearedCallback):
16175 2018-04-17 Wenson Hsieh <wenson_hsieh@apple.com>
16177 [Extra zoom mode] Programmatically changing focus when an element already has focus is a confusing experience
16178 https://bugs.webkit.org/show_bug.cgi?id=184635
16179 <rdar://problem/39440642>
16181 Reviewed by Tim Horton.
16183 Add plumbing to support invoking `didHideKeyboardCallback` and `didShowKeyboardCallback` when (respectively)
16184 dismissing or presenting fullscreen input view controllers in extra zoom mode.
16186 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
16187 (-[TestRunnerWKWebView initWithFrame:configuration:]):
16188 (-[TestRunnerWKWebView dealloc]):
16189 (-[TestRunnerWKWebView _invokeShowKeyboardCallbackIfNecessary]):
16190 (-[TestRunnerWKWebView _invokeHideKeyboardCallbackIfNecessary]):
16191 (-[TestRunnerWKWebView _keyboardDidShow:]):
16192 (-[TestRunnerWKWebView _keyboardDidHide:]):
16193 (-[TestRunnerWKWebView _webView:didPresentFocusedElementViewController:]):
16194 (-[TestRunnerWKWebView _webView:didDismissFocusedElementViewController:]):
16196 2018-04-17 Michael Catanzaro <mcatanzaro@igalia.com>
16198 [GTK] Webkit should spoof as Safari on a Mac for Outlook.com
16199 https://bugs.webkit.org/show_bug.cgi?id=184573
16201 Reviewed by Carlos Alberto Lopez Perez.
16203 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
16204 (TestWebKitAPI::TEST):
16206 2018-04-17 Fujii Hironori <Hironori.Fujii@sony.com>
16208 [WinCairo][TestWebKitAPI] Implement PlatformWebView for TestWebKit
16209 https://bugs.webkit.org/show_bug.cgi?id=184524
16211 Reviewed by Alex Christensen.
16213 Resurrect PlatformWebView for Windows port which was removed in Bug 104607.
16215 * TestWebKitAPI/PlatformWebView.h:
16216 * TestWebKitAPI/PlatformWin.cmake:
16217 * TestWebKitAPI/win/InjectedBundleControllerWin.cpp: Added.
16218 (TestWebKitAPI::InjectedBundleController::platformInitialize):
16219 * TestWebKitAPI/win/PlatformUtilitiesWin.cpp: Added.
16220 (TestWebKitAPI::Util::moduleDirectory):
16221 (TestWebKitAPI::Util::createInjectedBundlePath):
16222 (TestWebKitAPI::Util::createURLForResource):
16223 (TestWebKitAPI::Util::URLForNonExistentResource):
16224 (TestWebKitAPI::Util::isKeyDown):
16225 * TestWebKitAPI/win/PlatformWebViewWin.cpp: Added.
16226 (TestWebKitAPI::PlatformWebView::registerWindowClass):
16227 (TestWebKitAPI::PlatformWebView::PlatformWebView):
16228 (TestWebKitAPI::PlatformWebView::initialize):
16229 (TestWebKitAPI::PlatformWebView::~PlatformWebView):
16230 (TestWebKitAPI::PlatformWebView::page const):
16231 (TestWebKitAPI::PlatformWebView::resizeTo):
16232 (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
16233 (TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
16234 (TestWebKitAPI::PlatformWebView::simulateRightClick):
16235 (TestWebKitAPI::PlatformWebView::simulateMouseMove):
16236 (TestWebKitAPI::PlatformWebView::wndProc):
16237 * TestWebKitAPI/win/UtilitiesWin.cpp: Added.
16238 (TestWebKitAPI::Util::run):
16239 (TestWebKitAPI::Util::spinRunLoop):
16240 (TestWebKitAPI::Util::sleep):
16242 2018-04-17 Jonathan Bedard <jbedard@apple.com>
16244 Fix hasher tests for system with 32 bit longs
16245 https://bugs.webkit.org/show_bug.cgi?id=184708
16246 <rdar://problem/39459977>
16248 Reviewed by Mark Lam.
16250 Some systems have 32 bit longs. The Hasher WTF tests should handle this case.
16252 * TestWebKitAPI/Tests/WTF/Hasher.cpp:
16253 (TestWebKitAPI::TEST):
16255 2018-04-17 Commit Queue <commit-queue@webkit.org>
16257 Unreviewed, rolling out r230697, r230720, and r230724.
16258 https://bugs.webkit.org/show_bug.cgi?id=184717
16260 These caused multiple failures on the Test262 testers.
16261 (Requested by mlewis13 on #webkit).
16263 Reverted changesets:
16265 "[WebAssembly][Modules] Prototype wasm import"
16266 https://bugs.webkit.org/show_bug.cgi?id=184600
16267 https://trac.webkit.org/changeset/230697
16269 "[WebAssembly][Modules] Implement function import from wasm
16271 https://bugs.webkit.org/show_bug.cgi?id=184689
16272 https://trac.webkit.org/changeset/230720
16274 "[JSC] Rename runWebAssembly to runWebAssemblySuite"
16275 https://bugs.webkit.org/show_bug.cgi?id=184703
16276 https://trac.webkit.org/changeset/230724
16278 2018-04-17 Jonathan Bedard <jbedard@apple.com>
16280 Unreviewed rollout of r230632. Regression in memory usage.
16282 That bug tracked in https://bugs.webkit.org/show_bug.cgi?id=184569.
16284 * DumpRenderTree/TestOptions.h:
16285 * DumpRenderTree/mac/DumpRenderTree.mm:
16287 (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference): Deleted.
16288 * WebKitTestRunner/TestController.cpp:
16289 (WTR::TestController::resetPreferencesToConsistentValues):
16290 * WebKitTestRunner/TestOptions.cpp:
16291 (WTR::TestOptions::TestOptions):
16292 (WTR::isLegacyAnimationEngineTestPath): Deleted.
16293 * WebKitTestRunner/TestOptions.h:
16295 2018-04-17 Yusuke Suzuki <utatane.tea@gmail.com>
16297 [JSC] Rename runWebAssembly to runWebAssemblySuite
16298 https://bugs.webkit.org/show_bug.cgi?id=184703
16300 Reviewed by JF Bastien.
16302 * Scripts/run-jsc-stress-tests:
16304 2018-04-17 Yusuke Suzuki <utatane.tea@gmail.com>
16306 [WebAssembly][Modules] Implement function import from wasm modules
16307 https://bugs.webkit.org/show_bug.cgi?id=184689
16309 Reviewed by JF Bastien.
16311 Add runWebAssemblyDirect, which runs wasm file directly.
16313 * Scripts/run-jsc-stress-tests:
16315 2018-04-17 Saam Barati <sbarati@apple.com>
16317 Add system trace points for process launch and for initializeWebProcess
16318 https://bugs.webkit.org/show_bug.cgi?id=184669
16320 Reviewed by Simon Fraser.
16322 * Tracing/SystemTracePoints.plist:
16324 2018-04-17 Ross Kirsling <ross.kirsling@sony.com>
16326 Add debug bots for WinCairo.
16327 https://bugs.webkit.org/show_bug.cgi?id=184663
16329 Reviewed by Lucas Forschler.
16331 * BuildSlaveSupport/build.webkit.org-config/config.json:
16332 Add a debug build bot and two debug test bots.
16334 * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
16335 * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
16336 Add a WinCairo category to build.webkit.org.
16338 2018-04-17 Zalan Bujtas <zalan@apple.com>
16340 [LayoutReloaded] Set inline-block box position.
16341 https://bugs.webkit.org/show_bug.cgi?id=184690
16343 Reviewed by Antti Koivisto.
16345 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
16346 (InlineFormattingContext.prototype._handleInlineBlock):
16347 * LayoutReloaded/Utils.js:
16349 * LayoutReloaded/test/inline-block-with-fixed-width-height.html:
16351 2018-04-17 Carlos Garcia Campos <cgarcia@igalia.com>
16353 [GLIB] Add API to clear JSCContext uncaught exception
16354 https://bugs.webkit.org/show_bug.cgi?id=184685
16356 Reviewed by Žan Doberšek.
16358 Add test cases for the new API.
16360 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
16361 (testJSCExceptions):
16363 2018-04-17 Carlos Garcia Campos <cgarcia@igalia.com>
16365 [GLIB] Add API to query, delete and enumerate properties
16366 https://bugs.webkit.org/show_bug.cgi?id=184647
16368 Reviewed by Michael Catanzaro.
16370 Add test cases for the new API.
16372 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
16375 (testJSCPrototypes):
16377 2018-04-16 Zalan Bujtas <zalan@apple.com>
16379 [LayoutReloaded] Add support for replaced box.
16380 https://bugs.webkit.org/show_bug.cgi?id=184680
16382 Reviewed by Antti Koivisto.
16384 Basic support for inline replaced.
16386 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
16387 (InlineFormattingContext.prototype._handleInlineBox):
16388 (InlineFormattingContext.prototype._handleInlineBlock):
16389 (InlineFormattingContext.prototype._handleReplaced):
16390 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
16391 (Line.prototype.lastLineBox):
16392 (Line.prototype.addInlineBox):
16393 (Line.prototype.addInlineContainerBox): Deleted.
16394 * LayoutReloaded/TreeBuilder.js:
16395 (TreeBuilder.prototype._createAndAttachBox):
16396 * LayoutReloaded/Utils.js:
16398 * LayoutReloaded/test/index.html:
16399 * LayoutReloaded/test/inline-simple-replaced.html: Added.
16401 2018-04-16 Zalan Bujtas <zalan@apple.com>
16403 [LayoutReloaded] Minor InlineFormattingContext::layout() cleanup.
16404 https://bugs.webkit.org/show_bug.cgi?id=184679
16406 Reviewed by Antti Koivisto.
16408 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
16409 (InlineFormattingContext):
16410 (InlineFormattingContext.prototype.layout):
16411 (InlineFormattingContext.prototype._handleInlineContainer):
16412 (InlineFormattingContext.prototype._handleInlineContent):
16413 (InlineFormattingContext.prototype._handleInlineBlock):
16414 (InlineFormattingContext.prototype._handleReplacedBox):
16415 (InlineFormattingContext.prototype._clearNeedsLayoutAndMoveToNextSibling):
16416 (InlineFormattingContext.prototype._handleInlineBlockContainer): Deleted.
16417 (InlineFormattingContext.prototype._clearAndMoveToNext): Deleted.
16419 2018-04-16 Zalan Bujtas <zalan@apple.com>
16421 [LayoutReloaded] Introduce fragmentation state/context.
16422 https://bugs.webkit.org/show_bug.cgi?id=184677
16424 Reviewed by Antti Koivisto.
16426 State/context for fragmented content (multicol, regions, pagination etc).
16428 * LayoutReloaded/FormattingContext/FragmentationContext.js: Added.
16429 (FragmentationContext):
16430 * LayoutReloaded/FormattingState/FragmentationState.js: Added.
16431 (FragmentationState):
16432 (FragmentationState.prototype.formattingState):
16434 2018-04-16 Andy Estes <aestes@apple.com>
16436 [iOS] Enable WKPDFView by default
16437 https://bugs.webkit.org/show_bug.cgi?id=184675
16438 <rdar://problem/27885452>
16440 Reviewed by Darin Adler.
16442 * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
16444 2018-04-16 Leo Balter <leonardo.balter@gmail.com>
16446 Perl-based Test262 runner
16447 https://bugs.webkit.org/show_bug.cgi?id=183343
16449 Reviewed by Michael Saboff.
16451 * Scripts/test262-helpers/README.md: Added.
16452 * Scripts/test262-helpers/agent.js: Added.
16457 * Scripts/test262-helpers/cpanfile: Added.
16458 * Scripts/test262-helpers/cpanfile.snapshot: Added.
16459 * Scripts/test262-helpers/test262-runner.pl: Added.
16471 * Scripts/test262-helpers/tests.log: Added.
16473 2018-04-15 Andy Estes <aestes@apple.com>
16475 [iOS] Add API tests for PDF find-in-page
16476 https://bugs.webkit.org/show_bug.cgi?id=184634
16478 Reviewed by Dan Bernstein.
16480 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
16481 * TestWebKitAPI/Tests/WebKit/find.pdf: Added.
16482 * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
16483 (-[TestFindDelegate findString]):
16484 (-[TestFindDelegate _webView:didCountMatches:forString:]):
16485 (-[TestFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
16486 (-[TestFindDelegate _webView:didFailToFindString:]):
16490 2018-04-13 Zalan Bujtas <zalan@apple.com>
16492 [LayoutReloaded] Update class documentation
16493 https://bugs.webkit.org/show_bug.cgi?id=184625
16495 Reviewed by Antti Koivisto.
16497 * LayoutReloaded/DisplayTree/Box.js:
16498 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
16499 * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
16500 * LayoutReloaded/FormattingContext/FloatingContext.js:
16501 * LayoutReloaded/FormattingContext/FormattingContext.js:
16502 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
16503 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
16504 * LayoutReloaded/FormattingState/BlockFormattingState.js:
16505 * LayoutReloaded/FormattingState/FloatingState.js:
16506 * LayoutReloaded/FormattingState/FormattingState.js:
16507 * LayoutReloaded/FormattingState/InlineFormattingState.js:
16508 * LayoutReloaded/LayoutState.js:
16509 * LayoutReloaded/LayoutTree/BlockContainer.js:
16510 * LayoutReloaded/LayoutTree/Box.js:
16511 * LayoutReloaded/LayoutTree/Container.js:
16512 * LayoutReloaded/LayoutTree/InlineBox.js:
16513 * LayoutReloaded/LayoutTree/InlineContainer.js:
16514 * LayoutReloaded/LayoutTree/Text.js:
16515 * LayoutReloaded/misc/headers/BlockContainer.h: Removed.
16516 * LayoutReloaded/misc/headers/BlockFormattingContext.h: Removed.
16517 * LayoutReloaded/misc/headers/BlockMarginCollapse.h: Removed.
16518 * LayoutReloaded/misc/headers/Box.h: Removed.
16519 * LayoutReloaded/misc/headers/Container.h: Removed.
16520 * LayoutReloaded/misc/headers/FloatingContext.h: Removed.
16521 * LayoutReloaded/misc/headers/FormattingContext.h: Removed.
16522 * LayoutReloaded/misc/headers/InitialBlockContainer.h: Removed.
16523 * LayoutReloaded/misc/headers/InlineBox.h: Removed.
16524 * LayoutReloaded/misc/headers/LayoutContext.h: Removed.
16525 * LayoutReloaded/misc/headers/Line.h: Removed.
16526 * LayoutReloaded/misc/headers/Text.h: Removed.
16528 2018-04-13 Zalan Bujtas <zalan@apple.com>
16530 [LayoutReloaded] Add simple implementation for FormattingState::markNeedsLayout()
16531 https://bugs.webkit.org/show_bug.cgi?id=184621
16533 Reviewed by Antti Koivisto.
16535 This is just a simple, mark ancestors dirty implementation.
16537 * LayoutReloaded/FormattingState/FormattingState.js:
16538 (FormattingState.prototype.markNeedsLayout):
16539 * LayoutReloaded/LayoutState.js:
16540 (LayoutState.prototype.markNeedsLayout):
16541 (LayoutState.prototype.setNeedsLayoutById): Deleted.
16542 (LayoutState.prototype.setNeedsLayout): Deleted.
16543 * LayoutReloaded/TreeBuilder.js:
16544 (TreeBuilder.prototype._createAndAttachBox):
16545 (TreeBuilder.prototype._findBox): Deleted.
16546 * LayoutReloaded/Utils.js:
16547 (Utils.layoutBoxById):
16548 * LayoutReloaded/test/index.html:
16549 * LayoutReloaded/test/simple-incremental-layout-with-static-content.html:
16551 2018-04-13 Carlos Alberto Lopez Perez <clopez@igalia.com>
16553 [WPE] [webkitpy] The driver requirements should be checked before starting the tests
16554 https://bugs.webkit.org/show_bug.cgi?id=184595
16556 Reviewed by Michael Catanzaro.
16558 Ensure Driver.check_driver() is checked at check_sys_deps() time.
16560 * Scripts/webkitpy/port/wpe.py:
16561 (WPEPort.check_sys_deps):
16563 2018-04-13 Zalan Bujtas <zalan@apple.com>
16565 Rebaseline LayoutReloaded patch file (collectRenderersWithNeedsLayout).
16567 * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
16569 2018-04-13 Jonathan Bedard <jbedard@apple.com>
16571 Boot fewer simulators in CI/EWS machines
16572 https://bugs.webkit.org/show_bug.cgi?id=184594
16573 <rdar://problem/39188082>
16575 Reviewed by Alexey Proskuryakov.
16577 This is a temporary workaround fro <rdar://problem/39393590>.
16579 * Scripts/webkitpy/xcode/simulated_device.py:
16580 (SimulatedDeviceManager): Treat simulators as taking 6 gigs instead of 2.
16582 2018-04-13 Brady Eidson <beidson@apple.com>
16584 Introduce SuspendedPageProxy to keep old web processes around after their WebPageProxy has been swapped to a new one.
16585 https://bugs.webkit.org/show_bug.cgi?id=184559
16587 Reviewed by Alex Christensen.
16589 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
16591 2018-04-13 Chris Dumez <cdumez@apple.com>
16593 input.webkitEntries does not work as expected when folder contains accented chars
16594 https://bugs.webkit.org/show_bug.cgi?id=184517
16595 <rdar://problem/39265537>
16597 Reviewed by Alex Christensen.
16599 Add API test coverage.
16601 * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
16602 (TestWebKitAPI::TEST_F):
16604 2018-04-13 Thibault Saunier <tsaunier@igalia.com>
16606 Update my emails ordering in contributors.json
16607 https://bugs.webkit.org/show_bug.cgi?id=184587
16609 Rubber-stamped by Philippe Normand.
16611 Bugzilla seems to pick up tsaunier@igalia.com which is not the one I use there.
16613 * Scripts/webkitpy/common/config/contributors.json:
16615 2018-04-13 Michael Catanzaro <mcatanzaro@igalia.com>
16617 [WPE] xkbcommon: ERROR: failed to add default include path /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesWPE/Root/share/X11/xkb
16618 https://bugs.webkit.org/show_bug.cgi?id=184388
16620 Reviewed by Carlos Alberto Lopez Perez.
16622 Remove libxkbcommon from the JHBuild environment. We could alternatively add
16623 xkeyboard-config, but there doesn't seem to be any need to build libxkbcommon because I do
16624 not believe it depends on anything else in the JHBuild environment.
16626 * wpe/install-dependencies:
16627 * wpe/jhbuild.modules:
16629 2018-04-12 Antoine Quint <graouts@apple.com>
16631 [Web Animations] Turn CSS Animations and CSS Transitions as Web Animations on by default
16632 https://bugs.webkit.org/show_bug.cgi?id=184569
16633 <rdar://problem/38671301>
16635 Reviewed by Jon Lee.
16637 We set the default value for the CSS Animations and CSS Transitions as Web Animations flag to true
16638 but override it to be false always in the LayoutTests/legacy-animation-engine directory.
16640 * DumpRenderTree/TestOptions.h:
16641 * DumpRenderTree/mac/DumpRenderTree.mm:
16642 (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference):
16644 * WebKitTestRunner/TestController.cpp:
16645 (WTR::TestController::resetPreferencesToConsistentValues):
16646 * WebKitTestRunner/TestOptions.cpp:
16647 (WTR::isLegacyAnimationEngineTestPath):
16648 (WTR::TestOptions::TestOptions):
16649 * WebKitTestRunner/TestOptions.h:
16651 2018-04-13 Carlos Garcia Campos <cgarcia@igalia.com>
16653 [GLIB] Tests WTF_RefPtr.ReleaseInNonMainThread and WTF_RefPtr.ReleaseInNonMainThreadDestroyInMainThread are crashing since they were added
16654 https://bugs.webkit.org/show_bug.cgi?id=184531
16656 Reviewed by Michael Catanzaro.
16658 It's not a bug in WebKit, but in the tests. The problem is that those tests are using RunLoop::main() but main
16659 run loop hasn't been initialized. ReleaseInNonMainThread doesn't really need to initialize the main run loop if
16660 we change Util::run() to always use RunLop::current() instead of RunLoop::main(). But
16661 ReleaseInNonMainThreadDestroyInMainThread ends up scheduling a task to the main thread, and the generic
16662 implementation fo that uses RunLoop::main(), so we need to initialize the main loop in this case.
16664 * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
16665 (TestWebKitAPI::TEST): Call RunLoop::initializeMainRunLoop().
16666 * TestWebKitAPI/glib/UtilitiesGLib.cpp:
16667 (TestWebKitAPI::Util::run): Use RunLop::current() to stop the current run loop.
16668 (TestWebKitAPI::Util::sleep): Ditto.
16670 2018-04-12 Zalan Bujtas <zalan@apple.com>
16672 [LayoutReloaded] Add support for incremental layout
16673 https://bugs.webkit.org/show_bug.cgi?id=184578
16675 Reviewed by Antti Koivisto.
16677 * LayoutReloaded/Layout.js:
16679 * LayoutReloaded/LayoutState.js:
16680 (LayoutState.prototype.rootContainer):
16681 (LayoutState.prototype.setNeedsLayoutById):
16682 * LayoutReloaded/Utils.js:
16683 (Utils.layoutTreeDump):
16684 * LayoutReloaded/test/TestHarness.js:
16687 (verifyLayoutTreeDump): Deleted.
16688 * LayoutReloaded/test/index.html:
16689 * LayoutReloaded/test/simple-incremental-layout-with-static-content.html: Added.
16691 2018-04-12 Zalan Bujtas <zalan@apple.com>
16693 [LayoutReloaded] Move root container ownership to layout state
16694 https://bugs.webkit.org/show_bug.cgi?id=184575
16696 Reviewed by Antti Koivisto.
16698 Now the root container is on the associated layout state (ICB only at this point though).
16700 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
16701 (BlockFormattingContext.prototype.layout):
16702 * LayoutReloaded/FormattingContext/FormattingContext.js:
16703 (FormattingContext.prototype._layoutOutOfFlowDescendants):
16704 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
16705 (InlineFormattingContext.prototype._handleInlineBlockContainer):
16706 (InlineFormattingContext.prototype._handleFloatingBox):
16707 * LayoutReloaded/Layout.js:
16709 * LayoutReloaded/LayoutState.js:
16711 (LayoutState.prototype.formattingContext):
16712 (LayoutState.prototype.establishedFormattingState):
16713 (LayoutState.prototype.formattingStateForBox):
16714 (LayoutState.prototype.needsLayout):
16715 (LayoutState.prototype.displayBox):
16716 (LayoutState.prototype._formattingContext):
16717 (LayoutState.prototype.layout): Deleted.
16718 (LayoutState.prototype.formattingStates): Deleted.
16719 (LayoutState.prototype.initialDisplayBox): Deleted.
16720 * LayoutReloaded/Utils.js:
16722 (Utils._findDisplayBox): Deleted.
16724 2018-04-12 Jonathan Bedard <jbedard@apple.com>
16726 Fix --build-directory flag for run-webkit-tests
16727 https://bugs.webkit.org/show_bug.cgi?id=184545
16728 <rdar://problem/39385080>
16730 Rubber-stamped by Aakash Jain.
16732 The --build-directory path does not work with iOS-Simulator.
16734 * Scripts/webkitpy/port/base.py:
16735 (Port._build_path): Use the port configuration to calculate the root directory.
16736 * Scripts/webkitpy/port/base_unittest.py:
16737 (PortTest.test_build_path): Test build directories for embedded configurations.
16739 2018-04-12 Ross Kirsling <ross.kirsling@sony.com>
16741 pemfile.py should not assume POSIX line endings
16742 https://bugs.webkit.org/show_bug.cgi?id=184507
16744 Reviewed by Daniel Bates.
16746 * Scripts/webkitpy/common/system/pemfile.py:
16747 (_parse_pem_format):
16748 * Scripts/webkitpy/common/system/pemfile_unittest.py:
16749 (PemFileTest.test_parse_crlf):
16750 (PemFileTest.test_parse_cr):
16752 2018-04-12 Zalan Bujtas <zalan@apple.com>
16754 [LayoutReloaded] Minor cleanup in LayoutSate
16755 https://bugs.webkit.org/show_bug.cgi?id=184546
16757 Reviewed by Antti Koivisto.
16759 * LayoutReloaded/FormattingContext/FormattingContext.js:
16760 (FormattingContext.isInFormattingContext):
16761 * LayoutReloaded/FormattingState/FormattingState.js:
16762 (FormattingState.prototype.displayBoxes):
16763 (FormattingState.prototype.displayBox):
16764 (FormattingState.prototype._markSubTreeNeedsLayout):
16766 (FormattingState.prototype.displayBoxMap): Deleted.
16767 * LayoutReloaded/LayoutState.js:
16768 (LayoutState.prototype.formattingStateForBox):
16769 (LayoutState.prototype.needsLayout):
16770 (LayoutState.prototype.displayBox):
16771 (LayoutState.prototype._createFormattingState):
16773 * LayoutReloaded/LayoutTree/Box.js:
16774 (Layout.Box.prototype.isFormattingContextDescendant): Deleted.
16775 * LayoutReloaded/LayoutTree/Container.js:
16776 (Layout.Container.prototype.isContainingBlockDescendant): Deleted.
16777 * LayoutReloaded/Utils.js:
16778 (Utils._findDisplayBox):
16780 2018-04-12 Zalan Bujtas <zalan@apple.com>
16782 [LayoutReloaded] Introduce needsLayout to InlineFormattingContext
16783 https://bugs.webkit.org/show_bug.cgi?id=184538
16785 Reviewed by Antti Koivisto.
16787 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
16788 (BlockFormattingContext.prototype._adjustBottomWithFIXME):
16789 (BlockFormattingContext):
16790 (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout): Deleted.
16791 (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout): Deleted.
16792 * LayoutReloaded/FormattingContext/FormattingContext.js:
16793 (FormattingContext.prototype._firstInFlowChildWithNeedsLayout):
16794 (FormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
16795 (FormattingContext):
16796 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
16797 (InlineFormattingContext.prototype.layout):
16798 (InlineFormattingContext.prototype._handleInlineContainer):
16799 (InlineFormattingContext.prototype._handleInlineBlockContainer):
16800 (InlineFormattingContext.prototype._handleInlineContent):
16801 (InlineFormattingContext.prototype._clearAndMoveToNext):
16802 (InlineFormattingContext):
16804 2018-04-12 Xabier Rodriguez Calvar <calvaris@igalia.com>
16806 [GStreamer] Speed up GStreamer dependency build by removing examples compilation
16807 https://bugs.webkit.org/show_bug.cgi?id=184528
16809 Reviewed by Philippe Normand.
16811 * gstreamer/jhbuild.modules: Added --disable-examples for GStreamer package.
16813 2018-04-12 Zan Dobersek <zdobersek@igalia.com>
16815 [WPE] Switch testing process to using WPEBackend-fdo
16816 https://bugs.webkit.org/show_bug.cgi?id=184357
16818 Reviewed by Carlos Alberto Lopez Perez.
16820 Switch WPE testing to using the WPEBackend-fdo implementation that
16821 depends on the WL_bind_wayland_display EGL extension, as defined under
16822 the freedesktop.org project.
16823 https://cgit.freedesktop.org/mesa/mesa/tree/docs/specs/WL_bind_wayland_display.spec
16825 HeadlessViewBackend is refactored to use the WPEBackend-fdo API, but
16826 otherwise is not changed in functionality.
16828 Unit tests now have to unconditionally use HeadlessViewBackend as a
16829 wpe_view_backend provider, since WPEBackend-fdo does not provide a
16830 default wpe_view_backend implementation. Unit tests covering that are
16831 adjusted to instead use a mock wpe_view_backend interface.
16833 * Scripts/webkitdirs.pm:
16834 (builtDylibPathForName): Fix the libWPEWebKit.so name to also include
16835 the API version that was added in r230449.
16836 * Scripts/webkitpy/port/waylanddriver.py:
16837 (WaylandDriver._setup_environ_for_test): Export EGL_PLATFORM=wayland.
16838 * Scripts/webkitpy/port/wpe.py:
16839 (WPEPort._driver_class): Use WaylandDriver by default.
16840 * TestWebKitAPI/PlatformWebView.h:
16842 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
16843 (testWebViewWebBackend):
16844 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
16845 (Test::createWebViewBackend):
16846 * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp:
16847 (TestWebKitAPI::PlatformWebView::~PlatformWebView):
16848 (TestWebKitAPI::PlatformWebView::initialize):
16849 * wpe/HeadlessViewBackend/CMakeLists.txt:
16850 * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
16852 (HeadlessViewBackend::HeadlessViewBackend):
16853 (HeadlessViewBackend::~HeadlessViewBackend):
16854 (HeadlessViewBackend::backend const):
16855 (HeadlessViewBackend::createSnapshot):
16856 (HeadlessViewBackend::performUpdate):
16857 (HeadlessViewBackend::makeCurrent): Deleted.
16858 * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
16859 * wpe/jhbuild.modules: Module name cleanup. Dyz version is bumped.
16861 2018-04-12 Carlos Garcia Campos <cgarcia@igalia.com>
16863 [GTK] Switch to use always complex text code path
16864 https://bugs.webkit.org/show_bug.cgi?id=183285
16866 Reviewed by Michael Catanzaro.
16868 Keep the auto mode for the layout tests to avoid having to rebaseline a lot of tests.
16870 * WebKitTestRunner/gtk/main.cpp:
16871 (main): Set WEBKIT_FORCE_COMPLEX_TEXT to 0 unless it's already present in the environment.
16873 2018-04-11 Carlos Garcia Campos <cgarcia@igalia.com>
16875 [GLIB] Handle strings containing null characters
16876 https://bugs.webkit.org/show_bug.cgi?id=184450
16878 Reviewed by Michael Catanzaro.
16880 Add test case for strings with null characters and update all calls to evaluate to pass the script length.
16882 * TestWebKitAPI/PlatformGTK.cmake:
16883 * TestWebKitAPI/PlatformWPE.cmake:
16884 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
16889 (testJSCPrototypes):
16890 (testJSCExceptions):
16892 (testJSCGarbageCollector):
16893 (testJSCWeakValue):
16894 (testsJSCVirtualMachine):
16895 (testsJSCAutocleanups):
16896 * TestWebKitAPI/Tests/JavaScriptCore/glib/script.js: Added.
16897 * TestWebKitAPI/Tests/WebKitGLib/DOMElementTest.cpp:
16898 (DOMElementTest::testAutoFill):
16899 * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp:
16900 (WebKitWebEditorTest::testSelectionChanged):
16901 * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
16902 (WebKitFrameTest::testJavaScriptValues):
16903 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
16904 (consoleMessageSentCallback):
16905 (methodCallCallback):
16907 2018-04-11 Zan Dobersek <zdobersek@igalia.com>
16909 [WPE] Make WebKitWebViewBackend object mandatory for webkit_web_view_new*() constructors
16910 https://bugs.webkit.org/show_bug.cgi?id=184513
16912 Reviewed by Michael Catanzaro.
16914 Update the WPE-specific testWebViewWebBackend() test case, removing the
16915 test that passes a null WebKitWebViewBackend object to the
16916 webkit_web_view_new() call.
16918 Helper createWebViewBackend() that's called via Test::createWebView()
16919 variations is updated to, in case of not using the headless backend,
16920 return a WebKitWebViewBackend instance that wraps around a
16921 default wpe_view_backend object.
16923 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
16924 (testWebViewWebBackend):
16925 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
16926 (Test::createWebViewBackend):
16928 2018-04-11 Zalan Bujtas <zalan@apple.com>
16930 [LayoutReloaded] Introduce needsLayout flag
16931 https://bugs.webkit.org/show_bug.cgi?id=184527
16933 Reviewed by Antti Koivisto.
16935 Use the formatting state to mark boxes dirty.
16937 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
16938 (BlockFormattingContext.prototype.layout):
16939 (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout):
16940 (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
16941 (BlockFormattingContext):
16942 * LayoutReloaded/FormattingContext/FormattingContext.js:
16943 (FormattingContext.prototype._layoutOutOfFlowDescendants):
16944 * LayoutReloaded/FormattingState/FormattingState.js:
16946 (FormattingState.prototype.markNeedsLayout):
16947 (FormattingState.prototype.clearNeedsLayout):
16948 (FormattingState.prototype.needsLayout):
16949 (FormattingState.prototype.layoutNeeded):
16950 (FormattingState.prototype._markSubTreeNeedsLayout):
16951 * LayoutReloaded/LayoutState.js:
16952 (LayoutState.prototype.formattingStateForBox):
16953 (LayoutState.prototype.setNeedsLayout):
16954 (LayoutState.prototype.needsLayout):
16955 * LayoutReloaded/LayoutTree/Box.js:
16956 (Layout.Box.prototype.isFormattingContextDescendant):
16957 * LayoutReloaded/LayoutTree/Container.js:
16958 (Layout.Container.prototype.isContainingBlockDescendant):
16960 2018-04-11 Jonathan Bedard <jbedard@apple.com>
16962 Fix TestInvocation class for newer versions of clang.
16963 https://bugs.webkit.org/show_bug.cgi?id=184508
16964 <rdar://problem/39328648>
16966 Reviewed by Alexey Proskuryakov.
16968 Declare TestInvocation to be final so it does not require a virtual destructor.
16970 * WebKitTestRunner/TestInvocation.h:
16972 2018-04-10 Alex Christensen <achristensen@webkit.org>
16974 IDN spoofing with Hebrew combining characters
16975 https://bugs.webkit.org/show_bug.cgi?id=184472
16976 <rdar://problem/39148687>
16978 Reviewed by Brent Fulgham.
16980 * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
16981 (TestWebKitAPI::TEST):
16983 2018-04-11 Wenson Hsieh <wenson_hsieh@apple.com>
16985 [Extra zoom mode] Missing label when focusing a <select> with a title attribute but no associated <label>
16986 https://bugs.webkit.org/show_bug.cgi?id=184352
16987 <rdar://problem/39237683>
16989 Reviewed by Andy Estes.
16991 Add support for UIScriptController::selectFormPopoverTitle, which returns the title of the current select
16992 popover's UITableViewController (for testing purposes).
16994 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
16995 (WTR::UIScriptController::selectFormPopoverTitle const):
16996 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
16997 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
16998 (WTR::UIScriptController::selectFormPopoverTitle const):
16999 * TestRunnerShared/UIScriptContext/UIScriptController.h:
17000 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
17001 (WTR::UIScriptController::selectFormPopoverTitle const):
17003 2018-04-10 Nan Wang <n_wang@apple.com>
17005 AX: Expose strong password fields on iOS
17006 https://bugs.webkit.org/show_bug.cgi?id=184465
17007 <rdar://problem/39325104>
17009 Reviewed by Chris Fleizach.
17011 * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
17012 (AccessibilityUIElement::boolAttributeValue):
17013 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
17014 (WTR::AccessibilityUIElement::boolAttributeValue):
17016 2018-04-10 Zalan Bujtas <zalan@apple.com>
17018 [LayoutReloaded] Add support for out-of-flow descendants in inline formatting context.
17019 https://bugs.webkit.org/show_bug.cgi?id=184454
17021 Reviewed by Antti Koivisto.
17023 When the containing block of an out-of-flow positioned element establishes an inline formatting context.
17024 This is mostly about moving out-of-flow logic from BlockFormattingContext to the base class.
17026 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
17027 (BlockFormattingContext.prototype._adjustBottomWithFIXME):
17028 (BlockFormattingContext):
17029 (BlockFormattingContext.prototype._layoutOutOfFlowDescendants): Deleted.
17030 (BlockFormattingContext.prototype._computeOutOfFlowWidth): Deleted.
17031 (BlockFormattingContext.prototype._computeInFlowWidth): Deleted.
17032 (BlockFormattingContext.prototype._computeOutOfFlowHeight): Deleted.
17033 (BlockFormattingContext.prototype._computeOutOfFlowPosition): Deleted.
17034 (BlockFormattingContext.prototype._shrinkToFitWidth): Deleted.
17035 * LayoutReloaded/FormattingContext/FormattingContext.js:
17036 (FormattingContext.prototype._placeInFlowPositionedChildren):
17037 (FormattingContext.prototype._computeInFlowWidth):
17038 (FormattingContext.prototype._layoutOutOfFlowDescendants):
17039 (FormattingContext.prototype._computeOutOfFlowWidth):
17040 (FormattingContext.prototype._computeOutOfFlowHeight):
17041 (FormattingContext.prototype._computeOutOfFlowPosition):
17042 (FormattingContext.prototype._shrinkToFitWidth):
17043 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17044 (InlineFormattingContext.prototype.layout):
17045 (InlineFormattingContext.prototype._handleInlineContainer):
17046 (InlineFormattingContext.prototype._handleInlineBlockContainer):
17047 (InlineFormattingContext.prototype._placeOutOfFlowDescendants): Deleted.
17048 * LayoutReloaded/test/index.html:
17049 * LayoutReloaded/test/inline-with-out-of-flow-descendant.html: Added.
17051 2018-04-09 Zan Dobersek <zdobersek@igalia.com>
17053 WKTR: Enable DOM cache, SW registration directory cleanup on non-Cocoa platforms
17054 https://bugs.webkit.org/show_bug.cgi?id=184414
17056 Reviewed by Michael Catanzaro.
17058 Enable clearServiceWorkerRegistrations(), clearDOMCache() and
17059 clearDOMCaches() implementations in WebKitTestRunner's TestController
17060 class for non-Cocoa platforms. Implementations depend on the generic
17061 WK2 C API that other ports can leverage as well.
17063 The clearDOMCache() and clearDOMCaches() calls are now operational for
17064 tests that invoke them. clearServiceWorkerRegistrations() and
17065 clearDOMCaches() are also called between each test, cleaning up relevant
17068 The TestController::getAllStorageAccessEntries() stub for non-Cocoa
17069 platforms is moved into the main !PLATFORM(COCOA) block.
17071 * WebKitTestRunner/TestController.cpp:
17072 (WTR::TestController::getAllStorageAccessEntries):
17073 (WTR::clearServiceWorkerRegistrationsCallback):
17074 (WTR::TestController::clearServiceWorkerRegistrations):
17075 (WTR::clearDOMCacheCallback):
17076 (WTR::TestController::clearDOMCache):
17077 (WTR::TestController::clearDOMCaches):
17079 2018-04-09 Zalan Bujtas <zalan@apple.com>
17081 [LayoutReloaded] Add support for relatively positioned containers in inline formatting context.
17082 https://bugs.webkit.org/show_bug.cgi?id=184439
17084 Reviewed by Antti Koivisto.
17086 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
17087 (BlockFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
17088 (BlockFormattingContext.prototype._computeInFlowPositionedPosition): Deleted.
17089 * LayoutReloaded/FormattingContext/FormattingContext.js:
17090 (FormattingContext.prototype._computeInFlowPositionedPosition):
17091 (FormattingContext.prototype._placeInFlowPositionedChildren):
17092 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17093 (InlineFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
17094 * LayoutReloaded/Utils.js:
17096 (Utils._dumpLines.):
17097 (Utils._dumpLines):
17098 (Utils.precisionRoundWithDecimals):
17099 (Utils.precisionRound):
17101 * LayoutReloaded/test/index.html:
17102 * LayoutReloaded/test/inline-with-relative-positioning.html: Added.
17104 2018-04-09 Zalan Bujtas <zalan@apple.com>
17106 [LayoutReloaded] Remove Layout.InitialContainingBlock class
17107 https://bugs.webkit.org/show_bug.cgi?id=184436
17109 Reviewed by Antti Koivisto.
17111 * LayoutReloaded/LayoutTree/Box.js:
17112 (Layout.Box.prototype.establishesBlockFormattingContext):
17113 * LayoutReloaded/LayoutTree/InitialBlockContainer.js: Removed.
17114 * LayoutReloaded/TreeBuilder.js:
17115 (TreeBuilder.prototype.createTree):
17116 * LayoutReloaded/test/index.html:
17118 2018-04-09 Zalan Bujtas <zalan@apple.com>
17120 [LayoutReloaded] Add support for inline-block.
17121 https://bugs.webkit.org/show_bug.cgi?id=184434
17123 Reviewed by Antti Koivisto.
17125 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17126 (InlineFormattingContext):
17127 (InlineFormattingContext.prototype.layout):
17128 (InlineFormattingContext.prototype._handleInlineContainer):
17129 (InlineFormattingContext.prototype._handleInlineBlockContainer):
17130 (InlineFormattingContext.prototype._handleInlineContent):
17131 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
17132 (Line.prototype.addInlineContainerBox):
17133 (Line.prototype.addTextLineBox):
17135 * LayoutReloaded/LayoutTree/Box.js:
17136 (Layout.Box.prototype.isInlineBlockBox):
17137 * LayoutReloaded/Utils.js:
17138 (LayoutRect.prototype.growHorizontally):
17139 (Utils.isBlockContainerElement):
17140 (Utils.isInlineBlockElement):
17141 (Utils._dumpLines.):
17142 (Utils._dumpLines):
17143 * LayoutReloaded/test/index.html:
17144 * LayoutReloaded/test/inline-block-with-fixed-width-height.html: Added.
17146 2018-04-09 Timothy Hatcher <timothy@apple.com>
17148 Add support for setting a background color on WKWebView and WKView
17149 https://bugs.webkit.org/show_bug.cgi?id=184426
17151 Reviewed by Wenson Hsieh.
17153 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17154 * TestWebKitAPI/Tests/mac/BackgroundColor.mm: Added.
17156 2018-04-09 Charlie Turner <cturner@igalia.com>
17158 [WPE] Add some missing install dependencies
17159 https://bugs.webkit.org/show_bug.cgi?id=184383
17161 Reviewed by Michael Catanzaro.
17163 * wpe/install-dependencies:
17165 2018-04-09 Sihui Liu <sihui_liu@apple.com>
17167 REGRESSION(r229929): localStorage is broken for WebInspector
17168 https://bugs.webkit.org/show_bug.cgi?id=184382
17169 <rdar://problem/39257355>
17171 Reviewed by Chris Dumez.
17173 * TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm:
17175 * TestWebKitAPI/Tests/WebKitCocoa/localstorage-empty-string-value.html:
17177 2018-04-09 Zan Dobersek <zdobersek@igalia.com>
17179 Unreviewed follow-up to r230389.
17181 * WebKitTestRunner/TestController.cpp:
17182 (WTR::TestController::platformAdjustContext): Use the 'ServiceWorkers'
17183 subdirectory for the temporary testing-purpose SW registration directory
17184 like it's used in Cocoa's TestController, addressing the review comment
17185 that I forgot about.
17187 2018-04-08 Zan Dobersek <zdobersek@igalia.com>
17189 Non-Cocoa ports use default directory for ServiceWorker data during testing
17190 https://bugs.webkit.org/show_bug.cgi?id=183784
17192 Reviewed by Youenn Fablet.
17194 * WebKitTestRunner/TestController.cpp:
17195 (WTR::TestController::platformAdjustContext): Set the service worker registration
17196 directory through the new WKWebsiteDataStore API for non-Cocoa ports.
17198 2018-04-08 Zalan Bujtas <zalan@apple.com>
17200 [LayoutReloaded] Adjust line with inline container's margin border and padding
17201 https://bugs.webkit.org/show_bug.cgi?id=184409
17203 Reviewed by Antti Koivisto.
17205 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17206 (InlineFormattingContext.prototype.layout):
17207 (InlineFormattingContext.prototype._handleFloatingBox):
17208 (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
17209 (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
17210 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
17211 (Line.prototype.shrink):
17212 (Line.prototype.adjustWithOffset):
17213 (Line.prototype.moveContentHorizontally):
17214 (Line.prototype.addTextLineBox):
17216 (Line.prototype.addFloatingBox): Deleted.
17217 * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
17218 * LayoutReloaded/test/index.html:
17219 * LayoutReloaded/test/inline-with-padding-border-margin-offsets.html: Added.
17221 2018-04-07 Zalan Bujtas <zalan@apple.com>
17223 [LayoutReloaded] Add support for InlineContainer
17224 https://bugs.webkit.org/show_bug.cgi?id=184394
17226 Reviewed by Antti Koivisto.
17228 * LayoutReloaded/FormattingContext/FormattingContext.js:
17229 (FormattingContext.prototype._addToLayoutQueue):
17230 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17231 (InlineFormattingContext.prototype.layout):
17232 (InlineFormattingContext.prototype._handleInlineContent):
17233 (InlineFormattingContext.prototype._handleFloatingBox):
17234 (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
17235 (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
17236 (InlineFormattingContext.prototype._placeInFlowPositionedChildren):
17237 (InlineFormattingContext.prototype._placeOutOfFlowDescendants):
17238 (InlineFormattingContext.prototype._createNewLine):
17239 (InlineFormattingContext.prototype._handleContent): Deleted.
17240 * LayoutReloaded/LayoutState.js:
17241 (LayoutState.prototype._createFormattingState):
17242 * LayoutReloaded/LayoutTree/Box.js:
17243 (Layout.Box.prototype.isContainer):
17244 (Layout.Box.prototype.isInlineContainer):
17245 (Layout.Box.prototype.isInlineBox):
17246 * LayoutReloaded/LayoutTree/Container.js:
17247 (Layout.Container.prototype.isContainer): Deleted.
17248 * LayoutReloaded/LayoutTree/InlineContainer.js: Added.
17249 (Layout.InlineContainer):
17250 * LayoutReloaded/TreeBuilder.js:
17251 (TreeBuilder.prototype._createAndAttachBox):
17252 * LayoutReloaded/Utils.js:
17254 (Utils.precisionRound):
17256 * LayoutReloaded/test/index.html:
17257 * LayoutReloaded/test/inline-content-simple2.html: Added.
17258 * LayoutReloaded/test/inline-floating1.html: Added.
17259 * LayoutReloaded/test/inline-formatting-context-floats1.html: Added.
17260 * LayoutReloaded/test/inline-formatting-context-floats2.html: Added.
17262 2018-04-07 Timothy Hatcher <timothy@apple.com>
17264 Use the system's link color when system appearance is desired for a WebView.
17266 https://bugs.webkit.org/show_bug.cgi?id=184353
17267 rdar://problem/9420053
17269 Reviewed by Wenson Hsieh.
17271 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
17272 * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm: Added.
17273 (TestWebKitAPI::WebKit::LinkColor):
17274 (TestWebKitAPI::WebKit::LinkColorWithSystemAppearance):
17276 2018-04-06 Zalan Bujtas <zalan@apple.com>
17278 Rebaseline LayoutReloaded patch file.
17280 * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
17282 2018-04-06 Fujii Hironori <Hironori.Fujii@sony.com>
17284 [Win][WebCore] Expose a constant for scrollbar pixels per line (cScrollbarPixelsPerLine)
17285 https://bugs.webkit.org/show_bug.cgi?id=184296
17287 Reviewed by Alex Christensen.
17289 * DumpRenderTree/win/EventSender.cpp:
17290 (mouseScrollBy): Removed the duplicated cScrollbarPixelsPerLine
17291 definition. Use WebCore::cScrollbarPixelsPerLine.
17293 2018-04-06 Zalan Bujtas <zalan@apple.com>
17295 Rebaseline LayoutReloaded patch file.
17297 * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
17299 2018-04-05 Youenn Fablet <youenn@apple.com>
17301 Test expectation updater should handle Win bot results
17302 https://bugs.webkit.org/show_bug.cgi?id=184274
17304 Reviewed by Ryosuke Niwa.
17306 Add processing of win bot results.
17307 They will update platform/win results.
17309 Updated the script so that if there is no mac-wk2 results, it will still process specific results.
17311 * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py:
17312 (TestExpectationUpdater.__init__):
17313 (TestExpectationUpdater._bot_type):
17314 (TestExpectationUpdater.do_update):
17315 * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py:
17317 (MockAttachment.__init__):
17318 (MockAttachment.contents):
17320 (MockBugzilla.__init__):
17321 (MockBugzilla.fetch_bug):
17322 (MockBugzilla.attachments):
17324 (MockZip.__init__):
17327 (TestExpectationUpdaterTest.test_update_test_expectations):
17328 (TestExpectationUpdaterTest):
17329 (TestExpectationUpdaterTest.test_update_win_future_test_expectations):
17331 2018-04-05 Zalan Bujtas <zalan@apple.com>
17333 [LayoutReloaded] Fix static position for floating boxes when they don't fit the current line
17334 https://bugs.webkit.org/show_bug.cgi?id=184354
17336 Reviewed by Antti Koivisto.
17338 Do not shrink the current line with the floating box unless it is on the current line.
17340 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17341 (InlineFormattingContext.prototype._handleFloatingBox):
17342 (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
17343 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
17344 (Line.prototype.addFloatingBox):
17346 * LayoutReloaded/test/index.html:
17347 * LayoutReloaded/test/inline-with-right-floats3.html: Added.
17349 2018-04-05 Zalan Bujtas <zalan@apple.com>
17351 [LayoutReloaded] Add support for right floating boxes in inline formatting context
17352 https://bugs.webkit.org/show_bug.cgi?id=184351
17354 Reviewed by Antti Koivisto.
17356 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17357 (InlineFormattingContext.prototype._handleFloatingBox):
17358 (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
17359 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
17360 (Line.prototype.addFloatingBox):
17362 * LayoutReloaded/test/index.html:
17363 * LayoutReloaded/test/inline-with-right-float-simple.html: Added.
17364 * LayoutReloaded/test/inline-with-right-floats2.html: Added.
17366 2018-04-05 Zalan Bujtas <zalan@apple.com>
17368 [LayoutReloaded] Move floating box to the next line when needed
17369 https://bugs.webkit.org/show_bug.cgi?id=184349
17371 Reviewed by Antti Koivisto.
17373 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17374 (InlineFormattingContext.prototype.layout):
17375 (InlineFormattingContext.prototype._handleContent):
17376 (InlineFormattingContext.prototype._handleText):
17377 (InlineFormattingContext.prototype._handleFloatingBox):
17378 (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
17379 (InlineFormattingContext):
17380 (InlineFormattingContext.prototype._handleFloatingBoxes): Deleted.
17381 (InlineFormattingContext.prototype._floatingBoxes): Deleted.
17382 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
17383 (Line.prototype.addTextLineBox):
17384 (Line.prototype.addFloatingBox):
17386 * LayoutReloaded/Utils.js:
17387 (LayoutRect.prototype.moveHorizontally):
17388 (LayoutRect.prototype.moveVertically):
17389 * LayoutReloaded/test/index.html:
17390 * LayoutReloaded/test/inline-with-floats-when-they-dont-fit.html: Added.
17392 2018-04-05 Brady Eidson <beidson@apple.com>
17394 Process Swap on Navigation causes many webpages to hang due to attempted process swap for iframe navigations.
17395 <rdar://problem/39162236> and https://bugs.webkit.org/show_bug.cgi?id=184318
17397 Reviewed by Andy Estes.
17399 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
17400 (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
17401 (-[PSONScheme addMappingFromURLString:toData:]):
17402 (-[PSONScheme webView:startURLSchemeTask:]):
17404 2018-04-05 Yusuke Suzuki <utatane.tea@gmail.com>
17406 [WTF] Remove StaticLock
17407 https://bugs.webkit.org/show_bug.cgi?id=184332
17409 Reviewed by Mark Lam.
17411 * DumpRenderTree/JavaScriptThreading.cpp:
17413 2018-04-05 Zalan Bujtas <zalan@apple.com>
17415 [LayoutReloaded] Find the correct left edge for a line when floating boxes are in parent formatting context.
17416 https://bugs.webkit.org/show_bug.cgi?id=184330
17418 Reviewed by Antti Koivisto.
17420 In inline formatting context, the floating boxes can come from the parent (block) formatting context. Let's
17421 take them into account when computing the line edges.
17423 * LayoutReloaded/FormattingContext/FloatingContext.js:
17424 (FloatingContext.prototype.left):
17425 (FloatingContext.prototype.right):
17426 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17427 (InlineFormattingContext.prototype._createNewLine):
17428 (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
17429 (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
17430 (InlineFormattingContext.prototype._mapFloatingPosition): Deleted.
17431 * LayoutReloaded/test/index.html:
17432 * LayoutReloaded/test/multiple-left-floats-on-line-from-parent-formatting-context.html: Added.
17434 2018-04-05 Zalan Bujtas <zalan@apple.com>
17436 [LayoutReloaded] Collect floating boxes in inline formatting context and layout them first.
17437 https://bugs.webkit.org/show_bug.cgi?id=184329
17439 Reviewed by Antti Koivisto.
17441 Let's do this for now. There might be some cases where this violates layout.
17443 * LayoutReloaded/FormattingContext/FormattingContext.js:
17444 (FormattingContext.prototype._outOfFlowDescendants):
17445 (FormattingContext):
17446 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17447 (InlineFormattingContext.prototype.layout):
17448 (InlineFormattingContext.prototype._handleFloatingBoxes):
17449 (InlineFormattingContext.prototype._handleFloatingBox):
17450 (InlineFormattingContext.prototype._floatingBoxes):
17451 (InlineFormattingContext):
17452 * LayoutReloaded/test/index.html:
17453 * LayoutReloaded/test/multiple-left-floats-on-line-simple.html: Added.
17455 2018-04-04 Youenn Fablet <youenn@apple.com>
17457 WebRTC data channel only applications require capture permissions for direct connections
17458 https://bugs.webkit.org/show_bug.cgi?id=174500
17459 <rdar://problem/34134281>
17461 Reviewed by Eric Carlson.
17463 Adding options to enable MDNS ICE candidates.
17465 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
17466 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
17467 (WTR::TestRunner::setMediaDevicesEnabled):
17468 (WTR::TestRunner::setMDNSICECandidatesEnabled):
17469 * WebKitTestRunner/InjectedBundle/TestRunner.h:
17470 * WebKitTestRunner/TestController.cpp:
17471 (WTR::TestController::resetPreferencesToConsistentValues):
17473 2018-04-04 Ryan Haddad <ryanhaddad@apple.com>
17475 Disable failing WKWebViewAutofillTests
17476 https://bugs.webkit.org/show_bug.cgi?id=184196
17478 Unreviewed test gardening.
17480 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
17481 (TestWebKitAPI::TEST):
17483 2018-04-04 Youenn Fablet <youenn@apple.com>
17485 Introduce a ThreadSafeRefCounted parameter to ensure being destroyed on the main thread
17486 https://bugs.webkit.org/show_bug.cgi?id=183988
17488 Reviewed by Darin Adler.
17490 * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
17491 (TestWebKitAPI::ThreadSafeRefCountedObject::create):
17492 (TestWebKitAPI::ThreadSafeRefCountedObject::~ThreadSafeRefCountedObject):
17493 (TestWebKitAPI::MainThreadSafeRefCountedObject::create):
17494 (TestWebKitAPI::MainThreadSafeRefCountedObject::~MainThreadSafeRefCountedObject):
17495 (TestWebKitAPI::TEST):
17497 2018-04-04 Ms2ger <Ms2ger@igalia.com>
17499 Test gardening for GTK.
17500 https://bugs.webkit.org/show_bug.cgi?id=184298
17502 Unreviewed test gardening.
17504 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: Add pointer to
17505 https://bugs.webkit.org/show_bug.cgi?id=184295.
17507 2018-04-03 Carlos Garcia Campos <cgarcia@igalia.com>
17509 ASSERTION FAILED: !m_mainFrame->coreFrame()->loader().frameHasLoaded() || !m_pendingNavigationID when reloading page while a page is loading
17510 https://bugs.webkit.org/show_bug.cgi?id=153210
17512 Reviewed by Alex Christensen.
17514 Add unit tests to WebKit C API and WebKitGLib.
17516 * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
17517 (TestWebKitAPI::TEST):
17518 * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
17519 (LoadTwiceAndReloadTest::reloadOnFinishLoad):
17520 (LoadTwiceAndReloadTest::LoadTwiceAndReloadTest):
17521 (LoadTwiceAndReloadTest::~LoadTwiceAndReloadTest):
17522 (LoadTwiceAndReloadTest::waitUntilFinished):
17523 (testWebViewLoadTwiceAndReload):
17526 2018-04-03 Carlos Garcia Campos <cgarcia@igalia.com>
17528 [GTK] Test /webkit/WebKitWebPage/context-menu is failing since r229831
17529 https://bugs.webkit.org/show_bug.cgi?id=184260
17531 Reviewed by Michael Catanzaro.
17533 This is not a regression introduced in r229831, though, it's a bug in the test itself revealed by r229831. We
17534 should wait for the load to complete before trying to show the context menu.
17536 * TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
17537 (testContextMenuWebExtensionMenu):
17539 2018-04-03 Zalan Bujtas <zalan@apple.com>
17541 [LayoutReloaded] Introduce floating to InlineFormattingContext
17542 https://bugs.webkit.org/show_bug.cgi?id=184288
17544 Reviewed by Antti Koivisto.
17546 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
17547 (BlockFormattingContext.prototype._computeFloatingWidth): Deleted.
17548 (BlockFormattingContext.prototype._computeFloatingHeight): Deleted.
17549 * LayoutReloaded/FormattingContext/FormattingContext.js:
17550 (FormattingContext.prototype._computeFloatingWidth):
17551 (FormattingContext.prototype._computeFloatingHeight):
17552 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17553 (InlineFormattingContext.prototype.layout):
17554 (InlineFormattingContext.prototype._handleFloatingBox):
17555 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
17556 (Line.prototype.addFloatingBox):
17558 * LayoutReloaded/test/float-is-inside-inline-formatting-context-simple.html: Added.
17559 * LayoutReloaded/test/index.html:
17561 2018-04-03 Youenn Fablet <youenn@apple.com>
17563 NetworkResourceLoader does not need to expose all redirect response headers
17564 https://bugs.webkit.org/show_bug.cgi?id=184114
17565 <rdar://problem/39010557>
17567 Reviewed by Ryosuke Niwa.
17569 Add an option to dump the number of headers in a response.
17570 This allows validating that filtering does happen or not.
17572 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
17573 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
17574 (WTR::dumpResponseDescriptionSuitableForTestResult):
17575 (WTR::InjectedBundlePage::responseHeaderCount):
17576 (WTR::InjectedBundlePage::willSendRequestForFrame):
17577 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
17578 * WebKitTestRunner/InjectedBundle/TestRunner.h:
17579 (WTR::TestRunner::dumpAllHTTPRedirectedResponseHeaders):
17580 (WTR::TestRunner::shouldDumpAllHTTPRedirectedResponseHeaders const):
17581 * WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
17582 (WTR::InjectedBundlePage::responseHeaderCount):
17583 * WebKitTestRunner/TestController.cpp:
17584 (WTR::TestController::resetPreferencesToConsistentValues):
17586 2018-04-03 Andy Estes <aestes@apple.com>
17588 [Mac] Prioritize file promises over filenames during drag and drop
17589 https://bugs.webkit.org/show_bug.cgi?id=184237
17590 <rdar://problem/38278076>
17592 Reviewed by Wenson Hsieh.
17594 * DumpRenderTree/mac/EventSendingController.mm:
17595 (-[EventSendingController beginDragWithFilePromises:]):
17597 2018-04-03 Brady Eidson <beidson@apple.com>
17599 Make SessionStorage work with process swapping.
17600 https://bugs.webkit.org/show_bug.cgi?id=184270
17602 Reviewed by Andy Estes.
17604 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
17605 (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
17607 2018-04-03 Chris Dumez <cdumez@apple.com>
17609 Drop MainFrame class
17610 https://bugs.webkit.org/show_bug.cgi?id=184191
17612 Reviewed by Darin Adler.
17614 * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
17616 2018-04-03 Charlie Turner <cturner@igalia.com>
17618 [WPE] Add WPE port to garden-o-matic
17619 https://bugs.webkit.org/show_bug.cgi?id=182998
17621 Reviewed by Michael Catanzaro.
17623 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
17624 Add WPE as a port to check.
17625 (config.kPlatforms.string_appeared_here._builderApplies): Use less
17626 surprising equality operator.
17627 (config.kPlatforms.string_appeared_here.resultsDirectoryNameFromBuilderName):
17629 (config.kPlatforms.string_appeared_here.resultsDirectoryForBuildNumber):
17632 2018-04-03 Adrian Perez de Castro <aperez@igalia.com>
17634 [GTK][JHBuild] Tools/gtk/install-dependencies: Replace libxfont with libxfont2 in Arch Linux
17635 https://bugs.webkit.org/show_bug.cgi?id=184258
17637 Reviewed by Carlos Alberto Lopez Perez.
17639 * gtk/install-dependencies: Use libxfont2 on Arch Linux as well.
17641 2018-04-02 Brady Eidson <beidson@apple.com>
17643 Process swapping on navigation needs to handle server redirects.
17644 <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
17646 Reviewed by Alex Christensen.
17648 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
17649 (-[PSONNavigationDelegate webView:didFinishNavigation:]):
17650 (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
17651 (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
17652 (-[PSONScheme addRedirectFromURLString:toURLString:]):
17653 (-[PSONScheme webView:startURLSchemeTask:]):
17655 2018-04-02 Daniel Bates <dabates@apple.com>
17657 Add infrastructure to relax SSL for allowed hosts in DumpRenderTree and WebKitTestRunner
17658 https://bugs.webkit.org/show_bug.cgi?id=184239
17660 Reviewed by Alexey Proskuryakov.
17662 Adds a new optional command line option --allow-any-certificate-for-allowed-hosts (defaults to disabled)
17663 to allow the allowed hosts to accept any HTTPS certificate. You can specify an allowed host
17664 by using the existing command line option --allowed-host.
17666 Currently both DumpRenderTree and WebKitTestRunner relax SSL certificate validation
17667 for 127.0.0.1 and localhost so that we can run HTTPS tests from these hosts using
17668 a self-signed certificate. They do not relax these restrictions for any allowed host,
17669 specified using the optional command line option --allowed-host. For testing purposes
17670 it is useful to be able to run a local HTTPS server with a self-signed certificate and
17671 mimic a non-localhost hostname (by adding an alias(es) for 127.0.0.1 to /etc/hosts).
17672 We should support relaxing SSL restrictions for such testing purposes.
17674 For example, to allow host example.test to present any HTTPS certificate when running
17675 tests you would invoke:
17677 run-webkit-tests --allowed-host example.test --additional-drt-flag '--allow-any-certificate-for-allowed-hosts'
17679 * DumpRenderTree/mac/DumpRenderTree.mm:
17680 (initializeGlobalsFromCommandLineOptions): Parse the command line option --allow-any-certificate-for-allowed-hosts.
17681 (dumpRenderTree): Allow any HTTPS certificate from each allowed host.
17682 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
17683 (WTR::InjectedBundle::didReceiveMessageToPage): Clear out the existing list of allowed hosts
17684 before appending entries to it to avoid growing the list of allowed hosts without bound. Call
17685 platformAllowAnyHTTPSCertificateForAllowedHosts() to apply SSL relaxation for each allowed host.
17686 * WebKitTestRunner/Options.cpp:
17687 (WTR::handleOptionAllowAnyHTTPSCertificateForAllowedHosts): Added.
17688 (WTR::handleOptionAllowedHost): Update code as needed now that Options::allowedHosts is a std::set.
17689 (WTR::OptionsHandler::OptionsHandler):
17690 * WebKitTestRunner/Options.h: Change the data type of allowedHosts from a std::vector to a std::set
17691 so that we can make use of the convenience functon std::set::find() in TestController::canAuthenticateAgainstProtectionSpace().
17692 * WebKitTestRunner/TestController.cpp:
17693 (WTR::TestController::initialize):
17694 (WTR::TestController::canAuthenticateAgainstProtectionSpace): Allow any HTTPS certificate from each allowed host.
17695 * WebKitTestRunner/TestController.h:
17697 2018-04-02 Ryan Haddad <ryanhaddad@apple.com>
17699 Unreviewed, rolling out r230174.
17701 Caused LayoutTests to exit early with assertion failures.
17703 Reverted changeset:
17705 "Process swapping on navigation needs to handle server
17707 https://bugs.webkit.org/show_bug.cgi?id=184142
17708 https://trac.webkit.org/changeset/230174
17710 2018-04-02 Daniel Bates <dabates@apple.com>
17712 Remove pre-Network Session code path for allowing any HTTPS certificate on Mac and iOS
17713 https://bugs.webkit.org/show_bug.cgi?id=184242
17715 Reviewed by Alexey Proskuryakov.
17717 Following r227364 we use the Network Session (NSURLSession) code path by default in
17718 modern WebKit on Mac and iOS. That is, we no longer use {CF, NS}URLConnection in modern
17719 WebKit on these platforms. So, we can remove code that used NSURLRequest SPI to allow
17720 any HTTPS certificate from localhost and 127.0.0.1 when using {CF, NS}URLConnection.
17721 The equivalent functionality is implemented in TestController::canAuthenticateAgainstProtectionSpace().
17723 * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
17724 (WTR::InjectedBundle::platformInitialize):
17725 * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
17726 (WTR::InjectedBundle::platformInitialize):
17728 2018-04-02 Brady Eidson <beidson@apple.com>
17730 Process swapping on navigation needs to handle server redirects.
17731 <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
17733 Reviewed by Alex Christensen.
17735 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
17736 (-[PSONNavigationDelegate webView:didFinishNavigation:]):
17737 (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
17738 (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
17739 (-[PSONScheme addRedirectFromURLString:toURLString:]):
17740 (-[PSONScheme webView:startURLSchemeTask:]):
17742 2018-04-02 Thibault Saunier <tsaunier@igalia.com>
17744 webkitpy: Use current environment value for GST_DEBUG(_FILE) and DOT_DIR env vars
17745 https://bugs.webkit.org/show_bug.cgi?id=184036
17747 Reviewed by Philippe Normand.
17749 Those variables are for debug purpose and should not change the behaviour
17750 itself, and developers expect them to have effect.
17752 * Scripts/webkitpy/port/gtk.py:
17753 (GtkPort.setup_environ_for_server):
17755 2018-04-02 Daniel Bates <dabates@apple.com>
17757 Remove Options constructor and use internal linkage for option handlers
17758 https://bugs.webkit.org/show_bug.cgi?id=184229
17760 Reviewed by Andy Estes.
17762 Use C++11 default initializer syntax to remove the need to explicitly have a constructor
17763 for the struct Options. Use internal linkage for option handler functions as these
17764 are never invoked outside the translation unit they are defined in.
17766 * WebKitTestRunner/Options.cpp:
17767 (WTR::handleOptionNoTimeout):
17768 (WTR::handleOptionVerbose):
17769 (WTR::handleOptionGcBetweenTests):
17770 (WTR::handleOptionPixelTests):
17771 (WTR::handleOptionPrintSupportedFeatures):
17772 (WTR::handleOptionComplexText):
17773 (WTR::handleOptionAcceleratedDrawing):
17774 (WTR::handleOptionRemoteLayerTree):
17775 (WTR::handleOptionShowWebView):
17776 (WTR::handleOptionShowTouches):
17777 (WTR::handleOptionAllowedHost):
17778 (WTR::handleOptionUnmatched):
17779 (WTR::Options::Options): Deleted.
17780 * WebKitTestRunner/Options.h:
17782 2018-04-02 Alejandro G. Castro <alex@igalia.com>
17784 Unreviewed GTK port dependencies fix after r230152.
17786 Add alsa library dependency for gtk.
17788 * gtk/install-dependencies:
17790 2018-04-02 Alejandro G. Castro <alex@igalia.com>
17792 [GTK] Make libwebrtc backend buildable for GTK port
17793 https://bugs.webkit.org/show_bug.cgi?id=178860
17795 Reviewed by Youenn Fablet.
17797 * gstreamer/jhbuild.modules: Modified the libvpx module for the
17798 libwebrtc compilation.
17799 * gtk/install-dependencies: Add libevent as a system requirement.
17800 * Scripts/webkitpy/style/checker.py: Added libwebrtc to the list of third
17801 party libraries with reduced style checks.
17803 2018-04-01 Zalan Bujtas <zalan@apple.com>
17805 [LayoutReloaded] Use containing block's contentBox left edge when the float is to the right.
17806 https://bugs.webkit.org/show_bug.cgi?id=184230
17808 Reviewed by Antti Koivisto.
17810 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17811 (InlineFormattingContext.prototype._mapFloatingPosition):
17812 (InlineFormattingContext):
17813 * LayoutReloaded/test/index.html:
17814 * LayoutReloaded/test/inline-formatting-context-with-floats2.html: Added.
17816 2018-04-01 Zalan Bujtas <zalan@apple.com>
17818 [LayoutReloaded] Right floating box reduces available line width.
17819 https://bugs.webkit.org/show_bug.cgi?id=184226
17821 Reviewed by Antti Koivisto.
17823 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17824 (InlineFormattingContext.prototype._createNewLine):
17825 * LayoutReloaded/test/index.html:
17826 * LayoutReloaded/test/inline-with-floats-right-left-simple.html: Added.
17828 2018-03-31 Zalan Bujtas <zalan@apple.com>
17830 [LayoutReloaded] Floating box reduces line with in inline formatting context
17831 https://bugs.webkit.org/show_bug.cgi?id=184223
17833 Reviewed by Antti Koivisto.
17835 * LayoutReloaded/FormattingContext/FloatingContext.js:
17836 (FloatingContext.prototype.left):
17837 (FloatingContext.prototype.right):
17838 (FloatingContext.prototype._mapDisplayMarginBoxToFormattingRoot):
17839 (FloatingContext.prototype._mapBorderBoxToFormattingRoot):
17840 (FloatingContext.prototype._mapContentBoxToFormattingRoot):
17841 (FloatingContext.prototype.formattingRoot):
17842 (FloatingContext.prototype._floatingState):
17843 (FloatingContext.prototype._formattingRoot): Deleted.
17844 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
17845 (InlineFormattingContext.prototype._createNewLine):
17846 (InlineFormattingContext.prototype._mapFloatingPosition):
17847 (InlineFormattingContext):
17848 * LayoutReloaded/FormattingState/FormattingState.js:
17849 (FormattingState.prototype.displayBox):
17851 * LayoutReloaded/test/index.html:
17852 * LayoutReloaded/test/inline-formatting-context-with-floats.html: Added.
17854 2018-03-31 Zalan Bujtas <zalan@apple.com>
17856 [LayoutReloaded] InlineFormattingState should inherit the floating state from its parent formatting state
17857 https://bugs.webkit.org/show_bug.cgi?id=184220
17859 Reviewed by Antti Koivisto.
17861 If the block container box that initiates an inline formatting context also establishes a block context,
17862 create a new float state, otherwise use the existing one.
17864 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
17865 (BlockFormattingContext.prototype._contentHeight):
17866 * LayoutReloaded/FormattingState/InlineFormattingState.js:
17867 (InlineFormattingState):
17868 * LayoutReloaded/LayoutState.js:
17869 (LayoutState.prototype.establishedFormattingState):
17870 (LayoutState.prototype.formattingStateForBox):
17871 (LayoutState.prototype.formattingState): Deleted.
17872 * LayoutReloaded/Utils.js:
17874 2018-03-31 Zalan Bujtas <zalan@apple.com>
17876 [LayoutReloaded] FloatingContext does not need a parent formatting context.
17877 https://bugs.webkit.org/show_bug.cgi?id=184219
17879 Reviewed by Antti Koivisto.
17881 We don't need the formatting context in the FloatingContext now that margins are moved over to Display.Box.
17882 This is in preparation for being able to create a FloatingContext for an inline formatting context,
17883 when the inline context actually inherits the floating state from its formatting root.
17885 * LayoutReloaded/FormattingContext/FloatingContext.js:
17887 (FloatingContext.prototype._availableSpace):
17888 (FloatingContext.prototype._adjustedFloatingPosition):
17889 (FloatingContext.prototype._addFloatingBox):
17890 (FloatingContext.prototype._formattingContext): Deleted.
17891 * LayoutReloaded/FormattingContext/FormattingContext.js:
17892 (FormattingContext):
17894 2018-03-31 Zalan Bujtas <zalan@apple.com>
17896 [LayoutReloaded] Do not clone Display.Box for FloatingState stacks.
17897 https://bugs.webkit.org/show_bug.cgi?id=184218
17899 Reviewed by Antti Koivisto.
17901 Now that Display.Box is in a tree context, we can't just clone it for the purpose of caching its absolute position.
17903 * LayoutReloaded/DisplayTree/Box.js:
17904 (Display.Box.prototype.clone): Deleted.
17905 * LayoutReloaded/FormattingContext/FloatingContext.js:
17906 (FloatingContext.prototype._positionForFloating):
17907 (FloatingContext.prototype._moveToNextVerticalPosition):
17908 (FloatingContext.prototype._availableSpace):
17909 (FloatingContext.prototype._findFloatingAtVerticalPosition):
17910 (FloatingContext.prototype._adjustedFloatingPosition):
17911 (FloatingContext.prototype._bottom):
17912 (FloatingContext.prototype._addFloatingBox):
17913 (FloatingContext.prototype._mapMarginBoxToFormattingRoot):
17914 (FloatingContext.prototype._mapDisplayMarginBoxToFormattingRoot):
17915 * LayoutReloaded/FormattingState/FloatingState.js:
17916 (FloatingState.prototype.addFloating):
17918 2018-03-31 Zalan Bujtas <zalan@apple.com>
17920 [LayoutReloaded] Remove all FormattingContext::absolute*Box functions.
17921 https://bugs.webkit.org/show_bug.cgi?id=184215
17923 Reviewed by Antti Koivisto.
17925 Use Display.Box instead.
17927 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
17928 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
17929 * LayoutReloaded/FormattingContext/FloatingContext.js:
17930 (FloatingContext.prototype._availableSpace):
17931 (FloatingContext.prototype._adjustedFloatingPosition):
17932 (FloatingContext.prototype._mapBorderBoxToFormattingRoot):
17933 (FloatingContext.prototype._mapContentBoxToFormattingRoot):
17934 * LayoutReloaded/FormattingContext/FormattingContext.js:
17935 (FormattingContext.prototype.absoluteBorderBox): Deleted.
17936 (FormattingContext.prototype.absolutePaddingBox): Deleted.
17937 (FormattingContext.prototype.absoluteContentBox): Deleted.
17938 (FormattingContext.prototype._toAbsolutePosition): Deleted.
17939 (FormattingContext.prototype._toRootAbsolutePosition): Deleted.
17940 * LayoutReloaded/Utils.js:
17941 (Utils.mapPosition):
17944 (Utils.contentBox):
17946 2018-03-31 Zalan Bujtas <zalan@apple.com>
17948 [LayoutReloaded] Remove FormattingContext::absoluteMarginBox
17949 https://bugs.webkit.org/show_bug.cgi?id=184213
17951 Reviewed by Antti Koivisto.
17953 Display.Box already has the margin values.
17955 * LayoutReloaded/FormattingContext/FloatingContext.js:
17956 (FloatingContext.prototype._positionForFloating):
17957 (FloatingContext.prototype._addFloatingBox):
17958 (FloatingContext.prototype._mapMarginBoxToFormattingRoot):
17959 (FloatingContext.prototype._formattingRoot):
17960 * LayoutReloaded/FormattingContext/FormattingContext.js:
17961 (FormattingContext.prototype.absoluteMarginBox): Deleted.
17962 * LayoutReloaded/Utils.js:
17965 2018-03-31 Zalan Bujtas <zalan@apple.com>
17967 [layoutReloaded] Introduce margin to Display.Box
17968 https://bugs.webkit.org/show_bug.cgi?id=184212
17970 Reviewed by Antti Koivisto.
17972 This is in preparation for moving margin box out of formatting context to Display.Box.
17974 * LayoutReloaded/DisplayTree/Box.js:
17976 (Display.Box.prototype.setRect):
17977 (Display.Box.prototype.setTopLeft):
17978 (Display.Box.prototype.setTop):
17979 (Display.Box.prototype.setLeft):
17980 (Display.Box.prototype.setSize):
17981 (Display.Box.prototype.setWidth):
17982 (Display.Box.prototype.setHeight):
17983 (Display.Box.prototype.width):
17984 (Display.Box.prototype.setMarginTop):
17985 (Display.Box.prototype.setMarginLeft):
17986 (Display.Box.prototype.setMarginBottom):
17987 (Display.Box.prototype.setMarginRight):
17988 (Display.Box.prototype.marginTop):
17989 (Display.Box.prototype.marginLeft):
17990 (Display.Box.prototype.marginBottom):
17991 (Display.Box.prototype.marginRight):
17992 (Display.Box.prototype.marginBox):
17993 * LayoutReloaded/FormattingContext/FormattingContext.js:
17994 (FormattingContext.prototype.absoluteMarginBox):
17995 (FormattingContext.prototype._addToLayoutQueue):
17996 * LayoutReloaded/FormattingState/FormattingState.js:
17997 (FormattingState.prototype.createDisplayBox):
17999 2018-03-31 Zalan Bujtas <zalan@apple.com>
18001 [LayoutReloaded] Add tree context to Display.Box
18002 https://bugs.webkit.org/show_bug.cgi?id=184211
18004 Reviewed by Antti Koivisto.
18006 This is preparation for using the Display.Box tree to resolve absolute coordinates.
18008 * LayoutReloaded/DisplayTree/Box.js:
18010 (Display.Box.prototype.setParent):
18011 (Display.Box.prototype.setNextSibling):
18012 (Display.Box.prototype.setPreviousSibling):
18013 (Display.Box.prototype.setFirstChild):
18014 (Display.Box.prototype.setLastChild):
18015 (Display.Box.prototype.parent):
18016 (Display.Box.prototype.nextSibling):
18017 (Display.Box.prototype.previousSibling):
18018 (Display.Box.prototype.firstChild):
18019 (Display.Box.prototype.lastChild):
18020 * LayoutReloaded/FormattingState/FormattingState.js:
18021 (FormattingState.prototype.createDisplayBox):
18023 2018-03-30 Ryosuke Niwa <rniwa@webkit.org>
18025 Copying a list from Microsoft Word to TinyMCE fails when mso-list is the first property
18026 https://bugs.webkit.org/show_bug.cgi?id=182938
18027 <rdar://problem/37683007>
18029 Reviewed by Wenson Hsieh.
18031 Added more assertions to PasteHTML.PreservesMSOList for preserving an inline style which starts with mso-list
18032 or the one which line-breaks right before it.
18034 * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
18035 * TestWebKitAPI/Tests/WebKitCocoa/mso-list.html:
18037 2018-03-29 Ryosuke Niwa <rniwa@webkit.org>
18039 Copying a list from Microsoft Word to TinyMCE fails when mso-list is on tags other than P
18040 https://bugs.webkit.org/show_bug.cgi?id=182954
18041 <rdar://problem/37713141>
18043 Reviewed by Wenson Hsieh.
18045 Added a test case for a HTML generated by Microsoft Word which sets mso-list on h4.
18047 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18048 * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
18049 * TestWebKitAPI/Tests/WebKitCocoa/mso-list-compat-mode.html: Fixed the file path.
18050 * TestWebKitAPI/Tests/WebKitCocoa/mso-list-on-h4.html: Added.
18052 2018-03-29 Ross Kirsling <ross.kirsling@sony.com>
18054 run-jsc-benchmarks should recognize Windows-style build directory structure.
18055 https://bugs.webkit.org/show_bug.cgi?id=184117
18057 Reviewed by Yusuke Suzuki.
18059 * Scripts/run-jsc-benchmarks:
18060 Allow not only bin/jsc but also bin64/jsc.exe.
18062 2018-03-29 Zalan Bujtas <zalan@apple.com>
18064 [LayoutReloaded] Decouple formatting state and context lifetime.
18065 https://bugs.webkit.org/show_bug.cgi?id=184136
18067 Reviewed by Antti Koivisto.
18069 FormattingContext is about the layout logic. We don't need to hold on to it.
18071 * LayoutReloaded/FormattingContext/FloatingContext.js:
18073 (FloatingContext.prototype.computePosition):
18074 (FloatingContext.prototype._positionForClear):
18075 (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
18076 (FloatingContext.prototype._addFloatingBox):
18077 (FloatingContext.prototype._formattingContext):
18078 (FloatingContext.prototype._formattingState):
18079 * LayoutReloaded/FormattingContext/FormattingContext.js:
18080 (FormattingContext):
18081 * LayoutReloaded/FormattingState/BlockFormattingState.js:
18082 (BlockFormattingState):
18083 * LayoutReloaded/FormattingState/FloatingState.js:
18085 (FloatingState.prototype.addFloating):
18086 (FloatingState.prototype.formattingState):
18087 (FloatingState.prototype.formattingContext): Deleted.
18088 * LayoutReloaded/FormattingState/FormattingState.js:
18090 (FormattingState.prototype.formattingContext): Deleted.
18091 * LayoutReloaded/FormattingState/InlineFormattingState.js:
18092 (InlineFormattingState):
18093 * LayoutReloaded/LayoutState.js:
18094 (LayoutState.prototype.layout):
18095 (LayoutState.prototype.formattingContext):
18097 2018-03-28 Zalan Bujtas <zalan@apple.com>
18099 [LayoutReloaded] Introduce FloatingState.
18100 https://bugs.webkit.org/show_bug.cgi?id=184126
18102 Reviewed by Antti Koivisto.
18104 It holds the floating state (left/right floating stack) for a given formatting state (Block or Inline).
18105 (FormattingState -> FloatingState/FormattingContext -> FloatingContext)
18107 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
18108 (BlockFormattingContext):
18109 * LayoutReloaded/FormattingContext/FloatingContext.js:
18111 (FloatingContext.prototype.computePosition):
18112 (FloatingContext.prototype.bottom):
18113 (FloatingContext.prototype._positionForFloating):
18114 (FloatingContext.prototype._positionForClear):
18115 (FloatingContext.prototype._findInnerMostLeftAndRight):
18116 (FloatingContext.prototype._isEmpty):
18117 (FloatingContext.prototype._floatingState):
18118 (FloatingContext.prototype._formattingContext):
18119 (FloatingContext.prototype._lastFloating):
18120 (FloatingContext.prototype._leftFloatingStack):
18121 (FloatingContext.prototype._rightFloatingStack):
18122 (FloatingContext.prototype._addFloating): Deleted.
18123 * LayoutReloaded/FormattingContext/FormattingContext.js:
18124 (FormattingContext):
18125 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
18126 (InlineFormattingContext):
18127 * LayoutReloaded/FormattingState/BlockFormattingState.js:
18128 (BlockFormattingState):
18129 * LayoutReloaded/FormattingState/FloatingState.js: Copied from Tools/LayoutReloaded/FormattingState/InlineFormattingState.js.
18131 (FloatingState.prototype.addFloating):
18132 (FloatingState.prototype.leftFloatingStack):
18133 (FloatingState.prototype.rightFloatingStack):
18134 (FloatingState.prototype.lastFloating):
18135 (FloatingState.prototype.formattingContext):
18136 * LayoutReloaded/FormattingState/FormattingState.js:
18138 (FormattingState.prototype.floatingState):
18139 * LayoutReloaded/FormattingState/InlineFormattingState.js:
18140 (InlineFormattingState):
18141 * LayoutReloaded/test/index.html:
18143 2018-03-28 Zalan Bujtas <zalan@apple.com>
18145 [LayoutReloaded] Convert floating left/right stack display boxes absolute to the formatting context's root.
18146 https://bugs.webkit.org/show_bug.cgi?id=184123
18148 Reviewed by Antti Koivisto.
18150 1. The left/right floating array should hold the Display.Box (and not the Layout.Box)
18151 2. Clone the Display.Box and convert its rect absolute to the formatting context's root so that we
18152 don't have to keep converting the coordinates while computing the positions.
18154 * LayoutReloaded/DisplayTree/Box.js:
18155 (Display.Box.prototype.clone):
18156 (Display.Box.prototype.setRect):
18157 * LayoutReloaded/FormattingContext/FloatingContext.js:
18158 (FloatingContext.prototype.computePosition):
18159 (FloatingContext.prototype._positionForFloating):
18160 (FloatingContext.prototype._addFloating):
18161 (FloatingContext.prototype._moveToNextVerticalPosition):
18162 (FloatingContext.prototype._availableSpace):
18163 (FloatingContext.prototype._findFloatingAtVerticalPosition):
18164 (FloatingContext.prototype._adjustedFloatingPosition):
18165 (FloatingContext.prototype._bottom):
18167 2018-03-28 Chris Dumez <cdumez@apple.com>
18169 Unreviewed iOS build fix after r230060.
18171 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
18173 2018-03-28 Chris Dumez <cdumez@apple.com>
18175 Unreviewed, disable new window.open() API tests introduced in r230051 on iOS.
18177 I will investigate if this is testable on iOS.
18179 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
18181 2018-03-28 Chris Dumez <cdumez@apple.com>
18183 Do process swap when opening a cross-origin URL via window.open(url, '_blank', 'noopener')
18184 https://bugs.webkit.org/show_bug.cgi?id=183962
18185 <rdar://problem/38817833>
18187 Reviewed by Brady Eidson.
18189 Add API test coverage.
18191 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
18192 (-[PSONUIDelegate initWithNavigationDelegate:]):
18193 (-[PSONUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
18195 2018-03-28 Carlos Eduardo Ramalho <cadubentzen@gmail.com>
18197 Add Carlos Eduardo Ramalho as contributor
18198 https://bugs.webkit.org/show_bug.cgi?id=184082
18200 Reviewed by Carlos Alberto Lopez Perez.
18202 * Scripts/webkitpy/common/config/contributors.json:
18204 2018-03-28 Wenson Hsieh <wenson_hsieh@apple.com>
18206 [Extra zoom mode] Make boosted text autosizing values switchable at runtime
18207 https://bugs.webkit.org/show_bug.cgi?id=184092
18208 <rdar://problem/38939917>
18210 Reviewed by Tim Horton.
18212 Add an API test to check that toggling the boosted text autosizing preference causes text to lay out larger than
18213 it would with normal text autosizing.
18215 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18216 * TestWebKitAPI/Tests/ios/TextAutosizingBoost.mm: Added.
18219 2018-03-28 Zalan Bujtas <zalan@apple.com>
18221 [LayoutReloaded] InlineFormattingContext::_handleText should support runs on multiple lines
18222 https://bugs.webkit.org/show_bug.cgi?id=184101
18224 Reviewed by Antti Koivisto.
18226 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
18227 (InlineFormattingContext):
18228 (InlineFormattingContext.prototype.layout):
18229 (InlineFormattingContext.prototype._handleText):
18230 (InlineFormattingContext.prototype._createNewLine):
18231 * LayoutReloaded/test/index.html:
18232 * LayoutReloaded/test/simple-multiline-text.html: Added.
18234 2018-03-28 Zalan Bujtas <zalan@apple.com>
18236 [LayoutReloaded] Add InlineTextBreaker::skipLeadingWhitespaceIfNeeded
18237 https://bugs.webkit.org/show_bug.cgi?id=184099
18239 Reviewed by Antti Koivisto.
18241 * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
18243 2018-03-27 Carlos Garcia Campos <cgarcia@igalia.com>
18245 [GLIB] Add JSCWeakValue to JavaScriptCore GLib API
18246 https://bugs.webkit.org/show_bug.cgi?id=184041
18248 Reviewed by Michael Catanzaro.
18250 Add test case for JSCWeakValue.
18252 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
18253 (weakValueClearedCallback):
18254 (testJSCWeakValue):
18257 2018-03-27 Zalan Bujtas <zalan@apple.com>
18259 [LayoutReloaded] Start using window.collectTextRuns() to layout text lines in inline formatting context
18260 https://bugs.webkit.org/show_bug.cgi?id=184070
18262 Reviewed by Antti Koivisto.
18264 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
18265 (InlineFormattingContext.prototype._handleText):
18266 (InlineFormattingContext.prototype._commitLine):
18267 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
18268 (Line.prototype.addTextLineBox):
18270 (Line.prototype.addLineBox): Deleted.
18271 * LayoutReloaded/FormattingState/BlockFormattingState.js:
18272 (BlockFormattingState):
18273 * LayoutReloaded/FormattingState/FormattingState.js:
18274 (FormattingState.prototype.displayBox):
18276 (FormattingState.prototype._setFormattingContext): Deleted.
18277 * LayoutReloaded/FormattingState/InlineFormattingState.js:
18278 (InlineFormattingState):
18279 * LayoutReloaded/LayoutTree/Text.js:
18280 (Text.prototype.content):
18281 * LayoutReloaded/Utils.js:
18283 (Utils.textRunsForLine):
18284 (Utils._dumpLines.):
18285 (Utils._dumpLines):
18286 * LayoutReloaded/test/simple-inline-text.html:
18288 2018-03-27 Eric Carlson <eric.carlson@apple.com>
18290 https://bugs.webkit.org/show_bug.cgi?id=183876
18291 <rdar://problem/38726459>
18293 Unreviewed, fix for the test added in r229995 in the iOS simulator.
18295 * TestWebKitAPI/Tests/WebKitCocoa/AVFoundationPreference.mm:
18296 (TestWebKitAPI::AVFoundationPref::testWithPreference):
18298 2018-03-27 Jiewen Tan <jiewen_tan@apple.com>
18300 [WebAuthN] Implement authenticatorGetAssertion
18301 https://bugs.webkit.org/show_bug.cgi?id=183881
18302 <rdar://problem/37258628>
18304 Reviewed by Brent Fulgham.
18306 * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm:
18307 (TestWebKitAPI::getTestKey):
18308 (TestWebKitAPI::addTestKeyToKeychain):
18309 (TestWebKitAPI::LAEvaluatePolicyFailedSwizzler::evaluatePolicyFailed):
18310 (TestWebKitAPI::LAEvaluatePolicyPassedSwizzler::evaluatePolicyPassed):
18311 (TestWebKitAPI::LAEvaluateAccessControlFailedSwizzler::LAEvaluateAccessControlFailedSwizzler):
18312 (TestWebKitAPI::LAEvaluateAccessControlFailedSwizzler::evaluateAccessControlFailed):
18313 (TestWebKitAPI::LAEvaluateAccessControlPassedSwizzler::LAEvaluateAccessControlPassedSwizzler):
18314 (TestWebKitAPI::LAEvaluateAccessControlPassedSwizzler::evaluateAccessControlPassed):
18315 (TestWebKitAPI::TEST):
18317 2018-03-27 Brian Burg <bburg@apple.com>
18319 REGRESSION(r229937): WebDriver tests no longer run, test runner hangs when launching wpt web server
18320 https://bugs.webkit.org/show_bug.cgi?id=184056
18321 <rdar://problem/38925058>
18323 Reviewed by Timothy Hatcher and Youenn Fablet.
18325 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
18326 (WebDriverW3CWebServer.start):
18327 The config key used in upstream WPT has changed from 'host' to 'browser_host'.
18329 2018-03-27 Timothy Hatcher <timothy@hatcher.name>
18331 Update my email address in contributors.json and scripts
18332 https://bugs.webkit.org/show_bug.cgi?id=184054
18334 * Scripts/validate-committer-lists:
18335 (CommitterListFromGit):
18336 * Scripts/webkitpy/common/config/contributors.json:
18338 2018-03-27 Eric Carlson <eric.carlson@apple.com>
18340 Make AVFoundationEnabled preference available on iOS
18341 https://bugs.webkit.org/show_bug.cgi?id=183876
18342 <rdar://problem/38726459>
18344 Reviewed by Youenn Fablet.
18346 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18347 * TestWebKitAPI/Tests/WebKit/video.html: Added.
18348 * TestWebKitAPI/Tests/WebKitCocoa/AVFoundationPreference.mm: Added.
18349 (-[PreferenceTestMessageHandler userContentController:didReceiveScriptMessage:]):
18350 (TestWebKitAPI::AVFoundationPref::SetUp):
18351 (TestWebKitAPI::AVFoundationPref::testWithPreference):
18352 (TestWebKitAPI::TEST_F):
18354 2018-03-26 Brent Fulgham <bfulgham@apple.com>
18356 Warn against cookie access in the WebContent process using ProcessPrivilege assertions
18357 https://bugs.webkit.org/show_bug.cgi?id=183911
18358 <rdar://problem/38762306>
18360 Reviewed by Youenn Fablet.
18362 Add a set of ProcessPrivilege assertions to enforce the rule that the WebContent process
18363 should never call Cookie API directly. That should only happen in the Networking or
18366 * DumpRenderTree/mac/DumpRenderTree.mm:
18367 (DumpRenderTreeMain):
18368 * TestWebKitAPI/TestsController.cpp:
18369 (TestWebKitAPI::TestsController::TestsController):
18370 * WebKitTestRunner/TestController.cpp:
18371 (WTR::TestController::initialize):
18373 2018-03-26 Zalan Bujtas <zalan@apple.com>
18375 [LayoutReloaded] Add InlineText DOM interface and dependencies
18376 https://bugs.webkit.org/show_bug.cgi?id=184010
18378 Reviewed by Antti Koivisto.
18380 to help inline text layout.
18382 * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
18384 2018-03-25 Carlos Garcia Campos <cgarcia@igalia.com>
18386 [GTK][WPE] Add API to convert between DOM and JSCValue
18387 https://bugs.webkit.org/show_bug.cgi?id=183448
18389 Reviewed by Michael Catanzaro.
18391 Add unit tests for non-deprecated DOM API and switch existing tests to use non-deprecated API except for the
18392 ones that test the deprecated API.
18394 * TestWebKitAPI/Tests/WebKitGLib/DOMElementTest.cpp: Added.
18395 (DOMElementTest::create):
18396 (DOMElementTest::testAutoFill):
18398 * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp: Added.
18399 (WebKitWebEditorTest::create):
18400 (WebKitWebEditorTest::selectionChangedCallback):
18401 (WebKitWebEditorTest::testSelectionchanged):
18403 * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
18404 (WebKitFrameTest::testJavaScriptValues):
18406 * TestWebKitAPI/Tests/WebKitGLib/TestDOMElement.cpp: Renamed from Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMObjectPrivate.h.
18407 (testWebKitDOMElementAutoFill):
18410 * TestWebKitAPI/Tests/WebKitGLib/TestEditor.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKitGtk/TestEditor.cpp.
18411 * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
18412 (testWebKitFrameJavaScriptValues):
18414 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
18415 (inputElementIsUserEdited):
18416 (testWebExtensionInputElementIsUserEdited):
18417 (testWebExtensionFormSubmissionSteps):
18419 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
18420 (documentLoadedCallback):
18422 (contextMenuCallback):
18423 (consoleMessageSentCallback):
18424 (formControlsAssociatedCallback):
18425 (willSubmitFormCallback):
18426 (pageCreatedCallback):
18427 (methodCallCallback):
18428 * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
18430 (webProcessTestRunnerFinalize):
18431 (checkLeaksAtExit):
18432 * TestWebKitAPI/Tests/WebKitGtk/AutocleanupsTest.cpp:
18433 (AutocleanupsTest::testWebProcessAutocleanups):
18434 * TestWebKitAPI/Tests/WebKitGtk/DOMClientRectTest.cpp:
18435 * TestWebKitAPI/Tests/WebKitGtk/DOMNodeFilterTest.cpp:
18436 * TestWebKitAPI/Tests/WebKitGtk/DOMNodeTest.cpp:
18437 * TestWebKitAPI/Tests/WebKitGtk/DOMXPathNSResolverTest.cpp:
18438 * TestWebKitAPI/Tests/WebKitGtk/EditorTest.cpp: Removed.
18439 * TestWebKitAPI/glib/CMakeLists.txt:
18440 * TestWebKitAPI/glib/PlatformGTK.cmake:
18441 * TestWebKitAPI/glib/PlatformWPE.cmake:
18443 2018-03-24 Jonathan Bedard <jbedard@apple.com>
18445 webkitpy: Unrecognized mac versions always use WebKitTestRunner
18446 https://bugs.webkit.org/show_bug.cgi?id=183681
18447 <rdar://problem/38509162>
18449 Reviewed by Daniel Bates.
18451 When an unrecognized version is used, we were unconditionally adding '-wk2'
18452 to the mac version name. This would mean that the port object would always
18453 use WebKitTestRunner as the driver, even if DumpRenderTree was explicitly
18456 * Scripts/webkitpy/port/apple.py:
18457 (ApplePort.determine_full_port_name): Only add wk2 to port names if
18458 WebKitTestRunner is specified.
18459 * Scripts/webkitpy/port/mac.py:
18460 (MacPort.__init__): Compare length of split string, and do not treat wk2 as a
18462 * Scripts/webkitpy/port/mac_unittest.py:
18464 (MacTest.test_factory_with_future_version): Confirm that future versions correctly
18465 assign the driver and have undefined version names.
18466 (MacTest.test_factory_with_portname_version): Confirm that general versions correctly assign
18467 the driver and have defined versions.
18468 (MacTest.test_factory_with_portname_wk2): Ensure that mac ports ending in 'wk2' set
18469 the driver to be WebKitTestRunner even if webkit_test_runner=False.
18471 2018-03-23 Zan Dobersek <zdobersek@igalia.com>
18473 Fix the run-benchmark script, properly specifying the plan directory
18474 where the Skipped file is located.
18476 Rubber-stamped by Carlos Alberto Lopez Perez.
18478 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
18481 2018-03-23 Tim Horton <timothy_horton@apple.com>
18483 Fix the build with no pasteboard
18484 https://bugs.webkit.org/show_bug.cgi?id=183973
18486 Reviewed by Dan Bernstein.
18488 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18490 2018-03-23 Youenn Fablet <youenn@apple.com>
18492 Update WPT tools to a1ec330
18493 https://bugs.webkit.org/show_bug.cgi?id=183934
18495 Reviewed by Chris Dumez.
18497 Update script to run WPT server according updated WPT tools.
18499 * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
18501 * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
18505 2018-03-23 Sihui Liu <sihui_liu@apple.com>
18507 Local storage getItem() for an empty string returned UNDEFINED value.
18508 https://bugs.webkit.org/show_bug.cgi?id=69138
18509 <rdar://problem/13410974>
18511 Reviewed by Brady Eidson.
18513 Add API test coverage.
18515 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18516 * TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm: Added.
18517 (-[LocalStorageMessageHandler userContentController:didReceiveScriptMessage:]):
18519 * TestWebKitAPI/Tests/WebKitCocoa/localstorage-empty-string-value.html: Added.
18521 2018-03-23 Chris Dumez <cdumez@apple.com>
18523 Promptly terminate service worker processes when they are no longer needed
18524 https://bugs.webkit.org/show_bug.cgi?id=183873
18525 <rdar://problem/38676995>
18527 Reviewed by Youenn Fablet.
18529 Add API test coverage.
18531 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
18533 2018-03-23 Brady Eidson <beidson@apple.com>
18535 Go to back/forward list items after a process-swapped navigation.
18536 <rdar://problem/38690544> and https://bugs.webkit.org/show_bug.cgi?id=183920
18538 Reviewed by Andy Estes.
18540 Add a new API test that does some process-swapping navigations (including a back navigation)
18541 and verifies the state of the engine afterwards.
18543 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
18544 (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
18545 (-[PSONScheme initWithBytes:]):
18546 (-[PSONScheme webView:startURLSchemeTask:]):
18551 2018-03-23 Brendan McLoughlin <brendan@bocoup.com>
18553 Lint web-platform-tests changes with the wpt linter before exporting
18554 https://bugs.webkit.org/show_bug.cgi?id=183796
18556 Reviewed by Youenn Fablet.
18558 * Scripts/webkitpy/w3c/test_exporter.py:
18559 (TestExporter.__init__):
18560 (TestExporter.do_export):
18561 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
18562 (TestExporterTest.MockWPTLinter):
18563 (TestExporterTest.MockWPTLinter.__init__):
18564 (TestExporterTest.MockWPTLinter.lint):
18565 (TestExporterTest.test_export):
18566 (TestExporterTest.test_export_with_specific_branch):
18567 * Scripts/webkitpy/w3c/wpt_linter.py: Added.
18569 (WPTLinter.__init__):
18572 2018-03-23 David Kilzer <ddkilzer@apple.com>
18574 Stop using dispatch_set_target_queue()
18575 <https://webkit.org/b/183908>
18576 <rdar://problem/33553533>
18578 Reviewed by Daniel Bates.
18580 * Scripts/webkitpy/style/checkers/cpp.py:
18581 (check_language): Add check for use of
18582 dispatch_set_target_queue().
18583 (CppChecker): Add 'runtime/dispatch_set_target_queue' category.
18584 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
18585 (CppStyleTest): Add test.
18587 2018-03-23 Youenn Fablet <youenn@apple.com>
18589 Allow fully whitelisted plug-ins to match non HTTP URLs
18590 https://bugs.webkit.org/show_bug.cgi?id=183938
18591 rdar://problem/38534312
18593 Reviewed by Chris Dumez.
18595 * TestWebKitAPI/Tests/WebCore/URL.cpp:
18596 (TestWebKitAPI::TEST_F):
18598 2018-03-23 JF Bastien <jfbastien@apple.com>
18600 dump-class-layout is just wrong
18601 https://bugs.webkit.org/show_bug.cgi?id=183939
18603 Reviewed by Yusuke Suzuki.
18605 Looks like r229291 contained a half-renamed variable in it, so it
18608 * Scripts/dump-class-layout:
18610 (verify_type_recursive):
18612 2018-03-23 Carlos Garcia Campos <cgarcia@igalia.com>
18614 Unreviewed. Run JSC GLib API tests in GTK+ and WPE bots.
18616 The test runners were still considering the JSC tests as google tests, but they are now GLib tests.
18618 * Scripts/run-gtk-tests:
18619 (GtkTestRunner.is_glib_test):
18620 (GtkTestRunner.is_google_test):
18621 * Scripts/run-wpe-tests:
18622 (WPETestRunner.is_glib_test):
18623 (WPETestRunner.is_google_test):
18625 2018-03-22 Daniel Bates <dabates@apple.com>
18627 Expose SchemeRegistry::registerAsCanDisplayOnlyIfCanRequest() as WebKit SPI
18628 https://bugs.webkit.org/show_bug.cgi?id=183907
18629 <rdar://problem/38759127>
18631 Reviewed by Alex Christensen.
18633 Adds unit tests for the modern Objective-C and C SPI to ensure we do not regress it.
18635 We use the deprecated -[WKBrowsingContextController registerSchemeForCustomProtocol:]
18636 in both the modern Objective-C API and C API tests to share code. Once we no longer
18637 need to support the C API we should remove the tests and transition the modern Objective-
18638 C tests to use -[WKWebViewConfiguration setURLSchemeHandler:forURLScheme:].
18640 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
18641 * TestWebKitAPI/Tests/WebKitCocoa/SchemeRegistry.mm: Added.
18642 (+[EchoURLProtocol canInitWithRequest:]):
18643 (+[EchoURLProtocol canonicalRequestForRequest:]):
18644 (+[EchoURLProtocol requestIsCacheEquivalent:toRequest:]):
18645 (-[EchoURLProtocol startLoading]):
18646 (-[EchoURLProtocol stopLoading]):
18647 (-[WKContextRegisterURLSchemeAsCanDisplayOnlyIfCanRequestLoadDelegate browsingContextController:didFailProvisionalLoadWithError:]):
18648 (-[WKContextRegisterURLSchemeAsCanDisplayOnlyIfCanRequestLoadDelegate browsingContextControllerDidFinishLoad:]):
18649 (TestWebKitAPI::TEST):
18651 2018-03-22 Adrian Perez de Castro <aperez@igalia.com>
18653 [WPE] Enable WOFF2 support
18654 https://bugs.webkit.org/show_bug.cgi?id=178158
18656 Reviewed by Frédéric Wang.
18658 * wpe/jhbuild.modules: Add "brotli" and "woff2" to the JHBuild moduleset.
18660 2018-03-22 Brendan McLoughlin <brendan@bocoup.com>
18662 Do not export web-platform-test files generated by the wpt importer to assist the webkit test runner
18663 https://bugs.webkit.org/show_bug.cgi?id=183916
18665 Reviewed by Youenn Fablet.
18667 * Scripts/webkitpy/w3c/test_exporter.py:
18668 (TestExporter.create_branch_with_patch):
18669 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
18670 (TestExporterTest.test_export):
18671 (TestExporterTest.test_export_with_specific_branch):
18673 2018-03-22 Tim Horton <timothy_horton@apple.com>
18675 Improve readability of WebCore's OTHER_LDFLAGS
18676 https://bugs.webkit.org/show_bug.cgi?id=183909
18677 <rdar://problem/38760992>
18679 Reviewed by Dan Bernstein.
18681 * TestWebKitAPI/Configurations/Base.xcconfig:
18682 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18684 2018-03-21 Fujii Hironori <Hironori.Fujii@sony.com>
18686 Unreviewed. Marked myself as a committer.
18688 * Scripts/webkitpy/common/config/contributors.json:
18690 2018-03-21 Yoshiaki Jitsukawa <yoshiaki.jitsukawa@sony.com>
18692 Unreviewed, make the email address of Yoshiaki Jitsukawa all lower case.
18694 * Scripts/webkitpy/common/config/contributors.json:
18696 2018-03-21 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
18698 Unreviewed, add myself as a WebKit committer.
18700 * Scripts/webkitpy/common/config/contributors.json:
18702 2018-03-21 Chris Dumez <cdumez@apple.com>
18704 ScrollViewInsetTests.RestoreInitialContentOffsetAfterCrash API test is failing with async delegates
18705 https://bugs.webkit.org/show_bug.cgi?id=183787
18707 Reviewed by Wenson Hsieh.
18709 Add API test coverage.
18711 * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
18712 (-[AsyncPolicyDelegateForInsetTest webView:didFinishNavigation:]):
18713 (-[AsyncPolicyDelegateForInsetTest webView:decidePolicyForNavigationAction:decisionHandler:]):
18714 (-[AsyncPolicyDelegateForInsetTest webView:decidePolicyForNavigationResponse:decisionHandler:]):
18715 (-[AsyncPolicyDelegateForInsetTest webViewWebContentProcessDidTerminate:]):
18716 (TestWebKitAPI::TEST):
18718 2018-03-21 Chris Dumez <cdumez@apple.com>
18720 Fix DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop to use synchronouslyLoadTestPageNamed
18721 https://bugs.webkit.org/show_bug.cgi?id=183858
18723 Reviewed by Wenson Hsieh.
18725 Fix DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop to use synchronouslyLoadTestPageNamed
18726 instead of loadTestPageNamed because injecting script.
18728 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
18729 (TestWebKitAPI::TEST):
18731 2018-03-21 Zalan Bujtas <zalan@apple.com>
18733 [LayoutReloaded] Enable formatting state for InlineFormattingContext
18734 https://bugs.webkit.org/show_bug.cgi?id=183853
18736 Reviewed by Antti Koivisto.
18738 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
18739 (BlockFormattingContext.prototype._contentHeight):
18740 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
18741 (InlineFormattingContext):
18742 (InlineFormattingContext.prototype.layout):
18743 (InlineFormattingContext.prototype._createNewLine):
18744 * LayoutReloaded/LayoutState.js:
18745 (LayoutState.prototype.formattingState):
18746 * LayoutReloaded/README.md:
18747 * LayoutReloaded/Utils.js:
18749 * LayoutReloaded/test/index.html:
18750 * LayoutReloaded/test/simple-inline-text.html: Added.
18752 2018-03-21 Zalan Bujtas <zalan@apple.com>
18754 [LayoutReloaded] Move inline lines to InlineFormattingState.
18755 https://bugs.webkit.org/show_bug.cgi?id=183814
18757 Reviewed by Antti Koivisto.
18759 InlineFormattingContext is not supposed to hold state.
18761 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
18762 (InlineFormattingContext):
18763 (InlineFormattingContext.prototype._commitLine):
18764 (InlineFormattingContext.prototype._createNewLine):
18765 (InlineFormattingContext.prototype.lines): Deleted.
18766 (InlineFormattingContext.prototype._initializeLine): Deleted.
18767 * LayoutReloaded/FormattingState/InlineFormattingState.js:
18768 (InlineFormattingState):
18769 (InlineFormattingState.prototype.lines):
18770 (InlineFormattingState.prototype.appendLine):
18772 2018-03-21 Ms2ger <Ms2ger@igalia.com>
18774 [WPE] Disable most of TestWebKitFaviconDatabase.
18775 https://bugs.webkit.org/show_bug.cgi?id=183813
18777 Unreviewed test gardening.
18779 The relevant APIs were mostly removed in r223953, making this test
18780 time out consistently.
18782 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
18784 2018-03-21 Carlos Garcia Campos <cgarcia@igalia.com>
18786 [GTK][WPE] JSC bindings not introspectable
18787 https://bugs.webkit.org/show_bug.cgi?id=136989
18789 Reviewed by Michael Catanzaro.
18791 Use the new API instead of the deprecated one.
18793 * MiniBrowser/gtk/main.c:
18794 (aboutDataScriptMessageReceivedCallback):
18795 * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
18796 (WebKitFrameTest::testJavaScriptContext):
18797 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
18798 (testWebViewRunJavaScript):
18799 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
18800 (consoleMessageSentCallback):
18802 (windowObjectCleared):
18803 (methodCallCallback):
18804 * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
18806 (webProcessTestRunnerFinalize):
18807 (windowObjectClearedCallback):
18808 * TestWebKitAPI/glib/PlatformGTK.cmake:
18809 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
18810 (WebViewTest::javascriptResultToCString):
18811 (WebViewTest::javascriptResultToNumber):
18812 (WebViewTest::javascriptResultToBoolean):
18813 (WebViewTest::javascriptResultIsNull):
18814 (WebViewTest::javascriptResultIsUndefined):
18816 2018-03-21 Carlos Garcia Campos <cgarcia@igalia.com>
18818 [GTK][WPE] Initial implementation of JavaScriptCore glib bindings
18819 https://bugs.webkit.org/show_bug.cgi?id=164061
18821 Reviewed by Michael Catanzaro.
18823 Add unit tests for the new API and generate the API documentation with generate-gtkdoc.
18825 * Scripts/webkitpy/style/checker.py: Ignore some style errors in public GLib API headers.
18826 * TestWebKitAPI/PlatformGTK.cmake:
18827 * TestWebKitAPI/PlatformWPE.cmake:
18828 * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp: Added.
18829 (LeakChecker::~LeakChecker):
18830 (LeakChecker::watch):
18831 (ExceptionHandler::ExceptionHandler):
18832 (ExceptionHandler::~ExceptionHandler):
18833 (ExceptionHandler::push):
18834 (ExceptionHandler::pop):
18835 (jscContextGarbageCollect):
18840 (doubleAndSetInResult):
18845 (fooCreateWithFoo):
18853 (getMultiplyFooAsync):
18860 (testJSCPrototypes):
18862 (testJSCExceptions):
18865 (testJSCGarbageCollector):
18866 (testsJSCVirtualMachine):
18867 (testsJSCAutocleanups):
18869 * gtk/generate-gtkdoc:
18870 (get_generator_for_config):
18872 2018-03-20 Tim Horton <timothy_horton@apple.com>
18874 Enable the minimal simulator feature flag when appropriate
18875 https://bugs.webkit.org/show_bug.cgi?id=183807
18877 Reviewed by Dan Bernstein.
18879 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
18881 2018-03-20 Zalan Bujtas <zalan@apple.com>
18883 [LayoutReloaded] Disconnect Display.Box from Layout.Box
18884 https://bugs.webkit.org/show_bug.cgi?id=183805
18886 Reviewed by Antti Koivisto.
18888 Display.Box is only accessed through the FormattingState.
18890 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
18891 (BlockFormattingContext):
18892 (BlockFormattingContext.prototype.layout):
18893 (BlockFormattingContext.prototype._placeInFlowPositionedChildren):
18894 (BlockFormattingContext.prototype._layoutOutOfFlowDescendants):
18895 (BlockFormattingContext.prototype._adjustBottomWithFIXME):
18896 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
18897 * LayoutReloaded/FormattingContext/FormattingContext.js:
18898 (FormattingContext):
18899 (FormattingContext.prototype.formattingRoot):
18900 (FormattingContext.prototype.formattingState):
18901 (FormattingContext.prototype.layoutState):
18902 (FormattingContext.prototype._toAbsolutePosition):
18903 (FormattingContext.prototype._toRootAbsolutePosition):
18904 (FormattingContext.prototype._addToLayoutQueue):
18905 (FormattingContext.prototype.displayBox):
18906 (FormattingContext.prototype._outOfFlowDescendants):
18907 (FormattingContext.prototype.rootContainer): Deleted.
18908 (FormattingContext.prototype.layoutContext): Deleted.
18909 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
18910 (InlineFormattingContext):
18911 (InlineFormattingContext.prototype.layout):
18912 (InlineFormattingContext.prototype._initializeLine):
18913 * LayoutReloaded/FormattingState/BlockFormattingState.js:
18914 (BlockFormattingState):
18915 * LayoutReloaded/FormattingState/FormattingState.js:
18917 (FormattingState.prototype.formattingRoot):
18918 (FormattingState.prototype.layoutState):
18919 (FormattingState.prototype.createDisplayBox):
18920 (FormattingState.prototype.displayBoxMap):
18921 (FormattingState.prototype.displayBox):
18922 (FormattingState.prototype.layoutContext): Deleted.
18923 * LayoutReloaded/FormattingState/InlineFormattingState.js:
18924 (InlineFormattingState):
18925 * LayoutReloaded/Layout.js:
18927 * LayoutReloaded/LayoutReloaded.xcworkspace/contents.xcworkspacedata:
18928 * LayoutReloaded/LayoutState.js: Renamed from Tools/LayoutReloaded/LayoutContext.js.
18930 (LayoutState.prototype.layout):
18931 (LayoutState.prototype._createFormattingState):
18932 (LayoutState.prototype.formattingStates):
18933 (LayoutState.prototype.initialDisplayBox):
18934 * LayoutReloaded/LayoutTree/Box.js:
18935 (Layout.Box.prototype.isOutOfFlowPositioned):
18936 (Layout.Box.prototype.containingBlock):
18937 (Layout.Box.prototype.setDisplayBox): Deleted.
18938 (Layout.Box.prototype.displayBox): Deleted.
18939 * LayoutReloaded/Utils.js:
18940 (Utils.layoutTreeDump):
18941 (Utils._findDisplayBox):
18944 * LayoutReloaded/misc/headers/BlockFormattingContext.h:
18945 * LayoutReloaded/misc/headers/FormattingContext.h:
18946 * LayoutReloaded/misc/headers/LayoutContext.h:
18947 * LayoutReloaded/test/index.html:
18949 2018-03-19 Ryosuke Niwa <rniwa@webkit.org>
18951 Expose content attributes on _WKLinkIconParameters
18952 https://bugs.webkit.org/show_bug.cgi?id=183768
18954 Reviewed by Alex Christensen.
18956 Expanded the basic test case for _WKLinkIconParameters's properties including newly added "attributes".
18958 * TestWebKitAPI/Tests/WebKitCocoa/IconLoadingDelegate.mm:
18959 (IconLoading.DefaultFavicon):
18961 2018-03-20 Wenson Hsieh <wenson_hsieh@apple.com>
18963 Add AssistedNodeInformation plumbing for form control placeholder text and label text
18964 https://bugs.webkit.org/show_bug.cgi?id=183802
18965 <rdar://problem/38686273>
18967 Reviewed by Tim Horton.
18969 Adds a new API test to exercise new placeholder and label SPI on _WKFocusedFormElement.
18971 * TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm:
18972 (-[InputDelegate _webView:focusShouldStartInputSession:]):
18973 (-[InputDelegate shouldStartInputSessionHandler]):
18974 (-[InputDelegate setShouldStartInputSessionHandler:]):
18976 (-[FormSubmissionDelegate webView:startURLSchemeTask:]): Deleted.
18977 (-[FormSubmissionDelegate webView:stopURLSchemeTask:]): Deleted.
18978 (-[FormSubmissionDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]): Deleted.
18980 2018-03-20 Basuke Suzuki <Basuke.Suzuki@sony.com>
18982 [WinCairo] Fix to run-webkit-httpd from native Windows.
18983 https://bugs.webkit.org/show_bug.cgi?id=183605
18985 Reviewed by Daniel Bates.
18987 This fix is to run Apache HTTP server from native Windows. The environment is different
18988 from cygwin, which is used for AppleWin, in following points:
18989 - A temporary file behaves differently. It cannot reopen by anybody when indicated as
18990 delete on close. To solve this situation, filesystem.mkdtemp() is used instead.
18991 - It's not unix so that `tail` command is not available. Replaced with python equivalent
18994 * Scripts/webkitpy/common/system/filesystem.py:
18995 (FileSystem.mkdtemp.TemporaryDirectory.__init__):
18996 (FileSystem.mkdtemp.TemporaryDirectory.__exit__): The existing contents would be deleted.
18997 (FileSystem.mkdtemp):
18998 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
19001 (run_server_with_log_file):
19004 2018-03-20 Brady Eidson <beidson@apple.com>
19006 First piece of process swapping on navigation.
19007 https://bugs.webkit.org/show_bug.cgi?id=183665
19009 Reviewed by Andy Estes.
19011 Expose the "swaps processes on navigation" setting in MiniBrowser UI for testing:
19013 * MiniBrowser/mac/AppDelegate.m:
19014 (defaultConfiguration):
19015 * MiniBrowser/mac/SettingsController.h:
19016 * MiniBrowser/mac/SettingsController.m:
19017 (-[SettingsController _populateMenu]):
19018 (-[SettingsController validateMenuItem:]):
19019 (-[SettingsController processSwapOnNavigationEnabled]):
19020 (-[SettingsController toggleProcessSwapOnNavigation:]):
19022 Makes sure the current behavior is tested:
19023 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
19024 * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm: Added.
19025 (-[PSONNavigationDelegate webView:didFinishNavigation:]):
19026 (-[PSONScheme webView:startURLSchemeTask:]):
19027 (-[PSONScheme webView:stopURLSchemeTask:]):
19030 2018-03-20 Chris Dumez <cdumez@apple.com>
19032 QuickLook.NavigationDelegate API test is failing on iOS with async policy delegates
19033 https://bugs.webkit.org/show_bug.cgi?id=183791
19035 Reviewed by Alex Christensen.
19037 Add API test coverage.
19039 * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
19040 (-[QuickLookAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
19041 (-[QuickLookAsyncNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
19042 (-[QuickLookAsyncNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
19043 (-[QuickLookAsyncNavigationDelegate webView:didFinishNavigation:]):
19046 2018-03-20 Tim Horton <timothy_horton@apple.com>
19048 Add and adopt WK_PLATFORM_NAME and adjust default feature defines
19049 https://bugs.webkit.org/show_bug.cgi?id=183758
19050 <rdar://problem/38017644>
19052 Reviewed by Dan Bernstein.
19054 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
19056 2018-03-20 Chris Dumez <cdumez@apple.com>
19058 Unreviewed, rolling out r229726 and r229763.
19060 Caused some API test failures on iOS
19062 Reverted changesets:
19064 "Make policy decisions asynchronous"
19065 https://bugs.webkit.org/show_bug.cgi?id=180568
19066 https://trac.webkit.org/changeset/229726
19068 "Rebaseline three webarchive tests for WK2 after r229726."
19069 https://bugs.webkit.org/show_bug.cgi?id=180568
19070 https://trac.webkit.org/changeset/229763
19072 2018-03-20 Zalan Bujtas <zalan@apple.com>
19074 [LayoutReloaded] Move Display.Box handling from FormattingContext to FormattingState
19075 https://bugs.webkit.org/show_bug.cgi?id=183779
19077 Reviewed by Antti Koivisto.
19079 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19080 (BlockFormattingContext.prototype._computeStaticPosition):
19081 (BlockFormattingContext.prototype._computeOutOfFlowWidth):
19082 (BlockFormattingContext.prototype._computeFloatingWidth):
19083 (BlockFormattingContext.prototype._computeInFlowWidth):
19084 (BlockFormattingContext.prototype._computeOutOfFlowHeight):
19085 (BlockFormattingContext.prototype._computeFloatingHeight):
19086 (BlockFormattingContext.prototype._computeInFlowHeight):
19087 (BlockFormattingContext.prototype._horizontalConstraint):
19088 (BlockFormattingContext.prototype._contentHeight):
19089 (BlockFormattingContext.prototype._adjustBottomWithFIXME):
19090 (BlockFormattingContext.prototype._computeInFlowPositionedPosition):
19091 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
19092 * LayoutReloaded/FormattingContext/FloatingContext.js:
19093 (FloatingContext.prototype.computePosition):
19094 (FloatingContext.prototype._positionForClear):
19095 (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
19096 (FloatingContext.prototype._availableSpace):
19097 (FloatingContext.prototype._adjustedFloatingPosition):
19098 * LayoutReloaded/FormattingContext/FormattingContext.js:
19099 (FormattingContext):
19100 (FormattingContext.prototype.absoluteMarginBox):
19101 (FormattingContext.prototype.absoluteBorderBox):
19102 (FormattingContext.prototype.absolutePaddingBox):
19103 (FormattingContext.prototype.absoluteContentBox):
19104 (FormattingContext.prototype._toAbsolutePosition):
19105 (FormattingContext.prototype._toRootAbsolutePosition):
19106 (FormattingContext.prototype._addToLayoutQueue):
19107 (FormattingContext.prototype.displayBox):
19108 (FormattingContext.prototype._createDisplayBox): Deleted.
19109 (FormattingContext.prototype.toDisplayBox): Deleted.
19110 (FormattingContext.prototype.toLayoutBox): Deleted.
19111 * LayoutReloaded/FormattingState/FormattingState.js:
19113 (FormattingState.prototype.createDisplayBox):
19114 (FormattingState.prototype.displayBox):
19116 2018-03-20 Zalan Bujtas <zalan@apple.com>
19118 [LayoutReloaded] Introduce FormattingState (Block/Inline/etc)
19119 https://bugs.webkit.org/show_bug.cgi?id=183777
19121 Reviewed by Antti Koivisto.
19123 This is in preparation for moving out states from the formatting contexts.
19125 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19126 (BlockFormattingContext):
19127 * LayoutReloaded/FormattingContext/FormattingContext.js:
19128 (FormattingContext):
19129 (FormattingContext.prototype.layoutState):
19130 (FormattingContext.prototype.layoutContext):
19131 (FormattingContext.prototype.layout):
19132 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
19133 (InlineFormattingContext):
19134 * LayoutReloaded/FormattingState/BlockFormattingState.js: Copied from Tools/LayoutReloaded/LayoutContext.js.
19135 (BlockFormattingState):
19136 * LayoutReloaded/FormattingState/FormattingState.js: Copied from Tools/LayoutReloaded/LayoutContext.js.
19138 (FormattingState.prototype.formattingContext):
19139 (FormattingState.prototype.layoutContext):
19140 (FormattingState.prototype._setFormattingContext):
19141 * LayoutReloaded/FormattingState/InlineFormattingState.js: Copied from Tools/LayoutReloaded/LayoutContext.js.
19142 (InlineFormattingState):
19143 * LayoutReloaded/LayoutContext.js:
19145 (LayoutContext.prototype.layout):
19146 (LayoutContext.prototype._createFormattingState):
19147 (LayoutContext.prototype._createFormattingContext): Deleted.
19148 * LayoutReloaded/LayoutReloaded.xcworkspace/contents.xcworkspacedata:
19149 * LayoutReloaded/test/index.html:
19151 2018-03-19 Zalan Bujtas <zalan@apple.com>
19153 [LayoutReloaded] Layout.Box should not create the formatting context.
19154 https://bugs.webkit.org/show_bug.cgi?id=183766
19156 Reviewed by Antti Koivisto.
19158 Since the formattingContext's lifetime is tied to the layout, the LayoutContext
19159 should construct it instead.
19161 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19162 (BlockFormattingContext):
19163 (BlockFormattingContext.prototype.layout):
19164 (BlockFormattingContext.prototype._layoutOutOfFlowDescendants):
19165 (BlockFormattingContext.prototype._contentHeight):
19166 * LayoutReloaded/FormattingContext/FormattingContext.js:
19167 (FormattingContext):
19168 (FormattingContext.prototype.layoutContext):
19169 (FormattingContext.prototype.toDisplayBox):
19170 (FormattingContext.prototype._outOfFlowDescendants):
19171 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
19172 (InlineFormattingContext):
19173 (InlineFormattingContext.prototype.layout):
19174 * LayoutReloaded/Layout.js:
19176 * LayoutReloaded/LayoutContext.js:
19177 (LayoutContext.prototype.layout):
19178 (LayoutContext.prototype._createFormattingContext):
19180 (LayoutContext.prototype.layoutFormattingContext): Deleted.
19181 * LayoutReloaded/LayoutTree/Box.js:
19183 (Layout.Box.prototype.establishedFormattingContext): Deleted.
19184 * LayoutReloaded/misc/headers/Box.h:
19186 2018-03-19 Chris Dumez <cdumez@apple.com>
19188 Have one service worker process per security origin
19189 https://bugs.webkit.org/show_bug.cgi?id=183600
19190 <rdar://problem/35280128>
19192 Reviewed by Brady Eidson.
19194 Add API test coverage.
19196 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
19198 2018-03-19 Zalan Bujtas <zalan@apple.com>
19200 [LayoutReloaded] Remove border/padding/contentBox() functions from Layout.Box
19201 https://bugs.webkit.org/show_bug.cgi?id=183761
19203 Reviewed by Antti Koivisto.
19205 Display.Box has them.
19207 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19208 (BlockFormattingContext.prototype._computeOutOfFlowWidth):
19209 (BlockFormattingContext.prototype._computeOutOfFlowHeight):
19210 (BlockFormattingContext.prototype._horizontalConstraint):
19211 (BlockFormattingContext.prototype._contentHeight):
19212 (BlockFormattingContext.prototype._adjustBottomWithFIXME):
19213 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
19214 * LayoutReloaded/FormattingContext/FloatingContext.js:
19215 (FloatingContext.prototype._availableSpace):
19216 * LayoutReloaded/FormattingContext/FormattingContext.js:
19217 (FormattingContext.prototype.absoluteBorderBox):
19218 (FormattingContext.prototype.absolutePaddingBox):
19219 (FormattingContext.prototype.absoluteContentBox):
19220 * LayoutReloaded/LayoutTree/Box.js:
19221 (Layout.Box.prototype.isDescendantOf):
19223 (Layout.Box.prototype.borderBox): Deleted.
19224 (Layout.Box.prototype.paddingBox): Deleted.
19225 (Layout.Box.prototype.contentBox): Deleted.
19227 2018-03-19 Jiewen Tan <jiewen_tan@apple.com>
19229 Unreviewed, another quick fix for r229699
19231 Restricts ENABLE_WEB_AUTHN to only macOS and iOS.
19233 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
19234 * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm:
19236 2018-03-19 Zalan Bujtas <zalan@apple.com>
19238 [LayoutReloaded] Move statically positioned absolute box positioning to _computeOutOfFlowPosition
19239 https://bugs.webkit.org/show_bug.cgi?id=183750
19241 Reviewed by Antti Koivisto.
19243 * LayoutReloaded/DisplayTree/Box.js:
19244 (Display.Box.prototype.setTop):
19245 (Display.Box.prototype.paddingBox):
19246 (Display.Box.prototype.contentBox):
19248 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19249 (BlockFormattingContext.prototype._computeStaticPosition):
19250 (BlockFormattingContext.prototype._layoutOutOfFlowDescendants):
19251 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
19252 * LayoutReloaded/FormattingContext/FormattingContext.js:
19253 (FormattingContext.prototype.absoluteMarginBox):
19254 (FormattingContext.prototype.absoluteBorderBox):
19255 (FormattingContext.prototype.absolutePaddingBox):
19256 (FormattingContext.prototype.absoluteContentBox):
19257 (FormattingContext.prototype._toAbsolutePosition):
19258 (FormattingContext.prototype._toRootAbsolutePosition):
19259 (FormattingContext.prototype.toDisplayBox):
19260 * LayoutReloaded/LayoutTree/InitialBlockContainer.js:
19261 (Layout.InitialBlockContainer.prototype.establishesBlockFormattingContext):
19262 (Layout.InitialBlockContainer):
19263 (Layout.InitialBlockContainer.prototype.paddingBox): Deleted.
19264 (Layout.InitialBlockContainer.prototype.contentBox): Deleted.
19265 * LayoutReloaded/Utils.js:
19266 (Utils.isStaticallyPositioned):
19268 2018-03-19 Chris Dumez <cdumez@apple.com>
19270 WebKit.WebsitePoliciesAutoplayQuirks API test times out with async policy delegates
19271 https://bugs.webkit.org/show_bug.cgi?id=183702
19272 <rdar://problem/38566060>
19274 Reviewed by Alex Christensen.
19276 Add API test coverage.
19278 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
19279 (-[AsyncAutoplayPoliciesDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
19280 (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
19281 (-[AsyncAutoplayPoliciesDelegate _webView:handleAutoplayEvent:withFlags:]):
19284 2018-03-19 Daniel Bates <dabates@apple.com>
19286 test-webkitpy no longer runs WebKit2 tests
19287 https://bugs.webkit.org/show_bug.cgi?id=183724
19289 Reviewed by Alexey Proskuryakov.
19291 The WebKit2 tests have seen been moved from Source/WebKit2/Scripts/webkit2 to Source/WebKit/Scripts/webkit.
19293 * Scripts/webkitpy/test/main.py:
19296 2018-03-19 Daniel Bates <dabates@apple.com>
19298 Make run-webkit-app work for non-GUI apps
19299 https://bugs.webkit.org/show_bug.cgi?id=183701
19301 Reviewed by Lucas Forschler.
19303 Launch the app directly if it is an executable file. Otherwise, assume it is an app bundle
19304 and launch it using open(1) as we currently do.
19306 Note that open(1) is meant for launching GUI apps. Standard output and standard error are
19307 not sent to the tty when using open(1) to launch a non-GUI app.
19309 * Scripts/run-webkit-app: We make the assumption that
19310 * Scripts/webkitdirs.pm:
19311 - Define and export constant DO_NOT_USE_OPEN_COMMAND.
19313 2018-03-19 Daniel Bates <dabates@apple.com>
19315 run-webkit-app -g does not work
19316 https://bugs.webkit.org/show_bug.cgi?id=183699
19318 Reviewed by Lucas Forschler.
19320 Check for the optional command line argument -g/--guard-malloc before taking the
19321 first argument passed to be the path to the app to run.
19323 * Scripts/run-webkit-app:
19325 2018-03-18 Commit Queue <commit-queue@webkit.org>
19327 Unreviewed, rolling out r229689.
19328 https://bugs.webkit.org/show_bug.cgi?id=183735
19330 Causes fast/loader/inner-iframe-loads-data-url-into-parent-on-
19331 unload-crash.html to fail with async delegates (Requested by
19332 cdumez_ on #webkit).
19334 Reverted changeset:
19336 "WebKit.WebsitePoliciesAutoplayQuirks API test times out with
19337 async policy delegates"
19338 https://bugs.webkit.org/show_bug.cgi?id=183702
19339 https://trac.webkit.org/changeset/229689
19341 2018-03-18 Zalan Bujtas <zalan@apple.com>
19343 [LayoutReloaded] Remove left/right width/height getters from Layout.Box
19344 https://bugs.webkit.org/show_bug.cgi?id=183734
19346 Reviewed by Antti Koivisto.
19348 ...and use Display.Box instead.
19350 * LayoutReloaded/DisplayTree/Box.js:
19351 (Display.Box.prototype.bottomRight):
19352 (Display.Box.prototype.size):
19353 (Display.Box.prototype.height):
19354 (Display.Box.prototype.width):
19355 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19356 (BlockFormattingContext.prototype._computeStaticPosition):
19357 (BlockFormattingContext.prototype._adjustBottomWithFIXME):
19358 (BlockFormattingContext.prototype._computeInFlowPositionedPosition):
19359 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
19360 * LayoutReloaded/FormattingContext/FloatingContext.js:
19361 (FloatingContext.prototype._positionForClear):
19362 (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
19363 (FloatingContext.prototype._adjustedFloatingPosition):
19364 * LayoutReloaded/FormattingContext/FormattingContext.js:
19365 (FormattingContext.prototype.absoluteMarginBox):
19366 (FormattingContext.prototype.absoluteBorderBox):
19367 (FormattingContext.prototype.absolutePaddingBox):
19368 (FormattingContext.prototype.absoluteContentBox):
19369 (FormattingContext.prototype._toAbsolutePosition):
19370 (FormattingContext.prototype._toRootAbsolutePosition):
19371 * LayoutReloaded/LayoutTree/Box.js:
19372 (Layout.Box.prototype.rect): Deleted.
19373 (Layout.Box.prototype.topLeft): Deleted.
19374 (Layout.Box.prototype.bottomRight): Deleted.
19375 * LayoutReloaded/Utils.js:
19377 (Utils.mapToContainer): Deleted.
19379 2018-03-18 Zalan Bujtas <zalan@apple.com>
19381 [LayoutReloaded] Remove left/right width/height setters from Layout.Box
19382 https://bugs.webkit.org/show_bug.cgi?id=183731
19384 Reviewed by Antti Koivisto.
19386 ...and use Display.Box instead.
19388 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19389 (BlockFormattingContext.prototype._computeStaticPosition):
19390 (BlockFormattingContext.prototype._computeOutOfFlowWidth):
19391 (BlockFormattingContext.prototype._computeFloatingWidth):
19392 (BlockFormattingContext.prototype._computeInFlowWidth):
19393 (BlockFormattingContext.prototype._computeOutOfFlowHeight):
19394 (BlockFormattingContext.prototype._computeFloatingHeight):
19395 (BlockFormattingContext.prototype._computeInFlowHeight):
19396 (BlockFormattingContext.prototype._computeInFlowPositionedPosition):
19397 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
19398 * LayoutReloaded/FormattingContext/FloatingContext.js:
19399 (FloatingContext.prototype.computePosition):
19400 * LayoutReloaded/FormattingContext/FormattingContext.js:
19401 (FormattingContext.prototype._toDisplayBox):
19402 (FormattingContext.prototype._toLayoutBox):
19403 * LayoutReloaded/Layout.js:
19405 * LayoutReloaded/LayoutTree/Box.js:
19406 (Layout.Box.prototype.setTopLeft): Deleted.
19407 (Layout.Box.prototype.setSize): Deleted.
19408 (Layout.Box.prototype.setWidth): Deleted.
19409 (Layout.Box.prototype.setHeight): Deleted.
19411 2018-03-18 Zalan Bujtas <zalan@apple.com>
19413 [LayoutReloaded] Collect out-of-flow positioned boxes for a given formatting context.
19414 https://bugs.webkit.org/show_bug.cgi?id=183730
19416 Reviewed by Antti Koivisto.
19418 Collect and layout out-of-flow positioned boxes as the final step of the formatting context layout.
19420 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19421 (BlockFormattingContext.prototype.layout):
19422 (BlockFormattingContext.prototype._placeInFlowPositionedChildren):
19423 (BlockFormattingContext.prototype._layoutOutOfFlowDescendants):
19424 (BlockFormattingContext.prototype._placePositionedDescendants): Deleted.
19425 (BlockFormattingContext.prototype._placeOutOfFlowDescendants): Deleted.
19426 * LayoutReloaded/FormattingContext/FormattingContext.js:
19427 (FormattingContext.prototype._toAbsolutePosition):
19428 (FormattingContext.prototype._outOfFlowDescendants):
19429 (FormattingContext):
19430 * LayoutReloaded/LayoutTree/Box.js:
19431 (Layout.Box.prototype.nextInFlowOrFloatSibling):
19432 (Layout.Box.prototype.isDescendantOf):
19433 * LayoutReloaded/LayoutTree/Container.js:
19434 (Layout.Container.prototype.firstInFlowOrFloatChild):
19435 (Layout.Container.prototype.hasInFlowOrFloatChild):
19436 (Layout.Container.prototype.outOfFlowDescendants):
19437 (Layout.Container):
19438 * LayoutReloaded/Utils.js:
19439 (Utils.isDescendantOf): Deleted.
19440 (Utils.collectOutOfFlowDescendants): Deleted.
19442 2018-03-17 Jiewen Tan <jiewen_tan@apple.com>
19444 [WebAuthN] Implement authenticatorMakeCredential
19445 https://bugs.webkit.org/show_bug.cgi?id=183527
19446 <rdar://problem/35275886>
19448 Reviewed by Brent Fulgham.
19450 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
19451 * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm: Added.
19452 (TestWebKitAPI::getTestKey):
19453 (TestWebKitAPI::cleanUpKeychain):
19454 (TestWebKitAPI::LACantEvaluatePolicySwizzler::LACantEvaluatePolicySwizzler):
19455 (TestWebKitAPI::LACantEvaluatePolicySwizzler::cantEvaluatePolicy):
19456 (TestWebKitAPI::LACanEvaluatePolicySwizzler::LACanEvaluatePolicySwizzler):
19457 (TestWebKitAPI::LACanEvaluatePolicySwizzler::canEvaluatePolicy):
19458 (TestWebKitAPI::LAEvaluatePolicyFailedSwizzler::LAEvaluatePolicyFailedSwizzler):
19459 (TestWebKitAPI::LAEvaluatePolicyFailedSwizzler::evaluatePolicyFailed):
19460 (TestWebKitAPI::LAEvaluatePolicyPassedSwizzler::LAEvaluatePolicyPassedSwizzler):
19461 (TestWebKitAPI::LAEvaluatePolicyPassedSwizzler::evaluatePolicyPassed):
19462 (TestWebKitAPI::TestLocalAuthenticator::setFailureFlag):
19463 (TestWebKitAPI::TEST):
19465 2018-03-17 Zalan Bujtas <zalan@apple.com>
19467 [LayoutReloaded] BlockFormattingContext::placePositionedDescendants takes care of both in- and out-of-flow placement
19468 https://bugs.webkit.org/show_bug.cgi?id=183727
19470 Reviewed by Antti Koivisto.
19472 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19473 (BlockFormattingContext.prototype.layout):
19474 (BlockFormattingContext.prototype._placePositionedDescendants):
19475 (BlockFormattingContext.prototype._placeInFlowPositionedChildren):
19476 (BlockFormattingContext.prototype._placeOutOfFlowDescendants):
19477 * LayoutReloaded/test/absolute-position-when-containing-block-is-not-in-the-formatting-context.html: Added.
19478 * LayoutReloaded/test/absolute-position-when-containing-block-is-not-in-the-formatting-context2.html: Added.
19479 * LayoutReloaded/test/index.html:
19480 * LayoutReloaded/test/relative-position-when-containing-block-is-not-in-the-formatting-context.html: Added.
19482 2018-03-17 Zalan Bujtas <zalan@apple.com>
19484 [LayoutReloaded] Ensure that positioning happens within the formatting context
19485 https://bugs.webkit.org/show_bug.cgi?id=183722
19487 Reviewed by Antti Koivisto.
19489 All sizing and positioning need to happen in the formatting context that the box lives in
19490 including the final position of in- and out-of-flow descendants.
19492 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19493 (BlockFormattingContext.prototype.layout):
19494 (BlockFormattingContext.prototype._placeInFlowPositionedChildren):
19495 * LayoutReloaded/LayoutTree/Box.js:
19496 (Layout.Box.prototype.establishesBlockFormattingContext):
19497 (Layout.Box.prototype.isPositioned):
19498 (Layout.Box.prototype.isRelativelyPositioned):
19499 (Layout.Box.prototype.isAbsolutelyPositioned):
19500 (Layout.Box.prototype.isOutOfFlowPositioned):
19501 (Layout.Box.prototype.containingBlock):
19502 (Layout.Box.prototype.isRelativePositioned): Deleted.
19503 (Layout.Box.prototype.isAbsolutePositioned): Deleted.
19504 * LayoutReloaded/Utils.js:
19505 (Utils.isRelativelyPositioned):
19506 (Utils.isAbsolutelyPositioned):
19507 (Utils.isRelativePositioned): Deleted.
19508 (Utils.isAbsolutePositioned): Deleted.
19509 * LayoutReloaded/misc/headers/Box.h:
19511 2018-03-16 Wenson Hsieh <wenson_hsieh@apple.com>
19513 Unreviewed, rolling out r229688.
19515 There's a solution that doesn't require this SPI.
19517 Reverted changeset:
19519 "Add SPI to expose width and height anchors for WKWebView's
19521 https://bugs.webkit.org/show_bug.cgi?id=183711
19522 https://trac.webkit.org/changeset/229688
19524 2018-03-16 Zalan Bujtas <zalan@apple.com>
19526 [LayoutReloaded] Move move functions to the base class from BlockFormattingContext
19527 https://bugs.webkit.org/show_bug.cgi?id=183719
19529 Reviewed by Antti Koivisto.
19531 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19532 (BlockFormattingContext):
19533 (BlockFormattingContext.prototype.layout):
19534 (BlockFormattingContext.prototype._shrinkToFitWidth):
19535 (BlockFormattingContext.prototype._toAbsolutePosition): Deleted.
19536 (BlockFormattingContext.prototype._needsLayout): Deleted.
19537 (BlockFormattingContext.prototype._addToLayoutQueue): Deleted.
19538 (BlockFormattingContext.prototype._nextInLayoutQueue): Deleted.
19539 (BlockFormattingContext.prototype._removeFromLayoutQueue): Deleted.
19540 (BlockFormattingContext.prototype._createDisplayBox): Deleted.
19541 (BlockFormattingContext.prototype._toDisplayBox): Deleted.
19542 (BlockFormattingContext.prototype._toLayoutBox): Deleted.
19543 * LayoutReloaded/FormattingContext/FormattingContext.js:
19544 (FormattingContext):
19545 (FormattingContext.prototype._toAbsolutePosition):
19546 (FormattingContext.prototype._descendantNeedsLayout):
19547 (FormattingContext.prototype._addToLayoutQueue):
19548 (FormattingContext.prototype._nextInLayoutQueue):
19549 (FormattingContext.prototype._removeFromLayoutQueue):
19550 (FormattingContext.prototype._createDisplayBox):
19551 (FormattingContext.prototype._toDisplayBox):
19552 (FormattingContext.prototype._toLayoutBox):
19553 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
19554 (InlineFormattingContext.prototype.layout):
19556 2018-03-16 Chris Dumez <cdumez@apple.com>
19558 WebKit.WebsitePoliciesAutoplayQuirks API test times out with async policy delegates
19559 https://bugs.webkit.org/show_bug.cgi?id=183702
19561 Reviewed by Alex Christensen.
19563 Add API test coverage.
19565 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
19566 (-[AsyncAutoplayPoliciesDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
19567 (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
19568 (-[AsyncAutoplayPoliciesDelegate _webView:handleAutoplayEvent:withFlags:]):
19571 2018-03-16 Wenson Hsieh <wenson_hsieh@apple.com>
19573 Add SPI to expose width and height anchors for WKWebView's content view
19574 https://bugs.webkit.org/show_bug.cgi?id=183711
19575 <rdar://problem/38562899>
19577 Reviewed by Tim Horton.
19579 Adds an API test exercising the new SPI.
19581 * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
19585 2018-03-16 Chris Dumez <cdumez@apple.com>
19587 WebKit.RestoreSessionStateContainingScrollRestorationDefault API test is failing with async policy delegates
19588 https://bugs.webkit.org/show_bug.cgi?id=183679
19590 Reviewed by Alex Christensen.
19592 Add API test coverage.
19594 * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
19595 (TestWebKitAPI::decidePolicyForNavigationAction):
19596 (TestWebKitAPI::decidePolicyForResponse):
19597 (TestWebKitAPI::TEST):
19599 2018-03-16 Zalan Bujtas <zalan@apple.com>
19601 [LayoutReloaded] Introduce Display.Box
19602 https://bugs.webkit.org/show_bug.cgi?id=183700
19604 Reviewed by Antti Koivisto.
19606 Display.Box objects will end up in the display(box) tree. Currently
19607 they are just hanging off of the Layout.Box objects.
19609 * LayoutReloaded/DisplayTree/Box.js: Added.
19611 (Display.Box.prototype.rect):
19612 (Display.Box.prototype.top):
19613 (Display.Box.prototype.left):
19614 (Display.Box.prototype.bottom):
19615 (Display.Box.prototype.right):
19616 (Display.Box.prototype.topLeft):
19617 (Display.Box.prototype.bottomRight):
19618 (Display.Box.prototype.setTopLeft):
19619 (Display.Box.prototype.setSize):
19620 (Display.Box.prototype.setWidth):
19621 (Display.Box.prototype.setHeight):
19622 (Display.Box.prototype.borderBox):
19623 (Display.Box.prototype.paddingBox):
19624 (Display.Box.prototype.contentBox):
19625 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19626 (BlockFormattingContext):
19627 (BlockFormattingContext.prototype.layout):
19628 (BlockFormattingContext.prototype._toAbsolutePosition):
19629 (BlockFormattingContext.prototype._needsLayout):
19630 (BlockFormattingContext.prototype._addToLayoutQueue):
19631 (BlockFormattingContext.prototype._nextInLayoutQueue):
19632 (BlockFormattingContext.prototype._removeFromLayoutQueue):
19633 (BlockFormattingContext.prototype._createDisplayBox):
19634 (BlockFormattingContext.prototype._toDisplayBox):
19635 (BlockFormattingContext.prototype._toLayoutBox):
19636 * LayoutReloaded/Layout.js:
19638 * LayoutReloaded/LayoutReloaded.xcworkspace/contents.xcworkspacedata:
19639 * LayoutReloaded/LayoutTree/Box.js:
19641 (Layout.Box.prototype.setDisplayBox):
19642 (Layout.Box.prototype.displayBox):
19643 (Layout.Box.prototype.rect):
19644 (Layout.Box.prototype.setTopLeft):
19645 (Layout.Box.prototype.setSize):
19646 (Layout.Box.prototype.setWidth):
19647 (Layout.Box.prototype.setHeight):
19648 (Layout.Box.prototype.borderBox):
19649 (Layout.Box.prototype.paddingBox):
19650 (Layout.Box.prototype.contentBox):
19651 * LayoutReloaded/test/index.html:
19653 2018-03-16 Chris Dumez <cdumez@apple.com>
19655 URLSchemeHandler.Basic API test fails with async policy delegates
19656 https://bugs.webkit.org/show_bug.cgi?id=183678
19658 Reviewed by Alex Christensen.
19660 Add API test coverage.
19662 * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
19663 (-[URLSchemeHandlerAsyncNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
19664 (-[URLSchemeHandlerAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
19667 2018-03-16 Zalan Bujtas <zalan@apple.com>
19669 [LayoutReloaded] Utils.computed* functions should just take node instead of box.
19670 https://bugs.webkit.org/show_bug.cgi?id=183697
19672 Reviewed by Antti Koivisto.
19674 This is in preparation for introducing the display tree.
19676 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19677 (BlockFormattingContext.prototype._computeOutOfFlowWidth):
19678 (BlockFormattingContext.prototype._computeFloatingWidth):
19679 (BlockFormattingContext.prototype._computeInFlowWidth):
19680 (BlockFormattingContext.prototype._computeOutOfFlowHeight):
19681 (BlockFormattingContext.prototype._computeFloatingHeight):
19682 (BlockFormattingContext.prototype._computeInFlowHeight):
19683 (BlockFormattingContext.prototype._shrinkToFitWidth):
19684 * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
19685 (BlockMarginCollapse._nonCollapsedMarginTop):
19686 (BlockMarginCollapse._nonCollapsedMarginBottom):
19687 (BlockMarginCollapse._collapsedMarginTopFromFirstChild):
19688 (BlockMarginCollapse._collapsedMarginBottomFromLastChild):
19689 * LayoutReloaded/FormattingContext/FormattingContext.js:
19690 (FormattingContext.prototype.marginTop):
19691 (FormattingContext.prototype.marginLeft):
19692 (FormattingContext.prototype.marginBottom):
19693 (FormattingContext.prototype.marginRight):
19694 * LayoutReloaded/LayoutTree/Box.js:
19695 (Layout.Box.prototype.paddingBox):
19696 (Layout.Box.prototype.contentBox):
19698 * LayoutReloaded/Utils.js:
19699 (Utils.computedMarginTop):
19700 (Utils.computedMarginLeft):
19701 (Utils.computedMarginBottom):
19702 (Utils.computedMarginRight):
19703 (Utils.computedBorderTopLeft):
19704 (Utils.computedBorderBottomRight):
19705 (Utils.computedPaddingTopLeft):
19706 (Utils.computedPaddingBottomRight):
19707 (Utils.computedBorderAndPaddingTop):
19708 (Utils.computedBorderAndPaddingLeft):
19709 (Utils.computedBorderAndPaddingBottom):
19710 (Utils.computedBorderAndPaddingRight):
19711 (Utils.computedHorizontalBorderAndPadding):
19712 (Utils.computedVerticalBorderAndPadding):
19713 (Utils.computedLineHeight):
19714 (Utils.hasClearLeft):
19715 (Utils.hasClearRight):
19716 (Utils.hasClearBoth):
19718 2018-03-15 Zalan Bujtas <zalan@apple.com>
19720 [LayoutReloaded] Should never need to go beyond the root container when asking for the containing block.
19721 https://bugs.webkit.org/show_bug.cgi?id=183691
19723 Reviewed by Antti Koivisto.
19725 While laying out the boxes in a block formatting context, if we happen to need
19726 to get to the containing block of a box to compute geometry, it should always be a
19727 descendant of the root container (or the root container itself).
19728 Nothing outside of the formatting context should be able to impact the boxes inside.
19730 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19731 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
19732 (BlockFormattingContext.prototype._toAbsolutePosition):
19733 (BlockFormattingContext):
19734 * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
19735 (BlockMarginCollapse._isMarginTopCollapsedWithParent):
19736 (BlockMarginCollapse._isMarginBottomCollapsedWithParent):
19737 * LayoutReloaded/LayoutTree/Box.js:
19738 (Layout.Box.prototype.isRootBox):
19739 (Layout.Box.prototype.isRootElement): Deleted.
19740 * LayoutReloaded/Utils.js:
19741 (Utils.isDescendantOf):
19742 (Utils.mapStaticToAbsolute): Deleted.
19743 * LayoutReloaded/misc/headers/Box.h:
19745 2018-03-15 Wenson Hsieh <wenson_hsieh@apple.com>
19747 [iOS WK2] Hit-testing fails when specifying a large top content inset
19748 https://bugs.webkit.org/show_bug.cgi?id=183648
19749 <rdar://problem/38421894>
19751 Reviewed by Tim Horton.
19753 Adds four new API tests to verify that adding top or bottom content insets to the WKWebView's scroll view does
19754 not cause the DOMWindow's innerHeight to shrink. Currently, doing so would cause the innerHeight to be reported
19755 as (viewHeight - inset.top) or (viewHeight - inset.bottom).
19757 See WebKit ChangeLog for more details.
19759 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
19760 * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm: Added.
19761 (TestWebKitAPI::TEST):
19763 2018-03-15 Aakash Jain <aakash_jain@apple.com>
19765 Add unit-test for NetworkTransaction URLError handling
19766 https://bugs.webkit.org/show_bug.cgi?id=183664
19768 Reviewed by Alexey Proskuryakov.
19770 * Scripts/webkitpy/common/net/networktransaction_unittest.py:
19771 (NetworkTransactionTest._raise_URLError): Method to raise URLError.
19772 (NetworkTransactionTest.test_retry_on_HTTPError): Renamed from test_retry.
19773 (NetworkTransactionTest.test_retry_on_URLError): unit-test for testing URLError handling.
19775 2018-03-15 Aakash Jain <aakash_jain@apple.com>
19777 EWS should print the URL in logs on URLError
19778 https://bugs.webkit.org/show_bug.cgi?id=183651
19780 Reviewed by Alexey Proskuryakov.
19782 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
19783 (Bugzilla.open_url): Pass the url.
19784 * Scripts/webkitpy/common/net/networktransaction.py:
19785 (NetworkTransaction.run): Accept optional url parameter and print it on URLError.
19787 2018-03-15 Zalan Bujtas <zalan@apple.com>
19789 [LayoutReloaded] Introduce Layout namespace
19790 https://bugs.webkit.org/show_bug.cgi?id=183659
19792 Reviewed by Antti Koivisto.
19794 This is in preparation for introducing the display tree.
19797 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19798 (BlockFormattingContext.prototype.layout):
19799 (BlockFormattingContext.prototype.computeWidth):
19800 (BlockFormattingContext.prototype.computeHeight):
19801 (BlockFormattingContext.prototype.marginTop):
19802 (BlockFormattingContext.prototype.marginBottom):
19803 (BlockFormattingContext.prototype._computeStaticPosition):
19804 (BlockFormattingContext.prototype._placeInFlowPositionedChildren):
19805 (BlockFormattingContext.prototype._placeOutOfFlowDescendants):
19806 (BlockFormattingContext.prototype._computeOutOfFlowWidth):
19807 (BlockFormattingContext.prototype._computeFloatingWidth):
19808 (BlockFormattingContext.prototype._computeInFlowWidth):
19809 (BlockFormattingContext.prototype._computeOutOfFlowHeight):
19810 (BlockFormattingContext.prototype._computeFloatingHeight):
19811 (BlockFormattingContext.prototype._computeInFlowHeight):
19812 (BlockFormattingContext.prototype._horizontalConstraint):
19813 (BlockFormattingContext.prototype._contentHeight):
19814 (BlockFormattingContext.prototype._adjustBottomWithFIXME):
19815 (BlockFormattingContext.prototype._computeInFlowPositionedPosition):
19816 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
19817 (BlockFormattingContext.prototype._shrinkToFitWidth):
19818 (BlockFormattingContext):
19819 (BlockFormattingContext.prototype._computeHorizontalConstraint): Deleted.
19820 (BlockFormattingContext.prototype._computeContentHeight): Deleted.
19821 * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
19822 (BlockMarginCollapse.marginTop):
19823 (BlockMarginCollapse.marginBottom):
19824 (BlockMarginCollapse._isMarginTopCollapsedWithSibling):
19825 (BlockMarginCollapse._isMarginBottomCollapsedWithSibling):
19826 (BlockMarginCollapse._isMarginTopCollapsedWithParent):
19827 (BlockMarginCollapse._isMarginBottomCollapsedWithParent):
19828 (BlockMarginCollapse._nonCollapsedMarginTop):
19829 (BlockMarginCollapse._nonCollapsedMarginBottom):
19830 (BlockMarginCollapse._collapsedMarginTopFromFirstChild):
19831 (BlockMarginCollapse._collapsedMarginBottomFromLastChild):
19832 (BlockMarginCollapse._hasAdjoiningMarginTopAndBottom):
19833 (BlockMarginCollapse):
19834 * LayoutReloaded/FormattingContext/FloatingContext.js:
19835 (FloatingContext.prototype.computePosition):
19836 (FloatingContext.prototype._positionForClear):
19837 (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
19838 * LayoutReloaded/FormattingContext/FormattingContext.js:
19839 (FormattingContext.prototype.computeWidth):
19840 (FormattingContext.prototype.computeHeight):
19841 (FormattingContext.prototype.marginTop):
19842 (FormattingContext.prototype.marginLeft):
19843 (FormattingContext.prototype.marginBottom):
19844 (FormattingContext.prototype.marginRight):
19845 (FormattingContext.prototype.absoluteMarginBox):
19846 (FormattingContext.prototype.absoluteBorderBox):
19847 (FormattingContext.prototype.absolutePaddingBox):
19848 (FormattingContext.prototype.absoluteContentBox):
19849 (FormattingContext):
19850 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
19851 (InlineFormattingContext.prototype.layout):
19852 * LayoutReloaded/LayoutTree/BlockContainer.js:
19853 (BlockContainer): Deleted.
19854 (BlockContainer.prototype.establishesInlineFormattingContext): Deleted.
19855 * LayoutReloaded/LayoutTree/Box.js:
19857 (Box.prototype.id): Deleted.
19858 (Box.prototype.setRendererName): Deleted.
19859 (Box.prototype.name): Deleted.
19860 (Box.prototype.node): Deleted.
19861 (Box.prototype.parent): Deleted.
19862 (Box.prototype.nextSibling): Deleted.
19863 (Box.prototype.nextInFlowSibling): Deleted.
19864 (Box.prototype.previousSibling): Deleted.
19865 (Box.prototype.previousInFlowSibling): Deleted.
19866 (Box.prototype.setParent): Deleted.
19867 (Box.prototype.setNextSibling): Deleted.
19868 (Box.prototype.setPreviousSibling): Deleted.
19869 (Box.prototype.rect): Deleted.
19870 (Box.prototype.topLeft): Deleted.
19871 (Box.prototype.bottomRight): Deleted.
19872 (Box.prototype.setTopLeft): Deleted.
19873 (Box.prototype.setSize): Deleted.
19874 (Box.prototype.setWidth): Deleted.
19875 (Box.prototype.setHeight): Deleted.
19876 (Box.prototype.isContainer): Deleted.
19877 (Box.prototype.isBlockLevelBox): Deleted.
19878 (Box.prototype.isBlockContainerBox): Deleted.
19879 (Box.prototype.isInlineLevelBox): Deleted.
19880 (Box.prototype.setIsAnonymous): Deleted.
19881 (Box.prototype.isAnonymous): Deleted.
19882 (Box.prototype.establishesFormattingContext): Deleted.
19883 (Box.prototype.establishedFormattingContext): Deleted.
19884 (Box.prototype.establishesBlockFormattingContext): Deleted.
19885 (Box.prototype.establishesInlineFormattingContext): Deleted.
19886 (Box.prototype.isPositioned): Deleted.
19887 (Box.prototype.isRelativePositioned): Deleted.
19888 (Box.prototype.isAbsolutePositioned): Deleted.
19889 (Box.prototype.isFixedPositioned): Deleted.
19890 (Box.prototype.isInFlow): Deleted.
19891 (Box.prototype.isOutOfFlowPositioned): Deleted.
19892 (Box.prototype.isInFlowPositioned): Deleted.
19893 (Box.prototype.isFloatingPositioned): Deleted.
19894 (Box.prototype.isFloatingOrOutOfFlowPositioned): Deleted.
19895 (Box.prototype.isRootElement): Deleted.
19896 (Box.prototype.containingBlock): Deleted.
19897 (Box.prototype.borderBox): Deleted.
19898 (Box.prototype.paddingBox): Deleted.
19899 (Box.prototype.contentBox): Deleted.
19900 * LayoutReloaded/LayoutTree/Container.js:
19901 (Container): Deleted.
19902 (Container.prototype.isContainer): Deleted.
19903 (Container.prototype.setFirstChild): Deleted.
19904 (Container.prototype.setLastChild): Deleted.
19905 (Container.prototype.firstChild): Deleted.
19906 (Container.prototype.firstInFlowChild): Deleted.
19907 (Container.prototype.lastChild): Deleted.
19908 (Container.prototype.lastInFlowChild): Deleted.
19909 (Container.prototype.hasChild): Deleted.
19910 (Container.prototype.hasInFlowChild): Deleted.
19911 * LayoutReloaded/LayoutTree/InitialBlockContainer.js:
19912 (InitialBlockContainer): Deleted.
19913 (InitialBlockContainer.prototype.establishesBlockFormattingContext): Deleted.
19914 (InitialBlockContainer.prototype.paddingBox): Deleted.
19915 (InitialBlockContainer.prototype.contentBox): Deleted.
19916 * LayoutReloaded/LayoutTree/InlineBox.js:
19917 (InlineBox): Deleted.
19918 (InlineBox.prototype.setText): Deleted.
19919 (InlineBox.prototype.text): Deleted.
19920 * LayoutReloaded/TreeBuilder.js:
19921 (TreeBuilder.prototype.createTree):
19922 (TreeBuilder.prototype._createAndAttachBox):
19923 * LayoutReloaded/Utils.js:
19926 2018-03-14 Chris Fleizach <cfleizach@apple.com>
19928 AX: Implement accessible dismiss action on iOS
19929 https://bugs.webkit.org/show_bug.cgi?id=183352
19930 <rdar://problem/38161500>
19932 Reviewed by Zalan Bujtas.
19934 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
19935 (WTR::AccessibilityUIElement::dismiss const):
19936 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
19937 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
19938 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
19939 (WTR::AccessibilityUIElement::dismiss):
19941 2018-03-14 Youenn Fablet <youenn@apple.com>
19943 Update libwebrtc up to 36af4e9614f707f733eb2340fae66d6325aaac5b
19944 https://bugs.webkit.org/show_bug.cgi?id=183481
19946 Reviewed by Eric Carlson.
19948 * Scripts/webkitpy/style/checker.py: Do not check style.
19950 2018-03-14 Brendan McLoughlin <brendan@bocoup.com>
19952 Add label on github when exporting wpt tests to w3c/web-platform-test repo
19953 https://bugs.webkit.org/show_bug.cgi?id=183575
19955 Reviewed by Youenn Fablet.
19957 * Scripts/webkitpy/w3c/test_exporter.py:
19958 (TestExporter.make_pull_request):
19960 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
19961 (TestExporterTest.test_export):
19963 2018-03-14 Zalan Bujtas <zalan@apple.com>
19965 [LayoutReloaded] Add InlineBox dump
19966 https://bugs.webkit.org/show_bug.cgi?id=183625
19968 Reviewed by Antti Koivisto.
19970 Right now line boxes live off of the inline formatting context but that's temporary and
19971 they will be moved over to the BoxTree.
19973 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
19974 (BlockFormattingContext.prototype._computeContentHeight):
19975 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
19976 (InlineFormattingContext):
19977 (InlineFormattingContext.prototype.lines):
19978 (InlineFormattingContext.prototype.layout):
19979 (InlineFormattingContext.prototype._handleText):
19980 (InlineFormattingContext.prototype._commitLine):
19981 (InlineFormattingContext.prototype._initializeLine):
19982 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
19984 (Line.prototype.isEmpty):
19985 (Line.prototype.rect):
19986 (Line.prototype.lineBoxes):
19987 (Line.prototype.addLineBox):
19988 (Line.prototype.appendFragment): Deleted.
19989 * LayoutReloaded/README.md:
19990 * LayoutReloaded/Utils.js:
19991 (Utils.computedLineHeight):
19992 (Utils.isBlockContainerElement):
19993 (Utils.textHeight):
19995 (Utils._dumpLines.):
19996 (Utils._dumpLines):
19998 (Utils.precisionRound):
20000 * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
20001 * LayoutReloaded/test/index.html:
20003 2018-03-14 Tim Horton <timothy_horton@apple.com>
20005 Fix the build after r229567
20007 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20009 2018-03-13 Jer Noble <jer.noble@apple.com>
20011 [iOS] Muted media playback can interrupt out-of-process audio
20012 https://bugs.webkit.org/show_bug.cgi?id=183606
20013 <rdar://problem/37466253>
20015 Reviewed by Eric Carlson.
20017 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
20018 * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
20019 (TestWebKitAPI::TEST):
20020 * TestWebKitAPI/Tests/WebKitLegacy/ios/video-with-paused-audio-and-playing-muted.html: Added.
20022 2018-03-13 Ross Kirsling <ross.kirsling@sony.com>
20024 [Win] Layout Test fast/html/menuitem-element.html is failing.
20025 https://bugs.webkit.org/show_bug.cgi?id=179299
20027 Reviewed by Per Arne Vollan.
20029 * DumpRenderTree/win/DumpRenderTree.cpp:
20030 (setWebPreferencesForTestOptions):
20031 Recognize test option "enableMenuItemElement".
20033 2018-03-12 Tim Horton <timothy_horton@apple.com>
20035 Stop using SDK conditionals to control feature definitions
20036 https://bugs.webkit.org/show_bug.cgi?id=183430
20037 <rdar://problem/38251619>
20039 Reviewed by Dan Bernstein.
20041 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20042 * TestWebKitAPI/Configurations/WebKitTargetConditionals.xcconfig: Renamed.
20044 2018-03-12 Ross Kirsling <ross.kirsling@sony.com>
20046 [DRT] TestOptions should not be ObjC.
20047 https://bugs.webkit.org/show_bug.cgi?id=183487
20049 Reviewed by Per Arne Vollan.
20051 * DumpRenderTree/CMakeLists.txt:
20052 * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
20053 * DumpRenderTree/PlatformMac.cmake:
20054 Move TestOptions to platform-agnostic sources.
20056 * DumpRenderTree/TestOptions.h:
20057 * DumpRenderTree/TestOptions.cpp: Renamed from Tools/DumpRenderTree/TestOptions.mm.
20058 * DumpRenderTree/mac/DumpRenderTree.mm:
20059 Remove NSURL dependency and align with WTR as much as possible.
20061 * DumpRenderTree/win/DumpRenderTree.cpp:
20062 Consume TestOptions (recognizing just the ones that have WebPreferences defined for now).
20064 2018-03-12 Yoav Weiss <yoav@yoav.ws>
20066 Runtime flag for link prefetch and remove link subresource.
20067 https://bugs.webkit.org/show_bug.cgi?id=183540
20069 Reviewed by Chris Dumez.
20071 Remove the LINK_PREFETCH build time flag.
20073 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
20075 2018-03-12 Wenson Hsieh <wenson_hsieh@apple.com>
20077 REGRESSION(r211643): Dismissing WKActionSheet should not also dismiss its presenting view controller
20078 https://bugs.webkit.org/show_bug.cgi?id=183549
20079 <rdar://problem/34960698>
20081 Reviewed by Andy Estes.
20083 Add TestWebKitAPI support for testing WKWebViews embedded within presented view controllers, and use this to
20084 check that dismissing an action sheet does not additionally cause the view controller being used to present the
20085 web view to also dismiss.
20087 * TestWebKitAPI/ClassMethodSwizzler.h: Added.
20088 * TestWebKitAPI/ClassMethodSwizzler.mm: Added.
20089 (TestWebKitAPI::ClassMethodSwizzler::ClassMethodSwizzler):
20090 (TestWebKitAPI::ClassMethodSwizzler::~ClassMethodSwizzler):
20092 Add ClassMethodSwizzler, an RAII which swizzles an Objective-C class method over its lifetime.
20094 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
20095 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
20097 Add a new API test that loads a view controller which embeds a WKWebView, and verifies that presenting and then
20098 dismissing an action sheet from that web view does not cause the view controller to also dismiss.
20100 (TestWebKitAPI::setOverrideViewControllerForFullscreenPresentation):
20101 (TestWebKitAPI::overrideViewControllerForFullscreenPresentation):
20103 Mock +[UIViewController _viewControllerForFullScreenPresentationFromView:] to return the web view. This works
20104 around the fact that TestWebKitAPI is not a UI application, so certain pieces of UIKit API and SPI need to be
20105 stubbed or mocked to simulate being a UI application. We can remove these workarounds once
20106 https://webkit.org/b/175204 is addressed, and TestWebKitAPI becomes a UI application that can actually maintain
20107 a root view controller and key window.
20109 (TestWebKitAPI::TEST):
20110 * TestWebKitAPI/cocoa/TestWKWebView.h:
20111 * TestWebKitAPI/cocoa/TestWKWebView.mm:
20112 (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
20114 Add a new initializer for TestWKWebView that doesn't force the view to be hosted within a UIWindow. This is used
20115 by TestWKWebViewController to create a TestWKWebView in -loadView.
20117 * TestWebKitAPI/ios/TestWKWebViewController.h: Added.
20118 * TestWebKitAPI/ios/TestWKWebViewController.mm: Added.
20119 (-[TestWKWebViewControllerWindow _beginKeyWindowDeferral]):
20120 (-[TestWKWebViewControllerWindow _endKeyWindowDeferral]):
20122 Stub out these methods to prevent UIKit from hitting assertions when making this UIWindow the key window. This
20123 can also be removed once TestWebKitAPI is a UI application.
20125 (-[TestWKWebViewController initWithFrame:configuration:]):
20126 (-[TestWKWebViewController loadView]):
20127 (-[TestWKWebViewController webView]):
20128 (-[TestWKWebViewController dismissViewControllerAnimated:completion:]):
20129 (-[TestWKWebViewController dismissalHandler]):
20130 (-[TestWKWebViewController setDismissalHandler:]):
20132 Add a UIViewController helper subclass whose -view is a WKWebView. The new API test presents this view
20133 controller. Tests may also provide a dismissalHandler, which is invoked when the view controller is being
20134 dismissed. The new API test uses this hook to verify that the view controller containing the web view isn't also
20135 dismissed after the action sheet goes away.
20137 * TestWebKitAPI/ios/UIKitSPI.h:
20139 2018-03-12 Basuke Suzuki <Basuke.Suzuki@sony.com>
20141 [webkitpy] Remove openssl command dependency.
20142 https://bugs.webkit.org/show_bug.cgi?id=183494
20144 Reviewed by Ryosuke Niwa.
20146 Added Python implementation of PEM file perser and switched to use that
20147 from external `openssl` command.
20149 * Scripts/webkitpy/common/system/pemfile.py: Added.
20159 (Pem.certificate_request):
20160 (Pem.certificate_signing_request):
20161 (_parse_pem_format):
20162 (_parse_pem_format.find_begin):
20163 (_parse_pem_format.find_end):
20164 (_parse_pem_format.sections):
20165 * Scripts/webkitpy/common/system/pemfile_unittest.py: Added.
20167 (PemFileTest.test_parse):
20168 (PemFileTest.test_parse_bad_format):
20169 * Scripts/webkitpy/port/base.py:
20170 (Port.start_websocket_server):
20171 (Port._extract_certificate_from_pem): Deleted.
20172 (Port._extract_private_key_from_pem): Deleted.
20174 2018-03-12 Javier Fernandez <jfernandez@igalia.com>
20176 Remove GridLayout runtime flag
20177 https://bugs.webkit.org/show_bug.cgi?id=183484
20179 Reviewed by Myles C. Maxfield.
20181 The Grid Layout feature has been enabled by default for almost a
20182 year, so I think it's time to remove the runtime flag and the
20183 codepath run when the feature is disabled.
20185 * DumpRenderTree/mac/DumpRenderTree.mm:
20186 (enableExperimentalFeatures):
20188 2018-03-12 Antoine Quint <graouts@apple.com>
20190 [Web Animations] Implement CSS Animations and CSS Transitions as Web Animations
20191 https://bugs.webkit.org/show_bug.cgi?id=183504
20192 <rdar://problem/38372965>
20194 Reviewed by Jon Lee.
20196 Add a new <!-- webkit-test-runner --> flag to enable the CSS Animations and CSS Transitions
20197 as Web Animations runtime flag in the new tests we've created for this feature.
20199 * DumpRenderTree/TestOptions.h:
20200 * DumpRenderTree/TestOptions.mm:
20201 (TestOptions::TestOptions):
20202 * DumpRenderTree/mac/DumpRenderTree.mm:
20203 (setWebPreferencesForTestOptions):
20204 * WebKitTestRunner/TestController.cpp:
20205 (WTR::TestController::resetPreferencesToConsistentValues):
20206 (WTR::updateTestOptionsFromTestHeader):
20207 * WebKitTestRunner/TestOptions.h:
20208 (WTR::TestOptions::hasSameInitializationOptions const):
20210 2018-03-11 Zalan Bujtas <zalan@apple.com>
20212 [LayoutReloaded] Add Line class for InlineFormattingContext -and move files around.
20213 https://bugs.webkit.org/show_bug.cgi?id=183551
20215 Reviewed by Wenson Hsieh.
20217 * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js: Renamed from Tools/LayoutReloaded/BlockFormattingContext.js.
20218 (BlockFormattingContext):
20219 (BlockFormattingContext.prototype.layout):
20220 (BlockFormattingContext.prototype.computeWidth):
20221 (BlockFormattingContext.prototype.computeHeight):
20222 (BlockFormattingContext.prototype.marginTop):
20223 (BlockFormattingContext.prototype.marginBottom):
20224 (BlockFormattingContext.prototype._computeStaticPosition):
20225 (BlockFormattingContext.prototype._placeInFlowPositionedChildren):
20226 (BlockFormattingContext.prototype._placeOutOfFlowDescendants):
20227 (BlockFormattingContext.prototype._computeOutOfFlowWidth):
20228 (BlockFormattingContext.prototype._computeFloatingWidth):
20229 (BlockFormattingContext.prototype._computeInFlowWidth):
20230 (BlockFormattingContext.prototype._computeOutOfFlowHeight):
20231 (BlockFormattingContext.prototype._computeFloatingHeight):
20232 (BlockFormattingContext.prototype._computeInFlowHeight):
20233 (BlockFormattingContext.prototype._computeHorizontalConstraint):
20234 (BlockFormattingContext.prototype._computeContentHeight):
20235 (BlockFormattingContext.prototype._computeInFlowPositionedPosition):
20236 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
20237 (BlockFormattingContext.prototype._shrinkToFitWidth):
20238 * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js: Renamed from Tools/LayoutReloaded/BlockMarginCollapse.js.
20239 (BlockMarginCollapse.marginTop):
20240 (BlockMarginCollapse.marginBottom):
20241 (BlockMarginCollapse._isMarginTopCollapsedWithSibling):
20242 (BlockMarginCollapse._isMarginBottomCollapsedWithSibling):
20243 (BlockMarginCollapse._isMarginTopCollapsedWithParent):
20244 (BlockMarginCollapse._isMarginBottomCollapsedWithParent):
20245 (BlockMarginCollapse._nonCollapsedMarginTop):
20246 (BlockMarginCollapse._nonCollapsedMarginBottom):
20247 (BlockMarginCollapse._collapsedMarginTopFromFirstChild):
20248 (BlockMarginCollapse._collapsedMarginBottomFromLastChild):
20249 (BlockMarginCollapse._marginValue):
20250 (BlockMarginCollapse._hasAdjoiningMarginTopAndBottom):
20251 (BlockMarginCollapse):
20252 * LayoutReloaded/FormattingContext/FloatingContext.js: Renamed from Tools/LayoutReloaded/FloatingContext.js.
20254 (FloatingContext.prototype.computePosition):
20255 (FloatingContext.prototype.bottom):
20256 (FloatingContext.prototype._positionForFloating):
20257 (FloatingContext.prototype._positionForClear):
20258 (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
20259 (FloatingContext.prototype._addFloating):
20260 (FloatingContext.prototype._findInnerMostLeftAndRight):
20261 (FloatingContext.prototype._moveToNextVerticalPosition):
20262 (FloatingContext.prototype._availableSpace):
20263 (FloatingContext.prototype._findFloatingAtVerticalPosition):
20264 (FloatingContext.prototype._isEmpty):
20265 (FloatingContext.prototype._adjustedFloatingPosition):
20266 (FloatingContext.prototype._bottom):
20267 (FloatingContext.prototype._formattingContext):
20268 * LayoutReloaded/FormattingContext/FormattingContext.js: Renamed from Tools/LayoutReloaded/FormattingContext.js.
20269 (FormattingContext):
20270 (FormattingContext.prototype.rootContainer):
20271 (FormattingContext.prototype.floatingContext):
20272 (FormattingContext.prototype.layout):
20273 (FormattingContext.prototype.computeWidth):
20274 (FormattingContext.prototype.computeHeight):
20275 (FormattingContext.prototype.marginTop):
20276 (FormattingContext.prototype.marginLeft):
20277 (FormattingContext.prototype.marginBottom):
20278 (FormattingContext.prototype.marginRight):
20279 (FormattingContext.prototype.absoluteMarginBox):
20280 (FormattingContext.prototype.absoluteBorderBox):
20281 (FormattingContext.prototype.absolutePaddingBox):
20282 (FormattingContext.prototype.absoluteContentBox):
20283 * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js: Renamed from Tools/LayoutReloaded/InlineFormattingContext.js.
20284 (InlineFormattingContext):
20285 (InlineFormattingContext.prototype.layout):
20286 (InlineFormattingContext.prototype._handleInlineBox):
20287 (InlineFormattingContext.prototype._handleText):
20288 (InlineFormattingContext.prototype._commitLine):
20289 (InlineFormattingContext.prototype._line):
20290 * LayoutReloaded/FormattingContext/InlineFormatting/Line.js: Copied from Tools/LayoutReloaded/InitialBlockContainer.js.
20292 (Line.prototype.isEmpty):
20293 (Line.prototype.availableWidth):
20294 (Line.prototype.appendFragment):
20295 * LayoutReloaded/LayoutReloaded.xcworkspace/contents.xcworkspacedata:
20296 * LayoutReloaded/LayoutTree/BlockContainer.js: Renamed from Tools/LayoutReloaded/BlockContainer.js.
20298 (BlockContainer.prototype.establishesInlineFormattingContext):
20299 * LayoutReloaded/LayoutTree/Box.js: Renamed from Tools/LayoutReloaded/Box.js.
20301 (Box.prototype.id):
20302 (Box.prototype.setRendererName):
20303 (Box.prototype.name):
20304 (Box.prototype.node):
20305 (Box.prototype.parent):
20306 (Box.prototype.nextSibling):
20307 (Box.prototype.nextInFlowSibling):
20308 (Box.prototype.previousSibling):
20309 (Box.prototype.previousInFlowSibling):
20310 (Box.prototype.setParent):
20311 (Box.prototype.setNextSibling):
20312 (Box.prototype.setPreviousSibling):
20313 (Box.prototype.rect):
20314 (Box.prototype.topLeft):
20315 (Box.prototype.bottomRight):
20316 (Box.prototype.setTopLeft):
20317 (Box.prototype.setSize):
20318 (Box.prototype.setWidth):
20319 (Box.prototype.setHeight):
20320 (Box.prototype.isContainer):
20321 (Box.prototype.isBlockLevelBox):
20322 (Box.prototype.isBlockContainerBox):
20323 (Box.prototype.isInlineLevelBox):
20324 (Box.prototype.setIsAnonymous):
20325 (Box.prototype.isAnonymous):
20326 (Box.prototype.establishesFormattingContext):
20327 (Box.prototype.establishedFormattingContext):
20328 (Box.prototype.establishesBlockFormattingContext):
20329 (Box.prototype.establishesInlineFormattingContext):
20330 (Box.prototype.isPositioned):
20331 (Box.prototype.isRelativePositioned):
20332 (Box.prototype.isAbsolutePositioned):
20333 (Box.prototype.isFixedPositioned):
20334 (Box.prototype.isInFlow):
20335 (Box.prototype.isOutOfFlowPositioned):
20336 (Box.prototype.isInFlowPositioned):
20337 (Box.prototype.isFloatingPositioned):
20338 (Box.prototype.isFloatingOrOutOfFlowPositioned):
20339 (Box.prototype.isRootElement):
20340 (Box.prototype.containingBlock):
20341 (Box.prototype.borderBox):
20342 (Box.prototype.paddingBox):
20343 (Box.prototype.contentBox):
20344 * LayoutReloaded/LayoutTree/Container.js: Renamed from Tools/LayoutReloaded/Container.js.
20346 (Container.prototype.isContainer):
20347 (Container.prototype.setFirstChild):
20348 (Container.prototype.setLastChild):
20349 (Container.prototype.firstChild):
20350 (Container.prototype.firstInFlowChild):
20351 (Container.prototype.lastChild):
20352 (Container.prototype.lastInFlowChild):
20353 (Container.prototype.hasChild):
20354 (Container.prototype.hasInFlowChild):
20355 * LayoutReloaded/LayoutTree/InitialBlockContainer.js: Renamed from Tools/LayoutReloaded/InitialBlockContainer.js.
20356 (InitialBlockContainer):
20357 (InitialBlockContainer.prototype.establishesBlockFormattingContext):
20358 (InitialBlockContainer.prototype.paddingBox):
20359 (InitialBlockContainer.prototype.contentBox):
20360 * LayoutReloaded/LayoutTree/InlineBox.js: Renamed from Tools/LayoutReloaded/InlineBox.js.
20362 (InlineBox.prototype.setText):
20363 (InlineBox.prototype.text):
20364 * LayoutReloaded/LayoutTree/Text.js: Renamed from Tools/LayoutReloaded/Text.js.
20366 (Text.prototype.node):
20367 (Text.prototype.content):
20368 (Text.prototype.length):
20369 * LayoutReloaded/Utils.js:
20370 (Utils.nextBreakingOpportunity):
20371 (Utils.measureText):
20372 * LayoutReloaded/misc/headers/Line.h: Copied from Tools/LayoutReloaded/misc/headers/Text.h.
20373 * LayoutReloaded/misc/headers/Text.h:
20374 * LayoutReloaded/test/border-simple.html:
20375 * LayoutReloaded/test/index.html:
20377 2018-03-10 Wenson Hsieh <wenson_hsieh@apple.com>
20379 [macOS] Copying a table from the Numbers app and pasting into iCloud Numbers fails
20380 https://bugs.webkit.org/show_bug.cgi?id=183485
20381 <rdar://problem/38041984>
20383 Reviewed by Ryosuke Niwa.
20385 Add new API tests to cover scenarios in which we paste image data alongside text data.
20387 * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
20388 (TestWebKitAPI::TEST):
20389 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
20390 (TestWebKitAPI::TEST):
20392 2018-03-09 Zalan Bujtas <zalan@apple.com>
20394 [LayoutReloaded] Initial commit -block formatting context.
20395 https://bugs.webkit.org/show_bug.cgi?id=183462
20397 Reviewed by Antti Koivisto.
20401 * LayoutReloaded/BlockContainer.js: Added.
20403 (BlockContainer.prototype.establishesInlineFormattingContext):
20404 * LayoutReloaded/BlockFormattingContext.js: Added.
20405 (BlockFormattingContext):
20406 (BlockFormattingContext.prototype.layout):
20407 (BlockFormattingContext.prototype.computeWidth):
20408 (BlockFormattingContext.prototype.computeHeight):
20409 (BlockFormattingContext.prototype.marginTop):
20410 (BlockFormattingContext.prototype.marginBottom):
20411 (BlockFormattingContext.prototype._computeStaticPosition):
20412 (BlockFormattingContext.prototype._placeInFlowPositionedChildren):
20413 (BlockFormattingContext.prototype._placeOutOfFlowDescendants):
20414 (BlockFormattingContext.prototype._computeOutOfFlowWidth):
20415 (BlockFormattingContext.prototype._computeFloatingWidth):
20416 (BlockFormattingContext.prototype._computeInFlowWidth):
20417 (BlockFormattingContext.prototype._computeOutOfFlowHeight):
20418 (BlockFormattingContext.prototype._computeFloatingHeight):
20419 (BlockFormattingContext.prototype._computeInFlowHeight):
20420 (BlockFormattingContext.prototype._computeHorizontalConstraint):
20421 (BlockFormattingContext.prototype._computeContentHeight):
20422 (BlockFormattingContext.prototype._computeInFlowPositionedPosition):
20423 (BlockFormattingContext.prototype._computeOutOfFlowPosition):
20424 (BlockFormattingContext.prototype._shrinkToFitWidth):
20425 * LayoutReloaded/BlockMarginCollapse.js: Added.
20426 (BlockMarginCollapse.marginTop):
20427 (BlockMarginCollapse.marginBottom):
20428 (BlockMarginCollapse._isMarginTopCollapsedWithSibling):
20429 (BlockMarginCollapse._isMarginBottomCollapsedWithSibling):
20430 (BlockMarginCollapse._isMarginTopCollapsedWithParent):
20431 (BlockMarginCollapse._isMarginBottomCollapsedWithParent):
20432 (BlockMarginCollapse._nonCollapsedMarginTop):
20433 (BlockMarginCollapse._nonCollapsedMarginBottom):
20434 (BlockMarginCollapse._collapsedMarginTopFromFirstChild):
20435 (BlockMarginCollapse._collapsedMarginBottomFromLastChild):
20436 (BlockMarginCollapse._marginValue):
20437 (BlockMarginCollapse._hasAdjoiningMarginTopAndBottom):
20438 (BlockMarginCollapse):
20439 * LayoutReloaded/Box.js: Added.
20441 (Box.prototype.id):
20442 (Box.prototype.setRendererName):
20443 (Box.prototype.name):
20444 (Box.prototype.node):
20445 (Box.prototype.parent):
20446 (Box.prototype.nextSibling):
20447 (Box.prototype.nextInFlowSibling):
20448 (Box.prototype.previousSibling):
20449 (Box.prototype.previousInFlowSibling):
20450 (Box.prototype.setParent):
20451 (Box.prototype.setNextSibling):
20452 (Box.prototype.setPreviousSibling):
20453 (Box.prototype.rect):
20454 (Box.prototype.topLeft):
20455 (Box.prototype.bottomRight):
20456 (Box.prototype.setTopLeft):
20457 (Box.prototype.setSize):
20458 (Box.prototype.setWidth):
20459 (Box.prototype.setHeight):
20460 (Box.prototype.isContainer):
20461 (Box.prototype.isBlockLevelBox):
20462 (Box.prototype.isBlockContainerBox):
20463 (Box.prototype.isInlineLevelBox):
20464 (Box.prototype.setIsAnonymous):
20465 (Box.prototype.isAnonymous):
20466 (Box.prototype.establishesFormattingContext):
20467 (Box.prototype.establishedFormattingContext):
20468 (Box.prototype.establishesBlockFormattingContext):
20469 (Box.prototype.establishesInlineFormattingContext):
20470 (Box.prototype.isPositioned):
20471 (Box.prototype.isRelativePositioned):
20472 (Box.prototype.isAbsolutePositioned):
20473 (Box.prototype.isFixedPositioned):
20474 (Box.prototype.isInFlow):
20475 (Box.prototype.isOutOfFlowPositioned):
20476 (Box.prototype.isInFlowPositioned):
20477 (Box.prototype.isFloatingPositioned):
20478 (Box.prototype.isFloatingOrOutOfFlowPositioned):
20479 (Box.prototype.isRootElement):
20480 (Box.prototype.containingBlock):
20481 (Box.prototype.borderBox):
20482 (Box.prototype.paddingBox):
20483 (Box.prototype.contentBox):
20484 * LayoutReloaded/Container.js: Added.
20486 (Container.prototype.isContainer):
20487 (Container.prototype.setFirstChild):
20488 (Container.prototype.setLastChild):
20489 (Container.prototype.firstChild):
20490 (Container.prototype.firstInFlowChild):
20491 (Container.prototype.lastChild):
20492 (Container.prototype.lastInFlowChild):
20493 (Container.prototype.hasChild):
20494 (Container.prototype.hasInFlowChild):
20495 * LayoutReloaded/FloatingContext.js: Added.
20497 (FloatingContext.prototype.computePosition):
20498 (FloatingContext.prototype.bottom):
20499 (FloatingContext.prototype._positionForFloating):
20500 (FloatingContext.prototype._positionForClear):
20501 (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
20502 (FloatingContext.prototype._addFloating):
20503 (FloatingContext.prototype._findInnerMostLeftAndRight):
20504 (FloatingContext.prototype._moveToNextVerticalPosition):
20505 (FloatingContext.prototype._availableSpace):
20506 (FloatingContext.prototype._findFloatingAtVerticalPosition):
20507 (FloatingContext.prototype._isEmpty):
20508 (FloatingContext.prototype._adjustedFloatingPosition):
20509 (FloatingContext.prototype._bottom):
20510 (FloatingContext.prototype._formattingContext):
20511 * LayoutReloaded/FormattingContext.js: Added.
20512 (FormattingContext):
20513 (FormattingContext.prototype.rootContainer):
20514 (FormattingContext.prototype.floatingContext):
20515 (FormattingContext.prototype.layout):
20516 (FormattingContext.prototype.computeWidth):
20517 (FormattingContext.prototype.computeHeight):
20518 (FormattingContext.prototype.marginTop):
20519 (FormattingContext.prototype.marginLeft):
20520 (FormattingContext.prototype.marginBottom):
20521 (FormattingContext.prototype.marginRight):
20522 (FormattingContext.prototype.absoluteMarginBox):
20523 (FormattingContext.prototype.absoluteBorderBox):
20524 (FormattingContext.prototype.absolutePaddingBox):
20525 (FormattingContext.prototype.absoluteContentBox):
20526 * LayoutReloaded/InitialBlockContainer.js: Added.
20527 (InitialBlockContainer):
20528 (InitialBlockContainer.prototype.establishesBlockFormattingContext):
20529 (InitialBlockContainer.prototype.paddingBox):
20530 (InitialBlockContainer.prototype.contentBox):
20531 * LayoutReloaded/InlineBox.js: Added.
20533 (InlineBox.prototype.setText):
20534 (InlineBox.prototype.text):
20535 * LayoutReloaded/InlineFormattingContext.js: Added.
20536 (InlineFormattingContext):
20537 (InlineFormattingContext.prototype.layout):
20538 (InlineFormattingContext.prototype._handleInlineBox):
20539 (InlineFormattingContext.prototype._handleText):
20540 * LayoutReloaded/Layout.js: Added.
20542 * LayoutReloaded/LayoutContext.js: Added.
20544 (LayoutContext.prototype.layoutFormattingContext):
20545 * LayoutReloaded/LayoutReloaded.xcworkspace/contents.xcworkspacedata: Added.
20546 * LayoutReloaded/LayoutReloaded.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: Added.
20547 * LayoutReloaded/README.md: Added.
20548 * LayoutReloaded/Text.js: Added.
20550 * LayoutReloaded/TreeBuilder.js: Added.
20551 (TreeBuilder.prototype.createTree):
20552 (TreeBuilder.prototype._createAndAttachBox):
20553 (TreeBuilder.prototype._appendChild):
20554 (TreeBuilder.prototype._findBox):
20555 (TreeBuilder.prototype._findNode):
20557 * LayoutReloaded/Utils.js: Added.
20559 (LayoutPoint.prototype.setLeft):
20560 (LayoutPoint.prototype.setTop):
20561 (LayoutPoint.prototype.left):
20562 (LayoutPoint.prototype.top):
20563 (LayoutPoint.prototype.shiftLeft):
20564 (LayoutPoint.prototype.shiftTop):
20565 (LayoutPoint.prototype.moveBy):
20566 (LayoutPoint.prototype.equal):
20567 (LayoutPoint.prototype.clone):
20569 (LayoutSize.prototype.setWidth):
20570 (LayoutSize.prototype.setHeight):
20571 (LayoutSize.prototype.width):
20572 (LayoutSize.prototype.height):
20573 (LayoutSize.prototype.growBy):
20574 (LayoutSize.prototype.shrinkBy):
20575 (LayoutSize.prototype.isEmpty):
20576 (LayoutSize.prototype.equal):
20577 (LayoutSize.prototype.clone):
20579 (LayoutRect.prototype.setTop):
20580 (LayoutRect.prototype.setLeft):
20581 (LayoutRect.prototype.setBottom):
20582 (LayoutRect.prototype.setRight):
20583 (LayoutRect.prototype.left):
20584 (LayoutRect.prototype.top):
20585 (LayoutRect.prototype.bottom):
20586 (LayoutRect.prototype.right):
20587 (LayoutRect.prototype.setTopLeft):
20588 (LayoutRect.prototype.topLeft):
20589 (LayoutRect.prototype.topRight):
20590 (LayoutRect.prototype.bottomRight):
20591 (LayoutRect.prototype.setWidth):
20592 (LayoutRect.prototype.setHeight):
20593 (LayoutRect.prototype.setSize):
20594 (LayoutRect.prototype.size):
20595 (LayoutRect.prototype.width):
20596 (LayoutRect.prototype.height):
20597 (LayoutRect.prototype.growBy):
20598 (LayoutRect.prototype.shrinkBy):
20599 (LayoutRect.prototype.moveBy):
20600 (LayoutRect.prototype.isEmpty):
20601 (LayoutRect.prototype.equal):
20602 (LayoutRect.prototype.intersects):
20603 (LayoutRect.prototype.contains):
20604 (LayoutRect.prototype.clone):
20605 (ASSERT_NOT_REACHED):
20607 (Utils.computedValue):
20608 (Utils.propertyIsAuto):
20609 (Utils.isWidthAuto):
20610 (Utils.isHeightAuto):
20612 (Utils.isLeftAuto):
20613 (Utils.isBottomAuto):
20614 (Utils.isRightAuto):
20621 (Utils.hasBorderTop):
20622 (Utils.hasBorderBottom):
20623 (Utils.hasPaddingTop):
20624 (Utils.hasPaddingBottom):
20625 (Utils.computedMarginTop):
20626 (Utils.computedMarginLeft):
20627 (Utils.computedMarginBottom):
20628 (Utils.computedMarginRight):
20629 (Utils.computedBorderTopLeft):
20630 (Utils.computedBorderBottomRight):
20631 (Utils.computedPaddingTopLeft):
20632 (Utils.computedPaddingBottomRight):
20633 (Utils.computedBorderAndPaddingTop):
20634 (Utils.computedBorderAndPaddingLeft):
20635 (Utils.computedBorderAndPaddingBottom):
20636 (Utils.computedBorderAndPaddingRight):
20637 (Utils.computedHorizontalBorderAndPadding):
20638 (Utils.computedVerticalBorderAndPadding):
20640 (Utils.hasClearLeft):
20641 (Utils.hasClearRight):
20642 (Utils.hasClearBoth):
20643 (Utils.isBlockLevelElement):
20644 (Utils.isBlockContainerElement):
20645 (Utils.isInlineLevelElement):
20646 (Utils.isTableElement):
20647 (Utils.isRelativePositioned):
20648 (Utils.isAbsolutePositioned):
20649 (Utils.isFixedPositioned):
20650 (Utils.isOverflowVisible):
20651 (Utils.isFloatingPositioned):
20652 (Utils.isFloatingLeft):
20653 (Utils.mapToContainer):
20654 (Utils.mapStaticToAbsolute):
20655 (Utils.collectOutOfFlowDescendants):
20656 (Utils.nextBreakingOpportunity):
20657 (Utils.measureText):
20658 (Utils.layoutTreeDump):
20662 * LayoutReloaded/misc/LayoutReloadedWebKit.patch: Added.
20663 * LayoutReloaded/misc/headers/BlockContainer.h: Added.
20664 * LayoutReloaded/misc/headers/BlockFormattingContext.h: Added.
20665 * LayoutReloaded/misc/headers/BlockMarginCollapse.h: Added.
20666 * LayoutReloaded/misc/headers/Box.h: Added.
20667 * LayoutReloaded/misc/headers/Container.h: Added.
20668 * LayoutReloaded/misc/headers/FloatingContext.h: Added.
20669 * LayoutReloaded/misc/headers/FormattingContext.h: Added.
20670 * LayoutReloaded/misc/headers/InitialBlockContainer.h: Added.
20671 * LayoutReloaded/misc/headers/InlineBox.h: Added.
20672 * LayoutReloaded/misc/headers/LayoutContext.h: Added.
20673 * LayoutReloaded/misc/headers/Text.h: Added.
20674 * LayoutReloaded/test/TestHarness.js: Added.
20675 (verifyLayoutTreeDump):
20677 * LayoutReloaded/test/absolute-auto-with-sibling-margin-bottom.html: Added.
20678 * LayoutReloaded/test/absolute-bottom.html: Added.
20679 * LayoutReloaded/test/absolute-height-stretch.html: Added.
20680 * LayoutReloaded/test/absolute-left-auto.html: Added.
20681 * LayoutReloaded/test/absolute-left-right-top-bottom-auto.html: Added.
20682 * LayoutReloaded/test/absolute-nested.html: Added.
20683 * LayoutReloaded/test/absolute-nested2.html: Added.
20684 * LayoutReloaded/test/absolute-simple.html: Added.
20685 * LayoutReloaded/test/absolute-width-shrink-to-fit.html: Added.
20686 * LayoutReloaded/test/absolute-width-stretch.html: Added.
20687 * LayoutReloaded/test/absolute-with-inline-preferred-width.html: Added.
20688 * LayoutReloaded/test/absolute-with-static-block-position-nested.html: Added.
20689 * LayoutReloaded/test/almost-intruding-left-float-simple.html: Added.
20690 * LayoutReloaded/test/border-simple.html: Added.
20691 * LayoutReloaded/test/fixed-nested.html: Added.
20692 * LayoutReloaded/test/float-left-when-container-has-padding-margin.html: Added.
20693 * LayoutReloaded/test/floating-box-clear-both-simple.html: Added.
20694 * LayoutReloaded/test/floating-box-clear-right-simple.html: Added.
20695 * LayoutReloaded/test/floating-box-left-and-right-multiple-with-top-offset.html: Added.
20696 * LayoutReloaded/test/floating-box-left-and-right-multiple.html: Added.
20697 * LayoutReloaded/test/floating-box-right-simple.html: Added.
20698 * LayoutReloaded/test/floating-box-with-clear-siblings.html: Added.
20699 * LayoutReloaded/test/floating-box-with-clear-simple.html: Added.
20700 * LayoutReloaded/test/floating-box-with-new-formatting-context.html: Added.
20701 * LayoutReloaded/test/floating-box-with-relative-positioned-sibling.html: Added.
20702 * LayoutReloaded/test/floating-left-right-simple.html: Added.
20703 * LayoutReloaded/test/floating-left-right-with-all-margins.html: Added.
20704 * LayoutReloaded/test/floating-lefts-and-rights-simple.html: Added.
20705 * LayoutReloaded/test/floating-multiple-lefts-in-body.html: Added.
20706 * LayoutReloaded/test/floating-multiple-lefts-multiple-lines.html: Added.
20707 * LayoutReloaded/test/floating-multiple-lefts.html: Added.
20708 * LayoutReloaded/test/floating-sizing.html: Added.
20709 * LayoutReloaded/test/floating-sizing2.html: Added.
20710 * LayoutReloaded/test/floating-sizing3.html: Added.
20711 * LayoutReloaded/test/floating-with-new-block-formatting-context.html: Added.
20712 * LayoutReloaded/test/index.html: Added.
20713 * LayoutReloaded/test/inline-content-simple.html: Added.
20714 * LayoutReloaded/test/intruding-left-float-simple.html: Added.
20715 * LayoutReloaded/test/margin-collapse-bottom-bottom.html: Added.
20716 * LayoutReloaded/test/margin-collapse-bottom-nested.html: Added.
20717 * LayoutReloaded/test/margin-collapse-first-last-are-floating.html: Added.
20718 * LayoutReloaded/test/margin-collapse-simple.html: Added.
20719 * LayoutReloaded/test/margin-collapse-top-nested.html: Added.
20720 * LayoutReloaded/test/margin-collapse-when-child-has-padding-border.html: Added.
20721 * LayoutReloaded/test/margin-collapse-with-block-formatting-context.html: Added.
20722 * LayoutReloaded/test/margin-collapse-with-block-formatting-context2.html: Added.
20723 * LayoutReloaded/test/margin-left-right-sizing-out-of-flow.html: Added.
20724 * LayoutReloaded/test/margin-left-right-sizing.html: Added.
20725 * LayoutReloaded/test/margin-propagation-simple-content-height.html: Added.
20726 * LayoutReloaded/test/margin-sibling-collapse-propagated.html: Added.
20727 * LayoutReloaded/test/margin-simple.html: Added.
20728 * LayoutReloaded/test/negative-margin-simple.html: Added.
20729 * LayoutReloaded/test/padding-nested.html: Added.
20730 * LayoutReloaded/test/padding-simple.html: Added.
20731 * LayoutReloaded/test/relative-auto-with-parent-offset.html: Added.
20732 * LayoutReloaded/test/relative-auto.html: Added.
20733 * LayoutReloaded/test/relative-bottom.html: Added.
20734 * LayoutReloaded/test/relative-right.html: Added.
20735 * LayoutReloaded/test/relative-siblings.html: Added.
20736 * LayoutReloaded/test/relative-simple.html: Added.
20738 2018-03-09 Stephan Szabo <stephan.szabo@sony.com>
20740 WebKitTestRunner: Do not build accessibility files/idl when !HAVE(ACCESSIBILITY)
20741 https://bugs.webkit.org/show_bug.cgi?id=183516
20743 Reviewed by Alex Christensen.
20745 * WebKitTestRunner/CMakeLists.txt:
20747 2018-03-09 Basuke Suzuki <Basuke.Suzuki@sony.com>
20749 [webkitpy, WinCairo] Launch Apache HTTPD for HTTP Tests.
20750 https://bugs.webkit.org/show_bug.cgi?id=183265
20752 Reviewed by Daniel Bates.
20754 Launch apache httpd server from python script for WinCairo HTTP LayoutTests. By now, AppleWin uses
20755 Cygwin to launch httpd server. This patch enables native Windows to run HTTP LayoutTests by starting
20756 and stopping httpd server from the script.
20758 * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
20759 (LayoutTestApacheHttpd.__init__):
20760 (LayoutTestApacheHttpd._copy_apache_config_file):
20761 (LayoutTestApacheHttpd):
20762 (LayoutTestApacheHttpd.platform):
20763 (LayoutTestApacheHttpd._spawn_process):
20764 (LayoutTestApacheHttpd._stop_running_server):
20765 (LayoutTestApacheHttpd._run):
20766 (LayoutTestApacheHttpd._server_error):
20767 * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
20768 (HttpServerBase.aliases):
20770 (HttpServerBase._build_alias_path_pairs):
20771 (HttpServerBase._build_alias_path_pairs._make_path):
20772 * Scripts/webkitpy/layout_tests/servers/http_server_base_unittest.py:
20773 (TestHttpServerBase.test_corrupt_pid_file):
20774 (TestHttpServerBase):
20775 (TestHttpServerBase.test_build_alias_path_pairs):
20776 * Scripts/webkitpy/port/base.py:
20777 (Port._apache_config_file_name_for_platform):
20778 * Scripts/webkitpy/port/port_testcase.py:
20779 (test_apache_config_file_name_for_platform):
20780 * Scripts/webkitpy/port/win.py:
20781 (WinPort._path_to_apache):
20782 (WinCairoPort.default_baseline_search_path):
20784 (WinCairoPort.check_httpd):
20786 2018-03-09 Carlos Garcia Campos <cgarcia@igalia.com>
20788 [GTK] Do not use WebKitDOMHTMLFormElement as argument of signal WebKitWebPage::will-submit-form
20789 https://bugs.webkit.org/show_bug.cgi?id=183510
20791 Reviewed by Michael Catanzaro.
20793 Update the test to use WebKitDOMElement instead and fix a memory leak.
20795 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
20796 (handleFormSubmissionCallback):
20797 (willSubmitFormCallback):
20799 2018-03-08 Stephan Szabo <stephan.szabo@sony.com>
20801 WebKitTestRunner: Don't use accessibility controller when !HAVE(ACCESSIBILITY)
20802 https://bugs.webkit.org/show_bug.cgi?id=183475
20804 Reviewed by Youenn Fablet.
20806 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
20807 (WTR::InjectedBundle::done):
20808 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
20809 (WTR::InjectedBundlePage::didClearWindowForFrame):
20811 2018-03-08 Ms2ger <Ms2ger@igalia.com>
20813 [WPE] Update expectations for API tests
20814 https://bugs.webkit.org/show_bug.cgi?id=183434
20816 Unreviewed test gardening.
20818 * TestWebKitAPI/glib/TestExpectations.json:
20820 2018-03-07 Carlos Garcia Campos <cgarcia@igalia.com>
20822 [GTK][WPE] Leak checker is not working in WebKitGLib web process tests
20823 https://bugs.webkit.org/show_bug.cgi?id=183404
20825 Reviewed by Michael Catanzaro.
20827 This might have regressed when we started to use the JSC garbage collector timers. The thing is that we expect
20828 that the WebProcessTester object that we expose to JavaScript is released when the web frame is destroyed, but
20829 that's no longer the case. On window object cleared a GC is scheduled, but JSC timers do the actual garbage
20830 collection later. In the case of tests that never happens because the web process finishes quickly after the
20831 test. We need to force a garbage collection at some point when the web page is destroyed. We can't use the
20832 WebKitWebPage destroy signal, since we are also checking that WebKitWebPage isn't leaked. The
20833 API::InjectedBundle::Client::willDestroyPage() always happen when the page is closed, even if WebKitWebPage is
20834 still alive, so we can force the GC at that point. The only problem is that the frame is detached right after
20835 that point, so we can't check WebKitFrame leaks. The only frame in the tests is the main one, so we can assume
20836 that if WebKitWebPage is released, the frame is too.
20838 * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
20839 (WebKitFrameTest::testMainFrame): Stop checking we don't leak WebKitFrame.
20840 (WebKitFrameTest::testURI): Ditto.
20841 (WebKitFrameTest::testJavaScriptContext): Ditto.
20842 * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
20843 (testWebKitFrameMainFrame): Use new WebViewTest::runWebProcessTest() API.
20844 (testWebKitFrameURI): Ditto.
20845 (testWebKitFrameJavaScriptContext): Ditto.
20846 (webkitFrameTestRun): Deleted.
20847 * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
20848 (runTest): We no longer need the special case for dom-cache test.
20849 (windowObjectClearedCallback): Only expose test runner object to JavaScript when loading tests.
20850 (webkit_web_extension_initialize): Call webkitWebExtensionSetGarbageCollectOnPageDestroy() to ensure a garbage
20851 collection is performed when the page is closing.
20852 * TestWebKitAPI/Tests/WebKitGtk/DOMClientRectTest.cpp:
20853 (WebKitDOMClientRectTest::testDivClientRectsPositionAndLength): Fix memory leak,
20854 webkit_dom_client_rect_list_item() returns a full reference.
20855 * TestWebKitAPI/Tests/WebKitGtk/TestAutocleanups.cpp:
20856 (testWebProcessAutocleanups):Use new WebViewTest::runWebProcessTest() API.
20857 * TestWebKitAPI/Tests/WebKitGtk/TestDOMClientRect.cpp:
20858 (testWebKitDOMClientRectDivBoundingClientRectPosition): Use new WebViewTest::runWebProcessTest() API.
20859 (testWebKitDOMClientRectDivClientRectsPositionAndLength): Use new WebViewTest::runWebProcessTest() API.
20860 (prepareDOMForClientRectPositionTests): Deleted.
20861 * TestWebKitAPI/Tests/WebKitGtk/TestDOMNode.cpp:
20862 (testWebKitDOMNodeHierarchyNavigation): Use new WebViewTest::runWebProcessTest() API.
20863 (testWebKitDOMNodeInsertion): Ditto.
20864 (testWebKitDOMNodeTagNamesNodeList): Ditto.
20865 (testWebKitDOMNodeTagNamesHTMLCollection): Ditto.
20866 (testWebKitDOMObjectCache): We no longer need to run the test several times, since runWebProcessTest() loads
20867 about blank after every test.
20868 (prepareDOMForTagNamesTests): Deleted.
20869 * TestWebKitAPI/Tests/WebKitGtk/TestDOMNodeFilter.cpp:
20870 (testWebKitDOMNodeFilterTreeWalker): Use new WebViewTest::runWebProcessTest() API.
20871 (testWebKitDOMNodeFilterNodeIterator): Ditto.
20872 (runTest): Deleted.
20873 * TestWebKitAPI/Tests/WebKitGtk/TestDOMXPathNSResolver.cpp:
20874 (testWebKitDOMXPathNSResolverNative): Use new WebViewTest::runWebProcessTest() API.
20875 (testWebKitDOMXPathNSResolverCustom): Ditto.
20876 * TestWebKitAPI/Tests/WebKitGtk/TestEditor.cpp:
20877 (testWebKitWebEditorSelectionChanged): Use new WebViewTest::runWebProcessTest() API.
20878 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
20879 (WebViewTest::runWebProcessTest): It now receives the contents, so it automatically loads the view using
20880 "webprocess://test" as base URI, used to detect tests in the web process. It also loads about:blank after every
20881 test to ensure that window object is cleared.
20882 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
20884 2018-03-07 Youenn Fablet <youenn@apple.com>
20886 Match unsupported plugins based on domains and not origin
20887 https://bugs.webkit.org/show_bug.cgi?id=183384
20889 Reviewed by Chris Dumez.
20891 * TestWebKitAPI/Tests/WebCore/URL.cpp:
20892 (TestWebKitAPI::TEST_F):
20893 * WebKitTestRunner/TestController.cpp:
20894 (WTR::TestController::setPluginSupportedMode): Update to whitelist
20895 localhost and not http://localhost:8080
20897 2018-03-07 Jonathan Bedard <jbedard@apple.com>
20899 webkitpy: Allow apple_additions() to define additional ports
20900 https://bugs.webkit.org/show_bug.cgi?id=183412
20901 <rdar://problem/38232353>
20903 Reviewed by Aakash Jain.
20905 * Scripts/webkitpy/port/factory.py:
20906 (PortFactory.get): Allow apple_additions to define port classes to be used
20907 in run-webkit-tests.
20909 2018-03-07 Jonathan Bedard <jbedard@apple.com>
20911 webkitpy: Remove obsolete function from MockAppleAdditions
20912 https://bugs.webkit.org/show_bug.cgi?id=183415
20913 <rdar://problem/38236407>
20915 Reviewed by Aakash Jain.
20917 * Scripts/webkitpy/port/port_testcase.py:
20918 (bind_mock_apple_additions.MockAppleAdditions):
20919 (bind_mock_apple_additions.MockAppleAdditions.ios_os_name): Deleted.
20920 (bind_mock_apple_additions.MockAppleAdditions.mac_os_name): Deleted.
20922 2018-03-07 Jonathan Bedard <jbedard@apple.com>
20924 webkitpy: --dedicated-simulators does not boot the correct number of simulators
20925 https://bugs.webkit.org/show_bug.cgi?id=183409
20926 <rdar://problem/38224631>
20928 Reviewed by Aakash Jain.
20930 * Scripts/webkitpy/port/ios_simulator.py:
20931 (IOSSimulatorPort.default_child_processes): When not using dedicated simulators,
20932 we should use the number of booted simulators as our default child processes.
20934 2018-03-07 Alejandro G. Castro <alex@igalia.com>
20936 Make NetworkRTCResolver port agnostic
20937 https://bugs.webkit.org/show_bug.cgi?id=178855
20939 Reviewed by Youenn Fablet.
20941 Added new unit tests for he resolve and stopResolve functions. We need to compile them for the
20942 other platforms when the APIs are supported.
20944 * TestWebKitAPI/PlatformGTK.cmake:
20945 * TestWebKitAPI/Tests/WebCore/DNS.cpp:
20947 2018-03-06 Youenn Fablet <youenn@apple.com>
20949 didReceiveServerRedirectForProvisionalNavigation is not called in case of document redirection with service worker registration change
20950 https://bugs.webkit.org/show_bug.cgi?id=183299
20951 <rdar://problem/37547029>
20953 Reviewed by Alex Christensen.
20955 Add support for checking whether this callback is called.
20956 Used in the added layout test.
20958 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
20959 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
20960 (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
20961 (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
20962 * WebKitTestRunner/InjectedBundle/TestRunner.h:
20963 * WebKitTestRunner/TestController.cpp:
20964 (WTR::TestController::createOtherPage):
20965 (WTR::TestController::resetStateToConsistentValues):
20966 (WTR::TestController::didReceiveServerRedirectForProvisionalNavigation):
20967 * WebKitTestRunner/TestController.h:
20968 (WTR::TestController::didReceiveServerRedirectForProvisionalNavigation const):
20969 (WTR::TestController::clearDidReceiveServerRedirectForProvisionalNavigation):
20970 * WebKitTestRunner/TestInvocation.cpp:
20971 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
20973 2018-03-06 Chris Dumez <cdumez@apple.com>
20975 fast/loader/redirect-to-invalid-url-using-meta-refresh-disallowed.html fails with async policy delegates
20976 https://bugs.webkit.org/show_bug.cgi?id=183345
20978 Reviewed by Alex Christensen.
20980 Add layout test infrastructure so a test can know when didCancelClientRedirectForFrame has
20981 been called. The tests used to rely on a 0-timer but this does not work when the client
20982 responds to the navigation policy asynchronously.
20984 * DumpRenderTree/TestRunner.cpp:
20985 (getDidCancelClientRedirect):
20986 (TestRunner::staticValues):
20987 * DumpRenderTree/TestRunner.h:
20988 (TestRunner::didCancelClientRedirect const):
20989 (TestRunner::setDidCancelClientRedirect):
20990 * DumpRenderTree/mac/FrameLoadDelegate.mm:
20991 (-[FrameLoadDelegate webView:didCancelClientRedirectForFrame:]):
20992 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
20993 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
20994 (WTR::InjectedBundlePage::didCancelClientRedirectForFrame):
20995 * WebKitTestRunner/InjectedBundle/TestRunner.h:
20996 (WTR::TestRunner::didCancelClientRedirect const):
20997 (WTR::TestRunner::setDidCancelClientRedirect):
20999 2018-03-06 Zan Dobersek <zdobersek@igalia.com>
21001 REGRESSION(r229309): s_exceptionInstructions allocation change causing crashes in LLInt on WPE
21002 https://bugs.webkit.org/show_bug.cgi?id=183366
21004 Reviewed by Michael Catanzaro.
21006 Have the TestRunnerInjectedBundle CMake library link against libraries
21007 in the WebKitTestRunnerInjectedBundle_LIBRARIES list, and not the
21008 WebKitTestRunner_LIBRARIES list, which is used for the WebKitTestRunner
21009 executable. This allows narrowing down the libraries to only those that
21010 are necessary for the injected bundle shared object.
21012 The GTK+ port already has this list specified, adding one for the WPE
21015 * WebKitTestRunner/CMakeLists.txt:
21016 Link the TestRunnerInjectedBundle library against the libraries in the
21017 WebKitTestRunnerInjectedBundle_LIBRARIES list.
21018 * WebKitTestRunner/PlatformWPE.cmake:
21019 Specify the WebKitTestRunnerInjectedBundle_LIBRARIES list, including the
21020 basic system dependencies, WebCoreTestSupport and WebKit. This follows
21023 2018-03-06 Dominik Infuehr <dinfuehr@igalia.com>
21025 [ARM] Disable tests that run out of memory
21026 https://bugs.webkit.org/show_bug.cgi?id=182699
21028 Reviewed by Žan Doberšek.
21030 Add run mode to allow running modules.yaml-tests without
21031 disabling LLInt for specific tests.
21033 * Scripts/run-jsc-stress-tests:
21035 2018-03-05 Yusuke Suzuki <utatane.tea@gmail.com>
21037 Fix std::make_unique / new[] using system malloc
21038 https://bugs.webkit.org/show_bug.cgi?id=182975
21040 Reviewed by JF Bastien.
21042 * TestWebKitAPI/CMakeLists.txt:
21043 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21044 * TestWebKitAPI/Tests/WTF/UniqueArray.cpp: Copied from Source/WebKit/Platform/win/LoggingWin.cpp.
21045 (TestWebKitAPI::NonTrivialDestructor::NonTrivialDestructor):
21046 (TestWebKitAPI::NonTrivialDestructor::~NonTrivialDestructor):
21047 (TestWebKitAPI::NonTrivialDestructor::setLog):
21048 (TestWebKitAPI::TEST):
21050 2018-03-05 Myles C. Maxfield <mmaxfield@apple.com>
21052 DumpRenderTree build fix
21056 * DumpRenderTree/mac/LayoutTestHelper.m:
21058 2018-03-05 Andy Estes <aestes@apple.com>
21060 [Mac] Teach WebCore::Pasteboard about file promise drags
21061 https://bugs.webkit.org/show_bug.cgi?id=183314
21062 <rdar://problem/38105493>
21064 Reviewed by Darin Adler.
21066 * DumpRenderTree/DumpRenderTreeFileDraggingSource.h:
21067 * DumpRenderTree/DumpRenderTreeFileDraggingSource.m:
21068 (-[DumpRenderTreeFileDraggingSource initWithPromisedFileURLs:]):
21069 (-[DumpRenderTreeFileDraggingSource dealloc]):
21071 Taught DumpRenderTreeFileDraggingSource to store the promised file URLs.
21073 * DumpRenderTree/mac/DumpRenderTree.mm:
21076 Called +[DumpRenderTreeDraggingInfo clearAllFilePromiseReceivers] after running a test.
21078 * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.h:
21079 * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
21080 (-[DumpRenderTreeFilePromiseReceiver initWithPromisedUTIs:]):
21081 (-[DumpRenderTreeFilePromiseReceiver fileTypes]):
21082 (-[DumpRenderTreeFilePromiseReceiver fileNames]):
21083 (-[DumpRenderTreeFilePromiseReceiver dealloc]):
21085 (-[DumpRenderTreeFilePromiseReceiver receivePromisedFilesAtDestination:options:operationQueue:reader:]):
21087 We can't instantiate real NSFilePromiseReceivers in DumpRenderTree. They rely on the
21088 pasteboard server to generate unique file URLs, which is incompatible with our swizzled
21091 Instead, create a subclass of NSFilePromiseReceiver that implements its own promise resolution.
21092 -receivePromisedFilesAtDestination:... asks its DumpRenderTreeFileDraggingSource for the
21093 array of file URLs, then copies each to the destination directory on the specified operation
21094 queue. It emulates how NSPasteboard tries to find a unique destination name by appending
21095 numbers to the file name.
21097 All receivers are collected in a global array that is cleared when each test finishes.
21098 DumpRenderTreeFilePromiseReceiver will delete the files it copied in -dealloc.
21100 (+[DumpRenderTreeDraggingInfo clearAllFilePromiseReceivers]):
21101 (-[DumpRenderTreeDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
21103 If NSFilesPromisePboardType is on the pasteboard and classArray contains
21104 NSFilePromiseReceiver, construct a DumpRenderTreeFilePromiseReceiver, add it to the array of
21105 all file promise receivers, then wrap it in an NSDraggingItem and call block.
21107 * DumpRenderTree/mac/EventSendingController.mm:
21108 (+[EventSendingController isSelectorExcludedFromWebScript:]):
21109 (+[EventSendingController webScriptNameForSelector:]):
21110 (-[EventSendingController beginDragWithFilePromises:]):
21112 Implement eventSender.beginDragWithFilePromises() by placing file UTIs on the pasteboard
21113 with type NSFilesPromisePboardType, creating a DumpRenderTreeFileDraggingSource with the
21114 file URLs, and creating a new DumpRenderTreeDraggingInfo and passing it to
21115 -[WebView draggingEntered:].
21117 2018-03-05 Aakash Jain <aakash_jain@apple.com>
21119 [webkitpy] Bugzilla class should use NetworkTransaction for network operations
21120 https://bugs.webkit.org/show_bug.cgi?id=183222
21122 Reviewed by Alexey Proskuryakov.
21124 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
21125 (Bugzilla.open_url): Method which uses NetworkTransaction for opening url.
21126 (Bugzilla.fetch_user): Used self.open_url instead of directly calling browser.open().
21127 (Bugzilla.add_user_to_groups): Ditto.
21128 (Bugzilla._fetch_bug_page): Ditto.
21129 (Bugzilla.fetch_attachment_contents): Ditto.
21130 (Bugzilla.get_bug_id_for_attachment_id): Ditto.
21131 (Bugzilla.authenticate): Ditto.
21132 (Bugzilla.add_attachment_to_bug): Ditto.
21133 (Bugzilla.add_patch_to_bug): Ditto.
21134 (Bugzilla.create_bug): Ditto.
21135 (Bugzilla.clear_attachment_flags): Ditto.
21136 (Bugzilla.set_flag_on_attachment): Ditto.
21137 (Bugzilla.obsolete_attachment): Ditto.
21138 (Bugzilla.add_cc_to_bug): Ditto.
21139 (Bugzilla.post_comment_to_bug): Ditto.
21140 (Bugzilla.close_bug_as_fixed): Ditto.
21141 (Bugzilla.reassign_bug): Ditto.
21142 (Bugzilla.reopen_bug): Ditto.
21143 (Bugzilla._fetch_bug_page_by_url): Deleted, not required anymore.
21144 * Scripts/webkitpy/common/net/networktransaction.py:
21145 (NetworkTransaction.run): Added a FIXME.
21147 2018-03-05 Joseph Pecoraro <pecoraro@apple.com>
21149 dump-class-layout mishandles duplicates base classes and miscomputes padding
21150 https://bugs.webkit.org/show_bug.cgi?id=183311
21152 Reviewed by Simon Fraser.
21154 * Scripts/dump-class-layout:
21156 (verify_type_recursive):
21157 Keep a list of seen (offset, type) that we have output and don't re-output them.
21158 The Python types list the base classes as members multiple times as you iterate
21159 through the members, so just ignore them if we have seem them already at a
21162 2018-03-05 Carlos Alberto Lopez Perez <clopez@igalia.com>
21164 [GTK][Wayland] The GTK Wayland bot exits early because of assertions related with libsecret since r221925
21165 https://bugs.webkit.org/show_bug.cgi?id=183330
21167 Reviewed by Michael Catanzaro.
21169 Add libsecret to the JHBuild and build it only when the system version is
21170 less than 0.18.6 (unreleased as of writing this) in order to cherry pick
21171 a fix for a bug that causes crashes with layout tests.
21173 * gtk/jhbuild.modules:
21174 * gtk/patches/libsecret-secret-methods-Don-t-unref-NULL-when-search-fails.patch: Added.
21176 2018-03-05 Claudio Saavedra <csaavedra@igalia.com>
21178 [GTK] Implement WTR's PlatformWebView::setWindowIsKey()
21179 https://bugs.webkit.org/show_bug.cgi?id=183143
21181 Reviewed by Carlos Garcia Campos.
21183 Implement ::setWindowIsKey() by keeping a second window to be
21184 presented when the webview's window is to lose its key status.
21186 * WebKitTestRunner/PlatformWebView.h:
21187 * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
21188 (WTR::PlatformWebView::PlatformWebView):
21189 (WTR::PlatformWebView::~PlatformWebView):
21190 (WTR::PlatformWebView::setWindowIsKey):
21192 2018-03-05 Yusuke Suzuki <utatane.tea@gmail.com>
21194 Unreviewed, attempt to fix Apple port build
21196 * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
21198 2018-03-05 Yusuke Suzuki <utatane.tea@gmail.com>
21200 Unreviewed, attempt to fix WPE build
21202 * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
21203 (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
21204 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
21205 (WTR::PlatformWebView::windowSnapshotImage):
21206 * WebKitTestRunner/wpe/TestControllerWPE.cpp:
21207 (WTR::TestController::platformRunUntil):
21209 2018-03-04 Yusuke Suzuki <utatane.tea@gmail.com>
21211 [WTF] Move currentCPUTime and sleep(Seconds) to CPUTime.h and Seconds.h respectively
21212 https://bugs.webkit.org/show_bug.cgi?id=183312
21214 Reviewed by Mark Lam.
21216 Remove wtf/CurrentTime.h include pragma.
21218 * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
21219 * DumpRenderTree/TestNetscapePlugIn/Tests/EvaluateJSWithinNPP_New.cpp:
21220 * DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp:
21221 * DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp:
21222 * TestWebKitAPI/Tests/WTF/Condition.cpp:
21223 * TestWebKitAPI/Tests/WTF/Signals.cpp:
21224 * TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:
21225 * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
21226 * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
21227 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
21228 * TestWebKitAPI/jsconly/PlatformUtilitiesJSCOnly.cpp:
21229 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
21231 2018-03-04 Tim Horton <timothy_horton@apple.com>
21233 Make !ENABLE(DATA_DETECTION) iOS build actually succeed
21234 https://bugs.webkit.org/show_bug.cgi?id=183283
21235 <rdar://problem/38062148>
21237 Reviewed by Sam Weinig.
21239 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
21241 2018-03-02 Chris Dumez <cdumez@apple.com>
21243 Converting a load to a download does not work with async policy delegates
21244 https://bugs.webkit.org/show_bug.cgi?id=183254
21245 <rdar://problem/38035334>
21247 Reviewed by Youenn Fablet.
21249 Add layout test infrastructure for responding to the decidePolicyForNavigationResponse
21250 delegate asynchronously.
21252 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
21253 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
21254 (WTR::InjectedBundlePage::decidePolicyForResponse):
21255 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
21256 (WTR::TestRunner::setShouldDecideResponsePolicyAfterDelay):
21257 * WebKitTestRunner/InjectedBundle/TestRunner.h:
21258 (WTR::TestRunner::shouldDecideResponsePolicyAfterDelay const):
21259 * WebKitTestRunner/TestController.cpp:
21260 (WTR::TestController::resetStateToConsistentValues):
21261 (WTR::TestController::decidePolicyForNavigationResponse):
21262 * WebKitTestRunner/TestController.h:
21263 (WTR::TestController::setShouldDecideResponsePolicyAfterDelay):
21264 * WebKitTestRunner/TestInvocation.cpp:
21265 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
21267 2018-03-01 Youenn Fablet <youenn@apple.com>
21269 Add API test to validate setting of service worker and cache storage directories
21270 https://bugs.webkit.org/show_bug.cgi?id=182543
21272 Reviewed by Chris Dumez.
21274 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
21276 2018-03-01 Ross Kirsling <ross.kirsling@sony.com>
21278 [Win][DRT] Implement setSpatialNavigationEnabled.
21279 https://bugs.webkit.org/show_bug.cgi?id=183166
21281 Reviewed by Per Arne Vollan.
21283 * DumpRenderTree/TestRunner.cpp:
21284 (setSpatialNavigationEnabledCallback):
21285 * DumpRenderTree/win/DumpRenderTree.cpp:
21286 (resetWebPreferencesToConsistentValues):
21287 * DumpRenderTree/win/TestRunnerWin.cpp:
21288 (TestRunner::setSpatialNavigationEnabled):
21290 2018-03-01 Basuke Suzuki <Basuke.Suzuki@sony.com>
21292 [webkitpy] Use shell=False to launch apache http server.
21293 https://bugs.webkit.org/show_bug.cgi?id=183191
21295 Reviewed by Aakash Jain.
21297 * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
21298 (LayoutTestApacheHttpd.__init__):
21299 (LayoutTestApacheHttpd._run):
21301 2018-03-01 Chris Dumez <cdumez@apple.com>
21303 Unreviewed, update WebKit.CustomHeaderFields API test after r229133.
21305 We no longer do policy checks for 'about:blank'.
21307 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
21308 (-[CustomHeaderFieldsDelegate webView:startURLSchemeTask:]):
21311 2018-02-28 Jonathan Bedard <jbedard@apple.com>
21313 [webkitpy] Remove concept of 'future' versions (Follow-up fix 2)
21314 https://bugs.webkit.org/show_bug.cgi?id=183184
21315 <rdar://problem/37958594>
21317 Reviewed by Aakash Jain.
21319 Unlisted Apple versions can't run webkitpy tests because they don't
21320 have specified port names.
21322 * Scripts/webkitpy/port/apple.py:
21323 (ApplePort.determine_full_port_name): Return valid port name for unnamed
21325 * Scripts/webkitpy/port/base.py:
21326 (Port.version_name): Check both public and internal version mapping
21327 when returning a version name.
21328 * Scripts/webkitpy/port/mac.py:
21329 (MacPort.__init__): If no os version is defined, use the current version.
21331 2018-02-28 John Wilander <wilander@apple.com>
21333 Add a second tier of prevalence to facilitate telemetry on very prevalent domains
21334 https://bugs.webkit.org/show_bug.cgi?id=183218
21335 <rdar://problem/37992388>
21337 Reviewed by Brent Fulgham.
21339 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
21340 Added two new testRunner functions:
21341 - setStatisticsVeryPrevalentResource()
21342 - isStatisticsVeryPrevalentResource()
21343 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
21344 (WTR::TestRunner::setStatisticsVeryPrevalentResource):
21345 (WTR::TestRunner::isStatisticsVeryPrevalentResource):
21346 * WebKitTestRunner/InjectedBundle/TestRunner.h:
21347 * WebKitTestRunner/TestController.cpp:
21348 (WTR::TestController::setStatisticsVeryPrevalentResource):
21349 (WTR::TestController::isStatisticsVeryPrevalentResource):
21350 * WebKitTestRunner/TestController.h:
21351 * WebKitTestRunner/TestInvocation.cpp:
21352 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
21354 2018-02-28 Jonathan Bedard <jbedard@apple.com>
21356 [webkitpy] Remove concept of 'future' versions (Follow-up fix)
21357 https://bugs.webkit.org/show_bug.cgi?id=183184
21358 <rdar://problem/37958594>
21360 Reviewed by David Kilzer.
21362 The factory also relies on future in a non-obvious way.
21364 * Scripts/webkitpy/common/system/platforminfo.py:
21365 (PlatformInfo.os_version_name): Check both public and internal version mapping
21366 when returning a version name.
21367 * Scripts/webkitpy/common/system/platforminfo_mock.py:
21368 (MockPlatformInfo.os_version_name): Ditto.
21370 2018-02-28 Zan Dobersek <zdobersek@igalia.com>
21372 Unreviewed WPE fixup after r229080.
21374 Add empty definitions for two AccessibilityUIElement methods,
21375 avoiding undefined symbols in the WKTR injected bundle.
21377 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
21378 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
21379 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
21381 2018-02-27 Jonathan Bedard <jbedard@apple.com>
21383 Remove concept of 'future'
21384 https://bugs.webkit.org/show_bug.cgi?id=183184
21385 <rdar://problem/37958594>
21387 Reviewed by Aakash Jain.
21389 Remove concept of 'future' from expectations and instead
21390 use a system of inheritance centered around the current version
21391 of an OS for Mac and iOS.
21393 Inheritance works like so:
21397 > High Sierra (mac)
21402 This does not change expectation inheritance for any currently running
21403 configurations, it generalizes the logic already used.
21405 * Scripts/webkitpy/common/version_name_map.py:
21406 (VersionNameMap.__init__): Remove all future versions.
21407 (VersionNameMap.mapping_for_platform): Return empty dicts instead of
21409 * Scripts/webkitpy/port/apple.py:
21411 (ApplePort._allowed_versions): Return all available versions.
21412 (ApplePort._generate_all_test_configurations): Instead of picking from a set
21413 of allowed versions, assume that every specified version is allowed.
21414 (ApplePort._port_name_with_version): Deleted.
21415 * Scripts/webkitpy/port/darwin.py: Add CURRENT_VERSION overridden by subclasses.
21417 * Scripts/webkitpy/port/ios.py:
21419 (IOSPort.default_baseline_search_path): Use system of inheritance centered around
21420 the current version.
21421 * Scripts/webkitpy/port/mac.py:
21423 (MacPort.__init__): Use current version by default.
21424 (MacPort.default_baseline_search_path): Use system of inheritance centered around
21425 the current version.
21426 (MacPort.configuration_specifier_macros): Use the same set of version names
21427 supported in default_baseline_search_path.
21428 * Scripts/webkitpy/port/mac_unittest.py:
21429 (MacTest.test_versions): Remove 'future' tests.
21431 2018-02-27 Michael Catanzaro <mcatanzaro@igalia.com>
21433 Unreviewed GTK test gardening
21435 * TestWebKitAPI/glib/TestExpectations.json:
21437 2018-02-27 Doug Russell <doug@getitdownonpaper.com>
21439 AX: Spell check and style attributes should be optional when fetching attributed string
21440 https://bugs.webkit.org/show_bug.cgi?id=160744
21442 Reviewed by Chris Fleizach.
21444 The overhead of fetching a spell checked attributed string via AX API is substantial.
21445 In some cases on the order of 7/8 of the total time spent fetching the string.
21447 This change introduces the new attribute AXAttributedStringForTextMarkerRangeWithOptions which accepts an NSDictionary as it's parameter with keys "AXTextMarkerRange" (AXTextMarkerRangeRef) and "AXSpellCheck" (NSNumber(BOOL)).
21449 AXAttributedStringForTextMarkerRange will remain unchanged.
21451 * DumpRenderTree/AccessibilityUIElement.cpp:
21452 (attributedStringForTextMarkerRangeCallback):
21453 (attributedStringForTextMarkerRangeWithOptionsCallback):
21454 (AccessibilityUIElement::attributedStringForTextMarkerRange):
21455 (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
21456 (AccessibilityUIElement::getJSClass):
21457 * DumpRenderTree/AccessibilityUIElement.h:
21458 * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
21459 (AccessibilityUIElement::attributedStringForTextMarkerRange):
21460 (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
21461 * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
21462 (createJSStringRef):
21463 (AccessibilityUIElement::attributedStringForTextMarkerRange):
21464 (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
21465 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
21466 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
21467 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
21468 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
21469 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
21470 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
21471 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
21472 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
21473 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
21474 (WTR::createJSStringRef):
21475 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
21476 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
21478 2018-02-27 Daniel Bates <dabates@apple.com>
21480 Standardize terminology for marked text
21481 https://bugs.webkit.org/show_bug.cgi?id=180999
21483 Reviewed by Zalan Bujtas.
21485 The name MarkerSubrange is a misnomer for a data structure that associates a text subrange with a type
21486 and optional document marker. In particular, a MarkerSubrange may not always correspond to a document
21487 marker. For instance, selected text is represented using a MarkerSubrange that does not have a
21488 corresponding document marker. Let's standardize on the phrase "marked text" as the canonical way to
21489 describe these tagged text subranges.
21491 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21492 * TestWebKitAPI/Tests/WebCore/MarkedText.cpp: Added.
21493 (WebCore::operator<<):
21494 (TestWebKitAPI::TEST):
21495 * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp: Removed.
21497 2018-02-27 Aakash Jain <aakash_jain@apple.com>
21499 webkitpy Bugzilla transactions should retry on URLError
21500 https://bugs.webkit.org/show_bug.cgi?id=183156
21502 Reviewed by Alexey Proskuryakov.
21504 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
21505 (Bugzilla): Use NetworkTransaction.
21506 (Bugzilla._fetch_bug_page_by_url):
21507 (Bugzilla.bug_id_for_attachment_id):
21508 (Bugzilla.get_bug_id_for_attachment_id):
21510 2018-02-27 Wenson Hsieh <wenson_hsieh@apple.com>
21512 [Extra zoom mode] Implement additional SPI for adjusting viewport shrink-to-fit behavior
21513 https://bugs.webkit.org/show_bug.cgi?id=183100
21514 <rdar://problem/37840987>
21516 Reviewed by Tim Horton.
21518 Add API tests that exercise -_setMinimumAllowedLayoutWidth: and -_setForceHorizontalViewportShrinkToFit:. See
21519 WebKit ChangeLog for more detail.
21521 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21522 * TestWebKitAPI/Tests/ios/ViewportSizingTests.mm: Added.
21523 (TestWebKitAPI::while):
21524 (viewportTestPageMarkup):
21525 (TestWebKitAPI::TEST):
21527 2018-02-27 Yusuke Suzuki <utatane.tea@gmail.com>
21529 Unreviewed, skip FTL tests if FTL is disabled
21530 https://bugs.webkit.org/show_bug.cgi?id=183071
21532 * Scripts/run-jsc-stress-tests:
21534 2018-02-26 Don Olmstead <don.olmstead@sony.com>
21536 Fix WebCore includes within WebKitLegacy
21537 https://bugs.webkit.org/show_bug.cgi?id=183147
21539 Reviewed by Tim Horton.
21541 * MiniBrowser/win/ResourceLoadDelegate.cpp:
21543 2018-02-26 Yousuke Kimoto <yousuke.kimoto@sony.com>
21545 [WinCairo] WebKit2_C.h should be included for TestWebKit
21546 https://bugs.webkit.org/show_bug.cgi?id=182682
21548 Reviewed by Yusuke Suzuki.
21550 * TestWebKitAPI/config.h:
21552 2018-02-25 Fujii Hironori <Hironori.Fujii@sony.com>
21554 [WK2] http/tests/navigation/new-window-redirect-history.html crashes
21555 https://bugs.webkit.org/show_bug.cgi?id=127683
21557 Reviewed by Dan Bernstein.
21559 m_previousTestBackForwardListItem was null for the new window.
21560 m_previousTestBackForwardListItem is initialized only for the main
21561 window in InjectedBundlePage::prepare.
21563 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
21564 (WTR::InjectedBundlePage::dumpBackForwardList):
21565 Do null-check of m_previousTestBackForwardListItem.
21567 2018-02-25 Alexey Proskuryakov <ap@apple.com>
21569 Various crashes in WebKitTestRunner, especially when system is under heavy load
21570 https://bugs.webkit.org/show_bug.cgi?id=183109
21572 Reviewed by Tim Horton.
21574 WebKitTestRunner had many places where it sent messages to WebContent with a timeout,
21575 but it didn't handle the timeout when it did occur. Nearly all of those would result
21576 in logic errors and failing tests, and most would even result in stack corruption,
21577 as the response handler modified local variables.
21579 There is only one timeout scenario that we actually mean to handle in WKTR. That's
21580 when a test freezes after it is done (e.g. an infinite loop in beforeunload) - we don't
21581 want to blame the next test for freezing, so we silently relaunch WebContent.
21582 Everything else is cargo cult code that never worked.
21584 This patch addresses the crashes, and actually makes tests pass a lot more on an
21587 * WebKitTestRunner/TestController.cpp:
21588 (WTR::TestController::resetStateToConsistentValues): Moved m_doneResetting assignment
21589 to where it's actually needed, for clarity.
21590 (WTR::TestController::reattachPageToWebProcess): This function used to always hit
21591 and ignore message timeout, as m_doneResetting is only updated by navigation callback
21592 when the state is Resetting. This change makes it faster.
21593 (WTR::TestController::platformResetStateToConsistentValues): Style fix.
21594 (WTR::TestController::clearServiceWorkerRegistrations): Timing out here wasn't
21595 handled in a meaningful manner, and would even corrupt the stack.
21596 (WTR::TestController::clearDOMCache): Ditto.
21597 (WTR::TestController::clearDOMCaches): Ditto.
21598 (WTR::TestController::hasDOMCache): Ditto.
21599 (WTR::TestController::domCacheSize): Ditto.
21600 (WTR::TestController::isStatisticsPrevalentResource): Ditto.
21601 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder): Ditto.
21602 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo): Ditto.
21603 (WTR::TestController::isStatisticsHasHadUserInteraction): Ditto.
21604 (WTR::TestController::isStatisticsGrandfathered): Ditto.
21605 (WTR::TestController::statisticsUpdateCookiePartitioning): Ditto.
21606 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost): Ditto.
21607 (WTR::TestController::statisticsClearInMemoryAndPersistentStore): Ditto.
21608 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours): Ditto.
21609 (WTR::TestController::statisticsClearThroughWebsiteDataRemoval): Ditto.
21611 * WebKitTestRunner/TestInvocation.cpp:
21612 (WTR::TestInvocation::shortTimeout const): Made shortTimeout shorter (on a hunch).
21613 (WTR::TestInvocation::invoke): Removed a timeout waiting for initial response. There
21614 is never a logical reason for such a timeout, as we always have a new or responsive
21615 WebContent process here.
21616 (WTR::TestInvocation::dumpResults): Removed another timeout that we don't know how to
21618 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Removed assignment to
21619 m_errorMessage, which had no effect in this context.
21621 * WebKitTestRunner/TestInvocation.h: Removed no longer used code.
21623 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
21624 (WTR::TestController::cocoaResetStateToConsistentValues): Use a named constant for
21627 * WebKitTestRunner/ios/TestControllerIOS.mm:
21628 (WTR::TestController::platformConfigureViewForTest): Removed a useless timeout.
21629 Not sure if timing out here would corrupt the stack or not, but there is no reason
21630 to impose arbitrary limits on individual steps of a test.
21632 * WebKitTestRunner/mac/TestControllerMac.mm:
21633 (WTR::TestController::platformConfigureViewForTest): Use a named constant for
21636 2018-02-25 Ali Juma <ajuma@chromium.org>
21638 Unreviewed. Change my status to committer.
21640 * Scripts/webkitpy/common/config/contributors.json:
21642 2018-02-25 Chris Dumez <cdumez@apple.com>
21644 Service workers do not work well inside Web.app
21645 https://bugs.webkit.org/show_bug.cgi?id=183105
21646 <rdar://problem/37864140>
21648 Reviewed by Youenn Fablet.
21650 Add API test coverage.
21652 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
21654 2018-02-25 Aakash Jain <aakash_jain@apple.com>
21656 [build.webkit.org] unit-tests fail if buildbot 0.8.6p1 is not installed locally
21657 https://bugs.webkit.org/show_bug.cgi?id=183103
21659 Reviewed by Alexey Proskuryakov.
21661 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Removed extra imports.
21663 2018-02-24 Wenson Hsieh <wenson_hsieh@apple.com>
21665 Unreviewed, fix the TestWebKitAPI build after r228825.
21667 I removed a `>= iOS 11` check in r228825, but forgot that this was also neeed to guard against tvOS and watchOS
21668 builds. This fixes the build by restoring the compile-time guard and also makes it explicit for these platforms.
21670 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
21672 2018-02-22 Yusuke Suzuki <utatane.tea@gmail.com>
21674 Remove currentTime() / currentTimeMS()
21675 https://bugs.webkit.org/show_bug.cgi?id=183052
21677 Reviewed by Mark Lam.
21679 * DumpRenderTree/TestRunner.cpp:
21680 (preciseTimeCallback):
21681 * DumpRenderTree/mac/TestRunnerMac.mm:
21682 (TestRunner::setMockGeolocationPosition):
21683 * TestWebKitAPI/Tests/WTF/Condition.cpp:
21684 * TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:
21685 * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
21686 * WebKitTestRunner/GeolocationProviderMock.cpp:
21687 (WTR::GeolocationProviderMock::setPosition):
21688 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
21689 (WTR::TestRunner::preciseTime):
21691 2018-02-22 Yusuke Suzuki <utatane.tea@gmail.com>
21693 Remove sleep(double) and sleepMS(double) interfaces
21694 https://bugs.webkit.org/show_bug.cgi?id=183038
21696 Reviewed by Mark Lam.
21698 * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
21699 (PluginTest::indicateTestFailure):
21700 * DumpRenderTree/TestNetscapePlugIn/Tests/EvaluateJSWithinNPP_New.cpp:
21701 (EvaluteJSWithinNPP_New::NPP_New):
21702 * DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp:
21703 (InvokeDestroysPluginWithinNPP_New::NPP_New):
21704 * DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp:
21705 * TestWebKitAPI/Tests/WTF/Signals.cpp:
21707 * TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:
21708 (TestWebKitAPI::testThreadGroup):
21709 * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
21710 (TestWebKitAPI::TEST):
21711 * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
21712 (TestWebKitAPI::TEST):
21713 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
21714 (TestWebKitAPI::TEST):
21715 * TestWebKitAPI/jsconly/PlatformUtilitiesJSCOnly.cpp:
21716 (TestWebKitAPI::Util::sleep):
21718 2018-02-21 Don Olmstead <don.olmstead@sony.com>
21720 [CMake][Win] Use cmakeconfig.h rather than config.h and Platform.h
21721 https://bugs.webkit.org/show_bug.cgi?id=182883
21723 Reviewed by Per Arne Vollan.
21725 * DumpRenderTree/config.h:
21726 * TestWebKitAPI/config.h:
21728 2018-02-21 Michael Catanzaro <mcatanzaro@igalia.com>
21730 [GTK] Unsafe g_setenv use in MiniBrowser main
21731 https://bugs.webkit.org/show_bug.cgi?id=182978
21733 Reviewed by Carlos Garcia Campos.
21735 setenv (and g_setenv) will randomly crash if called too late.
21737 * MiniBrowser/gtk/main.c:
21740 2018-02-21 Aakash Jain <aakash_jain@apple.com>
21742 webkitpy NetworkTransaction should retry on URLError
21743 https://bugs.webkit.org/show_bug.cgi?id=182987
21745 Reviewed by Alexey Proskuryakov.
21747 * Scripts/webkitpy/common/net/networktransaction.py:
21748 (NetworkTransaction.run): Retry on urllib2.URLError.
21750 2018-02-21 Ms2ger <Ms2ger@igalia.com>
21752 [WTR][WPE] Correct the process names in TestController.
21753 https://bugs.webkit.org/show_bug.cgi?id=178700
21755 Reviewed by Michael Catanzaro.
21757 Similar to r228731 for GTK.
21759 * Scripts/webkitpy/port/wpe.py:
21760 (WPEPort._get_crash_log): removed the code to convert WebProcess name.
21761 * WebKitTestRunner/TestController.cpp: return the correct process names for WPE.
21762 (WTR::TestController::webProcessName):
21763 (WTR::TestController::networkProcessName):
21764 (WTR::TestController::databaseProcessName):
21766 2018-02-21 Ms2ger <Ms2ger@igalia.com>
21768 [ATK] Remove attributeSet variable from AccessibilityUIElement::attributedStringForRange().
21769 https://bugs.webkit.org/show_bug.cgi?id=183000
21771 Reviewed by Joanmarie Diggs.
21773 It is never initialized, but is passed to atk_attribute_set_free.
21774 This caused a crash in accessibility/content-editable-as-textarea.html on the debug bots.
21776 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
21777 (WTR::AccessibilityUIElement::attributedStringForRange):
21779 2018-02-21 Myles C. Maxfield <mmaxfield@apple.com>
21781 [Cocoa] Make system-ui obey the user-installed-font policy
21782 https://bugs.webkit.org/show_bug.cgi?id=182860
21783 <rdar://problem/36158249>
21785 Reviewed by Antti Koivisto.
21787 Create a font, FakeHelvetica-ArmenianCharacter.ttf, which supports a particular Armenian
21788 character which isn't isn't supported by any other font on the system.
21790 * WebKitTestRunner/FakeHelvetica-ArmenianCharacter.ttf:
21791 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
21793 2018-02-20 Timothy Horton <timothy_horton@apple.com>
21795 Try to fix the 32-bit build after r228857
21797 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
21798 (WTR::UIScriptController::firstResponderSuppressionForWebView):
21800 2018-02-20 Nan Wang <n_wang@apple.com>
21802 AX: Keyboard focus not following VoiceOver cursor into web content or within web content.
21803 https://bugs.webkit.org/show_bug.cgi?id=182752
21804 <rdar://problem/37518233>
21806 Reviewed by Ryosuke Niwa.
21808 * DumpRenderTree/mac/UIScriptControllerMac.mm:
21809 (WTR::UIScriptController::firstResponderSuppressionForWebView):
21810 (WTR::UIScriptController::makeWindowContentViewFirstResponder):
21811 (WTR::UIScriptController::isWindowContentViewFirstResponder const):
21812 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
21813 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
21814 (WTR::UIScriptController::firstResponderSuppressionForWebView):
21815 (WTR::UIScriptController::makeWindowContentViewFirstResponder):
21816 (WTR::UIScriptController::isWindowContentViewFirstResponder const):
21817 * TestRunnerShared/UIScriptContext/UIScriptController.h:
21818 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
21819 (WTR::UIScriptController::firstResponderSuppressionForWebView):
21820 (WTR::UIScriptController::makeWindowContentViewFirstResponder):
21821 (WTR::UIScriptController::isWindowContentViewFirstResponder const):
21823 2018-02-20 Fujii Hironori <Hironori.Fujii@sony.com>
21825 [GTK] jhbuild: Remove gtk-doc
21826 https://bugs.webkit.org/show_bug.cgi?id=182956
21828 Reviewed by Michael Catanzaro.
21830 jhbuild doesn't need to build gtk-doc because major LTS Linux
21831 distributions have gtk-doc v1.25, and
21832 Tools/gtk/install-dependencies installs gtk-doc.
21834 * gtk/jhbuild.modules: Removed gtk-doc.
21836 2018-02-20 Tim Horton <timothy_horton@apple.com>
21838 Introduce HAVE(IOSURFACE_ACCELERATOR)
21839 https://bugs.webkit.org/show_bug.cgi?id=182955
21840 <rdar://problem/37699510>
21842 Reviewed by Sam Weinig.
21844 * DumpRenderTree/ios/PixelDumpSupportIOS.mm:
21845 (createBitmapContextFromWebView):
21846 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
21847 (WTR::PlatformWebView::windowSnapshotImage):
21849 2018-02-20 Chris Dumez <cdumez@apple.com>
21851 Provisional load may get committed before receiving the decidePolicyForNavigationResponse response
21852 https://bugs.webkit.org/show_bug.cgi?id=182720
21853 <rdar://problem/37515204>
21855 Reviewed by Alex Christensen.
21857 Add API test coverage.
21859 * TestWebKitAPI/Tests/WebKitCocoa/AsyncPolicyForNavigationResponse.mm:
21860 (-[TestAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
21861 (TestWebKitAPI::TEST):
21863 2018-02-20 Nan Wang <n_wang@apple.com>
21865 AX: AOM: Dispatch accessibleclick event
21866 https://bugs.webkit.org/show_bug.cgi?id=180898
21867 <rdar://problem/36086710>
21869 Reviewed by Ryosuke Niwa.
21871 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
21872 (WTR::AccessibilityUIElement::syncPress):
21873 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
21874 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
21875 (WTR::AccessibilityUIElement::syncPress):
21877 2018-02-20 Wenson Hsieh <wenson_hsieh@apple.com>
21879 [iOS 11.3 Beta] Can't copy a URL from Safari and paste it into the Gmail app
21880 https://bugs.webkit.org/show_bug.cgi?id=182952
21881 <rdar://problem/37636190>
21883 Reviewed by Tim Horton.
21885 Adds a new iOS copy/paste test that copies an anchor element via action sheet, and checks that upon pasting,
21886 both "text/plain" and "text/uri-list" are provided. Additionally tweaks an existing iOS drag and drop test to
21887 check for the same behavior.
21889 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
21890 (TestWebKitAPI::TEST):
21891 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
21892 (TestWebKitAPI::TEST):
21894 2018-02-20 Philippe Normand <pnormand@igalia.com>
21896 [GStreamer][MiniBrowser] Honor GStreamer command line parameters in MiniBrowser
21897 https://bugs.webkit.org/show_bug.cgi?id=173655
21899 Reviewed by Xabier Rodriguez-Calvar.
21901 The FIXME in GStreamerUtilities.cpp asks to pass the command line
21902 parameters to the GStreamer initialization function.
21904 Based on initial patch by: Vanessa Chipirrás Navalón <vchipirras@igalia.com>
21906 * MiniBrowser/gtk/main.c:
21907 (main): Add the group containing the Gstreamer options that the console displays.
21909 2018-02-19 Fujii Hironori <Hironori.Fujii@sony.com>
21911 [WTR][GTK] crash log backtrace doesn't show symbol names for DatabaseProcess and NetworkProcess
21912 https://bugs.webkit.org/show_bug.cgi?id=182953
21914 Reviewed by Carlos Garcia Campos.
21916 * Scripts/webkitpy/port/gtk.py:
21917 (GtkPort._get_crash_log): Removed the code to convert WebProcess name.
21918 * WebKitTestRunner/TestController.cpp:
21919 (WTR::TestController::webProcessName): Return the correct program name for GTK+ port.
21920 (WTR::TestController::networkProcessName): Ditto.
21921 (WTR::TestController::databaseProcessName): Ditto.
21923 2018-02-19 Ryan Haddad <ryanhaddad@apple.com>
21925 Unreviewed, rolling out r228696.
21927 The API test added with this change is timing out on macOS.
21929 Reverted changeset:
21931 "Null pointer dereference in
21932 WebPageProxy::urlSchemeHandlerForScheme()"
21933 https://bugs.webkit.org/show_bug.cgi?id=182905
21934 https://trac.webkit.org/changeset/228696
21936 2018-02-16 Ryosuke Niwa <rniwa@webkit.org>
21938 Add an entitlement check for service worker on iOS
21939 https://bugs.webkit.org/show_bug.cgi?id=182865
21940 <rdar://problem/37505903>
21942 Reviewed by Brady Eidson.
21944 Added the service worker entitlements to WebKitTestRunner and TestWebKitAPI on iOS.
21946 * TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements:
21947 * WebKitTestRunner/Configurations/WebKitTestRunnerApp-iOS.entitlements:
21948 * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
21949 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
21951 2018-02-16 Youenn Fablet <youenn@apple.com>
21953 Allow specifying which plug-ins are supported
21954 https://bugs.webkit.org/show_bug.cgi?id=182748
21956 Reviewed by Chris Dumez.
21958 Add support for a test runner API to specificy supported plug-ins.
21960 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
21961 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
21962 (WTR::TestRunner::setPluginsAsUnsupported):
21963 * WebKitTestRunner/InjectedBundle/TestRunner.h:
21964 * WebKitTestRunner/TestController.cpp:
21965 (WTR::TestController::resetStateToConsistentValues):
21966 (WTR::TestController::setPluginsAsUnsupported):
21967 * WebKitTestRunner/TestController.h:
21968 * WebKitTestRunner/TestInvocation.cpp:
21969 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
21971 2018-02-16 Per Arne Vollan <pvollan@apple.com>
21973 Implement stopping of run loop in the WebContent process when using NSRunLoop.
21974 https://bugs.webkit.org/show_bug.cgi?id=182499
21975 <rdar://problem/37247424>
21977 Reviewed by Brent Fulgham.
21979 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
21980 * TestWebKitAPI/Tests/WebKitCocoa/WebProcessTerminate.mm: Added.
21983 2018-02-15 Alexey Proskuryakov <ap@apple.com>
21985 Speed up dSYM generation on build.webkit.org with -gline-tables-only
21986 https://bugs.webkit.org/show_bug.cgi?id=182841
21987 rdar://problem/34579649
21989 Reviewed by Aakash Jain.
21991 Build speed and binary size improvements are so substantial that I'm willing to make
21992 CI builds less suitable for debugging, which is not a common scenario anyway.
21993 Crash logs will still have line numbers in them.
21995 * BuildSlaveSupport/build.webkit.org-config/steps.py: (CompileWebKit.start):
21997 2018-02-15 Don Olmstead <don.olmstead@sony.com>
21999 WebCore headers should not be included relatively within dependent projects
22000 https://bugs.webkit.org/show_bug.cgi?id=182805
22002 Reviewed by Chris Dumez.
22004 * TestWebKitAPI/win/TestWebCoreStubs.cpp:
22005 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
22006 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityControllerWPE.cpp:
22007 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
22008 * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
22009 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
22011 2018-02-15 Tomas Popela <tpopela@redhat.com>
22013 run-jsc-stress-tests - skip a test if any of the run commands evals to skip
22014 https://bugs.webkit.org/show_bug.cgi?id=182729
22016 If multiple run commands are specified and one of them evals to skip,
22017 then the test is not skipped, because the run is scheduled while
22018 evaluating other commands.
22020 Remember if the test is going to be skipped - if yes, just stop
22021 evaluating the other run commands.
22023 Reviewed by Saam Barati.
22025 * Scripts/run-jsc-stress-tests:
22027 2018-02-14 Charlie Turner <cturner@igalia.com>
22029 Get Garden-O-Matic running again.
22030 https://bugs.webkit.org/show_bug.cgi?id=179089
22032 Reviewed by Carlos Alberto Lopez Perez.
22034 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/Trac.js:
22035 (parseCommitData): Author field is not always spelled 'author' these days.
22036 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
22037 No longer have a 32-bit builder.
22038 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/perf.js:
22039 (ui.perf.View.base.init): createElement has a required parameter these days.
22040 * Scripts/webkitpy/tool/commands/gardenomatic.py:
22041 (GardenOMatic): Override use_globs so that platform lookup in config.js works.
22043 2018-02-14 Don Olmstead <don.olmstead@sony.com>
22045 Remove unused ForwardingHeaders directories from Tools
22046 https://bugs.webkit.org/show_bug.cgi?id=182813
22048 Reviewed by Konstantin Tokarev.
22050 * DumpRenderTree/ForwardingHeaders/runtime/ArrayBufferView.h: Removed.
22051 * DumpRenderTree/ForwardingHeaders/runtime/JSArrayBufferView.h: Removed.
22052 * DumpRenderTree/ForwardingHeaders/runtime/JSExportMacros.h: Removed.
22053 * DumpRenderTree/ForwardingHeaders/runtime/TypedArrayInlines.h: Removed.
22054 * TestWebKitAPI/ForwardingHeaders/WebCore/LayoutUnit.h: Removed.
22056 2018-02-14 Daniel Bates <dabates@apple.com>
22058 Disallow cross-origin subresources from asking for credentials
22059 https://bugs.webkit.org/show_bug.cgi?id=182579
22060 <rdar://problem/36162271>
22062 Reviewed by Andy Estes.
22064 Add test option allowCrossOriginSubresourcesToAskForCredential (defaults to false)
22065 so that tests can toggle between the old behavior and new behavior.
22067 * DumpRenderTree/TestOptions.h:
22068 * DumpRenderTree/TestOptions.mm:
22069 (TestOptions::TestOptions):
22070 * DumpRenderTree/mac/DumpRenderTree.mm:
22071 (setWebPreferencesForTestOptions):
22072 * WebKitTestRunner/TestController.cpp:
22073 (WTR::TestController::resetPreferencesToConsistentValues):
22074 (WTR::updateTestOptionsFromTestHeader):
22075 * WebKitTestRunner/TestOptions.h:
22076 (WTR::TestOptions::hasSameInitializationOptions const):
22078 2018-02-12 Ryosuke Niwa <rniwa@webkit.org>
22080 REGRESSION (r223440): Copying & pasting a list from Microsoft Word to TinyMCE fails
22081 https://bugs.webkit.org/show_bug.cgi?id=182564
22083 Reviewed by Wenson Hsieh.
22085 Updated assertions to make sure the trailing "}" of @list rules is includd in the style, the "style" element
22086 is wrapped by "head" element (not present in the pasted markup since the fragment parsing algorithm strips away),
22087 and the style content is enclosed in "<!--" and "-->".
22089 Also use execCommand('insertHTML', ~) to insert the HTML obtained via dataTransfer.getData instead of innerHTML
22090 to make sure our pasting code preserves the special style element for MSO list quirks.
22092 Finally, added two more test cases for pasting content from Microsoft Word's compatibility mode.
22094 * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
22096 * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
22099 2018-02-14 Ross Kirsling <ross.kirsling@sony.com>
22101 [Tools] --wincairo should imply --64-bit by default.
22102 https://bugs.webkit.org/show_bug.cgi?id=182753
22104 Reviewed by Daniel Bates.
22106 WinCairo does not currently support 32-bit and `--wincairo` itself should refer to a working platform.
22107 This patch ensures x64 is determined correctly for `build-webkit --no-ninja` and `run-webkit-tests`.
22109 * Scripts/webkitdirs.pm:
22110 (determinePassedArchitecture):
22111 (shouldBuild32Bit):
22112 (determineShouldBuild32Bit):
22113 (determineIsWin64):
22114 * Scripts/webkitpy/common/config/ports.py:
22115 (WinCairoPort.build_webkit_command):
22116 * Scripts/webkitpy/common/config/ports_unittest.py:
22117 (DeprecatedPortTest.test_wincairo_port):
22118 * Scripts/webkitpy/port/win.py:
22121 2018-02-13 Commit Queue <commit-queue@webkit.org>
22123 Unreviewed, rolling out r228431.
22124 https://bugs.webkit.org/show_bug.cgi?id=182766
22126 Regressed CMake build stability (Requested by dolmstead on
22129 Reverted changeset:
22131 "[CMake] Make WebCore headers copies"
22132 https://bugs.webkit.org/show_bug.cgi?id=182512
22133 https://trac.webkit.org/changeset/228431
22135 2018-02-13 Don Olmstead <don.olmstead@sony.com>
22137 [CMake] Make WebCore headers copies
22138 https://bugs.webkit.org/show_bug.cgi?id=182512
22140 Reviewed by Keith Miller.
22142 * DumpRenderTree/CMakeLists.txt:
22143 * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
22144 * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h:
22145 * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h:
22146 * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npruntime.h:
22147 * TestWebKitAPI/PlatformGTK.cmake:
22148 * TestWebKitAPI/PlatformWPE.cmake:
22149 * TestWebKitAPI/PlatformWin.cmake:
22150 * TestWebKitAPI/win/TestWebCoreStubs.cpp:
22151 (loadResourceIntoBuffer):
22152 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
22153 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityControllerWPE.cpp:
22154 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
22155 * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
22156 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
22158 2018-02-13 Chris Dumez <cdumez@apple.com>
22160 REGRESSION (r228299): Broke reader mode in Safari
22161 https://bugs.webkit.org/show_bug.cgi?id=182697
22162 <rdar://problem/37399012>
22164 Reviewed by Ryosuke Niwa.
22166 Add API test coverage for responding asynchronously to the decidePolicyForNavigationResponse
22169 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22170 * TestWebKitAPI/Tests/WebKitCocoa/AsyncPolicyForNavigationResponse.mm: Added.
22171 (-[TestAsyncNavigationDelegate webView:didFinishNavigation:]):
22172 (-[TestAsyncNavigationDelegate webView:didFailNavigation:withError:]):
22173 (-[TestAsyncNavigationDelegate webView:didFailProvisionalNavigation:withError:]):
22174 (-[TestAsyncNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
22175 (-[TestAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
22176 (TestWebKitAPI::TEST):
22178 2018-02-12 John Wilander <wilander@apple.com>
22180 Resource Load Statistics: Classify resources as prevalent based on redirects to other prevalent resources
22181 https://bugs.webkit.org/show_bug.cgi?id=182664
22182 <rdar://problem/37372572>
22184 Reviewed by Brent Fulgham.
22186 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
22187 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
22188 (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectFrom):
22189 (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectTo):
22190 (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectFrom):
22191 * WebKitTestRunner/InjectedBundle/TestRunner.h:
22192 * WebKitTestRunner/TestController.cpp:
22193 (WTR::TestController::setStatisticsSubresourceUniqueRedirectFrom):
22194 (WTR::TestController::setStatisticsTopFrameUniqueRedirectTo):
22195 (WTR::TestController::setStatisticsTopFrameUniqueRedirectFrom):
22196 * WebKitTestRunner/TestController.h:
22197 * WebKitTestRunner/TestInvocation.cpp:
22198 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
22200 2018-02-12 Ross Kirsling <ross.kirsling@sony.com>
22202 download-latest-github-release .py should not use "browser download URL".
22203 https://bugs.webkit.org/show_bug.cgi?id=182646
22205 Reviewed by Per Arne Vollan.
22207 * Scripts/download-latest-github-release.py:
22208 Download request should be a proper GitHub API call and should actually include the token when applicable.
22209 (Also clean up usage of args and print while we're in here.)
22211 2018-02-12 Per Arne Vollan <pvollan@apple.com>
22213 EWS should run Windows tests.
22214 https://bugs.webkit.org/show_bug.cgi?id=177967
22216 Reviewed by Lucas Forschler.
22218 This will help catch regressions at an early stage.
22220 * Scripts/webkitpy/common/config/ews.json:
22222 2018-02-08 Ryosuke Niwa <rniwa@webkit.org>
22224 REGRESSION (r223440): Copying & pasting a list from Microsoft Word to TinyMCE fails
22225 https://bugs.webkit.org/show_bug.cgi?id=182564
22227 Reviewed by Wenson Hsieh.
22229 Added tests for pasting HTML with list items generated by Microsoft Word as well as HTML which looks like
22230 the one generated by Microsoft Word but missing a proper "html" element at the beginning.
22232 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22233 * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm: Added test cases.
22234 * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm: Added test cases.
22235 (msoListMarkupWithoutProperHTMLElement): Added.
22236 * TestWebKitAPI/Tests/WebKitCocoa/mso-list.html: Added.
22238 2018-02-09 Don Olmstead <don.olmstead@sony.com>
22240 [CMake] Make PAL headers copies
22241 https://bugs.webkit.org/show_bug.cgi?id=182645
22243 Reviewed by Alex Christensen.
22245 * TestWebKitAPI/CMakeLists.txt:
22247 2018-02-08 Wenson Hsieh <wenson_hsieh@apple.com>
22249 Pasting from Excel no longer provides text/html data
22250 https://bugs.webkit.org/show_bug.cgi?id=182636
22251 <rdar://problem/37087060>
22253 Reviewed by Ryosuke Niwa.
22255 Add new API tests to exercise pasting images with various other content types on macOS, and when dropping images
22256 and HTML markup on iOS. See the WebCore ChangeLog for more detail.
22258 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22259 * TestWebKitAPI/Tests/WebKitCocoa/DataTransfer.html: Added.
22261 Add a new API test harness that dumps various bits of information about a DataTransfer upon paste and drop.
22262 While somewhat similar to some existing harnesses, this makes a distinction between the raw HTML data on the
22263 pasteboard and the actual result of inserting said HTML into the DOM. This allows us to check that the HTML has
22264 been sanitized, while making checks for the actual content of the HTML robust against inline style changes.
22266 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
22267 * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm: Added.
22269 Add a new test suite to exercise pasting mixed content types. In these test cases, the pasteboard contains a
22270 file, with some combination of plain text, rich text, and URLs.
22273 (writeTypesAndDataToPasteboard):
22275 Add a helper to write a var-arg list of content types and data to the general NSPasteboard.
22279 (TestWebKitAPI::TEST):
22280 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
22281 (TestWebKitAPI::testIconImageData):
22282 (TestWebKitAPI::TEST):
22283 * TestWebKitAPI/cocoa/TestWKWebView.h:
22285 Move a private declaration of -[WKWebView paste:] out to TestWKWebView.h, so that it can be shared across
22286 multiple tests. Currently, it only resides in PasteImage.mm, but I need it in PasteMixedContent.mm as well.
22288 2018-02-09 Carlos Garcia Campos <cgarcia@igalia.com>
22290 Add a way to check if a host is an IP address
22291 https://bugs.webkit.org/show_bug.cgi?id=182427
22293 Reviewed by Alex Christensen.
22295 Add unit test for URL::hostIsIPAddress().
22297 * TestWebKitAPI/Tests/WebCore/URL.cpp:
22298 (TestWebKitAPI::TEST_F):
22300 2018-02-09 Philippe Normand <pnormand@igalia.com>
22302 [GStreamer] Layout test fast/replaced/border-radius-clip.html crashes with GStreamer-CRITICAL **: gst_segment_to_stream_time: assertion 'segment->format == format' failed in gst_segment_to_stream_time()
22303 https://bugs.webkit.org/show_bug.cgi?id=176802
22305 Reviewed by Xabier Rodriguez-Calvar.
22307 * gstreamer/jhbuild.modules:
22308 * gstreamer/patches/gst-plugins-good-0001-gstgdkpixbufdec-stop-pretending-to-decode-gifs.patch: Added.
22310 2018-02-09 Philippe Normand <pnormand@igalia.com>
22312 [JHBuild] Update Mesa to version 17
22313 https://bugs.webkit.org/show_bug.cgi?id=182599
22315 Reviewed by Carlos Alberto Lopez Perez.
22317 * gtk/jhbuild.modules: Update Mesa (and its dependencies, hopefully) to version 17.3.3.
22319 2018-02-08 Chris Dumez <cdumez@apple.com>
22321 There should be a way to disable [OverrideBuiltins] behavior in a given DOMWrapperWorld
22322 https://bugs.webkit.org/show_bug.cgi?id=182524
22323 <rdar://problem/9057327>
22325 Reviewed by Ryosuke Niwa.
22327 Add API test coverage.
22329 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22330 * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior.cpp: Added.
22331 (TestWebKitAPI::runJavaScriptAlert):
22332 (TestWebKitAPI::TEST):
22333 * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior_Bundle.cpp: Added.
22334 (TestWebKitAPI::InjectedBundleDisableOverrideBuiltinsBehaviorTest::InjectedBundleDisableOverrideBuiltinsBehaviorTest):
22335 (TestWebKitAPI::InjectedBundleDisableOverrideBuiltinsBehaviorTest::initialize):
22336 * TestWebKitAPI/Tests/WebKit/override-builtins-test.html: Added.
22338 2018-02-08 Michael Catanzaro <mcatanzaro@igalia.com>
22340 TestController should not exercise cocoa-specific resource load statistics APIs
22341 https://bugs.webkit.org/show_bug.cgi?id=182355
22343 Reviewed by Alex Christensen.
22345 Remove unnecessary use of platform-specific APIs in the TestController, since there are
22346 cross-platform APIs to do the same thing.
22348 Also, ensure callbacks execute before returning from TestController's functions, since
22349 otherwise the tests are guaranteed to be flaky at best, and also since there's nothing to
22350 prevent the TestController from being destroyed before the callbacks execute.
22352 * WebKitTestRunner/TestController.cpp:
22353 (WTR::resourceStatisticsVoidResultCallback):
22354 (WTR::resourceStatisticsBooleanResultCallback):
22355 (WTR::TestController::isStatisticsPrevalentResource):
22356 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
22357 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
22358 (WTR::TestController::isStatisticsHasHadUserInteraction):
22359 (WTR::TestController::isStatisticsGrandfathered):
22360 (WTR::TestController::statisticsUpdateCookiePartitioning):
22361 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
22362 (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
22363 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
22364 (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
22365 (WTR::resourceStatisticsCallback): Deleted.
22366 (WTR::TestController::statisticsClearThroughWebsiteDataRemovalCallback): Deleted.
22367 * WebKitTestRunner/TestController.h:
22368 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
22369 (WTR::toNSString): Deleted.
22370 (WTR::TestController::setStatisticsLastSeen): Deleted.
22371 (WTR::TestController::setStatisticsPrevalentResource): Deleted.
22372 (WTR::TestController::isStatisticsPrevalentResource): Deleted.
22373 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder): Deleted.
22374 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo): Deleted.
22375 (WTR::TestController::setStatisticsHasHadUserInteraction): Deleted.
22376 (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction): Deleted.
22377 (WTR::TestController::isStatisticsHasHadUserInteraction): Deleted.
22378 (WTR::TestController::setStatisticsGrandfathered): Deleted.
22379 (WTR::TestController::isStatisticsGrandfathered): Deleted.
22380 (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin): Deleted.
22381 (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin): Deleted.
22382 (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo): Deleted.
22383 (WTR::TestController::setStatisticsTimeToLiveUserInteraction): Deleted.
22384 (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
22385 (WTR::TestController::statisticsProcessStatisticsAndDataRecords): Deleted.
22386 (WTR::TestController::statisticsUpdateCookiePartitioning): Deleted.
22387 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost): Deleted.
22388 (WTR::TestController::statisticsSubmitTelemetry): Deleted.
22389 (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned): Deleted.
22390 (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval): Deleted.
22391 (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured): Deleted.
22392 (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval): Deleted.
22393 (WTR::TestController::setStatisticsGrandfatheringTime): Deleted.
22394 (WTR::TestController::setStatisticsMaxStatisticsEntries): Deleted.
22395 (WTR::TestController::setStatisticsPruneEntriesDownTo): Deleted.
22396 (WTR::TestController::statisticsClearInMemoryAndPersistentStore): Deleted.
22397 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours): Deleted.
22398 (WTR::TestController::statisticsClearThroughWebsiteDataRemoval): Deleted.
22399 (WTR::TestController::statisticsResetToConsistentState): Deleted.
22401 2018-02-08 Jonathan Bedard <jbedard@apple.com>
22403 webkit-patch suggest-reviewers dies with AttributeError: 'NoneType' object has no attribute 'revision'
22404 https://bugs.webkit.org/show_bug.cgi?id=182584
22406 Reviewed by Daniel Bates.
22408 It is possible that a specific revision has an empty ChangeLog. In this case, Checkout.commit_info_for_revision
22409 will return 'None'. Checkout.recent_commit_infos_for_files should never return a set with 'None' in it.
22411 * Scripts/webkitpy/common/checkout/checkout.py:
22412 (Checkout.recent_commit_infos_for_files): Remove any empty commit information from the set.
22413 * Scripts/webkitpy/common/checkout/checkout_unittest.py: Add a file which references an empty ChangeLog.
22415 2018-02-08 Matt Lewis <jlewis3@apple.com>
22417 Unreviewed, rolling out r228261.
22419 This broke an internal build
22421 Reverted changeset:
22423 "Add a way to check if a host is an IP address"
22424 https://bugs.webkit.org/show_bug.cgi?id=182427
22425 https://trac.webkit.org/changeset/228261
22427 2018-02-08 Commit Queue <commit-queue@webkit.org>
22429 Unreviewed, rolling out r228267, r228268, and r228269.
22430 https://bugs.webkit.org/show_bug.cgi?id=182601
22432 jhbuild socks (Requested by philn on #webkit).
22434 Reverted changesets:
22436 "[JHBuild] Update Mesa to version 17"
22437 https://bugs.webkit.org/show_bug.cgi?id=182599
22438 https://trac.webkit.org/changeset/228267
22440 "Unreviewed, GTK build fix attempt after r228267."
22441 https://trac.webkit.org/changeset/228268
22443 "Unreviewed, final GTK build fix attempt after r228267."
22444 https://trac.webkit.org/changeset/228269
22446 2018-02-08 Philippe Normand <pnormand@igalia.com>
22448 Unreviewed, final GTK build fix attempt after r228267.
22450 * gtk/jhbuild.modules: sha256sum for libdrm was for the tar.gz archive. Oops.
22452 2018-02-08 Philippe Normand <pnormand@igalia.com>
22454 Unreviewed, GTK build fix attempt after r228267.
22456 * gtk/jhbuild.modules: Update to libdrm version 2.4.89, Mesa 17 requires at least version 2.4.75.
22458 2018-02-08 Philippe Normand <pnormand@igalia.com>
22460 [JHBuild] Update Mesa to version 17
22461 https://bugs.webkit.org/show_bug.cgi?id=182599
22463 Reviewed by Carlos Alberto Lopez Perez.
22465 * gtk/jhbuild.modules: Update Mesa to version 17.3.3.
22467 2018-02-05 Carlos Garcia Campos <cgarcia@igalia.com>
22469 Add a way to check if a host is an IP address
22470 https://bugs.webkit.org/show_bug.cgi?id=182427
22472 Reviewed by Alex Christensen.
22474 Add unit test for URL::hostIsIPAddress().
22476 * TestWebKitAPI/Tests/WebCore/URL.cpp:
22477 (TestWebKitAPI::TEST_F):
22479 2018-02-07 Tim Horton <timothy_horton@apple.com>
22481 Evernote device management web view sometimes displays at the wrong scale
22482 https://bugs.webkit.org/show_bug.cgi?id=182590
22483 <rdar://problem/36633687>
22485 Reviewed by Simon Fraser.
22487 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
22488 * TestWebKitAPI/Tests/ios/WKScrollViewDelegate.mm: Renamed from Tools/TestWebKitAPI/Tests/ios/WKScrollViewDelegateCrash.mm.
22489 (-[TestDelegateForScrollView dealloc]):
22490 (TestWebKitAPI::TEST):
22491 (-[WKScrollViewDelegateWithViewForZoomingOverridden viewForZoomingInScrollView:]):
22492 Add a test that failed before the change that ensures that we don't
22493 consult the external delegate for viewForZoomingInScrollView:, and that
22494 we succesfully update the scale even if it matches that of the view
22495 the external delegate returns for viewForZoomingInScrollView:.
22497 2018-02-07 Wenson Hsieh <wenson_hsieh@apple.com>
22499 REGRESSION(r226396): File paths are inserted when dropping image files
22500 https://bugs.webkit.org/show_bug.cgi?id=182557
22501 <rdar://problem/37294120>
22503 Reviewed by Ryosuke Niwa.
22505 Tweak some image pasting API tests to ensure that file paths are not inserted when pasting images backed by
22506 file paths on disk.
22508 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
22511 2018-02-07 Ms2ger <Ms2ger@igalia.com>
22513 [GTK] Enable WebKit.GeolocationTransitionTo{High,Low}Accuracy tests
22514 https://bugs.webkit.org/show_bug.cgi?id=125068
22516 Unreviewed test gardening.
22518 They do not appear to have failed since we started running them again in r226944.
22520 * TestWebKitAPI/glib/TestExpectations.json:
22522 2018-02-07 Ms2ger <Ms2ger@igalia.com>
22524 [GTK] Enable WebKit.InjectedBundleFrameHitTest test
22525 https://bugs.webkit.org/show_bug.cgi?id=120303
22527 Unreviewed test gardening.
22529 It does not appear to have failed since we started running it again in r226944.
22531 * TestWebKitAPI/glib/TestExpectations.json:
22533 2018-02-07 Ms2ger <Ms2ger@igalia.com>
22535 [GTK] Enable WebKit.ForceRepaint test
22536 https://bugs.webkit.org/show_bug.cgi?id=105532
22538 Unreviewed test gardening.
22540 It does not appear to have failed since we started running it again in r226944.
22542 * TestWebKitAPI/glib/TestExpectations.json:
22544 2018-02-07 Philippe Normand <pnormand@igalia.com>
22546 [JHBuild] Add libva in moduleset
22547 https://bugs.webkit.org/show_bug.cgi?id=182384
22549 Reviewed by Xabier Rodriguez-Calvar.
22551 * gstreamer/jhbuild.modules: Add libva and disable spurious message output.
22552 * gtk/install-dependencies: Remove libva from dependencies.
22553 * wpe/install-dependencies: Ditto.
22555 2018-02-07 Ms2ger <Ms2ger@igalia.com>
22557 [GTK] Enable WebKit.NewFirstVisuallyNonEmptyLayoutFrames test
22558 https://bugs.webkit.org/show_bug.cgi?id=85037
22560 Unreviewed test gardening.
22562 It does not appear to have failed since we started running it again in r226944.
22564 * TestWebKitAPI/glib/TestExpectations.json:
22566 2018-02-06 Leo Balter <leonardo.balter@gmail.com>
22568 Nit fix for ruby script called through Perl
22569 https://bugs.webkit.org/show_bug.cgi?id=182552
22571 Reviewed by Yusuke Suzuki.
22573 * BuildSlaveSupport/build.webkit.org-config/steps.py:
22576 2018-02-06 Don Olmstead <don.olmstead@sony.com>
22578 Remove WebCore/ForwardingHeaders directory
22579 https://bugs.webkit.org/show_bug.cgi?id=182347
22581 Reviewed by Keith Miller.
22583 * WebKitTestRunner/TestController.cpp:
22585 2018-02-06 Ross Kirsling <ross.kirsling@sony.com>
22587 webkit-patch upload should ask for confirmation before creating a new bug
22588 https://bugs.webkit.org/show_bug.cgi?id=182551
22590 Reviewed by Daniel Bates.
22592 It is quite easy to paste unintended text into the bug number prompt. This creates a junk bug with an uneditable
22593 first comment, which could result in embarrassment or potentially even a proprietary information leak.
22595 * Scripts/webkitpy/tool/commands/upload_unittest.py:
22597 * Scripts/webkitpy/tool/steps/promptforbugortitle.py:
22598 (PromptForBugOrTitle):
22599 (PromptForBugOrTitle.options):
22600 (PromptForBugOrTitle.run):
22602 2018-02-06 Youenn Fablet <youenn@apple.com>
22604 HasServiceWorkerRegistration bit should be sent when creating a new page
22605 https://bugs.webkit.org/show_bug.cgi?id=182410
22607 Reviewed by Chris Dumez.
22609 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
22611 2018-02-06 Andres Gomez <agomez@igalia.com>
22613 [GTK][WPE] Add dependencies watching lists for WKGTK+ and WPE
22614 https://bugs.webkit.org/show_bug.cgi?id=182346
22616 Reviewed by Michael Catanzaro.
22618 Loren, Carlos and Andres are interested on the WKGTK+ dependencies
22619 watchlist since they are running WKGTK+ EWS.
22621 Similarly, Adrian and Carlos are running a WPE EWS.
22623 * Scripts/webkitpy/common/config/watchlist: Added WPEDependencies
22624 and WebKitGTKDependencies watchlists with the proper people.
22626 2018-02-06 Andres Gomez <agomez@igalia.com>
22628 Unreviewed, canonicalize contributors.json
22630 After Thibault's addition, automatic checks complain about
22631 contributors.json with:
22633 "[...] Use "validate-committer-lists --canonicalize" to reformat
22636 * Scripts/webkitpy/common/config/contributors.json: Canonicalize.
22638 2018-02-06 Andres Gomez <agomez@igalia.com>
22640 Unreviewed, add Lorenzo Tilve to contributors.json
22642 We need to add Loren to the contributors list in order to CC him
22645 * Scripts/webkitpy/common/config/contributors.json: Added Lorenzo
22648 2018-02-05 Yousuke Kimoto <yousuke.kimoto@sony.com>
22650 [WinCairo] Refine WebKitLegacy and WebKit build for wincairo
22651 https://bugs.webkit.org/show_bug.cgi?id=182478
22653 Reviewed by Alex Christensen.
22655 For TestWebKitAPI, sources related to WebKitLegacy are built
22656 at WebKit build. Those files should be reffered for WebKitLegacy build.
22658 * TestWebKitAPI/PlatformWin.cmake:
22660 2018-02-05 Daniel Bates <dabates@apple.com>
22662 REGRESSION (r217572): run-webkit-tests exits without emitting newline character
22663 https://bugs.webkit.org/show_bug.cgi?id=182360
22665 Rubber-stamped by Aakash Jain.
22667 Fixes an annoyance where run-webkit-tests always exits without printing a newline character.
22668 In the terminal this looks like:
22670 $ Tools/Scripts/run-webkit-tests
22671 Expected to fail, but passed: (7)
22673 Stopping WebSocket server ...$
22675 This bug was caused by code added in r217572 to stop all run-webkit-tests started servers (e.g. an HTTP
22676 server) from an at-exit handler. When run-webkit-tests runs successfully (i.e. without error or
22677 control-C interruption) we would stop all such servers twice: once as part of ending the test
22678 run and once from the at-exit handler. The latter never prints a trailing newline character hence
22679 the state of the terminal (as depicted above). Instead LayoutTestRunner.stop_servers() should only
22680 stop servers that it started in LayoutTestRunner.start_servers().
22682 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
22683 (LayoutTestRunner.__init__):
22684 (LayoutTestRunner.start_servers):
22685 (LayoutTestRunner.stop_servers):
22686 Only start servers that run-webkit-tests has not already started and only stop servers that
22687 run-webkit-tests started.
22689 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
22690 (LayoutTestRunnerTests.test_servers_started.is_websocket_server_running):
22691 (LayoutTestRunnerTests.test_servers_started):
22692 (LayoutTestRunnerTests.test_servers_started.is_websocket_servers_running): Deleted.
22693 Update due to rename below.
22695 * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
22696 (is_web_socket_server_running): Added.
22697 (PyWebSocket.is_running): Deleted.
22699 * Scripts/webkitpy/port/base.py:
22700 (Port.is_http_server_running): Check if we already started the server ourself.
22701 (Port.is_websocket_server_running): Formerly named is_websocket_servers_running. Modified
22702 to check if we already started the server ourself. Take a similar approach as the other
22703 Port.is_*_running methods and only check if an existing WebSocket server is running on the
22704 non-secure server port. This is a simple heuristic and should be sufficient in practice.
22705 (Port.is_wpt_server_running): Check if we already started the server ourself.
22706 (Port.is_websocket_servers_running): Deleted; renamed to is_websocket_server_running().
22708 2018-02-05 Daniel Bates <dabates@apple.com>
22710 prepare-ChangeLog gets confused about Python docstrings that contain the word "class" or "def"
22711 https://bugs.webkit.org/show_bug.cgi?id=182405
22713 Reviewed by David Kilzer.
22715 String literal statements, including docstrings, do not demarcate a new scope in Python.
22716 So, do not treat them like they do when building up the list of modified functions.
22718 * Scripts/prepare-ChangeLog:
22719 (get_function_line_ranges_for_python):
22720 * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/python_unittests-expected.txt:
22721 The expected ending line number for the last "pass" statement inside the scope of Class5 changed
22722 from 97 to 98 because empty lines do not effect scope. This is consistent with the parsing
22723 of the second "pass" statement in the scope of class Class5. A "pass" is a null operation that
22724 is used as a syntactic placeholder when a statement is required. Ideally we would make
22725 the parsing code smarter so as to avoid emitting ranges for "pass" statements that serve
22726 not syntactic purpose.
22727 * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/python_unittests.py:
22735 Add some more tests.
22737 2018-02-05 Matt Lewis <jlewis3@apple.com>
22739 Unreviewed, rolling out r228086.
22741 This introduced a failure with API test
22742 URLTest.HostIsIPAddress.
22744 Reverted changeset:
22746 "Add a way to check if a host is an IP address"
22747 https://bugs.webkit.org/show_bug.cgi?id=182427
22748 https://trac.webkit.org/changeset/228086
22750 2018-02-05 John Wilander <wilander@apple.com>
22752 Storage Access API: Add testRunner.getAllStorageAccessEntries() to make testing easier and more explicit
22753 https://bugs.webkit.org/show_bug.cgi?id=181601
22754 <rdar://problem/36475837>
22756 Reviewed by Alex Christensen.
22758 http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html
22759 was found to be flaky. With the testRunner.hasStorageAccessEntry() getter
22760 it's possible to check access even if a frame doesn't respond timely to
22761 postMessage after detach and attach.
22763 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
22764 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
22765 (WTR::InjectedBundle::didReceiveMessageToPage):
22766 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
22767 (WTR::TestRunner::setStorageAccessAPIEnabled):
22768 Just moved for source file grouping.
22769 (WTR::TestRunner::getAllStorageAccessEntries):
22770 (WTR::TestRunner::callDidReceiveAllStorageAccessEntriesCallback):
22771 * WebKitTestRunner/InjectedBundle/TestRunner.h:
22772 * WebKitTestRunner/TestController.cpp:
22773 (WTR::TestController::getAllStorageAccessEntries):
22774 Note that this is just stubbed out, i.e. not implemented.
22775 * WebKitTestRunner/TestController.h:
22776 * WebKitTestRunner/TestInvocation.cpp:
22777 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
22778 (WTR::TestInvocation::didReceiveAllStorageAccessEntries):
22779 * WebKitTestRunner/TestInvocation.h:
22780 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
22781 (WTR::TestController::getAllStorageAccessEntries):
22782 This is the Cocoa-specific version of this test infrastructure.
22784 2018-02-05 Basuke Suzuki <Basuke.Suzuki@sony.com>
22786 [Win] Enable multi CPU building on MSBuild.
22787 https://bugs.webkit.org/show_bug.cgi?id=182446
22789 Compiling itself already uses multi cores, but other stuff is still on single core.
22790 This patch enables that by passing an argument to MSBuild.exe.
22792 Reviewed by Alex Christensen.
22794 * Scripts/webkitdirs.pm:
22795 (determineNumberOfCPUs):
22796 (buildVisualStudioProject):
22798 2018-02-05 Alicia Boya GarcÃa <aboya@igalia.com>
22800 Fix bug in MediaTime comparison for negative values with different scale.
22801 https://bugs.webkit.org/show_bug.cgi?id=182433
22803 Improved test coverage for MediaTime::compare().
22805 Reviewed by Xabier Rodriguez-Calvar.
22807 * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
22808 (TestWebKitAPI::TEST):
22810 2018-02-05 Carlos Garcia Campos <cgarcia@igalia.com>
22812 [SOUP] WebSockets must use system proxy settings
22813 https://bugs.webkit.org/show_bug.cgi?id=126384
22815 Reviewed by Michael Catanzaro.
22817 Check also WebSockets in /webkit2/WebKitWebContext/proxy.
22819 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
22820 (ProxyTest::webSocketProxyServerCallback):
22821 (ProxyTest::ProxyTest):
22822 (ProxyTest::webSocketConnected):
22823 (ProxyTest::createWebSocketAndWaitUntilConnected):
22824 (webSocketServerCallback):
22825 (testWebContextProxySettings):
22826 * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
22827 (WebKitTestServer::~WebKitTestServer):
22828 (WebKitTestServer::addWebSocketHandler):
22829 (WebKitTestServer::removeWebSocketHandler):
22830 (WebKitTestServer::getWebSocketURIForPath const):
22831 (WebKitTestServer::getURIForPath const):
22832 * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.h:
22833 (WebKitTestServer::baseURI const):
22834 (WebKitTestServer::baseWebSocketURI const):
22836 2018-02-05 Carlos Garcia Campos <cgarcia@igalia.com>
22838 Add a way to check if a host is an IP address
22839 https://bugs.webkit.org/show_bug.cgi?id=182427
22841 Reviewed by Alex Christensen.
22843 Add unit test for URL::hostIsIPAddress().
22845 * TestWebKitAPI/Tests/WebCore/URL.cpp:
22846 (TestWebKitAPI::TEST_F):
22848 2018-02-03 Charlie Turner <cturner@igalia.com>
22850 Add libmount to WPE dependencies
22851 https://bugs.webkit.org/show_bug.cgi?id=182345
22853 Reviewed by Michael Catanzaro.
22855 * wpe/install-dependencies:
22857 2018-02-02 Youenn Fablet <youenn@apple.com>
22859 W3C test exporter should allow exporting newly added files
22860 https://bugs.webkit.org/show_bug.cgi?id=182369
22862 Reviewed by Ryosuke Niwa.
22864 * Scripts/webkitpy/common/checkout/scm/git.py:
22865 (Git.apply_mail_patch):
22867 2018-02-02 David Quesada <david_quesada@apple.com>
22869 WebAppManifest scope should default to the containing directory of start_url if 'scope' is not specified
22870 https://bugs.webkit.org/show_bug.cgi?id=182363
22871 rdar://problem/37093498
22873 Reviewed by Ryosuke Niwa.
22875 Updated ApplicationManifestParserTests to account for the new default scope behavior.
22877 * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
22878 (assertManifestHasDefaultValues):
22881 2018-02-02 Youenn Fablet <youenn@apple.com>
22883 Clearing all service worker registrations should wait for importing service worker registration to finish
22884 https://bugs.webkit.org/show_bug.cgi?id=182407
22886 Reviewed by Chris Dumez.
22888 Make sure we finish clearing service worker registrations before running tests.
22890 * WebKitTestRunner/TestController.cpp:
22891 (WTR::TestController::resetStateToConsistentValues):
22892 (WTR::ClearServiceWorkerRegistrationsCallbackContext::ClearServiceWorkerRegistrationsCallbackContext):
22893 (WTR::clearServiceWorkerRegistrationsCallback):
22894 (WTR::TestController::clearServiceWorkerRegistrations):
22895 * WebKitTestRunner/TestController.h:
22897 2018-02-02 Youenn Fablet <youenn@apple.com>
22899 Configure serviceWorkerRegistrationDirectory on the web site data store and move it to a Caches subfolder as a default
22900 https://bugs.webkit.org/show_bug.cgi?id=182403
22902 Reviewed by Alex Christensen.
22904 * WebKitTestRunner/TestController.cpp:
22905 (WTR::TestController::generateContextConfiguration const):
22906 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
22907 (WTR::initializeWebViewConfiguration):
22909 2018-02-02 Carlos Garcia Campos <cgarcia@igalia.com>
22911 [GTK] WebDriver: tests step always times out in the bot
22912 https://bugs.webkit.org/show_bug.cgi?id=182437
22914 Reviewed by Carlos Alberto Lopez Perez.
22916 The process itself is not timing out, but the buildbot step is. This is because we are leaking the Xvfb
22917 processes. We should ensure that only one driver is executed and it's stopped before the process finishes.
22919 * Scripts/run-webdriver-tests: Call teardown() after run().
22920 * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
22921 (WebDriverSeleniumExecutor.__init__): Receive the env directly instead of the display driver.
22922 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
22923 (WebDriverTestRunner.__init__): Use the driver class directly instead of using the DriverProxy. Get the env from
22924 the display driver once and pass it to the test runners.
22925 (WebDriverTestRunner.teardown): Stop the display server.
22926 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
22927 (WebDriverTestRunnerSelenium.__init__): Receive the env directly instead of the display driver.
22928 (WebDriverTestRunnerSelenium.collect_tests): Pass the env to the executor.
22929 (WebDriverTestRunnerSelenium.run): Ditto.
22930 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
22931 (WebDriverTestRunnerW3C.__init__): Receive the env directly instead of the display driver.
22932 (WebDriverTestRunnerW3C.run): Pass the env to the executor.
22933 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
22934 (WebDriverW3CExecutor.__init__): Receive the env directly instead of the display driver.
22936 2018-02-02 Carlos Garcia Campos <cgarcia@igalia.com>
22938 Unreviewed, rolling out r227999.
22940 It didn't fix the problem
22942 Reverted changeset:
22944 "Unreviewed. Try to avoid webdriver tests step timing out in
22946 https://trac.webkit.org/changeset/227999
22948 2018-02-02 Carlos Alberto Lopez Perez <clopez@igalia.com>
22950 Start timeout for the run-buildbot-test script is too aggressive
22951 https://bugs.webkit.org/show_bug.cgi?id=182429
22953 Reviewed by Carlos Garcia Campos.
22955 15 seconds is not enough waiting for the update database process
22956 to complete on a system backed with rotational HDDs. Raise it to 60.
22958 * BuildSlaveSupport/build.webkit.org-config/run-buildbot-test.py:
22959 (wait_for_master_ready):
22961 2018-02-02 Carlos Alberto Lopez Perez <clopez@igalia.com>
22963 re-add ARM JSCOnly bots on buildbot waterfall
22964 https://bugs.webkit.org/show_bug.cgi?id=182428
22966 Reviewed by Csaba Osztrogonác.
22968 * BuildSlaveSupport/build.webkit.org-config/config.json:
22969 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
22971 2018-02-02 Csaba Osztrogonác <ossy@webkit.org>
22973 Remove ARM JSCOnly bots from buildbot waterfall
22974 https://bugs.webkit.org/show_bug.cgi?id=182398
22976 Reviewed by Alexey Proskuryakov.
22978 * BuildSlaveSupport/build.webkit.org-config/config.json:
22979 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
22981 2018-02-02 Carlos Garcia Campos <cgarcia@igalia.com>
22983 Unreviewed. Try to avoid webdriver tests step timing out in the bots.
22985 This is another speculative workaround. Carlos Lopez suggested to use os._exit() instead of sys.exit() as a
22986 workaround for a bug in python2.7 when using multiprocess module.
22988 * Scripts/run-webdriver-tests:
22990 2018-02-01 Youenn Fablet <youenn@apple.com>
22992 Delay service worker process creation until actually needed by SWServer
22993 https://bugs.webkit.org/show_bug.cgi?id=182301
22995 Reviewed by Chris Dumez.
22997 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
23000 2018-02-01 Aakash Jain <aakash_jain@apple.com>
23002 Bubbles intermittently disappear from bot watchers dashboard
23003 https://bugs.webkit.org/show_bug.cgi?id=182085
23005 Reviewed by Alexey Proskuryakov.
23007 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
23008 (BuildbotIteration.prototype.failureLogURL): failureLogURL doesn't depend on step in Buildbot 0.9.
23009 Return the Build Page URL for Buildbot Buildbot 0.9. Earlier code was also doing the same using a
23010 confusing if (!this._firstFailedStep.logs) statement which is always false for Buildbot 0.9.
23012 2018-02-01 Carlos Garcia Campos <cgarcia@igalia.com>
23014 [GTK] Problem with Washington Post images
23015 https://bugs.webkit.org/show_bug.cgi?id=181421
23017 Reviewed by Carlos Alberto Lopez Perez.
23019 Add test case for the new user agent quirk.
23021 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
23022 (TestWebKitAPI::TEST):
23024 2018-02-01 Carlos Garcia Campos <cgarcia@igalia.com>
23026 [GTK] MiniBrowser settings are just a list of names
23027 https://bugs.webkit.org/show_bug.cgi?id=182005
23029 Reviewed by Sergio Villar Senin.
23031 The default size we are using is too small to show the values column, and the window is not resizable because
23032 GObjectClass::constructed() is not called in the parent class.
23034 * MiniBrowser/gtk/BrowserSettingsDialog.c:
23035 (browser_settings_dialog_init): Use 600x400 as default size.
23036 (browserSettingsDialogConstructed): Chain up to parent constructed.
23038 2018-01-31 Andres Gomez <agomez@igalia.com>
23040 Unreviewed. Remove WebInspectorUI watchlist and remove myself from 2 watchlists more
23042 * Scripts/webkitpy/common/config/watchlist:
23044 2018-01-31 Per Arne Vollan <pvollan@apple.com>
23046 Layout Test fast/events/beforeunload-dom-manipulation-crash.html is crashing
23047 https://bugs.webkit.org/show_bug.cgi?id=181204
23048 <rdar://problem/36256274>
23050 Reviewed by Ryosuke Niwa.
23052 Implement 'testRunner.forceImmediateCompletion()' for WK1.
23054 * DumpRenderTree/TestRunner.cpp:
23055 (forceImmediateCompletionCallback):
23056 (TestRunner::staticFunctions):
23058 2018-01-31 Alex Christensen <achristensen@webkit.org>
23060 Unreviewed, rolling out r227942.
23062 r227875 should not have been rolled out.
23064 Reverted changeset:
23066 "Unreviewed, rolling out r227875."
23067 https://bugs.webkit.org/show_bug.cgi?id=182357
23068 https://trac.webkit.org/changeset/227942
23070 2018-01-31 Michael Catanzaro <mcatanzaro@igalia.com>
23072 Unreviewed, rolling out r227875.
23073 https://bugs.webkit.org/show_bug.cgi?id=182357
23075 Missing cross-platform TestController implementation
23077 Reverted changeset:
23079 "Add callbacks to testRunner.statisticsSetShouldPartitionCookiesForHost() and testRunner.statisticsUpdateCookiePartitioning()"
23080 https://bugs.webkit.org/show_bug.cgi?id=181958
23081 https://trac.webkit.org/changeset/227875
23083 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
23084 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
23085 (WTR::InjectedBundle::didReceiveMessageToPage):
23086 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
23087 (WTR::TestRunner::statisticsUpdateCookiePartitioning):
23088 (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost):
23089 (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback): Deleted.
23090 * WebKitTestRunner/InjectedBundle/TestRunner.h:
23091 * WebKitTestRunner/TestInvocation.cpp:
23092 (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost): Deleted.
23093 * WebKitTestRunner/TestInvocation.h:
23094 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
23095 (WTR::TestController::statisticsUpdateCookiePartitioning):
23096 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
23098 2018-01-31 Michael Catanzaro <mcatanzaro@igalia.com>
23100 REGRESSION(r227223): http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-one-hour.html, http/tests/resourceLoadStatistics/grandfathering.html timing out on GTK, WPE
23101 https://bugs.webkit.org/show_bug.cgi?id=182222
23103 Reviewed by Alex Christensen.
23105 Use the new API to notify when resource load statistics deletion is complete.
23107 * WebKitTestRunner/TestController.cpp:
23108 (WTR::TestController::statisticsClearThroughWebsiteDataRemovalCallback):
23109 (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
23110 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
23112 2018-01-31 Ryosuke Niwa <rniwa@webkit.org>
23114 Add the support for running StyleBench to run-benchmark
23115 https://bugs.webkit.org/show_bug.cgi?id=182323
23117 Reviewed by Antti Koivisto.
23119 Added the plan file and the patch needed to run StyleBench using run-benchmark as of r227863.
23121 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/StyleBench.patch: Added.
23122 * Scripts/webkitpy/benchmark_runner/data/plans/stylebench.plan: Added.
23124 2018-01-31 Wenson Hsieh <wenson_hsieh@apple.com>
23126 [iOS WK2] API test DataInteractionTests.ExternalSourceDataTransferItemGetFolderAsEntry is failing after an SDK update
23127 https://bugs.webkit.org/show_bug.cgi?id=182339
23128 <rdar://problem/36041396>
23130 Reviewed by Andy Estes.
23132 This API test wasn't meant to be dependent on the size of an image generated using UIImagePNGRepresentation().
23133 To make this test robust against changes to image encoding, write the raw data to the test folder instead and
23134 check against the length of the data written.
23136 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
23137 (testIconImageData):
23138 (runTestWithTemporaryFolder):
23139 (TestWebKitAPI::TEST):
23141 2018-01-31 Dan Bernstein <mitz@apple.com>
23143 [macOS] MiniBrowser isn’t app-sandboxed
23144 https://bugs.webkit.org/show_bug.cgi?id=182147
23146 Reviewed by Sam Weinig.
23148 Enable App Sandbox and add a temporary exception allowing read access to all files.
23150 * MiniBrowser/Configurations/Base.xcconfig: Enabled ad-hoc code signing.
23151 * MiniBrowser/Configurations/MiniBrowser.xcconfig: Specified the entitlements file to use.
23152 * MiniBrowser/MiniBrowser.entitlements: Added. Enables App Sandbox with outbound networking
23153 and read access from /.
23154 * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Added reference to new file.
23156 2018-01-31 Philippe Normand <pnormand@igalia.com>
23158 [JHBuild] Add gstreamer-vaapi in moduleset
23159 https://bugs.webkit.org/show_bug.cgi?id=182283
23161 Reviewed by Carlos Alberto Lopez Perez.
23163 GStreamer-VAAPI is required for hardware-accelerated video
23164 playback support on Intel and AMD (using radeosi driver)
23167 * gstreamer/jhbuild.modules: Add gstreamer-vaapi.
23168 * gtk/install-dependencies: Install libva.
23169 * wpe/install-dependencies: Ditto.
23170 * Scripts/webkitpy/port/gtk.py:
23171 (GtkPort.setup_environ_for_server): Disable va-api support when
23172 testing because it's incompatible with Mesa's softGL driver.
23174 2018-01-31 Charlie Turner <cturner@igalia.com>
23176 [WPE] Update jhbuild dependencies
23177 https://bugs.webkit.org/show_bug.cgi?id=182286
23179 This upgrades the following packages,
23180 glib 2.44.1 -> 2.54.3
23181 glib-networking 2.42.0 -> 2.54.1
23182 libsoup 2.48.0 -> 2.60.3
23184 The initial reason for performing these upgrades was that when
23185 visiting https://youtube.com, WPE was getting TLS certificate
23186 errors. After upgrading glib-networking, these were fixed, but the
23187 upgrade introduced dependencies on newer versions of the other
23188 packages upgraded in this commit.
23190 The upgrade to glib caused a linking error in gstreamer, the
23191 following errors were being logged during linking,
23193 //usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_glib_script_from_script'
23194 //usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_glib_get_unicode_funcs'
23195 //usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_glib_script_to_script'
23197 This was fixed by adding the glib package built in the jhbuild to
23200 Finally, the upgrade of glib caused the glib-warning-fix.patch to
23201 no longer apply, so this patch was removed.
23203 Reviewed by Michael Catanzaro.
23205 * wpe/jhbuild.modules: Added dependecies.
23206 * wpe/patches/glib-warning-fix.patch: Removed.
23208 2018-01-31 Carlos Garcia Campos <cgarcia@igalia.com>
23210 Unreviewed, rolling out r227782.
23212 It didn't fix the problem
23214 Reverted changeset:
23216 "Unreviewed. Try to avoid webdriver tests step timing out in
23218 https://trac.webkit.org/changeset/227782
23220 2018-01-31 Carlos Garcia Campos <cgarcia@igalia.com>
23222 WebDriver: add domains to server config in w3c tests
23223 https://bugs.webkit.org/show_bug.cgi?id=182294
23225 Reviewed by Carlos Alberto Lopez Perez.
23227 Several cookie tests expect server_config to have a domains key.
23229 Fixes: imported/w3c/webdriver/tests/cookies/add_cookie.py::test_add_domain_cookie
23230 imported/w3c/webdriver/tests/cookies/add_cookie.py::test_add_session_cookie_with_leading_dot_character_in_domain
23232 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
23233 (WebDriverW3CExecutor.__init__):
23235 2018-01-31 Carlos Garcia Campos <cgarcia@igalia.com>
23237 Unreviewed. Update W3C WebDriver imported tests.
23239 Show full pytest failure logs.
23241 pytest truncates long lists when printing a failed assertion.
23242 This is not great for debugging and arguably it should be the
23243 default to show the full diff when comparing lists.
23245 * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
23248 2018-01-30 John Wilander <wilander@apple.com>
23250 Add callbacks to testRunner.statisticsSetShouldPartitionCookiesForHost() and testRunner.statisticsUpdateCookiePartitioning()
23251 https://bugs.webkit.org/show_bug.cgi?id=181958
23252 https://bugs.webkit.org/show_bug.cgi?id=182072
23253 <rdar://problem/36801804>
23254 <rdar://problem/36845795>
23256 Reviewed by Brent Fulgham.
23258 Because of the asynchronous nature of XPC and cookies,
23259 we need callbacks in these TestRunner functions so that
23260 the layout tests can wait for state changes to finish
23261 before checking test conditions.
23263 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
23264 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
23265 (WTR::InjectedBundle::didReceiveMessageToPage):
23266 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
23267 (WTR::TestRunner::statisticsUpdateCookiePartitioning):
23268 (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost):
23269 (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback):
23270 * WebKitTestRunner/InjectedBundle/TestRunner.h:
23271 * WebKitTestRunner/TestInvocation.cpp:
23272 (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost):
23273 * WebKitTestRunner/TestInvocation.h:
23274 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
23275 (WTR::TestController::statisticsUpdateCookiePartitioning):
23276 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
23278 2018-01-30 Basuke Suzuki <Basuke.Suzuki@sony.com>
23280 [webkitpy] Config file for apache is copied twice.
23281 https://bugs.webkit.org/show_bug.cgi?id=182131
23283 Reviewed by Daniel Bates.
23285 * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
23286 (LayoutTestApacheHttpd.__init__):
23287 (LayoutTestApacheHttpd._copy_apache_config_file):
23288 (LayoutTestApacheHttpd._get_apache_config_file_path): Deleted.
23290 2018-01-30 Don Olmstead <don.olmstead@sony.com>
23292 JSExports.h should be included as <JavaScriptCore/JSExportMacros.h>
23293 https://bugs.webkit.org/show_bug.cgi?id=182312
23295 Reviewed by Michael Catanzaro.
23297 * DumpRenderTree/config.h:
23298 * TestWebKitAPI/config.h:
23299 * WebKitTestRunner/config.h:
23301 2018-01-30 Wenson Hsieh <wenson_hsieh@apple.com>
23303 [iOS] API test UIPasteboardTests.DataTransferGetDataWhenPastingPlatformRepresentations fails after r223440
23304 https://bugs.webkit.org/show_bug.cgi?id=182307
23305 <rdar://problem/36041485>
23307 Reviewed by Ryosuke Niwa.
23309 Adjusts a failing API test that we forgot to rebaseline after r223440, which ensures that the result of reading
23310 "text/html" from the DataTransfer is sanitized markup. To do this, teach the test harness
23311 (dump-datatransfer-types.html) to ignore inline styles in markup if a flag is set, and then set that flag in
23312 UIPasteboardTests.DataTransferGetDataWhenPastingPlatformRepresentations.
23314 * TestWebKitAPI/Tests/WebKitCocoa/dump-datatransfer-types.html:
23315 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
23316 (TestWebKitAPI::TEST):
23318 2018-01-30 Sergio Villar Senin <svillar@igalia.com>
23320 [WebVR][GTK][WPE] Exclude OpenVR from tarballs
23321 https://bugs.webkit.org/show_bug.cgi?id=182284
23323 Reviewed by Michael Catanzaro.
23325 * gtk/manifest.txt.in: Added ThirdParty/openvr to exclusions.
23326 * wpe/manifest.txt.in: Ditto.
23328 2018-01-30 Yusuke Suzuki <utatane.tea@gmail.com>
23330 Unreviewed, try to fix JSCOnly build
23331 https://bugs.webkit.org/show_bug.cgi?id=177202
23335 2018-01-30 Carlos Garcia Campos <cgarcia@igalia.com>
23337 Unreviewed. Try to avoid webdriver tests step timing out in the bots.
23339 The process itself doesn't seem to be timing out, but the buildbot is always reporting the step as finished
23340 after timeout. I think there's a race condition or something in buildbot, and it keeps watching the json log
23341 file even when it has already been written. This is a speculative workaround, assuming that's the problem, that
23342 creates the json file before running the tests. I'll revert this if it doesn't fix the issue in the end.
23344 * Scripts/run-webdriver-tests:
23345 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
23346 (WebDriverTestRunner.dump_results_to_json_file):
23348 2018-01-30 Basuke Suzuki <Basuke.Suzuki@sony.com>
23350 [WinCairo] Fix forwarding header conflict of WebKit on WinCairo
23351 https://bugs.webkit.org/show_bug.cgi?id=177202
23353 Reviewed by Alex Christensen.
23357 2018-01-29 Alex Christensen <achristensen@webkit.org>
23359 Clean up API after bugs 178240 and 176474
23360 https://bugs.webkit.org/show_bug.cgi?id=182259
23362 Reviewed by Dan Bernstein.
23364 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
23366 (-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
23368 2018-01-29 Jiewen Tan <jiewen_tan@apple.com>
23370 [WebAuthN] Add a compile-time feature flag
23371 https://bugs.webkit.org/show_bug.cgi?id=182211
23372 <rdar://problem/36936365>
23374 Reviewed by Brent Fulgham.
23376 * Scripts/webkitperl/FeatureList.pm:
23377 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
23379 2018-01-29 Brady Eidson <beidson@apple.com>
23381 Make the API test added in r227737 be Mac-only.
23383 Unreviewed gardening.
23385 * TestWebKitAPI/Tests/WebKitCocoa/MessagePortProviders.mm:
23387 2018-01-29 Matt Lewis <jlewis3@apple.com>
23389 Unreviewed, rolling out r227731.
23391 This caused and assertion failure in API tests.
23393 Reverted changeset:
23395 "Layout Test fast/events/beforeunload-dom-manipulation-
23396 crash.html is crashing"
23397 https://bugs.webkit.org/show_bug.cgi?id=181204
23398 https://trac.webkit.org/changeset/227731
23400 2018-01-29 Youenn Fablet <youenn@apple.com>
23402 WPT test exporter should add WebKit export in its PR description
23403 https://bugs.webkit.org/show_bug.cgi?id=182246
23405 Reviewed by Chris Dumez.
23407 Updating PR description body to contain the words 'WebKit export'.
23408 That way, WPT PR bot will mark the PR as reviewed downstream.
23410 * Scripts/webkitpy/w3c/test_exporter.py:
23411 (TestExporter.__init__):
23412 (TestExporter.make_pull_request):
23413 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
23414 (TestExporterTest.test_export):
23416 2018-01-29 Ryosuke Niwa <rniwa@webkit.org>
23418 Add the support for running Speedometer 2.0 to run-benchmark
23419 https://bugs.webkit.org/show_bug.cgi?id=182231
23421 Reviewed by Antti Koivisto.
23423 Made it possible to run Speedometer 2.0 using run-benchmark. To do this, this patch adds the ability to
23424 aggregate results using the differently aggregated values of subtests. In particular, Speedometer 2.0
23425 requires aggregating the geometric mean out of total time spent in each suite.
23427 Also added --show-iteration-values to show individual measured values in each iteration.
23429 * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
23430 (BenchmarkResults.format): Added show_iteration_values as an option.
23431 (BenchmarkResults._format_tests): Ditto.
23432 (BenchmarkResults._format_values): Ditto. Added the code to show the measured values for each iteration
23433 when show_iteration_values is set to True. We don't emit the unit in each value so that the list of values
23434 is easily parsable as a JSON array.
23435 (BenchmarkResults._format_values.format_scaled): Added. A helper function.
23436 (BenchmarkResults._subtest_values_by_config_iteration): Added the support for aggregating values using
23437 the aggregated values of a subtest even when they were computed using a different aggregator if the subtest
23438 had exactly one aggregator.
23439 (BenchmarkResults._lint_results):
23440 (BenchmarkResults._lint_subtest_results): Replaced parent_needing_aggregation, which is set to the parent
23441 test's name only when the parent test had an aggregator, by self-explanatory parent_test and
23442 parent_aggregator_list.
23443 (BenchmarkResults._lint_aggregator_list): Ditto. Added raise an exception when a test has an aggregator but
23444 its subtest doesn't specify the same aggregator or it has more than one aggregators, making it ambiguous.
23445 (BenchmarkResults._lint_configuration):
23446 * Scripts/webkitpy/benchmark_runner/benchmark_results_unittest.py:
23447 (test_format_values_with_no_unit_scaling): Added.
23448 (test_format_values_with_iteration_values): Added.
23449 (test_format_values_with_no_unit_scaling_and_iteration_values): Added.
23450 (test_aggregate_results_from_another_aggregator): Added.
23451 (test_lint_results): Added a test case.
23452 * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
23453 (BenchmarkRunner.__init__): Added show_iteration_values as an argument.
23454 (BenchmarkRunner._run_benchmark): Ditto.
23455 (BenchmarkRunner.show_results): Ditto.
23456 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Speedometer2.patch: Added.
23457 * Scripts/webkitpy/benchmark_runner/data/plans/speedometer2.plan: Added.
23458 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
23459 (parse_args): Added --show-iteration-values as a boolean argument.
23460 (run_benchmark_plan): Ditto.
23462 * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
23463 (WebServerBenchmarkRunner.__init__): Ditto.
23465 2018-01-29 Brady Eidson <beidson@apple.com>
23467 Make it possible for apps that use both WK1 and WK2 to use MessagePorts.
23468 https://bugs.webkit.org/show_bug.cgi?id=182229
23470 Reviewed by Chris Dumez.
23472 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23473 * TestWebKitAPI/Tests/WebKitCocoa/MessagePortProviders.mm: Added.
23475 2018-01-29 Carlos Garcia Campos <cgarcia@igalia.com>
23477 WebDriver: properly recover w3c tests after a webdriver server crash
23478 https://bugs.webkit.org/show_bug.cgi?id=182242
23480 Reviewed by Carlos Alberto Lopez Perez.
23482 When a test makes the webdriver server crash, all other subsequent tests fail because they still try to send
23483 messages to the server, gettin connection refused errors all the time. Selenium tests handle this correctly by
23484 relaunching the server after every test failure, because other failures, even when not crashing the server,
23485 might leave it in an bad state. WPT runner does the same for test files, it uses a subprocess to run the tests
23486 and when any subtest fails, a new subsprocess is used for the following test file. We could do the same.
23488 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
23489 (WebDriverTestRunnerW3C.run): Restart the executor if any subtest failed.
23490 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
23491 (WebDriverW3CExecutor.__init__): Save timeout and expectations and do not import pytest.
23492 (WebDriverW3CExecutor.setup): Create a subprocess to run the tests.
23493 (WebDriverW3CExecutor.teardown): Send a message to the subprocess to terminate.
23494 (WebDriverW3CExecutor._runner): Run the tests using pytest runner.
23495 (WebDriverW3CExecutor.run): Send a message to the subprocess to run the given test and return the results message.
23497 2018-01-29 Per Arne Vollan <pvollan@apple.com>
23499 Layout Test fast/events/beforeunload-dom-manipulation-crash.html is crashing
23500 https://bugs.webkit.org/show_bug.cgi?id=181204
23501 <rdar://problem/36256274>
23503 Reviewed by Ryosuke Niwa.
23505 Implement 'testRunner.forceImmediateCompletion()' for WK1.
23507 * DumpRenderTree/TestRunner.cpp:
23508 (forceImmediateCompletionCallback):
23509 (TestRunner::staticFunctions):
23511 2018-01-29 Frederic Wang <fwang@igalia.com>
23513 Unreviewed, add myself to some watch lists.
23515 * Scripts/webkitpy/common/config/watchlist:
23517 2018-01-27 Dan Bernstein <mitz@apple.com>
23519 HaveInternalSDK includes should be "#include?"
23520 https://bugs.webkit.org/show_bug.cgi?id=179670
23522 * DumpRenderTree/mac/Configurations/Base.xcconfig:
23524 2018-01-26 Chris Dumez <cdumez@apple.com>
23526 Make sure service worker code does not launch a StorageProcess unnecessarily
23527 https://bugs.webkit.org/show_bug.cgi?id=182192
23528 <rdar://problem/36927427>
23530 Reviewed by Geoffrey Garen.
23532 Add API test coverage.
23534 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
23536 2018-01-26 Chris Dumez <cdumez@apple.com>
23538 Offlined content does not work for apps on home screen
23539 https://bugs.webkit.org/show_bug.cgi?id=182070
23540 <rdar://problem/36843906>
23542 Reviewed by Youenn Fablet.
23544 Add API test coverage to make sure an already registered service worker is able to intercept
23545 the very first load.
23547 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
23548 (-[SWMessageHandlerWithExpectedMessage userContentController:didReceiveScriptMessage:]):
23550 2018-01-26 Chris Nardi <cnardi@chromium.org>
23552 Addressing post-review comments after r226614
23553 https://bugs.webkit.org/show_bug.cgi?id=182151
23555 Reviewed by Myles C. Maxfield.
23557 * TestWebKitAPI/Tests/WTF/TextBreakIterator.cpp:
23558 (TestWebKitAPI::TEST):
23560 2018-01-25 Per Arne Vollan <pvollan@apple.com>
23562 Unreviewed, rolling out r224920.
23564 Some Win EWS bots are not coming back up after starting reboot.
23566 * EWSTools/start-queue-win.sh:
23568 2018-01-26 Carlos Garcia Campos <cgarcia@igalia.com>
23570 WebDriver: simplify the tests json report
23571 https://bugs.webkit.org/show_bug.cgi?id=182171
23573 Reviewed by Carlos Alberto Lopez Perez.
23575 We are duplicating the test name in every subtest name. WPT already changed the format to remove the test name
23576 form the subtest name. We should do the same for simplicity and compatibility with WPT.
23578 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
23579 (WebDriverTestRunner.dump_results_to_json_file):
23581 2018-01-25 Alex Christensen <achristensen@webkit.org>
23583 REGRESSION (r221899): Web Content process hangs when webpage tries to make a new window if the WKWebView doesn’t have a UI delegate
23584 https://bugs.webkit.org/show_bug.cgi?id=182152
23586 Reviewed by Joseph Pecoraro.
23588 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
23589 (-[NoUIDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
23592 2018-01-25 Youenn Fablet <youenn@apple.com>
23594 WebPluginInfoProvider should handle null host queries
23595 https://bugs.webkit.org/show_bug.cgi?id=182112
23597 Reviewed by Chris Dumez.
23599 * TestWebKitAPI/Tests/WebKitCocoa/PluginLoadClientPolicies.mm:
23602 2018-01-25 Basuke Suzuki <Basuke.Suzuki@sony.com>
23604 [webkitpy] Stop modifying path information only when running on Cygwin
23605 https://bugs.webkit.org/show_bug.cgi?id=182136
23607 On LayoutTestApacheHttpd, some path configuration is modified when platform
23608 is Windows. This modification is only required for AppleWin running on Cygwin.
23609 WinCairo uses native Windows environment, so the condition should be changed.
23611 Reviewed by Per Arne Vollan.
23613 * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
23614 (LayoutTestApacheHttpd.__init__):
23615 (LayoutTestApacheHttpd._get_apache_config_file_path):
23617 2018-01-25 Eric Carlson <eric.carlson@apple.com>
23619 REGRESSION(r227457): Release assert in updateLayout while destructing a media element
23620 https://bugs.webkit.org/show_bug.cgi?id=182038
23621 <rdar://problem/36812083>
23623 Reviewed by Jer Noble.
23625 * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
23626 (TestWebKitAPI::TEST): Show/hide page so controls are always updated.
23628 2018-01-24 Daniel Bates <dabates@apple.com>
23630 webkit-patch upload emits irrelevant simulator warnings
23631 https://bugs.webkit.org/show_bug.cgi?id=181702
23632 <rdar://problem/36556359>
23634 Reviewed by Aakash Jain.
23636 Remove warning when a person explicitly passes --child-processes with a value greater than
23637 the default number of simulator instances webkitpy would have used had --child-processes
23638 been omitted. Moreover, the placement of the warning logic to support printing such a message
23639 (in the IOSSimulatorPort constructor) caused side effects that may print other warning messages.
23641 By default, webkitpy will parallelize running tests using the maximum number of simulator
23642 instances that can be supported based on available system resources at the time run-webkit-tests
23643 is invoked. It seems reasonable to assume that a person that explicitly overrides this default
23644 by specifying --child-processes knows what they are doing. The effects of picking a large
23645 value be obvious, the system may become sluggish.
23647 As a side benefit of this change we no longer will emit simulator warnings whenever the iOS
23648 simulator port is instantiated by non-layout test related code (e.g. check-webkit-style).
23650 * Scripts/webkitpy/port/ios_simulator.py:
23651 (IOSSimulatorPort.__init__):
23653 2018-01-25 Sergio Villar Senin <svillar@igalia.com>
23655 [WebVR][GTK][WPE] Remove the WebVR public API added in r227518
23656 https://bugs.webkit.org/show_bug.cgi?id=182102
23658 Reviewed by Carlos Garcia Campos.
23660 * MiniBrowser/gtk/main.c:
23661 (main): Removed the call to set_enable_webvr().
23663 2018-01-25 Carlos Garcia Campos <cgarcia@igalia.com>
23665 WebDriver: add support for slow tests
23666 https://bugs.webkit.org/show_bug.cgi?id=182095
23668 Reviewed by Carlos Alberto Lopez Perez.
23670 Add timeout mark to slow tests.
23672 * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
23673 (TestExpectationsMarker.__init__): Save the timeout.
23674 (TestExpectationsMarker.pytest_collection_modifyitems): If test is slow use timeout * 5.
23675 (run): Pass timeout to TestExpectationsMarker constructor.
23677 2018-01-24 Alex Christensen <achristensen@webkit.org>
23679 Gracefully recover from NetworkProcess crashes in private browsing
23680 https://bugs.webkit.org/show_bug.cgi?id=182073
23681 <rdar://problem/36572023>
23683 Reviewed by Geoff Garen.
23685 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23686 * TestWebKitAPI/Tests/WebKitCocoa/NetworkProcessCrashNonPersistentDataStore.mm: Added.
23687 (-[CrashDelegate webView:didFinishNavigation:]):
23688 (-[CrashDelegate webView:didFailProvisionalNavigation:withError:]):
23689 (-[CrashDelegate webView:didFailNavigation:withError:]):
23692 2018-01-24 Ali Juma <ajuma@chromium.org>
23694 REGRESSION (r227430): ASSERTION FAILED: !self.zoomToScaleCompletionHandler in TestRunnerWKWebView::zoomToScale
23695 https://bugs.webkit.org/show_bug.cgi?id=182052
23697 Reviewed by Simon Fraser.
23699 Don't set zoomToScaleCompletionHandler in zoomToScale:animated when calling the completion handler
23702 Test: fast/visual-viewport/viewport-dimensions.html
23704 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
23705 (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]):
23707 2018-01-24 Alex Christensen <achristensen@webkit.org>
23709 Remove pre-Sierra-OS-specific code in Tools
23710 https://bugs.webkit.org/show_bug.cgi?id=182034
23712 Reviewed by Tim Horton.
23714 * DumpRenderTree/mac/DumpRenderTree.mm:
23715 (setDefaultsToConsistentValuesForTesting):
23716 * MiniBrowser/mac/BrowserWindowController.m:
23717 (-[BrowserWindowController windowDidLoad]):
23718 (-[BrowserWindowController share:]):
23719 * MiniBrowser/mac/MiniBrowser_Prefix.pch:
23720 * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
23721 (-[EventStreamPlayer playbackTimerFired:]):
23722 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23723 * TestWebKitAPI/Tests/WebCore/FontCache.cpp: Removed.
23724 * TestWebKitAPI/Tests/WebKitCocoa/RunOpenPanel.mm:
23725 * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
23726 (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
23727 * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
23728 (WTR::InjectedBundle::platformInitialize):
23729 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
23730 (WTR::initializeWebViewConfiguration):
23732 2018-01-24 Alexey Proskuryakov <ap@apple.com>
23734 REGRESSION (r226485): Many new wasm leaks detected by the leaks bot
23735 https://bugs.webkit.org/show_bug.cgi?id=181400
23736 <rdar://problem/36358768>
23738 Reviewed by Joseph Pecoraro.
23740 * BuildSlaveSupport/build.webkit.org-config/config.json: Remove incorrect option.
23742 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: (_set_up_derived_options):
23743 Always disable poisoning when running with --leaks, as this should work locally,
23746 2018-01-24 Daniel Bates <dabates@apple.com>
23748 REGRESSION (r226138): Selecting a line that ends with zero-width joiner (ZWJ) may cause text transformation
23749 https://bugs.webkit.org/show_bug.cgi?id=181993
23750 <rdar://problem/36421080>
23752 Reviewed by David Hyatt.
23754 Remove unit test for overlap strategy FrontmostWithLongestEffectiveRange
23755 as we no longer support this strategy.
23757 * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp:
23759 2018-01-24 David Kilzer <ddkilzer@apple.com>
23761 check-webkit-style reports false-positive whitespace/braces warning about blocks with return types as arguments in Objective-C
23762 <https://webkit.org/b/182015>
23763 <rdar://problem/36449728>
23765 Reviewed by Tim Horton.
23767 * Scripts/webkitpy/style/checkers/cpp.py:
23768 (regex_for_lambdas_and_blocks): Update regex to include
23769 optional return type for block argument in Objective-C.
23770 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
23771 (WebKitStyleTest.test_braces): Add test.
23773 2018-01-24 Ms2ger <Ms2ger@igalia.com>
23775 WPE-focused test gardening.
23776 https://bugs.webkit.org/show_bug.cgi?id=182051
23778 Unreviewed test gardening.
23780 * TestWebKitAPI/glib/TestExpectations.json: TestWebKitFindController failure was fixed in r227418.
23782 2018-01-23 Mark Lam <mark.lam@apple.com>
23784 Update Poisoned pointers to take a Poison class instead of a uintptr_t&.
23785 https://bugs.webkit.org/show_bug.cgi?id=182017
23786 <rdar://problem/36795513>
23788 Reviewed by Filip Pizlo and JF Bastien.
23790 * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
23791 (TestWebKitAPI::TEST):
23792 * TestWebKitAPI/Tests/WTF/PoisonedRef.cpp:
23793 (TestWebKitAPI::TEST):
23794 (TestWebKitAPI::passWithRef):
23795 * TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp:
23796 (TestWebKitAPI::TEST):
23797 (TestWebKitAPI::f1):
23798 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
23799 (TestWebKitAPI::TEST):
23800 (TestWebKitAPI::poisonedPtrFoo):
23801 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
23802 (TestWebKitAPI::TEST):
23803 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
23804 (TestWebKitAPI::TEST):
23806 2018-01-18 Sergio Villar Senin <svillar@igalia.com>
23808 [WebVR] Add OpenVR to the tree and to the build
23809 https://bugs.webkit.org/show_bug.cgi?id=177298
23811 Reviewed by Žan Doberšek.
23813 * Scripts/webkitpy/style/checker.py: Added openvr to the list of third party libraries
23814 with reduced style checks.
23816 2018-01-24 Chris Nardi <cnardi@chromium.org>
23818 Add Chris Nardi to contributors list
23819 https://bugs.webkit.org/show_bug.cgi?id=182029
23821 Reviewed by Antti Koivisto.
23823 * Scripts/webkitpy/common/config/contributors.json:
23825 2018-01-22 Ryosuke Niwa <rniwa@webkit.org>
23827 Mac Sierra perf bots have been failing due to CG errors
23828 https://bugs.webkit.org/show_bug.cgi?id=181955
23830 Reviewed by Antti Koivisto.
23832 Ignore the CoreGraphics error messages on macOS Sierra.
23834 Also added tests for ignoring lines in stdout and stderr.
23836 * Scripts/webkitpy/performance_tests/perftest.py:
23837 (PerfTest.run_failed): Refactored for clarity.
23839 (PerfTest.filter_ignored_lines): Added.
23840 (PerfTest._lines_to_ignore): Renamed from _lines_to_ignore_in_parser_result since these regular expressions
23841 are now used to ignore lines in other kinds of tests than parser tests.
23842 (PerfTest._errors_to_ignore_in_sierra): Added.
23843 (PerfTest._filter_output): Added the code to ignore errors only on macOS Sierra.
23844 * Scripts/webkitpy/performance_tests/perftest_unittest.py:
23845 (test_parse_output_with_ignored_stdout): Added.
23846 (test_parse_output_with_ignored_stderr): Added.
23847 (test_parse_output_with_ignored_stderr.MockPortWithSierraName): Added.
23849 2018-01-23 Eric Carlson <eric.carlson@apple.com>
23851 Resign NowPlaying status when no media element is eligible
23852 https://bugs.webkit.org/show_bug.cgi?id=181914
23853 <rdar://problem/35294116>
23855 Reviewed by Jer Noble.
23857 * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
23858 (-[NowPlayingTestWebView hasActiveNowPlayingSession]):
23859 (TestWebKitAPI::TEST):
23860 * TestWebKitAPI/Tests/WebKitCocoa/large-video-test-now-playing.html:
23862 2018-01-23 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
23864 [WinCairo] Use 64-bit toolset
23865 https://bugs.webkit.org/show_bug.cgi?id=181979
23867 Reviewed by Alex Christensen.
23869 Use 64-bit toolset for 64-bit build in order to improve build time.
23871 * Scripts/webkitdirs.pm:
23872 (generateBuildSystemFromCMakeProject):
23874 2018-01-23 Simon Fraser <simon.fraser@apple.com>
23876 Element with position:fixed stops scrolling at the bottom of the page, but is painted in the right place on Chacos.com.
23877 https://bugs.webkit.org/show_bug.cgi?id=181741
23878 rdar://problem/36593581
23880 Reviewed by Tim Horton.
23882 If zoomToScale:animated: is called with the current zoom level, call the callback
23883 rather than doing nothing.
23885 * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
23886 (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]):
23888 2018-01-23 Basuke Suzuki <Basuke.Suzuki@sony.com>
23890 Add ignore_errors keyword argument to Executive.run_command() for replacing the common pattern of error_handler usage
23891 https://bugs.webkit.org/show_bug.cgi?id=180820
23893 Reviewed by David Kilzer.
23895 * Scripts/webkitpy/common/checkout/scm/git.py:
23896 (Git.in_working_directory):
23898 (Git.read_git_config):
23899 (Git.apply_reverse_diff):
23900 * Scripts/webkitpy/common/checkout/scm/scm.py:
23902 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
23903 * Scripts/webkitpy/common/checkout/scm/svn.py:
23904 (SVNRepository.has_authorization_for_realm):
23905 * Scripts/webkitpy/common/net/credentials_unittest.py:
23906 * Scripts/webkitpy/common/system/abstractexecutive.py:
23907 (AbstractExecutive.run_command):
23908 * Scripts/webkitpy/common/system/executive.py:
23909 (Executive.kill_process.is):
23910 (Executive.running_pids):
23911 (Executive.kill_all):
23912 (Executive.run_command):
23913 * Scripts/webkitpy/common/system/executive_mock.py:
23914 (MockExecutive.run_command):
23915 (MockExecutive2.run_command):
23916 * Scripts/webkitpy/common/system/executive_unittest.py:
23917 (ExecutiveTest.test_run_command_with_bad_command.run_bad_command):
23918 * Scripts/webkitpy/common/system/platforminfo.py:
23919 (PlatformInfo.xcode_sdk_version):
23920 * Scripts/webkitpy/layout_tests/servers/http_server.py:
23921 (Lighttpd._check_and_kill):
23922 * Scripts/webkitpy/port/base.py:
23923 (Port._symbols_string):
23924 * Scripts/webkitpy/port/gtk.py:
23925 (GtkPort.setup_environ_for_server):
23926 * Scripts/webkitpy/port/win.py:
23927 (WinPort._runtime_feature_list):
23928 (WinPort.read_registry_value):
23929 * Scripts/webkitpy/port/win_unittest.py:
23930 (WinPortTest.test_runtime_feature_list):
23931 * Scripts/webkitpy/tool/commands/analyzechangelog.py:
23932 * Scripts/webkitpy/tool/commands/analyzechangelog_unittest.py:
23934 2018-01-23 Commit Queue <commit-queue@webkit.org>
23936 Unreviewed, rolling out r227279 and r227373.
23937 https://bugs.webkit.org/show_bug.cgi?id=181988
23939 The LayoutTest crash fix introduced an API test failure.
23940 (Requested by ryanhaddad on #webkit).
23942 Reverted changesets:
23944 "Resign NowPlaying status when no media element is eligible"
23945 https://bugs.webkit.org/show_bug.cgi?id=181914
23946 https://trac.webkit.org/changeset/227279
23948 "Resign NowPlaying status when no media element is eligible"
23949 https://bugs.webkit.org/show_bug.cgi?id=181914
23950 https://trac.webkit.org/changeset/227373
23952 2018-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
23954 Unreviewed. Add test case for slow in test_expectations.py.
23956 I forgot to also check slow tests in test_expectations.py unit tests.
23958 * Scripts/webkitpy/common/test_expectations_unittest.py:
23963 2018-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
23965 Unreviewed. Mark test WTF_Lock.ManyContendedShortSections as slow.
23967 * TestWebKitAPI/glib/TestExpectations.json:
23969 2018-01-22 Ryosuke Niwa <rniwa@webkit.org>
23971 Blob conversion and sanitization doesn't work with Microsoft Word for Mac 2011
23972 https://bugs.webkit.org/show_bug.cgi?id=181616
23973 <rdar://problem/36484908>
23975 Reviewed by Wenson Hsieh.
23977 Added tests to make sure we sanitize plain HTML, not just web archives,
23978 when and only when custom pasteboard data is enabled.
23980 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23981 * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm: Added.
23982 (writeHTMLToPasteboard): Added.
23983 (createWebViewWithCustomPasteboardDataSetting): Added.
23985 2018-01-22 Alexey Proskuryakov <ap@apple.com>
23987 REGRESSION (r226485): Many new wasm leaks detected by the leaks bot
23988 https://bugs.webkit.org/show_bug.cgi?id=181400
23989 rdar://problem/36358768
23991 Reviewed by JF Bastien.
23993 * BuildSlaveSupport/build.webkit.org-config/config.json: Disable poisoning on the leaks bot.
23995 2018-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
23997 [GTK] Test /webkit/WebKitWebsiteData/resource-load-statistics is failing since r227223
23998 https://bugs.webkit.org/show_bug.cgi?id=181929
24000 Reviewed by Michael Catanzaro.
24002 The test is checking that the resource load stats file is deleted after clearing website data. Since r227223,
24003 the website data completion callback is not called immediately, and a new file is created when the operation
24004 finishes. We need to check that the file was removing after calling clear.
24006 * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
24007 (fileChangedCallback):
24008 (testWebsiteDataResourceLoadStatistics):
24010 2018-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
24012 Reviewed GTK gardening. Mark /webkit/WebKitWebView/mouse-target as fail too.
24014 * TestWebKitAPI/glib/TestExpectations.json:
24016 2018-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
24018 Unreviewed GTK+ gardening. Fix /webkit/WebKitConsoleMessage/network-error.
24020 Partially revert r226782, the fix was wrong for the GLib version we currently use.
24022 * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
24023 (testWebKitConsoleMessageNetworkError):
24025 2018-01-21 Carlos Garcia Campos <cgarcia@igalia.com>
24027 Unreviewed. Remove unused verbose mode from GLib API tests runner.
24029 * glib/api_test_runner.py:
24032 2018-01-21 Wenson Hsieh <wenson_hsieh@apple.com>
24034 Add a new feature flag for EXTRA_ZOOM_MODE and reintroduce AdditionalFeatureDefines.h
24035 https://bugs.webkit.org/show_bug.cgi?id=181918
24037 Reviewed by Tim Horton.
24039 Add EXTRA_ZOOM_MODE to FeatureDefines.xconfig (off by default).
24041 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
24043 2018-01-21 Eric Carlson <eric.carlson@apple.com>
24045 Resign NowPlaying status when no media element is eligible
24046 https://bugs.webkit.org/show_bug.cgi?id=181914
24047 <rdar://problem/35294116>
24049 Reviewed by Jer Noble.
24051 * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
24052 (-[NowPlayingTestWebView hasActiveNowPlayingSession]):
24053 (TestWebKitAPI::TEST):
24054 * TestWebKitAPI/Tests/WebKitCocoa/large-video-test-now-playing.html:
24056 2018-01-21 Aakash Jain <aakash_jain@apple.com>
24058 Fix broken unit-tests after r227192
24059 https://bugs.webkit.org/show_bug.cgi?id=181909
24061 Reviewed by Carlos Garcia Campos.
24063 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
24065 2018-01-20 Chris Dumez <cdumez@apple.com>
24067 API test URLSchemeHandler.Leaks1 is timing out on iOS simulator debug
24068 https://bugs.webkit.org/show_bug.cgi?id=174984
24069 <rdar://problem/33665676>
24071 Reviewed by Alexey Proskuryakov.
24073 Disable URLSchemeHandler.Leaks1 API test on iOS as it sometimes times out.
24075 * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-leaks.mm:
24078 2018-01-20 Brian Burg <bburg@apple.com>
24080 WebDriver: fix some nits that prevent running W3C tests on Mac
24081 https://bugs.webkit.org/show_bug.cgi?id=181864
24083 Reviewed by Carlos Garcia Campos.
24085 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
24086 (WebDriverW3CWebServer.__init__): _wsout needs to always be defined,
24087 as we assume that the property exists later.
24089 (WebDriverW3CWebServer.stop): If the temporary file doesn't
24090 exist for some reason, the remove call will raise and exception.
24091 Gracefully handle the case where the file isn't created due to
24092 a problem/exception that happened elsewhere.
24094 2018-01-19 Ling Ho <lingcherd_ho@apple.com>
24096 Move Bingdings EWS and Webkitpy EWS queues to High Sierra on buildbot dashboard.
24097 https://bugs.webkit.org/show_bug.cgi?id=181881
24099 Reviewed by Alexey Proskuryakov.
24101 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
24102 (BubbleQueueServer):
24103 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
24104 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
24105 (table.queue-grid tr.platform.mac-os-x-elcapitan img.logo): Deleted.
24107 2018-01-19 Youenn Fablet <youenn@apple.com>
24109 Do not go to the storage process when registering a service worker client if there is no service worker registered
24110 https://bugs.webkit.org/show_bug.cgi?id=181740
24111 <rdar://problem/36650400>
24113 Reviewed by Chris Dumez.
24115 Add support for internals inside API tests.
24117 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
24118 * TestWebKitAPI/Tests/InjectInternals_Bundle.cpp: Added.
24119 (TestWebKitAPI::InternalsInjectedBundleTest::InternalsInjectedBundleTest):
24120 (TestWebKitAPI::InternalsInjectedBundleTest::initialize):
24121 (TestWebKitAPI::InternalsInjectedBundleTest::didCreatePage):
24122 (TestWebKitAPI::InternalsInjectedBundleTest::didClearWindowForFrame):
24123 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
24124 (setConfigurationInjectedBundlePath):
24125 (-[RegularPageMessageHandler userContentController:didReceiveScriptMessage:]):
24127 2018-01-19 John Wilander <wilander@apple.com>
24129 Resource Load Statistics: Implement callback support for removal of WebsiteDataType::ResourceLoadStatistics
24130 https://bugs.webkit.org/show_bug.cgi?id=181822
24131 https://bugs.webkit.org/show_bug.cgi?id=175263
24132 https://bugs.webkit.org/show_bug.cgi?id=178536
24133 https://bugs.webkit.org/show_bug.cgi?id=181223
24134 https://bugs.webkit.org/show_bug.cgi?id=181482
24135 <rdar://problem/33491222>
24136 <rdar://problem/33805293>
24137 <rdar://problem/36332683>
24138 <rdar://problem/36549026>
24140 Reviewed by Alex Christensen.
24142 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
24143 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
24144 (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
24145 (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
24146 * WebKitTestRunner/InjectedBundle/TestRunner.h:
24147 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
24148 (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
24149 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
24151 2018-01-19 Jonathan Bedard <jbedard@apple.com>
24153 run-webkit-tests fails when there is a curly brace in Xcode build output
24154 https://bugs.webkit.org/show_bug.cgi?id=181254
24155 <rdar://problem/36453374>
24157 Reviewed by Daniel Bates.
24159 * Scripts/webkitpy/port/base.py:
24160 (Port._run_script): Encode script output before logging it.
24162 2018-01-19 Chris Dumez <cdumez@apple.com>
24164 Service worker registrations restored from disk may not be reused when the JS calls register() again
24165 https://bugs.webkit.org/show_bug.cgi?id=181810
24166 <rdar://problem/36591711>
24168 Reviewed by Youenn Fablet.
24170 Add API test coverage.
24172 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
24173 (-[SWMessageHandlerForRestoreFromDiskTest initWithExpectedMessage:]):
24174 (-[SWMessageHandlerForRestoreFromDiskTest userContentController:didReceiveScriptMessage:]):
24176 2018-01-19 Ryan Haddad <ryanhaddad@apple.com>
24178 Remove El Capitan queues from flakiness dashboard
24179 https://bugs.webkit.org/show_bug.cgi?id=181860
24181 Reviewed by Aakash Jain.
24183 * TestResultServer/static-dashboards/builders.jsonp:
24185 2018-01-19 Keith Miller <keith_miller@apple.com>
24187 HaveInternalSDK includes should be "#include?"
24188 https://bugs.webkit.org/show_bug.cgi?id=179670
24190 Reviewed by Dan Bernstein.
24192 * MiniBrowser/Configurations/Base.xcconfig:
24193 * MobileMiniBrowser/Configurations/Base.xcconfig:
24194 * TestWebKitAPI/Configurations/Base.xcconfig:
24195 * WebKitTestRunner/Configurations/Base.xcconfig:
24197 2018-01-19 Carlos Garcia Campos <cgarcia@igalia.com>
24199 WebDriver: driver environment not passed to pytest when running w3c tests
24200 https://bugs.webkit.org/show_bug.cgi?id=181852
24202 Reviewed by Carlos Alberto Lopez Perez.
24204 That's why color codes are not used in the bots log for selenium tests but they appear in w3c tests.
24206 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
24207 (WebDriverW3CExecutor.run):
24209 2018-01-19 Carlos Garcia Campos <cgarcia@igalia.com>
24211 [GTK] WebDriver: wayland display no used in wayland bot
24212 https://bugs.webkit.org/show_bug.cgi?id=181851
24214 Reviewed by Carlos Alberto Lopez Perez.
24216 We need to handle the additionalArguments property in the WebDriverTests step.
24218 * BuildSlaveSupport/build.webkit.org-config/steps.py:
24219 (RunWebDriverTests.start):
24221 2018-01-19 Carlos Alberto Lopez Perez <clopez@igalia.com>
24223 [GTK] TERM environment variable is not passed to the test driver.
24224 https://bugs.webkit.org/show_bug.cgi?id=181847
24226 Rubber-stamped by by Carlos Garcia Campos.
24228 * Scripts/webkitpy/port/base.py:
24229 (Port.to.setup_environ_for_server):
24231 2018-01-19 Carlos Garcia Campos <cgarcia@igalia.com>
24233 WebDriver: run-webdriver-tests is crashing in the bots when creating results json file
24234 https://bugs.webkit.org/show_bug.cgi?id=181844
24236 Reviewed by Carlos Alberto Lopez Perez.
24238 We always try to create the directory where to store the json file, but when the filename is given directly,
24239 like in the bots, the current dir is used.
24241 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
24242 (WebDriverTestRunner.dump_results_to_json_file): Do not try to create the directory if dirname() returns an
24245 2018-01-19 Carlos Garcia Campos <cgarcia@igalia.com>
24247 [GTK] WebDriver tests are running outside the jhbuild env
24248 https://bugs.webkit.org/show_bug.cgi?id=181842
24250 Reviewed by Žan Doberšek.
24252 We need to enter jhbuild env in run-webdriver-tests.
24254 * Scripts/run-webdriver-tests:
24256 2018-01-18 Carlos Garcia Campos <cgarcia@igalia.com>
24258 [GTK] Run WebDriver tests in the bots
24259 https://bugs.webkit.org/show_bug.cgi?id=181787
24261 Reviewed by Michael Catanzaro.
24263 Add a step to run WebDriver tests in the GTK test bots. The new step is not GTK specific, but only added to the
24264 factory for the GTK port for now.
24266 * BuildSlaveSupport/build.webkit.org-config/factories.py:
24267 (TestFactory.__init__):
24268 * BuildSlaveSupport/build.webkit.org-config/steps.py:
24269 (RunWebDriverTests):
24270 (RunWebDriverTests.start):
24271 (RunWebDriverTests.commandComplete):
24272 (RunWebDriverTests.evaluateCommand):
24273 (RunWebDriverTests.getText):
24274 (RunWebDriverTests.getText2):
24276 2018-01-18 Basuke Suzuki <Basuke.Suzuki@sony.com>
24278 [WinCairo] Pass correct url for http test to test driver.
24279 https://bugs.webkit.org/show_bug.cgi?id=181814
24281 Reviewed by Alex Christensen.
24283 * Scripts/webkitpy/port/driver.py:
24285 (Driver.http_test_path_to_uri):
24286 (Driver.is_secure_path):
24287 (Driver.http_base_url):
24288 (Driver.uri_to_test):
24290 2018-01-18 Ryan Haddad <ryanhaddad@apple.com>
24292 Unreviewed, update the triggerable name for 'sierra-release-perf-tests'
24294 * BuildSlaveSupport/build.webkit.org-config/config.json:
24296 2018-01-18 Dan Bernstein <mitz@apple.com>
24298 [Xcode] Streamline and future-proof target-macOS-version-dependent build setting definitions
24299 https://bugs.webkit.org/show_bug.cgi?id=181803
24301 Reviewed by Tim Horton.
24303 * DumpRenderTree/mac/Configurations/Base.xcconfig: Updated.
24304 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: Ditto.
24305 * ImageDiff/cg/Configurations/Base.xcconfig: Ditto.
24306 * ImageDiff/cg/Configurations/DebugRelease.xcconfig: Ditto.
24307 * MiniBrowser/Configurations/Base.xcconfig: Ditto.
24308 * MiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
24309 * TestWebKitAPI/Configurations/Base.xcconfig: Ditto.
24310 * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Ditto.
24311 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Adopted macOSTargetConditionals
24313 * TestWebKitAPI/Configurations/macOSTargetConditionals.xcconfig: Added. Defines helper build
24314 settings useful for defining settings that depend on the target macOS version.
24315 * WebKitTestRunner/Configurations/Base.xcconfig: Updated.
24316 * WebKitTestRunner/Configurations/DebugRelease.xcconfig: Updated.
24318 2018-01-18 Ling Ho <lingcherd_ho@apple.com>
24320 Remove Opensource El Capitan queues from buildbot
24321 https://bugs.webkit.org/show_bug.cgi?id=181712
24323 Reviewed by Aakash Jain.
24325 * BuildSlaveSupport/build.webkit.org-config/config.json:
24326 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
24328 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
24330 2018-01-18 Chris Dumez <cdumez@apple.com>
24332 Service Workers restored from persistent storage have 'redundant' state
24333 https://bugs.webkit.org/show_bug.cgi?id=181749
24334 <rdar://problem/36556486>
24336 Reviewed by Youenn Fablet.
24338 Add API test coverage.
24340 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
24341 (-[SWMessageHandlerForFetchTest userContentController:didReceiveScriptMessage:]):
24343 2018-01-18 Joanmarie Diggs <jdiggs@igalia.com>
24345 [GTK] AX: Two layout tests crash with error 'g_strstr_len: assertion 'haystack != NULL' failed' in Accessibility::UIElement::url
24346 https://bugs.webkit.org/show_bug.cgi?id=176796
24348 Reviewed by Chris Fleizach.
24350 Add sanity check that we have a URL before calling g_strstr_len().
24352 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
24353 (WTR::AccessibilityUIElement::url):
24355 2018-01-18 Ryan Haddad <ryanhaddad@apple.com>
24357 Add triggers for Sierra test262 and perf queues
24358 https://bugs.webkit.org/show_bug.cgi?id=181799
24360 Reviewed by Aakash Jain.
24362 * BuildSlaveSupport/build.webkit.org-config/config.json:
24364 2018-01-18 Wenson Hsieh <wenson_hsieh@apple.com>
24366 [iOS] Specify -[NSURL _title] for the associated URL when copying an image element
24367 https://bugs.webkit.org/show_bug.cgi?id=181783
24368 <rdar://problem/35785445>
24370 Reviewed by Ryosuke Niwa.
24372 Augments an existing API test and adds a new test to make sure that the resulting NSItemProvider's NSURL when
24373 copying an image contains a relevant title.
24375 * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
24376 (TestWebKitAPI::TEST):
24377 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
24378 * TestWebKitAPI/ios/UIKitSPI.h:
24380 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24382 WebDriver: ignore the driver in selenium test names when getting expectations
24383 https://bugs.webkit.org/show_bug.cgi?id=181738
24385 Reviewed by Carlos Alberto Lopez Perez.
24387 In selenium tests, the driver is added as a parameter to every test which results in tests names like
24388 foo[DriverName] or foo[DriverName-param2] in case of tests using more parameters. We don't want to include the
24389 driver name in the test expectations file, so we need to remove it when querying the expectations.
24391 * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
24392 (TestExpectationsMarker.__init__): Save the param to ignore.
24393 (TestExpectationsMarker._item_name): Return the name of the test without the para to ignore.
24394 (TestExpectationsMarker.pytest_collection_modifyitems): Use _item_name().
24395 (run): Pass param to ignore to TestExpectationsMarker().
24396 * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
24397 (WebDriverSeleniumExecutor.__init__): Save the driver name.
24398 (WebDriverSeleniumExecutor.run): Pass the driver name as param to ignore.
24400 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24402 [GTK][WPE] Show unit tests unexpectedly passing in the bots
24403 https://bugs.webkit.org/show_bug.cgi?id=181726
24405 Reviewed by Michael Catanzaro.
24407 Now that we have the info, let's show it also in the bots.
24409 * BuildSlaveSupport/build.webkit.org-config/steps.py:
24410 (RunGLibAPITests.commandComplete):
24412 2018-01-17 Ling Ho <lingcherd_ho@apple.com>
24414 Fix broken unittest after r227048
24415 https://bugs.webkit.org/show_bug.cgi?id=181760
24417 Reviewed by Aakash Jain.
24420 2018-01-17 Michael Catanzaro <mcatanzaro@igalia.com>
24422 WEBKIT_FRAMEWORK should not modify file-global include directories
24423 https://bugs.webkit.org/show_bug.cgi?id=181656
24425 Reviewed by Konstantin Tokarev.
24427 * TestWebKitAPI/PlatformWPE.cmake:
24428 * TestWebKitAPI/glib/CMakeLists.txt:
24430 2018-01-17 Alicia Boya GarcÃa <aboya@igalia.com>
24432 Unreviewed, mark Alicia as committer in contributors.json
24434 * Scripts/webkitpy/common/config/contributors.json:
24436 2018-01-17 Youenn Fablet <youenn@apple.com>
24438 Put fetch Request.keepalive behind a runtime flag
24439 https://bugs.webkit.org/show_bug.cgi?id=181592
24441 Reviewed by Chris Dumez.
24443 * DumpRenderTree/mac/DumpRenderTree.mm:
24444 (enableExperimentalFeatures):
24445 * DumpRenderTree/win/DumpRenderTree.cpp:
24446 (enableExperimentalFeatures):
24447 * WebKitTestRunner/TestController.cpp:
24448 (WTR::TestController::resetPreferencesToConsistentValues):
24450 2018-01-17 Wenson Hsieh <wenson_hsieh@apple.com>
24452 Add injected bundle SPI to replace subresource URLs when dropping or pasting rich content
24453 https://bugs.webkit.org/show_bug.cgi?id=181637
24454 <rdar://problem/36508471>
24456 Reviewed by Tim Horton.
24458 Add 2 new API tests to exercise injected bundle SPI for supplying replacement URLs when pasting an image, and an
24459 attributed string containing multiple NSTextAttachments. See WebKit and WebCore ChangeLogs for more detail.
24461 * TestWebKitAPI/Tests/WebKitCocoa/BundleEditingDelegatePlugIn.mm:
24462 (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
24463 (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:replacementURLForResource:mimeType:]):
24465 Implement the new Objective-C bundle SPI to look up the incoming MIME type in the dictionary supplied via the
24466 "MIMETypeToReplacementURLMap" bundle initialization parameter, and return it.
24468 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
24469 (webViewForTestingAttachments):
24470 (-[TestWKWebView tagsInBody]):
24471 (-[TestWKWebView expectElementTagsInOrder:]):
24472 (-[TestWKWebView expectElementTag:toComeBefore:]):
24474 Add a test helper to check that the given list of element tags appears in the document body. Also, reimplement
24475 the existing -expectElementTag:toComeBefore: as a special case of -expectElementTagsInOrder:.
24477 (TestWebKitAPI::TEST):
24478 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
24479 (WTR::InjectedBundlePage::InjectedBundlePage):
24481 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24483 WebDriver: add support for test expectations
24484 https://bugs.webkit.org/show_bug.cgi?id=180420
24486 Reviewed by Carlos Alberto Lopez Perez.
24488 Add support for parsing test expectations from a JSON file and mark tests on collection accordingly.
24490 * Scripts/run-webdriver-tests: Get the retval from process_results().
24491 * Scripts/webkitpy/thirdparty/__init__.py:
24492 (AutoinstallImportHook._install_pytest): Install also py because pytest needs it.
24493 * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
24494 (TestExpectationsMarker): Plugin to mark tests based on given expectations.
24495 (TestExpectationsMarker.__init__): Initialize expectations.
24496 (TestExpectationsMarker.pytest_collection_modifyitems): Mark tests if needed,
24497 (run): Create and use TestExpectationsMarker plugin.
24498 * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
24499 (WebDriverSeleniumExecutor.run): Pass expectations to pytest_runner.
24500 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
24501 (WebDriverTestRunner.__init__): Create a TestExpectations and pass it to the runners.
24502 (WebDriverTestRunner.run): Do not count results here.
24503 (WebDriverTestRunner.process_results): Rename print_results() as process_results() since it now returns the
24504 amount of failures. Printing the test summary while processing results will be made optional in a follow up
24506 (WebDriverTestRunner.process_results.report): Return the amount of failures.
24507 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
24508 (WebDriverTestRunnerSelenium.__init__): Initialize _expectations.
24509 (WebDriverTestRunnerSelenium.collect_tests): Do not include skipped tests.
24510 (WebDriverTestRunnerSelenium.run): Stop returning the tests count.
24511 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
24512 (WebDriverTestRunnerW3C.__init__): Initialize _expectations.
24513 (WebDriverTestRunnerW3C.collect_tests): Do not include skipped tests.
24514 (WebDriverTestRunnerW3C._scan_directory): Ditto.
24515 (WebDriverTestRunnerW3C.run): Stop returning the tests count.
24516 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
24517 (WebDriverW3CExecutor.run): Pass expectations to pytest_runner.
24519 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24521 Unreviewed WPE gardening. Mark some known unit test failures.
24523 * TestWebKitAPI/glib/TestExpectations.json:
24525 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24527 [GTK][WPE] Use the same subtest names in GTK and WPE unit tests
24528 https://bugs.webkit.org/show_bug.cgi?id=181724
24530 Reviewed by Philippe Normand.
24532 We currently use /webkit2/foo/bar for GTK and /wpe/foo/bar for WPE. Many of the tests are common, so there's no
24533 reason to use different names. This way we can refer to the same test names for both and we can share the
24534 expectations in the TestExpectations.json file.
24536 * TestWebKitAPI/glib/TestExpectations.json:
24537 * TestWebKitAPI/glib/WebKitGLib/TestMain.h: Use /webkit/foo/bar in GTK and WPE.
24539 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24541 Unreviewed. Increase the slow timeout of GTK and WPE unit tests.
24543 We are using now a lower default timeout, so multiplying by 5 is no longer enough for some of the WTF
24544 tests. Multiply by 10 so that we get the same slow timeout as before, 50.
24546 * glib/api_test_runner.py:
24547 (TestRunner._run_test_glib):
24548 (TestRunner._run_google_test):
24550 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24552 [GTK] Duplicated symbols in libjavascriptcoregtk and libwebkit2gtk can cause crashes in production builds
24553 https://bugs.webkit.org/show_bug.cgi?id=179914
24555 Reviewed by Žan Doberšek.
24557 Add two scripts to be run by dist-check step when releasing. One is to detect symbols duplicated in
24558 libjavascriptcoregtk and libwebkit2gtk that should be included to the version script. The other one is to ensure
24559 all symbols listed in the script are present in the library.
24561 * Scripts/check-for-global-bss-symbols-in-webkigtk-libs: Added.
24563 * Scripts/check-for-invalid-symbols-in-version-script: Added.
24565 * Scripts/make-dist:
24568 (Distcheck.check_symbols):
24571 2018-01-17 Carlos Garcia Campos <cgarcia@igalia.com>
24573 [GTK][WPE] Propagate the parameters when restarting glib api tests after a crash
24574 https://bugs.webkit.org/show_bug.cgi?id=181722
24576 Reviewed by Žan Doberšek.
24578 I forgot to pass the parameters to run() when restarting.
24580 * glib/glib_test_runner.py:
24581 (GLibTestRunner.run):
24583 2018-01-16 Fujii Hironori <Hironori.Fujii@sony.com>
24585 [CMake] Remove WebCoreDerivedSources library target
24586 https://bugs.webkit.org/show_bug.cgi?id=181664
24588 Reviewed by Carlos Garcia Campos.
24590 * TestWebKitAPI/PlatformWPE.cmake: Do not link WebCoreDerivedSources.
24591 * TestWebKitAPI/PlatformWin.cmake: Ditto.
24593 2018-01-16 Ling Ho <lingcherd_ho@apple.com>
24595 Move Debug Test262, Release Test262 and Performance queues to Sierra
24596 https://bugs.webkit.org/show_bug.cgi?id=181692
24600 2018-01-16 Zach Li <zachli@apple.com>
24602 Add pop-up policy support in website policies.
24603 https://bugs.webkit.org/show_bug.cgi?id=181544.
24604 rdar://problem/30521400.
24606 Reviewed by Alex Christensen.
24608 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
24609 Added pop-up-check.html.
24611 * TestWebKitAPI/Tests/WebKit/pop-up-check.html: Added.
24613 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
24614 (-[PopUpPoliciesDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
24615 (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
24616 (-[PopUpPoliciesDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
24619 2018-01-16 Wenson Hsieh <wenson_hsieh@apple.com>
24621 [Attachment Support] Provide the `src` of an attachment to the UI delegate when an attachment is inserted
24622 https://bugs.webkit.org/show_bug.cgi?id=181638
24623 <rdar://problem/36508702>
24625 Reviewed by Dan Bernstein.
24627 Tweak an existing API test to check that the `src` of an attachment element inserted via script matches the
24628 `source` provided to the UI delegate via -[WKUIDelegate _webView:didInsertAttachment:withSource:].
24630 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
24631 (-[AttachmentUpdateObserver init]):
24632 (-[AttachmentUpdateObserver sourceForIdentifier:]):
24633 (-[AttachmentUpdateObserver _webView:didInsertAttachment:withSource:]):
24634 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectSourceForIdentifier):
24635 (TestWebKitAPI::TEST):
24636 (-[AttachmentUpdateObserver _webView:didInsertAttachment:]): Deleted.
24638 2018-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
24640 Unreviewed. Fix GTK unit tests execution in the bots after r226967.
24642 I forgot to pass the environment to the GLibTestRunner and Xvfb was not used in the bots.
24644 * glib/api_test_runner.py:
24645 (TestRunner._run_test_glib): Pass env to GLibTestRunner.
24646 * glib/glib_test_runner.py:
24647 (GLibTestRunner.run): Use given env.
24649 2018-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
24651 [GTK][WPE] Stop passing --verbose to run-api-tests from the bots
24652 https://bugs.webkit.org/show_bug.cgi?id=181676
24654 Reviewed by Carlos Alberto Lopez Perez.
24656 The option was removed in r226967.
24658 * BuildSlaveSupport/build.webkit.org-config/steps.py:
24662 2018-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
24664 Unreviewed. Temporarily bring back --verbose option of api_test_runner.py.
24666 The bots are still passing that option and the step is failing because it was removed in r226967.
24668 * glib/api_test_runner.py:
24671 2018-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
24673 [GTK][WPE] Improve the way glib tests are run
24674 https://bugs.webkit.org/show_bug.cgi?id=181674
24676 Reviewed by Žan Doberšek.
24678 Stop using gtester external program and use our own tester from python directly. This way we no longer need to
24679 parse the tests output to get the results which is causing problems in WPE bot. We can now differentiate between
24680 tests failing due to an expected assert in the test and unexpected crashes.
24681 This also fixes a bug in previous code where we failed to properly detect tests timing out, because gtester was
24682 not showing the subtest name in stdout in case of timeouts.
24683 I've lowered the default timeout from 10 to 5, since we are now properly handling the timeout for every test
24684 case. I've also removed the verbose option, since it was only used by gtester and we now always show the result
24685 of every test case.
24687 * glib/api_test_runner.py:
24688 (TestRunner._run_test_glib): Use GLibTestRunner.
24689 (TestRunner._run_google_test): Wrote tests timing out to stdout too.
24691 * glib/glib_test_runner.py: Added.
24694 (Message.__init__):
24696 (Message.create.read_unsigned):
24697 (Message.create.read_double):
24698 (Message.create.read_string):
24700 (GLibTestRunner.__init__):
24701 (GLibTestRunner._process_data):
24702 (GLibTestRunner._process_message):
24703 (GLibTestRunner._read_from_pipe):
24704 (GLibTestRunner._read_from_stderr):
24705 (GLibTestRunner._start_timeout):
24706 (GLibTestRunner._start_timeout._alarm_handler):
24707 (GLibTestRunner._stop_timeout):
24708 (GLibTestRunner._subtest_start):
24709 (GLibTestRunner._subtest_message):
24710 (GLibTestRunner._subtest_stderr):
24711 (GLibTestRunner._subtest_end):
24712 (GLibTestRunner.run):
24714 2018-01-15 Michael Catanzaro <mcatanzaro@igalia.com>
24716 Unreviewed, add Thibault to contributors.json
24718 It's a bit weird to add someone here before their first contribution, but this affects
24719 Bugzilla autocomplete, and that is serious business.
24721 * Scripts/webkitpy/common/config/contributors.json:
24723 2018-01-15 JF Bastien <jfbastien@apple.com>
24725 Remove makePoisonedUnique
24726 https://bugs.webkit.org/show_bug.cgi?id=181630
24727 <rdar://problem/36498623>
24729 Reviewed by Mark Lam.
24733 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
24734 (TestWebKitAPI::TEST):
24735 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
24736 (TestWebKitAPI::TEST):
24738 2018-01-15 Adrian Perez de Castro <aperez@igalia.com>
24740 [GTK][JHBuild] Tools/gtk/install-dependencies: Package libxfont does not exist anymore in Arch Linux
24741 https://bugs.webkit.org/show_bug.cgi?id=181476
24743 Reviewed by Michael Catanzaro.
24745 Update to xorg-server 1.19.6 which depends on libxfont2, and change
24746 the lists of packages to install libxfont2-devel (or equivalent).
24748 * gtk/install-dependencies:
24749 * gtk/jhbuild.modules:
24751 2018-01-15 Carlos Garcia Campos <cgarcia@igalia.com>
24753 [GTK][WPE] Add support for unit test expectations
24754 https://bugs.webkit.org/show_bug.cgi?id=181589
24756 Reviewed by Michael Catanzaro.
24758 We currently have a way to skip tests by annotating them in the api test runner script. The main problem of this
24759 approach is that we skip tests when they fail in the bots and we never notice if they stop failing, keeping the
24760 tests skipped forever. This is indeed the case of several WebKit2 C API tests. Annotating skipped tests in the
24761 script itself is not a good idea either.
24763 This patch adds a generic TestExpectations class for simple tests based on tests with subtests, like our unit
24764 tests, but also WebDriver tests. It parses a json file with the tests and subtests expectations and provides
24765 convenient methods to query them.
24767 * Scripts/run-gtk-tests:
24768 (GtkTestRunner): Remove all Skipped and Slow tests marked here.
24769 * Scripts/run-wpe-tests:
24770 (WPETestRunner): Ditto.
24771 * Scripts/webkitpy/common/test_expectations.py: Added.
24772 (TestExpectations):
24773 (TestExpectations.__init__):
24774 (TestExpectations._port_name_for_expected):
24775 (TestExpectations._expected_value):
24776 (TestExpectations.skipped_tests):
24777 (TestExpectations.skipped_subtests):
24778 (TestExpectations._expectation_value):
24779 (TestExpectations.is_slow):
24780 (TestExpectations.get_expectation):
24781 * Scripts/webkitpy/common/test_expectations_unittest.py: Added.
24782 (MockTestExpectations):
24783 (MockTestExpectations.__init__):
24784 (MockTestExpectations.is_skip):
24785 (ExpectationsTest):
24794 * TestWebKitAPI/glib/TestExpectations.json: Added.
24795 * glib/api_test_runner.py:
24796 (TestRunner): Remove SkippedTest implementation.
24797 (TestRunner.__init__): Create a TestExpectations.
24798 (TestRunner._test_cases_to_skip): Use TestExpectations to check skipped tests.
24799 (TestRunner._should_run_test_program): Ditto.
24800 (TestRunner._run_test_glib): Use TestExpectations to check if test suite is slow.
24801 (TestRunner._run_test_glib.parse_line.set_test_result): Register also tests passing.
24802 (TestRunner._run_google_test): Use TestExpectations to check if test cases is slow and register tests passing.
24803 (TestRunner.run_tests): Check if actual result is the expected one and register also unexpected passes.
24804 (TestRunner.run_tests.report): Helper to write report to stdout.
24806 2018-01-13 Mark Lam <mark.lam@apple.com>
24808 Replace all use of ConstExprPoisoned with Poisoned.
24809 https://bugs.webkit.org/show_bug.cgi?id=181542
24810 <rdar://problem/36442138>
24812 Reviewed by JF Bastien.
24814 1. Converted tests to using new uintptr_t& poison type.
24815 2. Added tests for Poisoned comparison operators.
24817 * TestWebKitAPI/CMakeLists.txt:
24818 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
24819 * TestWebKitAPI/Tests/WTF/ConstExprPoisoned.cpp: Removed.
24820 * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
24821 (TestWebKitAPI::TEST):
24822 (TestWebKitAPI::initializeTestPoison): Deleted.
24823 * TestWebKitAPI/Tests/WTF/PoisonedRef.cpp:
24824 (TestWebKitAPI::TEST):
24825 (TestWebKitAPI::passWithRef):
24826 * TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp:
24827 (TestWebKitAPI::TEST):
24828 (TestWebKitAPI::f1):
24829 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
24830 (TestWebKitAPI::TEST):
24831 (TestWebKitAPI::poisonedPtrFoo):
24832 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
24833 (TestWebKitAPI::TEST):
24834 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
24835 (TestWebKitAPI::TEST):
24837 2018-01-13 David Kilzer <ddkilzer@apple.com>
24839 check-webkit-style: false positive for [whitespace/braces] with os_log format string
24840 <https://webkit.org/b/181606>
24842 Reviewed by Darin Adler.
24844 * Scripts/webkitpy/style/checkers/cpp.py:
24845 (check_spacing): Modify regular expression to ignore
24846 os_log format strings like '%{public}'.
24847 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
24848 (CppStyleTest.test_spacing_before_braces): Add os_log
24849 format string test.
24851 2018-01-12 Wenson Hsieh <wenson_hsieh@apple.com>
24853 [macOS] API tests ChangeAttachmentDataUpdatesWithInPlaceDisplay and InPlaceVideoAttachmentInsertionWithinList are failing
24854 https://bugs.webkit.org/show_bug.cgi?id=181626
24856 Reviewed by Joseph Pecoraro.
24858 Make the web view for WKAttachmentTests slightly bigger to avoid size clamping behavior introduced in r226915.
24859 Additionally, write a new API test covering the change in r226915.
24861 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
24862 (webViewForTestingAttachments):
24863 (TestWebKitAPI::TEST):
24865 2018-01-12 Alex Christensen <achristensen@webkit.org>
24867 History state should be updated during client redirects with asynchronous policy decisions
24868 https://bugs.webkit.org/show_bug.cgi?id=181358
24869 <rdar://problem/35547689>
24871 Reviewed by Andy Estes.
24873 * TestWebKitAPI/Tests/WebKit/WKBackForwardList.mm:
24874 (-[AsyncPolicyDecisionDelegate webView:didFinishNavigation:]):
24875 (-[AsyncPolicyDecisionDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
24878 2018-01-12 Jonathan Bedard <jbedard@apple.com>
24880 webkitpy: Refactor simulator code (Part 4)
24881 https://bugs.webkit.org/show_bug.cgi?id=180555
24882 <rdar://problem/36131381>
24884 Reviewed by Aakash Jain.
24886 Move new_simulated_device.py to simulated_device.py.
24888 * Scripts/webkitpy/port/ios_simulator.py: Update import statement.
24889 * Scripts/webkitpy/xcode/new_simulated_device.py: Removed.
24890 * Scripts/webkitpy/xcode/new_simulated_device_unittest.py: Removed.
24891 * Scripts/webkitpy/xcode/simulated_device.py: Copied from Tools/Scripts/webkitpy/xcode/new_simulated_device.py.
24892 * Scripts/webkitpy/xcode/simulated_device_unittest.py: Copied from Tools/Scripts/webkitpy/xcode/new_simulated_device_unittest.py.
24894 2018-01-12 Alex Christensen <achristensen@webkit.org>
24896 REGRESSION (r226818): API test WebKitLegacy.LoadInvalidURLRequest is failing
24897 https://bugs.webkit.org/show_bug.cgi?id=181595
24899 This test was testing behavior of an invalid URL that WebCore parses but NSURL does not.
24900 It was using example.com<> but after r226479 < and > are considered invalid by WebCore.
24901 I change the < and > to $ to make this test pass and continue to test what it used to.
24903 * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.html:
24904 * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
24905 (-[LoadInvalidURLWebFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
24907 2018-01-11 Keith Miller <keith_miller@apple.com>
24909 Rename ENABLE_ASYNC_ITERATION to ENABLE_JS_ASYNC_ITERATION
24910 https://bugs.webkit.org/show_bug.cgi?id=181573
24912 Reviewed by Simon Fraser.
24914 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
24916 2018-01-11 Jiewen Tan <jiewen_tan@apple.com>
24918 [WebAuthN] Import a CBOR coder from Chromium
24919 https://bugs.webkit.org/show_bug.cgi?id=181522
24920 <rdar://problem/36055729>
24922 Reviewed by Brent Fulgham.
24924 This patch also imports all unit tests into our API tests to ensure all
24925 workarounds and modification against the original codebase doesn't change
24926 any original functionalities.
24928 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
24929 * TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp: Added.
24930 (TestWebKitAPI::TEST):
24931 * TestWebKitAPI/Tests/WebCore/CBORValueTest.cpp: Added.
24932 (TestWebKitAPI::TEST):
24933 * TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp: Added.
24934 (TestWebKitAPI::eq):
24935 Workarounds applied.
24936 (TestWebKitAPI::TEST):
24938 2018-01-11 Jonathan Bedard <jbedard@apple.com>
24940 webkitpy: Use partially disambiguated type in SimulatedDeviceManager._disambiguate_device_type
24941 https://bugs.webkit.org/show_bug.cgi?id=181538
24942 <rdar://problem/36440580>
24944 Reviewed by Aakash Jain.
24946 When disambiguating a device type, it is possible that the provided device type is sufficiently
24947 ambiguous that the comparisons against complete device types without a disambiguated hardware_family
24948 will result in a failure to disambiguate the type.
24950 * Scripts/webkitpy/xcode/new_simulated_device.py:
24951 (SimulatedDeviceManager._disambiguate_device_type):
24953 2018-01-11 Brent Fulgham <bfulgham@apple.com>
24955 REGRESSION(r219530): ResourceLoadStatisticsPersistentStorage should be read-only in ephemeral sessions
24956 https://bugs.webkit.org/show_bug.cgi?id=181136
24957 <rdar://problem/36116604>
24959 Reviewed by Chris Dumez.
24961 Add a new API test to confirm that ResourceLoadStatistics can be turned on safely for ephemeral
24964 * Scripts/run-gtk-tests:
24965 (GtkTestRunner): Unskip test now that it passes.
24966 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
24967 (TEST): Add new WebsiteDataStoreEphemeral test.
24969 2018-01-11 Ryan Haddad <ryanhaddad@apple.com>
24971 Unreviewed, rolling out r226816.
24973 This change broke LayoutTests on the bots.
24975 Reverted changeset:
24977 "run-webkit-tests fails when there is a curly brace in Xcode
24979 https://bugs.webkit.org/show_bug.cgi?id=181254
24980 https://trac.webkit.org/changeset/226816
24982 2018-01-11 Jonathan Bedard <jbedard@apple.com>
24984 webkitpy: Fix flakey webserver tests
24985 https://bugs.webkit.org/show_bug.cgi?id=181555
24986 <rdar://problem/36448273>
24988 Reviewed by Aakash Jain.
24990 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
24991 (LayoutTestRunnerTests.test_servers_started): Add and bind custom checks to
24992 determine if a specific server is running.
24994 2018-01-11 Jonathan Bedard <jbedard@apple.com>
24996 Commit queue failed to land a bug, 'NoneType' object has no attribute 'strip'
24997 https://bugs.webkit.org/show_bug.cgi?id=181561
24998 <rdar://problem/36452652>
25000 Reviewed by Aakash Jain.
25002 BeautifulSoup.find may return None, this case should be gracefully handled.
25004 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
25005 (BugzillaQueries._parse_result_count):
25006 (BugzillaQueries._fetch_bugs_from_advanced_query): Added logging.
25008 2018-01-11 Alexey Proskuryakov <ap@apple.com>
25010 run-webkit-tests fails when there is a curly brace in Xcode build output
25011 https://bugs.webkit.org/show_bug.cgi?id=181254
25013 Reviewed by Daniel Bates.
25015 * Scripts/webkitpy/layout_tests/views/metered_stream.py:
25016 (MeteredStream.write):
25018 2018-01-11 Jonathan Bedard <jbedard@apple.com>
25020 webkitpy: Reimplement simulator code (Part 3)
25021 https://bugs.webkit.org/show_bug.cgi?id=180555
25022 <rdar://problem/36131381>
25024 Reviewed by Aakash Jain.
25026 Remove old simulator code.
25028 * Scripts/webkitpy/xcode/__init__.py: Remove import statement.
25029 * Scripts/webkitpy/xcode/simulated_device.py: Removed.
25030 * Scripts/webkitpy/xcode/simulator.py: Removed.
25031 * Scripts/webkitpy/xcode/simulator_unittest.py: Removed.
25033 2018-01-11 Wenson Hsieh <wenson_hsieh@apple.com>
25035 [Attachment Support] Support moving attachment elements in editable areas using drag and drop
25036 https://bugs.webkit.org/show_bug.cgi?id=181337
25037 <rdar://problem/36324813>
25039 Reviewed by Tim Horton.
25041 Add 3 new API tests for attachment element dragging.
25043 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
25044 (-[TestWKWebView expectElementTag:toComeBefore:]):
25045 (-[NSItemProvider expectType:withData:]):
25046 (TestWebKitAPI::TEST):
25048 2018-01-11 Jonathan Bedard <jbedard@apple.com>
25050 REGRESSION(r225856): Incorrectly managing 'future' baseline_search_paths.
25051 https://bugs.webkit.org/show_bug.cgi?id=179621
25052 <rdar://problem/35589585>
25054 Unreviewed infrastructure fix.
25056 * Scripts/webkitpy/port/mac.py:
25057 (MacPort.default_baseline_search_path): Include 'future' in the version_fallback
25058 list if we are the VERSION_MAX, which usually corresponds with future.
25060 2018-01-11 Filip Pizlo <fpizlo@apple.com>
25062 CodeBlocks should be in IsoSubspaces
25063 https://bugs.webkit.org/show_bug.cgi?id=180884
25065 Reviewed by Saam Barati.
25067 Remove some less important benchmarks from the default run. Doing run-jsc-benchmarks
25068 shouldn't take a long time due to benchmarks we don't optimize for.
25070 * Scripts/run-jsc-benchmarks:
25072 2018-01-11 Ms2ger <Ms2ger@igalia.com>
25074 Test gardening for GTK.
25075 https://bugs.webkit.org/show_bug.cgi?id=181477
25077 Unreviewed test gardening.
25079 * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp: Correct the file name.
25080 * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp: Adjust the expected console message.
25082 2018-01-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
25084 Add the new JSCOnly bot to the scheduler.
25085 https://bugs.webkit.org/show_bug.cgi?id=181487
25087 Unreviewed follow-up patch after r226729
25089 On r226729 I missed to add the new JSCOnly bot the default scheduler.
25090 This is needed to make the bot automatically pick each commit for testing.
25092 * BuildSlaveSupport/build.webkit.org-config/config.json:
25094 2018-01-11 Wenson Hsieh <wenson_hsieh@apple.com>
25096 [Attachment Support] Support dragging attachment elements out as files on iOS
25097 https://bugs.webkit.org/show_bug.cgi?id=181199
25098 <rdar://problem/36299316>
25100 Reviewed by Tim Horton, Andy Estes and Joseph Pecoraro.
25102 Add support in the drag and drop simulator for testing blob-backed attachment element dragging, and also add new
25103 attachment API tests.
25105 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
25106 (-[NSItemProvider expectType:withData:]):
25107 (TestWebKitAPI::TEST):
25109 Add two new WKAttachmentTests to exercise dragging data- and file-backed blobs via attachment elements. These
25110 tests first insert attachments via drop or WKWebView SPI, and then drag these attachments out and use the
25111 -expectType:withData: helper to inspect the item providers created from the drag source.
25113 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25114 (TestWebKitAPI::TEST):
25115 * TestWebKitAPI/ios/DataInteractionSimulator.h:
25116 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
25117 (-[MockDragSession localContext]):
25118 (-[MockDragSession setLocalContext:]):
25119 (-[DataInteractionSimulator _resetSimulatedState]):
25120 (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
25121 (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
25122 (-[DataInteractionSimulator _advanceProgress]):
25123 (-[DataInteractionSimulator endDataTransfer]):
25125 Make some tweaks to the iOS drag and drop simulator. In particular, this patch (1) adds a new hook to tell
25126 WebKit that data transfers have been completed, (2) fixes incorrect drop proposal handling when returning
25127 UIDropOperationForbidden by replacing _shouldPerformOperation with a UIDropProposal, and (3) teach the
25128 MockDragSession to hold on to a localContext.
25130 2018-01-11 Ali Juma <ajuma@chromium.org>
25132 Unreviewed. Add Ali Juma as contributor
25134 * Scripts/webkitpy/common/config/contributors.json:
25136 2018-01-11 Carlos Garcia Campos <cgarcia@igalia.com>
25138 Unreviewed. Update Selenium WebDriver imported tests.
25140 New version of selenium uses command line options to pass driver and browser binaries to pytest instead of
25141 environment variables.
25143 * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
25144 (collect): Reorder the arguments to make pytest happy.
25146 * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
25147 (WebDriverSeleniumExecutor.__init__): Add driver binary, browser binary and browser args as arguments.
25149 2018-01-11 Ling Ho <lingcherd_ho@apple.com>
25151 Move Commit Queue and EWS Queues to Sierra on Bot Watcher's Dasboard
25152 https://bugs.webkit.org/show_bug.cgi?id=181492
25153 <rdar://problem/36359679>
25155 Reviewed by Alexey Proskuryakov.
25157 2018-01-10 Adrian Perez de Castro <aperez@igalia.com>
25159 [GTK] Tools/gtk/install-dependencies: Packages geoclue, ruby-highline, xorg-utils do not exist in Arch Linux
25160 https://bugs.webkit.org/show_bug.cgi?id=181475
25162 Reviewed by Michael Catanzaro.
25164 * gtk/install-dependencies: Update package list for Arch Linux, extend
25165 message shown at end of installation with additional tips.
25167 2018-01-10 Wenson Hsieh <wenson_hsieh@apple.com>
25169 REGRESSION(r222507): Composition highlight doesn't render when using IME
25170 https://bugs.webkit.org/show_bug.cgi?id=181485
25171 <rdar://problem/35896516>
25173 Reviewed by Ryosuke Niwa.
25175 Add a `suppressUnderline` argument to TextInputController.setMarkedText. This suppresses the custom underlines
25176 rendered when testing IME on iOS in WebKit2. In this new test, suppressing underline rendering is needed to
25177 allow rendering composition backgrounds (see InlineTextBox::paint).
25179 * DumpRenderTree/ios/TextInputControllerIOS.m:
25180 (+[TextInputController isSelectorExcludedFromWebScript:]):
25181 (+[TextInputController webScriptNameForSelector:]):
25182 (-[TextInputController setMarkedText:selectedFrom:length:suppressUnderline:]):
25183 (-[TextInputController setMarkedText:selectedFrom:length:]): Deleted.
25184 * DumpRenderTree/mac/TextInputControllerMac.m:
25185 (+[TextInputController isSelectorExcludedFromWebScript:]):
25186 (+[TextInputController webScriptNameForSelector:]):
25187 (-[TextInputController setMarkedText:selectedFrom:length:suppressUnderline:]):
25188 (-[TextInputController setMarkedText:selectedFrom:length:]): Deleted.
25189 * WebKitTestRunner/InjectedBundle/Bindings/TextInputController.idl:
25190 * WebKitTestRunner/InjectedBundle/TextInputController.cpp:
25191 (WTR::TextInputController::setMarkedText):
25192 * WebKitTestRunner/InjectedBundle/TextInputController.h:
25194 2018-01-10 JF Bastien <jfbastien@apple.com>
25196 Poison small JSObject derivatives which only contain pointers
25197 https://bugs.webkit.org/show_bug.cgi?id=181483
25198 <rdar://problem/36407127>
25200 Reviewed by Mark Lam.
25202 Test the new move-assign and move-copy from unique_ptr, as well as
25205 * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
25206 (TestWebKitAPI::TEST):
25207 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
25208 (TestWebKitAPI::TEST):
25209 * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
25210 (TestWebKitAPI::TEST):
25212 2018-01-10 Chris Dumez <cdumez@apple.com>
25214 Multiple http/wpt/beacon/contentextensions/ test are flaky.
25215 https://bugs.webkit.org/show_bug.cgi?id=179256
25216 <rdar://problem/35401978>
25218 Reviewed by Alex Christensen.
25220 Update WebKitTestRunner to set a temporary path for content extensions so that its WKTR
25221 instance gets its own folder to avoid conflicts and flakiness.
25223 * WebKitTestRunner/mac/TestControllerMac.mm:
25224 (WTR::TestController::platformConfigureViewForTest):
25226 2018-01-10 Tim Horton <timothy_horton@apple.com>
25228 REGRESSION (r213590): Swipe from edge to go to previous page is significantly slower than tapping back button on Twitter
25229 https://bugs.webkit.org/show_bug.cgi?id=181269
25230 <rdar://problem/35110344>
25232 Reviewed by Simon Fraser.
25234 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
25235 (WTR::UIScriptController::beginBackSwipe):
25236 (WTR::UIScriptController::completeBackSwipe):
25237 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
25238 (WTR::UIScriptController::beginBackSwipe):
25239 (WTR::UIScriptController::completeBackSwipe):
25240 (WTR::UIScriptController::overridePreference):
25241 (WTR::UIScriptController::replaceTextAtRange):
25242 * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
25243 (WTR::PlatformWebView::setNavigationGesturesEnabled):
25244 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
25245 (WTR::UIScriptController::beginBackSwipe):
25246 (WTR::UIScriptController::completeBackSwipe):
25247 Implement beginBackSwipe and completeBackSwipe on iOS (they already
25248 exist on Mac) in terms of the new WKWebView testing SPI.
25250 2018-01-10 Jonathan Bedard <jbedard@apple.com>
25252 REGRESSION (r226715): ignore WARNING output in linter tests
25253 https://bugs.webkit.org/show_bug.cgi?id=181486
25254 <rdar://problem/36408847>
25256 Reviewed by Aakash Jain.
25258 Linter unit tests should not be interested in logs at the the INFO or WARNING levels.
25260 * Scripts/webkitpy/common/system/outputcapture.py:
25261 (OutputCapture.__init__): Pass logging level to be captured.
25262 * Scripts/webkitpy/style/main_unittest.py:
25263 (ExpectationLinterInStyleCheckerTest.test_no_linter_errors): Capture logging at the ERROR level.
25264 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line): Ditto.
25265 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_no_edit): Ditto.
25266 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_edit_in_file): Ditto.
25267 (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_only_deletes): Ditto.
25268 (ExpectationLinterInStyleCheckerTest.test_linter_added_file_with_error): Ditto.
25269 (ExpectationLinterInStyleCheckerTest.test_linter_deleted_file): Ditto.
25270 (ExpectationLinterInStyleCheckerTest.test_linter_deleted_file_no_edit): Ditto.
25272 2018-01-10 Carlos Alberto Lopez Perez <clopez@igalia.com>
25274 Add a JSCOnly MIPS buildbot
25275 https://bugs.webkit.org/show_bug.cgi?id=181487
25277 Reviewed by Michael Catanzaro.
25279 Add the new bot configs definitions for the master and update the unit tests.
25281 * BuildSlaveSupport/build.webkit.org-config/config.json:
25282 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
25284 2018-01-10 Jonathan Bedard <jbedard@apple.com>
25286 REGRESSION (r226715): don't re-check number of simulators in child processes
25287 https://bugs.webkit.org/show_bug.cgi?id=181484
25288 <rdar://problem/36407151>
25290 Reviewed by Aakash Jain.
25292 * Scripts/webkitpy/port/ios_simulator.py:
25293 (IOSSimulatorPort.__init__): Skip the number of simulators check if simulators
25294 are already initialized.
25296 2018-01-10 Commit Queue <commit-queue@webkit.org>
25298 Unreviewed, rolling out r226667 and r226673.
25299 https://bugs.webkit.org/show_bug.cgi?id=181488
25301 This caused a flaky crash. (Requested by mlewis13 on #webkit).
25303 Reverted changesets:
25305 "CodeBlocks should be in IsoSubspaces"
25306 https://bugs.webkit.org/show_bug.cgi?id=180884
25307 https://trac.webkit.org/changeset/226667
25309 "REGRESSION (r226667): CodeBlocks should be in IsoSubspaces"
25310 https://bugs.webkit.org/show_bug.cgi?id=180884
25311 https://trac.webkit.org/changeset/226673
25313 2018-01-10 Jonathan Bedard <jbedard@apple.com>
25315 Follow-up fix to r226715
25316 https://bugs.webkit.org/show_bug.cgi?id=180555
25317 <rdar://problem/36131381>
25319 Unreviewed infrastructure fix.
25321 * Scripts/webkitpy/xcode/new_simulated_device.py:
25322 (SimulatedDeviceManager._create_or_find_device_for_request): Use _delete instead
25325 2018-01-10 Jonathan Bedard <jbedard@apple.com>
25327 webkitpy: Refactor simulator code (Part 2)
25328 https://bugs.webkit.org/show_bug.cgi?id=180555
25329 <rdar://problem/36131381>
25331 Reviewed by Aakash Jain.
25333 The patch leverages the SimulatedDeviceManager when running layout tests.
25334 This patch is primarily code removal, since much of the IOSSimulatorPort
25335 was dedicated to managing simulators. The removed code is either now owned by the
25336 SimulatedDeviceManager (and committed in Part 1) or supported a technique to
25337 boot multiple simulators which was made obsolete in Xcode 9.
25339 * Scripts/webkitpy/layout_tests/controllers/manager.py:
25340 (Manager._custom_device_for_test.in): Device names now have spaces in them,
25341 strip those spaces.
25342 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
25343 (parse_args): Remove '--runtime' flag, this is achieved with the --version flag.
25344 * Scripts/webkitpy/port/ios.py:
25345 (IOSPort.__init__): The _current_device idiom is no longer required since the
25346 SimulatedDeviceManager keeps track of any previously booted devices.
25347 (IOSPort.target_host): Even when only a single device is used, it will be accessed
25348 through the array of managed devices.
25349 (IOSPort.using_multiple_devices): Deleted.
25350 * Scripts/webkitpy/port/ios_device.py:
25351 (IOSDevicePort.using_multiple_devices): Deleted.
25352 * Scripts/webkitpy/port/ios_simulator.py:
25353 (IOSSimulatorPort): Remove constants required to manage simulators, change device
25354 class strings so they can be parsed by the DeviceType class.
25355 (IOSSimulatorPort.__init__): Determine the number of processes to use by checking
25356 the number of simulators currently booted, the number of child processes specified
25357 and the maximum number of simulators supported by this system.
25358 (IOSSimulatorPort._device_for_worker_number_map):Return the array of initialized
25359 devices owned by the SimulatedDeviceManager.
25360 (IOSSimulatorPort.ios_version): Remove support for the --runtime option.
25361 (IOSSimulatorPort.default_child_processes): Use the SimulatedDeviceManager to check
25362 the maximum number of supported simulators on this system.
25363 (IOSSimulatorPort._create_devices): Construct a list of device requests with a
25364 request for each child process and send this list to the SimulatedDeviceManager to
25365 initialize the devices.
25366 (IOSSimulatorPort.clean_up_test_run):
25367 (IOSSimulatorPort.check_sys_deps): Check that there are simulators running the
25368 specified version of iOS.
25369 (IOSSimulatorPort.reset_preferences):
25370 (IOSSimulatorPort.simulator_runtime): Deleted.
25371 (IOSSimulatorPort.simulator_device_type): Deleted.
25372 (IOSSimulatorPort._teardown_managed_simulators): Deleted.
25373 (IOSSimulatorPort.use_multiple_simulator_apps): Deleted.
25374 (IOSSimulatorPort._create_simulators): Deleted.
25375 (IOSSimulatorPort._quit_ios_simulator): Deleted.
25376 (IOSSimulatorPort._using_dedicated_simulators): Deleted.
25377 (IOSSimulatorPort.using_multiple_devices): Deleted.
25378 (IOSSimulatorPort._create_device): Deleted.
25379 (IOSSimulatorPort.get_simulator_path): Deleted.
25380 (IOSSimulatorPort._createSimulatorApps): Deleted.
25381 (IOSSimulatorPort._createSimulatorApp): Deleted.
25382 * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
25383 (TestRebaseline.test_rebaseline): Filter out commands run when determining the
25384 maximum number of simulators run on this system.
25385 (TestRebaselineExpectations.test_rebaseline_expectations): Ditto.
25386 * Scripts/webkitpy/xcode/new_simulated_device.py:
25387 (SimulatedDeviceManager._does_fulfill_request): Fixed log statement.
25389 2018-01-10 Carlos Garcia Campos <cgarcia@igalia.com>
25391 WebDriver: run-webdriver-tests doesn't handle test names with a '/' correctly
25392 https://bugs.webkit.org/show_bug.cgi?id=181474
25394 Reviewed by Carlos Alberto Lopez Perez.
25396 We use os.path.basename() to get the subtest name. If the test name contains a slash we get part of the subtest
25399 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
25400 (WebDriverTestRunnerW3C._subtest_name): Helper function to get the subtest name.
25401 (WebDriverTestRunnerW3C.run): Use _subtest_name() instead of os.path.basename().
25403 2018-01-09 Andy Estes <aestes@apple.com>
25405 [Xcode] Use the Apple Internal SDK if available when building ImageDiff
25406 https://bugs.webkit.org/show_bug.cgi?id=181459
25408 Reviewed by Dan Bernstein.
25410 * ImageDiff/cg/Configurations/Base.xcconfig:
25412 2018-01-09 Myles C. Maxfield <mmaxfield@apple.com>
25414 font-display:fallback can cause a visual flash (which is supposed to be impossible)
25415 https://bugs.webkit.org/show_bug.cgi?id=181374
25417 Reviewed by Simon Fraser.
25419 The test requires Palatino.
25421 * DumpRenderTree/mac/DumpRenderTree.mm:
25422 (allowedFontFamilySet):
25423 * WebKitTestRunner/mac/TestControllerMac.mm:
25424 (WTR::allowedFontFamilySet):
25426 2018-01-09 Saam Barati <sbarati@apple.com>
25428 Give some slack in display-profiler-outputs computation of the terminal window's number of columns
25429 https://bugs.webkit.org/show_bug.cgi?id=181449
25431 Reviewed by JF Bastien.
25433 This allows me to Cmd+f in my terminal to search for things without
25434 having the results become misaligned.
25436 * Scripts/display-profiler-output:
25438 2018-01-09 Basuke Suzuki <Basuke.Suzuki@sony.com>
25440 [webkitpy] PlatformInfo should have default argument for casual use
25441 https://bugs.webkit.org/show_bug.cgi?id=180827
25443 Reviewed by David Kilzer.
25445 PlatformInfo should be the only way to check platform specific thing instead
25446 of sys.platform or other various checks. If there is something you want to check,
25447 it should be placed in PlatformInfo.
25449 Currently to instantiate PlatformInfo, it requires arguments, which is usually
25450 sys, platform and Executive(). They are straight forward and should be handled
25451 by default arguments. Then we can instantiate PlatformInfo more casual.
25453 * Scripts/webkitpy/common/system/platforminfo.py:
25454 (PlatformInfo): Use relative module path import
25455 (PlatformInfo.__init__):
25456 (PlatformInfo.executive): Lazy instantiation of Executive()
25457 (PlatformInfo.total_bytes_memory): Accessing via above property
25458 (PlatformInfo.xcode_sdk_version): Ditto
25459 (PlatformInfo.xcode_simctl_list): Ditto
25460 (PlatformInfo.xcode_version): Ditto
25461 (PlatformInfo._win_version_str): Ditto
25462 * Scripts/webkitpy/common/system/systemhost.py:
25463 (SystemHost.__init__):
25464 * Scripts/webkitpy/common/system/user.py:
25467 2018-01-09 Yoshiaki Jitsukawa <Yoshiaki.Jitsukawa@sony.com>
25469 [Win] Remove workaround for Bug 176442 after stopping MSVC 2015 support
25470 https://bugs.webkit.org/show_bug.cgi?id=176443
25472 Reviewed by Darin Adler.
25474 * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp:
25477 2018-01-09 Frederic Wang <fwang@igalia.com.fr>
25479 check-webkit-style: Verify syntax for WK_API_AVAILABLE
25480 https://bugs.webkit.org/show_bug.cgi?id=181394
25482 Reviewed by Darin Adler.
25484 A common syntax error for WK_API_AVAILABLE is to write ios(WK_MAC_TBA)
25485 as the second parameter instead of ios(WK_IOS_TBA). This generally
25486 builds for iOS on EWS but not when using the public SDK. See r224057,
25487 r223207 and r226211 for example. This patch adds a basic style check
25488 for that macro to prevent this kind of mistake.
25490 * Scripts/webkitpy/style/checkers/cpp.py:
25491 (check_min_versions_of_wk_api_available): New function to verify the parameters of WX_API_AVAILABLE.
25492 (check_style): Run new style check.
25493 (CppChecker): Add build type for the new style check.
25494 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
25495 (WebKitStyleTest.test_min_versions_of_wk_api_available): Add tests for the new style check.
25497 2018-01-08 Wenson Hsieh <wenson_hsieh@apple.com>
25499 [Attachment Support] Expose HTMLAttachmentElement.uniqueIdentifier to bindings
25500 https://bugs.webkit.org/show_bug.cgi?id=181420
25501 <rdar://problem/36365827>
25503 Reviewed by Alex Christensen.
25505 Adjusts some existing API tests to verify that attachment elements' uniqueIdentifiers match the uniqueIdentifier
25506 of corresponding _WKAttachments.
25508 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
25509 (TestWebKitAPI::TEST):
25511 2018-01-08 Alex Christensen <achristensen@webkit.org>
25513 Add WKNavigationDelegate SPI exposing WebProcess crash reason
25514 https://bugs.webkit.org/show_bug.cgi?id=181410
25515 <rdar://problem/36167199>
25517 Reviewed by Wenson Hsieh.
25519 * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
25520 (-[CrashReasonDelegate _webView:webContentProcessDidTerminateWithReason:]):
25523 2018-01-08 Alex Christensen <achristensen@webkit.org>
25525 Add SPI for WKOpenPanelParameters._acceptedMIMETypes and _acceptedFileExtensions
25526 https://bugs.webkit.org/show_bug.cgi?id=181408
25527 <rdar://problem/35884960>
25529 Reviewed by Tim Horton.
25531 * TestWebKitAPI/Tests/WebKitCocoa/RunOpenPanel.mm:
25532 (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
25534 2018-01-08 Wenson Hsieh <wenson_hsieh@apple.com>
25536 [Attachment Support] Expose file name and content type of WKAttachment
25537 https://bugs.webkit.org/show_bug.cgi?id=181390
25538 <rdar://problem/36336837>
25540 Reviewed by Tim Horton.
25542 Adjusts some existing tests in WKAttachmentTests to exercise -requestInfo:.
25544 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
25545 (-[_WKAttachment synchronouslyRequestInfo:]):
25546 (-[_WKAttachment synchronouslyRequestData:]):
25548 Reimplement this in terms of -synchronouslyRequestInfo:.
25550 (-[_WKAttachment expectRequestedDataToBe:]):
25551 (TestWebKitAPI::TEST):
25553 2018-01-08 Wenson Hsieh <wenson_hsieh@apple.com>
25555 Copying, pasting, and then deleting an attachment element breaks attachment data requests
25556 https://bugs.webkit.org/show_bug.cgi?id=181365
25557 <rdar://problem/36340647>
25559 Reviewed by Tim Horton.
25561 Adds two new attachment API tests to verify that copying and pasting an existing attachment inserts an
25562 attachment element that may be edited independently of the original attachment. See WebCore/ChangeLog for more
25565 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
25566 (TestWebKitAPI::TEST):
25568 2018-01-08 Youenn Fablet <youenn@apple.com>
25570 navigator.onLine does not work inside service workers
25571 https://bugs.webkit.org/show_bug.cgi?id=181079
25572 <rdar://problem/36178606>
25574 Reviewed by Darin Adler.
25576 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
25577 (WTR::InjectedBundle::initialize): Setting service worker creation callback to inject ServiceWorkerInternals object.
25579 2018-01-07 Saam Barati <sbarati@apple.com>
25581 Add total exits and total compilations sorting mode to the "full" command in display-profiler-output
25582 https://bugs.webkit.org/show_bug.cgi?id=181372
25584 Reviewed by Filip Pizlo.
25586 Adding these sorting modes makes it easier to analyze functions
25587 that recompile a lot and exit a lot.
25589 * Scripts/display-profiler-output:
25591 2018-01-06 Julien Brianceau <julien.brianceau@gmail.com>
25593 Unreviewed, remove my Cisco email from contributors.json
25595 * Scripts/webkitpy/common/config/contributors.json:
25597 2018-01-05 JF Bastien <jfbastien@apple.com>
25599 WebAssembly: poison JS object's secrets
25600 https://bugs.webkit.org/show_bug.cgi?id=181339
25601 <rdar://problem/36325001>
25603 Reviewed by Mark Lam.
25605 Update tests for swap(Poisoned<k, T>, T*)
25607 * TestWebKitAPI/Tests/WTF/ConstExprPoisoned.cpp:
25608 (TestWebKitAPI::TEST):
25609 * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
25610 (TestWebKitAPI::TEST):
25611 * TestWebKitAPI/Tests/WTF/PoisonedRef.cpp:
25612 (TestWebKitAPI::TEST):
25614 2018-01-05 Wenson Hsieh <wenson_hsieh@apple.com>
25616 REGRESSION(r226396) DataInteractionTests: ContentEditableToContentEditable and ContentEditableToTextarea are failing
25617 https://bugs.webkit.org/show_bug.cgi?id=181359
25619 Reviewed by Tim Horton.
25621 Ensure that these tests still pass using older SDKs.
25623 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25624 (TestWebKitAPI::TEST):
25626 2018-01-05 Alex Christensen <achristensen@webkit.org>
25628 Rebase API test after r226469
25629 https://bugs.webkit.org/show_bug.cgi?id=181308
25631 * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
25632 (-[LoadInvalidURLNavigationActionDelegate webView:didFailProvisionalNavigation:withError:]):
25633 A URL with < or > in it is now recognized as invalid by WebKit. This is intentional, and matches our behavior before enabling the new URLParser.
25635 2018-01-05 Alex Christensen <achristensen@webkit.org>
25637 Restrict navigation-time WKWebsiteDataStore swapping to main frame navigations
25638 https://bugs.webkit.org/show_bug.cgi?id=181217
25640 Reviewed by Tim Horton.
25642 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
25643 (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
25646 2018-01-05 Alex Christensen <achristensen@webkit.org>
25648 Add WKBundleFrameCreateFrameHandle
25649 https://bugs.webkit.org/show_bug.cgi?id=181232
25650 <rdar://problem/35926696>
25652 Reviewed by Tim Horton.
25654 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
25655 * TestWebKitAPI/Tests/WebKitCocoa/FrameHandleSerialization.mm: Added.
25656 (mouseDidMoveOverElement):
25657 (-[FrameHandleSerialization webProcessPlugIn:didCreateBrowserContextController:]):
25658 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
25659 (-[MouseMoveOverElementDelegate _webView:mouseDidMoveOverElement:withFlags:userInfo:]):
25662 2018-01-05 Chris Fleizach <cfleizach@apple.com>
25664 iOS: Build fix after r226432.
25666 Unreviewed. Stop duplicating speakAs symbols for iOS.
25668 * DumpRenderTree/AccessibilityUIElement.cpp:
25669 (AccessibilityUIElement::speakAs):
25671 2018-01-05 Javier Fernandez <jfernandez@igalia.com>
25673 Unreviewed, added myself as WebKit reviewer
25675 * Scripts/webkitpy/common/config/contributors.json:
25677 2018-01-05 Claudio Saavedra <csaavedra@igalia.com>
25679 WPE: Build fix after r226432.
25681 Unreviewed. Rename ::speak() to ::speakAs().
25682 * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
25683 (WTR::AccessibilityUIElement::speakAs):
25684 (WTR::AccessibilityUIElement::speak): Deleted.
25686 2018-01-04 Chris Fleizach <cfleizach@apple.com>
25688 AX: Implement updated CSS3 Speech for 'speak' and 'speak-as' properties
25689 https://bugs.webkit.org/show_bug.cgi?id=180361
25691 Reviewed by Zalan Bujtas.
25693 * DumpRenderTree/AccessibilityUIElement.cpp:
25695 (AccessibilityUIElement::speakAs):
25696 (AccessibilityUIElement::getJSClass):
25697 (speakCallback): Deleted.
25698 (AccessibilityUIElement::speak): Deleted.
25699 * DumpRenderTree/AccessibilityUIElement.h:
25700 * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
25701 (AccessibilityUIElement::speakAs):
25702 * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
25703 (AccessibilityUIElement::speakAs):
25704 (AccessibilityUIElement::speak): Deleted.
25705 * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
25706 * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
25707 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
25708 (WTR::AccessibilityUIElement::speakAs):
25709 (WTR::AccessibilityUIElement::speak): Deleted.
25710 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
25711 (WTR::AccessibilityUIElement::speakAs):
25712 (WTR::AccessibilityUIElement::speak): Deleted.
25714 2018-01-04 Jonathan Bedard <jbedard@apple.com>
25716 REGRESSION (r226395): test-webkitperl test expectations incorrect
25717 https://bugs.webkit.org/show_bug.cgi?id=181307
25718 <rdar://problem/36306558>
25720 Rubber-stamped by Aakash Jain.
25722 r226395 added two lines towards the beginning of
25723 Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests.pl, the line
25724 numbers in the test expectations need to update.
25726 * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests-expected.txt:
25728 2018-01-04 Tim Horton <timothy_horton@apple.com>
25730 WKWebView loses minimum layout size overrides that happen while the process is terminated
25731 https://bugs.webkit.org/show_bug.cgi?id=181306
25732 <rdar://problem/34398288>
25734 Reviewed by Dan Bernstein.
25736 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
25738 Add a test that calling _overrideLayoutParametersWithMinimumLayoutSize
25739 while the process is terminated results in the page getting the correct
25740 minimum layout size.
25742 2018-01-04 Eric Carlson <eric.carlson@apple.com>
25744 [MediaStream] Add Mock screen capture source
25745 https://bugs.webkit.org/show_bug.cgi?id=181291
25746 <rdar://problem/36298164>
25748 Reviewed by Dean Jackson.
25750 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new test.
25751 * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
25752 * TestWebKitAPI/Tests/WebKit/getDisplayMedia.html:
25754 2018-01-04 Lucas Forschler <lforschler@apple.com>
25756 <rdar://problem/36300930> Change proxy server setting on master config to reach s3 servers
25758 Reviewed by Ling Ho.
25760 * BuildSlaveSupport/build.webkit.org-config/steps.py:
25762 2018-01-03 Wenson Hsieh <wenson_hsieh@apple.com>
25764 [Attachment Support] Create attachment elements when dropping files on iOS
25765 https://bugs.webkit.org/show_bug.cgi?id=181192
25766 <rdar://problem/36280945>
25768 Reviewed by Tim Horton.
25770 Adds 3 new API tests to exercise different use cases of dropping content as attachment elements when the runtime
25771 switch is enabled. See below for more details.
25773 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
25774 (-[NSItemProvider registerData:type:]):
25776 (TestWebKitAPI::TEST):
25777 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
25779 Fix some currently failing iOS drag and drop tests. In this case, there's no reason RTFD should appear in the
25780 source item provider when dragging rich text *without* attachments, so this should have been a check for just
25781 kUTTypeRTF instead.
25783 (TestWebKitAPI::TEST):
25785 Tests a few cases of inserting attachment elements via drop:
25786 1. We should distinguish between drops containing rich/plain text files from just dropping rich/plain text.
25787 Instead of inserting the contents as inline web content, this should generate attachment elements.
25788 2. Test the fallback mechanism for inserting attachment elements. If the preferred presentation style is not
25789 explicitly set, but there's nothing WebKit would otherwise do with the dropped content, then we should fall
25790 back to inserting the content as an attachment.
25791 3. Test that if multiple attachments and inline item providers are present, WebKit will respect the order in
25792 which they were inserted by the source (as opposed to, for instance, putting all of the attachments in front
25795 * TestWebKitAPI/cocoa/TestWKWebView.h:
25796 * TestWebKitAPI/cocoa/TestWKWebView.mm:
25797 (-[TestWKWebView objectByEvaluatingJavaScript:]):
25799 Add a helper method to return an object that represents the result of evaluating some given script, and rewrite
25800 -stringByEvaluatingJavaScript to just turn around and call this.
25802 (-[TestWKWebView stringByEvaluatingJavaScript:]):
25804 2018-01-03 Ting-Wei Lan <lantw44@gmail.com>
25806 Replace hard-coded paths in shebangs with #!/usr/bin/env
25807 https://bugs.webkit.org/show_bug.cgi?id=181040
25809 Reviewed by Alex Christensen.
25811 * BuildSlaveSupport/build-launcher-app:
25812 * BuildSlaveSupport/build-launcher-dmg:
25813 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
25814 * BuildSlaveSupport/built-product-archive:
25815 * BuildSlaveSupport/clean-build:
25816 * BuildSlaveSupport/delete-stale-build-files:
25817 * BuildSlaveSupport/download-built-product:
25818 * BuildSlaveSupport/gtk/buildbot/log/run:
25819 * BuildSlaveSupport/gtk/buildbot/run:
25820 * BuildSlaveSupport/gtk/pulseaudio/run:
25821 * BuildSlaveSupport/kill-old-processes:
25822 * BuildSlaveSupport/test-result-archive:
25823 * BuildSlaveSupport/win/kill-old-processes:
25824 * Scripts/SpacingHeuristics.pm:
25825 * Scripts/add-include:
25826 * Scripts/build-api-tests:
25827 * Scripts/build-dumprendertree:
25828 * Scripts/build-imagediff:
25829 * Scripts/build-jsc:
25830 * Scripts/build-webkit:
25831 * Scripts/build-webkittestrunner:
25832 * Scripts/check-Xcode-source-file-types:
25833 * Scripts/check-dom-results:
25834 * Scripts/check-for-exit-time-destructors:
25835 * Scripts/check-for-global-initializers:
25836 * Scripts/check-for-inappropriate-objc-class-names:
25837 * Scripts/check-for-weak-vtables-and-externals:
25838 * Scripts/clean-header-guards:
25839 * Scripts/compare-timing-files:
25840 * Scripts/configure-xcode-for-ios-development:
25841 * Scripts/copy-webkitlibraries-to-product-directory:
25842 * Scripts/create-exports:
25843 * Scripts/debug-minibrowser:
25844 * Scripts/debug-safari:
25845 * Scripts/debug-test-runner:
25846 * Scripts/do-file-rename:
25847 * Scripts/do-webcore-rename:
25848 * Scripts/dump-webkit-tests-run:
25849 * Scripts/ensure-valid-python:
25850 * Scripts/execAppWithEnv:
25851 * Scripts/extract-localizable-js-strings:
25852 * Scripts/filter-build-webkit:
25853 * Scripts/find-extra-includes:
25854 * Scripts/fix-blink-patch:
25855 * Scripts/generate-coverage-data:
25856 * Scripts/git-add-reviewer:
25857 * Scripts/jsc-stress-test-helpers/js-exception-fuzz:
25858 * Scripts/jsc-stress-test-helpers/js-executable-allocation-fuzz:
25859 * Scripts/jsc-stress-test-helpers/js-osr-exit-fuzz:
25860 * Scripts/make-new-script-test:
25861 * Scripts/make-script-test-wrappers:
25862 * Scripts/package-root:
25863 * Scripts/parse-malloc-history:
25864 * Scripts/report-include-statistics:
25865 * Scripts/resolve-ChangeLogs:
25866 * Scripts/run-api-tests:
25867 * Scripts/run-bindings-tests:
25868 * Scripts/run-content-extension-tester:
25869 * Scripts/run-iexploder-tests:
25870 * Scripts/run-javascriptcore-tests:
25872 * Scripts/run-leaks:
25873 * Scripts/run-mangleme-tests:
25874 * Scripts/run-minibrowser:
25875 * Scripts/run-pageloadtest:
25876 * Scripts/run-regexp-tests:
25877 * Scripts/run-safari:
25878 * Scripts/run-sunspider:
25879 * Scripts/run-test-runner:
25880 * Scripts/run-webkit-app:
25881 * Scripts/run-webkit-httpd:
25882 * Scripts/run-webkit-websocketserver:
25883 * Scripts/set-webkit-configuration:
25884 * Scripts/show-pretty-diff:
25885 * Scripts/sort-Xcode-project-file:
25886 * Scripts/split-file-by-class:
25887 * Scripts/sunspider-compare-results:
25888 * Scripts/svn-apply:
25889 * Scripts/svn-unapply:
25890 * Scripts/test-webkit-scripts:
25891 * Scripts/test-webkitperl:
25892 * Scripts/update-iexploder-cssproperties:
25893 * Scripts/update-javascriptcore-test-results:
25894 * Scripts/update-webkit:
25895 * Scripts/update-webkit-auxiliary-libs:
25896 * Scripts/update-webkit-dependency:
25897 * Scripts/update-webkit-libs-jhbuild:
25898 * Scripts/update-webkit-localizable-strings:
25899 * Scripts/update-webkit-support-libs:
25900 * Scripts/update-webkitgtk-libs:
25901 * Scripts/update-webkitwpe-libs:
25902 * Scripts/webkit-build-directory:
25903 * Scripts/webkitperl/LoadAsModule.pm:
25904 * Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl:
25905 * Scripts/webkitperl/VCSUtils_unittest/fixChangeLogPatch.pl:
25906 * Scripts/webkitperl/VCSUtils_unittest/fixChangeLogPatchThenSetChangeLogDateAndReviewer.pl:
25907 * Scripts/webkitperl/VCSUtils_unittest/fixSVNPatchForAdditionWithHistory.pl:
25908 * Scripts/webkitperl/VCSUtils_unittest/generatePatchCommand.pl:
25909 * Scripts/webkitperl/VCSUtils_unittest/mergeChangeLogs.pl:
25910 * Scripts/webkitperl/VCSUtils_unittest/parseChunkRange.pl:
25911 * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl:
25912 * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl:
25913 * Scripts/webkitperl/VCSUtils_unittest/parseDiffWithMockFiles.pl:
25914 * Scripts/webkitperl/VCSUtils_unittest/parseFirstEOL.pl:
25915 * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl:
25916 * Scripts/webkitperl/VCSUtils_unittest/parsePatch.pl:
25917 * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffFooter.pl:
25918 * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl:
25919 * Scripts/webkitperl/VCSUtils_unittest/parseSvnProperty.pl:
25920 * Scripts/webkitperl/VCSUtils_unittest/parseSvnPropertyValue.pl:
25921 * Scripts/webkitperl/VCSUtils_unittest/parseUnifiedDiffHeader.pl:
25922 * Scripts/webkitperl/VCSUtils_unittest/prepareParsedPatch.pl:
25923 * Scripts/webkitperl/VCSUtils_unittest/removeEOL.pl:
25924 * Scripts/webkitperl/VCSUtils_unittest/runCommand.pl:
25925 * Scripts/webkitperl/VCSUtils_unittest/runPatchCommand.pl:
25926 * Scripts/webkitperl/VCSUtils_unittest/setChangeLogDateAndReviewer.pl:
25927 * Scripts/webkitperl/auto-version_unittest/autoVersionTests.pl:
25928 * Scripts/webkitperl/auto-version_unittest/versionStampTests.pl:
25929 * Scripts/webkitperl/filter-build-webkit_unittest/shouldIgnoreLine_unittests.pl:
25930 * Scripts/webkitperl/prepare-ChangeLog_unittest/extractLineRangeBeforeAndAfterChange.pl:
25931 * Scripts/webkitperl/prepare-ChangeLog_unittest/fetchRadarURLFromBugXMLData.pl:
25932 * Scripts/webkitperl/prepare-ChangeLog_unittest/generateFunctionLists.pl:
25933 * Scripts/webkitperl/prepare-ChangeLog_unittest/parser_unittests.pl:
25934 * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests.pl:
25935 * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v1.0.pl:
25936 * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-new.pl:
25937 * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-old.pl:
25938 * Scripts/webkitperl/webkitdirs_unittest/appendToEnvironmentVariableList.pl:
25939 * Scripts/webkitperl/webkitdirs_unittest/checkForArgumentAndRemoveFromArrayRef.pl:
25940 * Scripts/webkitperl/webkitdirs_unittest/checkForArgumentAndRemoveFromArrayRefGettingValue.pl:
25941 * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl:
25942 * Scripts/webkitperl/webkitdirs_unittest/prependToEnvironmentVariableList.pl:
25943 * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
25944 * ccache/ccache-clang:
25945 * ccache/ccache-clang++:
25946 * ccache/ccache-wrapper:
25947 * gtk/install-dependencies:
25948 * iExploder/iexploder-1.3.2/htdocs/iexploder.cgi:
25949 * iExploder/iexploder-1.3.2/htdocs/webserver.rb:
25950 * iExploder/iexploder-1.3.2/tools/lasthit.rb:
25951 * iExploder/iexploder-1.3.2/tools/osx_last_crash.rb:
25952 * iExploder/iexploder-1.3.2/tools/showtest.rb:
25953 * iExploder/iexploder-1.7.2/src/browser_harness.rb:
25954 * iExploder/iexploder-1.7.2/src/iexploder.cgi:
25955 * iExploder/iexploder-1.7.2/src/webserver.rb:
25956 * iExploder/iexploder-1.7.2/tools/lasthit.rb:
25957 * iExploder/iexploder-1.7.2/tools/osx_last_crash.rb:
25958 * wpe/install-dependencies:
25960 2018-01-03 Simon Fraser <simon.fraser@apple.com>
25962 filter-build-webkit filters out useful compiler error lines
25963 https://bugs.webkit.org/show_bug.cgi?id=179864
25965 Reviewed by Tim Horton.
25967 Don't filter out lines that contain information about build errors by always showing lines
25968 after a line that contains "note:" or "error:".
25970 * Scripts/filter-build-webkit:
25971 (shouldShowSubsequentLine):
25972 (shouldIgnoreLine):
25974 2018-01-03 Michael Catanzaro <mcatanzaro@igalia.com>
25976 REGRESSION(r226366): [GTK] Broke TestBackForwardList and TestWebKitWebView
25977 https://bugs.webkit.org/show_bug.cgi?id=173915
25979 Unreviewed follow-up. Fix /webkit2/WebKitWebView/session-state-with-form-data and
25980 /webkit2/WebKitWebView/submit-form. The form ID may be NULL, but we can't put NULL into a
25981 GVariant unless we use maybe types, and maybe types are incompatible with D-Bus. So use an
25982 empty string in this case.
25984 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
25985 (emitFormSubmissionEvent):
25987 2018-01-03 Michael Catanzaro <mcatanzaro@igalia.com>
25989 [GTK] Add web process API to detect when form is submitted via JavaScript
25990 https://bugs.webkit.org/show_bug.cgi?id=173915
25992 Reviewed by Carlos Garcia Campos.
25996 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
25997 (FormSubmissionTest::FormSubmissionTest):
25998 (FormSubmissionTest::~FormSubmissionTest):
25999 (FormSubmissionTest::testFormSubmissionResult):
26000 (FormSubmissionTest::willSendDOMEventCallback):
26001 (FormSubmissionTest::willCompleteCallback):
26002 (FormSubmissionTest::runJavaScriptAndWaitUntilFormSubmitted):
26003 (testWebExtensionFormSubmissionSteps):
26005 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
26006 (DelayedSignal::DelayedSignal):
26007 (emitFormSubmissionEvent):
26008 (handleFormSubmissionCallback):
26009 (willSubmitFormCallback):
26010 (pageCreatedCallback):
26012 2018-01-03 Michael Catanzaro <mcatanzaro@igalia.com>
26014 Unreviewed, skip broken API test /webkit2/WebKitWebsiteData/databases
26015 https://bugs.webkit.org/show_bug.cgi?id=181251
26017 * Scripts/run-gtk-tests:
26020 2018-01-03 Michael Catanzaro <mcatanzaro@igalia.com>
26022 Unreviewed, skip broken API test /webkit2/WebKitWebsiteData/ephemeral
26023 https://bugs.webkit.org/show_bug.cgi?id=181136
26025 * Scripts/run-gtk-tests:
26028 2018-01-02 Brent Fulgham <bfulgham@apple.com>
26030 [macOS, iOS] Adopt new secure coding APIs in WebKit
26031 https://bugs.webkit.org/show_bug.cgi?id=181085
26032 <rdar://problem/34837397>
26034 Reviewed by Tim Horton.
26036 Update API tests to use secure coding wherever possible. Currently, NSView/UIView-based classes are not
26037 capable of supporting NSSecureCoding, so pass through the current coding routines.
26039 * TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm: Updated for NSSecureCoding.
26040 * TestWebKitAPI/Tests/WebKitCocoa/Coding.mm:
26041 (encodeAndDecode): Check if class supports the NSSecureCoding protocol and use non-secure coding
26042 routines if necessary.
26043 (TEST): Updated for NSSecureCoding.
26044 * TestWebKitAPI/Tests/mac/EarlyKVOCrash.mm:
26045 (TestWebKitAPI::TEST): Updated for NSSecureCoding.
26047 2017-12-28 Yusuke Suzuki <utatane.tea@gmail.com>
26049 Remove std::chrono completely
26050 https://bugs.webkit.org/show_bug.cgi?id=181186
26052 Reviewed by Alex Christensen.
26054 * WebKitTestRunner/gtk/TestControllerGtk.cpp:
26055 (WTR::TestController::platformRunUntil):
26057 2018-01-02 Michael Catanzaro <mcatanzaro@igalia.com>
26059 REGRESSION(r223253): Broke ResourceLoadStatistics layout tests for non-Cocoa ports
26060 https://bugs.webkit.org/show_bug.cgi?id=181231
26062 Reviewed by Alex Christensen.
26064 Implement TestController APIs needed by ResourceLoadStatistics tests.
26066 * WebKitTestRunner/TestController.cpp:
26067 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
26068 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
26070 2018-01-02 Tim Horton <timothy_horton@apple.com>
26072 Disable WKAttachmentTests if UIPasteboard.itemProviders is not available
26073 https://bugs.webkit.org/show_bug.cgi?id=181219
26075 Reviewed by Wenson Hsieh.
26077 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
26079 2018-01-02 Jiewen Tan <jiewen_tan@apple.com>
26081 Add a WebAuthentication runtime feature flag
26082 https://bugs.webkit.org/show_bug.cgi?id=181220
26083 <rdar://problem/36055305>
26085 Reviewed by Brent Fulgham.
26087 Renames the CredentialManagement runtime feature flag into WebAuthentication.
26089 * DumpRenderTree/TestOptions.h:
26090 * DumpRenderTree/TestOptions.mm:
26091 (TestOptions::TestOptions):
26092 * DumpRenderTree/mac/DumpRenderTree.mm:
26093 (enableExperimentalFeatures):
26094 (setWebPreferencesForTestOptions):
26095 * WebKitTestRunner/TestController.cpp:
26096 (WTR::TestController::resetPreferencesToConsistentValues):
26097 (WTR::updateTestOptionsFromTestHeader):
26098 * WebKitTestRunner/TestOptions.h:
26099 (WTR::TestOptions::hasSameInitializationOptions const):
26101 2018-01-02 Wenson Hsieh <wenson_hsieh@apple.com>
26103 [Attachment Support] Don't Blob-convert images and attachments with https:, http: or data: urls
26104 https://bugs.webkit.org/show_bug.cgi?id=181143
26105 <rdar://problem/36200381>
26107 Reviewed by Tim Horton.
26109 Add a new API test to ensure that a copied image with a data URL does not get pasted as an attachment when
26110 attachment elements are enabled.
26112 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
26113 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
26114 (TestWebKitAPI::TEST):
26116 2018-01-02 Jiewen Tan <jiewen_tan@apple.com>
26118 Update Credential Management API for WebAuthentication
26119 https://bugs.webkit.org/show_bug.cgi?id=181082
26120 <rdar://problem/36055239>
26122 Reviewed by Brent Fulgham.
26124 Enable Credential Management API for testing.
26126 * DumpRenderTree/TestOptions.h:
26127 * WebKitTestRunner/TestOptions.h:
26129 2018-01-02 Michael Catanzaro <mcatanzaro@igalia.com>
26131 [GTK] Test /webkit2/WebKitWebExtension/form-controls-associated-signal is flaky
26132 https://bugs.webkit.org/show_bug.cgi?id=168194
26134 Reviewed by Carlos Garcia Campos.
26136 Fix an assertion and unskip the test. The order that form controls are associated is not
26139 * Scripts/run-gtk-tests:
26141 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
26142 (didAssociateFormControlsCallback):
26144 2018-01-02 Alex Christensen <achristensen@webkit.org>
26146 Use new WebsiteDataStore passed in through decidePolicyForNavigation SPI
26147 https://bugs.webkit.org/show_bug.cgi?id=180897
26148 <rdar://problem/35535328>
26150 Reviewed by Brent Fulgham.
26152 Test two forms of storage to be sure we are using a different WebsiteDataStore: cookies and sessionStorage.
26154 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
26155 (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
26156 (-[WebsitePoliciesWebsiteDataStoreDelegate webView:startURLSchemeTask:]):
26157 (-[WebsitePoliciesWebsiteDataStoreDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
26158 (websiteDataStoreTestWebView):
26161 == Rolled over to ChangeLog-2018-01-01 ==