Use a 1-byte enum class for TextDirection
[WebKit-https.git] / Tools / ChangeLog
1 2018-08-13  Alex Christensen  <achristensen@webkit.org>
2
3         Use a 1-byte enum class for TextDirection
4         https://bugs.webkit.org/show_bug.cgi?id=188350
5
6         Reviewed by Simon Fraser.
7
8         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
9         (TestWebKitAPI::TEST_F):
10         * TestWebKitAPI/Tests/WebCore/StringWithDirection.cpp:
11         (WebCore::operator<<):
12         (TestWebKitAPI::TEST):
13         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
14         (TEST_F):
15
16 2018-08-13  Zalan Bujtas  <zalan@apple.com>
17
18         [LFC][Floating] Add basic clearance support
19         https://bugs.webkit.org/show_bug.cgi?id=188492
20
21         Reviewed by Antti Koivisto.
22
23         * LayoutReloaded/misc/LFC-passing-tests.txt:
24
25 2018-08-12  Zalan Bujtas  <zalan@apple.com>
26
27         [LFC] Float prev/next sibling should prevent top/bottom margin collapsing with parent.
28         https://bugs.webkit.org/show_bug.cgi?id=188487
29
30         Reviewed by Antti Koivisto.
31
32         * LayoutReloaded/misc/LFC-passing-tests.txt:
33
34 2018-08-11  Aakash Jain  <aakash_jain@apple.com>
35
36         [ews-build] Separate queues for Builders and Testers - iOS
37         https://bugs.webkit.org/show_bug.cgi?id=188396
38
39         Reviewed by Lucas Forschler.
40
41         * BuildSlaveSupport/ews-build/config.json: Splitted iOS queues into builders and testers.
42         Also added ews121 and ews122 to match with current EWS configuration.
43         * BuildSlaveSupport/ews-build/factories.py:
44         (TestsFactory): Base classes for various Test factories.
45         (TestsFactory.getProduct): Download and extract the archive.
46
47 2018-08-10  Daniel Bates  <dabates@apple.com>
48
49         webkit-patch setup-git-clone should set Git core editor to commit-log-editor
50         https://bugs.webkit.org/show_bug.cgi?id=188473
51
52         Reviewed by Ryosuke Niwa.
53
54         Have "webkit-patch setup-git-clone" set the Git core editor to "perl Tools/Scripts/commit-log-editor --regenerate-log"
55         so that the Git commit message is generated from the ChangeLog for developers that manually
56         generate their ChangeLog using prepare-ChangeLog.
57
58         * Scripts/webkitpy/tool/commands/setupgitclone.py:
59         (SetupGitClone.execute):
60
61 2018-08-10  Truitt Savell  <tsavell@apple.com>
62
63         Unreviewed, rolling out r234749.
64
65         Caused all perf tests to fail in Sierra
66
67         Reverted changeset:
68
69         "[webkitpy][Win] LayoutTests: test names should be Unix style,
70         separated by slash not backslash"
71         https://bugs.webkit.org/show_bug.cgi?id=187973
72         https://trac.webkit.org/changeset/234749
73
74 2018-08-10  David Fenton  <david_fenton@apple.com>
75
76         Timeouts in TestWebKitAPI.PreferredAudioBufferSize.AudioWithWebAudio and TestWebKitAPI.PreferredAudioBufferSize.WebAudio.
77         https://bugs.webkit.org/show_bug.cgi?id=188470.
78
79         Unreviewed test gardening, disabling the tests.
80
81         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
82         (TEST_F):
83
84 2018-08-10  Joseph Pecoraro  <pecoraro@apple.com>
85
86         Eliminate remaining instances of "ElCapitan" from LayoutTests / Tools
87         https://bugs.webkit.org/show_bug.cgi?id=188458
88
89         Reviewed by Alex Christensen.
90
91         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
92         (TestExpectationParser):
93         * TestResultServer/static-dashboards/flakiness_dashboard.js:
94
95 2018-08-09  Fujii Hironori  <Hironori.Fujii@sony.com>
96
97         [webkitpy][Win] LayoutTests: test names should be Unix style, separated by slash not backslash
98         https://bugs.webkit.org/show_bug.cgi?id=187973
99
100         Reviewed by Alex Christensen.
101
102         In LayoutTests, test names have been canonicalized in Unix style
103         since Bug 63597, for example 'fast/css/001.html'. But, Bug 179219,
104         Bug 179572, Bug 180660 and Bug 181814 have changed to use
105         os.path.seq instead of slash if Windows Python is used.
106
107         Revert parts of those changes. Change relative_test_filename to
108         return a slash sperated test name as well as chromium_win.py used
109         to do.
110
111         This change fixes all 41 test-webkitpy failures in WinCairo port.
112
113         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
114         (TestExpectationParser._parse_line): Do not convert a test name by using normpath.
115         * Scripts/webkitpy/port/base.py:
116         (Port.normalize_test_name): Use TEST_PATH_SEPARATOR instead of os.path.sep.
117         (Port.relative_test_filename): Replace self.host.filesystem.sep with self.TEST_PATH_SEPARATOR.
118         (Port.abspath_for_test): Split test_name with TEST_PATH_SEPARATOR.
119         * Scripts/webkitpy/port/driver.py:
120         (Driver): Use '/' instead of os.sep.
121         * Scripts/webkitpy/port/win.py:
122         (WinCairoPort): Do not override TEST_PATH_SEPARATOR.
123
124 2018-08-09  Thomas Denney  <tdenney@apple.com>
125
126         [WHLSL] Add individual test durations to output
127         https://bugs.webkit.org/show_bug.cgi?id=188448
128
129         Reviewed by Myles C. Maxfield.
130
131         * WebGPUShadingLanguageRI/Test.js: Add timing output.
132
133 2018-08-09  Ben Richards  <benton_richards@apple.com>
134
135         We should cache the compiled sandbox profile in a data vault
136         https://bugs.webkit.org/show_bug.cgi?id=184991
137
138         Reviewed by Ryosuke Niwa.
139
140         Added trace points for sandbox initialization
141
142         * Tracing/SystemTracePoints.plist:
143
144 2018-08-09  Jer Noble  <jer.noble@apple.com>
145
146         Video playback is using more power
147         https://bugs.webkit.org/show_bug.cgi?id=188452
148         <rdar://problem/42298937>
149
150         Reviewed by Eric Carlson.
151
152         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
153         (PreferredAudioBufferSize::createView):
154         (PreferredAudioBufferSize::preferredAudioBufferSize const):
155         (TEST_F):
156
157 2018-08-09  Alex Christensen  <achristensen@webkit.org>
158
159         REGRESSION(234640) Loading stalls in environments without SafariSafeBrowsing framework
160         https://bugs.webkit.org/show_bug.cgi?id=188453
161         <rdar://problem/43102553>
162
163         Reviewed by Chris Dumez
164
165         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
166         (TEST):
167         (+[NullLookupContext sharedLookupContext]):
168         (TestWebKitAPI::TEST): Deleted.
169
170 2018-08-09  Alex Christensen  <achristensen@webkit.org>
171
172         WKURLSchemeHandler crashes when sent errors with sync XHR
173         https://bugs.webkit.org/show_bug.cgi?id=188358
174
175         Reviewed by Chris Dumez.
176
177         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
178         (-[SyncErrorScheme webView:startURLSchemeTask:]):
179         (-[SyncErrorScheme webView:stopURLSchemeTask:]):
180         (-[SyncErrorScheme webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
181
182 2018-08-09  Per Arne Vollan  <pvollan@apple.com>
183
184         REGRESSION(r234652): fast/scrolling/rtl-scrollbars-animation-property.html is failing
185         https://bugs.webkit.org/show_bug.cgi?id=188397
186
187         Reviewed by Tim Horton.
188
189         After r234652, [NSScroller preferredScrollerStyle] is called in the UI process, and we need to set the same
190         user defaults related to scrollbars in the UI process as we do in the WebProcess.
191
192         * WebKitTestRunner/mac/main.mm:
193         (setDefaultsToConsistentValuesForTesting):
194
195 2018-08-09  Wenson Hsieh  <wenson_hsieh@apple.com>
196
197         [iOS WK2] Rename and refactor DataInteractionTests and DataInteractionSimulator
198         https://bugs.webkit.org/show_bug.cgi?id=188439
199
200         Reviewed by Andy Estes and Megan Gardner.
201
202         Refactor DataInteractionSimulator (currently used for drag and drop testing on iOS) so that it exists across
203         macOS and iOS, and rename it to DragAndDropSimulator. Additionally, rename DataInteractionTests to
204         DragAndDropTests.
205
206         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
207         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
208         (TestWebKitAPI::TEST):
209         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm: Renamed from Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm.
210         (testIconImage):
211         (testZIPArchive):
212         (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
213         (-[TestWKWebView editorContainsImageElement]):
214         (-[TestWKWebView editorValue]):
215         (makeCGRectValue):
216         (checkCGRectIsEqualToCGRectWithLogging):
217         (checkSelectionRectsWithLogging):
218         (checkRichTextTypePrecedesPlainTextType):
219         (checkFirstTypeIsPresentAndSecondTypeIsMissing):
220         (checkTypeIdentifierIsRegisteredAtIndex):
221         (checkEstimatedSize):
222         (checkSuggestedNameAndEstimatedSize):
223         (checkStringArraysAreEqual):
224         (checkDragCaretRectIsContainedInRect):
225         (checkJSONWithLogging):
226         (testIconImageData):
227         (runTestWithTemporaryTextFile):
228         (runTestWithTemporaryFolder):
229         (TestWebKitAPI::TEST):
230         (TestWebKitAPI::setUpTestWebViewForDataTransferItems):
231         (TestWebKitAPI::testDragAndDropOntoTargetElements):
232         (TestWebKitAPI::testIconImageData):
233         * TestWebKitAPI/cocoa/DragAndDropSimulator.h: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.h.
234         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.mm.
235         (-[WKWebView dropInteractionDelegate]):
236         (-[WKWebView dragInteractionDelegate]):
237         (-[WKWebView dropInteraction]):
238         (-[WKWebView dragInteraction]):
239         (-[MockDragDropSession initWithItems:location:window:allowMove:]):
240         (-[MockDragDropSession allowsMoveOperation]):
241         (-[MockDragDropSession isRestrictedToDraggingApplication]):
242         (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
243         (-[MockDragDropSession canLoadObjectsOfClass:]):
244         (-[MockDragDropSession canLoadObjectsOfClasses:]):
245         (-[MockDragDropSession items]):
246         (-[MockDragDropSession setItems:]):
247         (-[MockDragDropSession addItems:]):
248         (-[MockDragDropSession locationInView:]):
249         (-[MockDropSession initWithProviders:location:window:allowMove:]):
250         (-[MockDropSession isLocal]):
251         (-[MockDropSession progress]):
252         (-[MockDropSession setProgressIndicatorStyle:]):
253         (-[MockDropSession progressIndicatorStyle]):
254         (-[MockDropSession operationMask]):
255         (-[MockDropSession localDragSession]):
256         (-[MockDropSession hasItemsConformingToTypeIdentifier:]):
257         (-[MockDropSession canCreateItemsOfClass:]):
258         (-[MockDropSession loadObjectsOfClass:completion:]):
259         (-[MockDragSession initWithWindow:allowMove:]):
260         (-[MockDragSession localOperationMask]):
261         (-[MockDragSession externalOperationMask]):
262         (-[MockDragSession session]):
263         (-[MockDragSession localContext]):
264         (-[MockDragSession setLocalContext:]):
265         (dragAndDropEventNames):
266         (-[DragAndDropSimulatorApplication _cancelAllTouches]):
267         (-[DragAndDropSimulator initWithWebView:]):
268         (-[DragAndDropSimulator dealloc]):
269         (-[DragAndDropSimulator _resetSimulatedState]):
270         (-[DragAndDropSimulator observedEventNames]):
271         (-[DragAndDropSimulator simulateAllTouchesCanceled:]):
272         (-[DragAndDropSimulator runFrom:to:]):
273         (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
274         (-[DragAndDropSimulator finalSelectionRects]):
275         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
276         (-[DragAndDropSimulator _enqueuePendingAdditionalItemRequestLocations]):
277         (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
278         (-[DragAndDropSimulator _advanceProgress]):
279         (-[DragAndDropSimulator _currentLocation]):
280         (-[DragAndDropSimulator _scheduleAdvanceProgress]):
281         (-[DragAndDropSimulator sourceItemProviders]):
282         (-[DragAndDropSimulator externalItemProviders]):
283         (-[DragAndDropSimulator setExternalItemProviders:]):
284         (-[DragAndDropSimulator phase]):
285         (-[DragAndDropSimulator liftPreviews]):
286         (-[DragAndDropSimulator lastKnownDragCaretRect]):
287         (-[DragAndDropSimulator waitForInputSession]):
288         (-[DragAndDropSimulator insertedAttachments]):
289         (-[DragAndDropSimulator removedAttachments]):
290         (-[DragAndDropSimulator endDataTransfer]):
291         (-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
292         (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]):
293         (-[DragAndDropSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
294         (-[DragAndDropSimulator _webView:showCustomSheetForElement:]):
295         (-[DragAndDropSimulator _webView:willPerformDropWithSession:]):
296         (-[DragAndDropSimulator _webView:didInsertAttachment:]):
297         (-[DragAndDropSimulator _webView:didRemoveAttachment:]):
298         (-[DragAndDropSimulator _webView:focusShouldStartInputSession:]):
299         (-[DragAndDropSimulator _webView:didStartInputSession:]):
300         * TestWebKitAPI/ios/UIKitSPI.h:
301         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm: Added.
302         (-[DragAndDropSimulator initWithWebView:]):
303         (-[DragAndDropSimulator dealloc]):
304         (-[DragAndDropSimulator runFrom:to:]):
305         (-[DragAndDropSimulator insertedAttachments]):
306         (-[DragAndDropSimulator removedAttachments]):
307
308 2018-08-09  Sihui Liu  <sihui_liu@apple.com>
309
310         REGRESSION (r232083): WKWebView loses first-party cookies on iOS
311         https://bugs.webkit.org/show_bug.cgi?id=188443
312         <rdar://problem/42991584>
313
314         Reviewed by Chris Dumez.
315
316         Skip WebKit.WKHTTPCookieStoreWithoutProcessPool on iOS.
317
318         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
319
320 2018-08-09  Ross Kirsling  <ross.kirsling@sony.com>
321
322         Unreviewed follow-up fix for r234720.
323
324         * Scripts/webkitpy/bindings/main.py:
325         (BindingsTests.close_and_remove):
326         (BindingsTests.main):
327         Return to the original approach, since this seems to be the simplest cross-platform solution.
328
329 2018-08-09  Ali Juma  <ajuma@chromium.org>
330
331         Import WPTs for IntersectionObserver
332         https://bugs.webkit.org/show_bug.cgi?id=188416
333
334         Reviewed by Simon Fraser.
335
336         Enable IntersectionObserver in DumpRenderTree. 
337
338         * DumpRenderTree/mac/DumpRenderTree.mm:
339         (enableExperimentalFeatures):
340         (setWebPreferencesForTestOptions):
341         * WebKitTestRunner/TestController.cpp:
342         (WTR::TestController::resetPreferencesToConsistentValues):
343
344 2018-08-08  Ross Kirsling  <ross.kirsling@sony.com>
345
346         run-bindings-tests is not Win32-compatible
347         https://bugs.webkit.org/show_bug.cgi?id=188424
348
349         Reviewed by Fujii Hironori.
350
351         * Scripts/webkitpy/bindings/main.py:
352         (BindingsTests.main):
353         Stop leaking file descriptors.
354         (See https://www.logilab.org/blogentry/17873 for details, though the solution here is even simpler.)
355
356 2018-08-08  Alex Christensen  <achristensen@webkit.org>
357
358         Fix possible null dereference in WebBackForwardList::restoreFromState
359         https://bugs.webkit.org/show_bug.cgi?id=188418
360         <rdar://problem/42531726>
361
362         Reviewed by Chris Dumez.
363
364         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
365         (TestWebKitAPI::TEST):
366
367 2018-08-08  Ross Kirsling  <ross.kirsling@sony.com>
368
369         run-builtins-generator-tests does not correctly handle CRLFs from stderr
370         https://bugs.webkit.org/show_bug.cgi?id=188392
371
372         Reviewed by Fujii Hironori.
373
374         Background:
375         file.write converts LF to os.linesep, so if the input string contains CRLF, we end up writing CRCRLF to the file.
376
377         * Scripts/webkitpy/common/system/executive.py:
378         (Executive.run_command):
379         Normalize CRLF to LF in decoded stdout/stderr data, so that we don't return consumers a platform-specific string.
380
381 2018-08-08  Aditya Keerthi  <akeerthi@apple.com>
382
383         Unreviewed, add myself to committers list.
384
385         * Scripts/webkitpy/common/config/contributors.json:
386
387 2018-08-08  Commit Queue  <commit-queue@webkit.org>
388
389         Unreviewed, rolling out r234314, r234320, and r234321.
390         https://bugs.webkit.org/show_bug.cgi?id=188414
391
392         Caused email sign in issue (Requested by ryanhaddad on
393         #webkit).
394
395         Reverted changesets:
396
397         "Remove unused WKNavigationDelegatePrivate
398         decidePolicyForNavigationAction SPI"
399         https://bugs.webkit.org/show_bug.cgi?id=188077
400         https://trac.webkit.org/changeset/234314
401
402         "Fix API tests after r234314"
403         https://bugs.webkit.org/show_bug.cgi?id=188077
404         https://trac.webkit.org/changeset/234320
405
406         "Fix API tests after r234314"
407         https://bugs.webkit.org/show_bug.cgi?id=188077
408         https://trac.webkit.org/changeset/234321
409
410 2018-08-08  Wenson Hsieh  <wenson_hsieh@apple.com>
411
412         [iOS] fast/events/ios/contenteditable-autocapitalize.html is a flaky failure
413         https://bugs.webkit.org/show_bug.cgi?id=188401
414         <rdar://problem/32542300>
415
416         Reviewed by Ryosuke Niwa.
417
418         When run individually, fast/events/ios/contenteditable-autocapitalize.html passes consistently; however, when
419         run right after another layout test that finishes while the keyboard is shown, this test sometimes fails. This
420         is because each of the three steps of this test ends when UIScriptController's `didHideKeyboardCallback` is
421         invoked, and if the keyboard only begins to dismiss after the previous test completes, we have a race. When the
422         keyboard finishes dismissing after the UI script is evaluated, it will trigger UI script completion early and
423         skip over one of the steps in the layout test, resulting in a text diff failure.
424
425         To fix this, add a mechanism in WebKitTestRunner to wait until the keyboard is dismissed (with a short timeout)
426         as a part of resetting test controller state, before moving on to the next layout test.
427
428         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
429         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
430         (-[TestRunnerWKWebView didStartFormControlInteraction]):
431         (-[TestRunnerWKWebView didEndFormControlInteraction]):
432
433         Use these hooks to keep track of whether the previous test is presenting any form input UI.
434
435         (-[TestRunnerWKWebView isInteractingWithFormControl]):
436         * WebKitTestRunner/ios/TestControllerIOS.mm:
437         (WTR::handleKeyboardWillHideNotification):
438         (WTR::handleKeyboardDidHideNotification):
439         (WTR::TestController::platformInitialize):
440         (WTR::TestController::platformDestroy):
441
442         Register during initialization (and unregister during teardown) for keyboard hiding notifications, to keep track
443         of when the keyboard dismissal animation ends.
444
445         (WTR::TestController::platformResetStateToConsistentValues):
446
447         Make a couple of tweaks here: (1) if form input UI is being shown, tell the web view to resign first responder,
448         which causes the field to lose focus. (2) If necessary, wait for the current keyboard dismissal animation to
449         finish. This includes any keyboard dismissal animations triggered as a result of step (1).
450
451 2018-08-05  Darin Adler  <darin@apple.com>
452
453         [Cocoa] More tweaks and refactoring to prepare for ARC
454         https://bugs.webkit.org/show_bug.cgi?id=188245
455
456         Reviewed by Dan Bernstein.
457
458         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h: Use const void* for a
459         CFTypeRef instead of void*.
460
461         * DumpRenderTree/TestNetscapePlugIn/PluginObjectMac.mm:
462         (createCoreAnimationLayer): Use CFBridgingRetain.
463
464         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
465         (AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging casts.
466         (AccessibilityUIElement::textMarkerRangeForElement): Ditto.
467         (AccessibilityUIElement::selectedTextMarkerRange): Ditto.
468         (AccessibilityUIElement::textMarkerRangeLength): Ditto.
469         (AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute): Ditto.
470         (AccessibilityUIElement::indexForTextMarker): Ditto.
471         (AccessibilityUIElement::textMarkerForIndex): Ditto.
472         (AccessibilityUIElement::isTextMarkerValid): Ditto.
473         (AccessibilityUIElement::previousTextMarker): Ditto.
474         (AccessibilityUIElement::nextTextMarker): Ditto.
475         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
476         (createJSStringRef): Ditto.
477         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
478         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
479         (AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
480         (AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
481         (AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
482         (AccessibilityUIElement::endTextMarkerForBounds): Ditto.
483         (AccessibilityUIElement::startTextMarkerForBounds): Ditto.
484         (AccessibilityUIElement::textMarkerForPoint): Ditto.
485         (AccessibilityUIElement::accessibilityElementForTextMarker): Ditto.
486         (AccessibilityUIElement::startTextMarker): Ditto.
487         (AccessibilityUIElement::endTextMarker): Ditto.
488         (AccessibilityUIElement::setSelectedVisibleTextRange): Ditto.
489         (AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
490         (AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
491         (AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
492         (AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
493         (AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
494         (AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
495         (AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
496         (AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
497         (AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
498         (AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
499
500         * DumpRenderTree/mac/DumpRenderTree.mm:
501         (resetWebPreferencesToConsistentValues): Use bridging cast.
502         (dumpFramesAsText): Ditto.
503         (dumpBackForwardListForAllWindows): Use a modern for loop instead of
504         CFArray functions to iterate the array.
505         (dump): Use bridging cast.
506         (runTest): Ditto.
507
508         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
509         (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
510         (toUTI): Return a RetainPtr<CFStringRef>.
511         (-[LocalPasteboard types]): Use the above and bridging casts.
512         (-[LocalPasteboard availableTypeFromArray:]): Ditto.
513         (-[LocalPasteboard setData:forType:]): Ditto.
514         (-[LocalPasteboard dataForType:]): Ditto.
515         (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
516         instead of CFPropertyList.
517         (-[LocalPasteboard setString:forType:]): Use NSString method instead of
518         CFStringCreateExternalRepresentation.
519
520         * DumpRenderTree/mac/MockGeolocationProvider.h: Put CFTypeRef in a HashSet
521         instead of an Objective-C object pointer type.
522         * DumpRenderTree/mac/MockGeolocationProvider.mm:
523         (-[MockGeolocationProvider registerWebView:]): Update for above.
524         (-[MockGeolocationProvider unregisterWebView:]): Ditto.
525         (-[MockGeolocationProvider timerFired]): Ditto.
526
527         * DumpRenderTree/mac/MockWebNotificationProvider.h: Use CFTypeRef in
528         HashMap and HashSet instead of an Objective-C object pointer type.
529         * DumpRenderTree/mac/MockWebNotificationProvider.mm:
530         (-[MockWebNotificationProvider registerWebView:]): Update for above.
531         (-[MockWebNotificationProvider unregisterWebView:]): Ditto.
532         (-[MockWebNotificationProvider showNotification:fromWebView:]): Ditto.
533         (-[MockWebNotificationProvider cancelNotification:]): Ditto.
534         (-[MockWebNotificationProvider simulateWebNotificationClick:]): Ditto.
535
536         * DumpRenderTree/mac/ObjCPlugin.m:
537         (-[JSObjC retainObject:]): Use CFRetain instead of -[NSObject retain].
538
539         * DumpRenderTree/mac/TestRunnerMac.mm:
540         (TestRunner::addDisallowedURL): Use bridging cast.
541         (TestRunner::applicationCacheDiskUsageForOrigin): Ditto.
542         (TestRunner::clearApplicationCacheForOrigin): Ditto.
543         (originsArrayToJS): Ditto.
544         (TestRunner::copyDecodedHostName): Ditto.
545         (TestRunner::copyEncodedHostName): Ditto.
546         (TestRunner::queueLoad): Ditto.
547         (TestRunner::setDomainRelaxationForbiddenForURLScheme): Ditto.
548         (TestRunner::setMockGeolocationPositionUnavailableError): Ditto.
549         (TestRunner::setUserStyleSheetLocation): Ditto.
550         (TestRunner::setValueForUser): Ditto.
551         (TestRunner::overridePreference): Ditto.
552         (TestRunner::execCommand): Ditto.
553         (TestRunner::findString): Ditto.
554         (TestRunner::isCommandEnabled): Ditto.
555         (TestRunner::addOriginAccessWhitelistEntry): Ditto.
556         (TestRunner::removeOriginAccessWhitelistEntry): Ditto.
557         (TestRunner::addUserScript): Ditto.
558         (TestRunner::addUserStyleSheet): Ditto.
559         (TestRunner::evaluateInWebInspector): Ditto.
560         (TestRunner::evaluateScriptInIsolatedWorld): Ditto.
561         (TestRunner::authenticateSession): Ditto.
562         (TestRunner::grantWebNotificationPermission): Ditto.
563         (TestRunner::denyWebNotificationPermission): Ditto.
564         * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
565         (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Ditto.
566
567         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
568         (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging cast.
569         (WTR::AccessibilityUIElement::textMarkerRangeForElement): Ditto.
570         (WTR::AccessibilityUIElement::previousTextMarker): Ditto.
571         (WTR::AccessibilityUIElement::nextTextMarker): Ditto.
572         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
573         (WTR::AccessibilityUIElement::selectedTextMarkerRange): Ditto.
574         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
575         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
576         (WTR::AccessibilityUIElement::endTextMarkerForBounds): Ditto.
577         (WTR::AccessibilityUIElement::startTextMarkerForBounds): Ditto.
578         (WTR::AccessibilityUIElement::textMarkerForPoint): Ditto.
579         (WTR::AccessibilityUIElement::textMarkerForIndex): Ditto.
580         (WTR::AccessibilityUIElement::startTextMarker): Ditto.
581         (WTR::AccessibilityUIElement::endTextMarker): Ditto.
582         (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
583         (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
584         (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
585         (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
586         (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
587         (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
588         (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
589         (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
590         (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
591         (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
592
593         * WebKitTestRunner/PlatformMac.cmake: Added WebKitTestRunnerWindow.h and .mm files.
594         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Ditto.
595
596         * WebKitTestRunner/mac/EventSenderProxy.mm: Add include of WebKitTestRunnerWindow.h
597         so we can use the type and know it inherits from NSWindow.
598
599         * WebKitTestRunner/mac/PlatformWebViewMac.mm: Add include of WebKitTestRunnerWindow.h
600         so we can use the type and know it inherits from NSWindow. Moved WebKitTestRunnerWindow
601         class into a separate file.
602         (WTR::PlatformWebView::keyWindow): Call +[WebKitTestRunnerWindow _WTR_keyWindow]
603         instead of have a second copy of the implementation.
604
605         * WebKitTestRunner/mac/WebKitTestRunnerEvent.mm: Add include of WebKitTestRunnerWindow.h
606         so we can use the type and know it inherits from NSWindow. Also removed "using namespace".
607         (+[WebKitTestRunnerEvent mouseLocation]): Updated for above.
608
609         * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
610         (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
611         (-[LocalPasteboard availableTypeFromArray:]): Use modern for loop.
612         (-[LocalPasteboard setData:forType:]): Reordered method to be a tiny bit more efficient.
613         (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
614         instead of CFPropertyList.
615         (-[LocalPasteboard setString:forType:]): Use NSString method instead of
616         CFStringCreateExternalRepresentation.
617
618         * WebKitTestRunner/mac/WebKitTestRunnerWindow.h: Moved declaration of
619         WebKitTestRunnerWindow here so it can be included by files that need to know
620         what the type is and that it inherits from NSWindow.
621
622         * WebKitTestRunner/mac/WebKitTestRunnerWindow.mm: Added. Moved implementation here.
623         (+[WebKitTestRunnerWindow _WTR_keyWindow]): Use modern for loop instead of the old,
624         messier implementation.
625
626 2018-08-07  Alex Christensen  <achristensen@webkit.org>
627
628         Add a test for using SafeBrowsing
629         https://bugs.webkit.org/show_bug.cgi?id=188290
630
631         Reviewed by Chris Dumez.
632
633         Swizzle out SSBLookupContext to write tests for how WebKit responds when it responds in different ways.
634         We don't do anything with its results in WebKit yet, but when we do I'll add the expected behavior to this test.
635
636         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
637         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm: Added.
638         (-[SafeBrowsingDelegate webView:didFinishNavigation:]):
639         (TestWebKitAPI::TEST):
640
641 2018-08-07  Lucas Forschler  <lforschler@apple.com>
642
643         If there's a Radar in the ChangeLog, webkit-patch upload/create-bug should put the radar in the bug and set InRadar
644         https://bugs.webkit.org/show_bug.cgi?id=188235
645
646         Reviewed by Daniel Bates, Kocsen Chung, and Aakash Jain.
647
648         * Scripts/webkitpy/common/checkout/changelog.py: 
649         (ChangeLogEntry): Teach the ChangeLog tools how to parse a radar_id
650         * Scripts/webkitpy/common/checkout/changelog_unittest.py: Test out the new _parse_radar_id functionality
651         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
652         (Bugzilla.add_keyword_to_bug): Add logic to add keywords using the changeform
653         * Scripts/webkitpy/tool/commands/upload.py:
654         (Upload): Teach the upload step how to add radar information when creating a new bug.
655         * Scripts/webkitpy/tool/steps/__init__.py:
656         * Scripts/webkitpy/tool/steps/addradar.py: Added.
657         (AddRadar):
658         (AddRadar.run): Contains the logic to add the radar information to bugzilla.
659         * Scripts/webkitpy/tool/steps/createbug.py:
660         (CreateBug.run): set a "created_new_bug" state when creating a new bugzilla bug.
661
662 2018-08-07  Wenson Hsieh  <wenson_hsieh@apple.com>
663
664         Post-review feedback after r234614.
665         https://bugs.webkit.org/show_bug.cgi?id=188322
666         <rdar://problem/42455270>
667
668         Reviewed by Sam Weinig.
669
670         Use std::round instead of roundl — there's no reason to go from double to long double precision when rounding.
671
672         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
673         (rounded):
674
675 2018-08-07  Don Olmstead  <don.olmstead@sony.com>
676
677         [MiniBrowser][Win] Allow selection of recent user agents
678         https://bugs.webkit.org/show_bug.cgi?id=188371
679
680         Reviewed by Fujii Hironori.
681
682         Updates the user agent spoofing strings to the latest released
683         versions and adds Microsoft Edge's user agent.
684
685         Moves the menu item selection to the common base class, BrowserWindow
686         to support user agent spoofing in a WebKitLegacyBrowserWindow and
687         WebKitBrowserWindow.
688
689         * MiniBrowser/win/BrowserWindow.cpp: Added.
690         (BrowserWindow::setUserAgent):
691         * MiniBrowser/win/BrowserWindow.h:
692         * MiniBrowser/win/CMakeLists.txt:
693         * MiniBrowser/win/MainWindow.cpp:
694         (MainWindow::toggleMenuItem):
695         * MiniBrowser/win/MiniBrowserLib.rc:
696         * MiniBrowser/win/MiniBrowserLibResource.h:
697         * MiniBrowser/win/WebKitBrowserWindow.cpp:
698         * MiniBrowser/win/WebKitBrowserWindow.h:
699         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
700         (WebKitLegacyBrowserWindow::setUserAgent):
701         * MiniBrowser/win/WebKitLegacyBrowserWindow.h:
702
703 2018-08-07  Yusuke Suzuki  <utatane.tea@gmail.com>
704
705         Unreviewed, add a new address to my configuration
706
707         * Scripts/webkitpy/common/config/contributors.json:
708
709 2018-08-06  David Quesada  <david_quesada@apple.com>
710
711         webkitdirs.pm should default to iPhone SE for 64-bit testing
712         https://bugs.webkit.org/show_bug.cgi?id=188361
713
714         Reviewed by Daniel Bates.
715
716         Use iPhone SE as the default iOS Simulator device type. This corresponds to the change to webkitpy in r234467.
717
718         * Scripts/webkitdirs.pm:
719         (findOrCreateSimulatorForIOSDevice):
720         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
721         (parse_args):
722             Update the help text for --device-type to reflect the new default device.
723
724 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
725
726         [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
727         https://bugs.webkit.org/show_bug.cgi?id=188322
728         <rdar://problem/42455270>
729
730         Reviewed by Tim Horton.
731
732         Fixes an API test added in r234600, which had incorrect test expectations — namely, the width of the caret rect
733         was not in content view coordinates, unlike the x, y, and height.
734
735         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
736         (rounded):
737         (-[TestWKWebView waitForCaretViewFrameToBecome:]):
738         (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
739         (TestWebKitAPI::TEST):
740
741 2018-08-06  Ryan Haddad  <ryanhaddad@apple.com>
742
743         Unreviewed, rolling out r234569.
744
745         Breaks internal builds.
746
747         Reverted changeset:
748
749         "We should cache the compiled sandbox profile in a data vault"
750         https://bugs.webkit.org/show_bug.cgi?id=184991
751         https://trac.webkit.org/changeset/234569
752
753 2018-08-06  Fujii Hironori  <Hironori.Fujii@sony.com>
754
755         [Win][DLLLauncher] Remove --highDPI switch
756         https://bugs.webkit.org/show_bug.cgi?id=188255
757
758         Reviewed by Yusuke Suzuki.
759
760         Bug 149417 has added `--highDPI` switch to make MiniBrowser DPI
761         aware. But, Bug 158733 has made MiniBrowser always DPI aware. It
762         became useless since the change. Remove the switch.
763
764         This change fixes the issue all dump render tree tests are failing
765         in WinCairo port if high DPI display is connected.
766
767         * MiniBrowser/win/Common.cpp:
768         (parseCommandLine): Removed `--highDPI` switch.
769         * win/DLLLauncher/DLLLauncherMain.cpp:
770         (wWinMain): Do not call SetProcessDPIAware.
771         (shouldUseHighDPI): Deleted.
772
773 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
774
775         [iOS] Tests that try to interact with the QuickType bar time out on iOS 11+
776         https://bugs.webkit.org/show_bug.cgi?id=188335
777         <rdar://problem/32542437> and <rdar://problem/32542433>
778
779         Reviewed by Tim Horton.
780
781         Remove a UIScriptController helper method that attempted to wait for QuickType buttons to appear, and then send
782         touch events to the buttons. These were only used for the two tests which this patch refactors. See the
783         LayoutTests ChangeLog for more detail.
784
785         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
786         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
787         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
788         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
789         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
790         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
791         * TestRunnerShared/UIScriptContext/UIScriptController.h:
792         * TestRunnerShared/spi/UIKitTestSPI.h:
793
794         Remove an internal class declaration that is now unnecessary.
795
796         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
797         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
798         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
799
800 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
801
802         [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
803         https://bugs.webkit.org/show_bug.cgi?id=188322
804         <rdar://problem/42455270>
805
806         Reviewed by Tim Horton.
807
808         Adds plumbing in UIScriptController to grab the start and end selection handle rects for use in the new layout
809         test. Also adds new API tests to verify that when a web view resigns first responder, both caret and range
810         selection views are hidden, and when first responder status is restored, both caret and range selection views
811         are made visible again.
812
813         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
814         (WTR::UIScriptController::selectionStartGrabberViewRect const):
815         (WTR::UIScriptController::selectionEndGrabberViewRect const):
816         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
817         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
818         (WTR::UIScriptController::selectionStartGrabberViewRect const):
819         (WTR::UIScriptController::selectionEndGrabberViewRect const):
820         * TestRunnerShared/UIScriptContext/UIScriptController.h:
821         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
822         (-[TestWKWebView waitForCaretViewFrameToBecome:]):
823         (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
824         (webViewWithAutofocusedInput):
825
826         Pull out some common logic for creating a web view that allows programmatic focus to present the keyboard, and
827         immediately loading a web page with an autofocusing text field.
828
829         (TestWebKitAPI::TEST):
830         * TestWebKitAPI/cocoa/TestWKWebView.h:
831         * TestWebKitAPI/cocoa/TestWKWebView.mm:
832         (-[TestWKWebView caretViewRectInContentCoordinates]):
833         (-[TestWKWebView selectionViewRectsInContentCoordinates]):
834         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
835         (WTR::UIScriptController::selectionStartGrabberViewRect const):
836         (WTR::UIScriptController::selectionEndGrabberViewRect const):
837
838 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
839
840         [iOS] Layout tests that send HID events cause WebKitTestRunner to crash on recent SDKs
841         https://bugs.webkit.org/show_bug.cgi?id=188334
842         <rdar://problem/40630074>
843
844         Reviewed by Tim Horton.
845
846         To mark the end of previously dispatched IOHID events, HIDEventGenerator currently sends a vendor-defined event
847         and stores the completion callback ID for the previously dispatched events as vendor-defined data. When this
848         vendor-defined marker event is handled by the application, we then read the callback ID back from the event, map
849         it to a completion block, and invoke the completion block to signal that the previous HID event has been
850         processed.
851
852         This callback ID is an unsigned, so we tell IOKit that we need `sizeof(unsigned)` (4 bytes) to store it. On
853         shipping software, IOKit clamps this to a minimum of 8 bytes, i.e. `sizeof(CFIndex)`. When we later call
854         IOHIDEventGetIntegerValue to read the value of our vendor-defined data as a CFIndex, we get our expected
855         callback ID because the buffer was clamped to 8 bytes.
856
857         However, on recent iOS SDKs that contain the fix for <rdar://problem/20082284>, IOKit no longer clamps the size
858         of the vendor-defined data buffer to 8 bytes. This means that when we try to use IOHIDEventGetIntegerValue to
859         read our callback ID back, we end up getting a CFIndex where the lower 4 bytes are the callback ID we wrote, and
860         the upper 4 bytes are garbage. In the case where any of these upper 4 bytes are non-zero, we fail to map the
861         callback ID to a completion handler, and so we never finish dispatching the HID event, causing an exception to
862         be thrown.
863
864         To fix this, we adjust callback ID to be a CFIndex, which matches IOHIDEventGetIntegerValue's return type.
865
866         * WebKitTestRunner/ios/HIDEventGenerator.mm:
867         (+[HIDEventGenerator nextEventCallbackID]):
868         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
869
870         Also refactor a bit of `-_sendMarkerHIDEventWithCompletionBlock:` by using auto and move semantics.
871
872 2018-08-03  Ben Richards  <benton_richards@apple.com>
873
874         We should cache the compiled sandbox profile in a data vault
875         https://bugs.webkit.org/show_bug.cgi?id=184991
876
877         Reviewed by Ryosuke Niwa.
878
879         Added trace points for sandbox initialization
880
881         * Tracing/SystemTracePoints.plist:
882
883 2018-08-03  David Fenton  <david_fenton@apple.com>
884
885         Unreviewed, rolling out r234517.
886
887         Caused API test failures on iOS
888
889         Reverted changeset:
890
891         "[Cocoa] setCookie API fails to set session cookies for
892         defaultDataStore if processPool created but not used"
893         https://bugs.webkit.org/show_bug.cgi?id=188209
894         https://trac.webkit.org/changeset/234517
895
896 2018-08-03  Ben Richards  <benton_richards@apple.com>
897
898         Add configuration for automatic process pre-warming
899         https://bugs.webkit.org/show_bug.cgi?id=187108
900
901         Reviewed by Ryosuke Niwa.
902
903         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.
904
905         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
906         * TestWebKitAPI/Tests/WebKitCocoa/InitialWarmedProcessUsed.mm:
907         (TEST):
908         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
909         * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm:
910         (TEST):
911
912 2018-08-03  Aakash Jain  <aakash_jain@apple.com>
913
914         [ews-build] Add build step to Check Patch Relevance
915         https://bugs.webkit.org/show_bug.cgi?id=188295
916
917         Reviewed by Lucas Forschler.
918
919         * BuildSlaveSupport/ews-build/steps.py:
920         (CheckPatchRelevance): Added step to check patch relevance.
921         (CheckPatchRelevance._patch_is_relevant): Checks if the patch is relevant.
922         (CheckPatchRelevance._get_patch): Retrieves the patch from buildbot.
923         (CheckPatchRelevance._addToLog): Add the log message.
924         (CheckPatchRelevance.start):
925         * BuildSlaveSupport/ews-build/factories.py: Added CheckPatchRelevance step appropriately.
926
927 2018-08-03  Jer Noble  <jer.noble@apple.com>
928
929         Unreviewed gardening; r234534 changed the policy for what audio session is set when a
930         media element is paused. Updating the test to reflect the new policy.
931
932         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
933         (TestWebKitAPI::TEST):
934
935 2018-08-03  Zalan Bujtas  <zalan@apple.com>
936
937         [LFC][Floating] Now that the document renderer belongs to "complicated cases", adjust viewport stretching.
938         https://bugs.webkit.org/show_bug.cgi?id=188306
939
940         Reviewed by Antti Koivisto.
941
942         * LayoutReloaded/misc/LFC-passing-tests.txt:
943
944 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
945
946         [WPE] Use the new key mapper API from WPEBackend
947         https://bugs.webkit.org/show_bug.cgi?id=188216
948
949         Reviewed by Žan Doberšek.
950
951         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
952         (WTR::EventSenderProxy::keyDown): Use wpe_input_xkb_context_get_entries_for_key_code() to get the hardware key
953         code.
954         * wpe/backends/WindowViewBackend.cpp:
955         (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
956         (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
957         (WPEToolingBackends::WindowViewBackend::modifiers const):
958         * wpe/backends/WindowViewBackend.h:
959
960 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
961
962         [WPE] Implement MouseEvent.buttons
963         https://bugs.webkit.org/show_bug.cgi?id=187998
964
965         Reviewed by Žan Doberšek.
966
967         Pass modifiers to mouse events.
968
969         * WebKitTestRunner/EventSenderProxy.h:
970         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
971         (WTR::senderButtonToWPEButton):
972         (WTR::modifierForButton):
973         (WTR::EventSenderProxy::mouseDown):
974         (WTR::EventSenderProxy::mouseUp):
975         (WTR::EventSenderProxy::mouseMoveTo):
976         (WTR::EventSenderProxy::mouseScrollBy):
977         (WTR::wkEventModifiersToWPE):
978         (WTR::wpeKeySymForKeyRef):
979         (WTR::EventSenderProxy::keyDown):
980         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
981         * wpe/backends/WindowViewBackend.cpp:
982         (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
983         (WPEToolingBackends::WindowViewBackend::modifiers const):
984         * wpe/backends/WindowViewBackend.h:
985
986 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
987
988         [WPE] Use WPE key symbols and new API instead of xkbcommon and the key mapper
989         https://bugs.webkit.org/show_bug.cgi?id=188093
990
991         Reviewed by Žan Doberšek.
992
993         * MiniBrowser/wpe/main.cpp: Use WPE key symbols.
994         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
995         (WTR::wpeKeySymForKeyRef): Use WPE key symbols and wpe_unicode_to_key_code().
996         (WTR::EventSenderProxy::keyDown): Do not set unicode char to the event since it was removed.
997         * flatpak/org.webkit.WPE.yaml: Bump WPEBackend and WPEBackend-fdo versions.
998         * wpe/backends/WindowViewBackend.cpp:
999         (WPEToolingBackends::WindowViewBackend::handleKeyEvent): Do not set unicode char to the event since it was removed.
1000         * wpe/jhbuild.modules: Bump WPEBackend and WPEBackend-fdo versions.
1001
1002 2018-08-02  Nan Wang  <n_wang@apple.com>
1003
1004         AX: [iOS] add support to return the attributed string under the element
1005         https://bugs.webkit.org/show_bug.cgi?id=188276
1006         <rdar://problem/42872357>
1007
1008         Reviewed by Chris Fleizach.
1009
1010         * DumpRenderTree/AccessibilityUIElement.cpp:
1011         (attributedStringForElementCallback):
1012         (AccessibilityUIElement::getJSClass):
1013         * DumpRenderTree/AccessibilityUIElement.h:
1014         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1015         (AccessibilityUIElement::attributedStringForElement):
1016         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
1017         (WTR::AccessibilityUIElement::attributedStringForElement):
1018         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1019         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1020         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1021         (WTR::AccessibilityUIElement::attributedStringForElement):
1022
1023 2018-08-02  Ryan Haddad  <ryanhaddad@apple.com>
1024
1025         Skip API test DataInteractionTests.CustomActionSheetPopover on current SDKs.
1026         https://bugs.webkit.org/show_bug.cgi?id=175204
1027
1028         Unreviewed test gardening.
1029
1030         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1031
1032 2018-08-02  Sihui Liu  <sihui_liu@apple.com>
1033
1034         [Cocoa] setCookie API fails to set session cookies for defaultDataStore if processPool created but not used
1035         https://bugs.webkit.org/show_bug.cgi?id=188209
1036
1037         Reviewed by Geoffrey Garen.
1038
1039         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
1040         (TEST):
1041
1042 2018-08-02  Dan Bernstein  <mitz@apple.com>
1043
1044         Fixed WebKit.AttrStyle timing out on build.webkit.org.
1045
1046         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Changed from a URL that requires network
1047           access to one that doesn’t.
1048         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm:
1049         (TEST): Updated expected value.
1050
1051 2018-08-02  Wenson Hsieh  <wenson_hsieh@apple.com>
1052
1053         [iOS] Keyboard becomes unresponsive after pressing delete while pressing down on a character key with accents
1054         https://bugs.webkit.org/show_bug.cgi?id=188251
1055         <rdar://problem/37842108>
1056
1057         Reviewed by Tim Horton.
1058
1059         Adds a new API test to verify that clients (in this case, UIKit) is allowed to invoke
1060         -handleKeyWebEvent:withCompletionHandler: within the completion block of a prior invocation.
1061
1062         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1063         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm: Added.
1064         (TestWebKitAPI::TEST):
1065         * TestWebKitAPI/Tests/ios/TestInputDelegate.h: Added.
1066
1067         Pull some logic used to force an input session to start out from an existing API test file
1068         (WKWebViewAutofillTests) and into a separate helper class that is used by both the existing API tests and the
1069         new keyboard input test.
1070
1071         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
1072         (-[AutofillTestView initWithFrame:]):
1073         (TestWebKitAPI::TEST):
1074         (-[TestInputDelegate init]): Deleted.
1075         (-[TestInputDelegate _webView:focusShouldStartInputSession:]): Deleted.
1076         * TestWebKitAPI/ios/UIKitSPI.h:
1077
1078         Add some UIKit SPI utilized by the new API test.
1079
1080 2018-08-01  Dan Bernstein  <mitz@apple.com>
1081
1082         Optionally expose Attr::style to JavaScript
1083         https://bugs.webkit.org/show_bug.cgi?id=188226
1084         <rdar://problem/42818113>
1085
1086         Reviewed by Darin Adler.
1087
1088         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1089         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Added.
1090         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm: Added.
1091         (TEST):
1092
1093 2018-08-02  David Fenton  <david_fenton@apple.com>
1094
1095         Unreviewed, rolling out r234489.
1096
1097         Caused 50+ crashes and 60+ API failures on iOS
1098
1099         Reverted changeset:
1100
1101         "[WTF] Rename String::format to String::deprecatedFormat"
1102         https://bugs.webkit.org/show_bug.cgi?id=188191
1103         https://trac.webkit.org/changeset/234489
1104
1105 2018-08-01  Ross Kirsling  <ross.kirsling@sony.com>
1106
1107         TestWTF.WTF_NeverDestroyed.Construct output differs for MSVC in Debug mode
1108         https://bugs.webkit.org/show_bug.cgi?id=188244
1109
1110         Reviewed by Daniel Bates.
1111
1112         Follow-up to r234179. MSVC chooses not to inline the lambda in Debug mode. 
1113
1114         * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp:
1115
1116 2018-08-01  Tomas Popela  <tpopela@redhat.com>
1117
1118         [WTF] Rename String::format to String::deprecatedFormat
1119         https://bugs.webkit.org/show_bug.cgi?id=188191
1120
1121         Reviewed by Darin Adler.
1122
1123         It should be replaced with string concatenation.
1124
1125         * DumpRenderTree/win/DumpRenderTree.cpp:
1126         (applicationId):
1127         (main):
1128         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
1129         (TestWebKitAPI::Util::createURLForResource):
1130         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1131         (WTR::cacheTestRunnerCallback):
1132         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
1133         (WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
1134         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1135         (WTR::AccessibilityUIElement::attributedStringForRange):
1136         (WTR::AccessibilityUIElement::url):
1137         (WTR::stringAtOffset):
1138         * WebKitTestRunner/TestController.cpp:
1139         (WTR::TestController::didReceiveAuthenticationChallenge):
1140         (WTR::TestController::downloadDidFail):
1141         (WTR::originUserVisibleName):
1142         (WTR::userMediaOriginHash):
1143         (WTR::TestController::didNavigateWithNavigationData):
1144         (WTR::TestController::didPerformClientRedirect):
1145         (WTR::TestController::didPerformServerRedirect):
1146         (WTR::TestController::didUpdateHistoryTitle):
1147
1148 2018-08-01  Nan Wang  <n_wang@apple.com>
1149
1150         AX: AOM: Add ARIA IDL Attribute Reflection
1151         https://bugs.webkit.org/show_bug.cgi?id=184676
1152         <rdar://problem/39476882>
1153
1154         Reviewed by Chris Fleizach.
1155
1156         * DumpRenderTree/mac/DumpRenderTree.mm:
1157         (enableExperimentalFeatures):
1158         * WebKitTestRunner/TestController.cpp:
1159         (WTR::TestController::resetPreferencesToConsistentValues):
1160
1161 2018-08-01  Jonathan Bedard  <jbedard@apple.com>
1162
1163         Use iPhone SE as the default simulated device
1164         https://bugs.webkit.org/show_bug.cgi?id=188227
1165
1166         Reviewed by Aakash Jain.
1167
1168         * Scripts/webkitpy/port/ios_simulator.py:
1169         (IOSSimulatorPort):
1170
1171 2018-08-01  Commit Queue  <commit-queue@webkit.org>
1172
1173         Unreviewed, rolling out r234443 and r234445.
1174         https://bugs.webkit.org/show_bug.cgi?id=188224
1175
1176         Revision caused 3 api failures across all platforms.
1177         (Requested by Truitt on #webkit).
1178
1179         Reverted changesets:
1180
1181         "Add configuration for automatic process pre-warming"
1182         https://bugs.webkit.org/show_bug.cgi?id=187108
1183         https://trac.webkit.org/changeset/234443
1184
1185         "Add configuration for automatic process pre-warming"
1186         https://bugs.webkit.org/show_bug.cgi?id=187108
1187         https://trac.webkit.org/changeset/234445
1188
1189 2018-07-31  Ben Richards  <benton_richards@apple.com>
1190
1191         Add configuration for automatic process pre-warming
1192         https://bugs.webkit.org/show_bug.cgi?id=187108
1193
1194         Reviewed by Ryosuke Niwa.
1195
1196         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.
1197
1198         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1199         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1200         * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm: Added.
1201         (TEST):
1202
1203 2018-07-31  John Wilander  <wilander@apple.com>
1204
1205         Resource Load Statistics: Remove partitioned cookies for reduced complexity, lower memory footprint, and ability to support more platforms
1206         https://bugs.webkit.org/show_bug.cgi?id=188109
1207         <rdar://problem/42664391>
1208
1209         Reviewed by Brent Fulgham, Chris Dumez, and Alex Christensen.
1210
1211         This patch removes cookie partitioning which reduces the model to just
1212         blocked cookies (in third-party contexts) and first-party cookie access.
1213
1214         Several of the changes are renaming to reflect that there are no more
1215         cookie partitions.
1216
1217         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1218            Removed or renamed functions to reflect that there are no more
1219            partitioned cookies.
1220         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1221         (WTR::InjectedBundle::didReceiveMessageToPage):
1222         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1223         (WTR::TestRunner::statisticsUpdateCookieBlocking):
1224         (WTR::TestRunner::statisticsCallDidSetBlockCookiesForHostCallback):
1225         (WTR::TestRunner::setCookieStoragePartitioningEnabled): Deleted.
1226         (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction): Deleted.
1227         (WTR::TestRunner::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
1228         (WTR::TestRunner::statisticsUpdateCookiePartitioning): Deleted.
1229         (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost): Deleted.
1230         (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback): Deleted.
1231         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1232         * WebKitTestRunner/TestController.cpp:
1233         (WTR::TestController::statisticsUpdateCookieBlocking):
1234         (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction): Deleted.
1235         (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
1236         (WTR::TestController::statisticsUpdateCookiePartitioning): Deleted.
1237         (WTR::TestController::statisticsSetShouldPartitionCookiesForHost): Deleted.
1238         * WebKitTestRunner/TestController.h:
1239         * WebKitTestRunner/TestInvocation.cpp:
1240         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1241         (WTR::TestInvocation::didSetBlockCookiesForHost):
1242         (WTR::TestInvocation::didSetHasHadUserInteraction):
1243         (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost): Deleted.
1244         (WTR::TestInvocation::didSetHasHadNonRecentUserInteraction): Deleted.
1245         * WebKitTestRunner/TestInvocation.h:
1246         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1247         (WTR::initializeWebViewConfiguration):
1248
1249 2018-07-31  Alex Christensen  <achristensen@webkit.org>
1250
1251         Build fix.  Remove unused variable.
1252
1253         * TestWebKitAPI/Tests/WebCore/TransformationMatrix.cpp:
1254         (TestWebKitAPI::TEST):
1255         transform was never used. It was introduced in r205871
1256         Apparently I'm the first one to build in a certain configuration that found it.
1257
1258 2018-07-31  Fujii Hironori  <Hironori.Fujii@sony.com>
1259
1260         server_process.py should print returncode in debug log if the process crashed
1261         https://bugs.webkit.org/show_bug.cgi?id=188160
1262
1263         Reviewed by Konstantin Tokarev.
1264
1265         * Scripts/webkitpy/port/server_process.py:
1266         (ServerProcess.has_crashed): Put self._proc.returncode into the debug log message.
1267
1268 2018-07-31  Tomas Popela  <tpopela@redhat.com>
1269
1270         [WTF] String::formatWithArguments() is unused
1271         https://bugs.webkit.org/show_bug.cgi?id=187955
1272
1273         Reviewed by Darin Adler.
1274
1275         Remove tests for WTF::String::formatWithArguments() as it's unused and
1276         we are removing it.
1277
1278         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
1279
1280 2018-07-30  Aakash Jain  <aakash_jain@apple.com>
1281
1282         [ews-build] Fix typo in builder name for Bindings-tests-EWS.
1283
1284         * BuildSlaveSupport/ews-build/config.json: Changed 'tests' to 'Tests' to make it consistent with
1285         other builders.
1286
1287 2018-07-30 Aakash Jain  <aakash_jain@apple.com>
1288
1289         [ews-build] Add support for API tests in OpenSource EWS
1290         https://bugs.webkit.org/show_bug.cgi?id=188156
1291
1292         Reviewed by Lucas Forschler.
1293
1294         * BuildSlaveSupport/ews-build/config.json:
1295         * BuildSlaveSupport/ews-build/factories.py:
1296         (BuildFactory.__init__): Added triggers parameter.
1297         (BuildFactory): If trigger is defined, create and upload archive and trigger appropriate queues.
1298         (BuildFactory.propertiesToPassToTriggers): Pass all the required properties to triggered queue.
1299         (APITestsFactory): Factory for running API tests.
1300         * BuildSlaveSupport/ews-build/steps.py:
1301         (ConfigureBuild.start): Set the property only if property is defined in config.json. Also set the 
1302         source of the property.
1303
1304 2018-07-30  Aakash Jain  <aakash_jain@apple.com>
1305
1306         [ews-build] loadConfig should ensure that the triggers are valid
1307         https://bugs.webkit.org/show_bug.cgi?id=188134
1308
1309         Reviewed by Lucas Forschler.
1310
1311         * BuildSlaveSupport/ews-build/loadConfig.py:
1312         (checkValidBuilder): Added a check to ensure that the builder doesn't refernce non-existing scheduler.
1313         (checkValidSchedulers): Ensures that the scheduler is not un-used.
1314         * BuildSlaveSupport/ews-build/loadConfig_unittest.py: Updated unit-tests.
1315
1316 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
1317
1318         Unreviewed, fix typo in test expectations and mark another test as timing out
1319
1320         * TestWebKitAPI/glib/TestExpectations.json:
1321
1322 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
1323
1324         More unreviewed GTK test gardening
1325
1326         * TestWebKitAPI/glib/TestExpectations.json:
1327
1328 2018-07-27  Simon Fraser  <simon.fraser@apple.com>
1329
1330         Be more conservative with compositing layer creation when memory is low
1331         https://bugs.webkit.org/show_bug.cgi?id=187866
1332         rdar://problem/42366345
1333
1334         Reviewed by Zalan Bujtas.
1335         
1336         When process physical footprint is above a fraction of the jetsam limit, be more conservative in making
1337         compositing layers. We avoid compositing for these situations:
1338         1. Layers with 3D transforms which are affine (like translateZ(0)).
1339         2. Layers with will-change
1340         3. Layers for canvases (other than WebGL/WebGPU)
1341         
1342         We reuse some macOS code in MemoryPressureHandler() but choose different thresholds for iOS,
1343         falling into "conservative mode" at 50% of jetsam limit, and "strict mode" at 65%.
1344         Compositing chooses to be more conservative in either "conservative" or "strict" memory modes.
1345         
1346         Plumb through a "compositingPolicyOverride" both so that on-device testing isn't
1347         flakily falling into a different mode, and so that we can impose the conservative
1348         mode for testing.
1349
1350         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1351         (WTR::InjectedBundlePage::prepare):
1352
1353 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
1354
1355         Unreviewed GTK test gardening
1356
1357         * TestWebKitAPI/glib/TestExpectations.json:
1358
1359 2018-07-27  Alex Christensen  <achristensen@webkit.org>
1360
1361         Fix API tests after r234314
1362         https://bugs.webkit.org/show_bug.cgi?id=188077
1363
1364         Make API tests use new delegate method.
1365
1366         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1367         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1368         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
1369
1370 2018-07-27  Alex Christensen  <achristensen@webkit.org>
1371
1372         Fix API tests after r234314
1373         https://bugs.webkit.org/show_bug.cgi?id=188077
1374
1375         Make API tests use new delegate method.
1376
1377         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1378         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1379         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1380         (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1381         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1382         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1383         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
1384         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
1385         (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
1386         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
1387         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
1388
1389 2018-07-26  Andy VanWagoner  <andy@vanwagoner.family>
1390
1391         [INTL] Remove INTL sub-feature compile flags
1392         https://bugs.webkit.org/show_bug.cgi?id=188081
1393
1394         Reviewed by Michael Catanzaro.
1395
1396         * Scripts/webkitperl/FeatureList.pm:
1397         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1398
1399 2018-07-26  Chris Dumez  <cdumez@apple.com>
1400
1401         Loading a file URL and then issuing a reload right away causes the load to fail due to sandboxing
1402         https://bugs.webkit.org/show_bug.cgi?id=188078
1403         <rdar://problem/42562493>
1404
1405         Reviewed by Geoff Garen.
1406
1407         Add API test coverage. It exercises the right code path but unfortunately is not yet a regression
1408         test because TestWebKitAPI does not appear to be sandboxed (rdar://problem/42638129).
1409
1410         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1411         * TestWebKitAPI/Tests/WebKitCocoa/LoadFileThenReload.mm: Added.
1412         (-[LoadFileThenReloadDelegate webView:didFinishNavigation:]):
1413         (-[LoadFileThenReloadDelegate webView:didFailProvisionalNavigation:withError:]):
1414         (-[LoadFileThenReloadDelegate webView:didFailNavigation:withError:]):
1415         (TEST):
1416
1417 2018-07-26  Aaron Chu  <aaron_chu@apple.com>
1418
1419         Add Aaron Chu as a committer to contributors.json
1420         https://bugs.webkit.org/show_bug.cgi?id=188066
1421
1422         Unreviwed. Added myself as committer.
1423
1424         * Scripts/webkitpy/common/config/contributors.json:
1425
1426 2018-07-26  Aakash Jain  <aakash_jain@apple.com>
1427
1428         [ews-build] Add build step to run API Tests
1429         https://bugs.webkit.org/show_bug.cgi?id=188079
1430
1431         Reviewed by Lucas Forschler.
1432
1433         * BuildSlaveSupport/ews-build/steps.py:
1434         (TestWithFailureCount): Common class for various tests with failure count.
1435         (TestWithFailureCount.start): Configure Buildbot's logobserver.
1436         (TestWithFailureCount.commandComplete): Updates the failure count.
1437         (TestWithFailureCount.evaluateCommand): Set the step status appropriately.
1438         (TestWithFailureCount.getResultSummary): Set the step summary appropriately.
1439         (RunAPITests): Build step to run API tests.
1440         (RunAPITests.countFailures): Count the failures by parsing the output.
1441         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1442
1443 2018-07-26  Ross Kirsling  <ross.kirsling@sony.com>
1444
1445         String(View) should have a splitAllowingEmptyEntries function instead of a flag parameter
1446         https://bugs.webkit.org/show_bug.cgi?id=187963
1447
1448         Reviewed by Alex Christensen.
1449
1450         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
1451         Add tests for String::split and String::splitAllowingEmptyEntries.
1452
1453         * TestWebKitAPI/Tests/WTF/StringView.cpp:
1454         * WebKitTestRunner/TestController.cpp:
1455         (WTR::updateTestOptionsFromTestHeader):
1456         Update split/splitAllowingEmptyEntries usage.
1457
1458 2018-07-26  Commit Queue  <commit-queue@webkit.org>
1459
1460         Unreviewed, rolling out r234181 and r234189.
1461         https://bugs.webkit.org/show_bug.cgi?id=188075
1462
1463         These are not needed right now (Requested by thorton on
1464         #webkit).
1465
1466         Reverted changesets:
1467
1468         "Enable Web Content Filtering on watchOS"
1469         https://bugs.webkit.org/show_bug.cgi?id=187979
1470         https://trac.webkit.org/changeset/234181
1471
1472         "HAVE(PARENTAL_CONTROLS) should be true on watchOS"
1473         https://bugs.webkit.org/show_bug.cgi?id=187985
1474         https://trac.webkit.org/changeset/234189
1475
1476 2018-07-04  Darin Adler  <darin@apple.com>
1477
1478         Improve WebGPU implementation, including using Metal Objective-C protocols more simply and correctly
1479         https://bugs.webkit.org/show_bug.cgi?id=187333
1480
1481         Reviewed by Sam Weinig.
1482
1483         * TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm: Updated.
1484         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Updated.
1485         * TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm: Updated.
1486         * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm: Updated.
1487         * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm: Updated.
1488
1489 2018-07-25  Aakash Jain  <aakash_jain@apple.com>
1490
1491         [ews-build] Add build steps DownloadBuiltProduct and ExtractBuiltProduct
1492         https://bugs.webkit.org/show_bug.cgi?id=188031
1493
1494         Reviewed by Lucas Forschler.
1495
1496         * BuildSlaveSupport/ews-build/steps.py:
1497         (DownloadBuiltProduct): Added build step DownloadBuiltProduct.
1498         (ExtractBuiltProduct): Added build step ExtractBuiltProduct.
1499         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1500
1501 2018-07-25  Aakash Jain  <aakash_jain@apple.com>
1502
1503         [ews-build] Add build step UploadBuiltProduct
1504         https://bugs.webkit.org/show_bug.cgi?id=188016
1505
1506         Reviewed by Lucas Forschler.
1507
1508         * BuildSlaveSupport/ews-build/steps.py:
1509         (UploadBuiltProduct): Added build step UploadBuiltProduct.
1510         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-test.
1511
1512 2018-07-25  Aakash Jain  <aakash_jain@apple.com>
1513
1514         [ews-build] Add build step ArchiveBuiltProduct
1515         https://bugs.webkit.org/show_bug.cgi?id=188014
1516
1517         Reviewed by Lucas Forschler.
1518
1519         * BuildSlaveSupport/ews-build/steps.py:
1520         (ArchiveBuiltProduct): Added build step ArchiveBuiltProduct.
1521         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1522
1523 2018-07-25  Chris Dumez  <cdumez@apple.com>
1524
1525         navigator.userAgent may return outdated value after webView.customUserAgent is set
1526         https://bugs.webkit.org/show_bug.cgi?id=188009
1527         <rdar://problem/42566456>
1528
1529         Reviewed by Alex Christensen.
1530
1531         Add API test coverage.
1532
1533         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1534         * TestWebKitAPI/Tests/WebKitCocoa/CustomUserAgent.mm: Added.
1535         (TEST):
1536
1537 2018-07-25  Charlie Turner  <cturner@igalia.com>
1538
1539         [Flatpak] Pass more environment variables to sandbox
1540         https://bugs.webkit.org/show_bug.cgi?id=188002
1541
1542         Reviewed by Michael Catanzaro.
1543
1544         * flatpak/flatpakutils.py:
1545         (WebkitFlatpak.run_in_sandbox):
1546
1547 2018-07-25  Zan Dobersek  <zdobersek@igalia.com>
1548
1549         [WPE] Switch ViewBackend to using wpe_view_backend_exportable_fdo_egl APIs
1550         https://bugs.webkit.org/show_bug.cgi?id=187997
1551
1552         Reviewed by Carlos Garcia Campos.
1553
1554         Instead of the raw wpe_view_backend_exportable_fdo API, switch to using
1555         the EGL-oriented API that simply serves EGLImageKHR objects instead of
1556         raw buffer resources. This allows us not to wrangle with creating and
1557         managing lifetime of the same EGLImageKHR by ourselves.
1558
1559         ViewBackend now defines a wpe_view_backend_exportable_fdo_egl_client
1560         struct and uses wpe_view_backend_exportable_fdo_egl_create() to create
1561         the exportable object. This means that for each frame we're served an
1562         EGLImageKHR object that is passed on to the displayBuffer()
1563         implementation.
1564
1565         HeadlessViewBackend now just manages the pending and committed image
1566         objects. Width and height values used during pixel data retrieval are
1567         gathered from the ViewBackend's size that was specified when
1568         constructed.
1569
1570         WindowViewBackend similarly only manages the committed image object,
1571         not having to create an equivalent EGLImageKHR object from the raw
1572         buffer resource anymore.
1573
1574         Unused EGL entrypoints in both HeadlessViewBackend and WindowViewBackend
1575         classes are removed, and destructors for both classes are made virtual.
1576
1577         The WPEBackend-fdo version is bumped in order to have the EGL-specific
1578         export API available.
1579
1580         * flatpak/org.webkit.WPE.yaml:
1581         * wpe/backends/HeadlessViewBackend.cpp:
1582         (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend):
1583         (WPEToolingBackends::HeadlessViewBackend::~HeadlessViewBackend):
1584         (WPEToolingBackends::HeadlessViewBackend::createSnapshot):
1585         (WPEToolingBackends::HeadlessViewBackend::performUpdate):
1586         (WPEToolingBackends::HeadlessViewBackend::displayBuffer):
1587         * wpe/backends/HeadlessViewBackend.h:
1588         * wpe/backends/ViewBackend.cpp:
1589         (WPEToolingBackends::ViewBackend::initialize):
1590         * wpe/backends/ViewBackend.h:
1591         * wpe/backends/WindowViewBackend.cpp:
1592         (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
1593         (WPEToolingBackends::WindowViewBackend::~WindowViewBackend):
1594         (WPEToolingBackends::WindowViewBackend::displayBuffer):
1595         * wpe/backends/WindowViewBackend.h:
1596         * wpe/jhbuild.modules:
1597
1598 2018-07-24  Thomas Denney  <tdenney@apple.com>
1599
1600         Remove support for the double type from WHLSL
1601         https://bugs.webkit.org/show_bug.cgi?id=187977
1602
1603         Reviewed by Myles C. Maxfield.
1604
1605         * WebGPUShadingLanguageRI/All.js: Removed DoubleLiteral.js and DoubleLiteralType.js include.
1606         * WebGPUShadingLanguageRI/DoubleLiteral.js: Removed.
1607         * WebGPUShadingLanguageRI/DoubleLiteralType.js: Removed.
1608         * WebGPUShadingLanguageRI/Intrinsics.js: Removed double arithmetic functions.
1609         * WebGPUShadingLanguageRI/Parse.js:
1610         (parseTerm): Removed parsing of double literals.
1611         * WebGPUShadingLanguageRI/SPIRV.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
1612         * WebGPUShadingLanguageRI/SPIRVCodegen.js: Removed double type logic.
1613         * WebGPUShadingLanguageRI/StandardLibrary.js: Removed double type declarations.
1614         * WebGPUShadingLanguageRI/Test.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
1615         * WebGPUShadingLanguageRI/Test.js: Removed tests that test doubles or ported them to use floats.
1616         * WebGPUShadingLanguageRI/index.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
1617
1618 2018-07-24  Tim Horton  <timothy_horton@apple.com>
1619
1620         Enable Web Content Filtering on watchOS
1621         https://bugs.webkit.org/show_bug.cgi?id=187979
1622         <rdar://problem/42559346>
1623
1624         Reviewed by Wenson Hsieh.
1625
1626         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1627
1628 2018-07-24  Daniel Bates  <dabates@apple.com>
1629
1630         Move-constructing NeverDestroyed should move construct underlying object instead of copy constructing it
1631         https://bugs.webkit.org/show_bug.cgi?id=187971
1632
1633         Reviewed by Saam Barati.
1634
1635         Add unit tests to cover move constructing a NeverDestroyed with a non-const and const data type
1636         as well as invoking makeNeverDestroyed() with the result of a function that returns a move-only
1637         data type.
1638
1639         * TestWebKitAPI/CMakeLists.txt:
1640         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1641         * TestWebKitAPI/Tests/WTF/MoveOnlyLifecycleLogger.cpp: Added.
1642         (TestWebKitAPI::MoveOnlyLifecycleLogger::MoveOnlyLifecycleLogger):
1643         (TestWebKitAPI::MoveOnlyLifecycleLogger::~MoveOnlyLifecycleLogger):
1644         (TestWebKitAPI::MoveOnlyLifecycleLogger::operator=):
1645         (TestWebKitAPI::MoveOnlyLifecycleLogger::setName):
1646         (TestWebKitAPI::TEST):
1647         * TestWebKitAPI/Tests/WTF/MoveOnlyLifecycleLogger.h: Added.
1648         * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp:
1649         (TestWebKitAPI::TEST):
1650
1651 2018-07-24  Thomas Denney  <tdenney@apple.com>
1652         Minor changes to the WHLSL interpreter to support the new compiler
1653         https://bugs.webkit.org/show_bug.cgi?id=187728
1654
1655         Reviewed by Myles C. Maxfield.
1656
1657         This bug contains small changes that are make minor changes to the
1658         behaviour of the existing interpreter (the tests are unaffected and all
1659         still pass).
1660
1661         * WebGPUShadingLanguageRI/EnumType.js:
1662         (EnumType.prototype.get isEnum): Property added to EnumType and Type
1663         * WebGPUShadingLanguageRI/Evaluator.js: Correct typo
1664         * WebGPUShadingLanguageRI/Func.js:
1665         (Func.prototype.get isEntryPoint): Add boolean property
1666         * WebGPUShadingLanguageRI/FuncInstantiator.js:
1667         (FuncInstantiator.prototype.get instances): Public accessor for existing
1668         private field
1669         * WebGPUShadingLanguageRI/FunctionLikeBlock.js: Refactored the class so
1670         that it directly wraps a Func instance (therefore the only interface
1671         change is to the constructor and the addition of the func accessor).
1672         This change allows the de-inlining of functions.
1673         (FunctionLikeBlock):
1674         (FunctionLikeBlock.prototype.get func):
1675         (FunctionLikeBlock.prototype.get returnType):
1676         (FunctionLikeBlock.prototype.get parameters):
1677         (FunctionLikeBlock.prototype.get body):
1678         * WebGPUShadingLanguageRI/Inliner.js: Use the new FunctionLikeBlock
1679         constructor
1680         (Inliner.prototype.visitCallExpression):
1681         (Inliner):
1682         * WebGPUShadingLanguageRI/Intrinsics.js: Migrate the swizzle operators
1683         to native functions (with additional support in StandardLibrary.js).
1684         This reduces first-time compile-time from around 4s to around 0.1s.
1685         (Intrinsics):
1686         * WebGPUShadingLanguageRI/Lexer.js: Ensure that the parsing of multiline
1687         comments completes correctly
1688         (Lexer.prototype.next):
1689         (Lexer):
1690         * WebGPUShadingLanguageRI/MakeArrayRefExpression.js: Addition of type
1691         property, which is based on the type of the lValue and the semantics of
1692         the language (the @ operator yields an array reference with the thread
1693         scope).
1694         (MakeArrayRefExpression):
1695         (MakeArrayRefExpression.prototype.get type):
1696         * WebGPUShadingLanguageRI/NativeFunc.js: Add setter/getter for
1697         implementationData to support swizzle operator change
1698         (NativeFunc.prototype.get implementationData):
1699         (NativeFunc.prototype.set implementationData):
1700         * WebGPUShadingLanguageRI/Rewriter.js: Use new FunctionLikeBlock
1701         constructor
1702         (Rewriter.prototype.visitFunctionLikeBlock):
1703         * WebGPUShadingLanguageRI/StandardLibrary.js:
1704         (_generateSwizzle): Deleted.
1705         * WebGPUShadingLanguageRI/SwizzleOp.js: Introduces a new class for
1706         carrying metadata about swizzle operators so that they are implemented
1707         as native functions rather than generated at compile time.
1708         (SwizzleOp):
1709         (SwizzleOp.prototype.get outSize):
1710         (SwizzleOp.prototype.get components):
1711         (SwizzleOp.prototype.get inSize):
1712         (SwizzleOp.prototype.toString):
1713         (SwizzleOp.allSwizzleOperators.):
1714         (SwizzleOp.allSwizzleOperators):
1715         * WebGPUShadingLanguageRI/StandardLibrary.js: +        (SwizzleOp):
1716         (SwizzleOp.prototype.get outSize):
1717         (SwizzleOp.prototype.get components):
1718         (SwizzleOp.prototype.get inSize):
1719         (SwizzleOp.prototype.toString):
1720         (generateSwizzles):
1721         (_generateSwizzle): Deleted.
1722         * WebGPUShadingLanguageRI/Type.js: Addition of isEnum property, as
1723         above.
1724         (Type.prototype.get isEnum):
1725
1726 2018-07-24  Ryan Haddad  <ryanhaddad@apple.com>
1727
1728         Unreviewed, rolling out r234121.
1729
1730         Caused perf test failures.
1731
1732         Reverted changeset:
1733
1734         "We should cache the compiled sandbox profile in a data vault"
1735         https://bugs.webkit.org/show_bug.cgi?id=184991
1736         https://trac.webkit.org/changeset/234121
1737
1738 2018-07-24  Thibault Saunier  <tsaunier@igalia.com>
1739
1740         [Flatpak] Add openh264 as needed by WebRTC
1741         https://bugs.webkit.org/show_bug.cgi?id=187956
1742
1743         Reviewed by Philippe Normand.
1744
1745         * flatpak/org.webkit.WebKit.yaml:
1746
1747 2018-07-24  Ross Kirsling  <ross.kirsling@sony.com>
1748
1749         WebCore::URL::hostIsIPAddress needs a Windows implementation
1750         https://bugs.webkit.org/show_bug.cgi?id=187859
1751
1752         Reviewed by Fujii Hironori.
1753
1754         * TestWebKitAPI/Tests/WebCore/URL.cpp:
1755         Check for a few other ways an IP address could be invalid.
1756
1757 2018-07-24  Charlie Turner  <cturner@igalia.com>
1758
1759         [Flatpak] Avoid consuming unknown arguments in flatpak wrapper
1760         https://bugs.webkit.org/show_bug.cgi?id=187951
1761
1762         When running run-webkit-tests --wpe --debug, it was observed that
1763         both self.platform != 'wpe' and self.debug != True. This turned
1764         out to be because of the "args" argument consuming the remainder
1765         of future arguments that came after it. Since the first argument
1766         to load_from_args was the test script to run, it would end up
1767         never processing the other arguments supplied to the wrapper
1768         script.
1769
1770         Tested this by rebuilding GTK in debug mode, running the
1771         minibrowser with various extra options, and running some tests
1772         with various extra options.
1773
1774         Reviewed by Michael Catanzaro.
1775
1776         * flatpak/flatpakutils.py:
1777         (WebkitFlatpak.load_from_args):
1778
1779 2018-07-24  Thibault Saunier  <tsaunier@igalia.com>
1780
1781         [Flatpak] Remove now unnecessary 'hacks' for running tests
1782         https://bugs.webkit.org/show_bug.cgi?id=187608
1783
1784         Reviewed by Philippe Normand.
1785
1786         We used to need to not share X11 with the sandbox when running tests
1787         but it is not needed anymore as we do not mount `/tmp` on `/tmp` in the
1788         sandbox (we mount it on `/run/host/tmp` now).
1789
1790         This has the advantage of making running the MiniBrowser to display test
1791         results working again.
1792
1793         * flatpak/flatpakutils.py:
1794         (WebkitFlatpak.clean_args):
1795         (WebkitFlatpak.run_in_sandbox):
1796         (WebkitFlatpak._cleanup_faltpak_args_for_tests_if_needed): Deleted.
1797
1798 2018-07-23  Fujii Hironori  <Hironori.Fujii@sony.com>
1799
1800         webkitpy.port.server_process_unittest.TestServerProcess.test_basic failed on Windows Python
1801         https://bugs.webkit.org/show_bug.cgi?id=187581
1802
1803         Reviewed by Daniel Bates.
1804
1805         There are two failures in this test case:
1806         1. proc.poll() doesn't return 0.
1807         2. stderr is not output.
1808
1809         For failure #1, this is expected. the process should not exit at
1810         the time. proc.poll() should return None because the process is
1811         still alive.
1812
1813         This change added a new test to check proc.poll() becomes 0 after
1814         the process successfully exits.
1815
1816         For failure #2, stderr is not flushed even though stdout is
1817         flushed. This change uses '-u' command switch to force stdin,
1818         stdout and stderr to be totally unbuffered.
1819
1820         * Scripts/webkitpy/port/server_process_unittest.py:
1821         (TestServerProcess.test_basic): Added -u command switch. Do not
1822         flush stdout. Removed the special condition for Windows. Add a new
1823         test to check proc.poll() returns 0.
1824         (TestServerProcess.test_process_crashing): Added -u command
1825         switch. Do not flush stdout.
1826
1827 2018-07-23  Ross Kirsling  <ross.kirsling@sony.com>
1828
1829         WTF::StringView::split should have an allowEmptyEntries flag
1830         https://bugs.webkit.org/show_bug.cgi?id=187864
1831
1832         Reviewed by Konstantin Tokarev.
1833
1834         * TestWebKitAPI/Tests/WTF/StringView.cpp: Add test.
1835
1836 2018-07-23  Ben Richards  <benton_richards@apple.com>
1837
1838         We should cache the compiled sandbox profile in a data vault
1839         https://bugs.webkit.org/show_bug.cgi?id=184991
1840
1841         Reviewed by Ryosuke Niwa.
1842
1843         Added trace points for sandbox initialization
1844
1845         * Tracing/SystemTracePoints.plist:
1846
1847 2018-07-23  Zalan Bujtas  <zalan@apple.com>
1848
1849         DRT relies on [webView display] to call -viewWillDraw on the WebHTMLView
1850         https://bugs.webkit.org/show_bug.cgi?id=187924
1851         <rdar://problem/41745884>
1852
1853         Reviewed by Simon Fraser.
1854
1855         WebKit relies on -viewWillDraw getting called on WebHTMLView, even though that view has not been marked as needing display.
1856
1857         * DumpRenderTree/mac/PixelDumpSupportMac.mm:
1858         (createBitmapContextFromWebView):
1859
1860 2018-07-23  Chris Dumez  <cdumez@apple.com>
1861
1862         WebResourceLoadStatisticsStore fails to unregister itself as a MessageReceiver in its destructor
1863         https://bugs.webkit.org/show_bug.cgi?id=187910
1864         <rdar://problem/42356526>
1865
1866         Reviewed by Brent Fulgham.
1867
1868         Add API test coverage.
1869
1870         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1871         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
1872         (-[DisableITPDuringNavigationDelegate webView:didCommitNavigation:]):
1873         (-[DisableITPDuringNavigationDelegate webView:didFinishNavigation:]):
1874         (TEST):
1875         * TestWebKitAPI/Tests/WebKitCocoa/notify-resourceLoadObserver.html: Added.
1876
1877 2018-07-23  Daniel Bates  <dabates@apple.com>
1878
1879         test-webkitpy should take configuration command line options
1880         https://bugs.webkit.org/show_bug.cgi?id=187872
1881
1882         Reviewed by David Kilzer.
1883
1884         Add --debug and --release optional command line options and teach the test bots to invoke test-webkitpy
1885         with the appropriate configuration. At the moment these options are only meaningful on Mac since they
1886         effect the configuration lldbWebKitTester is built with and we only build lldbWebKitTester on Mac.
1887
1888         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1889         (RunPythonTests): Pass the configuration to test-webkitpy. On Mac this will effect
1890         how lldbWebKitTester is built. All other ports do not make use of the specified configuration.
1891         * Scripts/webkitpy/test/main.py:
1892         (_build_lldb_webkit_tester): Modified to take the configuration to build lldbWebKitTester. If
1893         the specified configuration is None then we fall back to using the default configuration (as set
1894         by script set-webkit-configuration).
1895         (Tester._parse_args): Add command line options --debug and --release to build lldbWebKitTester
1896         with a Debug configuration and a Release configuration, respectively
1897         (Tester._run_tests): Pass the configuration to build lldbWebKitTester that we parsed from
1898         the command line options. It may be None if neither --debug nor --release were passed.
1899
1900 2018-07-23  Commit Queue  <commit-queue@webkit.org>
1901
1902         Unreviewed, rolling out r233030.
1903         https://bugs.webkit.org/show_bug.cgi?id=187904
1904
1905         Broke tarball builds (Requested by mcatanzaro on #webkit).
1906
1907         Reverted changeset:
1908
1909         "run-gtk-tests (glib/common.py) cannot determine build
1910         directory when webKitBranchBuild=true"
1911         https://bugs.webkit.org/show_bug.cgi?id=185643
1912         https://trac.webkit.org/changeset/233030
1913
1914 2018-07-21  Simon Fraser  <simon.fraser@apple.com>
1915
1916         Fix lldb summarizers for HashMaps and HashSets
1917         https://bugs.webkit.org/show_bug.cgi?id=187883
1918
1919         Reviewed by Dan Bates.
1920         
1921         HashMap and HashSet summarizers were broken in various ways.
1922         
1923         The 'type summary add -x' regexp needs to match at the start and end of the string
1924         to avoid finding types nested inside other templates.
1925         
1926         The HashTable synthetic child code incorrectly used the type of the key, rather than
1927         the value when synthesizing children.
1928         
1929         Add HashMap and HashSet summarizers.
1930
1931         I tried to get synthetic children working directly for HashMap and HashSet, but was unable.
1932
1933         * lldb/lldbWebKitTester/main.cpp:
1934         (testSummaryProviders):
1935         * lldb/lldb_webkit.py:
1936         (__lldb_init_module):
1937         (__lldb_init_module.lldb_webkit):
1938         (WTFHashMap_SummaryProvider):
1939         (WTFHashSet_SummaryProvider):
1940         (WebCoreColorProvider._to_string_extended):
1941         (WebCoreURLProvider.to_string):
1942         (WTFHashMapProvider):
1943         (WTFHashMapProvider.__init__):
1944         (WTFHashMapProvider.tableSize):
1945         (WTFHashMapProvider.keyCount):
1946         (WTFHashSetProvider):
1947         (WTFHashSetProvider.__init__):
1948         (WTFHashSetProvider.tableSize):
1949         (WTFHashSetProvider.keyCount):
1950         (WTFHashTableProvider.tableSize):
1951         (WTFHashTableProvider):
1952         (WTFHashTableProvider.keyCount):
1953         (WTFHashTableProvider.get_child_at_index):
1954         (WTFHashTableProvider.update):
1955         * lldb/lldb_webkit_unittest.py:
1956         (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector):
1957         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
1958         (TestSummaryProviders):
1959         (TestSummaryProviders.serial_test_WTFHashMap_tablesize_and_size):
1960         (TestSummaryProviders.serial_test_WTFHashMap_of_vectors_tablesize_and_size):
1961         (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
1962
1963 2018-07-21  Simon Fraser  <simon.fraser@apple.com>
1964
1965         Add lldb formatters for WebCore geometry types
1966         https://bugs.webkit.org/show_bug.cgi?id=187884
1967
1968         Reviewed by Daniel Bates.
1969         
1970         Add lldb formatters for IntPoint, IntSize, IntRect, FloatPoint, FloatSize, FloatRect
1971         and LayoutRect.
1972         
1973         Testing is blocked by webkit.org/b/187872.
1974
1975         * lldb/lldbWebKitTester/main.cpp:
1976         (testSummaryProviders):
1977         * lldb/lldb_webkit.py:
1978         (__lldb_init_module.lldb_webkit):
1979         (__lldb_init_module):
1980         (WebCoreLayoutRect_SummaryProvider):
1981         (WebCoreIntSize_SummaryProvider):
1982         (WebCoreIntPoint_SummaryProvider):
1983         (WebCoreFloatSize_SummaryProvider):
1984         (WebCoreFloatPoint_SummaryProvider):
1985         (WebCoreIntRect_SummaryProvider):
1986         (WebCoreFloatRect_SummaryProvider):
1987         (WebCoreLayoutRectProvider):
1988         (WebCoreLayoutRectProvider.__init__):
1989         (WebCoreLayoutRectProvider.get_x):
1990         (WebCoreLayoutRectProvider.get_y):
1991         (WebCoreLayoutRectProvider.get_width):
1992         (WebCoreLayoutRectProvider.get_height):
1993         (WebCoreIntPointProvider):
1994         (WebCoreIntPointProvider.__init__):
1995         (WebCoreIntPointProvider.get_x):
1996         (WebCoreIntPointProvider.get_y):
1997         (WebCoreIntSizeProvider):
1998         (WebCoreIntSizeProvider.__init__):
1999         (WebCoreIntSizeProvider.get_width):
2000         (WebCoreIntSizeProvider.get_height):
2001         (WebCoreIntRectProvider):
2002         (WebCoreIntRectProvider.__init__):
2003         (WebCoreIntRectProvider.get_x):
2004         (WebCoreIntRectProvider.get_y):
2005         (WebCoreIntRectProvider.get_width):
2006         (WebCoreIntRectProvider.get_height):
2007         (WebCoreFloatPointProvider):
2008         (WebCoreFloatPointProvider.__init__):
2009         (WebCoreFloatPointProvider.get_x):
2010         (WebCoreFloatPointProvider.get_y):
2011         (WebCoreFloatSizeProvider):
2012         (WebCoreFloatSizeProvider.__init__):
2013         (WebCoreFloatSizeProvider.get_width):
2014         (WebCoreFloatSizeProvider.get_height):
2015         (WebCoreFloatRectProvider):
2016         (WebCoreFloatRectProvider.__init__):
2017         (WebCoreFloatRectProvider.get_x):
2018         (WebCoreFloatRectProvider.get_y):
2019         (WebCoreFloatRectProvider.get_width):
2020         (WebCoreFloatRectProvider.get_height):
2021
2022 2018-07-20  John Wilander  <wilander@apple.com>
2023
2024         Resource Load Statistics: Enable basic functionality in experimental debug mode
2025         https://bugs.webkit.org/show_bug.cgi?id=187835
2026         <rdar://problem/42408590>
2027
2028         Reviewed by Chris Dumez.
2029
2030         This patch makes the experimental ITP Debug Mode feature work, at least
2031         to a basic level. All of the changes to TestRunner are to support the
2032         layout tests for the functionality.
2033
2034         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2035         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2036         (WTR::InjectedBundle::didReceiveMessageToPage):
2037         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2038         (WTR::TestRunner::setStatisticsDebugMode):
2039         (WTR::TestRunner::statisticsCallDidSetDebugModeCallback):
2040         (WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
2041         (WTR::TestRunner::statisticsCallDidSetPrevalentResourceForDebugModeCallback):
2042         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2043         * WebKitTestRunner/TestController.cpp:
2044         (WTR::TestController::setStatisticsDebugMode):
2045         (WTR::TestController::setStatisticsPrevalentResourceForDebugMode):
2046         * WebKitTestRunner/TestController.h:
2047         * WebKitTestRunner/TestInvocation.cpp:
2048         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2049         (WTR::TestInvocation::didSetStatisticsDebugMode):
2050         (WTR::TestInvocation::didSetPrevalentResourceForDebugMode):
2051         * WebKitTestRunner/TestInvocation.h:
2052
2053 2018-07-20  Ryosuke Niwa  <rniwa@apple.com>
2054
2055         Picking a color from the color panel for typing attributes needs to inverse transform through color-filter
2056         https://bugs.webkit.org/show_bug.cgi?id=187846
2057
2058         Reviewed by Simon Fraser.
2059
2060         Fixed the bug that testRunner.execCommand was using the second argument as the value.
2061
2062         The second argument, aShowDefaultUI, should always be ignored in testRunner.execCommand,
2063         and the third argument should be used as the value. DumpRenderTree's implementation does this already.
2064
2065         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2066         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2067         (WTR::TestRunner::execCommand):
2068         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2069
2070 2018-07-20  Dean Jackson  <dino@apple.com>
2071
2072         Accidentally checked in the wrong version of these files.
2073
2074         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
2075         * lldb/lldbWebKitTester/main.cpp:
2076         (testSummaryProviders):
2077         * lldb/lldb_webkit_unittest.py:
2078         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
2079         (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color): Deleted.
2080         (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color): Deleted.
2081         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color): Deleted.
2082         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color): Deleted.
2083         (TestSummaryProviders.serial_test_WebCoreColorProvider_semantic_color): Deleted.
2084
2085 2018-07-20  Dean Jackson  <dino@apple.com>
2086
2087         Provide an lldb type summary for WebCore::Color
2088         https://bugs.webkit.org/show_bug.cgi?id=187776
2089
2090         Reviewed by Dan Bates.
2091
2092         This time without the tests because we don't want to build
2093         all of WebKit just for python tests.
2094
2095         * lldb/lldb_webkit.py: Add a Color summary provider.
2096         (__lldb_init_module):
2097         (WebCoreColor_SummaryProvider):
2098         (WebCoreColorProvider):
2099         (WebCoreColorProvider.__init__):
2100         (WebCoreColorProvider._is_extended):
2101         (WebCoreColorProvider._is_valid):
2102         (WebCoreColorProvider._is_semantic):
2103         (WebCoreColorProvider._to_string_extended):
2104         (WebCoreColorProvider.to_string):
2105
2106 2018-07-20  Brady Eidson  <beidson@apple.com>
2107
2108         Add WKNavigation/WKNavigationAction related SPI.
2109         https://bugs.webkit.org/show_bug.cgi?id=187826
2110
2111         Reviewed by Chris Dumez.
2112
2113         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
2114         (-[NavigationActionHasNavigationDelegate webView:didFinishNavigation:]):
2115         (-[NavigationActionHasNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2116         (TEST):
2117
2118 2018-07-20  Commit Queue  <commit-queue@webkit.org>
2119
2120         Unreviewed, rolling out r233943, r233988, r234004, and
2121         r234012.
2122         https://bugs.webkit.org/show_bug.cgi?id=187856
2123
2124         webkitpy tests are failing to build lldbWebKitTester
2125         (Requested by ryanhaddad on #webkit).
2126
2127         Reverted changesets:
2128
2129         "Provide an lldb type summary for WebCore::Color"
2130         https://bugs.webkit.org/show_bug.cgi?id=187776
2131         https://trac.webkit.org/changeset/233943
2132
2133         "Provide an lldb type summary for WebCore::Color"
2134         https://bugs.webkit.org/show_bug.cgi?id=187776
2135         https://trac.webkit.org/changeset/233988
2136
2137         "Provide an lldb type summary for WebCore::Color"
2138         https://bugs.webkit.org/show_bug.cgi?id=187776
2139         https://trac.webkit.org/changeset/234004
2140
2141         "Provide an lldb type summary for WebCore::Color"
2142         https://bugs.webkit.org/show_bug.cgi?id=187776
2143         https://trac.webkit.org/changeset/234012
2144
2145 2018-07-20  Philippe Normand  <pnormand@igalia.com>
2146
2147         [GTK][WPE] enable-media-capabilities websetting
2148         https://bugs.webkit.org/show_bug.cgi?id=187847
2149
2150         Reviewed by Carlos Garcia Campos.
2151
2152         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
2153         (testWebKitSettings): Unit test for the new enable-media-capabilities setting.
2154
2155 2018-07-19  Carlos Garcia Campos  <cgarcia@igalia.com>
2156
2157         [GLIB] jsc_context_evaluate_in_object() should receive an instance when a JSCClass is given
2158         https://bugs.webkit.org/show_bug.cgi?id=187798
2159
2160         Reviewed by Michael Catanzaro.
2161
2162         Update test cases to the new API and use a destroy function and vtable in the test case of calling
2163         jsc_context_evaluate_in_object() with a JSCClass.
2164
2165         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2166         (testJSCEvaluateInObject):
2167
2168 2018-07-19  Ross Kirsling  <ross.kirsling@sony.com>
2169
2170         TestWTF.WTF.StringConcatenate_Unsigned fails for unsigned short on Windows
2171         https://bugs.webkit.org/show_bug.cgi?id=187712
2172
2173         Reviewed by Fujii Hironori.
2174
2175         * TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
2176         Mark result of unsigned short test case as platform-specific,
2177         since Windows' behavior is actually *less* surprising here.
2178
2179 2018-07-19  Lucas Forschler  <lforschler@apple.com>
2180
2181         Teach the AWS Lambda to use the [minified]-platforms database
2182         https://bugs.webkit.org/show_bug.cgi?id=187817
2183         
2184         Reviewed by David Kilzer.
2185
2186         * WebKitArchiveSupport/lambda/register-archive-in-dynamodb.py:
2187         (lambda_handler): Add support for the platforms.webkit.org database
2188         * WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py:
2189         (lambda_handler): Add support for the minified-platforms.webkit.org database
2190
2191 2018-07-19  Dean Jackson  <dino@apple.com>
2192
2193         Provide an lldb type summary for WebCore::Color
2194         https://bugs.webkit.org/show_bug.cgi?id=187776
2195
2196         Dan Bates helped me with this attempted fix. Fingers crossed!
2197
2198         * Scripts/build-lldbwebkittester:
2199
2200 2018-07-19  Stephan Szabo  <stephan.szabo@sony.com>
2201
2202         [WinCairo] Support DEVELOPER_MODE for allowing inspection of web inspector
2203         https://bugs.webkit.org/show_bug.cgi?id=187786
2204
2205         Reviewed by Fujii Hironori.
2206
2207         * Scripts/webkitdirs.pm:
2208         (generateBuildSystemFromCMakeProject): Turn on DEVELOPER_MODE
2209         for WinCairo builds.
2210
2211 2018-07-19  Dean Jackson  <dino@apple.com>
2212
2213         Provide an lldb type summary for WebCore::Color
2214         https://bugs.webkit.org/show_bug.cgi?id=187776
2215
2216         Another attempted build fix for Debug.
2217
2218         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
2219         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
2220
2221 2018-07-19  Thomas Denney  <tdenney@apple.com>
2222
2223         [WHLSL] The interpreter doesn't support boolean short-circuiting
2224         https://bugs.webkit.org/show_bug.cgi?id=187779
2225
2226         Reviewed by Alex Christensen.
2227
2228         * WebGPUShadingLanguageRI/Evaluator.js:
2229         (Evaluator.prototype.visitLogicalExpression): RHS is only evaluated when necessary
2230         * WebGPUShadingLanguageRI/Test.js:
2231         (tests.booleanShortcircuiting): Adds 4 tests for the evaluation of logical expresions
2232
2233 2018-07-19  Dean Jackson  <dino@apple.com>
2234
2235         Provide an lldb type summary for WebCore::Color
2236         https://bugs.webkit.org/show_bug.cgi?id=187776
2237
2238         Attempted build fix.
2239
2240         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
2241
2242 2018-07-19  Brady Eidson  <beidson@apple.com>
2243
2244         Add an SPI policy action to allow clients to explicitly ask for a new process on a navigation.
2245         https://bugs.webkit.org/show_bug.cgi?id=187789
2246
2247         Reviewed by Andy Estes.
2248
2249         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2250         (-[PSONNavigationDelegate init]):
2251         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2252
2253 2018-07-19  Thibault Saunier  <tsaunier@igalia.com>
2254
2255         [Flatpak] Let flatpak process handle SIGINT
2256         https://bugs.webkit.org/show_bug.cgi?id=187521
2257
2258         Reviewed by Philippe Normand.
2259
2260         Ensuring that flatpak process ends properly and that the sandbox is teard down.
2261         It also avoids showing usless backtrace to the end user and makes gdb
2262         much more usable.
2263
2264         Also make flatpakutils not verbose by default
2265
2266         * flatpak/flatpakutils.py:
2267         (disable_signals):
2268         (WebkitFlatpak.run_in_sandbox):
2269         (WebkitFlatpak.run_gdb):
2270
2271 2018-07-18  Stephan Szabo  <stephan.szabo@sony.com>
2272
2273         Unreviewed. Fix contributors entry.
2274
2275         * Scripts/webkitpy/common/config/contributors.json:
2276
2277 2018-07-18  Dean Jackson  <dino@apple.com>
2278
2279         Provide an lldb type summary for WebCore::Color
2280         https://bugs.webkit.org/show_bug.cgi?id=187776
2281
2282         Reviewed by Dan Bates.
2283
2284         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Link against WebKit
2285             to get to WebCore.
2286         * lldb/lldbWebKitTester/main.cpp:
2287         (testSummaryProviders): Create some Color objects for testing.
2288
2289         * lldb/lldb_webkit.py: Add a Color summary provider.
2290         (__lldb_init_module):
2291         (WebCoreColor_SummaryProvider):
2292         (WebCoreColorProvider):
2293         (WebCoreColorProvider.__init__):
2294         (WebCoreColorProvider._is_extended):
2295         (WebCoreColorProvider._is_valid):
2296         (WebCoreColorProvider._is_semantic):
2297         (WebCoreColorProvider._to_string_extended):
2298         (WebCoreColorProvider.to_string):
2299
2300         * lldb/lldb_webkit_unittest.py: Tests.
2301         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
2302         (TestSummaryProviders):
2303         (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color):
2304         (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color):
2305         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color):
2306         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color):
2307
2308 2018-07-18  Truitt Savell  <tsavell@apple.com>
2309
2310         Unreviewed, rolling out r233934.
2311
2312         Revision caused 5 webkitpy failures on Mac and broke webkitpy
2313         testing on iOS simulator
2314
2315         Reverted changeset:
2316
2317         "Provide an lldb type summary for WebCore::Color"
2318         https://bugs.webkit.org/show_bug.cgi?id=187776
2319         https://trac.webkit.org/changeset/233934
2320
2321 2018-07-18  Chris Dumez  <cdumez@apple.com>
2322
2323         REGRESSION (r233897): CrashTracer: com.apple.WebKit.WebContent.Development at com.apple.WebKit: WKBooleanGetValue + 9
2324         https://bugs.webkit.org/show_bug.cgi?id=187784
2325         <rdar://problem/42329230>
2326
2327         Reviewed by Brady Eidson.
2328
2329         When process swapping on navigation, WebPageProxy::reattachToWebProcess() unregisters the page as a MessageReceiver
2330         from the old WebProcessProxy and registers itself as a MessageReceiver for the new WebProcessProxy instead. This
2331         means that after this point, IPC sent by the previous WebProcess to its WebPageProxy will fail.
2332
2333         When we process swap, we also navigate the page in the old WebProcess to about:blank, when the navigation to
2334         about:blank would complete, the WebKitTestRunner's injected bundle would try and send IPC to the WebPageProxy
2335         which would fail and would cause WKBundlePagePostSynchronousMessageForTesting() to return a null result. WKTR
2336         would crash when dereferencing this null result. This patch addresses this by dealing with the potential null
2337         result.
2338
2339         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2340         (WTR::InjectedBundle::shouldProcessWorkQueue const):
2341
2342 2018-07-18  Dean Jackson  <dino@apple.com>
2343
2344         Provide an lldb type summary for WebCore::Color
2345         https://bugs.webkit.org/show_bug.cgi?id=187776
2346
2347         Reviewed by Dan Bates.
2348
2349         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Link against WebKit
2350             to get to WebCore.
2351         * lldb/lldbWebKitTester/main.cpp:
2352         (testSummaryProviders): Create some Color objects for testing.
2353
2354         * lldb/lldb_webkit.py: Add a Color summary provider.
2355         (__lldb_init_module):
2356         (WebCoreColor_SummaryProvider):
2357         (WebCoreColorProvider):
2358         (WebCoreColorProvider.__init__):
2359         (WebCoreColorProvider._is_extended):
2360         (WebCoreColorProvider._is_valid):
2361         (WebCoreColorProvider._is_semantic):
2362         (WebCoreColorProvider._to_string_extended):
2363         (WebCoreColorProvider.to_string):
2364
2365         * lldb/lldb_webkit_unittest.py: Tests.
2366         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
2367         (TestSummaryProviders):
2368         (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color):
2369         (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color):
2370         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color):
2371         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color):
2372
2373 2018-07-18  Stephan Szabo  <stephan.szabo@sony.com>
2374
2375         Adding myself to contributors.json
2376
2377         Unreviewed contributors.json change.
2378
2379         * Scripts/webkitpy/common/config/contributors.json:
2380
2381 2018-07-18  Jer Noble  <jer.noble@apple.com>
2382
2383         -_beginAnimatedResizeWithUpdates: can leave view in bad state if called during an existing animation
2384         https://bugs.webkit.org/show_bug.cgi?id=187739
2385         <rdar://problem/42304518>
2386
2387         Reviewed by Tim Horton.
2388
2389         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
2390         (TEST):
2391
2392 2018-07-18  Jer Noble  <jer.noble@apple.com>
2393
2394         PiP from Element Fullscreen should match AVKit's behavior
2395         https://bugs.webkit.org/show_bug.cgi?id=187623
2396         <rdar://problem/41212379>
2397
2398         Reviewed by Jon Lee.
2399
2400         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2401         * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.html: Added.
2402         * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.mm: Added.
2403         (-[ExitFullscreenOnEnterPiPUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
2404         (-[ExitFullscreenOnEnterPiPUIDelegate _webViewDidEnterFullscreen:]):
2405         (-[ExitFullscreenOnEnterPiPUIDelegate _webViewDidExitFullscreen:]):
2406         (TestWebKitAPI::TEST):
2407
2408 2018-07-18  Aakash Jain  <aakash_jain@apple.com>
2409
2410         [ews-build] Add build step to run layout-test
2411         https://bugs.webkit.org/show_bug.cgi?id=187674
2412
2413         Reviewed by Lucas Forschler.
2414
2415         * BuildSlaveSupport/ews-build/steps.py:
2416         (RunWebKitTests): Added build step to run layout-tests. This is similar to current EWS.
2417         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
2418         * BuildSlaveSupport/ews-build/factories.py: Added build-step to run layout-test in iOSSimulatorFactory.
2419
2420 2018-07-18  Wenson Hsieh  <wenson_hsieh@apple.com>
2421
2422         Add SPI to defer running async script until after document load
2423         https://bugs.webkit.org/show_bug.cgi?id=187748
2424         <rdar://problem/42317378>
2425
2426         Reviewed by Ryosuke Niwa and Tim Horton.
2427
2428         Add an API test to verify that when the deferred async script configuration is set, async scripts will be
2429         executed after the DOMContentLoaded event.
2430
2431         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2432         * TestWebKitAPI/Tests/WebKitCocoa/RunScriptAfterDocumentLoad.mm: Added.
2433         (TEST):
2434
2435 2018-07-18  Charlie Turner  <cturner@igalia.com>
2436
2437         [WPE] Update WPEBackend in flatpak
2438         https://bugs.webkit.org/show_bug.cgi?id=187753
2439
2440         r233763 updated WPEBackend for the jhbuild, but not the flatpak. This
2441         caused WPE_BACKEND_CHECK_VERSION to not be defined, triggering a bug
2442         in the version guard,
2443
2444         #if defined(WPE_BACKEND_CHECK_VERSION) && WPE_BACKEND_CHECK_VERSION(0, 2, 0)
2445
2446         This doesn't work as intended, since the C preprocessor first expands
2447         all macro arguments in the #if expression before evaluating the
2448         expression. When WPE_BACKEND_CHECK_VERSION is not defined, this will
2449         lead to a syntax error and some head scratching.
2450
2451         A future patch should address the buggy macro check, when it is
2452         decided whether the assume the macro is always defined and bump
2453         the API requirements on WPEBackend, or to move the check into two
2454         conditionals to avoid the expansion problem.
2455
2456         Unreviewed build fix.
2457         
2458         * flatpak/org.webkit.WPE.yaml:
2459
2460 2018-07-18  Simon Fraser  <simon.fraser@apple.com>
2461
2462         Fix the parsing of colors in attributed string tests, and make it possible to dump the typing attributes
2463         https://bugs.webkit.org/show_bug.cgi?id=187747
2464
2465         Reviewed by Ryosuke Niwa.
2466         
2467         Add textInputController.attributedStringForTyping(), which returns a one-character
2468         attributed string whose attributes are the typing attributes, making it possible to
2469         test -[WebView typingAttributes].
2470         
2471         Sadly WebCore's convertObjcValueToValue() doesn't know how to convert NSDictionary,
2472         so we can't return -typingAttributes directly.
2473
2474         * DumpRenderTree/mac/TextInputControllerMac.m:
2475         (+[TextInputController isSelectorExcludedFromWebScript:]):
2476         (-[TextInputController attributedStringForTyping]):
2477
2478 2018-07-18  Carlos Garcia Campos  <cgarcia@igalia.com>
2479
2480         [GLIB] Add jsc_context_check_syntax() to GLib API
2481         https://bugs.webkit.org/show_bug.cgi?id=187694
2482
2483         Reviewed by Yusuke Suzuki.
2484
2485         Add a new test case.
2486
2487         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2488         (testJSCCheckSyntax):
2489         (main):
2490
2491 2018-07-17  Sihui Liu  <sihui_liu@apple.com>
2492
2493         REGRESSION: [macOS Sierra] TestWebKitAPI.WebKit.WebsiteDataStoreCustomPaths is a flaky failure
2494         https://bugs.webkit.org/show_bug.cgi?id=187066
2495         <rdar://problem/41609065>
2496
2497         Reviewed by Chris Dumez.
2498
2499         In r232668 we started to do reload if web process crashes by default. As we killed the web 
2500         process explicitly in this test, if web page got reloaded, messages would be sent again, 
2501         and flag set in message handler could keep the test continue to evaluate the expectation 
2502         without waiting for removeDataOfTypes to finish.
2503
2504         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2505         (-[WebsiteDataStoreCustomPathsMessageHandler webViewWebContentProcessDidTerminate:]):
2506         (TEST):
2507
2508 2018-07-17  Chris Dumez  <cdumez@apple.com>
2509
2510         Turn on PSON in WebKitTestRunner
2511         https://bugs.webkit.org/show_bug.cgi?id=186542
2512
2513         Reviewed by Brady Eidson.
2514
2515         Turn on PSON by default in WebKitTestRunner.
2516
2517         * WebKitTestRunner/TestOptions.h:
2518
2519 2018-07-17  Wenson Hsieh  <wenson_hsieh@apple.com>
2520
2521         Add an SPI hook to allow clients to yield document parsing and script execution
2522         https://bugs.webkit.org/show_bug.cgi?id=187682
2523         <rdar://problem/42207453>
2524
2525         Reviewed by Ryosuke Niwa.
2526
2527         Add a few tests to exercise the new document yield token SPI, verifying that clients can use the SPI to defer
2528         document load, and that doing so doesn't cause deferred `script` to execute in the wrong order (i.e. before
2529         synchronous script, or after "DOMContentLoaded").
2530
2531         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2532         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm: Added.
2533         (-[ParserYieldTokenPlugIn takeDocumentParserTokenAfterCommittingLoad]):
2534         (-[ParserYieldTokenPlugIn releaseDocumentParserToken]):
2535         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
2536         (-[ParserYieldTokenPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2537         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didFinishDocumentLoadForFrame:]):
2538         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
2539
2540         Add an injected bundle object that knows how to take and release multiple document parser yield tokens.
2541
2542         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenTests.h: Added.
2543         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenTests.mm: Added.
2544         (+[ParserYieldTokenTestWebView webView]):
2545         (-[ParserYieldTokenTestWebView bundle]):
2546         (-[ParserYieldTokenTestWebView schemeHandler]):
2547         (-[ParserYieldTokenTestWebView didFinishDocumentLoad]):
2548         (-[ParserYieldTokenTestWebView didFinishLoad]):
2549         (waitForDelay):
2550         (TEST):
2551         * TestWebKitAPI/Tests/WebKitCocoa/TestURLSchemeHandler.h: Added.
2552         * TestWebKitAPI/Tests/WebKitCocoa/TestURLSchemeHandler.mm: Added.
2553         (-[TestURLSchemeHandler webView:startURLSchemeTask:]):
2554         (-[TestURLSchemeHandler webView:stopURLSchemeTask:]):
2555         (-[TestURLSchemeHandler setStartURLSchemeTaskHandler:]):
2556         (-[TestURLSchemeHandler startURLSchemeTaskHandler]):
2557         (-[TestURLSchemeHandler setStopURLSchemeTaskHandler:]):
2558         (-[TestURLSchemeHandler stopURLSchemeTaskHandler]):
2559
2560         Add a new test helper class to handle custom schemes via a block-based API.
2561
2562         * TestWebKitAPI/Tests/WebKitCocoa/text-with-async-script.html: Added.
2563
2564         New test HTML page that contains a deferred script element, a synchronous script element, another deferred
2565         script element, and then some text, images, and links.
2566
2567         * TestWebKitAPI/Tests/WebKitCocoa/text-with-deferred-script.html: Added.
2568
2569 2018-07-17  Truitt Savell  <tsavell@apple.com>
2570
2571         Adding myself to Contributors.json
2572
2573         Unreviewed
2574
2575         * Scripts/webkitpy/common/config/contributors.json:
2576
2577 2018-07-17  Aditya Keerthi  <akeerthi@apple.com>
2578
2579         [macOS] TestWebKitAPI.PictureInPicture.WKUIDelegate is timing out
2580         https://bugs.webkit.org/show_bug.cgi?id=187730
2581
2582         Reviewed by Jer Noble.
2583
2584         This regression was introduced by r233865. PIP can now only be initiated from a
2585         window that is on screen.
2586
2587         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
2588         (TestWebKitAPI::TEST):
2589
2590 2018-07-17  John Wilander  <wilander@apple.com>
2591
2592         Add completion handlers to TestRunner functions setStatisticsLastSeen(), setStatisticsPrevalentResource(), setStatisticsVeryPrevalentResource(), setStatisticsHasHadUserInteraction(), and setStatisticsHasHadNonRecentUserInteraction()
2593         https://bugs.webkit.org/show_bug.cgi?id=187710
2594         <rdar://problem/42252757>
2595
2596         Reviewed by Chris Dumez.
2597
2598         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2599         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2600         (WTR::InjectedBundle::didReceiveMessageToPage):
2601         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2602         (WTR::TestRunner::setStatisticsLastSeen):
2603         (WTR::TestRunner::statisticsCallDidSetLastSeenCallback):
2604         (WTR::TestRunner::setStatisticsPrevalentResource):
2605         (WTR::TestRunner::statisticsCallDidSetPrevalentResourceCallback):
2606         (WTR::TestRunner::setStatisticsVeryPrevalentResource):
2607         (WTR::TestRunner::statisticsCallDidSetVeryPrevalentResourceCallback):
2608         (WTR::TestRunner::setStatisticsHasHadUserInteraction):
2609         (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction):
2610         (WTR::TestRunner::statisticsCallDidSetHasHadUserInteractionCallback):
2611         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2612         * WebKitTestRunner/TestController.cpp:
2613         (WTR::TestController::setStatisticsLastSeen):
2614         (WTR::TestController::setStatisticsPrevalentResource):
2615         (WTR::TestController::setStatisticsVeryPrevalentResource):
2616         (WTR::TestController::setStatisticsHasHadUserInteraction):
2617         (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction):
2618         * WebKitTestRunner/TestInvocation.cpp:
2619         (WTR::TestInvocation::didSetLastSeen):
2620         (WTR::TestInvocation::didSetPrevalentResource):
2621         (WTR::TestInvocation::didSetVeryPrevalentResource):
2622         (WTR::TestInvocation::didSetHasHadUserInteraction):
2623         (WTR::TestInvocation::didSetHasHadNonRecentUserInteraction):
2624         * WebKitTestRunner/TestInvocation.h:
2625
2626 2018-07-16  Jeremy Jones  <jeremyj@apple.com>
2627
2628         Fix API Test failures introduced by r233865
2629         https://bugs.webkit.org/show_bug.cgi?id=187720
2630
2631         Unreviewed APITest fix after r233865.
2632
2633         Fullscreen can now only be initiated from a window that is on screen.
2634
2635         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
2636         (TestWebKitAPI::TEST):
2637         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenTopContentInset.mm:
2638         (TestWebKitAPI::TEST):
2639
2640 2018-07-11  Dean Jackson  <dino@apple.com>
2641
2642         Allow removal of white backgrounds
2643         https://bugs.webkit.org/show_bug.cgi?id=187574
2644         <rdar://problem/41146792>
2645
2646         Reviewed by Simon Fraser.
2647
2648         Add a new menu item for punching out white backgrounds in MiniBrowser.
2649         In WebKitTestRunner, expose the new setting and hook that up to
2650         drawing a background in the WebView.
2651
2652         * MiniBrowser/mac/AppDelegate.m:
2653         (defaultConfiguration): Add _punchOutWhiteBackgroundsInDarkMode.
2654
2655         * MiniBrowser/mac/SettingsController.h: Ditto.
2656         * MiniBrowser/mac/SettingsController.m:
2657         (-[SettingsController _populateMenu]):
2658         (-[SettingsController validateMenuItem:]):
2659         (-[SettingsController togglePunchOutWhiteBackgroundsInDarkMode:]):
2660         (-[SettingsController punchOutWhiteBackgroundsInDarkMode]):
2661
2662         * MiniBrowser/mac/WK1BrowserWindowController.m:
2663         (-[WK1BrowserWindowController didChangeSettings]): Set the new preference.
2664
2665         * WebKitTestRunner/PlatformWebView.h: Expose a drawsBackground property.
2666         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp: Null implementation.
2667         (WTR::PlatformWebView::drawsBackground const):
2668         (WTR::PlatformWebView::setDrawsBackground):
2669         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp: Ditto.
2670         (WTR::PlatformWebView::drawsBackground const):
2671         (WTR::PlatformWebView::setDrawsBackground):
2672         * WebKitTestRunner/ios/PlatformWebViewIOS.mm: Call into the WKWebView and
2673         set its SPI.
2674         (WTR::PlatformWebView::drawsBackground const):
2675         (WTR::PlatformWebView::setDrawsBackground):
2676         * WebKitTestRunner/mac/PlatformWebViewMac.mm: Ditto.
2677         (WTR::PlatformWebView::drawsBackground const):
2678         (WTR::PlatformWebView::setDrawsBackground):
2679
2680         * WebKitTestRunner/TestController.cpp: Reset and copy the new preference.
2681         (WTR::TestController::resetPreferencesToConsistentValues):
2682         (WTR::updateTestOptionsFromTestHeader):
2683         * WebKitTestRunner/TestOptions.h:
2684         (WTR::TestOptions::hasSameInitializationOptions const):
2685
2686         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2687         (WTR::TestController::platformCreateWebView): If the option for punching
2688         out the background was set, tell the WebView to not draw its background.
2689
2690 2018-07-16  Aditya Keerthi  <akeerthi@apple.com>
2691
2692         [Datalist][macOS] Add suggestions UI for TextFieldInputTypes
2693         https://bugs.webkit.org/show_bug.cgi?id=186531
2694
2695         Reviewed by Tim Horton.
2696
2697         Added isShowingDatalistSuggestions testing hook in order to enable testing of the
2698         visibility of the suggestions view.
2699
2700         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2701         (WTR::UIScriptController::isShowingDataListSuggestions const):
2702         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2703         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2704         (WTR::UIScriptController::isShowingDataListSuggestions const):
2705         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2706         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2707         (WTR::UIScriptController::isShowingDataListSuggestions const):
2708
2709 2018-07-16  Yusuke Suzuki  <utatane.tea@gmail.com>
2710
2711         Add --target-path option to dump-class-layout
2712         https://bugs.webkit.org/show_bug.cgi?id=187687
2713
2714         Reviewed by Simon Fraser.
2715
2716         We add an escape hatch to dump-class-layout for specifying target path directly.
2717         This `--target-path` allows us to use dump-class-layout in the other ports
2718         like JSCOnly.
2719
2720         We can dump class layout if we build the target with clang by using the following command.
2721
2722         Tools/Scripts/dump-class-layout \
2723             --architecture=x86_64 \
2724             --target-path=path/to/libJavaScriptCore.so \
2725             JavaScriptCore \
2726             ScopeNode
2727
2728         * Scripts/dump-class-layout:
2729         (main):
2730
2731 2018-07-16  Sihui Liu  <sihui_liu@apple.com>
2732
2733         IndexedDB: closeAndDeleteDatabasesForOrigins should remove all databases for those origins
2734         https://bugs.webkit.org/show_bug.cgi?id=187631
2735         <rdar://problem/42164227>
2736
2737         Reviewed by Brady Eidson.
2738
2739         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2740         (TEST):
2741
2742 2018-07-15  Carlos Garcia Campos  <cgarcia@igalia.com>
2743
2744         [GLIB] Add API to evaluate code using a given object to store global symbols
2745         https://bugs.webkit.org/show_bug.cgi?id=187639
2746
2747         Reviewed by Michael Catanzaro.
2748
2749         Add a new test case.
2750
2751         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2752         (testJSCEvaluateInObject):
2753         (testJSCExceptions):
2754         (main):
2755
2756 2018-07-15  Zan Dobersek  <zdobersek@igalia.com>
2757
2758         [webkitpy] run-web-platform-tests should allow specifying custom WPT metadata directories
2759         https://bugs.webkit.org/show_bug.cgi?id=187353
2760
2761         Reviewed by Youenn Fablet.
2762
2763         When using run-web-platform-tests, allow specifying custom WPT metadata
2764         directory. This will avoid generating such metadata-filled directory
2765         from the port-specific JSON expectations file, and instead will search
2766         for the metadata files and the include manifest inside the specified
2767         directory. The MANIFEST.json file will also be generated under there.
2768
2769         Rationale for this change is prototyping using custom metadata
2770         directories and avoiding generating all this content from a JSON file.
2771         Using this by default in the future would avoid sporradic changes in how
2772         WPT handles metadata .ini files and releases us from the obligation of
2773         adjusting the generator for every such change. This would also allow
2774         managing this metadata content in a separate repository, avoiding
2775         polluting the main webkit.org repository with thousands of .ini files.
2776
2777         If this turns out to be the preferable way of managing the metadata
2778         content, the JSON files under WebPlatformTests/ and the related code in
2779         wpt_runner.py would be removed.
2780
2781         * Scripts/webkitpy/w3c/wpt_runner.py:
2782         (parse_args):
2783         (WPTRunner._wpt_run_paths):
2784         (WPTRunner.run):
2785         * Scripts/webkitpy/w3c/wpt_runner_unittest.py:
2786         (WPTRunnerTest.test_run_with_specified_options):
2787
2788 2018-07-13  Ross Kirsling  <ross.kirsling@sony.com>
2789
2790         [WinCairo] run-api-tests is timing out for almost all test cases
2791         https://bugs.webkit.org/show_bug.cgi?id=187547
2792
2793         Reviewed by Fujii Hironori.
2794
2795         * Scripts/webkitpy/port/server_process.py:
2796         (ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
2797         Still attempt to read from stdout/stderr even if the process has exited, as long as it's before the deadline.
2798
2799         * Scripts/webkitpy/port/server_process_unittest.py:
2800         (TestServerProcess.test_read_after_process_exits):
2801         Add test case.
2802
2803 2018-07-13  Ryan Haddad  <ryanhaddad@apple.com>
2804
2805         Add TestExpectations and baselines for iOS 12
2806         https://bugs.webkit.org/show_bug.cgi?id=187628
2807
2808         Reviewed by Alexey Proskuryakov.
2809
2810         * Scripts/webkitpy/port/ios.py:
2811         (IOSPort): Bump current version to 12.
2812
2813 2018-07-13  Ryan Haddad  <ryanhaddad@apple.com>
2814
2815         Add TestExpectations and baselines for Mojave.
2816         https://bugs.webkit.org/show_bug.cgi?id=187620
2817
2818         Reviewed by Alexey Proskuryakov.
2819
2820         * Scripts/webkitpy/port/mac.py:
2821         (MacPort): Bump current version to 10.14.
2822
2823 2018-07-13  Timothy Hatcher  <timothy@apple.com>
2824
2825         Add _drawsBackground to WKWebViewConfiguration.
2826         https://bugs.webkit.org/show_bug.cgi?id=187665
2827         rdar://problem/42182268
2828
2829         Reviewed by Tim Horton.
2830
2831         * TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm:
2832         (TestWebKitAPI.WebKit.ConfigurationDrawsBackground): Added.
2833
2834 2018-07-13  Chris Dumez  <cdumez@apple.com>
2835
2836         Add a FrameLoaderClient willInjectUserScriptForFrame callback
2837         https://bugs.webkit.org/show_bug.cgi?id=187565
2838         <rdar://problem/42095701>
2839
2840         Unreviewed WKTR fix after r233782.
2841
2842         * WebKitTestRunner/TestInvocation.cpp:
2843         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2844
2845 2018-07-13  Chris Dumez  <cdumez@apple.com>
2846
2847         Reduce size of WebCore::URL
2848         https://bugs.webkit.org/show_bug.cgi?id=186820
2849         <rdar://problem/42087508>
2850
2851         Unreviewed, re-generates Service worker registrations database used by API tests after r233789.
2852
2853         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2854         * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3: Removed.
2855         * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3-shm: Removed.
2856         * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-3.sqlite3: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3-wal.
2857         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2858         (TEST):
2859
2860 2018-07-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2861
2862         Make it easier to hit the significant rendered text layout milestone on pages with main article elements
2863         https://bugs.webkit.org/show_bug.cgi?id=187578
2864         <rdar://problem/42104637>
2865
2866         Reviewed by Ryosuke Niwa.
2867
2868         Tweak an existing layout test to additionally check that the significant text layout milestone is fired on a
2869         page with an article element that is clearly the "main" content on the page (i.e. much taller than all other
2870         articles).
2871
2872         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2873         * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone-article.html: Copied from Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html.
2874         * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html:
2875         * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
2876         (TEST):
2877
2878 2018-07-12  Fujii Hironori  <Hironori.Fujii@sony.com>
2879
2880         Change my status to be a WebKit reviewer.
2881
2882         Unreviewed status update.
2883
2884         * Scripts/webkitpy/common/config/contributors.json:
2885
2886 2018-07-12  Fujii Hironori  <Hironori.Fujii@sony.com>
2887
2888         Unreviewed contributors.json update
2889
2890         Just run "validate-committer-lists -c" to canonicalize the style.
2891
2892         * Scripts/webkitpy/common/config/contributors.json:
2893
2894 2018-07-12  Alex Christensen  <achristensen@webkit.org>
2895
2896         Reduce size of WebCore::URL
2897         https://bugs.webkit.org/show_bug.cgi?id=186820
2898
2899         Reviewed by Yusuke Suzuki and Youenn Fablet.
2900
2901         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2902         (TestWebKitAPI::TEST_F):
2903
2904 2018-07-12  Brady Eidson  <beidson@apple.com>
2905
2906         Make process-swap-on-navigation an experimental feature.
2907         <rdar://problem/41995053> and https://bugs.webkit.org/show_bug.cgi?id=187558
2908
2909         Reviewed by Chris Dumez.
2910
2911         Make sure WKTR doesn't enable ProcessSwapOnNavigation by default simply because it's an experimental feature.
2912
2913         * WebKitTestRunner/TestController.cpp:
2914         (WTR::TestController::createWebViewWithOptions):
2915         (WTR::TestController::resetPreferencesToConsistentValues):
2916
2917         * WebKitTestRunner/TestOptions.h:
2918         (WTR::TestOptions::shouldEnableProcessSwapOnNavigation const):
2919
2920 2018-07-12  Youenn Fablet  <youenn@apple.com>
2921
2922         Add a FrameLoaderClient willInjectUserScriptForFrame callback
2923         https://bugs.webkit.org/show_bug.cgi?id=187565
2924
2925         Reviewed by Alex Christensen.
2926
2927         Added new test runner API to check for willInjectUserScriptForFrame callback.
2928
2929         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2930         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2931         (WTR::InjectedBundle::resetUserScriptInjectedCount):
2932         (WTR::InjectedBundle::increaseUserScriptInjectedCount):
2933         (WTR::InjectedBundle::userScriptInjectedCount const):
2934         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2935         (WTR::InjectedBundlePage::InjectedBundlePage):
2936         (WTR::InjectedBundlePage::resetAfterTest):
2937         (WTR::InjectedBundlePage::willInjectUserScriptForFrame):
2938         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
2939         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2940         (WTR::TestRunner::userScriptInjectedCount const):
2941         (WTR::TestRunner::injectUserScript):
2942         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2943         * WebKitTestRunner/TestController.cpp:
2944         (WTR::TestController::injectUserScript):
2945         * WebKitTestRunner/TestController.h:
2946         * WebKitTestRunner/TestInvocation.cpp:
2947         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2948         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2949         (WTR::TestController::injectUserScript):
2950
2951 2018-07-12  Sihui Liu  <sihui_liu@apple.com>
2952
2953         IndexedDB: database file of subframe cannot be removed
2954         https://bugs.webkit.org/show_bug.cgi?id=187564
2955
2956         Reviewed by Youenn Fablet.
2957
2958         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2959         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2960         (TEST):
2961
2962 2018-07-12  Timothy Hatcher  <timothy@apple.com>
2963
2964         Make WebKit.LinkColorWithSystemAppearance work across system versions.
2965         https://bugs.webkit.org/show_bug.cgi?id=187573
2966
2967         Reviewed by Wenson Hsieh.
2968
2969         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
2970         (TestWebKitAPI.WebKit.LinkColorWithSystemAppearance): Dynamically generate the expected string.
2971
2972 2018-07-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2973
2974         [WPE] Pass the backend library name as command line parameter to the web process
2975         https://bugs.webkit.org/show_bug.cgi?id=186841
2976
2977         Reviewed by Žan Doberšek.
2978
2979         * MiniBrowser/wpe/main.cpp:
2980         (main): Stop using WPE_BACKEND_LIBRARY env var.
2981         * Scripts/run-wpe-tests:
2982         (WPETestRunner.__init__): Ditto.
2983         * Scripts/webkitpy/port/wpe.py:
2984         (WPEPort.setup_environ_for_server): Ditto.
2985         * wpe/backends/ViewBackend.cpp:
2986         (WPEToolingBackends::ViewBackend::ViewBackend): Call wpe_loader_init() to ensure WPEBackend-fdo is used.
2987         * wpe/jhbuild.modules: Upgrade WPEBackend to version 0.2.0.
2988
2989 2018-07-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2990
2991         [GLIB] Add API to allow creating variadic functions
2992         https://bugs.webkit.org/show_bug.cgi?id=187517
2993
2994         Reviewed by Michael Catanzaro.
2995
2996         Add test cases.
2997
2998         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2999         (testJSCFunction):
3000         (fooCreateWithFooV):
3001         (multiplyFooV):
3002
3003 2018-07-11  Carlos Garcia Campos  <cgarcia@igalia.com>
3004
3005         [GLIB] Add jsc_context_get_global_object() to GLib API
3006         https://bugs.webkit.org/show_bug.cgi?id=187515
3007
3008         Reviewed by Michael Catanzaro.
3009
3010         Add test cases.
3011
3012         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3013         (testJSCGlobalObject):
3014         (main):
3015
3016 2018-07-11  Carlos Garcia Campos  <cgarcia@igalia.com>
3017
3018         [GLIB] Handle G_TYPE_STRV in glib API
3019         https://bugs.webkit.org/show_bug.cgi?id=187512
3020
3021         Reviewed by Michael Catanzaro.
3022
3023         Add test cases.
3024
3025         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3026         (testJSCTypes):
3027         (joinFunction):
3028         (testJSCFunction):
3029
3030 2018-07-11  Aakash Jain  <aakash_jain@apple.com>
3031
3032         [ews-build] EWS should unapply patch and re-run jsc tests when patch fails jsc tests
3033         https://bugs.webkit.org/show_bug.cgi?id=187549
3034
3035         Reviewed by Alexey Proskuryakov.
3036
3037         * BuildSlaveSupport/ews-build/factories.py:
3038         (JSCTestsFactory.__init__):
3039         * BuildSlaveSupport/ews-build/steps.py:
3040         (CompileJSCOnlyToT): Build ToT without patch.
3041         (CompileJSCOnlyToT.doStepIf): Run this step only if patch failed to build.
3042         (RunJavaScriptCoreTests.evaluateCommand): Set patchFailedJSCTests property appropriately.
3043         (ReRunJavaScriptCoreTests): Re-runs JSC tests.
3044         (ReRunJavaScriptCoreTests.doStepIf): Run this step only if patch failed JSC tests.
3045         (ReRunJavaScriptCoreTests.evaluateCommand): Set patchFailedJSCTests property appropriately.
3046         (RunJavaScriptCoreTestsToT): Run JSC tests on ToT without patch.
3047         (RunJavaScriptCoreTestsToT.doStepIf): Run this step only if patch failed JSC tests.
3048         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
3049
3050 2018-07-11  Commit Queue  <commit-queue@webkit.org>
3051
3052         Unreviewed, rolling out r233742.
3053         https://bugs.webkit.org/show_bug.cgi?id=187577
3054
3055         Binary incompatible change with respect to Service Worker
3056         registration map (Requested by dydz on #webkit).
3057
3058         Reverted changeset:
3059
3060         "Reduce size of WebCore::URL"
3061         https://bugs.webkit.org/show_bug.cgi?id=186820
3062         https://trac.webkit.org/changeset/233742
3063
3064 2018-07-11  Aditya Keerthi  <akeerthi@apple.com>
3065
3066         REGRESSION (231276): Attempting to copy an image fails
3067         https://bugs.webkit.org/show_bug.cgi?id=187212
3068
3069         Reviewed by Ryosuke Niwa.
3070         <rdar://problem/41540074>
3071
3072         Augmented test to include a URL where the lastPathComponent looks similar to a
3073         file URL.
3074
3075         * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.html:
3076         * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.mm:
3077         (TestWebKitAPI::TEST):
3078
3079 2018-07-11  Alex Christensen  <achristensen@webkit.org>
3080
3081         Add SPI for immediate injection of user scripts
3082         https://bugs.webkit.org/show_bug.cgi?id=173342
3083         <rdar://problem/29202285>
3084
3085         Reviewed by Brady Eidson, Youenn Fablet, and Geoff Garen.
3086
3087         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
3088         (waitForMessage):
3089         (TEST):
3090
3091 2018-07-11  Myles C. Maxfield  <mmaxfield@apple.com>
3092
3093         Move WHLSL spec work to the W3C GPUWeb GitHub repository
3094
3095         See https://github.com/gpuweb/WHLSL
3096
3097         * WebGPUShadingLanguageRI/SpecWork/Makefile: Removed.
3098         * WebGPUShadingLanguageRI/SpecWork/WSL.g4: Removed.
3099         * WebGPUShadingLanguageRI/SpecWork/WSL.ott: Removed.
3100         * WebGPUShadingLanguageRI/SpecWork/source/conf.py: Removed.
3101         * WebGPUShadingLanguageRI/SpecWork/source/index.rst: Removed.
3102
3103 2018-07-11  Dean Jackson  <dino@apple.com>
3104
3105         Force WKTR to use the light appearance
3106         https://bugs.webkit.org/show_bug.cgi?id=187572
3107         <rdar://problem/42097805>
3108
3109         Reviewed by Simon Fraser.
3110
3111         Set the NSAppearance on the NSWindow to light mode.
3112
3113         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3114         (WTR::PlatformWebView::PlatformWebView): Use the Aqua appearance.
3115
3116 2018-07-11  Alex Christensen  <achristensen@webkit.org>
3117
3118         Reduce size of WebCore::URL
3119         https://bugs.webkit.org/show_bug.cgi?id=186820
3120
3121         Reviewed by Yusuke Suzuki.
3122
3123         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3124         (TestWebKitAPI::TEST_F):
3125
3126 2018-07-11  Youenn Fablet  <youenn@apple.com>
3127
3128         Fix remaining Cross-Origin-Resource-Policy failures, if any
3129         https://bugs.webkit.org/show_bug.cgi?id=186761
3130         <rdar://problem/41209829>
3131
3132         Reviewed by Alex Christensen.
3133
3134         * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp:
3135         (TestWebKitAPI::TEST):
3136
3137  2018-07-11  Aakash Jain  <aakash_jain@apple.com>
3138  
3139         [ews-build] EWS should unapply the patch and build ToT when patch fails to build
3140         https://bugs.webkit.org/show_bug.cgi?id=187358
3141  
3142         Reviewed by Alexey Proskuryakov.
3143  
3144         * BuildSlaveSupport/ews-build/factories.py:
3145         (BuildFactory.__init__):
3146         * BuildSlaveSupport/ews-build/steps.py:
3147         (CompileWebKit): Set haltOnFailure to false so as to run next steps (e.g.: un-apply patch, compile ToT).
3148         (CompileWebKit.evaluateCommand): Set patchFailedToBuild property.
3149         (CompileWebKitToT): Build ToT without patch.
3150         (CompileWebKitToT.doStepIf): Run this step only if patch failed to build.
3151         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests. Also lower-cased Release and Debug.
3152
3153 2018-07-11  Robin Morisset  <rmorisset@apple.com>
3154
3155         [WSL] WIP, more of the spec
3156         https://bugs.webkit.org/show_bug.cgi?id=186310
3157
3158         Rubberstamped by Filip Pizlo.
3159
3160         Fixed a few issues with the formal rules (such as adding the restrictions on pointers for compilation to SpirV),
3161         and started writing some of the english in the spec.
3162
3163         * WebGPUShadingLanguageRI/SpecWork/WSL.ott:
3164         * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
3165
3166 2018-07-10  Aakash Jain  <aakash_jain@apple.com>
3167
3168         [ews-build] Add build step to UnApply patch
3169         https://bugs.webkit.org/show_bug.cgi?id=187357
3170
3171         Reviewed by Alexey Proskuryakov.
3172
3173         * BuildSlaveSupport/ews-build/steps.py:
3174         (UnApplyPatchIfRequired.__init__): Pass alwaysUseLatest parameter in order to unapply the patch.
3175         (UnApplyPatchIfRequired.doStepIf): Run this step only if patch failed to build or failed test. These
3176         properties will be set by build-steps for build and test.
3177         (UnApplyPatchIfRequired.hideStepIf): Hide this step if it is not run.
3178
3179 2018-07-10  Dewei Zhu  <dewei_zhu@apple.com>
3180
3181         Update ARES-6.patch file accordingly for r233631.
3182         https://bugs.webkit.org/show_bug.cgi?id=187534
3183
3184         Reviewed by Saam Barati.
3185
3186         Update ARES-6.patch file acoordingly after ARES-6 plan file change to
3187         avoid warning while applying the patch.
3188
3189         * Scripts/webkitpy/benchmark_runner/data/patches/webserver/ARES-6.patch:
3190
3191 2018-07-10  Tim Horton  <timothy_horton@apple.com>
3192
3193         doAfterNextPresentationUpdate should not be called while content is hidden due to animated resize
3194         https://bugs.webkit.org/show_bug.cgi?id=187500
3195         <rdar://problem/41294139>
3196
3197         Reviewed by Simon Fraser.
3198
3199         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
3200         (-[AnimatedResizeWebView _endAnimatedResize]):
3201         Set didEndAnimatedResize before calling super, because it makes the
3202         new test easier and doesn't affect any of the existing ones.
3203
3204         (AnimatedResizeBlocksViewportFitChanges):
3205         This doAfterNextPresentationUpdate is always called during animated resize,
3206         and then synchronously waited for, so it /must/ use
3207         _doAfterNextPresentationUpdateWithoutWaitingForAnimatedResizeWithTesting.
3208         
3209         (AnimatedResizeBlocksDoAfterNextPresentationUpdate):
3210         Add a test ensuring that doAfterNextPresentationUpdate is deferred
3211         until endAnimatedResize is called.
3212
3213         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
3214         (-[WKWebView _test_waitForDidFinishNavigation]):
3215         _test_waitForDidFinishNavigation is sometimes called during animated resize,
3216         and synchronously waits for a doAfterNextPresentationUpdate, so
3217         it cannot wait for the animated resize to complete.
3218
3219 2018-07-10  Fujii Hironori  <Hironori.Fujii@sony.com>
3220
3221         [GTK][WPE] TestWTF and TestJSC fail to compile due to missing forwarding headers
3222         https://bugs.webkit.org/show_bug.cgi?id=184441
3223
3224         Reviewed by Michael Catanzaro.
3225
3226         All executables of TestWebKitAPI need the forwarding headers of
3227         WebCore and PAL because config.h includes
3228         <WebCore/PlatformExportMacros.h> and <pal/ExportMacros.h>.
3229
3230         The forwarding headers of WebCore are generated by
3231         generate-forwarding-headers.pl in GTK and WPE ports. The
3232         forwarding headers of PAL are generated by
3233         WEBKIT_MAKE_FORWARDING_HEADERS in all CMake ports.
3234
3235         * TestWebKitAPI/PlatformGTK.cmake: Added PALForwardingHeaders to
3236         ForwardingHeadersForTestWebKitAPI_NAME. Added dependencies of
3237         ${ForwardingHeadersForTestWebKitAPI_NAME} to TestJSC.
3238         * TestWebKitAPI/PlatformWPE.cmake: Ditto.
3239
3240 2018-07-10  Stephan Szabo  <stephan.szabo@sony.com>
3241
3242         [WinCairo] Support display of webinspector ui on non-legacy minibrowser
3243         https://bugs.webkit.org/show_bug.cgi?id=187415
3244
3245         Reviewed by Brian Burg.
3246
3247         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3248         (WebKitBrowserWindow::WebKitBrowserWindow):
3249
3250 2018-07-10  John Wilander  <wilander@apple.com>
3251
3252         Resource Load Statistics: Make testRunner.statisticsResetToConsistentState() take a completion handler
3253         https://bugs.webkit.org/show_bug.cgi?id=187499
3254         <rdar://problem/41999431>
3255
3256         Reviewed by Chris Dumez.
3257
3258         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3259         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3260         (WTR::InjectedBundle::didReceiveMessageToPage):
3261         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3262         (WTR::TestRunner::statisticsResetToConsistentState):
3263         (WTR::TestRunner::statisticsCallDidResetToConsistentStateCallback):
3264         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3265         * WebKitTestRunner/TestController.cpp:
3266         (WTR::TestController::statisticsResetToConsistentState):
3267         * WebKitTestRunner/TestInvocation.cpp:
3268         (WTR::TestInvocation::didResetStatisticsToConsistentState):
3269         * WebKitTestRunner/TestInvocation.h:
3270
3271 2018-07-10  Ryosuke Niwa  <rniwa@webkit.org>
3272
3273         Disable cross-origin-window-policy by default
3274         https://bugs.webkit.org/show_bug.cgi?id=187509
3275
3276         Reviewed by Chris Dumez.
3277
3278         Enable the feature for testing purposes. DumpRenderTree does this already in enableExperimentalFeatures.
3279
3280         * WebKitTestRunner/TestController.cpp:
3281         (WTR::TestController::resetPreferencesToConsistentValues):
3282
3283 2018-07-10  Thibault Saunier  <tsaunier@igalia.com>
3284
3285         [Flatpak] Feature options to build-webkit and --makeargs are not passed inside the sandbox
3286         https://bugs.webkit.org/show_bug.cgi?id=187470
3287
3288         Reviewed by Philippe Normand.
3289
3290         Never force building, the user is responsible to make that decision and the workflow is
3291         now based on external scripts so it doesn't make sense anymore. Doing that leads
3292         to ignoring the options the user passed in.
3293
3294         * flatpak/flatpakutils.py:
3295         (WebkitFlatpak.setup_dev_env):
3296
3297 2018-07-10  Thibault Saunier  <tsaunier@igalia.com>
3298
3299         [Flatpak] Fix running wpt tests inside flatpak
3300         https://bugs.webkit.org/show_bug.cgi?id=187490
3301
3302         Reviewed by Philippe Normand.
3303
3304         Still not *all* passing but a big majority do.
3305
3306         * Scripts/webkitpy/w3c/wpt_runner.py:
3307         (main): Generate the /etc/hosts and mount it in flatpak as required.
3308         (WPTRunner.prepare_wpt_checkout): Renamed as we need to first checkout WPT code before generating /etc/hosts.
3309         (WPTRunner._prepare_wpt_checkout): Deleted.
3310         * flatpak/flatpakutils.py: Added a stdout= argument to run_in_sandbox() and
3311         added a way to pass extra env to flatpak itself (so we can mount /etc/hosts).
3312         Stopped passing `--device=all` as it is not required since r233638 (Bug 187400).
3313         * flatpak/org.webkit.WebKit.yaml: Added virtualenv for python2 as required by wpt.
3314
3315 2018-07-10  Thibault Saunier  <tsaunier@igalia.com>
3316
3317         [Flatpak] Use logging to print debug information
3318         https://bugs.webkit.org/show_bug.cgi?id=187496
3319
3320         Reviewed by Philippe Normand.
3321
3322         * flatpak/flatpakutils.py:
3323         (WebkitFlatpak.load_from_args):
3324         (WebkitFlatpak.clean_args):
3325         (WebkitFlatpak.run_in_sandbox):
3326
3327 2018-07-09  Timothy Hatcher  <timothy@apple.com>
3328
3329         Semantic colors don't update when accessibility Increase Contrast mode is enabled.
3330         https://bugs.webkit.org/show_bug.cgi?id=187425
3331         rdar://problem/39948240
3332         rdar://problem/41796865
3333
3334         Reviewed by Tim Horton.
3335
3336         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
3337         (TestWebKitAPI.WebKit.LinkColorWithSystemAppearance): Use new color value.
3338
3339 2018-07-09  Simon Fraser  <simon.fraser@apple.com>
3340
3341         Fix dump-class-layout to show bit padding, and fix issues with padding offsets
3342         https://bugs.webkit.org/show_bug.cgi?id=187442
3343
3344         Reviewed by Daniel Bates.
3345         
3346         Synthetic padding members were shown with the wrong offset because they used the
3347         absolute offset rather than the class-relative offset. This didn't change the padding
3348         math, but made the output confusing.
3349         
3350         Also add support for showing empty bits in bitfields, and fix computation of padding
3351         after bitfields. Empty bits are computed by inserting a bit padding member after
3352         a bitfield that is not followed by another bitfield (making the assumption that bit
3353         padding will fill to the next byte boundary).
3354         
3355         The computation of padding after bitfields was also wrong, since lldb's member_type.GetByteSize()
3356         just reports the size of the type without the bitfield modifier (e.g. for "unsigned : 2" it returned 4).
3357         Fix by setting the byte size for bitfield fields to the number of bits rounded up to the next byte;
3358         this allows byte padding following the bitfield to be computed correctly.
3359         
3360         Add or modify test to cover these issues.
3361
3362         * lldb/dump_class_layout_unittest.py:
3363         (serial_test_ClassWithPaddedBitfields):
3364         (serial_test_MemberHasBitfieldPadding):
3365         (serial_test_InheritsFromClassWithPaddedBitfields):
3366         * lldb/lldbWebKitTester/DumpClassLayoutTesting.cpp:
3367         (avoidClassDeadStripping):
3368         * lldb/lldb_dump_class_layout.py:
3369         (ClassLayoutBase):
3370         (ClassLayoutBase._to_string_recursive):
3371         (ClassLayout._parse):
3372         (ClassLayout._compute_padding_recursive):
3373
3374 2018-07-09  Youenn Fablet  <youenn@apple.com>
3375
3376         StringView operator==(char*) should check the length of the string
3377         https://bugs.webkit.org/show_bug.cgi?id=187422
3378
3379         Reviewed by Chris Dumez.
3380
3381         * TestWebKitAPI/Tests/WTF/StringView.cpp:
3382         (TestWebKitAPI::equal2):
3383         (TestWebKitAPI::TEST):
3384
3385 2018-07-09  Ross Kirsling  <rkirsling@gmail.com>
3386
3387         [WinCairo] httpd service install needs to precede server start
3388         https://bugs.webkit.org/show_bug.cgi?id=187283
3389
3390         Reviewed by Daniel Bates.
3391
3392         * Scripts/webkitpy/port/base.py:
3393         (Port.check_build):
3394         Remove unused parameter `needs_http`.
3395         
3396         (Port.check_sys_deps):
3397         (Port.start_http_server):
3398         Move `check_httpd` call.
3399
3400         * Scripts/webkitpy/port/win.py:
3401         (WinPort.check_httpd): Added.
3402         (WinCairoPort.check_httpd): Deleted.
3403         Move `httpd -k install` logic to common Windows location.
3404
3405         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3406         (Manager._set_up_run):
3407         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
3408         * Scripts/webkitpy/port/gtk.py:
3409         (GtkPort.check_sys_deps):
3410         * Scripts/webkitpy/port/ios_simulator.py:
3411         (IOSSimulatorPort.check_sys_deps):
3412         * Scripts/webkitpy/port/mock_drt.py:
3413         (MockDRTPort.check_build):
3414         (MockDRTPort.check_sys_deps):
3415         * Scripts/webkitpy/port/port_testcase.py:
3416         (PortTestCase.integration_test_check_sys_deps):
3417         (test_check_build):
3418         * Scripts/webkitpy/port/test.py:
3419         * Scripts/webkitpy/port/wpe.py:
3420         (WPEPort.check_sys_deps):
3421         * Scripts/webkitpy/tool/commands/perfalizer.py:
3422         (PerfalizerTask.run):
3423         Remove `needs_http` arguments.
3424
3425 2018-07-09  Philippe Normand  <pnormand@igalia.com>
3426
3427         [Flatpak] Unreviewed, switch to https for the gst-libav tarball.
3428         
3429         * flatpak/org.webkit.WebKit.yaml:
3430
3431 2018-07-09  Thibault Saunier  <tsaunier@igalia.com>
3432
3433         [Flatpak] HTTP layout tests broken due to missing CGI.pm in the sandbox
3434         https://bugs.webkit.org/show_bug.cgi?id=187384
3435
3436         Reviewed by Philippe Normand.
3437
3438         And make it usable inside the sandbox even when
3439         perl is launched "tainted" (as the PERL5LIB won't
3440         work otherwise).
3441
3442         * flatpak/flatpakutils.py:
3443         (WebkitFlatpak.run_in_sandbox):
3444         * flatpak/org.webkit.WebKit.yaml:
3445
3446 2018-07-09  Thibault Saunier  <tsaunier@igalia.com>
3447
3448         [WPE][GTK] Mount /dev/shm on /run/shm in sandbox
3449         https://bugs.webkit.org/show_bug.cgi?id=187400
3450
3451         Reviewed by Philippe Normand.
3452
3453         This is where it is expected to be when it is a symlink,
3454         without mounting it the websocket python server can't work
3455         inside the sandbox.
3456
3457         * flatpak/flatpakutils.py:
3458         (WebkitFlatpak.run_in_sandbox):
3459
3460 2018-07-08  Filip Pizlo  <fpizlo@apple.com>
3461
3462         run-benchmark should run ARES-6 1.0.1
3463         https://bugs.webkit.org/show_bug.cgi?id=187452
3464
3465         Reviewed by Sam Weinig.
3466         
3467         We forgot to update this when we released 1.0.1!
3468
3469         * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
3470
3471 2018-07-07  Youenn Fablet  <youenn@apple.com>
3472
3473         WPT importer should create dummy HTML files for *.window.js script files
3474         https://bugs.webkit.org/show_bug.cgi?id=187426
3475
3476         Reviewed by Ryosuke Niwa.
3477
3478         Some WPT tests use *.window.js tests, which should be accessed as *.window.html.
3479         Do the same strategy as done for worker.js/any.js files.
3480
3481         * Scripts/webkitpy/w3c/test_importer.py:
3482         (TestImporter.write_html_files_for_templated_js_tests):
3483
3484 2018-07-07  Wenson Hsieh  <wenson_hsieh@apple.com>
3485
3486         Introduce a layout milestone to track when the document contains a large number of rendered characters
3487         https://bugs.webkit.org/show_bug.cgi?id=187412
3488         <rdar://problem/41744338>
3489
3490         Reviewed by Ryosuke Niwa.
3491
3492         Add a new API test to check that we observe the new rendering milestone in an article-like document.
3493
3494         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3495         * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html: Added.
3496         * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
3497         (TEST):
3498
3499 2018-06-30  Simon Fraser  <simon.fraser@apple.com>
3500
3501         dump-class-layout reports wrong padding in many cases
3502         https://bugs.webkit.org/show_bug.cgi?id=185801
3503
3504         Reviewed by Dan Bates.
3505         
3506         Enhance dump-class-layout, fixing bugs and adding unit tests. This also includes
3507         the patch from bug 187141.
3508         
3509         Move the code that uses lldb to fetch the class layout to its own module,
3510         lldb_dump_class_layout.py, so it can be unit tested. Change this code
3511         to build up a data structure for the class. This is necessary since correct
3512         padding computation is easier with second traversal over the data structure.
3513         
3514         Try to deal with the empty base class optimization, which is necessary to report
3515         correct padding in classes using std::unique_ptr, and correctly handle virtual base classes.
3516         
3517         The ClassLayoutBase class knows how to test for equality and generate a string
3518         or string list representation of itself. The derived ClassLayout class knows
3519         how to build up the class layout using the lldb Python bindings.
3520         
3521         Finally we wrap the lldb debugger instance in LLDBDebuggerInstance so that we don't
3522         have to make a new one for each unit test. The tests have to run serially.
3523         
3524         Add to lldbWebKitTester a .cpp file that contains a set of C++ classes to unit-test
3525         dump-class-layout.
3526
3527         * Scripts/dump-class-layout:
3528         (main):
3529         * lldb/dump_class_layout_unittest.py:
3530         (destroy_cached_debug_session):
3531         (TestDumpClassLayout):
3532         (TestDumpClassLayout.setUpClass):
3533         (TestDumpClassLayout.setUp):
3534         (TestDumpClassLayout.serial_test_BasicClassLayout):
3535         (serial_test_PaddingBetweenClassMembers):
3536         (serial_test_BoolPaddingClass):
3537         (serial_test_ClassWithEmptyClassMembers):
3538         (serial_test_SimpleVirtualClass):
3539         (serial_test_SimpleVirtualClassWithNonVirtualBase):
3540         (serial_test_InterleavedVirtualNonVirtual):
3541         (serial_test_ClassWithTwoVirtualBaseClasses):
3542         (serial_test_ClassWithClassMembers):
3543         (serial_test_ClassWithBitfields):
3544         (serial_test_ClassWithUniquePtrs):
3545         (serial_test_ClassWithOptionals):
3546         (TestDumpClassLayout.test_BasicClassLayout): Deleted.
3547         * lldb/lldbWebKitTester/DumpClassLayoutTesting.cpp:
3548         (EmptyClass::doStuff):
3549         (VirtualBaseClass::~VirtualBaseClass):
3550         (VirtualBaseClass2::~VirtualBaseClass2):
3551         (SimpleVirtualClass::~SimpleVirtualClass):
3552         (SimpleVirtualClass::doStuff):
3553         (SimpleVirtualClassWithNonVirtualBase::~SimpleVirtualClassWithNonVirtualBase):
3554         (SimpleVirtualClassWithNonVirtualBase::doStuff):
3555         (avoidClassDeadStripping):
3556         * lldb/lldb_dump_class_layout.py:
3557         (ansi_colors):
3558         (ClassLayoutBase):
3559         (ClassLayoutBase.__init__):
3560         (ClassLayoutBase.__ne__):
3561         (ClassLayoutBase.__eq__):
3562         (ClassLayoutBase._to_string_recursive):
3563         (ClassLayoutBase.as_string_list):
3564         (ClassLayoutBase.as_string):
3565         (ClassLayoutBase.dump):
3566         (ClassLayoutExpected):
3567         (ClassLayoutExpected.__init__):
3568         (ClassLayout):
3569         (ClassLayout.__init__):
3570         (ClassLayout._has_polymorphic_base_class):
3571         (ClassLayout._parse):
3572         (ClassLayout._probably_has_empty_base_class_optimization):
3573         (ClassLayout._compute_padding_recursive):
3574         (ClassLayout._compute_padding):
3575         (LLDBDebuggerInstance):
3576         (LLDBDebuggerInstance.__init__):
3577         (LLDBDebuggerInstance.__del__):
3578         (LLDBDebuggerInstance._get_first_file_architecture):
3579         (LLDBDebuggerInstance.layout_for_classname):
3580         (ClassLayoutDumper): Deleted.
3581         (ClassLayoutDumper.__init__): Deleted.
3582         (ClassLayoutDumper._get_first_file_architecture): Deleted.
3583         (ClassLayoutDumper.verify_type): Deleted.
3584         (ClassLayoutDumper.verify_type_recursive): Deleted.
3585         (ClassLayoutDumper._class_layout_as_string): Deleted.
3586         (ClassLayoutDumper.dump_to_string): Deleted.
3587         (ClassLayoutDumper.dump): Deleted.
3588
3589 2018-07-06  Christopher Reid  <chris.reid@sony.com>
3590
3591         [WinCairo] WebKit MiniBrowser crashes when attempting to navigate to certain URLs
3592         https://bugs.webkit.org/show_bug.cgi?id=187167
3593
3594         Reviewed by Alex Christensen.
3595
3596         A null byte was written past the end of the buffer causing the crash.
3597         Some of the heap allocated buffers were also not getting deleted.
3598
3599         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3600
3601 2018-07-06  Thibault Saunier  <tsaunier@igalia.com>
3602
3603         [WPE][GTK] Build php zlib plugin and enable sockets in flatpak
3604         https://bugs.webkit.org/show_bug.cgi?id=187401
3605
3606         Reviewed by Philippe Normand.
3607
3608         * flatpak/org.webkit.WebKit.yaml:
3609