Unreviewed, rolling out r244299.
[WebKit-https.git] / Tools / ChangeLog
1 2019-04-18  Ryan Haddad  <ryanhaddad@apple.com>
2
3         Unreviewed, rolling out r244299.
4
5         Breaks internal tests.
6
7         Reverted changeset:
8
9         "InjectedBundle parameters often need initialization function
10         called before unarchiving"
11         https://bugs.webkit.org/show_bug.cgi?id=189709
12         https://trac.webkit.org/changeset/244299
13
14 2019-04-18  Yusuke Suzuki  <ysuzuki@apple.com>
15
16         [WTF] StringBuilder should set correct m_is8Bit flag when merging
17         https://bugs.webkit.org/show_bug.cgi?id=197053
18
19         Reviewed by Saam Barati.
20
21         * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
22         (TestWebKitAPI::TEST):
23
24 2019-04-17  Tim Horton  <timothy_horton@apple.com>
25
26         [iOS Sim Debug] REGRESSION (r244151) TestWebKitAPI.WebKit.OverrideViewportArguments is failing (197028)
27         https://bugs.webkit.org/show_bug.cgi?id=197028
28         <rdar://problem/49985290>
29
30         Reviewed by Wenson Hsieh.
31
32         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm:
33         (TEST):
34         Liberal application of waitForNextPresentationUpdate works around a race
35         where if the page rapidly changes its viewport arguments (or an API client
36         rapidly changes its viewport arguments), we'd get stuck thinking that the
37         user had intentionally zoomed the page, and stop resetting the initial scale.
38         This deserves a separate bug, but no need to keep the test failing while
39         we think about it.
40
41 2019-04-17  Tim Horton  <timothy_horton@apple.com>
42
43         REGRESSION (r241988): Switching tabs is slow
44         https://bugs.webkit.org/show_bug.cgi?id=197037
45         <rdar://problem/49951473>
46
47         Reviewed by Simon Fraser.
48
49         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
50         * TestWebKitAPI/Tests/WebKitCocoa/ReparentWebViewTimeout.mm: Added.
51         (TEST):
52         * TestWebKitAPI/cocoa/TestWKWebView.h:
53         * TestWebKitAPI/cocoa/TestWKWebView.mm:
54         (-[TestWKWebView addToTestWindow]):
55         Add a test that hangs without this fix.
56
57 2019-04-17  Truitt Savell  <tsavell@apple.com>
58
59         Unreviewed, rolling out r244400.
60
61         Caused testing to exit early with assertionon Debug WK2
62
63         Reverted changeset:
64
65         "UI↔Web deadlock when printing with a JavaScript alert
66         visible"
67         https://bugs.webkit.org/show_bug.cgi?id=196839
68         https://trac.webkit.org/changeset/244400
69
70 2019-04-17  Brady Eidson  <beidson@apple.com>
71
72         Link clicks in PDFs shouldn't send referrer headers.
73         <rdar://problem/21142581> and https://bugs.webkit.org/show_bug.cgi?id=196980
74
75         Reviewed by Tim Horton.
76
77         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
78         * TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm: Added.
79         (putPDFBytesCallback):
80         (emptyReleaseInfoCallback):
81         (createPDFWithLinkToURL):
82         (TEST):
83
84 2019-04-17  Tim Horton  <timothy_horton@apple.com>
85
86         UI↔Web deadlock when printing with a JavaScript alert visible
87         https://bugs.webkit.org/show_bug.cgi?id=196839
88         <rdar://problem/49157642>
89
90         Reviewed by Andy Estes.
91
92         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
93         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewPrintFormatter.mm: Added.
94         (-[PrintOnAlertUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
95         (TEST):
96
97 2019-04-17  Alex Christensen  <achristensen@webkit.org>
98
99         WKRetainPtr's adoption constructor should be private
100         https://bugs.webkit.org/show_bug.cgi?id=197019
101
102         Reviewed by Tim Horton.
103
104         * DumpRenderTree/mac/DumpRenderTree.mm:
105         (dumpFramesAsText):
106         * TestWebKitAPI/InjectedBundleController.cpp:
107         (TestWebKitAPI::InjectedBundleController::initialize):
108         * TestWebKitAPI/PlatformUtilities.cpp:
109         (TestWebKitAPI::Util::createContextWithInjectedBundle):
110         (TestWebKitAPI::Util::createInitializationDictionaryForInjectedBundleTest):
111         (TestWebKitAPI::Util::createContextForInjectedBundleTest):
112         (TestWebKitAPI::Util::toWK):
113         * TestWebKitAPI/Tests/CustomProtocolsSyncXHRTest.mm:
114         (TestWebKitAPI::TEST):
115         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
116         (TestWebKitAPI::TEST):
117         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
118         (TestWebKitAPI::TEST):
119         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
120         (TestWebKitAPI::TEST):
121         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
122         (TestWebKitAPI::DOMWindowExtensionBasic::initialize):
123         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache.cpp:
124         (TestWebKitAPI::TEST):
125         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache_Bundle.cpp:
126         (TestWebKitAPI::DOMWindowExtensionNoCache::initialize):
127         * TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
128         (TestWebKitAPI::TEST):
129         * TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
130         (TestWebKitAPI::TEST):
131         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp:
132         (TestWebKitAPI::didRemoveFrameFromHierarchyCallback):
133         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash.cpp:
134         (TestWebKitAPI::TEST):
135         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash_Bundle.cpp:
136         (TestWebKitAPI::DocumentStartUserScriptAlertCrashTest::initialize):
137         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
138         (TestWebKitAPI::TEST):
139         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
140         (TestWebKitAPI::TEST):
141         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
142         (TestWebKitAPI::TEST):
143         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
144         (TestWebKitAPI::TEST):
145         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
146         (TestWebKitAPI::TEST):
147         * TestWebKitAPI/Tests/WebKit/Find.cpp:
148         (TestWebKitAPI::TEST):
149         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
150         (TestWebKitAPI::TEST):
151         * TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone.cpp:
152         (TestWebKitAPI::TEST):
153         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
154         (TestWebKitAPI::TEST):
155         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
156         (TestWebKitAPI::TEST):
157         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
158         (TestWebKitAPI::TEST):
159         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
160         (TestWebKitAPI::TEST):
161         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
162         (TestWebKitAPI::TEST):
163         * TestWebKitAPI/Tests/WebKit/GetInjectedBundleInitializationUserDataCallback.cpp:
164         (TestWebKitAPI::TEST):
165         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
166         (TestWebKitAPI::TEST):
167         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle_Bundle.cpp:
168         (TestWebKitAPI::HitTestResultNodeHandleTest::getContextMenuFromDefaultMenu):
169         * TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
170         (TestWebKitAPI::TEST):
171         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior.cpp:
172         (TestWebKitAPI::TEST):
173         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior_Bundle.cpp:
174         (TestWebKitAPI::InjectedBundleNoDisableOverrideBuiltinsBehaviorTest::initialize):
175         (TestWebKitAPI::InjectedBundleDisableOverrideBuiltinsBehaviorTest::initialize):
176         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest.cpp:
177         (TestWebKitAPI::TEST):
178         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest_Bundle.cpp:
179         (TestWebKitAPI::InjectedBundleFrameHitTestTest::frameLoadFinished):
180         * TestWebKitAPI/Tests/WebKit/InjectedBundleInitializationUserDataCallbackWins.cpp:
181         (TestWebKitAPI::TEST):
182         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen.cpp:
183         (TestWebKitAPI::TEST):
184         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp:
185         (TestWebKitAPI::InjectedBundleMakeAllShadowRootOpenTest::initialize):
186         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
187         (TestWebKitAPI::TEST):
188         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
189         (TestWebKitAPI::loadAlternateHTMLString):
190         (TestWebKitAPI::TEST):
191         * TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
192         (TestWebKitAPI::TEST):
193         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
194         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
195         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
196         (TestWebKitAPI::buildAndPerformTest):
197         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
198         (TestWebKitAPI::TEST):
199         * TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
200         (TestWebKitAPI::TEST):
201         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
202         (TestWebKitAPI::TEST):
203         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
204         (TestWebKitAPI::TEST):
205         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
206         (TestWebKitAPI::TEST):
207         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
208         (TestWebKitAPI::TEST):
209         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
210         (TestWebKitAPI::TEST):
211         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
212         (TestWebKitAPI::TEST):
213         * TestWebKitAPI/Tests/WebKit/PasteboardNotifications.mm:
214         (TestWebKitAPI::TEST):
215         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
216         (TestWebKitAPI::TEST):
217         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
218         (TestWebKitAPI::TEST):
219         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
220         (TestWebKitAPI::TEST):
221         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
222         (TestWebKitAPI::TEST):
223         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
224         (TestWebKitAPI::TEST):
225         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
226         (TestWebKitAPI::TEST):
227         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
228         (TestWebKitAPI::TEST):
229         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
230         (TestWebKitAPI::TEST):
231         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
232         (TestWebKitAPI::TEST):
233         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
234         (TestWebKitAPI::TEST):
235         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
236         (TestWebKitAPI::TEST):
237         * TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
238         (TestWebKitAPI::TEST):
239         * TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
240         (TestWebKitAPI::TEST):
241         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
242         (TestWebKitAPI::TEST):
243         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
244         (TestWebKitAPI::TEST):
245         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
246         (TestWebKitAPI::TEST):
247         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
248         (TestWebKitAPI::TEST):
249         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
250         (TestWebKitAPI::TEST):
251         * TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
252         (TestWebKitAPI::TEST):
253         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
254         (TestWebKitAPI::TEST):
255         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
256         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
257         * TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
258         (TestWebKitAPI::TEST):
259         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
260         (TestWebKitAPI::TEST):
261         * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
262         (TestWebKitAPI::TEST):
263         * TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
264         (TestWebKitAPI::TEST):
265         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm:
266         (TestWebKitAPI::TEST):
267         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
268         (TestWebKitAPI::TEST):
269         * TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
270         (TestWebKitAPI::TEST):
271         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
272         (TestWebKitAPI::TEST):
273         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
274         (TestWebKitAPI::TEST):
275         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
276         (TestWebKitAPI::TEST):
277         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
278         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
279         (TEST):
280         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
281         (TEST):
282         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
283         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
284         (TEST):
285         * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
286         (TestWebKitAPI::TEST):
287         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
288         (TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
289         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
290         (WTR::getMenuItemTitleCallback):
291         (WTR::createMouseMessageBody):
292         (WTR::EventSendingController::mouseDown):
293         (WTR::EventSendingController::mouseUp):
294         (WTR::EventSendingController::mouseMoveTo):
295         (WTR::EventSendingController::mouseForceClick):
296         (WTR::EventSendingController::startAndCancelMouseForceClick):
297         (WTR::EventSendingController::mouseForceDown):
298         (WTR::EventSendingController::mouseForceUp):
299         (WTR::EventSendingController::mouseForceChanged):
300         (WTR::EventSendingController::leapForward):
301         (WTR::EventSendingController::scheduleAsynchronousClick):
302         (WTR::createKeyDownMessageBody):
303         (WTR::EventSendingController::keyDown):
304         (WTR::EventSendingController::scheduleAsynchronousKeyDown):
305         (WTR::EventSendingController::mouseScrollBy):
306         (WTR::EventSendingController::mouseScrollByWithWheelAndMomentumPhases):
307         (WTR::EventSendingController::continuousMouseScrollBy):
308         (WTR::EventSendingController::addTouchPoint):
309         (WTR::EventSendingController::updateTouchPoint):
310         (WTR::EventSendingController::setTouchModifier):
311         (WTR::EventSendingController::setTouchPointRadius):
312         (WTR::EventSendingController::touchStart):
313         (WTR::EventSendingController::touchMove):
314         (WTR::EventSendingController::touchEnd):
315         (WTR::EventSendingController::touchCancel):
316         (WTR::EventSendingController::clearTouchPoints):
317         (WTR::EventSendingController::releaseTouchPoint):
318         (WTR::EventSendingController::cancelTouchPoint):
319         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
320         (WTR::InjectedBundle::didCreatePage):
321         (WTR::InjectedBundle::didReceiveMessage):
322         (WTR::InjectedBundle::didReceiveMessageToPage):
323         (WTR::InjectedBundle::booleanForKey):
324         (WTR::InjectedBundle::done):
325         (WTR::InjectedBundle::dumpToStdErr):
326         (WTR::InjectedBundle::outputText):
327         (WTR::InjectedBundle::postNewBeforeUnloadReturnValue):
328         (WTR::InjectedBundle::postAddChromeInputField):
329         (WTR::InjectedBundle::postRemoveChromeInputField):
330         (WTR::InjectedBundle::postFocusWebView):
331         (WTR::InjectedBundle::postSetBackingScaleFactor):
332         (WTR::InjectedBundle::postSetWindowIsKey):
333         (WTR::InjectedBundle::postSetViewSize):
334         (WTR::InjectedBundle::postSimulateWebNotificationClick):
335         (WTR::InjectedBundle::postSetAddsVisitedLinks):
336         (WTR::InjectedBundle::setGeolocationPermission):
337         (WTR::InjectedBundle::setMockGeolocationPosition):
338         (WTR::InjectedBundle::setMockGeolocationPositionUnavailableError):
339         (WTR::InjectedBundle::isGeolocationProviderActive const):
340         (WTR::InjectedBundle::imageCountInGeneralPasteboard const):
341         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
342         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin const):
343         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
344         (WTR::InjectedBundle::setCustomPolicyDelegate):
345         (WTR::InjectedBundle::setHidden):
346         (WTR::InjectedBundle::setCacheModel):
347         (WTR::InjectedBundle::shouldProcessWorkQueue const):
348         (WTR::InjectedBundle::processWorkQueue):
349         (WTR::InjectedBundle::queueBackNavigation):
350         (WTR::InjectedBundle::queueForwardNavigation):
351         (WTR::InjectedBundle::queueLoad):
352         (WTR::InjectedBundle::queueLoadHTMLString):
353         (WTR::InjectedBundle::queueReload):
354         (WTR::InjectedBundle::queueLoadingScript):
355         (WTR::InjectedBundle::queueNonLoadingScript):
356         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
357         (WTR::frameToStr):
358         (WTR::InjectedBundlePage::InjectedBundlePage):
359         (WTR::dumpFrameDescriptionSuitableForTestResult):
360         (WTR::dumpFrameScrollPosition):
361         (WTR::dumpDescendantFrameScrollPositions):
362         (WTR::dumpFrameText):
363         (WTR::dumpDescendantFramesText):
364         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
365         (WTR::TestRunner::shouldDumpPixels const):
366         (WTR::TestRunner::setDumpPixels):
367         (WTR::TestRunner::whatToDump const):
368         (WTR::TestRunner::setWhatToDump):
369         (WTR::TestRunner::setWaitUntilDone):
370         (WTR::TestRunner::shouldWaitUntilDone const):
371         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks):
372         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
373         (WTR::TestRunner::clearAllDatabases):
374         (WTR::TestRunner::setIDBPerOriginQuota):
375         (WTR::TestRunner::originsWithApplicationCache):
376         (WTR::TestRunner::setCanOpenWindows):
377         (WTR::TestRunner::setXSSAuditorEnabled):
378         (WTR::TestRunner::setMediaDevicesEnabled):
379         (WTR::TestRunner::setWebRTCMDNSICECandidatesEnabled):
380         (WTR::TestRunner::setWebRTCUnifiedPlanEnabled):
381         (WTR::TestRunner::setCustomUserAgent):
382         (WTR::TestRunner::setWebAPIStatisticsEnabled):
383         (WTR::TestRunner::setModernMediaControlsEnabled):
384         (WTR::TestRunner::setWebGL2Enabled):
385         (WTR::TestRunner::setWritableStreamAPIEnabled):
386         (WTR::TestRunner::setReadableByteStreamAPIEnabled):
387         (WTR::TestRunner::setEncryptedMediaAPIEnabled):
388         (WTR::TestRunner::setAllowsAnySSLCertificate):
389         (WTR::TestRunner::setPluginsEnabled):
390         (WTR::TestRunner::setValueForUser):
391         (WTR::TestRunner::setAudioResult):
392         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
393         (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
394         (WTR::TestRunner::setAlwaysAcceptCookies):
395         (WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
396         (WTR::TestRunner::isDoingMediaCapture const):
397         (WTR::TestRunner::queueLoad):
398         (WTR::TestRunner::setRejectsProtectionSpaceAndContinueForAuthenticationChallenges):
399         (WTR::TestRunner::setHandlesAuthenticationChallenges):
400         (WTR::TestRunner::setShouldLogCanAuthenticateAgainstProtectionSpace):
401         (WTR::TestRunner::setShouldLogDownloadCallbacks):
402         (WTR::TestRunner::setAuthenticationUsername):
403         (WTR::TestRunner::setAuthenticationPassword):
404         (WTR::TestRunner::secureEventInputIsEnabled const):
405         (WTR::TestRunner::setBlockAllPlugins):
406         (WTR::TestRunner::setPluginSupportedMode):
407         (WTR::TestRunner::setShouldDecideNavigationPolicyAfterDelay):
408         (WTR::TestRunner::setShouldDecideResponsePolicyAfterDelay):
409         (WTR::TestRunner::setNavigationGesturesEnabled):
410         (WTR::TestRunner::setIgnoresViewportScaleLimits):
411         (WTR::TestRunner::setShouldDownloadUndisplayableMIMETypes):
412         (WTR::TestRunner::setShouldAllowDeviceOrientationAndMotionAccess):
413         (WTR::TestRunner::terminateNetworkProcess):
414         (WTR::TestRunner::terminateServiceWorkerProcess):
415         (WTR::TestRunner::runUIScript):
416         (WTR::TestRunner::setStatisticsDebugMode):
417         (WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
418         (WTR::TestRunner::setStatisticsLastSeen):
419         (WTR::TestRunner::setStatisticsPrevalentResource):
420         (WTR::TestRunner::setStatisticsVeryPrevalentResource):
421         (WTR::TestRunner::dumpResourceLoadStatistics):
422         (WTR::TestRunner::isStatisticsPrevalentResource):
423         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
424         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
425         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
426         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
427         (WTR::TestRunner::setStatisticsHasHadUserInteraction):
428         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
429         (WTR::TestRunner::setStatisticsGrandfathered):
430         (WTR::TestRunner::isStatisticsGrandfathered):
431         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
432         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
433         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
434         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectFrom):
435         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectTo):
436         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectFrom):
437         (WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
438         (WTR::TestRunner::setStatisticsTimeToLiveUserInteraction):
439         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
440         (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
441         (WTR::TestRunner::statisticsUpdateCookieBlocking):
442         (WTR::TestRunner::statisticsSubmitTelemetry):
443         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
444         (WTR::TestRunner::setStatisticsIsRunningTest):
445         (WTR::TestRunner::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
446         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
447         (WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
448         (WTR::TestRunner::setStatisticsGrandfatheringTime):
449         (WTR::TestRunner::setStatisticsMaxStatisticsEntries):
450         (WTR::TestRunner::setStatisticsPruneEntriesDownTo):
451         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
452         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
453         (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
454         (WTR::TestRunner::statisticsDeleteCookiesForHost):
455         (WTR::TestRunner::setStatisticsCacheMaxAgeCap):
456         (WTR::TestRunner::statisticsResetToConsistentState):
457         (WTR::TestRunner::setStorageAccessAPIEnabled):
458         (WTR::TestRunner::getAllStorageAccessEntries):
459         (WTR::TestRunner::addMockMediaDevice):
460         (WTR::TestRunner::clearMockMediaDevices):
461         (WTR::TestRunner::removeMockMediaDevice):
462         (WTR::TestRunner::resetMockMediaDevices):
463         (WTR::TestRunner::connectMockGamepad):
464         (WTR::TestRunner::disconnectMockGamepad):
465         (WTR::TestRunner::setMockGamepadDetails):
466         (WTR::TestRunner::setMockGamepadAxisValue):
467         (WTR::TestRunner::setMockGamepadButtonValue):
468         (WTR::TestRunner::removeAllSessionCredentials):
469         (WTR::TestRunner::clearDOMCache):
470         (WTR::TestRunner::clearDOMCaches):
471         (WTR::TestRunner::hasDOMCache):
472         (WTR::TestRunner::domCacheSize):
473         (WTR::TestRunner::setAllowStorageQuotaIncrease):
474         (WTR::TestRunner::getApplicationManifestThen):
475         (WTR::TestRunner::injectUserScript):
476         (WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
477         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
478         (WTR::TestRunner::addTestKeyToKeychain):
479         (WTR::TestRunner::cleanUpKeychain):
480         (WTR::TestRunner::keyExistsInKeychain):
481         (WTR::TestRunner::setCanHandleHTTPSServerTrustEvaluation):
482         (WTR::TestRunner::canDoServerTrustEvaluationInNetworkProcess):
483         (WTR::TestRunner::serverTrustEvaluationCallbackCallsCount):
484         (WTR::TestRunner::setShouldDismissJavaScriptAlertsAsynchronously):
485         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
486         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
487         * WebKitTestRunner/TestController.cpp:
488         (WTR::TestController::initialize):
489         (WTR::parseStringTestHeaderValueAsRelativePath):
490         (WTR::updateTestOptionsFromTestHeader):
491         (WTR::TestController::runTest):
492         (WTR::TestController::didReceiveLiveDocumentsList):
493         (WTR::TestController::didReceiveMessageFromInjectedBundle):
494         (WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
495         (WTR::TestController::didFinishNavigation):
496         (WTR::TestController::didReceiveAuthenticationChallenge):
497         * WebKitTestRunner/TestInvocation.cpp:
498         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
499         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
500         (WTR::TestInvocation::uiScriptDidComplete):
501         (WTR::TestInvocation::didReceiveAllStorageAccessEntries):
502         * WebKitTestRunner/WebNotificationProvider.cpp:
503         (WTR::WebNotificationProvider::closeWebNotification):
504         * WebKitTestRunner/WorkQueueManager.cpp:
505         (WTR::ScriptItem::ScriptItem):
506         (WTR::WorkQueueManager::queueLoad):
507         (WTR::WorkQueueManager::queueLoadHTMLString):
508
509 2019-04-17  Alex Christensen  <achristensen@webkit.org>
510
511         Add a comment to make my test from r244139 less mysterious.
512         https://bugs.webkit.org/show_bug.cgi?id=196744
513
514         As suggested by Darin Adler.
515
516         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
517         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
518
519 2019-04-17  Chris Dumez  <cdumez@apple.com>
520
521         Remember device orientation permission for the duration of the browsing session
522         https://bugs.webkit.org/show_bug.cgi?id=196992
523         <rdar://problem/49946067>
524
525         Reviewed by Alex Christensen.
526
527         Add API test coverage.
528
529         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
530         (-[DeviceOrientationPermissionUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
531         (TEST):
532
533 2019-04-17  Aakash Jain  <aakash_jain@apple.com>
534
535         [ews-app] Clicking 'submit to new ews' doesn't reload status-bubble
536         https://bugs.webkit.org/show_bug.cgi?id=196675
537
538         Reviewed by Lucas Forschler.
539
540         * BuildSlaveSupport/ews-app/ews/views/submittoews.py:
541         (SubmitToEWS): Added @xframe_options_exempt similar to statusbubble.py
542
543 2019-04-16  Wenson Hsieh  <wenson_hsieh@apple.com>
544
545         [iOS] [WebKit2] Add support for honoring -[UIMenuItem dontDismiss]
546         https://bugs.webkit.org/show_bug.cgi?id=196919
547         <rdar://problem/41630459>
548
549         Reviewed by Tim Horton.
550
551         Add iOS support for several new testing hooks. See below for more detail.
552
553         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
554         (WTR::UIScriptController::isDismissingMenu const):
555
556         Add a new script controller method to query whether the platform menu (on iOS, the callout bar) is done
557         dismissing. We consider the menu to be dismissing in between the `-WillHide` and `-DidHide` notifications sent
558         by UIKit when dismissing the callout bar (i.e. UIMenuController).
559
560         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
561         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
562         (WTR::UIScriptController::isDismissingMenu const):
563         * TestRunnerShared/UIScriptContext/UIScriptController.h:
564         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
565         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
566         (WTR::InjectedBundle::didReceiveMessageToPage):
567         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
568         (WTR::TestRunner::setAllowedMenuActions):
569
570         Add a new helper method to specify a list of allowed actions when bringing up the menu. On iOS, in the case of
571         actions supported by the platform, this matches against method selector names (for instance, "SelectAll", or
572         "Copy", or "Paste"). In the case of the custom actions installed via `installCustomMenuAction`, we instead match
573         against the name of the custom action.
574
575         (WTR::TestRunner::installCustomMenuAction):
576
577         Add a new helper method to install a custom action for the context menu (on iOS, this is the callout bar). This
578         takes the name of the action (which appears in a button in the callout bar), whether the action should cause
579         the callout bar to automatically dismiss, and finally, a JavaScript callback that is invoked when the action is
580         triggered.
581
582         (WTR::TestRunner::performCustomMenuAction):
583
584         Invoked when the custom menu action is triggered.
585
586         * WebKitTestRunner/InjectedBundle/TestRunner.h:
587         * WebKitTestRunner/TestController.cpp:
588         (WTR::TestController::installCustomMenuAction):
589         (WTR::TestController::setAllowedMenuActions):
590         * WebKitTestRunner/TestController.h:
591         * WebKitTestRunner/TestInvocation.cpp:
592         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
593         (WTR::TestInvocation::performCustomMenuAction):
594
595         Add plumbing to call back into the injected bundle when performing the custom action.
596
597         * WebKitTestRunner/TestInvocation.h:
598         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
599         (WTR::TestController::installCustomMenuAction):
600         (WTR::TestController::setAllowedMenuActions):
601         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
602         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
603         (-[TestRunnerWKWebView initWithFrame:configuration:]):
604         (-[TestRunnerWKWebView becomeFirstResponder]):
605         (-[TestRunnerWKWebView _addCustomItemToMenuControllerIfNecessary]):
606
607         Helper method that converts web view's current custom menu action info into a UIMenuItem, and adds it to the
608         shared menu controller. This is also invoked when the web view becomes first responder, which matches behavior
609         in the Mail app on iOS.
610
611         (-[TestRunnerWKWebView installCustomMenuAction:dismissesAutomatically:callback:]):
612         (-[TestRunnerWKWebView setAllowedMenuActions:]):
613         (-[TestRunnerWKWebView resetCustomMenuAction]):
614         (-[TestRunnerWKWebView performCustomAction:]):
615         (-[TestRunnerWKWebView canPerformAction:withSender:]):
616         (-[TestRunnerWKWebView _willHideMenu]):
617         (-[TestRunnerWKWebView _didHideMenu]):
618         * WebKitTestRunner/ios/TestControllerIOS.mm:
619         (WTR::TestController::platformResetStateToConsistentValues):
620
621         Reset both any custom installed actions on the shared menu controller, as well as the list of allowed actions,
622         if specified.
623
624         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
625         (WTR::UIScriptController::isDismissingMenu const):
626
627 2019-04-16  Megan Gardner  <megan_gardner@apple.com>
628
629         Allow sharing from imageSheet on an image document
630         https://bugs.webkit.org/show_bug.cgi?id=196891
631         <rdar://problem/25377386>
632
633         Reviewed by Tim Horton.
634
635         Test to make sure that the correct imageURL is extracted from an image element.
636
637         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
638         (TestWebKitAPI::TEST):
639
640 2019-04-16  Alex Christensen  <achristensen@webkit.org>
641
642         REGRESSION(r244162) Clearing website data from ephemeral WKWebsiteDataStore should finish instead of asserting or hanging
643         https://bugs.webkit.org/show_bug.cgi?id=196995
644
645         Reviewed by Brady Eidson.
646
647         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
648         (TEST):
649
650 2019-04-16  Chris Dumez  <cdumez@apple.com>
651
652         URL set by document.open() is not communicated to the UIProcess
653         https://bugs.webkit.org/show_bug.cgi?id=196941
654         <rdar://problem/49237544>
655
656         Reviewed by Geoff Garen.
657
658         Add API test coverage.
659
660         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
661         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
662         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
663         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
664         (TEST):
665
666 2019-04-16  Commit Queue  <commit-queue@webkit.org>
667
668         Unreviewed, rolling out r244321.
669         https://bugs.webkit.org/show_bug.cgi?id=196968
670
671         Causing all WK2 Debug builds to exit early after Assertion
672         failures. (Requested by ShawnRoberts on #webkit).
673
674         Reverted changeset:
675
676         "URL set by document.open() is not communicated to the
677         UIProcess"
678         https://bugs.webkit.org/show_bug.cgi?id=196941
679         https://trac.webkit.org/changeset/244321
680
681 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
682
683         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
684         https://bugs.webkit.org/show_bug.cgi?id=196948
685
686         Reviewed by Zalan Bujtas.
687
688         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
689         (TEST): Disabling the test for now to keep infrastructure happy, while the root-cause is being investigated.
690
691 2019-04-15  Chris Dumez  <cdumez@apple.com>
692
693         URL set by document.open() is not communicated to the UIProcess
694         https://bugs.webkit.org/show_bug.cgi?id=196941
695         <rdar://problem/49237544>
696
697         Reviewed by Geoffrey Garen.
698
699         Add API test coverage.
700
701         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
702         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
703         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
704         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
705         (TEST):
706
707 2019-04-15  Dean Johnson  <dean_johnson@apple.com>
708
709         Using Tools/Scripts/clean-webkit should not install requests
710         https://bugs.webkit.org/show_bug.cgi?id=196940
711
712         Reviewed by Lucas Forschler.
713
714         * Scripts/webkitpy/common/system/autoinstall.py: Drive-by fix for no logging handlers
715         existing, depending on the path autoinstalled is run through.
716         * Scripts/webkitpy/port/base.py: Import webkitpy.results.upload.Upload only where it's
717         needed.
718         (Port.configuration_for_upload):
719         (Port.commits_for_upload):
720
721 2019-04-15  Alex Christensen  <achristensen@webkit.org>
722
723         Add a DiagnosticLogging method taking an arbitrary dictionary of values.
724         https://bugs.webkit.org/show_bug.cgi?id=196773
725
726         Reviewed by Jer Noble.
727
728         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDiagnosticLogging.mm:
729         (-[TestLoggingDelegate _webView:logDiagnosticMessage:description:valueDictionary:]):
730         (TEST):
731
732 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
733
734         ews-build should clearly indicate flaky test failures
735         https://bugs.webkit.org/show_bug.cgi?id=196947
736
737         Reviewed by Lucas Forschler.
738
739         * BuildSlaveSupport/ews-build/steps.py:
740         (AnalyzeAPITestsResults.analyzeResults):
741
742 2019-04-15  Brent Fulgham  <bfulgham@apple.com>
743
744         InjectedBundle parameters often need initialization function called before unarchiving
745         https://bugs.webkit.org/show_bug.cgi?id=189709
746         <rdar://problem/44573653>
747
748         Reviewed by Ryosuke Niwa.
749
750         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
751         (-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
752
753 2019-04-12  Ryosuke Niwa  <rniwa@webkit.org>
754
755         HashTable::removeIf always shrinks the hash table by half even if there is nothing left
756         https://bugs.webkit.org/show_bug.cgi?id=196681
757
758         Reviewed by Darin Adler.
759
760         Added tests.
761
762         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
763         (WTF_HashSet.RemoveIf):
764         (WTF_HashSet.RemoveIfShrinkToBestSize):
765
766 2019-04-15  John Wilander  <wilander@apple.com>
767
768         Send delayed Ad Click Attribution conversion requests to the click source
769         https://bugs.webkit.org/show_bug.cgi?id=196838
770         <rdar://problem/47650157>
771
772         Reviewed by Chris Dumez and Youenn Fablet.
773
774         This patch adds test infrastructure to override the default behavior in
775         WebKit::NetworkAdClickAttribution.
776
777         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
778         (TestWebKitAPI::TEST):
779         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
780         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
781         (WTR::TestRunner::dumpAdClickAttribution):
782         (WTR::TestRunner::clearAdClickAttribution):
783         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
784         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
785         * WebKitTestRunner/InjectedBundle/TestRunner.h:
786         * WebKitTestRunner/TestController.cpp:
787         (WTR::TestController::setAdClickAttributionOverrideTimerForTesting):
788         (WTR::TestController::setAdClickAttributionConversionURLForTesting):
789         * WebKitTestRunner/TestController.h:
790         * WebKitTestRunner/TestInvocation.cpp:
791         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
792
793 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
794
795         [ews-app] status-bubble should display position in queue
796         https://bugs.webkit.org/show_bug.cgi?id=196607
797
798         Reviewed by Lucas Forschler.
799
800         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
801         (StatusBubble._build_bubble):
802         (StatusBubble._queue_position): Method to calculate patch's position in queue.
803
804 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
805
806         [ews-build] Do not run clean build by default on EWS builders
807         https://bugs.webkit.org/show_bug.cgi?id=196897
808
809         Reviewed by Lucas Forschler.
810
811         * BuildSlaveSupport/ews-build/steps.py:
812         (ApplyPatch.start): Do not create .buildbot-patched file. This is a special file for Buildbot and if this
813         file is present, during the Source checkout, Buildbot cleans the working directory completely (including removing 
814         untracked directories like WebKitBuild).
815         (CheckOutSource.__init__): Pass method=clean so that Buildbot clean the working directory. This does not remove
816         untracked files/directories (like WebKitBuild).
817
818 2019-04-15  Per Arne Vollan  <pvollan@apple.com>
819
820         TestRunner::notifyDone() should be safely reentrant
821         https://bugs.webkit.org/show_bug.cgi?id=196898
822
823         Reviewed by Darin Adler.
824
825         It is currently possible that TestRunner::notifyDone() will call itself, since
826         notifyDone() will force a repaint, which can start executing JavaScript, which
827         may call notifyDone() again. This can lead to test failures and flakiness.
828         Fix this by setting the m_waitToDump flag before calling the dump() method.
829
830         * DumpRenderTree/mac/TestRunnerMac.mm:
831         (TestRunner::notifyDone):
832         (TestRunner::forceImmediateCompletion):
833         * DumpRenderTree/win/TestRunnerWin.cpp:
834         (TestRunner::notifyDone):
835         (TestRunner::forceImmediateCompletion):
836
837 2019-04-15  Philippe Normand  <pnormand@igalia.com>
838
839         [GTK][WPE] Add enable-media websetting
840         https://bugs.webkit.org/show_bug.cgi?id=196863
841
842         Reviewed by Michael Catanzaro.
843
844         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
845         (testWebKitSettings): Add test for the enable-media web-setting.
846
847 2019-04-14  Wenson Hsieh  <wenson_hsieh@apple.com>
848
849         API test WKAttachmentTests.AddAttachmentToConnectedImageElement is a flaky failure on Mac Release builds
850         https://bugs.webkit.org/show_bug.cgi?id=196905
851         <rdar://problem/49886096>
852
853         Reviewed by Tim Horton.
854
855         This flaky test exercises a race condition between when attachment insertion updates are dispatched from the web
856         process to the UI process, and when script is executed via -[WKWebView evaluateJavaScript:completionHandler:].
857         Since attachment insertion and removal updates from the web process to the UI process are scheduled on a zero-
858         delay timer, we end up with this sequence of events in the problematic (failure) case:
859
860         (a) [UI]    Run script #1 (which calls `HTMLAttachmentElement.getAttachmentIdentifier`)
861             ...IPC from UI to web process...
862         (b) [Web]   Evaluate script #1 in the web process, which schedules attachment updates on a zero-delay timer
863             ...IPC from web to UI process...
864         (c) [UI]    Invoke completion handler for script #1
865         (d) [UI]    Run script #2 (which calls `document.querySelector('img').attachmentIdentifier`)
866             ...IPC from UI to web process...
867         (e) [Web]   Evaluate script #2 in the web process
868         (f) [Web]   Zero-delay timer fires and dispatches attachment updates to the UI process
869
870         ...which means that script #2 will complete before the UI process has received the attachment updates sent in
871         step (f). However, in the case where the flaky test succeeds, the zero-delay timer in (f) fires *before* script
872         #2 is run in step (e).
873
874         This patch fixes the flaky test by waiting until attachment insertion updates are guaranteed to be received in
875         the UI process by waiting on a script message posted by the web process, after attachment updates are
876         dispatched.
877
878         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
879         (TestWebKitAPI::TEST):
880
881 2019-04-14  Aakash Jain  <aakash_jain@apple.com>
882
883         Disable Flaky API Test WKAttachmentTests.AddAttachmentToConnectedImageElement
884         https://bugs.webkit.org/show_bug.cgi?id=196909
885
886         Reviewed by Wenson Hsieh.
887
888         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
889         (TestWebKitAPI::TEST):
890
891 2019-04-13  Tadeu Zagallo  <tzagallo@apple.com>
892
893         CodeCache should check that the UnlinkedCodeBlock was successfully created before caching it
894         https://bugs.webkit.org/show_bug.cgi?id=196880
895
896         Reviewed by Yusuke Suzuki.
897
898         Add a new function for bytecode cache tests that does not forceDiskCache
899         for the second run: runBytecodeCacheNoAssetion. This is necessary for the
900         test added in this patch, since the code is invalid and therefore won't be
901         cached. It should also be useful for tests that evaluate dynamically
902         generated code.
903
904         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
905         * Scripts/run-jsc-stress-tests:
906
907 2019-04-12  Eric Carlson  <eric.carlson@apple.com>
908
909         Update AudioSession route sharing policy
910         https://bugs.webkit.org/show_bug.cgi?id=196776
911         <rdar://problem/46501611>
912
913         Reviewed by Jer Noble.
914
915         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
916         (TestWebKitAPI::routeSharingPolicyLongFormVideo):
917         (TestWebKitAPI::routeSharingPolicyLongFormAudio):
918         (TestWebKitAPI::TEST):
919
920 2019-04-12  Wenson Hsieh  <wenson_hsieh@apple.com>
921
922         [iOS] Software keyboard is shown too frequently on some websites
923         https://bugs.webkit.org/show_bug.cgi?id=195856
924         <rdar://problem/49191395>
925
926         Reviewed by Darin Adler.
927
928         Add support for attaching or detaching the hardware keyboard on iOS in layout tests.
929
930         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
931         (WTR::UIScriptController::setHardwareKeyboardAttached):
932         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
933         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
934         (WTR::UIScriptController::setHardwareKeyboardAttached):
935         * TestRunnerShared/UIScriptContext/UIScriptController.h:
936         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
937
938         Additionally link against GraphicsServices in WebKitTestRunner.
939
940         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
941         (WTR::TestController::platformResetStateToConsistentValues):
942         (WTR::UIScriptController::setHardwareKeyboardAttached):
943
944 2019-04-12  Ludovico de Nittis  <ludovico.denittis@collabora.com>
945
946         [GTK][WPE] Fix pacman install-dependencies packages
947         https://bugs.webkit.org/show_bug.cgi?id=196817
948
949         Reviewed by Žan Doberšek.
950         
951         python3-setuptools is called python-setuptools
952         ruby-highline is only available on AUR
953         libv4l-devel is incorporated in v4l-utils
954
955         * gtk/install-dependencies:
956         * wpe/install-dependencies:
957
958 2019-04-11  Carlos Garcia Campos  <cgarcia@igalia.com>
959
960         [GTK] REGRESSION(r243860): Many tests failing
961         https://bugs.webkit.org/show_bug.cgi?id=196791
962
963         Reviewed by Joanmarie Diggs.
964
965         Rework the accessibility unit test to use DBus for the communication with the server. This way we can load
966         multiple documents and check that accessibility hierarchy is updated after a navigation.
967
968         * TestWebKitAPI/Tests/WebKitGtk/AccessibilityTestServer.cpp:
969         (loadChangedCallback):
970         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
971         (AccessibilityTest::AccessibilityTest):
972         (AccessibilityTest::~AccessibilityTest):
973         (AccessibilityTest::loadHTMLAndWaitUntilFinished):
974         (AccessibilityTest::findTestServerApplication):
975         (AccessibilityTest::findDocumentWeb):
976         (AccessibilityTest::findRootObject):
977         (AccessibilityTest::waitUntilChildrenRemoved):
978         (AccessibilityTest::ensureProxy):
979         (testAtspiBasicHierarchy):
980         (beforeAll):
981         (afterAll):
982
983 2019-04-11  Aakash Jain  <aakash_jain@apple.com>
984
985         [ews-build] Handle bug titles with unicode characters
986         https://bugs.webkit.org/show_bug.cgi?id=196802
987
988         Reviewed by Dewei Zhu.
989
990         * BuildSlaveSupport/ews-build/steps.py:
991         (ValidatePatch._is_bug_closed):
992
993 2019-04-11  Michael Saboff  <msaboff@apple.com>
994
995         Improve the Inline Cache Stats code
996         https://bugs.webkit.org/show_bug.cgi?id=196836
997
998         Reviewed by Saam Barati.
999
1000         Added a new script to consolidate and arrange the output of --useICStats option.
1001
1002         This script merges the output from every group into one large table and sorts it from most common to
1003         least common.  It also counts the slow path GetById and PutById variants and then calculates the
1004         percentage of gets or puts for each unique base,property pair compared to all the gets and puts.
1005         Put together, this is useful to see what property accesses are not getting cached.
1006
1007         * Scripts/ic-stats.py: Added.
1008         (ICStats):
1009         (ICStats.__init__):
1010         (ICStats.parse):
1011         (ICStats.dumpStats):
1012         (usage):
1013
1014 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1015
1016         WKNavigationResponse._downloadAttribute should be nil when no download attribute is present
1017         https://bugs.webkit.org/show_bug.cgi?id=196809
1018         <rdar://49800762>
1019
1020         Reviewed by Brady Eidson.
1021
1022         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1023         (TEST):
1024
1025 2019-04-10  Said Abou-Hallawa  <sabouhallawa@apple.com>
1026
1027         requestAnimationFrame should execute before the next frame
1028         https://bugs.webkit.org/show_bug.cgi?id=177484
1029
1030         Reviewed by Simon Fraser.
1031
1032         Add trace points for the page RenderingUpdate.
1033
1034         * Tracing/SystemTracePoints.plist:
1035
1036 2019-04-10  Fujii Hironori  <Hironori.Fujii@sony.com>
1037
1038         [Win] Use a bundled vswhere.exe instead of downloading by update-vswhere.py
1039         https://bugs.webkit.org/show_bug.cgi?id=196760
1040
1041         Reviewed by Don Olmstead.
1042
1043         vswhere.exe has been bundled since Visual Studio 2017 version
1044         15.2. We shouldn't download vswhere.exe.
1045
1046         * Scripts/build-jsc: Do not call update-vswhere.py.
1047         * Scripts/build-webkit: Ditto.
1048         * Scripts/update-vswhere.py: Removed.
1049         * Scripts/webkitdirs.pm:
1050         (requireModulesForVSWhere): Deleted.
1051         (pickCurrentVisualStudioInstallation): Deleted.
1052         (visualStudioInstallDirVSWhere): Return the latest installed VS
1053         installation path by using the bundled vswhere.exe.
1054         (setupCygwinEnv): Removed a unused variable $visualStudioPath.
1055         (visualStudioInstallDirFallback): Removed.
1056
1057 2019-04-10  Aakash Jain  <aakash_jain@apple.com>
1058
1059         [ews-build] PrintConfiguration should display Xcode version instead of SDKVersion
1060         https://bugs.webkit.org/show_bug.cgi?id=196780
1061
1062         Reviewed by Alexey Proskuryakov.
1063
1064         * BuildSlaveSupport/ews-build/steps.py:
1065         * BuildSlaveSupport/ews-build/steps_unittest.py:
1066
1067 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1068
1069         Add SPI WKNavigationResponse._downloadAttribute
1070         https://bugs.webkit.org/show_bug.cgi?id=196755
1071         <rdar://49587365>
1072
1073         Reviewed by Brady Eidson.
1074
1075         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1076         (-[NavigationResponseTestDelegate navigationResponse]):
1077         (-[NavigationResponseTestDelegate waitForNavigationResponseCallback]):
1078         (-[NavigationResponseTestDelegate waitForNavigationFinishedCallback]):
1079         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1080         (-[NavigationResponseTestDelegate webView:didFinishNavigation:]):
1081         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1082         (readRequest):
1083         (writeResponse):
1084         (TEST):
1085
1086 2019-04-10  Tim Horton  <timothy_horton@apple.com>
1087
1088         Add modern API for overriding the page's specified viewport configuration
1089         https://bugs.webkit.org/show_bug.cgi?id=167734
1090         <rdar://problem/30331795>
1091
1092         Reviewed by Simon Fraser.
1093
1094         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1095         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm: Added.
1096
1097 2019-04-10  Tadeu Zagallo  <tzagallo@apple.com>
1098
1099         Add support for incremental bytecode cache updates
1100         https://bugs.webkit.org/show_bug.cgi?id=195000
1101
1102         Reviewed by Filip Pizlo.
1103
1104         Exit when the initial run to generate bytecode fails.
1105
1106         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
1107
1108 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1109
1110         RemoteObjectRegistry message receiver should be removed when WebPage::close is called instead of waiting until dealloc
1111         https://bugs.webkit.org/show_bug.cgi?id=196744
1112         <rdar://49415309>
1113
1114         Reviewed by Chris Dumez.
1115
1116         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
1117         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1118
1119 2019-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1120
1121         Add a way to opt into modern compatibility mode in layout tests
1122         https://bugs.webkit.org/show_bug.cgi?id=196770
1123         <rdar://problem/49777550>
1124
1125         Reviewed by Antoine Quint.
1126
1127         Add a new test option to enable modern compatibility mode in layout tests.
1128
1129         * WebKitTestRunner/TestController.cpp:
1130         (WTR::updateTestOptionsFromTestHeader):
1131         * WebKitTestRunner/TestController.h:
1132         * WebKitTestRunner/TestOptions.h:
1133         (WTR::TestOptions::hasSameInitializationOptions const):
1134         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1135         (WTR::TestController::platformCreateWebView):
1136         (WTR::TestController::enableModernCompatibilityMode):
1137
1138 2019-04-10  Andy Estes  <aestes@apple.com>
1139
1140         Try to fix the 32-bit watchOS build.
1141
1142         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1143         (-[TestWKWebView evaluateJavaScriptAndWaitForInputSessionToChange:]):
1144
1145 2019-04-10  Antoine Quint  <graouts@apple.com>
1146
1147         Enable Pointer Events on watchOS
1148         https://bugs.webkit.org/show_bug.cgi?id=196771
1149         <rdar://problem/49040909>
1150
1151         Reviewed by Dean Jackson.
1152
1153         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1154
1155 2019-04-10  Philippe Normand  <pnormand@igalia.com>
1156
1157         Unreviewed. Fix WPE accessibility tests after r244059.
1158
1159         We are failing to load the injected bundle due to undefined symbol
1160         AccessibilityUIElement::replaceTextInRange().
1161
1162         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
1163         (WTR::AccessibilityUIElement::replaceTextInRange):
1164
1165 2019-04-10  Takashi Komori  <Takashi.Komori@sony.com>
1166
1167         [WinCairo][MiniBrowser] Pull down menu "Disable JavaScript" doesn't work.
1168         https://bugs.webkit.org/show_bug.cgi?id=196727
1169
1170         Reviewed by Fujii Hironori.
1171
1172         * MiniBrowser/win/WebKitBrowserWindow.cpp:
1173         (WebKitBrowserWindow::create):
1174
1175 2019-04-09  Aakash Jain  <aakash_jain@apple.com>
1176
1177         [ews-build] Add unit tests for PrintConfiguration
1178         https://bugs.webkit.org/show_bug.cgi?id=196752
1179
1180         Reviewed by Dewei Zhu.
1181
1182         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1183
1184 2019-04-09  Keith Rollin  <krollin@apple.com>
1185
1186         Unreviewed build maintenance -- update .xcfilelists.
1187
1188         * DumpRenderTree/DerivedSources-input.xcfilelist:
1189         * DumpRenderTree/DerivedSources-output.xcfilelist:
1190
1191 2019-04-09  Zalan Bujtas  <zalan@apple.com>
1192
1193         [AutoSizing] Avoid making text paragraphs scroll horizontally when there is a wide table
1194         https://bugs.webkit.org/show_bug.cgi?id=196743
1195         <rdar://problem/43897551>
1196
1197         Reviewed by Tim Horton.
1198
1199         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm: expected behavior change.
1200         (TEST):
1201
1202 2019-04-09  Youenn Fablet  <youenn@apple.com>
1203
1204         Close service worker database on network process suspension
1205         https://bugs.webkit.org/show_bug.cgi?id=196623
1206         <rdar://problem/48930869>
1207
1208         Reviewed by Alex Christensen.
1209
1210         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1211
1212 2019-04-09  Daniel Bates  <dabates@apple.com>
1213
1214         [iPad] Should open popover when the spacebar is pressed
1215         https://bugs.webkit.org/show_bug.cgi?id=196360
1216         <rdar://problem/49389129>
1217
1218         Reviewed by Brent Fulgham.
1219
1220         Add testing infrastructure to support waiting for a popover to be presented or dismissed.
1221
1222         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1223         (WTR::UIScriptController::isShowingPopover const): Added.
1224         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1225         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1226         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1227         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
1228         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1229         (WTR::UIScriptController::setWillPresentPopoverCallback): Added.
1230         (WTR::UIScriptController::willPresentPopoverCallback const): Added.
1231         (WTR::UIScriptController::setDidDismissPopoverCallback): Added.
1232         (WTR::UIScriptController::didDismissPopoverCallback const): Added.
1233         (WTR::UIScriptController::isShowingPopover const): Added.
1234         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1235         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1236         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1237         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
1238         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1239         (-[TestRunnerWKWebView initWithFrame:configuration:]): Update some state.
1240         (-[TestRunnerWKWebView resetInteractionCallbacks]): Ditto.
1241         (-[TestRunnerWKWebView _willPresentPopover]): Added.
1242         (-[TestRunnerWKWebView _didDismissPopover]): Added.
1243         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1244         (WTR::UIScriptController::isShowingPopover const): Added.
1245         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1246         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1247
1248 2019-04-09  Alex Christensen  <achristensen@webkit.org>
1249
1250         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
1251         https://bugs.webkit.org/show_bug.cgi?id=196665
1252         <rdar://45115669>
1253
1254         Reviewed by Geoff Garen.
1255
1256         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1257         (goBack):
1258         (+[SimpleLookupContext sharedLookupContext]):
1259         (-[SimpleLookupContext lookUpURL:completionHandler:]):
1260         (TEST):
1261         (+[Simple3LookupContext sharedLookupContext]): Deleted.
1262         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
1263
1264 2019-04-09  John Wilander  <wilander@apple.com>
1265
1266         Pick up Ad Click Attribution conversions in NetworkResourceLoader::willSendRedirectedRequest()
1267         https://bugs.webkit.org/show_bug.cgi?id=196558
1268         <rdar://problem/47650245>
1269
1270         Reviewed by Youenn Fablet.
1271
1272         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
1273         (TestWebKitAPI::TEST):
1274             Added tests of WebCore::AdClickAttribution::parseConversionRequest().
1275
1276 2019-04-09  Don Olmstead  <don.olmstead@sony.com>
1277
1278         [CMake] Apple builds should use ICU_INCLUDE_DIRS
1279         https://bugs.webkit.org/show_bug.cgi?id=196720
1280
1281         Reviewed by Konstantin Tokarev.
1282
1283         * TestWebKitAPI/PlatformMac.cmake:
1284
1285 2019-04-09  Jonathan Bedard  <jbedard@apple.com>
1286
1287         iOS 12 Simulator Release WK2 frequently timing out while running layout tests
1288         https://bugs.webkit.org/show_bug.cgi?id=196694
1289         <rdar://problem/48388734>
1290
1291         Rubber-stamped by Aakash Jain.
1292
1293         * Scripts/webkitpy/port/image_diff.py:
1294         (ImageDiffer.diff_image): If the ImageDiff process has data, kill it before running again.
1295         * Scripts/webkitpy/port/server_process.py:
1296         (ServerProcess.has_available_stdout): Check if stdout has data in it.
1297         (ServerProcess._wait_for_data_and_update_buffers_using_select):
1298         (ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
1299         * Scripts/webkitpy/port/server_process_mock.py:
1300         (MockServerProcess.has_available_stdout):
1301         * Scripts/webkitpy/port/server_process_unittest.py:
1302         (TestServerProcess.serial_test_basic):
1303
1304 2019-04-09  Jer Noble  <jer.noble@apple.com>
1305
1306         Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
1307         https://bugs.webkit.org/show_bug.cgi?id=196097
1308
1309         Reviewed by Eric Carlson.
1310
1311         Drive-by bug fix: allow tests to play audio without a user gesture by default.
1312
1313         * DumpRenderTree/mac/DumpRenderTree.mm:
1314         (resetWebPreferencesToConsistentValues):
1315         * WebKitTestRunner/TestController.cpp:
1316         (WTR::TestController::resetPreferencesToConsistentValues):
1317
1318 2019-04-09  Pablo Saavedra  <psaavedra@igalia.com>
1319
1320         [JSCOnly] Add an i386 JSCOnly EWS that runs tests
1321         https://bugs.webkit.org/show_bug.cgi?id=196690
1322
1323         Reviewed by Michael Catanzaro.
1324
1325         * QueueStatusServer/config/queues.py:
1326         * Scripts/webkitpy/common/config/ews.json:
1327         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1328         (test_ews_name):
1329
1330 2019-04-09  Chris Dumez  <cdumez@apple.com>
1331
1332         Loads using loadHTMLString() cause flashing when process-swapping
1333         https://bugs.webkit.org/show_bug.cgi?id=196714
1334         <rdar://problem/49637354>
1335
1336         Reviewed by Antti Koivisto.
1337
1338         Add API test coverage.
1339
1340         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1341
1342 2019-04-09  Carlos Garcia Campos  <cgarcia@igalia.com>
1343
1344         Unreviewed. Fix ATK accessibility tests after r244059.
1345
1346         We are failing to load the injected bundle due to undefined symbol
1347         AccessibilityUIElement::replaceTextInRange().
1348
1349         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1350         (WTR::AccessibilityUIElement::replaceTextInRange):
1351
1352 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
1353
1354         AX: Support API: accessibilityReplaceRange:withText
1355         https://bugs.webkit.org/show_bug.cgi?id=196636
1356
1357         Unreviewed build fix for Windows port.
1358
1359         * WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
1360         (WTR::AccessibilityUIElement::replaceTextInRange): Added.
1361
1362 2019-04-08  Don Olmstead  <don.olmstead@sony.com>
1363
1364         [CMake][WinCairo] Separate copied headers into different directories
1365         https://bugs.webkit.org/show_bug.cgi?id=196655
1366
1367         Reviewed by Michael Catanzaro.
1368
1369         * DumpRenderTree/CMakeLists.txt:
1370         * MiniBrowser/win/CMakeLists.txt:
1371         * TestWebKitAPI/CMakeLists.txt:
1372         * TestWebKitAPI/PlatformWin.cmake:
1373
1374 2019-04-08  Jonathan Bedard  <jbedard@apple.com>
1375
1376         Log stack-trace for run-webkit-tests when interrupted
1377         https://bugs.webkit.org/show_bug.cgi?id=176393
1378         <rdar://problem/34262310>
1379
1380         Reviewed by Lucas Forschler.
1381
1382         * Scripts/webkitpy/common/interrupt_debugging.py: Added.
1383         (log_stack_trace): Given a Python frame object, log a stack trace to the provided file.
1384         (StackTraceFileContext): Context which allows stack-traces to be printed to stderr or to a file. 
1385         (log_stack_trace_on_term): Attach a listener to SIGTERM so that a stack-trace can be logged when a program is terminated.
1386         (log_stack_trace_on_ctrl_c): Attach a listener to SIGINT so that a stack-trace can be logged when a program is CTRL+Ced. 
1387         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1388         (main): Set handlers to log stack trace on interruption.
1389
1390 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
1391
1392         AX: Support API: accessibilityReplaceRange:withText
1393         https://bugs.webkit.org/show_bug.cgi?id=196636
1394
1395         Unreviewed build fix for Windows port.
1396
1397         * DumpRenderTree/AccessibilityUIElement.cpp:
1398         (AccessibilityUIElement::replaceTextInRange): Changed the return value type from void to bool.
1399
1400 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
1401
1402         [ews-build] Scripts using Buildbot API have CORS error
1403         https://bugs.webkit.org/show_bug.cgi?id=196709
1404
1405         Reviewed by Alexey Proskuryakov.
1406
1407         * BuildSlaveSupport/ews-build/master.cfg: Set allowed_origins appropriately.
1408
1409 2019-04-08  Chris Fleizach  <cfleizach@apple.com>
1410
1411         AX: Support API: accessibilityReplaceRange:withText
1412         https://bugs.webkit.org/show_bug.cgi?id=196636
1413
1414         Reviewed by Daniel Bates.
1415
1416         * DumpRenderTree/AccessibilityUIElement.cpp:
1417         (replaceTextInRangeCallback):
1418         (AccessibilityUIElement::replaceTextInRange):
1419         (AccessibilityUIElement::getJSClass):
1420         * DumpRenderTree/AccessibilityUIElement.h:
1421         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1422         (AccessibilityUIElement::replaceTextInRange):
1423         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1424         (AccessibilityUIElement::replaceTextInRange):
1425         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1426         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1427         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1428         (WTR::AccessibilityUIElement::replaceTextInRange):
1429         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1430         (WTR::AccessibilityUIElement::replaceTextInRange):
1431
1432 2019-04-08  Wenson Hsieh  <wenson_hsieh@apple.com>
1433
1434         [iOS] Do not allow starting selection drags when selection views are not visible
1435         https://bugs.webkit.org/show_bug.cgi?id=196686
1436         <rdar://problem/49399192>
1437
1438         Reviewed by Tim Horton.
1439
1440         Adjust some existing API tests to make the web view become first responder before trying to begin dragging, and
1441         also add some new API tests to cover scenarios where the web view is not first responder.
1442
1443         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1444         (TestWebKitAPI::TEST):
1445         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1446
1447         Add a switch to optionally make the web view first responder when starting the simulated drag.
1448
1449         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1450         (-[DragAndDropSimulator initWithWebView:]):
1451         (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
1452
1453 2019-04-08  Justin Fan  <justin_fan@apple.com>
1454
1455         [Web GPU] Fix Web GPU experimental feature on iOS
1456         https://bugs.webkit.org/show_bug.cgi?id=196632
1457
1458         Reviewed by Myles C. Maxfield.
1459
1460         Properly make Web GPU available on iOS 11+.
1461
1462         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1463
1464 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
1465
1466         [ews-build] Do not upload archive when Compile Fails
1467         https://bugs.webkit.org/show_bug.cgi?id=196674
1468
1469         Reviewed by Alexey Proskuryakov.
1470
1471         * BuildSlaveSupport/ews-build/factories.py:
1472         (BuildFactory.__init__): Remove steps which require dynamic decision about whether to run or not.
1473         * BuildSlaveSupport/ews-build/steps.py:
1474         (CompileWebKit.evaluateCommand): Dynamically decide which steps to run based on compile status.
1475         (CompileWebKitToT.evaluateCommand): Explicitly override Compile.evaluateCommand so that it 
1476         doesn't inherit CompileWebKit.evaluateCommand which dynamically adds more steps.
1477
1478 2019-04-08  Guillaume Emont  <guijemont@igalia.com>
1479
1480         Enable DFG on MIPS
1481         https://bugs.webkit.org/show_bug.cgi?id=196689
1482
1483         Reviewed by Žan Doberšek.
1484
1485         Since the bytecode change, we enabled the baseline JIT on mips in
1486         r240432, but DFG is still missing. With this change, all tests are
1487         passing on a ci20 board.
1488
1489         * Scripts/run-jsc-stress-tests: Enable DFG tests on MIPS.
1490
1491 2019-04-08  Philippe Normand  <pnormand@igalia.com>
1492
1493         [Flatpak] Second run update-webkitwpe-flatpak fails
1494         https://bugs.webkit.org/show_bug.cgi?id=192702
1495
1496         Reviewed by Carlos Garcia Campos.
1497
1498         * flatpak/flatpakutils.py:
1499         (FlatpakObject.flatpak): Fix typo.
1500         (FlatpakPackage.install): When installing, also update to the configured remote commit.
1501         * flatpak/org.webkit.WebKit.yaml: Update GNOME 3.28 SDK/runtime hashes.
1502
1503 2019-04-05  Sergio Villar Senin  <svillar@igalia.com>
1504
1505         [GTK][WPE] outlook.live.com displays old-fashioned UI
1506         https://bugs.webkit.org/show_bug.cgi?id=196642
1507
1508         Reviewed by Carlos Garcia Campos.
1509
1510         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1511         (TestWebKitAPI::TEST): New Mac platform quirk test.
1512
1513 2019-04-07  Commit Queue  <commit-queue@webkit.org>
1514
1515         Unreviewed, rolling out r243956.
1516         https://bugs.webkit.org/show_bug.cgi?id=196688
1517
1518         Broke API Test SafeBrowsing.WKWebViewGoBackIFrame (Requested
1519         by aakashjain on #webkit).
1520
1521         Reverted changeset:
1522
1523         "Clicking "Go Back" from a safe browsing warning from an
1524         iframe should navigate the WKWebView back to the previous
1525         page"
1526         https://bugs.webkit.org/show_bug.cgi?id=196665
1527         https://trac.webkit.org/changeset/243956
1528
1529 2019-04-06  Ryosuke Niwa  <rniwa@webkit.org>
1530
1531         Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize
1532         https://bugs.webkit.org/show_bug.cgi?id=196669
1533
1534         Reviewed by Geoffrey Garen.
1535
1536         Added three new unit tests for WeakHashSet.
1537
1538         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
1539         (WTF_WeakPtr.WeakHashSetConstObjects):
1540         (WTF_WeakPtr.WeakHashSetComputesEmpty):
1541         (WTF_WeakPtr.WeakHashSetComputeSize):
1542
1543 2019-04-06  Wenson Hsieh  <wenson_hsieh@apple.com>
1544
1545         Hide next and previous form control buttons when WKWebView is editable
1546         https://bugs.webkit.org/show_bug.cgi?id=196672
1547         <rdar://problem/35625321>
1548
1549         Reviewed by Tim Horton.
1550
1551         Add a new API test.
1552
1553         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1554         (-[TestWKWebView lastTrailingBarButtonGroup]):
1555         (TestWebKitAPI::TEST):
1556         * TestWebKitAPI/ios/UIKitSPI.h:
1557
1558 2019-04-05  Yongjun Zhang  <yongjun_zhang@apple.com>
1559
1560         We should pass minimumEffectiveDeviceWidth to web process on new page creation.
1561         https://bugs.webkit.org/show_bug.cgi?id=196077
1562         <rdar://problem/49108202>
1563
1564         Reviewed by Chris Dumez.
1565
1566         Add an API test to verify the minimumEffectDeviceWidth is passed to web content process
1567         on new web view.
1568
1569         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1570
1571 2019-04-05  Saam Barati  <sbarati@apple.com>
1572
1573         Make compare-results understand MotionMark
1574         https://bugs.webkit.org/show_bug.cgi?id=196666
1575
1576         Reviewed by Yusuke Suzuki.
1577
1578         * Scripts/compare-results:
1579         (PLT5Results):
1580         (detectMotionMark):
1581         (detectMotionMark1_1):
1582         (motionMarkResults):
1583         (motionMark1_1Results):
1584         (detectBenchmark):
1585         (biggerIsBetter):
1586         (main):
1587
1588 2019-04-05  Alex Christensen  <achristensen@webkit.org>
1589
1590         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
1591         https://bugs.webkit.org/show_bug.cgi?id=196665
1592         <rdar://45115669>
1593
1594         Reviewed by Geoff Garen.
1595
1596         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1597         (goBack):
1598         (+[SimpleLookupContext sharedLookupContext]):
1599         (-[SimpleLookupContext lookUpURL:completionHandler:]):
1600         (TEST):
1601         (+[Simple3LookupContext sharedLookupContext]): Deleted.
1602         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
1603
1604 2019-04-05  Aakash Jain  <aakash_jain@apple.com>
1605
1606         [ews-build] Add configuration and architecture for windows builders
1607         https://bugs.webkit.org/show_bug.cgi?id=196660
1608
1609         Reviewed by Lucas Forschler.
1610
1611         * BuildSlaveSupport/ews-build/config.json:
1612
1613 2019-04-05  Jonathan Bedard  <jbedard@apple.com>
1614
1615         webkitpy: Don't run subsequent rounds if interrupted
1616         https://bugs.webkit.org/show_bug.cgi?id=196646
1617
1618         Reviewed by Aakash Jain.
1619
1620         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1621         (Manager.run): Bail out if interrupted.
1622
1623 2019-04-05  Sihui Liu  <sihui_liu@apple.com>
1624
1625         Test sessionStorage in PSON private browsing mode
1626         https://bugs.webkit.org/show_bug.cgi?id=196561
1627
1628         Reviewed by Alex Christensen.
1629
1630         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1631
1632 2019-04-05  Commit Queue  <commit-queue@webkit.org>
1633
1634         Unreviewed, rolling out r243833.
1635         https://bugs.webkit.org/show_bug.cgi?id=196645
1636
1637         This change breaks build of WPE and GTK ports (Requested by
1638         annulen on #webkit).
1639
1640         Reverted changeset:
1641
1642         "[CMake][WTF] Mirror XCode header directories"
1643         https://bugs.webkit.org/show_bug.cgi?id=191662
1644         https://trac.webkit.org/changeset/243833
1645
1646 2019-04-04  Simon Fraser  <simon.fraser@apple.com>
1647
1648         Simple iframe scrolling test fails to get a composited scrolling frame in WebKitTestRunnerApp
1649         https://bugs.webkit.org/show_bug.cgi?id=196635
1650
1651         Reviewed by Antti Koivisto.
1652         
1653         InjectedBundle::beginTesting() calling WKBundleSetAsyncFrameScrollingEnabled() makes it impossible
1654         for a test to enable async frame scrolling via:
1655             <!-- webkit-test-runner [ internal:AsyncFrameScrollingEnabled=true ] -->
1656         so remove it and have TestController::resetPreferencesToConsistentValues() set the default value.
1657         
1658         Test: scrollingcoordinator/ios/programmatic-frame-scroll.html
1659
1660         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1661         (WTR::InjectedBundle::beginTesting):
1662         * WebKitTestRunner/TestController.cpp:
1663         (WTR::TestController::resetPreferencesToConsistentValues):
1664
1665 2019-04-04  Alexey Proskuryakov  <ap@apple.com>
1666
1667         Use a correct LC_RPATH when building with ASan
1668         https://bugs.webkit.org/show_bug.cgi?id=196576
1669
1670         Reviewed by David Kilzer.
1671
1672         * asan/asan.xcconfig: As a temporary hack, just force LC_RPATH on all binaries,
1673         so that ../Frameworks is checked. This is simpler and more reliable than updating
1674         each SPC service xcconfig.
1675
1676 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1677
1678         Disable Flaky API Test TestWebKitAPI.WebKit.FocusTextInputContext
1679         https://bugs.webkit.org/show_bug.cgi?id=196629
1680
1681         Reviewed by Lucas Forschler.
1682
1683         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
1684
1685 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1686
1687         [ews-app] while waiting in queue status-bubble for testers queues should display build information from builder queue
1688         https://bugs.webkit.org/show_bug.cgi?id=196618
1689
1690         Reviewed by Lucas Forschler.
1691
1692         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1693         (StatusBubble): Added QUEUE_TRIGGERS.
1694         (StatusBubble._build_bubble): Get the build from builder if tester has not started the build yet.
1695         (StatusBubble._get_parent_queue): Get the name of the parent (builder) queue.
1696         (StatusBubble.get_latest_build_for_queue): If the queue doesn't have any build yet, return build information from
1697         its parent(builder).
1698
1699 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1700
1701         [ews-app] Status-bubble steps are sometimes displayed in reverse order
1702         https://bugs.webkit.org/show_bug.cgi?id=196625
1703
1704         Reviewed by Lucas Forschler.
1705
1706         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1707         (StatusBubble._steps_messages): Explicitly specify order_by('uid').
1708
1709 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1710
1711         Disable Flaky API Test TestWebKitAPI.KeyboardInputTests.KeyboardTypeForInput
1712         https://bugs.webkit.org/show_bug.cgi?id=196630
1713
1714         Reviewed by Wenson Hsieh.
1715
1716         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1717
1718 2019-04-04  Youenn Fablet  <youenn@apple.com>
1719
1720         Pass storage quota parameters from UIProcess to NetworkProcess as part of WebsiteDataStore parameters
1721         https://bugs.webkit.org/show_bug.cgi?id=196543
1722
1723         Reviewed by Alex Christensen.
1724
1725         * WebKitTestRunner/TestController.cpp:
1726         (WTR::TestController::generatePageConfiguration):
1727
1728 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1729
1730         [ews-app] Status bubble should not display skipped buildbot steps
1731         https://bugs.webkit.org/show_bug.cgi?id=196584
1732
1733         Reviewed by Lucas Forschler.
1734
1735         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1736
1737 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1738
1739         [ews-app] configure localhost as BUILDBOT_SERVER_HOST in testing mode
1740         https://bugs.webkit.org/show_bug.cgi?id=196620
1741
1742         Reviewed by Lucas Forschler.
1743
1744         * BuildSlaveSupport/ews-app/ews/config.py:
1745
1746 2019-04-04  Per Arne Vollan  <pvollan@apple.com>
1747
1748         [Win] DumpRenderTreeWatchDog.py is not checked into source
1749         https://bugs.webkit.org/show_bug.cgi?id=196567
1750         <rdar://problem/49525901>
1751
1752         Reviewed by Lucas Forschler.
1753
1754         This script is used on Win EWS bots to terminate hanging DRT processes.
1755
1756         * EWSTools/dumprendertreewatchdog.py: Added.
1757
1758 2019-04-04  Chris Dumez  <cdumez@apple.com>
1759
1760         Unreviewed, roll out r243858 which made tests time out.
1761
1762         Disable new API tests on Windows instead.
1763
1764         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1765         (TestWebKitAPI::TEST):
1766
1767 2019-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1768
1769         [ATK] Cleanup WebPageAccessibilityObjectAtk
1770         https://bugs.webkit.org/show_bug.cgi?id=196537
1771
1772         Reviewed by Michael Catanzaro.
1773
1774         Also consider files under atk directories as exceptions for GObject conventions.
1775
1776         * Scripts/webkitpy/style/checkers/cpp.py:
1777         (check_identifier_name_in_declaration):
1778
1779 2019-04-03  Fujii Hironori  <Hironori.Fujii@sony.com>
1780
1781         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
1782         https://bugs.webkit.org/show_bug.cgi?id=196588
1783         <rdar://problem/49365787>
1784
1785         Unreviewed build fix for Windows port.
1786
1787         error C3861: 'kill': identifier not found
1788
1789         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1790         (TestWebKitAPI::TEST): Replaced kill with WKPageTerminate.
1791
1792 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
1793
1794         [ews-build] Cancel build and similar operations should have authentication
1795         https://bugs.webkit.org/show_bug.cgi?id=196520
1796
1797         Reviewed by Dewei Zhu.
1798
1799         * BuildSlaveSupport/ews-build/master.cfg: Configure authentication using admin's username and password from
1800         environment variables.
1801
1802 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
1803
1804         [ews-build] Do not trigger queues which are not in production yet
1805         https://bugs.webkit.org/show_bug.cgi?id=196581
1806
1807         Reviewed by Dewei Zhu.
1808
1809         * BuildSlaveSupport/ews-build/config.json:
1810
1811 2019-04-03  Chris Dumez  <cdumez@apple.com>
1812
1813         Unreviewed, fix typo in the name of API test added in r243848.
1814
1815         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1816         (TestWebKitAPI::TEST):
1817
1818 2019-04-03  Chris Dumez  <cdumez@apple.com>
1819
1820         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
1821         https://bugs.webkit.org/show_bug.cgi?id=196588
1822         <rdar://problem/49365787>
1823
1824         Reviewed by Ryosuke Niwa.
1825
1826         Add API test coverage.
1827
1828         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1829         (TestWebKitAPI::nullJavaScriptCallback):
1830         (TestWebKitAPI::didCrashCheckFrames):
1831         (TestWebKitAPI::TEST):
1832
1833 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
1834
1835         run-webkit-tests: Upload test results (new results database)
1836         https://bugs.webkit.org/show_bug.cgi?id=196577
1837         <rdar://problem/34841155>
1838
1839         Reviewed by Lucas Forschler.
1840
1841         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1842         (Manager.run): Upload results after each device shard, since the configuration will be
1843         different for each device.
1844         (Manager._results_to_upload_json_trie): Convert a TestRunResults object to a trie to be
1845         uploaded to a results database.
1846         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1847         (parse_args): Add new 'Upload Options' and prepare 'Results JSON Options' for deprecation.
1848
1849 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
1850
1851         -apple-trailing-word is needed for browser detection
1852         https://bugs.webkit.org/show_bug.cgi?id=196575
1853
1854         Unreviewed.
1855
1856         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1857
1858 2019-04-03  Don Olmstead  <don.olmstead@sony.com>
1859
1860         [CMake][WTF] Mirror XCode header directories
1861         https://bugs.webkit.org/show_bug.cgi?id=191662
1862
1863         Reviewed by Konstantin Tokarev.
1864
1865         Use WTFFramework as a dependency and include frameworks/WTF.cmake for AppleWin internal
1866         builds.
1867
1868         * CMakeLists.txt:
1869         * DumpRenderTree/CMakeLists.txt:
1870         * DumpRenderTree/PlatformWin.cmake:
1871         * MiniBrowser/win/CMakeLists.txt:
1872         * TestWebKitAPI/CMakeLists.txt:
1873         * TestWebKitAPI/PlatformWin.cmake:
1874         * WebKitTestRunner/PlatformGTK.cmake:
1875         * WebKitTestRunner/PlatformWin.cmake:
1876
1877 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
1878
1879         [ews-app] Status bubble should not display certain infrastructure status messages
1880         https://bugs.webkit.org/show_bug.cgi?id=196550
1881
1882         Reviewed by Lucas Forschler.
1883
1884         Do not display the steps which are un-needed for end-user. This information is still avaiable
1885         if the user click on the bubble and look at the Buildbot build.
1886         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1887         (StatusBubble._steps_messages):
1888         (StatusBubble._should_display_step): Method to decide whether to display the step or not.
1889
1890 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
1891
1892         [ews-build] Use https for sending data to ews-app
1893         https://bugs.webkit.org/show_bug.cgi?id=196492
1894
1895         Reviewed by Lucas Forschler.
1896
1897         * BuildSlaveSupport/ews-build/events.py:
1898
1899 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
1900
1901         Remove support for -apple-trailing-word
1902         https://bugs.webkit.org/show_bug.cgi?id=196525
1903
1904         Reviewed by Zalan Bujtas.
1905
1906         This CSS property is nonstandard and not used.
1907
1908         * Scripts/webkitperl/FeatureList.pm:
1909         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1910
1911 2019-04-03  Youenn Fablet  <youenn@apple.com>
1912
1913         Add a test for DOMCache on multiple browsing in case of private browsing
1914         https://bugs.webkit.org/show_bug.cgi?id=196524
1915
1916         Reviewed by Alex Christensen.
1917
1918         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1919         (-[SWMessageHandlerForCacheStorage userContentController:didReceiveScriptMessage:]):
1920
1921 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
1922
1923         [ews] Clean out ~/Library/Logs/CoreSimulator/ on reboot
1924         https://bugs.webkit.org/show_bug.cgi?id=196540
1925
1926         Reviewed by Aakash Jain.
1927
1928         * EWSTools/start-queue-mac.sh: Remove CoreSimulator logs.
1929
1930 2019-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
1931
1932         Add plumbing for a compatibility mode preference in WebKit
1933         https://bugs.webkit.org/show_bug.cgi?id=196005
1934
1935         Reviewed by Tim Horton.
1936
1937         Add new API tests.
1938
1939         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1940         * TestWebKitAPI/ios/PreferredCompatibilityMode.mm: Added.
1941
1942 2019-04-03  Claudio Saavedra  <csaavedra@igalia.com>
1943
1944         [WPE][GTK] Update libsrtp dependency package for Debian
1945         https://bugs.webkit.org/show_bug.cgi?id=196528
1946
1947         Reviewed by Frédéric Wang.
1948
1949         * gtk/install-dependencies:
1950         * wpe/install-dependencies:
1951
1952 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
1953
1954         [WK2] Add support for Window's beforeprint / afterprint events
1955         https://bugs.webkit.org/show_bug.cgi?id=196478
1956         <rdar://problem/49535124>
1957
1958         Unreviewed build fix for MSVC.
1959
1960         > WebKitTestRunner\TestController.cpp(267): error C2397: conversion from 'double' to 'float' requires a narrowing conversion
1961
1962         And, there is a style guideline. <https://webkit.org/code-style-guidelines/#floating-point-literals>
1963
1964         * WebKitTestRunner/TestController.cpp:
1965         (WTR::printFrame): Use int and float literals.
1966
1967 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
1968
1969         [ews-build] Reassign bots to queues
1970
1971         * BuildSlaveSupport/ews-build/config.json: Reassigned ews150 and ews152.
1972
1973 2019-04-02  Chris Dumez  <cdumez@apple.com>
1974
1975         [WK2] Add support for Window's beforeprint / afterprint events
1976         https://bugs.webkit.org/show_bug.cgi?id=196478
1977
1978         Reviewed by Alex Christensen.
1979
1980         Add minimal implementation for printFrame in WebKitTestRunner.
1981
1982         * WebKitTestRunner/TestController.cpp:
1983         (WTR::printFrame):
1984         (WTR::TestController::createOtherPage):
1985         (WTR::TestController::createWebViewWithOptions):
1986
1987 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
1988
1989         [ews-app] Status bubble hover over message should clearly indicate that build is in-progress
1990         https://bugs.webkit.org/show_bug.cgi?id=196491
1991
1992         Reviewed by Lucas Forschler.
1993
1994         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1995
1996 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
1997
1998         [ews-build] Configure buildbot try credentials in environment variables
1999         https://bugs.webkit.org/show_bug.cgi?id=196501
2000
2001         Reviewed by Lucas Forschler.
2002
2003         * BuildSlaveSupport/ews-build/loadConfig.py: Read credentials from environment variables.
2004         * BuildSlaveSupport/ews-app/ews/common/buildbot.py: Rename BUILDBOT_PB_USERNAME to BUILDBOT_TRY_USERNAME.
2005         * BuildSlaveSupport/ews-app/ews/config.py: Ditto.
2006
2007 2019-04-02  Wenson Hsieh  <wenson_hsieh@apple.com>
2008
2009         REGRESSION (r243726): Crash at unrecognized selector: -[WKWebpagePreferences webpagePreferences]
2010         https://bugs.webkit.org/show_bug.cgi?id=196496
2011         <rdar://problem/49521634>
2012
2013         Reviewed by Chris Dumez.
2014
2015         Add new API tests (see WebKit ChangeLog for more detail).
2016
2017         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2018         (-[WebsitePoliciesNavigationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2019         (TEST):
2020
2021 2019-04-02  David Kilzer  <ddkilzer@apple.com>
2022
2023         Rename CLANG_ADDRESS_SANITIZER Xcode variable to ENABLE_ADDRESS_SANITIZER
2024         <https://webkit.org/b/196499>
2025
2026         Reviewed by Alexey Proskuryakov.
2027
2028         * asan/asan.xcconfig: Change CLANG_ADDRESS_SANITIZER to
2029         ENABLE_ADDRESS_SANITIZER.
2030
2031 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
2032
2033         [CMake] WEBKIT_MAKE_FORWARDING_HEADERS shouldn't use POST_BUILD to copy generated headers
2034         https://bugs.webkit.org/show_bug.cgi?id=182757
2035
2036         Reviewed by Don Olmstead.
2037
2038         * TestWebKitAPI/PlatformGTK.cmake: Removed the workaround of using an intermediate target.
2039         * TestWebKitAPI/PlatformWPE.cmake: Ditto.
2040
2041 2019-04-01  Jonathan Bedard  <jbedard@apple.com>
2042
2043         run-api-tests: Upload test results
2044         https://bugs.webkit.org/show_bug.cgi?id=196323
2045         <rdar://problem/49356714>
2046
2047         Reviewed by Lucas Forschler.
2048
2049         * Scripts/webkitpy/api_tests/manager.py:
2050         (Manager):
2051         (Manager.run): Upload results to a results database.
2052         * Scripts/webkitpy/api_tests/run_api_tests.py:
2053         (parse_args): Add upload arguments.
2054         * Scripts/webkitpy/port/base.py:
2055         (Port):
2056         (Port.configuration_for_upload): Creates a configuration dictionary for uploading results.
2057         (Port.commits_for_upload): Create a list of commits from the WebKit repository tests are run from along
2058         with commits from any other associated repositories.
2059         * Scripts/webkitpy/port/device.py:
2060         (Device):
2061         (Device.build_version): Access build_versoin of underlying platform device.
2062         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2063         (IOSSimulatorTest):
2064         (IOSSimulatorTest.test_configuration_for_upload):
2065         * Scripts/webkitpy/port/device_port.py:
2066         (DevicePort):
2067         (DevicePort.configuration_for_upload): Devices are unique because their configuration is not
2068         the same as the machine uploading results.
2069         * Scripts/webkitpy/port/mac.py:
2070         (MacPort):
2071         (MacPort.configuration_for_upload): Define SDK in upload configuration for Mac.
2072         * Scripts/webkitpy/port/mac_unittest.py:
2073         (MacTest):
2074         (MacTest.test_configuration_for_upload):
2075         * Scripts/webkitpy/xcode/simulated_device.py:
2076         (SimulatedDeviceManager._create_device_with_runtime):
2077         (SimulatedDevice.__init__): Create simulated device with a build_version.
2078         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
2079         (test_existing_simulator):
2080
2081 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2082
2083         Remove extra newline characters (Follow-up fix to r243707)
2084
2085         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2086
2087 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2088
2089         [ews-app] Use API_KEY to accept results data
2090         https://bugs.webkit.org/show_bug.cgi?id=196461
2091
2092         Reviewed by Dewei Zhu.
2093
2094         * BuildSlaveSupport/ews-app/ews/views/results.py:
2095         (Results.post): Validate EWS_API_KEY before accepting any data.
2096         * BuildSlaveSupport/ews-build/events.py:
2097         (Events.sendData): Send EWS_API_KEY if available along with event data.
2098
2099 2019-04-01  Wenson Hsieh  <wenson_hsieh@apple.com>
2100
2101         Unable to copy and paste a PDF from Notes into Mail compose body
2102         https://bugs.webkit.org/show_bug.cgi?id=196442
2103         <rdar://problem/48573098>
2104
2105         Reviewed by Tim Horton.
2106
2107         Add new API tests to exercise pasting CNContact and MKMapItem-backed item providers. Additionally, adjust an
2108         existing test that pastes a PDF file as an attachment to not require UIPreferredPresentationStyleAttachment
2109         to be specified on the item providers.
2110
2111         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2112         (TestWebKitAPI::mapItemForTesting):
2113         (TestWebKitAPI::contactItemForTesting):
2114
2115 2019-04-01  Tim Horton  <timothy_horton@apple.com>
2116
2117         Make UIWKDocumentContext rects per-character instead of per-word
2118         https://bugs.webkit.org/show_bug.cgi?id=196459
2119
2120         Reviewed by Wenson Hsieh.
2121
2122         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
2123         (TEST):
2124         Adjust test results due to switching to per-character rects.
2125
2126 2019-04-01  Chris Dumez  <cdumez@apple.com>
2127
2128         UIProcess crash when a prewarmed process is terminated
2129         https://bugs.webkit.org/show_bug.cgi?id=196451
2130         <rdar://problem/49245471>
2131
2132         Reviewed by Geoffrey Garen.
2133
2134         Add API test coverage.
2135
2136         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
2137         (TEST):
2138
2139 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2140
2141         [ews-app] Display OS and Xcode configuration in status-bubble's hover-over message
2142         https://bugs.webkit.org/show_bug.cgi?id=196449
2143
2144         Reviewed by Lucas Forschler.
2145
2146         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2147         (StatusBubble.get_os_details): Method to get OS and Xcode details.
2148         (StatusBubble._build_bubble): Moved the timestamp logic to common method.
2149         (StatusBubble.get_build_timestamp): Method to get the timestamp to display for the build.
2150
2151 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2152
2153         [ews-build] Remove force schedulers from OpenSource EWS Buildbot
2154         https://bugs.webkit.org/show_bug.cgi?id=196444
2155
2156         Reviewed by Lucas Forschler.
2157
2158         * BuildSlaveSupport/ews-build/loadConfig.py: Remove ForceSchedulers.
2159
2160 2019-04-01  Alex Christensen  <achristensen@webkit.org>
2161
2162         Add SPI to canonicalize NSURLs with WTF::URL
2163         https://bugs.webkit.org/show_bug.cgi?id=196415
2164         <rdar://problem/44980271>
2165
2166         Reviewed by Darin Adler.
2167
2168         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2169         * TestWebKitAPI/Tests/WebKitLegacy/mac/URLCanonicalization.mm: Added.
2170         (TestWebKitAPI::TEST):
2171
2172 2019-04-01  Zan Dobersek  <zdobersek@igalia.com>
2173
2174         [WPE] EventSenderProxy constructor is called before a PlatformWindow is usable
2175         https://bugs.webkit.org/show_bug.cgi?id=196441
2176
2177         Reviewed by Carlos Garcia Campos.
2178
2179         Don't cache the wpe_view_backend object that might not exist yet at the
2180         time of EventSenderProxy constructor invocation, but instead retrieve
2181         that object whenever it's required for event dispatching. This should
2182         avoid crashes in this constructor now that it's invoked before any
2183         PlatformWindow has been set up (as changed in r243496).
2184
2185         * WebKitTestRunner/EventSenderProxy.h:
2186         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2187         (WTR::viewBackend):
2188         (WTR::EventSenderProxy::EventSenderProxy):
2189         (WTR::EventSenderProxy::mouseDown):
2190         (WTR::EventSenderProxy::mouseUp):
2191         (WTR::EventSenderProxy::mouseMoveTo):
2192         (WTR::EventSenderProxy::mouseScrollBy):
2193         (WTR::EventSenderProxy::keyDown):
2194         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
2195
2196 2019-03-31  Fujii Hironori  <Hironori.Fujii@sony.com>
2197
2198         [Win][WebKit] MiniBrowser should support high DPI display
2199         https://bugs.webkit.org/show_bug.cgi?id=196391
2200
2201         Reviewed by Alex Christensen.
2202
2203         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2204         (WebKitBrowserWindow::WebKitBrowserWindow): Call resetZoom to set the page zoom factor.
2205         (WebKitBrowserWindow::resetZoom): Changed the default page zoom factor from 1 to the device scale factor.
2206         * MiniBrowser/win/stdafx.h: Define WEBCORE_EXPORT.
2207
2208 2019-03-31  Sam Weinig  <weinig@apple.com>
2209
2210         Remove more i386 specific configurations
2211         https://bugs.webkit.org/show_bug.cgi?id=196430
2212
2213         Reviewed by Alexey Proskuryakov.
2214
2215         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2216         ENABLE_WEB_AUTHN_macosx and ENABLE_WEB_RTC_macosx can now be enabled unconditionally on macOS.
2217
2218 2019-03-31  Andy Estes  <aestes@apple.com>
2219
2220         [iOS] WebKit should consult the navigation response policy delegate before previewing a QuickLook document
2221         https://bugs.webkit.org/show_bug.cgi?id=196433
2222         <rdar://problem/49293305>
2223
2224         Reviewed by Tim Horton.
2225
2226         Enhanced API test coverage to include all navigation response policy decisions in both
2227         linked-before and linked-on-or-after modes. Also added new expectations for all tests.
2228
2229         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2230         * TestWebKitAPI/Tests/WebCore/ios/PreviewConverter.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp.
2231         (TestWebKitAPI::TEST):
2232         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
2233         (readFile):
2234         (-[QuickLookDelegate initWithExpectedFileURL:responsePolicy:]):
2235         (-[QuickLookDelegate initWithExpectedFileURL:previewMIMEType:responsePolicy:]):
2236         (-[QuickLookDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2237         (-[QuickLookDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
2238         (-[QuickLookDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
2239         (-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
2240         (-[QuickLookDelegate _webViewWebProcessDidCrash:]):
2241         (-[QuickLookDelegate _downloadDidStart:]):
2242         (-[QuickLookDelegate _download:didReceiveResponse:]):
2243         (-[QuickLookDelegate _download:didReceiveData:]):
2244         (-[QuickLookDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
2245         (-[QuickLookDelegate _downloadDidFinish:]):
2246         (-[QuickLookDelegate _download:didFailWithError:]):
2247         (-[QuickLookDelegate _downloadDidCancel:]):
2248         (-[QuickLookDelegate verifyDownload]):
2249         (runTest):
2250         (runTestDecideBeforeLoading):
2251         (runTestDecideAfterLoading):
2252         (TEST):
2253         (-[QuickLookAsyncDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2254         (-[QuickLookPasswordDelegate _webViewDidRequestPasswordForQuickLookDocument:]):
2255         (-[QuickLookFrameLoadDelegate webView:didFinishLoadForFrame:]):
2256         (-[QuickLookNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
2257         (-[QuickLookNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
2258         (-[QuickLookNavigationDelegate webView:didFinishNavigation:]): Deleted.
2259         (-[QuickLookAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
2260         (-[QuickLookAsyncNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
2261         (-[QuickLookAsyncNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
2262         (-[QuickLookAsyncNavigationDelegate webView:didFinishNavigation:]): Deleted.
2263         (-[QuickLookDecidePolicyDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
2264         (-[QuickLookDecidePolicyDelegate webView:didFailProvisionalNavigation:withError:]): Deleted.
2265         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]): Deleted.
2266         (-[QuickLookPasswordNavigationDelegate _webViewDidRequestPasswordForQuickLookDocument:]): Deleted.
2267
2268 2019-03-30  Dominik Infuehr  <dinfuehr@igalia.com>
2269
2270         [CMake] add testdfg as target with build-jsc
2271         https://bugs.webkit.org/show_bug.cgi?id=196393
2272
2273         Reviewed by Saam Barati.
2274
2275         Added testdfg as one of the targets to build when
2276         using CMake.
2277
2278         * Scripts/build-jsc:
2279
2280 2019-03-29  Myles C. Maxfield  <mmaxfield@apple.com>
2281
2282         Delete WebMetal implementation in favor of WebGPU
2283         https://bugs.webkit.org/show_bug.cgi?id=195418
2284
2285         Reviewed by Dean Jackson.
2286
2287         * DumpRenderTree/mac/DumpRenderTree.mm:
2288         (enableExperimentalFeatures):
2289         (resetWebPreferencesToConsistentValues):
2290         * Scripts/webkitperl/FeatureList.pm:
2291         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2292         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2293         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Removed.
2294         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyBuffer.mm: Removed.
2295         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyCommandQueue.mm: Removed.
2296         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyDevice.mm: Removed.
2297         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyFunction.mm: Removed.
2298         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyLibrary.mm: Removed.
2299         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyTest.h: Removed.
2300         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2301         (WTR::InjectedBundle::beginTesting):
2302         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2303         (WTR::TestRunner::setWebMetalEnabled): Deleted.
2304         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2305
2306 2019-03-29  Chris Dumez  <cdumez@apple.com>
2307
2308         REGRESSION (r243523): Six form-related watchOS layout tests are timing out
2309         https://bugs.webkit.org/show_bug.cgi?id=196405
2310         <rdar://problem/49428130>
2311
2312         Reviewed by Wenson Hsieh.
2313
2314         Add a shouldPresentPopovers=false WebKitTestRunner option to cause WKTR to swizzle
2315         the popover presentation methods to be no-ops. Use this in the new test added in
2316         r243523 so that we do not swizzle those methods for all tests. This is needed because
2317         those WatchOS tests rely on the popover getting presented and interactive.
2318
2319         * WebKitTestRunner/TestController.cpp:
2320         (WTR::updateTestOptionsFromTestHeader):
2321         * WebKitTestRunner/TestController.h:
2322         * WebKitTestRunner/TestOptions.h:
2323         (WTR::TestOptions::hasSameInitializationOptions const):
2324         * WebKitTestRunner/ios/TestControllerIOS.mm:
2325         (WTR::TestController::platformInitialize):
2326         (WTR::TestController::platformResetStateToConsistentValues):
2327
2328 2019-03-29  Takashi Komori  <Takashi.Komori@sony.com>
2329
2330         [Curl] Add Server Trust Evaluation Support.
2331         https://bugs.webkit.org/show_bug.cgi?id=191646
2332
2333         Reviewed by Fujii Hironori.
2334
2335         Implemented MiniBrowser UI for asking if user trusts the server.
2336
2337         * MiniBrowser/win/Common.cpp:
2338         (askServerTrustEvaluation):
2339         (replaceString):
2340         * MiniBrowser/win/Common.h:
2341         * MiniBrowser/win/MiniBrowserLib.rc:
2342         * MiniBrowser/win/MiniBrowserLibResource.h:
2343         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2344         (createPEMString):
2345         (WebKitBrowserWindow::didReceiveAuthenticationChallenge):
2346         (WebKitBrowserWindow::canTrustServerCertificate):
2347         * MiniBrowser/win/WebKitBrowserWindow.h:
2348
2349 2019-03-29  Cathie Chen  <cathiechen@igalia.com>
2350
2351         Implement ResizeObserver.
2352         https://bugs.webkit.org/show_bug.cgi?id=157743
2353
2354         Reviewed by Simon Fraser.
2355
2356         Support resizeObserverEnabled webPreferences.
2357
2358         * DumpRenderTree/TestOptions.cpp:
2359         (TestOptions::TestOptions):
2360         * DumpRenderTree/TestOptions.h:
2361         * DumpRenderTree/mac/DumpRenderTree.mm:
2362         (setWebPreferencesForTestOptions):
2363         * DumpRenderTree/win/DumpRenderTree.cpp:
2364         (enableExperimentalFeatures):
2365         * Scripts/webkitperl/FeatureList.pm:
2366         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2367
2368 2019-03-28  John Wilander  <wilander@apple.com>
2369
2370         Resource Load Statistics: IPC to the WebsiteDataStore in the UI process from NetworkProcess::deleteWebsiteDataForRegistrableDomains()
2371         https://bugs.webkit.org/show_bug.cgi?id=196281
2372         <rdar://problem/48938748>
2373
2374         Reviewed by Alex Christensen.
2375
2376         This patch adds the function isStatisticsHasLocalStorage() to the
2377         TestRunner. With it, the page can query the WebsiteDataStore in the
2378         UI process to make sure that it sees LocalStorage.
2379
2380         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2381         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2382         (WTR::TestRunner::isStatisticsHasLocalStorage):
2383         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2384         * WebKitTestRunner/TestController.cpp:
2385         (WTR::TestController::isStatisticsHasLocalStorage):
2386         * WebKitTestRunner/TestController.h:
2387         * WebKitTestRunner/TestInvocation.cpp:
2388         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2389
2390 2019-03-28  Jiewen Tan  <jiewen_tan@apple.com>
2391
2392         API::Data::createWithoutCopying should do a null check before calling CFRelease
2393         https://bugs.webkit.org/show_bug.cgi?id=196276
2394         <rdar://problem/48059859>
2395
2396         Reviewed by Alex Christensen.
2397
2398         Add an API test that will pass a nil to API::Data::createWithoutCopying via NavigationState::NavigationClient::webCryptoMasterKey.
2399
2400         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2401         * TestWebKitAPI/Tests/WebKit/navigation-client-default-crypto.html:
2402         * TestWebKitAPI/Tests/WebKitCocoa/WebCryptoMasterKey.mm: Added.
2403         (-[WebCryptoMasterKeyNavigationDelegate _webCryptoMasterKeyForWebView:]):
2404         (-[WebCryptoMasterKeyNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2405         (TestWebKitAPI::TEST):
2406
2407 2019-03-28  Michael Catanzaro  <mcatanzaro@igalia.com>
2408
2409         [WPE][GTK] webkit_web_resource_get_data_finish can return NULL without setting error
2410         https://bugs.webkit.org/show_bug.cgi?id=186276
2411
2412         Reviewed by Carlos Garcia Campos.
2413
2414         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
2415         (webViewLoadChanged):
2416         (testWebResourceGetDataError):
2417         (testWebResourceGetDataEmpty):
2418         (beforeAll):
2419         (webViewloadChanged): Deleted.
2420
2421 2019-03-27  Andy Estes  <aestes@apple.com>
2422
2423         REGRESSION (r242686): package-root creates roots with broken symlinks in WebKit.framework/XPCServices/
2424         https://bugs.webkit.org/show_bug.cgi?id=196317
2425
2426         Reviewed by Dan Bernstein.
2427
2428         package-root copies built products into a staging directory using ditto(1), which does not
2429         follow symbolic links as it traverses a directory. Now that the files in
2430         WebKit.framework/XPCServices/ are symbolic links to a location outside of the framework
2431         itself, these become broken links when ditto'd into the staging directory.
2432
2433         To account for this, change package-root to copy using cp(1) in a mode that follows symlinks.
2434
2435         * Scripts/package-root:
2436
2437 2019-03-27  Aakash Jain  <aakash_jain@apple.com>
2438
2439         [ews-app] Update display text of Submit for ews analysis
2440         https://bugs.webkit.org/show_bug.cgi?id=196309
2441
2442         Reviewed by Dewei Zhu.
2443
2444         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
2445
2446 2019-03-27  David Kilzer  <ddkilzer@apple.com>
2447
2448         run-webkit-tests should check for leaks in WebKit processes
2449         <https://webkit.org/b/193772>
2450         <rdar://problem/46526680>
2451
2452         Reviewed by Ryosuke Niwa.
2453
2454         This works by doing the following:
2455         - Add a "#LIST CHILD PROCESSES" command to WebKitTestRunnner.
2456           The list of child processes are returned one per line:
2457           process.name: pid
2458         - Run the "#LIST CHILD PROCESSES" command just before the
2459           "#CHECK FOR WORLD LEAKS" command, and store the list of child
2460           processes on the ServerProcess object.
2461         - When the `--leaks` switch is handled, run check_for_leaks() on
2462           each child process after the main test harness.
2463
2464         * DumpRenderTree/mac/DumpRenderTree.mm:
2465         (handleControlCommand):
2466         - Use strncmp() instead of strcmp().
2467         - Add support for handling "#LIST CHILD PROCESSES" command.
2468
2469         * Scripts/webkitpy/port/base.py:
2470         (Port.check_for_leaks):
2471         * Scripts/webkitpy/port/darwin.py:
2472         (DarwinPort.check_for_leaks):
2473         - Rename redundant 'process_pid' argument to 'process_id'.
2474
2475         * Scripts/webkitpy/port/driver.py:
2476         (Driver.do_post_tests_work):
2477         - Restructure the logic since "#CHECK FOR WORLD LEAKS" is no
2478           longer the only command this sends to WebKitTestRunner.
2479         - If the `--leaks` switch is present, send the
2480           "#LIST CHILD PROCESSES" to WebKitTestRunner and store the
2481           result using Port.set_webkit_processes().
2482         (Driver._parse_child_processes_output):
2483         - Add helper method to parse list of child process names and
2484           process IDs returned from WebKitTestRunner.
2485
2486         * Scripts/webkitpy/port/ios_device.py:
2487         (IOSDevicePort.check_for_leaks):
2488         - Rename redundant 'process_pid' argument to 'process_id'.
2489
2490         * Scripts/webkitpy/port/leakdetector.py:
2491         (LeakDetector._parse_leaks_output):
2492         - Return early if there is no leaks_output.
2493         (LeakDetector.check_for_leaks):
2494         - Rename redundant 'process_pid' argument to 'process_id'.
2495
2496         * Scripts/webkitpy/port/server_process.py:
2497         (ServerProcess.__init__):
2498         (ServerProcess.child_processes):
2499         (ServerProcess.set_child_processes):
2500         - Add instance variable to Port to store list of child process
2501           names and process IDs returned from WebKitTestRunner.
2502         (ServerProcess._start):
2503         - Clear self._child_processes.
2504         (ServerProcess.stop):
2505         - If self._child_processes is set, call
2506           self._port.check_for_leaks() for each child process.
2507
2508         * Scripts/webkitpy/port/server_process_unittest.py:
2509         (TrivialMockPort.check_for_leaks):
2510         - Rename redundant 'process_pid' argument to 'process_id'.
2511
2512         * Scripts/webkitpy/port/simulator_process.py:
2513         (SimulatorProcess.stop):
2514         - If self._child_processes is set, call
2515           self._port.check_for_leaks() for each child process.
2516
2517         * Scripts/webkitpy/port/watch_device.py:
2518         (WatchDevicePort.check_for_leaks):
2519         - Rename redundant 'process_pid' argument to 'process_id'.
2520
2521         * WebKitTestRunner/TestController.cpp:
2522         (WTR::TestController::dumpResponse):
2523         - Extract method from findAndDumpWorldLeaks() so that it may be
2524           reused by findAndDumpWebKitProcessIdentifiers().
2525         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
2526         - Add method to output process name and process ID of both the
2527           WebContent and Networking processes.
2528         (WTR::TestController::findAndDumpWorldLeaks):
2529         - Fix missing newline in output when there were no abandoned
2530           documents.
2531         - Call dumpResponse() for extracted code.
2532         (WTR::TestController::handleControlCommand):
2533         - Restructure the logic for "#CHECK FOR WORLD LEAKS".
2534         - Use strncmp() instead of strcmp().
2535         - Call findAndDumpWebKitProcessIdentifiers() when
2536           "#LIST CHILD PROCESSES" command is sent.
2537         * WebKitTestRunner/TestController.h:
2538         (WTR::TestController::dumpResponse):
2539         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
2540         - Declare methods.
2541
2542 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
2543
2544         Unreviewed. Add GLib API test cases after r243434.
2545
2546         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
2547         (testWebViewActiveURI):
2548         (serverCallback):
2549         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
2550         (sendRequestCallback):
2551
2552 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
2553
2554         Geolocation request not complete when watch request was started in a different web process
2555         https://bugs.webkit.org/show_bug.cgi?id=195996
2556
2557         Reviewed by Alex Christensen.
2558
2559         Add a test case.
2560
2561         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
2562         (TestWebKitAPI::runJavaScriptAlert):
2563         (TestWebKitAPI::TEST):
2564
2565 2019-03-26  Keith Rollin  <krollin@apple.com>
2566
2567         Update the way generate-xcfilelists returns strings from functions
2568         https://bugs.webkit.org/show_bug.cgi?id=195975
2569         <rdar://problem/49040807>
2570
2571         Reviewed by Dean Jackson.
2572
2573         There are places where generate-xcfilelists executes assignments with
2574         statements like:
2575
2576             FOO=$(some_function)
2577
2578         where "some_function" return a string by echoing it. E.g.
2579
2580             some_function()
2581             {
2582                 echo "Hello, World"
2583             }
2584
2585         This is a common idiom, but it has a problem if "some_function" needs
2586         to call "exit" in an attempt to halt the entire script right then and
2587         there. Since "some_function" is called inside of $(), it's being
2588         executed in a sub-shell. Calling exit in that sub-shell simply exits
2589         that shell; it doesn't not exit the outer shell in which the main part
2590         of the script is still running. As such, the main script keeps
2591         executing when the intent was for the script to halt.
2592
2593         The solution to this is to use a different idiom for returning
2594         strings. The one we now is to pass in the name of the variable to
2595         receive the string result:
2596
2597             some_function()
2598             {
2599                 variable_name=$1
2600                 eval $variable_name ="Hello, World"
2601             }
2602
2603         The call site now looks like
2604
2605             some_function FOO
2606
2607         Because there's no invocation of a sub-shell, some_function can now
2608         call "exit" if it wants to, and the entire script will exit at that
2609         point.
2610
2611         * Scripts/generate-xcfilelists:
2612
2613 2019-03-26  Chris Dumez  <cdumez@apple.com>
2614
2615         Add basic layout test coverage for File Picker on iOS
2616         https://bugs.webkit.org/show_bug.cgi?id=196265
2617
2618         Reviewed by Wenson Hsieh.
2619
2620         Add layout test infrastructure to test the file picker on iOS.
2621
2622         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2623         (WTR::UIScriptController::dismissFilePicker):
2624         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2625         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2626         (WTR::UIScriptController::dismissFilePicker):
2627         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2628         * WebKitTestRunner/TestController.cpp:
2629         (WTR::TestController::createWebViewWithOptions):
2630         (WTR::updateTestOptionsFromTestHeader):
2631         * WebKitTestRunner/TestOptions.h:
2632         (WTR::TestOptions::hasSameInitializationOptions const):
2633         * WebKitTestRunner/ios/TestControllerIOS.mm:
2634         (overridePresentViewController):
2635         (WTR::TestController::platformInitialize):
2636         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2637         (WTR::UIScriptController::dismissFilePicker):
2638
2639 2019-03-26  Wenson Hsieh  <wenson_hsieh@apple.com>
2640
2641         Implement async paste method on UIWKInteractionViewProtocol
2642         https://bugs.webkit.org/show_bug.cgi?id=196267
2643         <rdar://problem/49236346>
2644
2645         Reviewed by Tim Horton.
2646
2647         Add a new test to exercise the new SPI. Additionally, add staging forward declarations for
2648         -pasteWithCompletionHandler:, and remove some old existing staging declarations for other bits of UIKit SPI that
2649         are now a part of all iOS 12 internal SDKs.
2650
2651         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
2652
2653         While we're here, also change a few iOS 11.3 checks to just be about PLATFORM(IOS) (since we don't build for iOS
2654         prior to 12, these version checks are effectively only about iOS vs. tvOS or watchOS).
2655
2656         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
2657         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2658         (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
2659         * TestWebKitAPI/ios/UIKitSPI.h:
2660
2661 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2662
2663         [ews-build] Use PostgreSQL for ews.webkit.org database
2664         https://bugs.webkit.org/show_bug.cgi?id=196270
2665
2666         Reviewed by Lucas Forschler.
2667
2668         * BuildSlaveSupport/ews-app/ews-app/settings.py:
2669
2670 2019-03-26  Jonathan Bedard  <jbedard@apple.com>
2671
2672         [ews] Reset simctl states on reboot
2673         https://bugs.webkit.org/show_bug.cgi?id=196260
2674
2675         Rubber-stamped by Aakash Jain.
2676
2677         * EWSTools/start-queue-mac.sh:
2678
2679 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2680
2681         [ews-build] Use PostgreSQL for ews-build database
2682         https://bugs.webkit.org/show_bug.cgi?id=196229
2683
2684         Reviewed by Lucas Forschler.
2685
2686         * BuildSlaveSupport/ews-build/master.cfg:
2687
2688 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2689
2690         [ews-build] Get master_hostname dynamically in master.cfg
2691         https://bugs.webkit.org/show_bug.cgi?id=196255
2692
2693         Reviewed by Lucas Forschler.
2694
2695         * BuildSlaveSupport/ews-build/master.cfg: Get hostname dynamically. Also do not
2696         send events data in test mode.
2697
2698 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2699
2700         [ews-app] Set db_constraint to False for Foreign Keys
2701         https://bugs.webkit.org/show_bug.cgi?id=196252
2702
2703         Reviewed by Lucas Forschler.
2704
2705         * BuildSlaveSupport/ews-app/ews/models/build.py:
2706         * BuildSlaveSupport/ews-app/ews/models/step.py:
2707
2708 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2709
2710         [ews-build] is_test_mode_enabled should default to True
2711         https://bugs.webkit.org/show_bug.cgi?id=196248
2712
2713         Reviewed by Lucas Forschler.
2714
2715         * BuildSlaveSupport/ews-build/master.cfg: Reverse the environment variable used to decide is_test_mode_enabled.
2716
2717 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2718
2719         [ews-app] Add webkitperl to ENABLED_QUEUES
2720         https://bugs.webkit.org/show_bug.cgi?id=196253
2721
2722         Reviewed by Lucas Forschler.
2723
2724         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2725
2726 2019-03-25  Alexey Proskuryakov  <ap@apple.com>
2727
2728         Address NSWindow sometimes using WebKitTestRunnerEvent too early
2729         https://bugs.webkit.org/show_bug.cgi?id=196211
2730         rdar://problem/49110552
2731
2732         Reviewed by Tim Horton.
2733
2734         * WebKitTestRunner/TestController.cpp: (WTR::TestController::initialize):
2735         Make sure that EventSenderProxy always exists when running tests. We used to create
2736         it when resetting before the first test, which is a bit too late.
2737
2738         * WebKitTestRunner/TestController.h:
2739         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2740         (WTR::TestController::platformCreateWebView):
2741         (WTR::TestController::platformCreateOtherPage):
2742         (WTR::TestController::finishCreatingPlatformWebView):
2743         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2744         (WTR::PlatformWebView::PlatformWebView):
2745         Moved some code that made NSWindow use NSEvent during web view creation. We may
2746         need to move more if some other case us found, but this is enough for now.
2747
2748 2019-03-26  Carlos Garcia Campos  <cgarcia@igalia.com>
2749
2750         Unreviewed. Fix typo in GLib geolocation API after r243285.
2751
2752         gelocation -> geolocation.
2753
2754         * TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp:
2755         (testGeolocationManagerWatchPosition):
2756
2757 2019-03-25  Alex Christensen  <achristensen@webkit.org>
2758
2759         Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
2760         https://bugs.webkit.org/show_bug.cgi?id=196213
2761
2762         Reviewed by Geoff Garen.
2763
2764         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2765         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
2766         (credentialWithIdentityAndKeychainPath):
2767         (-[ChallengeDelegate webView:didFinishNavigation:]):
2768         (-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
2769         (TestWebKitAPI::TEST):
2770
2771 2019-03-25  Alex Christensen  <achristensen@webkit.org>
2772
2773         Expected shouldn't assume its contained types are copyable
2774         https://bugs.webkit.org/show_bug.cgi?id=195986
2775
2776         Reviewed by JF Bastien.
2777
2778         * TestWebKitAPI/Tests/WTF/Expected.cpp:
2779         (TestWebKitAPI::NonCopyable::operator== const):
2780         (TestWebKitAPI::NonCopyable::operator!= const):
2781         (TestWebKitAPI::TEST):
2782
2783 2019-03-25  Tim Horton  <timothy_horton@apple.com>
2784
2785         Remove some now-unnecessary dynamic class lookup
2786         https://bugs.webkit.org/show_bug.cgi?id=196237
2787
2788         Reviewed by Simon Fraser.
2789
2790         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
2791         (makeRequest):
2792         (TEST):
2793
2794 2019-03-25  Fujii Hironori  <Hironori.Fujii@sony.com>
2795
2796         Unreviewed, rolling out r243450.
2797
2798         AppleWin and WinCairo port builds get broken.
2799
2800         Reverted changeset:
2801
2802         "Add test for fix of #196095"
2803         https://bugs.webkit.org/show_bug.cgi?id=196097
2804         https://trac.webkit.org/changeset/243450
2805
2806 2019-03-25  Commit Queue  <commit-queue@webkit.org>
2807
2808         Unreviewed, rolling out r243465.
2809         https://bugs.webkit.org/show_bug.cgi?id=196226
2810
2811         the test doesn't build (Requested by thorton on #webkit).
2812
2813         Reverted changeset:
2814
2815         "Do not terminate the NetworkProcess if a third party
2816         application sends a NSCredential with a SecIdentityRef"
2817         https://bugs.webkit.org/show_bug.cgi?id=196213
2818         https://trac.webkit.org/changeset/243465
2819
2820 2019-03-25  Alex Christensen  <achristensen@webkit.org>
2821
2822         Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
2823         https://bugs.webkit.org/show_bug.cgi?id=196213
2824
2825         Reviewed by Geoff Garen.
2826
2827         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2828         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
2829         (credentialWithIdentityAndKeychainPath):
2830         (-[ChallengeDelegate webView:didFinishNavigation:]):
2831         (-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
2832         (TestWebKitAPI::TEST):
2833
2834 2019-03-25  Aakash Jain  <aakash_jain@apple.com>
2835
2836         [ews-build] Gracefully handle missing patch_id in events
2837         https://bugs.webkit.org/show_bug.cgi?id=196216
2838
2839         Reviewed by Lucas Forschler.
2840
2841         * BuildSlaveSupport/ews-build/events.py:
2842
2843 2019-03-25  Aakash Jain  <aakash_jain@apple.com>
2844
2845         [ews-build] use lz4 compression for improving buildbot performance
2846         https://bugs.webkit.org/show_bug.cgi?id=196155
2847
2848         Reviewed by Lucas Forschler.
2849
2850         * BuildSlaveSupport/ews-build/master.cfg:
2851
2852 2019-03-25  Wenson Hsieh  <wenson_hsieh@apple.com>
2853
2854         Pull some API testing helper methods out of TestWKWebView
2855         https://bugs.webkit.org/show_bug.cgi?id=196212
2856
2857         Reviewed by Tim Horton.
2858
2859         Refactor some more API testing utility methods, so that they can be used in
2860         tests that do not use TestWKWebView.
2861
2862         * TestWebKitAPI/cocoa/TestWKWebView.h:
2863         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2864         (-[WKWebView loadTestPageNamed:]):
2865         (-[WKWebView synchronouslyLoadHTMLString:baseURL:]):
2866         (-[WKWebView synchronouslyLoadHTMLString:]):
2867         (-[WKWebView synchronouslyLoadTestPageNamed:]):
2868         (-[TestWKWebView loadTestPageNamed:]): Deleted.
2869         (-[TestWKWebView synchronouslyLoadHTMLString:baseURL:]): Deleted.
2870         (-[TestWKWebView synchronouslyLoadHTMLString:]): Deleted.
2871         (-[TestWKWebView synchronouslyLoadTestPageNamed:]): Deleted.
2872
2873 2019-03-25  Jer Noble  <jer.noble@apple.com>
2874
2875         Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
2876         https://bugs.webkit.org/show_bug.cgi?id=196097
2877
2878         Reviewed by Eric Carlson.
2879
2880         Drive-by bug fix: allow tests to play audio without a user gesture by default.
2881
2882         * DumpRenderTree/mac/DumpRenderTree.mm:
2883         (resetWebPreferencesToConsistentValues):
2884         * WebKitTestRunner/TestController.cpp:
2885         (WTR::TestController::resetPreferencesToConsistentValues):
2886
2887 2019-03-25  Wenson Hsieh  <wenson_hsieh@apple.com>
2888
2889         Pull IPadUserInterfaceSwizzler out into a separate header file
2890         https://bugs.webkit.org/show_bug.cgi?id=196193
2891
2892         Reviewed by Anders Carlsson.
2893
2894         Pull the IPadUserInterfaceSwizzler helper class out into a separate file, so that it may
2895         be used in other API tests.
2896
2897         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2898         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
2899         (TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler): Deleted.
2900         (TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom): Deleted.
2901         * TestWebKitAPI/ios/IPadUserInterfaceSwizzler.h: Added.
2902         (TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler):
2903         (TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom):
2904
2905 2019-03-25  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2906
2907         Remove NavigatorContentUtils in WebCore/Modules
2908         https://bugs.webkit.org/show_bug.cgi?id=196070
2909
2910         Reviewed by Alex Christensen.
2911
2912         NavigatorContentUtils was to support the custom scheme spec [1].
2913         However, in WebKit side, no port has supported the feature in
2914         WebKit layer after EFL port was removed. So there has been the
2915         only IDL implementation of the NavigatorContentUtils in WebCore.
2916         So we don't need to keep the implementation in WebCore anymore.
2917
2918         [1] https://html.spec.whatwg.org/multipage/system-state.html#custom-handlers
2919
2920         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2921
2922 2019-03-24  Andy Estes  <aestes@apple.com>
2923
2924         [watchOS] Remove unused Proximity Networking code
2925         https://bugs.webkit.org/show_bug.cgi?id=196188
2926
2927         Reviewed by Tim Horton.
2928
2929         * TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
2930         (TEST):
2931
2932 2019-03-23  Keith Miller  <keith_miller@apple.com>
2933
2934         Refactor clz/ctz and fix getLSBSet.
2935         https://bugs.webkit.org/show_bug.cgi?id=196162
2936
2937         Reviewed by Saam Barati.
2938
2939         Add tests for clz, ctz, getLSBSet, and getMSBSet.
2940
2941         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
2942         (TestWebKitAPI::TEST):
2943
2944 2019-03-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2945
2946         [GTK][WPE] check-webkit-style doesn't complain about identifiers with underscores in files under glib, gtk or wpe dirs
2947         https://bugs.webkit.org/show_bug.cgi?id=196143
2948
2949         Reviewed by Michael Catanzaro.
2950
2951         Fix the check for the exception of identifiers starting with webkit_ in files under glib, gtk or wpe
2952         directories.
2953
2954         * Scripts/webkitpy/style/checkers/cpp.py:
2955         (check_identifier_name_in_declaration):
2956         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2957         (WebKitStyleTest.test_names):
2958
2959 2019-03-22  Philippe Normand  <pnormand@igalia.com>
2960
2961         [Flatpak] Manifest expanding fails for qt WPE extension
2962         https://bugs.webkit.org/show_bug.cgi?id=196148
2963
2964         Reviewed by Alex Christensen.
2965
2966         * flatpak/flatpakutils.py:
2967         (expand_submodules_recurse): The last recurse manifest expand
2968         iteration might lead to a single module so take it into account
2969         and don't try to recurse further.
2970
2971 2019-03-22  Chris Dumez  <cdumez@apple.com>
2972
2973         [ iOS Simulator] REGRESSION (r241821) Layout Test platform/ipad/fast/viewport/viewport-unchanged-by-minimum-effective-width-if-not-ignore-meta-viewport.html is a flaky failure on bots
2974         https://bugs.webkit.org/show_bug.cgi?id=195348
2975         <rdar://problem/48622090>
2976
2977         Reviewed by Alex Christensen.
2978
2979         Make sure webView.configuration.preferences._shouldIgnoreMetaViewport gets reset
2980         to NO when test.options().shouldIgnoreMetaViewport is false.
2981
2982         * WebKitTestRunner/ios/TestControllerIOS.mm:
2983         (WTR::TestController::platformConfigureViewForTest):
2984
2985 2019-03-22  Chris Dumez  <cdumez@apple.com>
2986
2987         Prewarmed processes should be usable with any website data store
2988         https://bugs.webkit.org/show_bug.cgi?id=196104
2989
2990         Reviewed by Alex Christensen.
2991
2992         Add API test coverage.
2993
2994         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
2995         (runInitialWarmedProcessUsedTest):
2996         (TEST):
2997
2998 2019-03-22  David Kilzer  <ddkilzer@apple.com>
2999
3000         Back out local changes to Alex's Subversion working directory
3001
3002         They were accidentally committed.
3003
3004         * Scripts/webkitpy/common/system/abstractexecutive.py:
3005         (AbstractExecutive.wait_newest):
3006         * Scripts/webkitpy/common/system/executive.py:
3007         (Executive.running_pids):
3008         * Scripts/webkitpy/common/system/executive_mock.py:
3009         (MockExecutive.running_pids):
3010         * Scripts/webkitpy/common/system/executive_unittest.py:
3011         (ExecutiveTest.serial_test_running_pids):
3012         * Scripts/webkitpy/port/darwin.py:
3013         (DarwinPort.check_for_leaks):
3014         * Scripts/webkitpy/port/leakdetector.py:
3015         (LeakDetector.check_for_leaks):
3016         - This was the hack attached to Bug 193772.
3017
3018         * WebKitTestRunner/mac/WebKitTestRunnerEvent.mm:
3019         (+[WebKitTestRunnerEvent mouseLocation]):
3020         - This works around a crash on an internal build.
3021
3022 2019-03-22  Tim Horton  <timothy_horton@apple.com>
3023
3024         Fix the build after r243354
3025         https://bugs.webkit.org/show_bug.cgi?id=196138
3026         <rdar://problem/49145951>
3027
3028         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3029         (TEST):
3030         * TestWebKitAPI/ios/UIKitSPI.h:
3031
3032 2019-03-21  Tim Horton  <timothy_horton@apple.com>
3033
3034         Adopt UIWKDocumentContext
3035         https://bugs.webkit.org/show_bug.cgi?id=196040
3036         <rdar://problem/48642440>
3037
3038         Reviewed by Ryosuke Niwa.
3039
3040         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3041         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm: Added.
3042         (makeRequest):
3043         (-[TestWKWebView synchronouslyRequestDocumentContext:]):
3044         (-[TestWKWebView synchronouslyAdjustSelectionWithDelta:]):
3045         (applyStyle):
3046         (TEST):
3047         Add tests for UIWKDocumentContext.
3048
3049         * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
3050         (TEST):
3051         (recursiveFindWKContentView): Deleted.
3052         * TestWebKitAPI/cocoa/TestWKWebView.h:
3053         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3054         (recursiveFindWKContentView):
3055         (-[TestWKWebView wkContentView]):
3056         * TestWebKitAPI/ios/UIKitSPI.h:
3057         Share the WKContentView finding code between tests.
3058
3059 2019-03-21  Simon Fraser  <simon.fraser@apple.com>
3060
3061         [iOS WK2] Turn on async overflow scrolling by default
3062         https://bugs.webkit.org/show_bug.cgi?id=196011
3063         rdar://problem/48453859
3064
3065         Reviewed by Antti Koivisto.
3066         
3067         Explicitly turn off the async overflow scrolling internal feature for tests by default,
3068         since so many basic layout tests have different results when compositing is triggered for
3069         overflow.
3070         
3071         Individual tests will re-enable with <!-- webkit-test-runner [ internal:AsyncOverflowScrollingEnabled=true ] -->.
3072
3073         * WebKitTestRunner/TestController.cpp:
3074         (WTR::TestController::resetPreferencesToConsistentValues):
3075
3076 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3077
3078         [ews-build] Retry API test in case of failures
3079         https://bugs.webkit.org/show_bug.cgi?id=196004
3080
3081         Reviewed by Lucas Forschler.
3082
3083         * BuildSlaveSupport/ews-build/steps.py:
3084         (UnApplyPatchIfRequired.doStepIf): Updated doStepIf to include patchFailedAPITests.
3085         (CompileWebKitToT.doStepIf): Ditto.
3086         (RunAPITests.evaluateCommand): Check if tests failed and retry them if required.
3087         (ReRunAPITests): Re-run API tests.
3088         (ReRunAPITests.evaluateCommand): Check if tests failed and retry on clean build if required.
3089         (RunAPITestsWithoutPatch): Run API tests without patch.
3090         (RunAPITestsWithoutPatch.doStepIf):
3091         (RunAPITestsWithoutPatch.hideStepIf):
3092         (RunAPITestsWithoutPatch.evaluateCommand):
3093         (AnalyzeAPITestsResults): Analyze API test results from previous runs.
3094         (AnalyzeAPITestsResults.start):
3095         (AnalyzeAPITestsResults.analyzeResults): Analyze API test results.
3096         (AnalyzeAPITestsResults.getBuildStepByName): Search for a build step by name.
3097         (AnalyzeAPITestsResults.getTestsResults): Get the test results from previous API tesst steps.
3098         * BuildSlaveSupport/ews-build/steps_unittest.py: Monkey patched FakeBuild.
3099
3100 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3101
3102         [ews-build] Update queues configurations
3103         https://bugs.webkit.org/show_bug.cgi?id=196074
3104
3105         Reviewed by Dewei Zhu.
3106
3107         * BuildSlaveSupport/ews-build/config.json: Updated queues from iOS11 to iOS12,
3108         added new bots, reassigned bots for various builders, moved few builders to another scheduler.
3109
3110 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3111
3112         [ews-app] Generate status-bubble hover-over messages (Follow-up fix)
3113         https://bugs.webkit.org/show_bug.cgi?id=195680
3114         <rdar://problem/48903534>
3115
3116         Unreviewed infrastructure fix.
3117
3118         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3119         (StatusBubble._build_bubble): Do not append to details_message in the cases in which it wasn't defined earlier.
3120
3121 2019-03-21  Andy Estes  <aestes@apple.com>
3122
3123         [iOS] Apple Pay should be available in documents with no user agent scripts
3124         https://bugs.webkit.org/show_bug.cgi?id=196061
3125         <rdar://problem/48649391>
3126
3127         Reviewed by Brady Eidson.
3128
3129         Added API tests and related infrastructure.
3130
3131         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3132         * TestWebKitAPI/Tests/WebKitCocoa/ApplePay.mm: Added.
3133         (-[TestApplePayScriptMessageHandler initWithExpectation:]):
3134         (-[TestApplePayScriptMessageHandler userContentController:didReceiveScriptMessage:]):
3135         (TestWebKitAPI::TEST):
3136         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-active-session.html: Added.
3137         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability-in-iframe.html: Added.
3138         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability.html: Added.
3139         * TestWebKitAPI/cocoa/TestProtocol.mm:
3140         (-[TestProtocol startLoading]):
3141         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.h: Added.
3142         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.mm: Added.
3143         (-[WebProcessPlugInWithInternals webProcessPlugIn:didCreateBrowserContextController:]):
3144         (-[WebProcessPlugInWithInternals webProcessPlugInBrowserContextController:didClearWindowObjectForFrame:inScriptWorld:]):
3145
3146 2019-03-21  Jonathan Bedard  <jbedard@apple.com>
3147
3148         REGRESSSION (r243297): webkitpy tests broken
3149         https://bugs.webkit.org/show_bug.cgi?id=196108
3150
3151         Reviewed by Aakash Jain.
3152
3153         r243297 updated contributors.json, which broke a few unit tests.
3154
3155         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
3156         (IRCCommandTest.test_whois):
3157         * Scripts/webkitpy/tool/commands/suggestnominations_unittest.py:
3158
3159 2019-03-21  Chris Dumez  <cdumez@apple.com>
3160
3161         WebKit should throw when trying to create a WKWebView with a related view that is using a different data store
3162         https://bugs.webkit.org/show_bug.cgi?id=196041
3163         <rdar://problem/49083230>
3164
3165         Reviewed by Alex Christensen.
3166
3167         Add API test coverage.
3168
3169         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm:
3170         (TEST):
3171
3172 2019-03-21  Alex Christensen  <achristensen@webkit.org>
3173
3174         Add SPI to inform applications of WKContentRuleList actions
3175         https://bugs.webkit.org/show_bug.cgi?id=195965
3176         <rdar://problem/42664365>
3177
3178         Reviewed by Geoff Garen.
3179
3180         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
3181         (TestWebKitAPI::allActionsForResourceLoad):
3182         (TestWebKitAPI::testRequest):
3183         (TestWebKitAPI::TEST_F):
3184         * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm:
3185         (Notification::description):
3186         (Notification::operator== const):
3187         (toVector):
3188         (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
3189         (-[ContentRuleListNotificationDelegate _webView:contentRuleListWithIdentifier:performedActionOnURL:blockedLoad:blockedCookies:madeHTTPS:notifications:]):
3190         (makeContentRuleList):
3191         (TEST):
3192         (makeWarnContentRuleList): Deleted.
3193
3194 2019-03-21  Timothy Hatcher  <timothy@apple.com>
3195
3196         Style check error "WK_MAC_TBA is neither a version number nor WK_IOS_TBA" is confusing.
3197         https://bugs.webkit.org/show_bug.cgi?id=196088
3198
3199         Reviewed by Brian Burg.
3200
3201         Fix the error messages used when looking for macos(WK_IOS_TBA) or ios(WK_MAC_TBA).
3202         Support checks when only one platform is specified. Also deprecate macosx() and
3203         force the use of macos() instead.
3204
3205         * Scripts/webkitpy/style/checkers/cpp.py:
3206         (check_min_versions_of_wk_api_available):
3207         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3208         (WebKitStyleTest.test_min_versions_of_wk_api_available):
3209
3210 2019-03-21  Alexey Proskuryakov  <ap@apple.com>
3211
3212         Update status inactive committers' status to 'contributor'.
3213
3214         * Scripts/webkitpy/common/config/contributors.json:
3215
3216 2019-03-21  Xan Lopez  <xan@igalia.com>
3217
3218         [JSC][x86] Drop support for x87 floating point
3219         https://bugs.webkit.org/show_bug.cgi?id=194853
3220
3221         Reviewed by Don Olmstead.
3222
3223         Force SSE2 on x86/32bit builds.
3224
3225         * Scripts/webkitdirs.pm:
3226         (generateBuildSystemFromCMakeProject):
3227
3228 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3229
3230         [GLIB] User data not correctly passed to callback of functions and constructors with no parameters
3231         https://bugs.webkit.org/show_bug.cgi?id=196073
3232
3233         Reviewed by Michael Catanzaro.
3234
3235         Add test cases to check functions and constructors with no arguments but receiving user data.
3236
3237         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3238         (checkUserData):
3239         (testJSCFunction):
3240         (fooCreateWithUserData):
3241         (testJSCClass):
3242
3243 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3244
3245         Unreviewed. Fix GTK build with GLib < 2.58 after r243285.
3246
3247         Add g_assert_cmpfloat_with_epsilon macro if not defined.
3248
3249         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3250
3251 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3252
3253         [GTK][WPE] Add API to provide geolocation information
3254         https://bugs.webkit.org/show_bug.cgi?id=195940
3255
3256         Reviewed by Michael Catanzaro.
3257
3258         Add a new test to check the new API.
3259
3260         * TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp: Added.
3261         (testGeolocationManagerCurrentPosition):
3262         (testGeolocationManagerWatchPosition):
3263         (beforeAll):
3264         (afterAll):
3265         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
3266         (testWebViewGeolocationPermissionRequests): Stop using ENABLE(GEOLOCATION) conditionals for geolocation tests.
3267         (beforeAll): Ditto.
3268         * TestWebKitAPI/glib/CMakeLists.txt:
3269
3270 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3271
3272         [GLib] Returning G_TYPE_OBJECT from a method does not work
3273         https://bugs.webkit.org/show_bug.cgi?id=195574
3274
3275         Reviewed by Michael Catanzaro.
3276
3277         Add new test cases to check the behavior of constructors and functions returning GObject and boxed types.
3278
3279         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3280         (getGFile):
3281         (getParent):
3282         (createGString):
3283         (getGString):
3284         (getGStringCopyWillRaise):
3285         (getGStringCopy):
3286         (getGStringStr):
3287         (getGStringLen):
3288         (freeGString):
3289         (testJSCClass):
3290
3291 2019-03-20  Saam Barati  <sbarati@apple.com>
3292
3293         DFG::AbstractValue::validateOSREntry is wrong when isHeapTop and the incoming value is Empty
3294         https://bugs.webkit.org/show_bug.cgi?id=195721
3295
3296         Reviewed by Filip Pizlo.
3297
3298         * Scripts/run-javascriptcore-tests:
3299
3300 2019-03-20  Simon Fraser  <simon.fraser@apple.com>
3301
3302         Rename ENABLE_ACCELERATED_OVERFLOW_SCROLLING macro to ENABLE_OVERFLOW_SCROLLING_TOUCH
3303         https://bugs.webkit.org/show_bug.cgi?id=196049
3304
3305         Reviewed by Tim Horton.
3306
3307         This macro is about the -webkit-overflow-scrolling CSS property, not accelerated
3308         overflow scrolling in general, so rename it.
3309
3310         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3311
3312 2019-03-20  Daniel Bates  <dabates@apple.com>
3313
3314         REGRESSION (r243153): [iOS] TestWebKitAPI.FocusPreservationTests.ChangingFocusedNodeResetsFocusPreservationState is failing
3315         https://bugs.webkit.org/show_bug.cgi?id=196031
3316         <rdar://problem/49078172>
3317
3318         Reviewed by Tim Horton.
3319
3320         The test incorrectly assumes that calling -[WKWebView resignFirstResponder] is identical to dismissing the
3321         <select> picker. This is no longer the case following r243135. Instead use testing SPI that invokes that
3322         same code path used when the Done button is pressed to dismiss the <select> picker.
3323
3324         * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
3325         (TestWebKitAPI::TEST):
3326
3327 2019-03-20  Chris Dumez  <cdumez@apple.com>
3328
3329         Regression(PSON): ViewGestureController is not properly notified of process swaps on iOS
3330         https://bugs.webkit.org/show_bug.cgi?id=196029
3331         <rdar://problem/48954651>
3332
3333         Reviewed by Tim Horton.
3334
3335         Add API test coverage.
3336
3337         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3338
3339 2019-03-20  Aakash Jain  <aakash_jain@apple.com>
3340
3341         [ews-build] Improve failure summary string for ApplyPatch step
3342         https://bugs.webkit.org/show_bug.cgi?id=195995
3343
3344         Reviewed by Alexey Proskuryakov.
3345
3346         * BuildSlaveSupport/ews-build/steps.py:
3347         (ApplyPatch.getResultSummary): Override getResultSummary.
3348
3349 2019-03-20  Joanmarie Diggs  <jdiggs@igalia.com>
3350
3351         AX: Implement support for new meter ARIA role
3352         https://bugs.webkit.org/show_bug.cgi?id=195966
3353
3354         Reviewed by Chris Fleizach.
3355
3356         Update Core role for ATK_ROLE_LEVEL_BAR from AXProgressIndicator
3357         to AXLevelIndicator.
3358
3359         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3360
3361 2019-03-19  Jiewen Tan  <jiewen_tan@apple.com>
3362
3363         [WebAuthN] Implement FIDO AppID extension
3364         https://bugs.webkit.org/show_bug.cgi?id=143491
3365         <rdar://problem/48298273>
3366
3367         Reviewed by Brent Fulgham.
3368
3369         Add a test that covers the new flag of convertToU2fSignCommand.
3370
3371         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
3372         (TestWebKitAPI::TEST):
3373         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
3374         * TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp:
3375         (TestWebKitAPI::TEST):
3376
3377 2019-03-19  Keith Rollin  <krollin@apple.com>
3378
3379         Add support for more platforms to generate-xcfilelists
3380         https://bugs.webkit.org/show_bug.cgi?id=195977
3381
3382         Reviewed by Alexey Proskuryakov.
3383
3384         generate-xcfilelists incorrectly complains when involved with building
3385         WebKit for iphonesimulator:
3386
3387             $ make debug SDKROOT=iphonesimulator.internal -C Internal/
3388             …
3389             ### (die get_canonical_platform_name main main) Unrecognized platform name: iphonesimulator
3390
3391         Address this by teaching generate-xcfilelists about more platforms.
3392
3393         * Scripts/generate-xcfilelists:
3394
3395 2019-03-19  John Wilander  <wilander@apple.com>
3396
3397         Resource Load Statistics (experimental): Clear non-cookie website data for sites that have been navigated to, with link decoration, by a prevalent resource
3398         https://bugs.webkit.org/show_bug.cgi?id=195923
3399         <rdar://problem/49001272>
3400
3401         Reviewed by Alex Christensen.
3402
3403         This patch does the following to the TestRunner:
3404         - Adds setStatisticsCrossSiteLoadWithLinkDecoration().
3405         - Makes setStatisticsTimeToLiveUserInteraction() wait for completion.
3406         - Makes statisticsProcessStatisticsAndDataRecords() wait for completion.
3407
3408         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3409         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3410         (WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
3411         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3412         * WebKitTestRunner/TestController.cpp:
3413         (WTR::TestController::setStatisticsCrossSiteLoadWithLinkDecoration):
3414         (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
3415         (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
3416         * WebKitTestRunner/TestController.h:
3417         * WebKitTestRunner/TestInvocation.cpp:
3418         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3419
3420 2019-03-19  Christopher Reid  <chris.reid@sony.com>
3421
3422         [CMake] Support more clang and gcc sanitizers
3423         https://bugs.webkit.org/show_bug.cgi?id=195956
3424
3425         Reviewed by Michael Catanzaro.
3426
3427         * Scripts/webkitdirs.pm: Updating ENABLE_ADDRESS_SANITIZER to ENABLE_SANITIZERS=address
3428
3429 2019-03-19  Aakash Jain  <aakash_jain@apple.com>
3430
3431         [ews-build] Improve summary for PrintConfiguration step
3432         https://bugs.webkit.org/show_bug.cgi?id=195945
3433
3434         Reviewed by Lucas Forschler.
3435
3436         * BuildSlaveSupport/ews-build/steps.py:
3437         (PrintConfiguration.getResultSummary): Override getResultSummary.
3438
3439 2019-03-19  Aakash Jain  <aakash_jain@apple.com>
3440
3441         [ews-build] Improve summary for CheckOutSource step
3442         https://bugs.webkit.org/show_bug.cgi?id=195963
3443
3444         Reviewed by Lucas Forschler.
3445
3446         * BuildSlaveSupport/ews-build/steps.py:
3447         (CheckOutSource.getResultSummary):
3448
3449 2019-03-19  Daniel Bates  <dabates@apple.com>
3450
3451         [iOS] Focus not preserved when switching between tabs
3452         https://bugs.webkit.org/show_bug.cgi?id=195820
3453         <rdar://problem/43614450>
3454
3455         Reviewed by Brent Fulgham.
3456
3457         Add tests to ensure that we restore focus when resigning and becoming first responder.
3458
3459         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3460         (TestWebKitAPI::TEST):
3461
3462 2019-03-19  Alex Christensen  <achristensen@webkit.org>
3463
3464         Make WTFLogChannelState and WTFLogLevel enum classes
3465         https://bugs.webkit.org/show_bug.cgi?id=195904
3466
3467         Reviewed by Eric Carlson.
3468
3469         * TestWebKitAPI/Tests/WebCore/Logging.cpp:
3470         (TestWebKitAPI::TEST_F):
3471
3472 2019-03-19  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3473
3474         [GStreamer][EME] Backported mssdemux protection data crash fix
3475         https://bugs.webkit.org/show_bug.cgi?id=195918
3476
3477         Reviewed by Philippe Normand.
3478
3479         * gstreamer/jhbuild.modules:
3480         * gstreamer/patches/gst-plugins-bad-0005-mssdemux-fix-protection-data-double-free.patch: Added.
3481
3482 2019-03-19  Michael Catanzaro  <mcatanzaro@igalia.com>
3483
3484         Unreviewed, rolling out r243132.
3485
3486         Broke GTK build
3487
3488         Reverted changeset:
3489
3490         "Make WTFLogChannelState and WTFLogLevel enum classes"
3491         https://bugs.webkit.org/show_bug.cgi?id=195904
3492         https://trac.webkit.org/changeset/243132
3493
3494 2019-03-19  Zan Dobersek  <zdobersek@igalia.com>
3495
3496         Unreviewed follow-up to r243073, fixing WPE MiniBrowser launching.
3497
3498         * Scripts/webkitdirs.pm:
3499         (builtDylibPathForName): Adjust the shared library name that's changed
3500         with the API version bump in r243073.
3501
3502 2019-03-18  Alex Christensen  <achristensen@webkit.org>
3503
3504         Make WTFLogChannelState and WTFLogLevel enum classes
3505         https://bugs.webkit.org/show_bug.cgi?id=195904
3506
3507         Reviewed by Eric Carlson.
3508
3509         * TestWebKitAPI/Tests/WebCore/Logging.cpp:
3510         (TestWebKitAPI::TEST_F):
3511
3512 2019-03-18  Alex Christensen  <achristensen@webkit.org>
3513
3514         Disable flaky test added in r2431100
3515         https://webkit.org/b/195785
3516
3517         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
3518         (TestWebKitAPI::TEST):
3519         Apparently bots don't hit 150kb/s as reliably as I do locally.  Can't say I'm too surprised.
3520
3521 2019-03-18  Timothy Hatcher  <timothy@apple.com>
3522
3523         WKWebView.GetContentsShouldReturnAttributedString is crashing on iOS Simulator.
3524         https://bugs.webkit.org/show_bug.cgi?id=195916
3525
3526         Reviewed by Tim Horton.
3527
3528         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
3529         (TEST(WKWebView, GetContentsShouldReturnAttributedString): Fix iOS code path to pass.
3530
3531 2019-03-18  Alexey Proskuryakov  <ap@apple.com>
3532
3533         Add a secondary e-mail address for Fujii Hironori to make tools happier.
3534
3535         * Scripts/webkitpy/common/config/contributors.json:
3536
3537 2019-03-18  Alex Christensen  <achristensen@webkit.org>
3538
3539         Implement DownloadMonitor to prevent long-running slow downloads from background apps
3540         https://bugs.webkit.org/show_bug.cgi?id=195785
3541
3542         Reviewed by Geoffrey Garen.
3543
3544         * TestWebKitAPI/TCPServer.cpp: Added.
3545         (TestWebKitAPI::TCPServer::TCPServer):
3546         (TestWebKitAPI::TCPServer::~TCPServer):
3547         (TestWebKitAPI::TCPServer::socketBindListen):
3548         (TestWebKitAPI::TCPServer::waitForAndReplyToRequests):
3549         * TestWebKitAPI/TCPServer.h: Added.
3550         (TestWebKitAPI::TCPServer::port const):
3551         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3552         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
3553         (-[DownloadMonitorTestDelegate _downloadDidStart:]):
3554         (-[DownloadMonitorTestDelegate _downloadDidCancel:]):
3555         (-[DownloadMonitorTestDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
3556         (-[DownloadMonitorTestDelegate _download:didReceiveData:]):
3557         (TestWebKitAPI::respondSlowly):
3558         (TestWebKitAPI::webViewWithDownloadMonitorSpeedMultiplier):
3559         (TestWebKitAPI::downloadAtRate):
3560         (TestWebKitAPI::TEST):
3561
3562 2019-03-18  Saam Barati  <sbarati@apple.com>
3563
3564         Add a plan file for JetStream 2
3565         https://bugs.webkit.org/show_bug.cgi?id=190734
3566
3567         Reviewed by Mark Lam.
3568
3569         * Scripts/webkitpy/benchmark_runner/data/plans/jetstream2.plan: Added.
3570
3571 2019-03-18  Chris Dumez  <cdumez@apple.com>
3572
3573         Delay WebProcess launch until a load is triggered in a Web view
3574         https://bugs.webkit.org/show_bug.cgi?id=195758
3575         <rdar://problem/48126013>
3576
3577         Reviewed by Geoff Garen.
3578
3579         Add API test coverage. Also update some existing API tests to not expect
3580         constructing a WKWebView to launch both a WebProcess and a NetworkProcess.
3581
3582         * TestWebKitAPI/Tests/WebKit/NetworkProcessCrashWithPendingConnection.mm:
3583         (TestWebKitAPI::TEST):
3584         * TestWebKitAPI/Tests/WebKit/mac/GetBackingScaleFactor.mm:
3585         (TestWebKitAPI::TEST):
3586         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
3587         (TEST):
3588         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3589         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
3590         (TEST):
3591         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
3592         (TEST):
3593         (testDidResignInputElementStrongPasswordAppearanceAfterEvaluatingJavaScript):
3594
3595 2019-03-18  Xan Lopez  <xan@igalia.com>
3596
3597         [CMake] Prevent potential warning when determining $architecture
3598         https://bugs.webkit.org/show_bug.cgi?id=195891
3599
3600         Reviewed by Michael Catanzaro.
3601
3602         It's possible for generateBuildSystemForCMakeProject to be called
3603         before determineArchitecture() is ever called. This will make the
3604         first eq check with $architecture to be bogus (and print a
3605         warning). Change that to an eq check with architecture(), which
3606         implicitly calls determineArchitecture() if needed, and change all
3607         the other similar cases in the method in the same way to prevent
3608         future bugs like this one.
3609
3610         * Scripts/webkitdirs.pm:
3611         (generateBuildSystemFromCMakeProject):
3612
3613 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
3614
3615         [WPE] Tarballs generated with “make dist” cannot build documentation
3616         https://bugs.webkit.org/show_bug.cgi?id=195885
3617
3618         Reviewed by Carlos Garcia Campos.
3619
3620         * wpe/manifest.txt.in: Add missing Tools/glib/common.py file to be included in release tarballs.
3621
3622 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
3623
3624         [GTK][WPE] Cryptic error from Tools/gtkdoc/generate-gtkdoc
3625         https://bugs.webkit.org/show_bug.cgi?id=195883
3626
3627         Reviewed by Carlos Garcia Campos.
3628
3629         * gtkdoc/gtkdoc.py:
3630         (GTKDoc._run_command): When commands fail to run, include the full command line for
3631         the program invocation and the output it has generated on the standard error stream.
3632
3633 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
3634
3635         [WPE] Bump dependencies to wpe-1.0 and wpebackend-fdo-1.0
3636         https://bugs.webkit.org/show_bug.cgi?id=195786
3637
3638         Reviewed by Philippe Normand.
3639
3640         * flatpak/org.webkit.WPEModules.yaml: Use libwpe 1.1.90 and wpebackend-fdo 1.1.91.
3641         * wpe/jhbuild.modules: Ditto.
3642
3643 2019-03-16  Aakash Jain  <aakash_jain@apple.com>
3644
3645         [ews-build] Don't run clean builds on EWS builders
3646         https://bugs.webkit.org/show_bug.cgi?id=195851
3647
3648         Reviewed by Geoffrey Garen.
3649
3650         * BuildSlaveSupport/ews-build/factories.py:
3651
3652 2019-03-16  Sihui Liu  <sihui_liu@apple.com>
3653
3654         REGRESSION (r243019): Failing API test: WebKit.WebsiteDataStoreCustomPathsWithoutPrewarming
3655         https://bugs.webkit.org/show_bug.cgi?id=195849
3656
3657         Reviewed by Chris Dumez.
3658
3659         We should expect IDB database files to be at path IndexedDB/v1/ after r243019.
3660
3661         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
3662         (runWebsiteDataStoreCustomPaths):
3663
3664 2019-03-15  Jonathan Bedard  <jbedard@apple.com>
3665
3666         webkitpy: Upload test results
3667         https://bugs.webkit.org/show_bug.cgi?id=195755
3668         <rdar://problem/48896182>
3669
3670         Reviewed by Aakash Jain.
3671
3672         Establish a new format for uploading results that is not tied to layout tests, apply
3673         that format to webkitpy tests.
3674
3675         * Scripts/webkitpy/common/checkout/scm/git.py:
3676         (Git.native_branch): Return what branch the current checkout is on.
3677         * Scripts/webkitpy/common/checkout/scm/scm_mock.py:
3678         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
3679         * Scripts/webkitpy/common/checkout/scm/svn.py:
3680         (SVN.native_branch): Ditto.
3681         * Scripts/webkitpy/common/system/platforminfo.py:
3682         (PlatformInfo.build_version): Return a build version for Mac.
3683         * Scripts/webkitpy/common/system/platforminfo_mock.py:
3684         (MockPlatformInfo.__init__):
3685         (MockPlatformInfo.build_version):
3686         * Scripts/webkitpy/results: Added.
3687         * Scripts/webkitpy/results/__init__.py: Added.
3688         * Scripts/webkitpy/results/options.py: Added.
3689         (upload_options): OptParse list for upload options.
3690         * Scripts/webkitpy/results/upload.py: Added.
3691         (Upload): Class which enforces the upload format expected by the results server.
3692         (Upload.Expectations):
3693         (Upload.create_configuration):
3694         (Upload.create_commit):
3695         (Upload.create_details):
3696         (Upload.create_run_stats):
3697         (Upload.create_test_result):
3698         (Upload.__init__):
3699         (Upload.Encoder): Encode Upload object as json.
3700         (Upload.upload): Upload results to the results server, returning 'True' if the upload is successful.
3701         * Scripts/webkitpy/results/upload_unittest.py: Added.
3702         * Scripts/webkitpy/test/main.py:
3703         (Tester._parse_args): Add upload arguments.
3704         (Tester._run_tests): Allow results to be uploaded.
3705         * Scripts/webkitpy/test/runner.py:
3706         (Runner.__init__): Record which tests were run, rather than just counting them.
3707         (Runner.handle):
3708         * Scripts/webkitpy/test/runner_unittest.py:
3709         (RunnerTest.test_run):
3710         * Scripts/webkitpy/thirdparty/__init__.py:
3711         (AutoinstallImportHook.find_module): Add requests auto-install.
3712         (AutoinstallImportHook._install_requests):
3713         * Scripts/webkitpy/tool/commands/queues_unittest.py:
3714         (PatchProcessingQueueTest.test_upload_results_archive_for_patch): Update os name for testing.
3715
3716 2019-03-15  Wenson Hsieh  <wenson_hsieh@apple.com>
3717
3718         [iOS] Crash under -[TestRunnerWKWebView _didShowMenu] while running layout tests on iOS simulator
3719         https://bugs.webkit.org/show_bug.cgi?id=195810
3720
3721         Reviewed by Tim Horton.
3722
3723         Ensure that the process of resetting web view state between tests doesn't also invoke testing callbacks
3724         registered by the previous layout test. This fixes an occasional crash when hiding the callout menu after
3725         ending certain layout tests.
3726
3727         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
3728         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3729         (-[TestRunnerWKWebView dealloc]):
3730         (-[TestRunnerWKWebView resetInteractionCallbacks]):
3731
3732         Pull logic to reset all of TestRunnerWKWebView's callback handler blocks into a separate helper method; use this
3733         helper method when destroying the web view, and when resetting state between tests.
3734
3735         * WebKitTestRunner/ios/TestControllerIOS.mm:
3736         (WTR::TestController::platformResetStateToConsistentValues):
3737
3738         Hide the callout menu *after* clearing out interaction callbacks registered on the web view.
3739
3740 2019-03-15  Sihui Liu  <sihui_liu@apple.com>
3741
3742         [ Mojave WK1 ] Layout Test storage/indexeddb/database-odd-names.html is failing
3743         https://bugs.webkit.org/show_bug.cgi?id=190350
3744         <rdar://problem/45089503>
3745
3746         Reviewed by Geoffrey Garen.
3747
3748         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3749         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
3750         (TEST):
3751         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3:
3752         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-shm:
3753         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-wal:
3754         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-1.html: Added.
3755         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-2.html: Added.
3756         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName.mm: Added.
3757         (-[IndexedDBFileNameMessageHandler userContentController:didReceiveScriptMessage:]):
3758         (runTest):
3759         (createDirectories):
3760         (TEST):
3761         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBTempFileSize.mm:
3762         (TEST):
3763         * TestWebKitAPI/Tests/WebKitCocoa/StoreBlobThenDelete.mm:
3764         (TEST):
3765
3766 2019-03-15  Timothy Hatcher  <timothy@apple.com>
3767
3768         Add support to WebPage for getting the contents as an attributed string.
3769         https://bugs.webkit.org/show_bug.cgi?id=195636
3770         rdar://problem/45055697
3771
3772         Reviewed by Tim Horton.
3773
3774         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
3775         (TEST(WKWebView, GetContentsShouldReturnAttributedString): Added.
3776
3777 2019-03-15  Chris Dumez  <cdumez@apple.com>
3778
3779         [PSON] Make sure the WebProcessCache is leverage when relaunching a process after termination
3780         https://bugs.webkit.org/show_bug.cgi?id=195747
3781
3782         Reviewed by Geoff Garen.
3783
3784         Add API test coverage.
3785
3786         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3787
3788 2019-03-15  Shawn Roberts  <sroberts@apple.com>
3789
3790         Unreviewed, rolling out r242952.
3791
3792         Causing API failures on iOS Simulator
3793
3794         Reverted changeset:
3795
3796         "[PSON] Make sure the WebProcessCache is leverage when
3797         relaunching a process after termination"
3798         https://bugs.webkit.org/show_bug.cgi?id=195747
3799         https://trac.webkit.org/changeset/242952
3800
3801 2019-03-14  Fujii Hironori  <Hironori.Fujii@sony.com>
3802
3803         [Win][MinBrowser][WK2] Implement createNewPage of WKPageUIClient to open a new window
3804         https://bugs.webkit.org/show_bug.cgi?id=195740
3805
3806         Reviewed by Ross Kirsling.
3807
3808         window.open doesn't work for WebKitBrowserWindow because it is not
3809         implemented yet.
3810
3811         1. Implemented createNewPage callback of WKPageUIClient.
3812         2. Changed MainWindow to take a BrowserWindow factory function
3813           instead of BrowserWindowType to be flexible to create
3814           BrowserWindow with extra settings.
3815         3. Renamed MainWindow::BrowserWindowType to BrowserWindowType
3816           because it is not relevant with MainWindow anymore.
3817
3818         * MiniBrowser/win/Common.cpp:
3819         (parseCommandLine):
3820         * MiniBrowser/win/Common.h:
3821         (CommandLineOptions::CommandLineOptions):
3822         * MiniBrowser/win/MainWindow.cpp:
3823         (MainWindow::MainWindow):
3824         (MainWindow::create):
3825         (MainWindow::init):
3826         (MainWindow::WndProc):
3827         * MiniBrowser/win/MainWindow.h:
3828         * MiniBrowser/win/PrintWebUIDelegate.cpp:
3829         (PrintWebUIDelegate::createWebViewWithRequest):
3830         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3831         (WebKitBrowserWindow::create): Moved WKPageConfigurationRef related code from WebKitBrowserWindow::WebKitBrowserWindow.
3832         (WebKitBrowserWindow::WebKitBrowserWindow): Added a WKPageConfigurationRef parameter.
3833         (WebKitBrowserWindow::updateProxySettings):
3834         (WebKitBrowserWindow::createNewPage):
3835         * MiniBrowser/win/WebKitBrowserWindow.h:
3836         * MiniBrowser/win/WinMain.cpp:
3837         (wWinMain):
3838
3839 2019-03-14  Simon Fraser  <simon.fraser@apple.com>
3840
3841         Make it possible to test scrolling tree layer manipulation more easily
3842         https://bugs.webkit.org/show_bug.cgi?id=195780
3843
3844         Reviewed by Tim Horton.
3845         
3846         Add a boolean attribute 'scrollUpdatesDisabled' on UIScriptController that
3847         cuts off communication of scrolling tree scrolls back to the web process
3848         (in RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll()). This
3849         allows tests to trigger scrolls which run the scrolling tree layer positioning
3850         logic, but never get another commit from the web process that might mask
3851         scrolling tree bugs.
3852         
3853         WKWebView's testing protocol get @property _scrollingUpdatesDisabledForTesting,
3854         whose getters and setters are overridden by TestRunnerWKWebView. Plumbing
3855         via PageClient and WebPageProxy makes this flag reachable by RemoteScrollingCoordinatorProxy.
3856
3857         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3858         (WTR::UIScriptController::scrollUpdatesDisabled const):
3859         (WTR::UIScriptController::setScrollUpdatesDisabled):
3860         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3861         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3862         (WTR::UIScriptController::scrollUpdatesDisabled const):
3863         (WTR::UIScriptController::setScrollUpdatesDisabled):
3864         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3865         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
3866         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3867         (-[TestRunnerWKWebView _scrollingUpdatesDisabledForTesting]):
3868         (-[TestRunnerWKWebView _setScrollingUpdatesDisabledForTesting:]):
3869         * WebKitTestRunner/ios/TestControllerIOS.mm:
3870         (WTR::TestController::platformResetStateToConsistentValues):
3871         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3872         (WTR::UIScriptController::scrollUpdatesDisabled const):
3873         (WTR::UIScriptController::setScrollUpdatesDisabled):
3874
3875 2019-03-14  Youenn Fablet  <youenn@apple.com>
3876
3877         Move IDB storage in private browsing mode to NetworkProcess
3878         https://bugs.webkit.org/show_bug.cgi?id=195602
3879
3880         Reviewed by Brady Eidson.
3881
3882         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
3883         (TEST):
3884
3885 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
3886
3887         [ews-build] Make descriptionDone messages more readable
3888         https://bugs.webkit.org/show_bug.cgi?id=195760
3889
3890         Reviewed by Lucas Forschler.
3891
3892         * BuildSlaveSupport/ews-build/steps.py:
3893         * BuildSlaveSupport/ews-build/steps_unittest.py:
3894
3895 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
3896
3897         [ews-build] Generate status-bubble hover-over messages
3898         https://bugs.webkit.org/show_bug.cgi?id=195680
3899
3900         Reviewed by Lucas Forschler.
3901
3902         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3903         (StatusBubble):
3904         (StatusBubble._build_bubble): Generate bubble['details_message'] which would be displayed
3905         on hover-over.
3906         (StatusBubble._iso_time):
3907         (StatusBubble._steps_messages): Returns status messages from steps to be displayed in
3908         hover-over message.
3909         (StatusBubble._most_recent_step_message): Returns status message from most recent step.
3910
3911 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
3912
3913         [ews-app] Gracefully handle the case when state_string is None
3914         https://bugs.webkit.org/show_bug.cgi?id=195753
3915
3916         Reviewed by Lucas Forschler.
3917
3918         * BuildSlaveSupport/ews-app/ews/models/build.py:
3919         * BuildSlaveSupport/ews-app/ews/models/step.py:
3920
3921 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
3922
3923         [ews-app] Status bubble display pending for currently running build step
3924         https://bugs.webkit.org/show_bug.cgi?id=195744
3925
3926         Reviewed by Lucas Forschler.
3927
3928         * BuildSlaveSupport/ews-build/events.py:
3929         (Events.stepStarted): If state_string is pending, replace it with step name.
3930
3931 2019-03-14  Chris Dumez  <cdumez@apple.com>
3932
3933         Add WebsitePolicy for the client to specify the device orientation & motion access policy
3934         https://bugs.webkit.org/show_bug.cgi?id=195750
3935
3936         Reviewed by Geoffrey Garen.
3937
3938         Add API test coverage.
3939
3940         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3941         (-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationAccessPolicy:]):
3942         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
3943         (-[WebsitePoliciesDeviceOrientationUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
3944
3945 2019-03-14  Chris Dumez  <cdumez@apple.com>
3946
3947         [PSON] Make sure the WebProcessCache is leverage when relaunching a process after termination
3948         https://bugs.webkit.org/show_bug.cgi?id=195747
3949
3950         Reviewed by Geoff Garen.
3951
3952         Add API test coverage.
3953
3954         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3955
3956 2019-03-13  Wenson Hsieh  <wenson_hsieh@apple.com>
3957
3958         Make -[_WKAttachment setFileWrapper:contentType:completion:] robust when given a nil completion handler
3959         https://bugs.webkit.org/show_bug.cgi?id=195725
3960         <rdar://problem/48545062>
3961
3962         Reviewed by Tim Horton.
3963
3964         Test that we don't crash when changing the file wrapper of an invalid attachment, if the given completion
3965         handler is nil.
3966
3967         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3968         (TestWebKitAPI::TEST):
3969
3970 2019-03-13  Sam Weinig  <sam@webkit.org>
3971
3972         Add utility function to allow easy reverse range-based iteration of a container
3973         https://bugs.webkit.org/show_bug.cgi?id=195542
3974
3975         Reviewed by Antti Koivisto.
3976
3977         * TestWebKitAPI/CMakeLists.txt:
3978         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3979         * TestWebKitAPI/Tests/WTF/IteratorRange.cpp: Added.
3980         (TestWebKitAPI::TEST):
3981         Add test to ensure WTF::makeReversedRange() works correctly and uses the correct types.
3982
3983 2019-03-13  Chris Dumez  <cdumez@apple.com>
3984
3985         Use a ServiceWorker process per registrable domain
3986         https://bugs.webkit.org/show_bug.cgi?id=195649
3987
3988         Reviewed by Youenn Fablet.
3989
3990         Update API test coverage.
3991
3992         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
3993
3994 2019-03-13  Chris Dumez  <cdumez@apple.com>
3995
3996         REGRESSION(PSON, r240660): Navigation over process boundary is flashy when using Cmd-left/right arrow to navigate
3997         https://bugs.webkit.org/show_bug.cgi?id=195684
3998         <rdar://problem/48294714>
3999
4000         Reviewed by Antti Koivisto.
4001
4002         Add API test coverage.
4003
4004         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4005
4006 2019-03-13  Aakash Jain  <aakash_jain@apple.com>
4007
4008         [ews-app] Remove unused patch view
4009         https://bugs.webkit.org/show_bug.cgi?id=195669
4010
4011         Reviewed by Lucas Forschler.
4012
4013         * BuildSlaveSupport/ews-app/ews/urls.py:
4014         * BuildSlaveSupport/ews-app/ews/views/patch.py: Removed.
4015
4016 2019-03-13  Aakash Jain  <aakash_jain@apple.com>
4017
4018         [ews-app] Use Buildbot result code variables
4019         https://bugs.webkit.org/show_bug.cgi?id=195668
4020
4021         Reviewed by Alexey Proskuryakov.
4022
4023         * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
4024         (Buildbot): Added Buildbot result code variables.
4025         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
4026         (StatusBubble._build_bubble): Used Buildbot result code variables.
4027
4028 2019-03-13  Thibault Saunier  <tsaunier@igalia.com>
4029
4030         [Flatpak] Expand submodule recursively
4031         https://bugs.webkit.org/show_bug.cgi?id=195672
4032
4033         Building WPE with flatpak was impossible without that as it was raising an exception.
4034         Also update wpebackend-fdo to match what is built in jhbuild
4035
4036         Reviewed by Philippe Normand.
4037
4038         * flatpak/flatpakutils.py:
4039         (expand_submodules_recurse):
4040         (expand_manifest):
4041         * flatpak/org.webkit.WPEModules.yaml:
4042
4043 2019-03-13  Aakash Jain  <aakash_jain@apple.com>
4044
4045         [ews-app] status bubble should be hidden for certain builds
4046         https://bugs.webkit.org/show_bug.cgi?id=194597
4047
4048         Reviewed by Dewei Zhu.
4049
4050         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
4051         (StatusBubble._build_bubble):
4052         (StatusBubble._should_show_bubble_for_build): Hide bubble for builds which were skipped
4053         because the patch didn't have relevant changes.
4054         (StatusBubble._should_show_bubble_for_queue): Hide bubbles for queues which are not deployed
4055         in production yet.
4056
4057 2019-03-12  Ross Kirsling  <ross.kirsling@sony.com>
4058
4059         [Win] Fix a slew of simple clang-cl warnings.
4060         https://bugs.webkit.org/show_bug.cgi?id=195652
4061
4062         Reviewed by Don Olmstead.
4063
4064         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
4065         (WTR::PlatformWebView::windowSnapshotImage): -Wunused-variable
4066
4067 2019-03-12  Justin Fan  <justin_fan@apple.com>
4068
4069         [Web GPU] Update GPURenderPipelineDescriptor and add GPUColorStateDescriptor.format
4070         https://bugs.webkit.org/show_bug.cgi?id=195518
4071         <rdar://problem/46322356>
4072
4073         Reviewed by Myles C. Maxfield.
4074
4075         * DumpRenderTree/DerivedSources-input.xcfilelist:
4076         * DumpRenderTree/DerivedSources-output.xcfilelist:
4077
4078 2019-03-12  Commit Queue  <commit-queue@webkit.org>
4079
4080         Unreviewed, rolling out r242825.
4081         https://bugs.webkit.org/show_bug.cgi?id=195648
4082
4083         "Broke webkitpy tests with my change to
4084         lldb_dump_class_layout.py" (Requested by rmorisset on
4085         #webkit).
4086
4087         Reverted changeset:
4088
4089         "Alter Tools/Scripts/dump-class-layout to be able to dump all
4090         classes with suspicious padding"
4091         https://bugs.webkit.org/show_bug.cgi?id=195573
4092         https://trac.webkit.org/changeset/242825
4093
4094 2019-03-12  Aakash Jain  <aakash_jain@apple.com>
4095
4096         [ews-build] Show status bubbles while the patch is waiting in queue
4097         https://bugs.webkit.org/show_bug.cgi?id=195618
4098
4099         Reviewed by Lucas Forschler.
4100
4101         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
4102         (StatusBubble): Added ALL_QUEUES and ENABLED_QUEUES. Only certain queues are 
4103         enabled in initial deployment.
4104         (StatusBubble._build_bubble): Display bubble even when build hasn't started.
4105         (StatusBubble.get_latest_build_for_queue): Get latest build for a given queue.
4106         (StatusBubble.get_builds_for_queue): Get all builds for a given queue.
4107         (StatusBubble._should_show_bubble_for): Display bubble for only ENABLED_QUEUES for now.
4108         (StatusBubble._build_bubbles_for_patch):
4109
4110 2019-03-12  Robin Morisset  <rmorisset@apple.com>
4111
4112         Alter Tools/Scripts/dump-class-layout to be able to dump all classes with suspicious padding
4113         https://bugs.webkit.org/show_bug.cgi?id=195573
4114
4115         Reviewed by Simon Fraser.
4116
4117         Also modified the script so that when multiple types match a given name it shows them all and not arbitrarily pick one.
4118
4119         * Scripts/dump-class-layout:
4120         (main):
4121         * lldb/lldb_dump_class_layout.py:
4122         (ClassLayout.__init__):
4123         (ClassLayout._compute_padding_recursive):
4124         (LLDBDebuggerInstance.dump_layout_for_classname):
4125         (LLDBDebuggerInstance):
4126         (LLDBDebuggerInstance.dump_all_wasteful_layouts):
4127         (LLDBDebuggerInstance.layout_for_classname): Deleted.
4128
4129 2019-03-12  Chris Dumez  <cdumez@apple.com>
4130
4131         Device Orientation access permission should be denied unless explicitly granted by the client
4132         https://bugs.webkit.org/show_bug.cgi?id=195625
4133
4134         Reviewed by Youenn Fablet.
4135
4136         add API test coverage.
4137
4138         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4139         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm: Added.
4140         (-[DeviceOrientationMessageHandler userContentController:didReceiveScriptMessage:]):
4141         (-[DeviceOrientationPermissionUIDelegate initWithHandler:]):
4142         (-[DeviceOrientationPermissionUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
4143         (runDeviceOrientationTest):
4144         (TEST):
4145         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
4146         (-[WebsitePoliciesDeviceOrientationUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
4147
4148 2019-03-12  Jer Noble  <jer.noble@apple.com>
4149
4150         Flaky API Test TestWebKitAPI.WebKitLegacy.ScrollingDoesNotPauseMedia
4151         https://bugs.webkit.org/show_bug.cgi?id=195137
4152         <rdar://problem/48810307>
4153
4154         Reviewed by Eric Carlson.
4155
4156         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:
4157         (TestWebKitAPI::TEST):
4158
4159 2019-03-12  Aakash Jain  <aakash_jain@apple.com>
4160
4161         [ews-build] Change urls from uat to production
4162         https://bugs.webkit.org/show_bug.cgi?id=195566
4163
4164         Reviewed by Lucas Forschler.
4165
4166         * BuildSlaveSupport/ews-app/ews/config.py:
4167         * BuildSlaveSupport/ews-build/events.py:
4168         * BuildSlaveSupport/ews-build/steps.py:
4169
4170 2019-03-12  Aakash Jain  <aakash_jain@apple.com>
4171
4172         [ews-build] change max_builds for local-worker to 1
4173         https://bugs.webkit.org/show_bug.cgi?id=195568
4174
4175         Reviewed by Lucas Forschler.
4176
4177         * BuildSlaveSupport/ews-build/loadConfig.py:
4178
4179 2019-03-12  Tim Horton  <timothy_horton@apple.com>
4180
4181         Fix the build
4182
4183         * TestRunnerShared/spi/PencilKitTestSPI.h:
4184         * TestWebKitAPI/ios/PencilKitTestSPI.h:
4185
4186 2019-03-12  Michael Catanzaro  <mcatanzaro@igalia.com>
4187
4188         [WPE][GTK] Load events may occur in unexpected order when JS redirects page before subresource load finishes
4189         https://bugs.webkit.org/show_bug.cgi?id=194131
4190
4191         Reviewed by Michael Catanzaro.
4192
4193         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
4194         (uriChanged):
4195         (testUnfinishedSubresourceLoad):
4196         (serverCallback):
4197         (beforeAll):
4198
4199 2019-03-11  Alex Christensen  <achristensen@webkit.org>
4200
4201         WTF::Expected should use std::addressof instead of operator&
4202         https://bugs.webkit.org/show_bug.cgi?id=195604
4203
4204         Reviewed by Myles Maxfield.
4205
4206         * TestWebKitAPI/Tests/WTF/Expected.cpp:
4207         (TestWebKitAPI::Unique::Unique):
4208         (TestWebKitAPI::Unique::operator&):
4209         (TestWebKitAPI::TEST):
4210
4211 2019-03-11  Ross Kirsling  <ross.kirsling@sony.com>
4212
4213         Add Optional to Forward.h.
4214         https://bugs.webkit.org/show_bug.cgi?id=195586
4215
4216         Reviewed by Darin Adler.
4217
4218         * TestWebKitAPI/Tests/WebCore/ApduTest.cpp:
4219         * TestWebKitAPI/Tests/WebCore/FidoHidMessageTest.cpp:
4220         Remove unnecessary includes from headers.
4221
4222 2019-03-11  Simon Fraser  <simon.fraser@apple.com>
4223
4224         Add testing API to hit-test and scroll overflow scrollers
4225         https://bugs.webkit.org/show_bug.cgi?id=195278
4226
4227         Reviewed by Antti Koivisto.
4228         
4229         Add UIScriptController::immediateScrollElementAtContentPointToOffset() to enable
4230         testing of the view hit-testing code path, and immediate scrolling of overflow:scroll.
4231         
4232         Tests: scrollingcoordinator/ios/scroll-element-at-point.html
4233
4234         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
4235         (WTR::UIScriptController::immediateScrollElementAtContentPointToOffset):
4236         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
4237         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
4238         (WTR::UIScriptController::immediateScrollElementAtContentPointToOffset):
4239         * TestRunnerShared/UIScriptContext/UIScriptController.h:
4240         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
4241         (WTR::enclosingScrollViewIncludingSelf):
4242         (WTR::UIScriptController::immediateScrollElementAtContentPointToOffset):
4243
4244 2019-03-11  Tim Horton  <timothy_horton@apple.com>
4245
4246         API test WebKit.RequestTextInputContext fails on iOS
4247         https://bugs.webkit.org/show_bug.cgi?id=195585
4248
4249         Reviewed by Wenson Hsieh and Simon Fraser.
4250
4251         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
4252         (applyStyle):
4253         (TEST):
4254         Add a viewport, so that the coordinates match up on iOS.
4255         Scroll by moving the UIScrollView's contentOffset.
4256
4257 2019-03-11  Chris Dumez  <cdumez@apple.com>
4258
4259         Assert in WebPageProxy::suspendCurrentPageIfPossible()
4260         https://bugs.webkit.org/show_bug.cgi?id=195506
4261         <rdar://problem/48733477>
4262
4263         Reviewed by Alex Christensen.
4264
4265         Add API test coverage.
4266
4267         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4268
4269 2019-03-11  Shawn Roberts  <sroberts@apple.com>
4270
4271         Adding myself to contributors.json
4272
4273         Unreviewed, addming myself to contributors.json .
4274
4275         * Scripts/webkitpy/common/config/contributors.json:
4276
4277 2019-03-11  Alex Christensen  <achristensen@webkit.org>
4278
4279         Add a WKContentRuleList variant that uses copied memory instead of mmap'd shared memory for class A containerized apps
4280         https://bugs.webkit.org/show_bug.cgi?id=195511
4281         <rdar://problem/44873269>
4282
4283         Reviewed by Darin Adler.
4284
4285         * TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
4286         (-[TestSchemeHandlerSubresourceShouldBeBlocked webView:startURLSchemeTask:]):
4287         (-[TestSchemeHandlerSubresourceShouldBeBlocked webView:stopURLSchemeTask:]):
4288         (TEST_F):
4289
4290 2019-03-11  Chris Dumez  <cdumez@apple.com>
4291
4292         Regression(r242664) WebKit.WebsitePoliciesDeviceOrientationEventEnabled API test is timing out
4293         https://bugs.webkit.org/show_bug.cgi?id=195561
4294
4295         Reviewed by Youenn Fablet.
4296
4297         Make sure the JS in the test requests for permission to receive device orientation events.
4298
4299         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
4300
4301 2019-03-11  Youenn Fablet  <youenn@apple.com>
4302
4303         Allow storage quota increase by default in WTR
4304         https://bugs.webkit.org/show_bug.cgi?id=195541
4305
4306         Reviewed by Geoffrey Garen.
4307
4308         Allow storage quota increase by default in WTR.
4309         Move from testRunner.allowStorageQuotaIncrease to testRunner.setAllowStorageQuotaIncrease.
4310         Use this for tests that explicitly need cache increase.
4311
4312         Instead of increasing quota by 2, make sure the next request is
4313         granted by adding all given parameters.
4314
4315         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4316         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4317         (WTR::TestRunner::setAllowStorageQuotaIncrease):
4318         (WTR::TestRunner::allowCacheStorageQuotaIncrease): Deleted.
4319         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4320         * WebKitTestRunner/TestController.cpp:
4321         (WTR::TestController::setAllowStorageQuotaIncrease):
4322         (WTR::TestController::allowCacheStorageQuotaIncrease): Deleted.