Replace many uses of String::format with more type-safe alternatives
[WebKit-https.git] / Tools / ChangeLog
1 2018-12-15  Darin Adler  <darin@apple.com>
2
3         Replace many uses of String::format with more type-safe alternatives
4         https://bugs.webkit.org/show_bug.cgi?id=192742
5
6         Reviewed by Mark Lam.
7
8         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
9         (WTR::cacheTestRunnerCallback): Use makeString.
10         * WebKitTestRunner/TestController.cpp:
11         (WTR::TestController::didReceiveAuthenticationChallenge): Use makeString.
12         (WTR::TestController::downloadDidFail): Use an ASCIILiteral via the _s syntax.
13
14 2019-01-27  Jiewen Tan  <jiewen_tan@apple.com>
15
16         Use a load optimizer for some sites
17         https://bugs.webkit.org/show_bug.cgi?id=193881
18         <rdar://problem/46325455>
19
20         Reviewed by Brent Fulgham.
21
22         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
23         * TestWebKitAPI/Tests/WebKitCocoa/TestLoadOptimizer.mm: Added.
24
25 2019-01-27  Chris Fleizach  <cfleizach@apple.com>
26
27         AX: Introduce a static accessibility tree
28         https://bugs.webkit.org/show_bug.cgi?id=193348
29         <rdar://problem/47203295>
30
31         Reviewed by Ryosuke Niwa.
32
33         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
34
35 2019-01-26  Zalan Bujtas  <zalan@apple.com>
36
37         [LFC] The default values for top/bottom in contentHeightForFormattingContextRoot should not be 0.
38         https://bugs.webkit.org/show_bug.cgi?id=193867
39
40         Reviewed by Antti Koivisto.
41
42         * LayoutReloaded/misc/LFC-passing-tests.txt:
43
44 2019-01-26  Zalan Bujtas  <zalan@apple.com>
45
46         [LFC][BFC] Ignore last inflow child's collapsed through margin after when computing containing block's height.
47         https://bugs.webkit.org/show_bug.cgi?id=193865
48
49         Reviewed by Antti Koivisto.
50
51         * LayoutReloaded/misc/LFC-passing-tests.txt:
52
53 2019-01-25  Ryosuke Niwa  <rniwa@webkit.org>
54
55         Need a mechanism to override navigator.userAgent
56         https://bugs.webkit.org/show_bug.cgi?id=193762
57         <rdar://problem/47504939>
58
59         Reviewed by Brent Fulgham.
60
61         Added test cases for _WKWebsitePolicies.customJavaScriptUserAgent.
62
63         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
64         (-[CustomJavaScriptUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
65         (-[CustomJavaScriptUserAgentDelegate webView:didFinishNavigation:]):
66
67 2019-01-25  Dean Jackson  <dino@apple.com>
68
69         REGRESSION: Some USDz from 3rd party websites don't go directly to AR QL
70         https://bugs.webkit.org/show_bug.cgi?id=193831
71         <rdar://problem/47399263>
72
73         Reviewed by Chris Dumez.
74
75         Two new tests that exercise cross-origin and same-origin System
76         Previews.
77
78         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
79
80 2019-01-25  Keith Rollin  <krollin@apple.com>
81
82         Update Xcode projects with "Check .xcfilelists" build phase
83         https://bugs.webkit.org/show_bug.cgi?id=193790
84         <rdar://problem/47201374>
85
86         Reviewed by Alex Christensen.
87
88         Support for XCBuild includes specifying inputs and outputs to various
89         Run Script build phases. These inputs and outputs are specified as
90         .xcfilelist files. Once created, these .xcfilelist files need to be
91         kept up-to-date. In order to check that they are up-to-date or not,
92         add an Xcode build step that invokes an external script that performs
93         the checking. If the .xcfilelists are found to be out-of-date, update
94         them, halt the build, and instruct the developer to restart the build
95         with up-to-date files.
96
97         At this time, the checking and regenerating is performed only if the
98         WK_ENABLE_CHECK_XCFILELISTS environment variable is set to 1. People
99         who want to use this facility can set this variable and test out the
100         checking/regenerating. Once it seems like there are no egregious
101         issues that upset a developer's workflow, we'll unconditionally enable
102         this facility.
103
104         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
105         * DumpRenderTree/Scripts/check-xcfilelists.sh: Added.
106         * WebKitTestRunner/Scripts/check-xcfilelists.sh: Added.
107         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
108
109 2019-01-25  Keith Rollin  <krollin@apple.com>
110
111         Update Xcode projects with "Apply Configuration to XCFileLists" build target
112         https://bugs.webkit.org/show_bug.cgi?id=193781
113         <rdar://problem/47201153>
114
115         Reviewed by Alex Christensen.
116
117         Part of generating the .xcfilelists used as part of adopting XCBuild
118         includes running `make DerivedSources.make` from a standalone script.
119         It’s important for this invocation to have the same environment as
120         when the actual build invokes `make DerivedSources.make`. If the
121         environments are different, then the two invocations will provide
122         different results. In order to get the same environment in the
123         standalone script, have the script launch xcodebuild targeting the
124         "Apply Configuration to XCFileLists" build target, which will then
125         re-invoke our standalone script. The script is now running again, this
126         time in an environment with all workspace, project, target, xcconfig
127         and other environment variables established.
128
129         The "Apply Configuration to XCFileLists" build target accomplishes
130         this task via a small embedded shell script that consists only of:
131
132             eval "${WK_SUBLAUNCH_SCRIPT_PARAMETERS[@]}"
133
134         The process that invokes "Apply Configuration to XCFileLists" first
135         sets WK_SUBLAUNCH_SCRIPT_PARAMETERS to an array of commands to be
136         evaluated and exports it into the shell environment. When xcodebuild
137         is invoked, it inherits the value of this variable and can `eval` the
138         contents of that variable. Our external standalone script can then set
139         WK_SUBLAUNCH_SCRIPT_PARAMETERS to the path to itself, along with a set
140         of command-line parameters needed to restart itself in the appropriate
141         state.
142
143         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
144         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
145
146 2019-01-25  Alex Christensen  <achristensen@webkit.org>
147
148         Add SPI to inform an application that "Go Back" has been clicked from a safe browsing warning
149         https://bugs.webkit.org/show_bug.cgi?id=193802
150         <rdar://problem/46010580>
151
152         Reviewed by Andy Estes.
153
154         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
155         (-[SafeBrowsingNavigationDelegate _webViewDidClickGoBackFromSafeBrowsingWarning:]):
156         (TEST):
157
158 2019-01-25  Daniel Bates  <dabates@apple.com>
159
160         [iOS] uiController.keyDown() does not translate Control modified key
161         https://bugs.webkit.org/show_bug.cgi?id=192898
162
163         Reviewed by Wenson Hsieh.
164
165         Implement uiController.keyDown() in terms of HIDEventGenerator so that UIKit performs
166         key translation, as applicable. Among other cases, key translation occurs when performing
167         a Control key modified key sequence. Writing uiController.keyDown() in terms of HIDEventGenerator
168         also makes the behavior of uiController.keyDown() more closely match the behavior of a
169         human pressing down and releasing key(s) using a hardware keyboard.
170
171         * WebKitTestRunner/ios/HIDEventGenerator.h:
172         * WebKitTestRunner/ios/HIDEventGenerator.mm:
173         (-[HIDEventGenerator sendMarkerHIDEventWithCompletionBlock:]): Renamed; formerly named _sendMarkerHIDEventWithCompletionBlock.
174
175         (-[HIDEventGenerator touchDown:touchCount:completionBlock:]):
176         (-[HIDEventGenerator liftUp:touchCount:completionBlock:]):
177         (-[HIDEventGenerator stylusDownAtPoint:azimuthAngle:altitudeAngle:pressure:completionBlock:]):
178         (-[HIDEventGenerator stylusMoveToPoint:azimuthAngle:altitudeAngle:pressure:completionBlock:]):
179         (-[HIDEventGenerator stylusUpAtPoint:completionBlock:]):
180         (-[HIDEventGenerator stylusTapAtPoint:azimuthAngle:altitudeAngle:pressure:completionBlock:]):
181         (-[HIDEventGenerator sendTaps:location:withNumberOfTouches:completionBlock:]):
182         (-[HIDEventGenerator longPress:completionBlock:]):
183         (-[HIDEventGenerator dragWithStartPoint:endPoint:duration:completionBlock:]):
184         Update code for above renaming.
185
186         (hidUsageCodeForCharacter): Translate \b to a backspace and teach this function to recognize the
187         DumpRenderTree EventSender-compatible modifier key names (e.g. "metaKey").
188
189         (-[HIDEventGenerator keyDown:]): Added.
190         (-[HIDEventGenerator keyUp:]): Added.
191         (-[HIDEventGenerator keyPress:completionBlock:]):
192         (-[HIDEventGenerator eventDispatchThreadEntry:]):
193         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]): Deleted; renamed to sendMarkerHIDEventWithCompletionBlock.
194         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
195         (WTR::parseModifierArray): Modified to return a vector of strings that represent the modifier keys to press.
196         (WTR::UIScriptController::keyDown): Write in terms of HIDEventGenerator.
197         (WTR::parseModifier): Deleted.
198
199 2019-01-25  Keith Rollin  <krollin@apple.com>
200
201         Complete the implementation of generate-xcfilelists
202         https://bugs.webkit.org/show_bug.cgi?id=193782
203
204         Reviewed by Alex Christensen.
205
206         A preliminary version of generate-xcfilelists was added in r238008.
207         This patch updates that script in order to:
208
209         - Support checking of .xcfilelists
210         - Perform better execution of `make DerivedSources.make` by
211           relaunching generate-xcfilelists under xcodebuild
212         - Support incremental generation and checking of .xcfilelists
213         - Support supplementary .xcfilelists files from WebKitAdditions
214         - Support being wrapped by parallel version of generate-xcfilelists in
215           Internal that adds support for (re)generating WebKit projects in
216           that repo.
217         - Support builds that have been performed in WebKitBuild as well as
218           ~/Library/Developer/code/DerivedData
219         - Increase robustness and debugging facilities.
220
221         * Scripts/generate-xcfilelists:
222
223 2019-01-25  Brent Fulgham  <bfulgham@apple.com>
224
225         Activate the WebResourceLoadStatisticsStore in the NetworkProcess and deactivate it in the UIProcess.
226         https://bugs.webkit.org/show_bug.cgi?id=193297
227         <rdar://problem/47158841>
228
229         Unreviewed test case fix.
230
231         These test cases require ResourceLoadStatistics to be active, so the feature must be turned on.
232         Previously, the default data store turned the feature on automatically, allowing these tests to pass.
233
234         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
235         (TEST):
236
237 2019-01-25  Keith Rollin  <krollin@apple.com>
238
239         Update existing .xcfilelists
240         https://bugs.webkit.org/show_bug.cgi?id=193791
241         <rdar://problem/47201706>
242
243         Reviewed by Alex Christensen.
244
245         Many .xcfilelist files were added in r238824 in order to support
246         XCBuild. Update these with recent changes to the set of build files
247         and with the current generate-xcfilelist script.
248
249         * DumpRenderTree/DerivedSources-input.xcfilelist:
250         * DumpRenderTree/DerivedSources-output.xcfilelist:
251         * WebKitTestRunner/DerivedSources-input.xcfilelist:
252         * WebKitTestRunner/DerivedSources-output.xcfilelist:
253
254 2019-01-25  Keith Rollin  <krollin@apple.com>
255
256         Fix missing dependencies in extract-dependencies-from-makefile
257         https://bugs.webkit.org/show_bug.cgi?id=193783
258         <rdar://problem/47201571>
259
260         Reviewed by Alex Christensen.
261
262         The extract-dependencies-from-makefile script generates .xcfilelists
263         for XCBuild by invoking a makefile in --debug mode, parsing the
264         dependency information in the output, and extracting information
265         regarding targets and dependents. However, the way `make` emits this
266         dependency information is not rigorous, and so we need to determine
267         what lines to look for and parse by trial and error. This approach
268         didn't coriginally atch all the information we needed to collect, so
269         update the script to look for the additional lines we now know to look
270         for.
271
272         * Scripts/extract-dependencies-from-makefile:
273         (Parser):
274         (Parser.addTarget):
275         (Parser.addPrereq):
276         (Parser.doParse):
277
278 2019-01-25  Brent Fulgham  <bfulgham@apple.com>
279
280         Activate the WebResourceLoadStatisticsStore in the NetworkProcess and deactivate it in the UIProcess.
281         https://bugs.webkit.org/show_bug.cgi?id=193297
282         <rdar://problem/47158841>
283
284         Reviewed by Alex Christensen.
285
286         * TestWebKitAPI/Tests/WebKit Cocoa/ResourceLoadStatistics.mm:
287             Revise tests to ensure a running NetworkProcess before attempting ResourceLoadStatistics operations.
288         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
289         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback): Simplify test configuration by
290         activating the message used to trigger the callback when it is set.
291
292 2019-01-25  Alex Christensen  <achristensen@webkit.org>
293
294         WKWebView.goBack should reload if there is a safe browsing warning
295         https://bugs.webkit.org/show_bug.cgi?id=193805
296         <rdar://problem/46908216>
297
298         Reviewed by Geoff Garen.
299
300         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
301         (+[Simple3LookupContext sharedLookupContext]):
302         (-[Simple3LookupContext lookUpURL:completionHandler:]):
303         (-[WKWebViewGoBackNavigationDelegate webView:didFinishNavigation:]):
304         (TEST):
305
306 2019-01-25  Chris Dumez  <cdumez@apple.com>
307
308         Regression(PSON) cross-site provisional page is not canceled if a new same-site one is started
309         https://bugs.webkit.org/show_bug.cgi?id=193788
310         <rdar://problem/47531231>
311
312         Reviewed by Alex Christensen.
313
314         Add API test coverage.
315
316         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
317         (-[PSONNavigationDelegate webView:didStartProvisionalNavigation:]):
318
319 2019-01-25  Jonathan Bedard  <jbedard@apple.com>
320
321         webkitpy: Missing PID in crashlog name should not be fatal (Follow-up fix)
322         https://bugs.webkit.org/show_bug.cgi?id=193771
323
324         Unreviewed infrastructure fix.
325
326         * Scripts/webkitpy/port/darwin.py:
327         (DarwinPort._merge_crash_logs): Correct syntax for catching multiple exception types.
328
329 2019-01-25  Alexey Proskuryakov  <ap@apple.com>
330
331         * Scripts/webkitpy/common/config/contributors.json: Removing a stray comma.
332
333 2019-01-25  Alexey Proskuryakov  <ap@apple.com>
334
335         Add contributors.json entries for Ling Ho and for a new bot watchers group.
336
337         * Scripts/webkitpy/common/config/contributors.json:
338
339 2019-01-25  Chris Dumez  <cdumez@apple.com>
340
341         Regression(PSON?) Crash under NavigationState::NavigationClient::decidePolicyForNavigationAction()
342         https://bugs.webkit.org/show_bug.cgi?id=193779
343         <rdar://problem/46170903>
344
345         Reviewed by Antti Koivisto.
346
347         Add API test that quickly navigates forward to a previous process without waiting for it to
348         suspend. I suspect the crash could have been happening due to receiving leftover IPC from
349         the process' previous page when reconnecting the it for the forward navigation.
350
351         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
352
353 2019-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
354
355         Need a way for JavaScript (or bundle) code to participate in undo
356         https://bugs.webkit.org/show_bug.cgi?id=190009
357         <rdar://problem/44807048>
358
359         Reviewed by Ryosuke Niwa.
360
361         Add UIScriptController helpers to grab the platform undo and redo action labels. Currently only implemented for
362         Cocoa platforms in WebKit2. See other ChangeLogs for more detail.
363
364         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
365         (WTR::UIScriptController::lastUndoLabel const):
366         (WTR::UIScriptController::firstRedoLabel const):
367         (WTR::UIScriptController::platformUndoManager const):
368         * DumpRenderTree/mac/UIScriptControllerMac.mm:
369         (WTR::UIScriptController::lastUndoLabel const):
370         (WTR::UIScriptController::firstRedoLabel const):
371         (WTR::UIScriptController::platformUndoManager const):
372         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
373         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
374         (WTR::UIScriptController::lastUndoLabel const):
375         (WTR::UIScriptController::firstRedoLabel const):
376         * TestRunnerShared/UIScriptContext/UIScriptController.h:
377         * WebKitTestRunner/UIScriptControllerCocoa.mm:
378         (WTR::UIScriptController::lastUndoLabel const):
379         (WTR::UIScriptController::firstRedoLabel const):
380         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
381         (WTR::UIScriptController::platformUndoManager const):
382         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
383         (WTR::UIScriptController::platformUndoManager const):
384
385 2019-01-25  Zalan Bujtas  <zalan@apple.com>
386
387         [LFC][BFC][MarginCollapsing] Add "clear" to static position computation.
388         https://bugs.webkit.org/show_bug.cgi?id=193824
389
390         Reviewed by Antti Koivisto.
391
392         * LayoutReloaded/misc/LFC-passing-tests.txt:
393
394 2019-01-24  Ryan Haddad  <ryanhaddad@apple.com>
395
396         Update macOS JSC bot configurations
397         https://bugs.webkit.org/show_bug.cgi?id=193739
398
399         Reviewed by Alexey Proskuryakov.
400
401         * BuildSlaveSupport/build.webkit.org-config/config.json: Remove 32-bit BuildAndTest queue.
402         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
403         (BubbleQueueServer): Move JSC EWS to Mojave section.
404         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
405         (WebKitBuildbot): Remove 32-bit BuildAndTest queue from dashboard.
406         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Update unit test.
407
408 2019-01-24  Fujii Hironori  <Hironori.Fujii@sony.com>
409
410         [Win][WebKitTestRunner] Implement EventSenderProxy
411         https://bugs.webkit.org/show_bug.cgi?id=193755
412
413         Reviewed by Don Olmstead.
414
415         * WebKitTestRunner/EventSenderProxy.h: Removed unused members m_buttonState and m_mouseButtonsCurrentlyDown.
416         * WebKitTestRunner/win/EventSenderProxyWin.cpp:
417         (WTR::EventSenderProxy::dispatchMessage):
418         (WTR::EventSenderProxy::EventSenderProxy):
419         (WTR::EventSenderProxy::mouseDown):
420         (WTR::EventSenderProxy::mouseUp):
421         (WTR::EventSenderProxy::mouseMoveTo):
422         (WTR::EventSenderProxy::mouseScrollBy):
423         (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
424
425 2019-01-24  Ross Kirsling  <ross.kirsling@sony.com>
426
427         Unreviewed fix for API test failure after r240437.
428
429         TestWTF.WTF.StringOperators apparently can't deal with another test using String::operator+. This is fine...
430
431         * TestWebKitAPI/Tests/WTF/FileSystem.cpp:
432
433 2019-01-24  Jonathan Bedard  <jbedard@apple.com>
434
435         [webkitdirs] iosSimulatorApplicationsPath may not have iOS.simruntime in its path
436         https://bugs.webkit.org/show_bug.cgi?id=193787
437         <rdar://problem/47497634>
438
439         Reviewed by Alexey Proskuryakov.
440
441         * Scripts/webkitdirs.pm:
442         (iosSimulatorApplicationsPath): Pick from available runtime directories.
443
444 2019-01-24  Truitt Savell  <tsavell@apple.com>
445
446         Unreviewed, rolling out r240446.
447
448         Casued 5 API failures
449
450         Reverted changeset:
451
452         "Activate the WebResourceLoadStatisticsStore in the
453         NetworkProcess and deactivate it in the UIProcess."
454         https://bugs.webkit.org/show_bug.cgi?id=193297
455         https://trac.webkit.org/changeset/240446
456
457 2019-01-24  Zalan Bujtas  <zalan@apple.com>
458
459         DidFirstVisuallyNonEmptyLayout milestone should always fire at some point.
460         https://bugs.webkit.org/show_bug.cgi?id=193741
461         <rdar://problem/47135030>
462
463         Reviewed by Antti Koivisto and Simon Fraser.
464
465         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
466         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
467         (TestWebKitAPI::TEST):
468
469 2019-01-24  Brent Fulgham  <bfulgham@apple.com>
470
471         Activate the WebResourceLoadStatisticsStore in the NetworkProcess and deactivate it in the UIProcess.
472         https://bugs.webkit.org/show_bug.cgi?id=193297
473         <rdar://problem/47158841>
474
475         Reviewed by Alex Christensen.
476
477         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
478         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback): Simplify test configuration by
479         activating the message used to trigger the callback when it is set.
480
481 2019-01-24  John Wilander  <wilander@apple.com>
482
483         Add Ad Click Attribution as an internal/experimental feature
484         https://bugs.webkit.org/show_bug.cgi?id=193685
485         <rdar://problem/47450399>
486
487         Reviewed by Brent Fulgham.
488
489         Added test option adClickAttributionEnabled.
490
491         * DumpRenderTree/TestOptions.cpp:
492         (TestOptions::TestOptions):
493         * DumpRenderTree/TestOptions.h:
494         * DumpRenderTree/mac/DumpRenderTree.mm:
495         (setWebPreferencesForTestOptions):
496
497 2019-01-24  Antti Koivisto  <antti@apple.com>
498
499         [PSON] Flash on back navigation on Mac
500         https://bugs.webkit.org/show_bug.cgi?id=193716
501         <rdar://problem/47148458>
502
503         Reviewed by Chris Dumez.
504
505         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
506
507         Closing of the previous page is delayed so waiting for didFinishNavigation is
508         not sufficient to guarantee we have received all the messages. Wait for them.
509
510 2019-01-24  Chris Dumez  <cdumez@apple.com>
511
512         Regression(PSON) Back/Forward list items' URL sometimes gets replaced with the URL of a subframe
513         https://bugs.webkit.org/show_bug.cgi?id=193761
514         <rdar://problem/47456405>
515
516         Reviewed by Alex Christensen.
517
518         Add API test coverage.
519
520         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
521
522 2019-01-24  Jonathan Bedard  <jbedard@apple.com>
523
524         webkitpy: Missing PID in crashlog name should not be fatal
525         https://bugs.webkit.org/show_bug.cgi?id=193771
526
527         If we can't determine the PID of a crashlog, just ignore the crashlog instead
528         of raising an exception.
529
530         Reviewed by Lucas Forschler.
531
532         * Scripts/webkitpy/port/darwin.py:
533         (DarwinPort._merge_crash_logs):
534
535 2019-01-24  Michael Catanzaro  <mcatanzaro@igalia.com>
536
537         test_exporter.py: webkitpy.common.system.executive.ScriptError from create_branch_with_patch
538         https://bugs.webkit.org/show_bug.cgi?id=193746
539
540         Reviewed by Youenn Fablet.
541
542         It calls 'git apply --index --abort', but --abort is not a valid argument to 'git apply',
543         so we'd best just not call it.
544
545         * Scripts/webkitpy/w3c/test_exporter.py:
546         (WebPlatformTestExporter.create_branch_with_patch):
547
548 2019-01-24  Ross Kirsling  <ross.kirsling@sony.com>
549
550         Move FileSystem to WTF
551         https://bugs.webkit.org/show_bug.cgi?id=193602
552
553         Reviewed by Yusuke Suzuki.
554
555         * DumpRenderTree/win/DumpRenderTree.cpp:
556         * TestWebKitAPI/CMakeLists.txt:
557         * TestWebKitAPI/PlatformGTK.cmake:
558         * TestWebKitAPI/PlatformJSCOnly.cmake:
559         * TestWebKitAPI/PlatformPlayStation.cmake:
560         * TestWebKitAPI/PlatformWPE.cmake:
561         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
562         * TestWebKitAPI/Tests/WTF/FileSystem.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/FileSystem.cpp.
563         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
564         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
565         * TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp:
566         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
567         * TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp:
568         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
569         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
570         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
571
572 2019-01-24  Philippe Normand  <pnormand@igalia.com>
573
574         [WPE] Remove hard dependency on subprocess32 for the API tests
575
576         Rubber-stamped by Carlos Garcia Campos.
577
578         * glib/api_test_runner.py:
579         (TestRunner._run_test_qt): Lazily import subprocess32 and check
580         its presence only when running WPEQt tests.
581
582 2019-01-24  Carlos Garcia Campos  <cgarcia@igalia.com>
583
584         [GLIB] Expose JavaScriptCore options in GLib public API
585         https://bugs.webkit.org/show_bug.cgi?id=188742
586
587         Reviewed by Michael Catanzaro.
588
589         Add a test for the new API.
590
591         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
592         (testsJSCOptions):
593         (main):
594
595 2019-01-24  Carlos Garcia Campos  <cgarcia@igalia.com>
596
597         [GTK][WPE] Support JPEG 2000 images
598         https://bugs.webkit.org/show_bug.cgi?id=186272
599
600         Reviewed by Žan Doberšek.
601
602         Add OpenJPEG to jhbuild since 2.2.0 version is required and it's not available in debian stable.
603
604         * gtk/jhbuild.modules:
605         * wpe/jhbuild.modules:
606
607 2019-01-23  David Kilzer  <ddkilzer@apple.com>
608
609         check-webkit-style should warn when using soft-linking macros in a header
610         <https://webkit.org/b/193750>
611
612         Reviewed by Darin Adler.
613
614         * Scripts/webkitpy/style/checkers/cpp.py:
615         (check_language): Add softlink/header check by refactoring the
616         softlink/framework check.
617         (CppChecker): Enable softlink/header check by default.
618         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
619         (CppStyleTest.test_softlink_framework): Rename from
620         CppStyleTest.test_softlink() and change test framework name in
621         case AVFoundation gets its own AVFoundationSoftLink.{h,mm}
622         files. Set file_name for macros that only appear in headers.
623         (CppStyleTest.test_softlink_header): Add tests for using
624         soft-link macros in headers.
625
626 2019-01-23  Chris Dumez  <cdumez@apple.com>
627
628         Deprecate API to limit the maximum number of WebProcesses
629         https://bugs.webkit.org/show_bug.cgi?id=193725
630         <rdar://problem/47464879>
631
632         Reviewed by Geoff Garen.
633
634         Update existing API tests to stop using deprecated API.
635
636         * MiniBrowser/mac/AppDelegate.m:
637         (defaultConfiguration):
638         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
639         (TestWebKitAPI::TEST):
640         * TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimer.mm:
641         (TestWebKitAPI::TEST):
642         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
643         * TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
644         (TEST):
645         * TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
646         (TEST):
647
648 2019-01-23  Aakash Jain  <aakash_jain@apple.com>
649
650         [ews-app] Rename ews model buildermappings to buildermapping
651         https://bugs.webkit.org/show_bug.cgi?id=193729
652
653         Reviewed by Lucas Forschler.
654
655         * BuildSlaveSupport/ews-app/ews/models/buildermapping.py: Renamed from Tools/BuildSlaveSupport/ews-app/ews/models/buildermappings.py.
656         (BuilderMapping): Renamed BuildMappings to BuilderMapping.
657         * BuildSlaveSupport/ews-app/ews/models/__init__.py: Ditto.
658
659 2019-01-23  Aakash Jain  <aakash_jain@apple.com>
660
661         [ews-app] Rename ews model steps to step
662         https://bugs.webkit.org/show_bug.cgi?id=193697
663
664         Reviewed by Lucas Forschler.
665
666         * BuildSlaveSupport/ews-app/ews/models/step.py: Renamed from Tools/BuildSlaveSupport/ews-app/ews/models/steps.py.
667         (Step): Renamed Steps to Step.
668
669 2019-01-23  Sihui Liu  <sihui_liu@apple.com>
670
671         Clean up IndexedDB files between tests
672         https://bugs.webkit.org/show_bug.cgi?id=192796
673         <rdar://problem/46824999>
674
675         Reviewed by Geoffrey Garen.
676
677         * DumpRenderTree/mac/DumpRenderTree.mm:
678         (runTest):
679         * WebKitTestRunner/TestController.cpp:
680         (WTR::TestController::resetStateToConsistentValues):
681         (WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
682         (WTR::RemoveAllIndexedDatabasesCallback):
683         (WTR::TestController::ClearIndexedDatabases):
684         * WebKitTestRunner/TestController.h:
685         * WebKitTestRunner/TestInvocation.cpp:
686         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
687
688 2019-01-23  Aakash Jain  <aakash_jain@apple.com>
689
690         [ews-app] Rename ews model Builds to Build
691         https://bugs.webkit.org/show_bug.cgi?id=193695
692
693         Reviewed by Lucas Forschler.
694
695         * BuildSlaveSupport/ews-app/ews/models/build.py: Renamed from Tools/BuildSlaveSupport/ews-app/ews/models/builds.py.
696         (Build): Renamed Builds to Build.
697
698 2019-01-23  Jonathan Bedard  <jbedard@apple.com>
699
700         webkitpy: Wait longer when launching WebKitTestRunner
701         https://bugs.webkit.org/show_bug.cgi?id=193734
702
703         Reviewed by Aakash Jain.
704
705         * Scripts/webkitpy/port/simulator_process.py:
706         (SimulatorProcess._start): Increase timeout from 6 seconds to 15 seconds.
707
708 2019-01-23  Wenson Hsieh  <wenson_hsieh@apple.com>
709
710         [iOS] fast/events/touch/ios/hover-when-style-change-is-async.html times out
711         https://bugs.webkit.org/show_bug.cgi?id=193182
712         <rdar://problem/47452154>
713
714         Reviewed by Tim Horton.
715
716         This test was timing out because one of its preceding tests (drag-to-autoscroll-in-single-line-editable.html)
717         long presses and drags to select text, but does not end the touch by lifting up; subsequently, the tap gesture
718         recognizer isn't fired when simulating a tap in hover-when-style-change-is-async.html.
719
720         To fix this, tweak the test runner to make it safe for tests to end while touching the web view without
721         preventing later tests from recognizing gestures.
722
723         * WebKitTestRunner/ios/TestControllerIOS.mm:
724         (WTR::TestController::platformResetStateToConsistentValues):
725
726         Cancel all touches in the UIApplication when resetting to a consistent state between tests.
727
728 2019-01-23  Jonathan Bedard  <jbedard@apple.com>
729
730         webkitpy: Use correct config for --iphone-simulator and --ipad-simulator
731         https://bugs.webkit.org/show_bug.cgi?id=193722
732         <rdar://problem/47481475>
733
734         Reviewed by Lucas Forschler.
735
736         iPhone and iPad ports should both use the iOS config.
737
738         * Scripts/webkitpy/port/ios_simulator.py:
739         (IPhoneSimulatorPort.__init__):
740         (IPadSimulatorPort.__init__):
741
742 2019-01-23  Rob Buis  <rbuis@igalia.com>
743
744         Update MIME type parser
745         https://bugs.webkit.org/show_bug.cgi?id=180526
746
747         Reviewed by Frédéric Wang.
748
749         Add unit tests for both parse modes of ParsedContentType.
750
751         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
752         * TestWebKitAPI/Tests/WebCore/ParsedContentType.cpp: Added.
753         (TestWebKitAPI::TEST):
754
755 2019-01-22  Aakash Jain  <aakash_jain@apple.com>
756
757         [ews-app] fetch loop should not stop on network issues
758         https://bugs.webkit.org/show_bug.cgi?id=193666
759
760         Reviewed by Lucas Forschler.
761
762         * BuildSlaveSupport/ews-app/ews/fetcher.py:
763         (FetchLoop.run): Ensure that fetch loop doesn't exit on any exception.
764
765 2019-01-22  Wenson Hsieh  <wenson_hsieh@apple.com>
766
767         [iOS] Multiple WKWebViewAutofillTests are flaky failures
768         https://bugs.webkit.org/show_bug.cgi?id=189165
769         <rdar://problem/47433765>
770
771         Reviewed by Tim Horton.
772
773         These tests are currently flaky because they expect an invocation of "Element.blur()" in the web process to
774         immediately dispatch an IPC message to notify the UI process that the element has been blurred. In particular,
775         the -textInputHasAutofillContext helper assumes that waiting for the next remote layer tree commit in the UI
776         process in sufficient to ensure that any previous action that blurred the focused element in the web process
777         would make its way to the UI process by the time the layer tree commit is finished.
778
779         However, WebPage::elementDidBlur sends its IPC message to the UI process asynchronously, using callOnMainThread.
780         This means that if a layer tree flush was already scheduled in the web process before the element was blurred,
781         the element blur IPC message to the UI process will lose the race against the layer tree commit, and the test
782         will fail because it asks for -_autofillContext too early.
783
784         To fix this, we tweak these tests to actually wait until the intended input session change triggered by script
785         is handled in the UI process.
786
787         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
788
789         Tweak some of these tests to wait for input session changes before checking for the presence of an autofill
790         context. The only exception is an existing test that doesn't allow programmatic focus to begin input sessions
791         by default; to fix this test, we simply wait for _WKInputDelegate to be invoked, instead of waiting for a new
792         input session.
793
794         (-[AutofillTestView textInputHasAutofillContext]):
795
796         Remove the incorrect presentation update here. This helper now assumes that the UI process is up to date.
797
798         * TestWebKitAPI/cocoa/TestWKWebView.h:
799         * TestWebKitAPI/cocoa/TestWKWebView.mm:
800         (nextInputSessionChangeCount):
801
802         Monotonically increasing identifier that's incremented whenever an input session is started in the UI process.
803         This includes changing the focused element from one to another.
804
805         (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
806         (-[TestWKWebView didStartFormControlInteraction]):
807         (-[TestWKWebView didEndFormControlInteraction]):
808         (-[TestWKWebView evaluateJavaScriptAndWaitForInputSessionToChange:]):
809
810         Add a helper to evaluate JavaScript and wait for this script to cause some change in the input session. This
811         handles three cases: (1) changing focus from an element that doesn't require an input session to one that does,
812         (2) changing focus between elements that require input sessions, and (3) changing focus from an input session
813         that doesn't require an input session to one that doesn't.
814
815 2019-01-22  David Kilzer  <ddkilzer@apple.com>
816
817         check-webkit-style reports false-positive whitespace/init warning in C++ initialization parameters
818         <https://webkit.org/b/193676>
819
820         Reviewed by Alexey Proskuryakov.
821
822         * Scripts/webkitpy/style/checkers/cpp.py:
823         (check_member_initialization_list):
824         - Don't report missing whitespace around colon if the colon at
825           the start of the line is formatted correctly.
826         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
827         (WebKitStyleTest.test_member_initialization_list):
828         - Add a test for a missing permutation of existing tests.
829         - Add a test this false-positive.
830         - Add blank lines between subtests to make them easier to read.
831
832 2019-01-22  Aakash Jain  <aakash_jain@apple.com>
833
834         [build.webkit.org] Unit-test failure after r237113
835         https://bugs.webkit.org/show_bug.cgi?id=193669
836
837         Reviewed by Michael Catanzaro.
838
839         * BuildSlaveSupport/build.webkit.org-config/factories.py:
840         (Factory.__init__): Properly check for --no-experimental-features flag when additionalArguments has 
841         multiple or zero flags.
842
843 2019-01-22  Tadeu Zagallo  <tzagallo@apple.com>
844
845         Cache bytecode to disk
846         https://bugs.webkit.org/show_bug.cgi?id=192782
847         <rdar://problem/46084932>
848
849         Reviewed by Keith Miller.
850
851         Add test helper to execute bytecode-cache tests: it executes each test
852         twice, the first with JSC_diskCachePath set to a temporary directory
853         and second with JSC_forceDiskCache=true (in addition to the cache path)
854         to guarantee that only the disk cache is being used and no new
855         UnlinkedCodeBlocks are being created.
856
857         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh: Added.
858         * Scripts/run-jsc-stress-tests:
859
860 2019-01-22  Oriol Brufau  <obrufau@igalia.com>
861
862         [css-logical] Implement flow-relative margin, padding and border shorthands
863         https://bugs.webkit.org/show_bug.cgi?id=188697
864
865         Reviewed by Simon Fraser and Antti Koivisto.
866
867         * DumpRenderTree/TestOptions.cpp:
868         (TestOptions::TestOptions):
869         * DumpRenderTree/TestOptions.h:
870         * DumpRenderTree/mac/DumpRenderTree.mm:
871         (setWebPreferencesForTestOptions):
872         Allow tests to enable the CSSLogicalEnabled flag in WK1.
873
874         * Scripts/webkitpy/style/checkers/jsonchecker.py:
875         (JSONCSSPropertiesChecker.check_codegen_properties):
876         Allow CSS property definitions to have a 'runtime-flag' parameter which
877         disables the property when the specified runtime flag is disabled.
878
879 2019-01-21  Fujii Hironori  <Hironori.Fujii@sony.com>
880
881         [GTK][WPE] libgcrypt-1.7.6 can't be compiled on Ubuntu 18.10
882         https://bugs.webkit.org/show_bug.cgi?id=193643
883
884         Reviewed by Michael Catanzaro.
885
886         * gtk/jhbuild.modules: Bumped to libgcrypt-1.8.4.
887         * wpe/jhbuild.modules: Ditto.
888
889 2019-01-21  Zalan Bujtas  <zalan@apple.com>
890
891         [LFC][Floats] Take float top position into account when computing containing block height.
892         https://bugs.webkit.org/show_bug.cgi?id=193655
893
894         Reviewed by Antti Koivisto.
895
896         * LayoutReloaded/misc/LFC-passing-tests.txt:
897
898 2019-01-21  David Kilzer  <ddkilzer@apple.com>
899
900         Switch remaining VideoToolbox soft-linking in WebCore over to VideoToolboxSoftLink.{cpp,h}
901         <https://webkit.org/b/193645>
902         <rdar://problem/47421574>
903
904         Reviewed by Alex Christensen.
905
906         - Now checks for local soft-linking of all frameworks that have
907           their own *SoftLinking.{cpp,h,mm} files.
908         - Changes softlink/uikit warning to softlink/framework.
909
910         * Scripts/webkitpy/style/checkers/cpp.py:
911         (check_language):
912         (CppChecker):
913         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
914         (CppStyleTest):
915
916 2019-01-20  Saam Barati  <sbarati@apple.com>
917
918         Rollout r240210: It broke tests on iOS
919         https://bugs.webkit.org/show_bug.cgi?id=193640
920
921         Unreviewed.
922
923         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper:
924         * Scripts/run-jsc-stress-tests:
925
926 2019-01-20  chris fleizach  <cfleizach@apple.com>
927
928         AX: Support returning relative frames for accessibility
929         https://bugs.webkit.org/show_bug.cgi?id=193414
930         <rdar://problem/47268501>
931
932         Reviewed by Zalan Bujtas.
933
934         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
935         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
936         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
937         (WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
938         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
939         (WTR::attributesOfElement):
940         (WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
941
942 2019-01-20  Yusuke Suzuki  <ysuzuki@apple.com>
943
944         Unreviewed, add my new email address
945
946         * Scripts/webkitpy/common/config/contributors.json:
947
948 2019-01-19  Zalan Bujtas  <zalan@apple.com>
949
950         [LFC][BFC] <body>'s overflow property value is propagated to viewport
951         https://bugs.webkit.org/show_bug.cgi?id=193617
952
953         Reviewed by Antti Koivisto.
954
955         * LayoutReloaded/misc/LFC-passing-tests.txt:
956
957 2019-01-20  Michael Catanzaro  <mcatanzaro@igalia.com>
958
959         Unreviewed, rolling out r240209.
960
961         Broke GTK/WPE injected bundle
962
963         Reverted changeset:
964
965         "AX: Support returning relative frames for accessibility"
966         https://bugs.webkit.org/show_bug.cgi?id=193414
967         https://trac.webkit.org/changeset/240209
968
969 2019-01-12  Dan Bernstein  <mitz@apple.com>
970
971         [Cocoa] Avoid importing directly from subumbrella frameworks
972         https://bugs.webkit.org/show_bug.cgi?id=186016
973         <rdar://problem/40591038>
974
975         Reviewed by Sam Weinig.
976
977         * DumpRenderTree/cg/PixelDumpSupportCG.cpp: Include CoreServices.h instead of a
978           LaunchServices header.
979         * DumpRenderTree/mac/Configurations/BaseTarget.xcconfig: Removed -iframework options from
980           OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
981         * DumpRenderTree/mac/LayoutTestHelper.m: Import ApplicationServices.h instead of ColorSync.h
982           when using SDKs earlier than 10.13.
983         * TestWebKitAPI/Configurations/Base.xcconfig: Removed -iframework options from OTHER_CFLAGS
984           and OTHER_CPLUSPLUSFLAGS.
985         * WebKitTestRunner/Configurations/BaseTarget.xcconfig: Removed -iframework options from
986           OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
987         * WebKitTestRunner/cg/TestInvocationCG.cpp: Include CoreServices.h instead of a
988           LaunchServices header.
989
990 2019-01-20  Tadeu Zagallo  <tzagallo@apple.com>
991
992         Cache bytecode to disk
993         https://bugs.webkit.org/show_bug.cgi?id=192782
994         <rdar://problem/46084932>
995
996         Reviewed by Keith Miller.
997
998         Add test helper to execute bytecode-cache tests: it executes each test
999         twice, the first with JSC_diskCachePath set to a temporary directory
1000         and second with JSC_forceDiskCache=true (in addition to the cache path)
1001         to guarantee that only the disk cache is being used and no new
1002         UnlinkedCodeBlocks are being created.
1003
1004         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper: Added.
1005         * Scripts/run-jsc-stress-tests:
1006
1007 2019-01-20  chris fleizach  <cfleizach@apple.com>
1008
1009         AX: Support returning relative frames for accessibility
1010         https://bugs.webkit.org/show_bug.cgi?id=193414
1011         <rdar://problem/47268501>
1012
1013         Reviewed by Zalan Bujtas.
1014
1015         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1016         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1017         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1018         (WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
1019         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1020         (WTR::attributesOfElement):
1021         (WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
1022
1023 2019-01-20  Antoine Quint  <graouts@apple.com>
1024
1025         Add a POINTER_EVENTS feature flag
1026         https://bugs.webkit.org/show_bug.cgi?id=193577
1027         <rdar://problem/47408511>
1028
1029         Unreviewed. Also enable Pointer Events for iosmac.
1030
1031         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1032
1033 2019-01-19  Zalan Bujtas  <zalan@apple.com>
1034
1035         [LFC][Floats] Ensure that floats in FloatingContext::m_floats are always horizontally ordered.
1036         https://bugs.webkit.org/show_bug.cgi?id=193613
1037
1038         Reviewed by Antti Koivisto.
1039
1040         * LayoutReloaded/misc/LFC-passing-tests.txt:
1041
1042 2019-01-19  Antoine Quint  <graouts@apple.com>
1043
1044         Add a POINTER_EVENTS feature flag
1045         https://bugs.webkit.org/show_bug.cgi?id=193577
1046
1047         Reviewed by Dean Jackson.
1048
1049         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1050
1051 2019-01-18  Zhifei FANG  <zhifei_fang@apple.com>
1052
1053         Disable the run-jsc-stress-test remote host key check [second round].
1054         https://bugs.webkit.org/show_bug.cgi?id=192988
1055
1056         Reviewed by Dewei Zhu.
1057
1058         * Scripts/run-jsc-stress-tests:
1059
1060 2019-01-18  Aakash Jain  <aakash_jain@apple.com>
1061
1062         [build.webkit.org] unit-test failure Builder GTK Linux 32-bit Release doesn't exist
1063         https://bugs.webkit.org/show_bug.cgi?id=193597
1064
1065         Reviewed by Lucas Forschler.
1066
1067         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1068
1069 2019-01-18  Aakash Jain  <aakash_jain@apple.com>
1070
1071         [build.webkit.org] api tests failures are incorrectly named as unit test failures
1072         https://bugs.webkit.org/show_bug.cgi?id=193595
1073
1074         Reviewed by Lucas Forschler.
1075
1076         * BuildSlaveSupport/build.webkit.org-config/factories.py: Renamed RunUnitTests to RunAPITests.
1077         * BuildSlaveSupport/build.webkit.org-config/steps.py: Ditto.
1078         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Ditto.
1079
1080 2019-01-18  Chris Dumez  <cdumez@apple.com>
1081
1082         Regression(PSON) Content blockers are sometimes lost on back navigation cross-site
1083         https://bugs.webkit.org/show_bug.cgi?id=193588
1084         <rdar://problem/47131566>
1085
1086         Reviewed by Alex Christensen.
1087
1088         Add layout test coverage.
1089
1090         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1091
1092 2019-01-18  Jer Noble  <jer.noble@apple.com>
1093
1094         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
1095         https://bugs.webkit.org/show_bug.cgi?id=189553
1096
1097         Reviewed by Tim Horton.
1098
1099         Add a check-webkit-style check that ensures all SDKVariant.xcconfig files match.
1100
1101         * ContentExtensionTester/Configurations/Base.xcconfig:
1102         * ContentExtensionTester/Configurations/SDKVariant.xcconfig: Added.
1103         * DumpRenderTree/mac/Configurations/Base.xcconfig:
1104         * DumpRenderTree/mac/Configurations/SDKVariant.xcconfig: Added.
1105         * ImageDiff/cg/Configurations/Base.xcconfig:
1106         * ImageDiff/cg/Configurations/SDKVariant.xcconfig: Added.
1107         * MiniBrowser/Configurations/Base.xcconfig:
1108         * MiniBrowser/Configurations/SDKVariant.xcconfig: Added.
1109         * MobileMiniBrowser/Configurations/Base.xcconfig:
1110         * MobileMiniBrowser/Configurations/SDKVariant.xcconfig: Added.
1111         * Scripts/webkitpy/style/checker.py:
1112         (_all_categories):
1113         (FileType):
1114         (CheckerDispatcher._file_type):
1115         (CheckerDispatcher._create_checker):
1116         * Scripts/webkitpy/style/checkers/sdkvariant.py: Added.
1117         (SDKVariantChecker):
1118         (SDKVariantChecker.__init__):
1119         (SDKVariantChecker.check):
1120         * TestWebKitAPI/Configurations/Base.xcconfig:
1121         * TestWebKitAPI/Configurations/SDKVariant.xcconfig: Added.
1122         * WebEditingTester/Configurations/Base.xcconfig:
1123         * WebEditingTester/Configurations/SDKVariant.xcconfig: Added.
1124         * WebKitLauncher/Configurations/SDKVariant.xcconfig: Added.
1125         * WebKitTestRunner/Configurations/Base.xcconfig:
1126         * WebKitTestRunner/Configurations/SDKVariant.xcconfig: Added.
1127         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
1128         * lldb/lldbWebKitTester/Configurations/SDKVariant.xcconfig: Added.
1129
1130 2019-01-18  David Kilzer  <ddkilzer@apple.com>
1131
1132         Switch remaining UIKit soft-linking in WebCore, WebKitLegacy over to UIKitSoftLink.{cpp,h}
1133         <https://webkit.org/b/193568>
1134         <rdar://problem/47381130>
1135
1136         Reviewed by Alex Christensen.
1137
1138         Make sure no one re-introduces UIKit soft-linking by adding a
1139         style rule.
1140
1141         * Scripts/webkitpy/style/checkers/cpp.py:
1142         (check_language): Add softlink/uikit check.
1143         (CppChecker): Enable softlink/uikit check.
1144         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1145         (CppStyleTest): Add test for softlink/uikit.
1146
1147 2019-01-18  Joanmarie Diggs  <jdiggs@igalia.com>
1148
1149         [GTK] install-dependencies tool looks for libunistring-dev for dnf
1150         https://bugs.webkit.org/show_bug.cgi?id=193584
1151
1152         Change "-dev" to "-devel".
1153
1154         Reviewed by Michael Catanzaro.
1155
1156         * gtk/install-dependencies:
1157
1158 2019-01-18  Jonathan Bedard  <jbedard@apple.com>
1159
1160         webkitpy: Add iPhone and iPad ports
1161         https://bugs.webkit.org/show_bug.cgi?id=193537
1162         <rdar://problem/47353390>
1163
1164         Reviewed by Lucas Forschler.
1165
1166         Add --iphone-simulator and --ipad-simulator commands to run-webkit-tests which separate iPhone and iPad into separate
1167         ports. Note that this separation is optional, the --ios-simulator command remains.
1168
1169         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
1170         (RunTest.test_device_type_test_division): Drive-by fix.
1171         (RunTest.test_device_type_specific_listing): Ditto.
1172         (RunTest.test_ipad_test_division):
1173         (RunTest):
1174         (RunTest.test_ipad_listing):
1175         * Scripts/webkitpy/port/factory.py:
1176         (platform_options): Add --iphone-simulator and --ipad-simulator flags.
1177         (PortFactory):
1178         * Scripts/webkitpy/port/ios_simulator.py:
1179         (IPhoneSimulatorPort):
1180         (IPadSimulatorPort):
1181
1182 2019-01-18  Chris Dumez  <cdumez@apple.com>
1183
1184         Regression(PSON) Scroll position is not always restored properly when navigating back
1185         https://bugs.webkit.org/show_bug.cgi?id=193578
1186         <rdar://problem/47386331>
1187
1188         Reviewed by Tim Horton.
1189
1190         Add API test coverage.
1191
1192         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1193
1194 2019-01-18  Youenn Fablet  <youenn@apple.com>
1195
1196         Add a new SPI to request for cache storage quota increase
1197         https://bugs.webkit.org/show_bug.cgi?id=193323
1198
1199         Reviewed by Alex Christensen.
1200
1201         Implement WebsiteDataStore quota delegate to handle quota requests.
1202         By default, do not update quota.
1203         Update quota if test calls the new testRunner.allowCacheStorageQuotaIncrease method.
1204
1205         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1206         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1207         (WTR::TestRunner::allowCacheStorageQuotaIncrease):
1208         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1209         * WebKitTestRunner/TestController.cpp:
1210         (WTR::TestController::allowCacheStorageQuotaIncrease):
1211         * WebKitTestRunner/TestController.h:
1212         * WebKitTestRunner/TestInvocation.cpp:
1213         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1214         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1215         (-[CacheStorageQuotaManager init]):
1216         (-[CacheStorageQuotaManager _requestCacheStorageSpace:frameOrigin:quota:currentSize:spaceRequired:decisionHandler:]):
1217         (WTR::initializeWebViewConfiguration):
1218         (WTR::TestController::cocoaResetStateToConsistentValues):
1219         (WTR::TestController::allowCacheStorageQuotaIncrease):
1220
1221 2019-01-18  Aakash Jain  <aakash_jain@apple.com>
1222
1223         [ews-build] Pass owner to the triggered builds
1224         https://bugs.webkit.org/show_bug.cgi?id=193574
1225
1226         Reviewed by Lucas Forschler.
1227
1228         * BuildSlaveSupport/ews-build/factories.py:
1229         (BuildFactory.propertiesToPassToTriggers):
1230
1231 2019-01-18  Aakash Jain  <aakash_jain@apple.com>
1232
1233         [ews-app] Send patch author as a build property
1234         https://bugs.webkit.org/show_bug.cgi?id=193560
1235
1236         Reviewed by Lucas Forschler.
1237
1238         * BuildSlaveSupport/ews-app/ews/fetcher.py:
1239         (BugzillaPatchFetcher.fetch):
1240
1241 2019-01-18  Jonathan Bedard  <jbedard@apple.com>
1242
1243         webkitpy: Implement device type specific expected results (Follow-up fix)
1244         https://bugs.webkit.org/show_bug.cgi?id=192162
1245         <rdar://problem/46345449>
1246
1247         Unreviewed infrastructure fix.
1248
1249         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1250         (Manager.run): Don't boot a device if no tests are available to run on it.
1251
1252 2019-01-18  Jonathan Bedard  <jbedard@apple.com>
1253
1254         webkitpy: Implement device type specific expected results (Follow-up fix)
1255         https://bugs.webkit.org/show_bug.cgi?id=192162
1256         <rdar://problem/46345449>
1257
1258         Unreviewed infrastructure fix.
1259
1260         * Scripts/webkitpy/api_tests/manager.py:
1261         (Manager._initialize_devices): Use DEVICE_TYPE when running API tests.
1262
1263 2019-01-18  Jonathan Bedard  <jbedard@apple.com>
1264
1265         webkitpy: Implement device type specific expected results (Part 2)
1266         https://bugs.webkit.org/show_bug.cgi?id=192162
1267         <rdar://problem/46345449>
1268
1269         Rubber-stamped by Aakash Jain.
1270
1271         This change uses device_type to select a different set of TestExpectation files based on the type of device running
1272         tests. This requires multiple baseline search paths to be used in a single instantiation of run-webkit-tests. Note
1273         that while multiple baseline search paths are used, any single test will only ever be run on a single device type.
1274
1275         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
1276         (LayoutTestFinder.find_tests): Pass device_type through.
1277         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder_unittest.py:
1278         (LayoutTestFinderTests.test_touched_but_skipped_test): Allow device_type to be passed in.
1279         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1280         (Manager.__init__): Make _expectations an OrderedDict indexed by device_type, add current_device_type.
1281         (Manager._collect_tests): Pass device type to test finder.
1282         (Manager._needs_web_platform_test):
1283         (Manager._prepare_lists): Index _expectations by device type.
1284         (Manager._test_input_for_file):
1285         (Manager._test_is_slow): Ditto.
1286         (Manager._test_should_dump_jsconsolelog_in_stderr):
1287         (Manager._test_should_dump_jsconsolelog_in_stderr): Ditto.
1288         (Manager._get_test_inputs):
1289         (Manager._update_worker_count):
1290         (Manager._set_up_run): Use current_device_type instead of passing device_type in.
1291         (Manager.run): Re-write function to gather and parse expectations from multiple baseline search paths. In the event
1292         that a test can be run on multiple device types, the first device in the device type list which is eligible will be
1293         the one which runs the test.
1294         (Manager._run_test_subset):
1295         (Manager._run_tests): Index _expectations by current_device_type.
1296         (Manager._print_expectation_line_for_test): Ditto.
1297         (Manager._print_expectations_for_subset): Ditto.
1298         (Manager.print_expectations): Re-write function to gather and parse expectations from multiple baseline search paths.
1299         Unlike run, this function will behave the same regardless of what devices are available.
1300         (Manager._custom_device_for_test): Deleted.
1301         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
1302         (ManagerTest.test_uses_custom_device): Deleted.
1303         (ManagerTest.test_uses_custom_device.get_manager): Deleted.
1304         * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
1305         (JSONLayoutResultsGenerator.__init__): Pass expectations as a dictionary indexed by device type.
1306         (JSONLayoutResultsGenerator._insert_failure_summaries): The number of fixable tests must take into consideration
1307         all of the expectations.
1308         * Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py:
1309         (FakePort.skipped_layout_tests): Allow device_type to be passed in.
1310         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1311         (TestExpectations.__init__): Allow device_type to be passed through.
1312         (TestExpectations.parse_all_expectations): Pick expectations_dict by device type.
1313         * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py: Allow device_type to be passed in.
1314         * Scripts/webkitpy/layout_tests/models/test_run_results.py:
1315         (summarize_results):
1316         * Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
1317         (summarized_results): Expectations are stored in a dictionary indexed by device_type. When determining the expectation
1318         a test ran with, one must check all expectations to find the first non-skip expectation.
1319         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
1320         (RunTest.test_device_type_test_division):
1321         (RunTest):
1322         (RunTest.test_device_type_specific_listing):
1323         * Scripts/webkitpy/port/base.py:
1324         (Port): Add default values for DEVICE_TYPE and DEFAULT_DEVICE_TYPES.
1325         (Port.supported_device_types): The result of this function will change based on what devices are available.
1326         * Scripts/webkitpy/port/device_port.py:
1327         (DevicePort._device_type_with_version): Replace DEFAULT_DEVICE_TYPE with DEVICE_TYPE.
1328         (DevicePort.default_child_processes): DEVICE_TYPE is a general type, so the built-in comparison of the DeviceType object
1329         can be used.
1330         (DevicePort.supported_device_types): Generates a list of device types determined by the available devices, if there are
1331         any, or the DEFAULT_DEVICE_TYPES of the port.
1332         * Scripts/webkitpy/port/ios.py:
1333         (IOSPort): Change DEFAULT_DEVICE_TYPE to DEVICE_TYPE.
1334         * Scripts/webkitpy/port/ios_simulator.py:
1335         (IOSSimulatorPort): Set the DEFAULT_DEVICE_TYPES to the devices currently used to run layout tests.
1336         * Scripts/webkitpy/port/watch.py:
1337         (WatchPort): Change DEFAULT_DEVICE_TYPE to DEVICE_TYPE.
1338         * Scripts/webkitpy/port/watch_simulator.py:
1339         (WatchSimulatorPort): Set the DEFAULT_DEVICE_TYPES to the device currently used to run layout tests.
1340         * Scripts/webkitpy/xcode/device_type.py:
1341         (DeviceType):
1342         (DeviceType.__hash__): Allow DeviceType to be used as a dictionary index.
1343
1344 2019-01-18  Philippe Normand  <pnormand@igalia.com>
1345
1346         [WPE] run-qt-wpe-minibrowser needlessly expects a --wpe argument
1347         https://bugs.webkit.org/show_bug.cgi?id=193575
1348
1349         Reviewed by Michael Catanzaro.
1350
1351         Allow the script to run without explicit port argument because
1352         it's specific to the WPE port anyway.
1353
1354         * Scripts/run-qt-wpe-minibrowser: Manually insert --wpe in argv
1355         and simplify the rest of the code accordingly.
1356
1357 2019-01-18  Charlie Turner  <cturner@igalia.com>
1358
1359         [GStreamer][EME][ClearKey] Request keys from CDMInstance rather than passing via bus messages
1360         https://bugs.webkit.org/show_bug.cgi?id=192229
1361
1362         Reviewed by Xabier Rodriguez-Calvar.
1363
1364         * MiniBrowser/wpe/main.cpp:
1365         (main): Enable encrypted-media by default.
1366
1367 2019-01-18  Philippe Normand  <pnormand@igalia.com>
1368
1369         [Flatpak] Missing KeyboardInterrupt exception handler
1370         https://bugs.webkit.org/show_bug.cgi?id=193570
1371
1372         Reviewed by Michael Catanzaro.
1373
1374         * flatpak/flatpakutils.py:
1375         (WebkitFlatpak.run_in_sandbox): Basic KeyboardInterrupt handling.
1376
1377 2019-01-18  Zalan Bujtas  <zalan@apple.com>
1378
1379         [LFC][BFC][MarginCollapsing] Collapsing through should not ignore floats.
1380         https://bugs.webkit.org/show_bug.cgi?id=193564
1381
1382         Reviewed by Antti Koivisto.
1383
1384         * LayoutReloaded/misc/LFC-passing-tests.txt:
1385
1386 2019-01-18  Zalan Bujtas  <zalan@apple.com>
1387
1388         [LFC] Do not skip float boxes that are not part of the current formatting context when computing bottom.
1389         https://bugs.webkit.org/show_bug.cgi?id=193562
1390
1391         Reviewed by Antti Koivisto.
1392
1393         * LayoutReloaded/misc/LFC-passing-tests.txt:
1394
1395 2019-01-18  Zalan Bujtas  <zalan@apple.com>
1396
1397         [LFC][BFC] Check for inflow children while computing height for block formatting context roots.
1398         https://bugs.webkit.org/show_bug.cgi?id=193555
1399
1400         Reviewed by Antti Koivisto.
1401
1402         * LayoutReloaded/misc/LFC-passing-tests.txt:
1403
1404 2019-01-18  Philippe Normand  <pnormand@igalia.com>
1405
1406         [WPE] Add Qt extension
1407         https://bugs.webkit.org/show_bug.cgi?id=191464
1408
1409         Reviewed by Carlos Garcia Campos.
1410
1411         MiniBrowser and API tests for the WPE Qt API. To run the
1412         MiniBrowser a new script is introduced. Example invocation:
1413
1414         $ run-qt-wpe-minibrowser -platform wayland https://webkit.org
1415
1416         Also note-worthy is the introduction of the python2-subprocess32
1417         dependency to run the GLib API tests.
1418
1419         * MiniBrowser/wpe/CMakeLists.txt:
1420         * MiniBrowser/wpe/qt/CMakeLists.txt: Added.
1421         * MiniBrowser/wpe/qt/main.cpp: Added.
1422         (main):
1423         * MiniBrowser/wpe/qt/main.qml: Added.
1424         * MiniBrowser/wpe/qt/qml.qrc: Added.
1425         * Scripts/run-gtk-tests:
1426         (GtkTestRunner.is_google_test):
1427         (GtkTestRunner):
1428         (GtkTestRunner.is_qt_test):
1429         * Scripts/run-qt-wpe-minibrowser: Added.
1430         * Scripts/run-wpe-tests:
1431         (WPETestRunner):
1432         (WPETestRunner.is_google_test):
1433         (WPETestRunner.is_qt_test):
1434         * TestWebKitAPI/Tests/WPEQt/TestLoad.cpp: Added.
1435         (TestLoad::main):
1436         * TestWebKitAPI/Tests/WPEQt/TestLoadHtml.cpp: Added.
1437         (TestLoadHtml::main):
1438         * TestWebKitAPI/Tests/WPEQt/TestLoadRequest.cpp: Added.
1439         (TestLoadRequest::main):
1440         * TestWebKitAPI/Tests/WPEQt/TestRunJavaScript.cpp: Added.
1441         (TestRunJavaScript::main):
1442         * TestWebKitAPI/Tests/WPEQt/WPEQtTest.cpp: Added.
1443         (waitForSignal):
1444         * TestWebKitAPI/Tests/WPEQt/WPEQtTest.h: Added.
1445         (LoadSpy::LoadSpy):
1446         (LoadSpy::~LoadSpy):
1447         (LoadSpy::onLoadingChanged):
1448         (LoadStartedCatcher::LoadStartedCatcher):
1449         (LoadStartedCatcher::~LoadStartedCatcher):
1450         (LoadStartedCatcher::onLoadingChanged):
1451         (waitForLoadSucceeded):
1452         (waitForLoadFailed):
1453         * TestWebKitAPI/glib/CMakeLists.txt:
1454         * flatpak/flatpakutils.py:
1455         (WebkitFlatpak.load_from_args):
1456         (WebkitFlatpak.__init__):
1457         (WebkitFlatpak.clean_args):
1458         (WebkitFlatpak.run_in_sandbox):
1459         * flatpak/org.webkit.CommonModules.yaml:
1460         * flatpak/org.webkit.WPE.yaml:
1461         * flatpak/org.webkit.WPEModules.yaml:
1462         * flatpak/org.webkit.WPEQT.yaml: Copied from Tools/flatpak/org.webkit.WebKit.yaml.
1463         * flatpak/org.webkit.WebKit.yaml:
1464         * glib/api_test_runner.py:
1465         (TestRunner._run_test_qt):
1466         (TestRunner.is_qt_test):
1467         (TestRunner._run_test):
1468
1469 2019-01-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1470
1471         [iOS] Content offset jumps erratically when autoscrolling near scroll view content inset areas
1472         https://bugs.webkit.org/show_bug.cgi?id=193494
1473         <rdar://problem/46859627>
1474
1475         Reviewed by Simon Fraser and Tim Horton.
1476
1477         Add a new test option to add a top content inset to the test runner's WKWebView's scroll view, and automatically
1478         scroll to reveal this top content inset area when beginning the test (i.e., scroll to (0, -topContentInset)).
1479
1480         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1481         (WTR::UIScriptController::contentOffsetX const):
1482         (WTR::UIScriptController::contentOffsetY const):
1483         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1484         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1485         (WTR::UIScriptController::contentOffsetX const):
1486         (WTR::UIScriptController::contentOffsetY const):
1487         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1488
1489         Also add new UIScriptController methods to ask for the content offset of the platform scroll view.
1490
1491         * WebKitTestRunner/TestController.cpp:
1492         (WTR::updateTestOptionsFromTestHeader):
1493         * WebKitTestRunner/TestOptions.h:
1494         (WTR::TestOptions::hasSameInitializationOptions const):
1495         * WebKitTestRunner/ios/TestControllerIOS.mm:
1496         (WTR::TestController::platformResetStateToConsistentValues):
1497         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1498         (WTR::UIScriptController::contentOffsetX const):
1499         (WTR::UIScriptController::contentOffsetY const):
1500
1501 2019-01-17  Truitt Savell  <tsavell@apple.com>
1502
1503         Unreviewed, rolling out r240124.
1504
1505         This commit broke an internal build.
1506
1507         Reverted changeset:
1508
1509         "SDK_VARIANT build destinations should be separate from non-
1510         SDK_VARIANT builds"
1511         https://bugs.webkit.org/show_bug.cgi?id=189553
1512         https://trac.webkit.org/changeset/240124
1513
1514 2019-01-17  Alex Christensen  <achristensen@webkit.org>
1515
1516         Fix string concatenation API test after r239920
1517         https://bugs.webkit.org/show_bug.cgi?id=193551
1518         <rdar://problem/47359304>
1519
1520         Reviewed by Youenn Fablet.
1521
1522         * TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
1523         (TestWebKitAPI::TEST):
1524         Cocoa platforms' interpretation of UChar/unsigned short equality is not affected by ICU's recent change of UChar's type
1525         in WebKit's build configuration like it apparently is on Linux.
1526
1527 2019-01-17  Aakash Jain  <aakash_jain@apple.com>
1528
1529         [ews-build] validate-patch should handle the case when bug_id is None
1530         https://bugs.webkit.org/show_bug.cgi?id=193547
1531
1532         Reviewed by Lucas Forschler.
1533
1534         * BuildSlaveSupport/ews-build/steps.py:
1535         (ValidatePatch._is_bug_closed): Gracefully handle the case when bug_id is None.
1536         (ValidatePatch.start): If bug_id is set as None in build properties, fetch it from the patch.
1537
1538 2019-01-17  Aakash Jain  <aakash_jain@apple.com>
1539
1540         [ews-build] Add patch author information in build
1541         https://bugs.webkit.org/show_bug.cgi?id=193465
1542
1543         Reviewed by Lucas Forschler.
1544
1545         * BuildSlaveSupport/ews-build/steps.py:
1546         (ValidatePatch._is_patch_obsolete):
1547
1548 2019-01-17  Aakash Jain  <aakash_jain@apple.com>
1549
1550         [ews-build] Pass bug_id to the triggered builds
1551         https://bugs.webkit.org/show_bug.cgi?id=193548
1552
1553         Reviewed by Lucas Forschler.
1554
1555         * BuildSlaveSupport/ews-build/factories.py:
1556         (BuildFactory.propertiesToPassToTriggers):
1557
1558 2019-01-17  Jer Noble  <jer.noble@apple.com>
1559
1560         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
1561         https://bugs.webkit.org/show_bug.cgi?id=189553
1562
1563         Reviewed by Tim Horton.
1564
1565         Add a check-webkit-style check that ensures all SDKVariant.xcconfig files match.
1566
1567         * ContentExtensionTester/Configurations/Base.xcconfig:
1568         * ContentExtensionTester/Configurations/SDKVariant.xcconfig: Added.
1569         * DumpRenderTree/mac/Configurations/Base.xcconfig:
1570         * DumpRenderTree/mac/Configurations/SDKVariant.xcconfig: Added.
1571         * ImageDiff/cg/Configurations/Base.xcconfig:
1572         * ImageDiff/cg/Configurations/SDKVariant.xcconfig: Added.
1573         * MiniBrowser/Configurations/Base.xcconfig:
1574         * MiniBrowser/Configurations/SDKVariant.xcconfig: Added.
1575         * MobileMiniBrowser/Configurations/Base.xcconfig:
1576         * MobileMiniBrowser/Configurations/SDKVariant.xcconfig: Added.
1577         * Scripts/webkitpy/style/checker.py:
1578         (_all_categories):
1579         (FileType):
1580         (CheckerDispatcher._file_type):
1581         (CheckerDispatcher._create_checker):
1582         * Scripts/webkitpy/style/checkers/sdkvariant.py: Added.
1583         (SDKVariantChecker):
1584         (SDKVariantChecker.__init__):
1585         (SDKVariantChecker.check):
1586         * TestWebKitAPI/Configurations/Base.xcconfig:
1587         * TestWebKitAPI/Configurations/SDKVariant.xcconfig: Added.
1588         * WebEditingTester/Configurations/Base.xcconfig:
1589         * WebEditingTester/Configurations/SDKVariant.xcconfig: Added.
1590         * WebKitLauncher/Configurations/SDKVariant.xcconfig: Added.
1591         * WebKitTestRunner/Configurations/Base.xcconfig:
1592         * WebKitTestRunner/Configurations/SDKVariant.xcconfig: Added.
1593         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
1594         * lldb/lldbWebKitTester/Configurations/SDKVariant.xcconfig: Added.
1595
1596 2019-01-17  Zalan Bujtas  <zalan@apple.com>
1597
1598         [LFC][BFC] An element with transform is a containing block for positioned descendants.
1599         https://bugs.webkit.org/show_bug.cgi?id=193534
1600
1601         Reviewed by Antti Koivisto.
1602
1603         * LayoutReloaded/misc/LFC-passing-tests.txt:
1604
1605 2019-01-17  Zalan Bujtas  <zalan@apple.com>
1606
1607         [LFC][BFC][Quirk] Take body padding and border into account when stretching height.
1608         https://bugs.webkit.org/show_bug.cgi?id=193528
1609
1610         Reviewed by Antti Koivisto.
1611
1612         * LayoutReloaded/misc/LFC-passing-tests.txt:
1613
1614 2019-01-17  Zalan Bujtas  <zalan@apple.com>
1615
1616         [LFC][BFC] For height computation, the bottom edge of the last line box value should include top border/padding
1617         https://bugs.webkit.org/show_bug.cgi?id=193520
1618
1619         Reviewed by Antti Koivisto.
1620
1621         * LayoutReloaded/misc/LFC-passing-tests.txt:
1622
1623 2019-01-17  Aakash Jain  <aakash_jain@apple.com>
1624
1625         [ews-build] unapply-patch step should not update source
1626         https://bugs.webkit.org/show_bug.cgi?id=193234
1627
1628         Reviewed by Lucas Forschler.
1629
1630         * BuildSlaveSupport/ews-build/steps.py:
1631         (CleanWorkingDirectory): Use clean-webkit script to clean the working directory.
1632         (UnApplyPatchIfRequired): Use CleanWorkingDirectory as base class.
1633
1634 2019-01-16  Youenn Fablet  <youenn@apple.com>
1635
1636         Add a new SPI for controlling getUserMedia
1637         https://bugs.webkit.org/show_bug.cgi?id=192793
1638
1639         Reviewed by Eric Carlson.
1640
1641         * MiniBrowser/mac/WK2BrowserWindowController.m:
1642         (-[WK2BrowserWindowController _webView:requestUserMediaAuthorizationForFrame:devices:decisionHandler:]):
1643         (-[WK2BrowserWindowController _webView:isMediaCaptureAuthorizedForFrame:decisionHandler:]):
1644         * TestWebKitAPI/Tests/WebKit/GetUserMediaNavigation.mm:
1645         (-[NavigationWhileGetUserMediaPromptDisplayedUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
1646         * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm:
1647         (-[GetUserMediaRepromptUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
1648         * TestWebKitAPI/Tests/WebKit/MediaStreamTrackDetached.mm:
1649         (-[MediaStreamTrackDetachedUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
1650         * TestWebKitAPI/Tests/WebKitCocoa/UserMediaDisabled.mm:
1651         (-[UserMediaUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
1652         (-[UserMediaUIDelegate _webView:isMediaCaptureAuthorizedForFrame:decisionHandler:]):
1653         * TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm:
1654         (-[SimulateFailedSandboxUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
1655         (-[SimulateFailedSandboxUIDelegate _webView:isMediaCaptureAuthorizedForFrame:decisionHandler:]):
1656
1657 2019-01-16  Zalan Bujtas  <zalan@apple.com>
1658
1659         [LFC][BFC] Inflow non-replaced used width should not be negative.
1660         https://bugs.webkit.org/show_bug.cgi?id=193495
1661
1662         Reviewed by Antti Koivisto.
1663
1664         * LayoutReloaded/misc/LFC-passing-tests.txt:
1665
1666 2019-01-16  Chris Dumez  <cdumez@apple.com>
1667
1668         Regression(PSON) View becomes blank after click a cross-site download link
1669         https://bugs.webkit.org/show_bug.cgi?id=193361
1670         <rdar://problem/47099573>
1671
1672         Reviewed by Geoffrey Garen.
1673
1674         Add API test coverage.
1675
1676         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1677         (-[PSONNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1678
1679 2019-01-16  Zalan Bujtas  <zalan@apple.com>
1680
1681         [LFC][Out-of-flow] Set used vertical margin values when top/height/bottom are non-auto.
1682         https://bugs.webkit.org/show_bug.cgi?id=193470
1683
1684         Reviewed by Antti Koivisto.
1685
1686         * LayoutReloaded/misc/LFC-passing-tests.txt:
1687
1688 2019-01-16  Zalan Bujtas  <zalan@apple.com>
1689
1690         [LFC] Adjust margin box verification.
1691         https://bugs.webkit.org/show_bug.cgi?id=193482
1692
1693         Reviewed by Antti Koivisto.
1694
1695         * LayoutReloaded/misc/LFC-passing-tests.txt:
1696
1697 2019-01-15  Sihui Liu  <sihui_liu@apple.com>
1698
1699         Fix API test WebKit.WebsiteDataStoreCustomPathsWithoutPrewarming after 193354
1700         https://bugs.webkit.org/show_bug.cgi?id=193451
1701
1702         Reviewed by Geoffrey Garen.
1703
1704         * TestWebKitAPI/Tests/WebKitCocoa/DuplicateCompletionHandlerCalls.mm:
1705         (TEST):
1706         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
1707         (runWebsiteDataStoreCustomPaths):
1708
1709 2019-01-15  Jonathan Bedard  <jbedard@apple.com>
1710
1711         webkitpy: Support boolean simctl isAvailable
1712         https://bugs.webkit.org/show_bug.cgi?id=193472
1713         <rdar://problem/47296150>
1714
1715         Reviewed by Ryosuke Niwa.
1716
1717         * Scripts/webkitpy/xcode/simulated_device.py:
1718         (SimulatedDeviceManager._create_runtimes):
1719         (SimulatedDeviceManager._create_device_with_runtime):
1720
1721 2019-01-15  Chris Dumez  <cdumez@apple.com>
1722
1723         Unreviewed, rolling out r239993, r239995, r239997, and
1724         r239999.
1725
1726         Caused assertions under
1727         ViewGestureController::disconnectFromProcess()
1728
1729         Reverted changesets:
1730
1731         "Regression(PSON) View becomes blank after click a cross-site
1732         download link"
1733         https://bugs.webkit.org/show_bug.cgi?id=193361
1734         https://trac.webkit.org/changeset/239993
1735
1736         "Unreviewed iOS build fix after r239993."
1737         https://trac.webkit.org/changeset/239995
1738
1739         "Fix iOS build after r239993"
1740         https://bugs.webkit.org/show_bug.cgi?id=193361
1741         https://trac.webkit.org/changeset/239997
1742
1743         "Unreviewed, revert part of r239997 as it is not needed to fix
1744         the build."
1745         https://trac.webkit.org/changeset/239999
1746
1747 2019-01-15  Tim Horton  <timothy_horton@apple.com>
1748
1749         Cannot tab out of WKWebView on macOS
1750         https://bugs.webkit.org/show_bug.cgi?id=161448
1751         <rdar://problem/28100085>
1752
1753         Reviewed by Dean Jackson.
1754
1755         Add a test that tabbing into and out of WKWebView works correctly.
1756
1757         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1758         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
1759         (WebKit2_CommandBackForwardTest::SetUp):
1760         (-[CommandBackForwardOffscreenWindow isKeyWindow]): Deleted.
1761         (-[CommandBackForwardOffscreenWindow isVisible]): Deleted.
1762         * TestWebKitAPI/Tests/WebKitCocoa/TabOutOfWebView.mm: Added.
1763         (-[FocusableView canBecomeKeyView]):
1764         (TEST):
1765         * TestWebKitAPI/mac/OffscreenWindow.h: Added.
1766         * TestWebKitAPI/mac/OffscreenWindow.mm: Added.
1767         (-[OffscreenWindow initWithSize:]):
1768         (-[OffscreenWindow isKeyWindow]):
1769         (-[OffscreenWindow isVisible]):
1770         * TestWebKitAPI/mac/PlatformWebViewMac.mm:
1771         (TestWebKitAPI::PlatformWebView::initialize):
1772         (-[ActiveOffscreenWindow isKeyWindow]): Deleted.
1773         (-[ActiveOffscreenWindow isVisible]): Deleted.
1774         Factor ActiveOffscreenWindow out into OffscreenWindow and share it.
1775
1776 2019-01-15  Ryan Haddad  <ryanhaddad@apple.com>
1777
1778         Adjust the arguments passed to run-javascriptcore-tests for the 32-bit JSC bot
1779         https://bugs.webkit.org/show_bug.cgi?id=193459
1780
1781         Reviewed by Mark Lam.
1782
1783         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1784         (Run32bitJSCTests): This queue should not run JIT, testair, testb3, or testmasm.
1785
1786 2019-01-15  Chris Dumez  <cdumez@apple.com>
1787
1788         Regression(PSON) View becomes blank after click a cross-site download link
1789         https://bugs.webkit.org/show_bug.cgi?id=193361
1790         <rdar://problem/47099573>
1791
1792         Reviewed by Geoff Garen.
1793
1794         Add API test coverage.
1795
1796         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1797         (-[PSONNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1798
1799 2019-01-15  Zalan Bujtas  <zalan@apple.com>
1800
1801         [LFC][Out-of-flow] Ignore bottom when the vertical values are over-constrained
1802         https://bugs.webkit.org/show_bug.cgi?id=193448
1803
1804         Reviewed by Antti Koivisto.
1805
1806         * LayoutReloaded/misc/LFC-passing-tests.txt:
1807
1808 2019-01-15  Jonathan Bedard  <jbedard@apple.com>
1809
1810         webkitpy: Implement device type specific expected results (Part 1)
1811         https://bugs.webkit.org/show_bug.cgi?id=192162
1812
1813         Reviewed by Lucas Forschler.
1814
1815         Device type specific expected results covers two related ideas. The first (covered by this change)
1816         is where to search for -expected.* files. The second is which tests to run based on the
1817         TestExpectations.txt file.
1818
1819         After this change, the baseline search path will be determined by the type of device running a
1820         test. Device type will be passed into any function which picks a file based on the baseline search
1821         path.
1822
1823         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
1824         (Worker._update_test_input): Pass device_type to self._port.reference_files(...).
1825         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1826         (Manager.run): Print baseline search path for each round of devices.
1827         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
1828         (SingleTestRunner.__init__): Pass device_type into expected_*(...).
1829         (SingleTestRunner._expected_driver_output): Ditto.
1830         (SingleTestRunner._driver_input): Ditto.
1831         * Scripts/webkitpy/layout_tests/views/printing.py:
1832         (Printer.print_config): Move printing of baseline search path to a separate function.
1833         (Printer.print_baseline_search_path): Moved from Printer.print_config.
1834         * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
1835         (Testprinter.test_print_config):
1836         (Testprinter.test_print_baseline_search_path):
1837         * Scripts/webkitpy/port/base.py:
1838         (Port.baseline_search_path): Pass device_type through.
1839         (Port._expected_baselines_for_suffixes): Ditto.
1840         (Port.expected_baselines): Ditto.
1841         (Port.expected_filename): Ditto.
1842         (Port.expected_checksum): Ditto.
1843         (Port.expected_image): Ditto.
1844         (Port.expected_audio): Ditto.
1845         (Port.expected_text): Ditto.
1846         (Port.reference_files): Ditto.
1847         (Port.tests): Ditto.
1848         (Port._expanded_paths): Ditto.
1849         (Port.skipped_layout_tests): Ditto.
1850         (Port.expectations_dict): Ditto.
1851         (Port._port_specific_expectations_files): Ditto.
1852         (Port.expectations_files): Ditto.
1853         (Port.test_search_path): Ditto.
1854         (Port._tests_for_other_platforms): Ditto.
1855         * Scripts/webkitpy/port/base_unittest.py:
1856         (PortTest.test_additional_platform_directory): Accept, but do not use, device_type.
1857         (PortTest.test_nonexistant_expectations): Ditto.
1858         (test_ref_tests_platform_directory): Ditto.
1859         * Scripts/webkitpy/port/darwin.py:
1860         (DarwinPort._port_specific_expectations_files): Accept device_type.
1861         * Scripts/webkitpy/port/driver.py:
1862         (DriverProxy):
1863         (DriverProxy.host): Expose _target_host for device_type information.
1864         * Scripts/webkitpy/port/gtk.py:
1865         (GtkPort._port_specific_expectations_files): Accept, but do not use, device_type.
1866         * Scripts/webkitpy/port/ios.py:
1867         (IOSPort. default_baseline_search_path): Remove memoized, since it does not accept **kwargs.
1868         * Scripts/webkitpy/port/mac.py:
1869         (MacPort. default_baseline_search_path): Ditto.
1870         * Scripts/webkitpy/port/port_testcase.py:
1871         (TestWebKitPort._tests_for_other_platforms): Accept, but do not use, device_type.
1872         * Scripts/webkitpy/port/test.py:
1873         * Scripts/webkitpy/port/watch.py:
1874         (WatchPort. default_baseline_search_path): Remove memoized, since it does not accept **kwargs.
1875         * Scripts/webkitpy/port/win.py:
1876         (WinPort.test_search_path): Accept, but do not use, device_type.
1877         * Scripts/webkitpy/port/wpe.py:
1878         (WPEPort._port_specific_expectations_files): Ditto.
1879         * Scripts/webkitpy/tool/servers/rebaselineserver.py:
1880         (get_test_baselines.AllPlatformsPort.baseline_search_path): Ditto.
1881
1882 2019-01-15  Zalan Bujtas  <zalan@apple.com>
1883
1884         [LFC] Use the containing block's padding box to position out-of-flow elements.
1885         https://bugs.webkit.org/show_bug.cgi?id=193431
1886
1887         Reviewed by Antti Koivisto.
1888
1889         * LayoutReloaded/misc/LFC-passing-tests.txt:
1890
1891 2019-01-14  Tim Horton  <timothy_horton@apple.com>
1892
1893         Move a test implementation file that got misplaced in the Xcode project
1894
1895         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1896
1897 2019-01-14  Commit Queue  <commit-queue@webkit.org>
1898
1899         Unreviewed, rolling out r239901, r239909, r239910, r239912,
1900         r239913, and r239914.
1901         https://bugs.webkit.org/show_bug.cgi?id=193407
1902
1903         These revisions caused an internal failure (Requested by
1904         Truitt on #webkit).
1905
1906         Reverted changesets:
1907
1908         "[Cocoa] Avoid importing directly from subumbrella frameworks"
1909         https://bugs.webkit.org/show_bug.cgi?id=186016
1910         https://trac.webkit.org/changeset/239901
1911
1912         "Tried to fix USE(APPLE_INTERNAL_SDK) builds after r239901."
1913         https://trac.webkit.org/changeset/239909
1914
1915         "Tried to fix the build."
1916         https://trac.webkit.org/changeset/239910
1917
1918         "Fixed iOS builds after r239910."
1919         https://trac.webkit.org/changeset/239912
1920
1921         "More build fixing."
1922         https://trac.webkit.org/changeset/239913
1923
1924         "Tried to fix USE(APPLE_INTERNAL_SDK) 32-bit builds."
1925         https://trac.webkit.org/changeset/239914
1926
1927 2019-01-14  Mark Lam  <mark.lam@apple.com>
1928
1929         Re-enable ability to build --cloop builds.
1930         https://bugs.webkit.org/show_bug.cgi?id=192955
1931         <rdar://problem/46882363>
1932
1933         Reviewed by Saam barati and Keith Miller.
1934
1935         The --cloop build option was being ignored this whole time since r236381.
1936         This patch makes it possible to build CLoop builds again.
1937
1938         * Scripts/build-jsc:
1939         * Scripts/webkitperl/FeatureList.pm:
1940         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1941
1942 2019-01-14  Jonathan Bedard  <jbedard@apple.com>
1943
1944         webkitpy: Expose device_type from host-like objects
1945         https://bugs.webkit.org/show_bug.cgi?id=193406
1946         <rdar://problem/47262305>
1947
1948         Reviewed by Lucas Forschler.
1949
1950         Devices should expose device_type. As a result, all host objects should
1951         provide a device_type property, even if they do not yet define a device_type.
1952
1953         * Scripts/webkitpy/common/system/systemhost.py:
1954         (SystemHost):
1955         (SystemHost.device_type):
1956         * Scripts/webkitpy/common/system/systemhost_mock.py:
1957         (MockSystemHost):
1958         (MockSystemHost.device_type):
1959         * Scripts/webkitpy/port/device.py:
1960         (Device):
1961         (Device.device_type):
1962         * Scripts/webkitpy/xcode/simulated_device.py:
1963         (SimulatedDeviceManager._find_exisiting_device_for_request):
1964         (SimulatedDeviceManager._disambiguate_device_type):
1965         (SimulatedDeviceManager._does_fulfill_request):
1966         (SimulatedDeviceManager.device_count_for_type):
1967         (SimulatedDeviceManager.initialize_devices):
1968         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
1969         (test_available_devices):
1970         (test_swapping_devices):
1971
1972 2019-01-14  Jonathan Bedard  <jbedard@apple.com>
1973
1974         webkitpy: Support alternate simctl device list output (Follow-up fix)
1975         https://bugs.webkit.org/show_bug.cgi?id=193362
1976         <rdar://problem/47122965>
1977
1978         Rubber-stamped by Lucas Forschler.
1979
1980         * Scripts/webkitpy/xcode/simulated_device.py:
1981         (SimulatedDeviceManager.populate_available_devices):
1982
1983 2019-01-14  Wenson Hsieh  <wenson_hsieh@apple.com>
1984
1985         [iOS] Expose SPI to access the current sentence boundary and selection state
1986         https://bugs.webkit.org/show_bug.cgi?id=193398
1987         <rdar://problem/45893108>
1988
1989         Reviewed by Dean Jackson.
1990
1991         Add an API test to verify that an SPI client can observe changes in the `@"_selectionAttributes"` key path on
1992         WKWebView, and that inserting text, deleting, and changing the selection cause selection attributes to change as
1993         expected.
1994
1995         * TestWebKitAPI/EditingTestHarness.h:
1996         * TestWebKitAPI/EditingTestHarness.mm:
1997         (-[EditingTestHarness moveBackward]):
1998         (-[EditingTestHarness moveForward]):
1999         (-[EditingTestHarness moveForwardAndExpectEditorStateWith:]):
2000
2001         Add a couple of new helper methods on EditingTestHarness.
2002
2003         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
2004         (-[SelectionChangeObserver initWithWebView:]):
2005         (-[SelectionChangeObserver webView]):
2006         (-[SelectionChangeObserver observeValueForKeyPath:ofObject:change:context:]):
2007         (-[SelectionChangeObserver currentSelectionAttributes]):
2008
2009 2019-01-14  Zalan Bujtas  <zalan@apple.com>
2010
2011         [LFC][BFC] Add basic box-sizing support.
2012         https://bugs.webkit.org/show_bug.cgi?id=193392
2013
2014         Reviewed by Antti Koivisto.
2015
2016         * LayoutReloaded/misc/LFC-passing-tests.txt:
2017
2018 2019-01-14  Charlie Turner  <cturner@igalia.com>
2019
2020         [WPE] API test gardening
2021         https://bugs.webkit.org/show_bug.cgi?id=193319
2022
2023         Reviewed by Michael Catanzaro.
2024
2025         * TestWebKitAPI/glib/TestExpectations.json: Remove some now
2026         passing tests.
2027
2028 2019-01-14  Charlie Turner  <cturner@igalia.com>
2029
2030         [GStreamer] Add sharedBuffer utility to GstMappedBuffer, and a testsuite
2031         https://bugs.webkit.org/show_bug.cgi?id=192977
2032
2033         Reviewed by Carlos Garcia Campos.
2034
2035         * TestWebKitAPI/PlatformGTK.cmake: Build the new GStreamer test harness
2036         * TestWebKitAPI/PlatformWPE.cmake: Ditto.
2037         * TestWebKitAPI/Tests/WebCore/gstreamer/GStreamerTest.cpp: Added.
2038         (TestWebKitAPI::GStreamerTest::SetUp):
2039         (TestWebKitAPI::GStreamerTest::TearDown):
2040         * TestWebKitAPI/Tests/WebCore/gstreamer/GStreamerTest.h: Added.
2041         * TestWebKitAPI/Tests/WebCore/gstreamer/GstMappedBuffer.cpp: Added.
2042         (TestWebKitAPI::TEST_F):
2043
2044 2019-01-14  Charlie Turner  <cturner@igalia.com>
2045
2046         [WPE] Workaround for incorrect template specialization being selected when UChar=char16_t
2047         https://bugs.webkit.org/show_bug.cgi?id=193332
2048
2049         Reviewed by Michael Catanzaro.
2050
2051         * TestWebKitAPI/Tests/WTF/StringConcatenate.cpp: When UChar is
2052         defined as a char16_t, which changed in ICU 59, the
2053         StringTypeAdapter<UnsignedInt, ...> overload catches casts to
2054         unsigned short. This test is relying on the behaviour that
2055         UChar=unsigned short, which doesn't hold across platforms and ICU
2056         library versions. The full fix would be a special syntax for
2057         literal characters so that these ambiguities do not arise. That
2058         work is proposed in https://bugs.webkit.org/show_bug.cgi?id=193101.
2059         (TestWebKitAPI::TEST):
2060
2061 2019-01-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2062
2063         Unreviewed. [GTK][WPE] Run distcheck with gtkdoc and MiniBrowser enabled
2064
2065         * Scripts/make-dist:
2066         (Distcheck.configure):
2067
2068 2019-01-13  Aakash Jain  <aakash_jain@apple.com>
2069
2070         [ews-build] Update macOS queue configurations
2071         https://bugs.webkit.org/show_bug.cgi?id=193365
2072         <rdar://problem/47221073>
2073
2074         Unreviewed, renamed mac-high-sierra to mac-highsierra to match with build.webkit.org configuration.
2075
2076         * BuildSlaveSupport/ews-build/config.json:
2077
2078 2019-01-13  Zalan Bujtas  <zalan@apple.com>
2079
2080         [LFC] Adjust assert for statically positioned fixed elements
2081         https://bugs.webkit.org/show_bug.cgi?id=193385
2082
2083         Reviewed by Antti Koivisto.
2084
2085         * LayoutReloaded/misc/LFC-passing-tests.txt:
2086
2087 2019-01-13  Philippe Normand  <pnormand@igalia.com>
2088
2089         [WPE][MiniBrowser] Ephemeral WebContext leaks in automation mode
2090         https://bugs.webkit.org/show_bug.cgi?id=193387
2091
2092         Reviewed by Carlos Garcia Campos.
2093
2094         * MiniBrowser/wpe/main.cpp:
2095         (main):
2096
2097 2019-01-12  Timothy Hatcher  <timothy@apple.com>
2098
2099         Have prefers-color-scheme: light always match on macOS versions before Mojave.
2100         https://bugs.webkit.org/show_bug.cgi?id=191655
2101         rdar://problem/46074680
2102
2103         Reviewed by Megan Gardner.
2104
2105         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: ENABLE_DARK_MODE_CSS_macosx for all OS versions.
2106         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm:
2107
2108 2019-01-12  Dan Bernstein  <mitz@apple.com>
2109
2110         [Cocoa] Avoid importing directly from subumbrella frameworks
2111         https://bugs.webkit.org/show_bug.cgi?id=186016
2112         <rdar://problem/40591038>
2113
2114         Reviewed by Sam Weinig.
2115
2116         * DumpRenderTree/cg/PixelDumpSupportCG.cpp: Include CoreServices.h instead of a
2117           LaunchServices header.
2118         * DumpRenderTree/mac/Configurations/BaseTarget.xcconfig: Removed -iframework options from
2119           OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
2120         * DumpRenderTree/mac/LayoutTestHelper.m: Import ApplicationServices.h instead of ColorSync.h
2121           when using SDKs earlier than 10.13.
2122         * TestWebKitAPI/Configurations/Base.xcconfig: Removed -iframework options from OTHER_CFLAGS
2123           and OTHER_CPLUSPLUSFLAGS.
2124         * WebKitTestRunner/Configurations/BaseTarget.xcconfig: Removed -iframework options from
2125           OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
2126         * WebKitTestRunner/cg/TestInvocationCG.cpp: Include CoreServices.h instead of a
2127           LaunchServices header.
2128
2129 2019-01-11  John Wilander  <wilander@apple.com>
2130
2131         Compile out Web API Statistics Collection
2132         https://bugs.webkit.org/show_bug.cgi?id=193370
2133         <rdar://problem/45388584>
2134
2135         Reviewed by Brent Fulgham.
2136
2137         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2138             Defined ENABLE_WEB_API_STATISTICS, off by default.
2139
2140 2019-01-11  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
2141
2142         [WPE] Add gtk-doc
2143         https://bugs.webkit.org/show_bug.cgi?id=178900
2144
2145         Reviewed by Michael Catanzaro.
2146
2147         Add Tools/gtkdoc to manifest.txt.in files.
2148         This should have been done in r238853 and caused failure in building WebKitGTK+ unstable release 2.23.2.
2149
2150         * gtk/manifest.txt.in: Add Tools/gtkdoc directory.
2151         * wpe/manifest.txt.in: Add Tools/gtkdoc directory and uncomment lines to move documentation artifacts.
2152
2153 2019-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2154
2155         [iOS] Precision drop state thrashes when dragging near the top edge of an editable element
2156         https://bugs.webkit.org/show_bug.cgi?id=193364
2157         <rdar://problem/47214117>
2158
2159         Reviewed by Tim Horton.
2160
2161         Add a test to verify that dragging near the top of a textarea element does not flag the drop proposal as
2162         precise, whereas dragging near the middle of the textarea does.
2163
2164         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2165         (TestWebKitAPI::TEST):
2166
2167 2019-01-11  Jonathan Bedard  <jbedard@apple.com>
2168
2169         webkitpy: Support alternate simctl device list output
2170         https://bugs.webkit.org/show_bug.cgi?id=193362
2171         <rdar://problem/47122965>
2172
2173         Reviewed by Lucas Forschler.
2174
2175         * Scripts/webkitpy/xcode/simulated_device.py:
2176         (SimulatedDeviceManager.populate_available_devices):
2177
2178 2019-01-11  Aakash Jain  <aakash_jain@apple.com>
2179
2180         [ews-build] Update macOS queue configurations
2181         https://bugs.webkit.org/show_bug.cgi?id=193365
2182
2183         Reviewed by Lucas Forschler.
2184
2185         * BuildSlaveSupport/ews-build/config.json:
2186
2187 2019-01-11  Jonathan Bedard  <jbedard@apple.com>
2188
2189         webkitpy: Incorporate device type into baseline search path
2190         https://bugs.webkit.org/show_bug.cgi?id=193356
2191         <rdar://problem/47215515>
2192
2193         Reviewed by Lucas Forschler.
2194
2195         We need a way to include device type in the baseline search path for iOS to support device specific test expectations.
2196
2197         * Scripts/webkitpy/port/base.py:
2198         (Port.default_baseline_search_path): Allow device type to be passed in.
2199         * Scripts/webkitpy/port/gtk.py:
2200         (GtkPort.default_baseline_search_path): Ignore device type.
2201         * Scripts/webkitpy/port/ios.py:
2202         (IOSPort.default_baseline_search_path): Optionally allow device type to be incorporated into the baseline search path.
2203         (IOSPort.test_expectations_file_position): Update index for the additional device-type specific baseline search path.
2204         * Scripts/webkitpy/port/ios_device_unittest.py:
2205         (IOSDeviceTest):
2206         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2207         (IOSSimulatorTest):
2208         * Scripts/webkitpy/port/mac.py:
2209         (MacPort.default_baseline_search_path): Ignore device type.
2210         * Scripts/webkitpy/port/watch.py:
2211         (WatchPort.default_baseline_search_path): Ditto.
2212         * Scripts/webkitpy/port/win.py:
2213         (WinPort.default_baseline_search_path): Ditto.
2214         (WinCairoPort.default_baseline_search_path): Ditto.
2215         * Scripts/webkitpy/port/wpe.py:
2216         (WPEPort.default_baseline_search_path): Ditto.
2217
2218 2019-01-11  Jonathan Bedard  <jbedard@apple.com>
2219
2220         webkitpy: Print abbreviated baseline search path that includes only folders that exist
2221         https://bugs.webkit.org/show_bug.cgi?id=193352
2222         <rdar://problem/47210736>
2223
2224         Reviewed by Lucas Forschler.
2225
2226         * Scripts/webkitpy/layout_tests/views/printing.py:
2227         (Printer.print_config): Print list on only baseline search paths which exist. 
2228         * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
2229         (Testprinter.test_print_config):
2230
2231 2019-01-11  Joseph Pecoraro  <pecoraro@apple.com>
2232
2233         Cleanup possible WK*Copy/Create leaks in WebKitTestRunner
2234         https://bugs.webkit.org/show_bug.cgi?id=193340
2235
2236         Reviewed by David Kilzer.
2237
2238         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2239         (WTR::InjectedBundle::didReceiveMessageToPage):
2240         Pull the strings out into a WKRetainPtr.
2241
2242         * WebKitTestRunner/WebNotificationProvider.cpp:
2243         (WTR::WebNotificationProvider::closeWebNotification):
2244         Adopt the created value into the WKRetainPtr.
2245
2246         * WebKitTestRunner/mac/TestControllerMac.mm:
2247         (WTR::generateWhitelist):
2248         Immediately adopt a created value to avoid potential mistakes.
2249
2250 2019-01-11  Dominik Infuehr  <dinfuehr@igalia.com>
2251
2252         Enable DFG on ARM/Linux again
2253         https://bugs.webkit.org/show_bug.cgi?id=192496
2254
2255         Reviewed by Yusuke Suzuki.
2256
2257         After changing the bytecode format DFG was disabled on all 32-bit
2258         architectures. Enable DFG now again on ARM/Linux. Run again JIT-tests
2259         on ARM by default.
2260
2261         * Scripts/run-jsc-stress-tests:
2262
2263 2019-01-11  Timothy Hatcher  <timothy@apple.com>
2264
2265         Unreviewed, fix #ifdef in API test added in r239851.
2266         https://bugs.webkit.org/show_bug.cgi?id=193327
2267         rdar://problem/47093222
2268
2269         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle_Bundle.mm:
2270
2271 2019-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2272
2273         Introduce IDL files for runtime-enabled UndoManager and UndoItem JavaScript API
2274         https://bugs.webkit.org/show_bug.cgi?id=193109
2275         <rdar://problem/44807048>
2276
2277         Reviewed by Ryosuke Niwa.
2278
2279         Introduce and respect a test option to enable the UndoManager API.
2280
2281         * WebKitTestRunner/TestController.cpp:
2282         (WTR::updateTestOptionsFromTestHeader):
2283         * WebKitTestRunner/TestOptions.h:
2284         (WTR::TestOptions::hasSameInitializationOptions const):
2285         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2286         (WTR::TestController::platformCreateWebView):
2287
2288 2019-01-11  Zalan Bujtas  <zalan@apple.com>
2289
2290         [LFC][BFC][MarginCollapsing] Adjust vertical position when box margin collapses through.
2291         https://bugs.webkit.org/show_bug.cgi?id=193346
2292
2293         Reviewed by Antti Koivisto.
2294
2295         * LayoutReloaded/misc/LFC-passing-tests.txt:
2296
2297 2019-01-10  Ryan Haddad  <ryanhaddad@apple.com>
2298
2299         Unreviewed, fix typo that breaks dashboard link.
2300
2301         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2302         (WebKitBuildbot):
2303
2304 2019-01-10  Ryan Haddad  <ryanhaddad@apple.com>
2305
2306         Update macOS queue configurations
2307         https://bugs.webkit.org/show_bug.cgi?id=193329
2308
2309         Reviewed by Alexey Proskuryakov.
2310
2311         * BuildSlaveSupport/build.webkit.org-config/config.json:
2312         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2313         (BubbleQueueServer):
2314         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2315         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2316         (WebKitBuildbot):
2317         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2318         (table.queue-grid tr.platform.macos-sierra img.logo): Deleted.
2319         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2320
2321 2019-01-10  Joseph Pecoraro  <pecoraro@apple.com>
2322
2323         MiniBrowser should be able to navigate to about:blank
2324         https://bugs.webkit.org/show_bug.cgi?id=193345
2325
2326         Reviewed by Simon Fraser.
2327
2328         * MiniBrowser/mac/BrowserWindowController.m:
2329         (-[BrowserWindowController addProtocolIfNecessary:]):
2330         Don't prepend "http://" to "about:" prefixed URLs like "about:blank".
2331
2332         * MiniBrowser/mac/WK1BrowserWindowController.m:
2333         (-[WK1BrowserWindowController fetch:]):
2334         * MiniBrowser/mac/WK2BrowserWindowController.m:
2335         (-[WK2BrowserWindowController fetch:]):
2336         Clean up the code that uses this to match style.
2337
2338 2019-01-10  Joseph Pecoraro  <pecoraro@apple.com>
2339
2340         Remove MiniBrowser custom "Process Swap" menu item which does not work
2341         https://bugs.webkit.org/show_bug.cgi?id=193344
2342
2343         Reviewed by Simon Fraser.
2344
2345         There is a menu item under the Experimental menu that does work.
2346
2347         * MiniBrowser/mac/AppDelegate.m:
2348         (defaultConfiguration):
2349         * MiniBrowser/mac/SettingsController.h:
2350         * MiniBrowser/mac/SettingsController.m:
2351         (-[SettingsController _populateMenu]):
2352         (-[SettingsController validateMenuItem:]):
2353         (-[SettingsController processSwapOnNavigationEnabled]): Deleted.
2354         (-[SettingsController toggleProcessSwapOnNavigation:]): Deleted.
2355
2356 2019-01-10  Timothy Hatcher  <timothy@apple.com>
2357
2358         Add WKBundlePage SPI to temporarily force light or dark appearance on a page.
2359         https://bugs.webkit.org/show_bug.cgi?id=193327
2360         rdar://problem/47093222
2361
2362         Reviewed by Tim Horton.
2363
2364         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2365         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm: Added.
2366         (TestWebKitAPI::didFinishNavigation):
2367         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
2368         (TestWebKitAPI::TEST):
2369         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle_Bundle.mm: Added.
2370         (TestWebKitAPI::ForceLightAppearanceInBundleTest::ForceLightAppearanceInBundleTest):
2371         (TestWebKitAPI::ForceLightAppearanceInBundleTest::didCreatePage):
2372         (TestWebKitAPI::ForceLightAppearanceInBundleTest::didReceiveMessage):
2373         * TestWebKitAPI/Tests/WebKit/mac/dark-mode.html: Added.
2374
2375 2019-01-10  Joseph Pecoraro  <pecoraro@apple.com>
2376
2377         Leak of WKWebProcessPlugInHitTestResult (160 bytes) in com.apple.WebKit.WebContent running layout tests
2378         https://bugs.webkit.org/show_bug.cgi?id=193338
2379         <rdar://problem/46664774>
2380
2381         Reviewed by David Kilzer.
2382
2383         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2384         (WTR::InjectedBundlePage::decidePolicyForNavigationAction):
2385
2386 2019-01-10  Commit Queue  <commit-queue@webkit.org>
2387
2388         Unreviewed, rolling out r239825.
2389         https://bugs.webkit.org/show_bug.cgi?id=193330
2390
2391         Broke tests on armv7/linux bots (Requested by guijemont on
2392         #webkit).
2393
2394         Reverted changeset:
2395
2396         "Enable DFG on ARM/Linux again"
2397         https://bugs.webkit.org/show_bug.cgi?id=192496
2398         https://trac.webkit.org/changeset/239825
2399
2400 2019-01-10  Zhifei Fang  <zhifei_fang@apple.com>
2401
2402         Disable the run-jsc-stress-test remote host key check.
2403         https://bugs.webkit.org/show_bug.cgi?id=192988
2404
2405         Reviewed by Alexey Proskuryakov.
2406
2407         * Scripts/run-jsc-stress-tests:
2408
2409 2019-01-10  John Wilander  <wilander@apple.com>
2410
2411         Override the session configuration for cookieAcceptPolicy
2412         https://bugs.webkit.org/show_bug.cgi?id=190925
2413         <rdar://problem/45497382>
2414
2415         Reviewed by Alexey Proskuryakov and Alex Christensen.
2416
2417         Test infrastructure for setting a first-party-only cookie policy.
2418
2419         * DumpRenderTree/TestRunner.cpp:
2420         (setOnlyAcceptFirstPartyCookiesCallback):
2421         (TestRunner::staticFunctions):
2422         * DumpRenderTree/TestRunner.h:
2423         * DumpRenderTree/mac/TestRunnerMac.mm:
2424         (TestRunner::setOnlyAcceptFirstPartyCookies):
2425         * DumpRenderTree/win/TestRunnerWin.cpp:
2426         (TestRunner::setOnlyAcceptFirstPartyCookies):
2427         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2428         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2429         (WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
2430         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2431         * WebKitTestRunner/TestInvocation.cpp:
2432         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2433
2434 2019-01-09  Matt Rajca  <mrajca@apple.com>
2435
2436         Put per-document autoplay behavior behind runtime website policies quirk instead of a compile time flag
2437         https://bugs.webkit.org/show_bug.cgi?id=193301
2438
2439         Reviewed by Jer Noble.
2440         
2441         Added API tests.
2442
2443         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2444         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2445         (TEST):
2446         * TestWebKitAPI/Tests/WebKitCocoa/autoplaying-multiple-media-elements.html: Added.
2447
2448 2019-01-10  Zalan Bujtas  <zalan@apple.com>
2449
2450         [LFC][BFC][MarginCollapsing] Take collapsed through siblings into account when computing vertical position
2451         https://bugs.webkit.org/show_bug.cgi?id=193310
2452
2453         Reviewed by Antti Koivisto.
2454
2455         * LayoutReloaded/misc/LFC-passing-tests.txt:
2456
2457 2019-01-10  Dominik Infuehr  <dinfuehr@igalia.com>
2458
2459         Enable DFG on ARM/Linux again
2460         https://bugs.webkit.org/show_bug.cgi?id=192496
2461
2462         Reviewed by Yusuke Suzuki.
2463
2464         After changing the bytecode format DFG was disabled on all 32-bit
2465         architectures. Enable DFG now again on ARM/Linux. Run again JIT-tests
2466         on ARM by default.
2467
2468         * Scripts/run-jsc-stress-tests:
2469
2470 2019-01-09  Fujii Hironori  <Hironori.Fujii@sony.com>
2471
2472         [Win][MiniBrowser] wchar_t strings shouldn't be treated as BSTR
2473         https://bugs.webkit.org/show_bug.cgi?id=193271
2474
2475         Reviewed by Brent Fulgham.
2476
2477         BSTR is a special data structure created by SysAllocString, not a
2478         wchar_t null-terminated string.
2479
2480         * DumpRenderTree/win/TestRunnerWin.cpp:
2481         (TestRunner::setDatabaseQuota): Use L"" instead of "" for _bstr_t.
2482         * MiniBrowser/win/MiniBrowserWebHost.cpp:
2483         (MiniBrowserWebHost::didFinishLoadForFrame): Use _bstr_t to create
2484         BSTR from wide string literals.
2485
2486 2019-01-09  Alexey Proskuryakov  <ap@apple.com>
2487
2488         Tweak wording for build/version_check style checker error
2489         https://bugs.webkit.org/show_bug.cgi?id=193256
2490
2491         Reviewed by Tim Horton.
2492
2493         * Scripts/webkitpy/style/checkers/cpp.py:
2494         (check_os_version_checks):
2495         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2496         (WebKitStyleTest.test_os_version_checks):
2497
2498 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
2499
2500         [ews-build] Add link to bug along with bug title
2501         https://bugs.webkit.org/show_bug.cgi?id=193293
2502
2503         Reviewed by Lucas Forschler.
2504
2505         * BuildSlaveSupport/ews-build/steps.py:
2506         (ValidatePatch._is_bug_closed): Fetch bug title from Bugzilla and add it to the build.
2507         (ConfigureBuild.add_bug_id_url): Deleted.
2508         (ConfigureBuild.getBugURL): Deleted.
2509
2510 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
2511
2512         [ews-build] Use https for ews-build server
2513         https://bugs.webkit.org/show_bug.cgi?id=193193
2514
2515         Reviewed by Lucas Forschler.
2516
2517         * BuildSlaveSupport/ews-build/steps.py:
2518
2519 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
2520
2521         [ews-build] Parse and display number of style failures
2522         https://bugs.webkit.org/show_bug.cgi?id=193280
2523
2524         Reviewed by Lucas Forschler.
2525
2526         * BuildSlaveSupport/ews-build/steps.py:
2527         (CheckStyle): Use TestWithFailureCount as base class.
2528         (CheckStyle.countFailures): Count the number of style failures.
2529
2530 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
2531
2532         [ews-build] use patch_id instead of ewspatchid
2533         https://bugs.webkit.org/show_bug.cgi?id=193235
2534
2535         Reviewed by Lucas Forschler.
2536
2537         * BuildSlaveSupport/ews-build/factories.py: Replaced ewspatchid with patch_id.
2538         * BuildSlaveSupport/ews-build/steps.py: Ditto.
2539         * BuildSlaveSupport/ews-build/steps_unittest.py: Ditto.
2540
2541 2019-01-09  Zalan Bujtas  <zalan@apple.com>
2542
2543         [LFC][BFC][MarginCollapsing] Add support for peculiar cases.
2544         https://bugs.webkit.org/show_bug.cgi?id=192625
2545
2546         Reviewed by Antti Koivisto.
2547
2548         * LayoutReloaded/misc/LFC-passing-tests.txt:
2549
2550 2019-01-09  Michael Catanzaro  <mcatanzaro@igalia.com>
2551
2552         [WPE][GTK] Purge use of g_assert() under TestWebKitAPI
2553         https://bugs.webkit.org/show_bug.cgi?id=192841
2554
2555         Reviewed by Carlos Garcia Campos.
2556
2557         There are separate g_assert_*() macros for use in tests, which we use inconsistently
2558         currently. Use them always. We'll get nicer error messages now when tests fail, and the
2559         assertions will now run during tests even if G_DISABLE_ASSERT is used when building.
2560
2561         Note that the documentation of g_assert() says that it is not to be used when writing tests.
2562
2563         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2564         * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp:
2565         (WebKitWebEditorTest::testSelectionChanged):
2566         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
2567         (WebKitFrameTest::testMainFrame):
2568         (WebKitFrameTest::testURI):
2569         (WebKitFrameTest::testJavaScriptContext):
2570         (WebKitFrameTest::testJavaScriptValues):
2571         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
2572         (testWebViewAuthenticationRequest):
2573         (testWebViewAuthenticationLoadCancelled):
2574         (testWebViewAuthenticationFailure):
2575         (testWebViewAuthenticationStorage):
2576         (ProxyAuthenticationTest::ProxyAuthenticationTest):
2577         (testWebViewAuthenticationProxy):
2578         (testWebViewAuthenticationProxyHTTPS):
2579         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
2580         (testAutomationSessionRequestSession):
2581         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
2582         (testBackForwardListNavigation):
2583         (testWebKitWebViewSessionState):
2584         (testWebKitWebViewSessionStateWithFormData):
2585         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
2586         (ConsoleMessageTest::consoleMessageReceivedCallback):
2587         (testWebKitConsoleMessageConsoleAPI):
2588         (testWebKitConsoleMessageJavaScriptException):
2589         (testWebKitConsoleMessageNetworkError):
2590         (testWebKitConsoleMessageSecurityError):
2591         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
2592         (testCookieManagerAcceptPolicy):
2593         (testCookieManagerCookiesChanged):
2594         (testCookieManagerPersistentStorage):
2595         (testCookieManagerPersistentStorageDeleteAll):
2596         (testCookieManagerEphemeral):
2597         * TestWebKitAPI/Tests/WebKitGLib/TestDOMElement.cpp:
2598         (testWebKitDOMElementAutoFill):
2599         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
2600         (downloadLocalFileSuccessfully):
2601         (createFileAtDestination):
2602         (testDownloadOverwriteDestinationDisallowed):
2603         (testDownloadLocalFileError):
2604         (testDownloadRemoteFile):
2605         (testDownloadRemoteFileError):
2606         (testWebViewDownloadURI):
2607         (testPolicyResponseDownload):
2608         (testPolicyResponseDownloadCancel):
2609         (testDownloadMIMEType):
2610         (contextMenuCallback):
2611         (testContextMenuDownloadActions):
2612         (testBlobDownload):
2613         * TestWebKitAPI/Tests/WebKitGLib/TestEditor.cpp:
2614         (testWebKitWebEditorSelectionChanged):
2615         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
2616         (testWebKitFrameMainFrame):
2617         (testWebKitFrameURI):
2618         (testWebKitFrameJavaScriptContext):
2619         (testWebKitFrameJavaScriptValues):
2620         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
2621         (LoadStopTrackingTest::loadFailed):
2622         (testWebViewTitle):
2623         (testURIRequestHTTPHeaders):
2624         (testURIRequestHTTPMethod):
2625         (testURIResponseHTTPHeaders):
2626         (testRedirectToDataURI):
2627         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
2628         (testProcessPerWebView):
2629         (testWebProcessLimit):
2630         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
2631         (testWebViewResources):
2632         (testWebResourceLoading):
2633         (testWebResourceSuggestedFilename):
2634         (testWebResourceGetData):
2635         (testWebResourceGetDataError):
2636         (testWebViewResourcesHistoryCache):
2637         (testWebResourceSendRequest):
2638         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
2639         (testSSL):
2640         (testInsecureContent):
2641         (testTLSErrorsPolicy):
2642         (testTLSErrorsRedirect):
2643         (testTLSErrorsHTTPAuth):
2644         (testLoadFailedWithTLSErrors):
2645         (testSubresourceLoadFailedWithTLSErrors):
2646         (httpsServerCallback):
2647         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
2648         (testWebViewCreateNavigationData):
2649         (testWebViewJavaScriptDialogs):
2650         (testWebViewWindowProperties):
2651         (testWebViewMouseTarget):
2652         (testWebViewFileChooserRequest):
2653         (testWebViewColorChooserRequest):
2654         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
2655         (testWebExtensionGetTitle):
2656         (testDocumentLoadedSignal):
2657         (testWebKitWebViewProcessCrashed):
2658         (testWebExtensionWindowObjectCleared):
2659         (testWebExtensionIsolatedWorld):
2660         (permissionRequestCallback):
2661         (didAssociateFormControlsCallback):
2662         (testWebExtensionFormControlsAssociated):
2663         (FormSubmissionTest::FormSubmissionTest):
2664         (FormSubmissionTest::testFormSubmissionResult):
2665         (testWebExtensionFormSubmissionSteps):
2666         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
2667         (testNotInitialized):
2668         (testClearDatabase):
2669         (testPrivateBrowsing):
2670         (testGetFavicon):
2671         (testWebViewFavicon):
2672         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
2673         (testFindControllerTextFound):
2674         (testFindControllerTextNotFound):
2675         (testFindControllerMatchCount):
2676         (testFindControllerMaxMatchCount):
2677         (testFindControllerNext):
2678         (testFindControllerPrevious):
2679         (testFindControllerCountedMatches):
2680         (testFindControllerOptions):
2681         (testFindControllerHide):
2682         (testFindControllerInstance):
2683         (testFindControllerGetters):
2684         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
2685         (testNavigationPolicy):
2686         (testResponsePolicy):
2687         (testNewWindowPolicy):
2688         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
2689         (testSecurityOriginBasicConstructor):
2690         (testSecurityOriginURIConstructor):
2691         (testSecurityOriginDefaultPort):
2692         (testSecurityOriginFileURI):
2693         (testOpaqueSecurityOrigin):
2694         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
2695         (testWebKitSettings):
2696         (testWebKitSettingsNewWithSettings):
2697         (testWebKitSettingsUserAgent):
2698         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
2699         (testWebViewNewWithUserContentManager):
2700         (isStyleSheetInjectedForURLAtPath):
2701         (isScriptInjectedForURLAtPath):
2702         (testUserContentManagerInjectedStyleSheet):
2703         (testUserContentManagerInjectedScript):
2704         (UserScriptMessageTest::scriptMessageReceived):
2705         (UserScriptMessageTest::waitUntilMessageReceived):
2706         (UserScriptMessageTest::runJavaScriptFinished):
2707         (testUserContentManagerScriptMessageReceived):
2708         (testUserContentManagerScriptMessageInWorldReceived):
2709         (testUserContentManagerScriptMessageFromDOMBindings):
2710         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
2711         (testWebContextDefault):
2712         (testWebContextEphemeral):
2713         (testWebContextGetPlugins):
2714         (testWebContextURIScheme):
2715         (testWebContextSpellChecker):
2716         (testWebContextLanguages):
2717         (consoleMessageReceivedCallback):
2718         (testWebContextSecurityFileXHR):
2719         (ProxyTest::ProxyTest):
2720         (testWebContextProxySettings):
2721         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2722         (testWebViewWebContext):
2723         (testWebViewWebBackend):
2724         (testWebViewEphemeral):
2725         (testWebViewCustomCharset):
2726         (testWebViewSettings):
2727         (testWebViewRunJavaScript):
2728         (testWebViewCanShowMIMEType):
2729         (testWebViewSubmitForm):
2730         (testWebViewSave):
2731         (testWebViewPageVisibility):
2732         (testWebViewSnapshot):
2733         (testWebViewNotification):
2734         (testWebViewNotificationInitialPermissionAllowed):
2735         (testWebViewNotificationInitialPermissionDisallowed):
2736         (testWebViewIsPlayingAudio):
2737         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
2738         (WebsiteDataTest::WebsiteDataTest):
2739         (WebsiteDataTest::remove):
2740         (WebsiteDataTest::clear):
2741         (testWebsiteDataConfiguration):
2742         (testWebsiteDataEphemeral):
2743         (testWebsiteDataCache):
2744         (testWebsiteDataStorage):
2745         (testWebsiteDataDatabases):
2746         (testWebsiteDataAppcache):
2747         (testWebsiteDataCookies):
2748         (testWebsiteDataDeviceIdHashSalt):
2749         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
2750         (emitDocumentLoaded):
2751         (emitURIChanged):
2752         (sendRequestCallback):
2753         (contextMenuCallback):
2754         (consoleMessageSentCallback):
2755         (emitFormControlsAssociated):
2756         (formControlsAssociatedCallback):
2757         (emitFormSubmissionEvent):
2758         (willSubmitFormCallback):
2759         (windowObjectCleared):
2760         (methodCallCallback):
2761         (registerGResource):
2762         (webkit_web_extension_initialize_with_user_data):
2763         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
2764         (checkLeaks):
2765         (WebProcessTest::create):
2766         (runTest):
2767         * TestWebKitAPI/Tests/WebKitGtk/AutocleanupsTest.cpp:
2768         (AutocleanupsTest::testWebProcessAutocleanups):
2769         * TestWebKitAPI/Tests/WebKitGtk/DOMClientRectTest.cpp:
2770         (WebKitDOMClientRectTest::testDivBoundingClientRectPosition):
2771         (WebKitDOMClientRectTest::testDivClientRectsPositionAndLength):
2772         * TestWebKitAPI/Tests/WebKitGtk/DOMDOMWindowTest.cpp:
2773         (WebKitDOMDOMWindowTest::testSignals):
2774         (WebKitDOMDOMWindowTest::testDispatchEvent):
2775         (WebKitDOMDOMWindowTest::testGetComputedStyle):
2776         * TestWebKitAPI/Tests/WebKitGtk/DOMNodeFilterTest.cpp:
2777         (WebKitDOMNodeFilterTest::testTreeWalker):
2778         (WebKitDOMNodeFilterTest::testNodeIterator):
2779         * TestWebKitAPI/Tests/WebKitGtk/DOMNodeTest.cpp:
2780         (WebKitDOMNodeTest::testHierarchyNavigation):
2781         (WebKitDOMNodeTest::testInsertion):
2782         (WebKitDOMNodeTest::testTagNamesNodeList):
2783         (WebKitDOMNodeTest::testTagNamesHTMLCollection):
2784         (WebKitDOMNodeTest::testDOMCache):
2785         * TestWebKitAPI/Tests/WebKitGtk/DOMXPathNSResolverTest.cpp:
2786         (WebKitDOMXPathNSResolverTest::evaluateFooChildTextAndCheckResult):
2787         (WebKitDOMXPathNSResolverTest::testXPathNSResolverNative):
2788         (WebKitDOMXPathNSResolverTest::testXPathNSResolverCustom):
2789         * TestWebKitAPI/Tests/WebKitGtk/TestAutocleanups.cpp:
2790         (testUIProcessAutocleanups):
2791         (testWebProcessAutocleanups):
2792         * TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
2793         (testContextMenuPopulateMenu):
2794         (testContextMenuDismissed):
2795         * TestWebKitAPI/Tests/WebKitGtk/TestDOMClientRect.cpp:
2796         (testWebKitDOMClientRectDivBoundingClientRectPosition):
2797         (testWebKitDOMClientRectDivClientRectsPositionAndLength):
2798         * TestWebKitAPI/Tests/WebKitGtk/TestDOMDOMWindow.cpp:
2799         (testWebKitDOMDOMWindowSignals):
2800         (testWebKitDOMDOMWindowDispatchEvent):
2801         (testWebKitDOMDOMWindowGetComputedStyle):
2802         * TestWebKitAPI/Tests/WebKitGtk/TestDOMNode.cpp:
2803         (testWebKitDOMNodeHierarchyNavigation):
2804         (testWebKitDOMNodeInsertion):
2805         (testWebKitDOMNodeTagNamesNodeList):
2806         (testWebKitDOMNodeTagNamesHTMLCollection):
2807         (testWebKitDOMObjectCache):
2808         * TestWebKitAPI/Tests/WebKitGtk/TestDOMNodeFilter.cpp:
2809         (testWebKitDOMNodeFilterTreeWalker):
2810         (testWebKitDOMNodeFilterNodeIterator):
2811         * TestWebKitAPI/Tests/WebKitGtk/TestDOMXPathNSResolver.cpp:
2812         (testWebKitDOMXPathNSResolverNative):
2813         (testWebKitDOMXPathNSResolverCustom):
2814         * TestWebKitAPI/Tests/WebKitGtk/TestInspector.cpp:
2815         (testInspectorDefault):
2816         (testInspectorManualAttachDetach):
2817         (testInspectorCustomContainerDestroyed):
2818         * TestWebKitAPI/Tests/WebKitGtk/TestInspectorServer.cpp:
2819         (startTestServer):
2820         (testInspectorServerPageList):
2821         * TestWebKitAPI/Tests/WebKitGtk/TestOptionMenu.cpp:
2822         (OptionMenuTest::showOptionMenuCallback):
2823         (OptionMenuTest::menuCloseCallback):
2824         (OptionMenuTest::close):
2825         (OptionMenuTest::activateItem):
2826         (OptionMenuTest::selectItem):
2827         (testOptionMenuSimple):
2828         (testOptionMenuGroups):
2829         (testOptionMenuActivate):
2830         (testOptionMenuSelect):
2831         * TestWebKitAPI/Tests/WebKitGtk/TestPrinting.cpp:
2832         (testPrintOperationPrintSettings):
2833         (webViewPrintCallback):
2834         (testPrintOperationPrint):
2835         (testPrintCustomWidget):
2836         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
2837         (checkAtspiAccessible):
2838         (testAtspiBasicHierarchy):
2839         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitVersion.cpp:
2840         (testWebKitCheckVersion):
2841         * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
2842         (testWebViewEditorCutCopyPasteNonEditable):
2843         (testWebViewEditorCutCopyPasteEditable):
2844         (testWebViewEditorSelectAllNonEditable):
2845         (testWebViewEditorSelectAllEditable):
2846         (loadContentsAndTryToCutSelection):
2847         (testWebViewEditorNonEditable):
2848         (testWebViewEditorEditable):
2849         (testWebViewEditorEditorStateTypingAttributes):
2850         (testWebViewEditorInsertImage):
2851         (testWebViewEditorCreateLink):
2852         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
2853         (loadChangedCallback):
2854         (loadFailedCallback):
2855         (loadFailedWithTLSErrorsCallback):
2856         (LoadTrackingTest::LoadTrackingTest):
2857         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
2858         (registerGResource):
2859         (removeNonEmptyDirectory):
2860         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2861         (Test::adoptView):
2862         (Test::~Test):
2863         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
2864         (WebKitTestBus::getOrCreateConnection):
2865         (WebKitTestBus::createProxy):
2866         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
2867         (WebKitTestServer::getWebSocketURIForPath const):
2868         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
2869         (WebViewTest::initializeWebView):
2870         (WebViewTest::loadURI):
2871         (WebViewTest::loadHtml):
2872         (WebViewTest::loadPlainText):
2873         (WebViewTest::loadBytes):
2874         (WebViewTest::loadRequest):
2875         (WebViewTest::loadAlternateHTML):
2876         (WebViewTest::goBack):
2877         (WebViewTest::goForward):
2878         (WebViewTest::goToBackForwardListItem):
2879         (resourceGetDataCallback):
2880         (WebViewTest::mainResourceData):
2881         (WebViewTest::javascriptResultToCString):
2882         (WebViewTest::javascriptResultToNumber):
2883         (WebViewTest::javascriptResultToBoolean):
2884         (WebViewTest::javascriptResultIsNull):
2885         (WebViewTest::javascriptResultIsUndefined):
2886         (onSnapshotReady):
2887         (WebViewTest::runWebProcessTest):
2888         * TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp:
2889         (WebViewTest::platformInitializeWebView):
2890         (WebViewTest::showInWindow):
2891         (WebViewTest::showInWindowAndWaitUntilMapped):
2892         (WebViewTest::mouseMoveTo):
2893         (WebViewTest::emitPopupMenuSignal):
2894         (WebViewTest::keyStroke):
2895         (WebViewTest::doMouseButtonEvent):
2896
2897 2019-01-09  Philippe Normand  <pnormand@igalia.com>
2898
2899         [WPE] API tests can't run in flatpak environment
2900         https://bugs.webkit.org/show_bug.cgi?id=193242
2901
2902         Reviewed by Michael Catanzaro.
2903
2904         * Scripts/run-wpe-tests: Add --wpe to arguments passed to
2905         flatpakutils so that it knows which port it's dealing with.
2906         * glib/common.py: Remove build_dir globals so that subsequent
2907         calls actually take args into account.
2908         (library_build_path):
2909         (binary_build_path):
2910
2911 2019-01-08  Dean Jackson  <dino@apple.com>
2912
2913         Blob references for System Previews don't get a correct file extension
2914         https://bugs.webkit.org/show_bug.cgi?id=193268
2915         <rdar://problem/47133037>
2916
2917         Reviewed by Tim Horton.
2918
2919         New test that a Blob download of a USDZ file gets named correctly.
2920
2921         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2922         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
2923         (-[BlobWithUSDZExtensionDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
2924         (-[BlobWithUSDZExtensionDownloadDelegate _downloadDidFinish:]):
2925         (TEST):
2926         * TestWebKitAPI/Tests/WebKitCocoa/SystemPreviewBlobNaming.html: Added.
2927
2928 2019-01-08  Jiewen Tan  <jiewen_tan@apple.com>
2929
2930         [WebAuthN] Support U2F HID Authenticators on macOS
2931         https://bugs.webkit.org/show_bug.cgi?id=191535
2932         <rdar://problem/47102027>
2933
2934         Reviewed by Brent Fulgham.
2935
2936         This patch:
2937         1) adds support for U2F mocking mechanism;
2938         2) updates tests to reflect U2fCommandConstructor changes.
2939
2940         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
2941         (TestWebKitAPI::TEST):
2942         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
2943         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2944         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
2945
2946 2019-01-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2947
2948         [iOS] Dispatch a synthetic mousedown event prior to starting drags
2949         https://bugs.webkit.org/show_bug.cgi?id=193229
2950         <rdar://problem/46717097>
2951
2952         Reviewed by Tim Horton.
2953
2954         Add a cross-platform drag and drop test to verify that calling `preventDefault()` on the mousedown event
2955         prevents a drag from starting.
2956
2957         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
2958         * TestWebKitAPI/Tests/WebKitCocoa/link-and-target-div.html:
2959
2960         Tweak this test to make it robust when dragging the link to the target element multiple times in a single test.
2961
2962 2019-01-08  Zhifei Fang  <zhifei_fang@apple.com>
2963   
2964         Layout test will generate a perf metric file to results dir.
2965         https://bugs.webkit.org/show_bug.cgi?id=192030
2966         <rdar://problem/32779516>
2967
2968         Reviewed by Aakash Jain.
2969
2970         Layout test running time will be collected to a perf metric file.
2971         For now, instead of outputing running time of all tests (which is huge),
2972         we aggregate them by test directories which are at most two level deep. 
2973
2974         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2975         (Manager._end_test_run):
2976         (Manager._output_perf_metrics):
2977         (Manager._print_expectation_line_for_test):
2978         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2979         (add_test_perf_metric):
2980         (test_perf_metrics):
2981         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
2982         (JSONGeneratorTest.test_test_timings_trie):
2983         (JSONGeneratorTest):
2984         (JSONGeneratorTest.test_test_perf_metrics):
2985         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2986         (RebaselineTest.test_reset_results):
2987         (RebaselineTest.test_missing_results):
2988         (RebaselineTest.test_new_baseline):
2989
2990 2019-01-08  Patrick Griffis  <pgriffis@igalia.com>
2991
2992         [WPE][GTK] Add php-json to install-dependencies
2993         https://bugs.webkit.org/show_bug.cgi?id=193233
2994
2995         Reviewed by Michael Catanzaro.
2996
2997         * gtk/install-dependencies:
2998         * wpe/install-dependencies:
2999
3000 2019-01-08  Chris Dumez  <cdumez@apple.com>
3001
3002         Regression(PSON-r239182): Blank view when navigating back and forth between google.com and stack overflow
3003         https://bugs.webkit.org/show_bug.cgi?id=193224
3004         <rdar://problem/47097726>
3005
3006         Reviewed by Alex Christensen.
3007
3008         Add API test coverage.
3009
3010         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3011
3012 2019-01-07  David Kilzer  <ddkilzer@apple.com>
3013
3014         Leak of ScrollCompletionCallbackData (16 bytes) in com.apple.WebKit.WebContent running WebKit layout tests
3015         <https://webkit.org/b/193222>
3016         <rdar://problem/46862309>
3017
3018         Reviewed by Joseph Pecoraro.
3019
3020         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
3021         (WTR::executeCallback): Fix camel case of variable name.
3022         (WTR::EventSendingController::callAfterScrollingCompletes): If
3023         WKBundlePageRegisterScrollOperationCompletionCallback() returns
3024         false, make sure to release the ScrollCompletionCallbackData
3025         object.  This fixes the leak.
3026
3027 2019-01-07  Fujii Hironori  <Hironori.Fujii@sony.com>
3028
3029         [Win] EWS: wincairo-ews cannot apply a patch with *.png
3030         https://bugs.webkit.org/show_bug.cgi?id=193044
3031
3032         Reviewed by Daniel Bates.
3033
3034         WinCairo EWS bots are using Windows Perl. Binary files should be
3035         opened as binary mode.
3036
3037         * Scripts/svn-apply:
3038         (handleGitBinaryChange): Use 'binmode' for binary file handles.
3039
3040 2019-01-07  Don Olmstead  <don.olmstead@sony.com>
3041
3042         [CMake] Add ENABLE_CSS_TYPED_OM option
3043         https://bugs.webkit.org/show_bug.cgi?id=193216
3044
3045         Reviewed by Michael Catanzaro.
3046
3047         * Scripts/webkitperl/FeatureList.pm:
3048
3049 2019-01-07  David Kilzer  <ddkilzer@apple.com>
3050
3051         Prefer RetainPtr<NSObject> to RetainPtr<NSObject *>
3052         <https://webkit.org/b/193056>
3053
3054         Reviewed by Alex Christensen.
3055
3056         * Scripts/webkitpy/style/checker.py:
3057         - Ignore use of new runtime/retainptr check in
3058           Tools/TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm since it
3059           contains tests to ensure RetainPtr<NSObject *> is compatible
3060           with RetainPtr<NSObject>.
3061
3062         * Scripts/webkitpy/style/checkers/cpp.py:
3063         (check_language):
3064         (CppChecker):
3065         - Add checker for use of '*' in RetainPtr<> type.  A for loop
3066           was used instead of a single regex so that angle brackets
3067           could be matched up when checking the type contained within
3068           the RetainPtr<> type.
3069
3070         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3071         (CppStyleTest):
3072         - Add unit test for new runtime/retainptr check.
3073
3074         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h:
3075         * TestWebKitAPI/EditingTestHarness.h:
3076         - Remove '*' from RetainPtr<> type.
3077
3078         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3079         - Add cf/RetainPtr.cpp back to TestWTFLibrary target!  This
3080           regressed in r201938.
3081
3082         * TestWebKitAPI/Tests/WTF/cf/RetainPtr.cpp:
3083         (TestWebKitAPI::TEST):
3084         - Update tests to match RetainPtr.mm tests (except for the
3085           `*SimilarNSType` tests since there is no CF equivalent of
3086           RetainPtr<NSString> and RetainPtr<NSString *>).
3087
3088         * TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm:
3089         (TestWebKitAPI::TEST):
3090         - Update tests to:
3091           - Not conflict by name with equivalent CF tests in
3092             RetainPtr.cpp.
3093           - Add test cases for RetainPtr<NSObject>,
3094             RetainPtr<NSObject *> and RetainPtr<id> were appropriate.
3095           - Add `*SimilarNSType` tests for converting between
3096             RetainPtr<NSObject> and RetainPtr<NSObject *>.
3097           - Change `0` to `nil` as appropriate.
3098           - Re-alphabetize the tests by name.
3099           - Add Optional<RetainPtr<>> tests.
3100           - Add retainPtr() tests.
3101
3102         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
3103         (-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
3104         * TestWebKitAPI/Tests/WebKitCocoa/IconLoadingDelegate.mm:
3105         (TEST):
3106         - Remove '*' from RetainPtr<> type.
3107
3108         * TestWebKitAPI/Tests/WebKitCocoa/JITEnabled.mm:
3109         (TEST(WebKit, JITEnabled)):
3110         - Add missing WTFMove().  Apparently a temporary was being
3111           created before in the argument list due to mismatched
3112           RetainPtr<> types.
3113
3114         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3115         * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
3116         (TestWebKitAPI::setUpWebViewForTestingVideoControlsManager):
3117         (TestWebKitAPI::TEST):
3118         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3119         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3120         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
3121         (WTR::resourcesDirectoryURL):
3122         * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
3123         (WTR::InjectedBundle::platformInitialize):
3124         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3125         - Remove '*' from RetainPtr<> type.
3126
3127 2019-01-07  Eric Carlson  <eric.carlson@apple.com>
3128
3129         A MediaTime timescale must never be zero
3130         https://bugs.webkit.org/show_bug.cgi?id=193156
3131         <rdar://problem/32504501>
3132
3133         Reviewed by Jer Noble.
3134
3135         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
3136         (TestWebKitAPI::TEST): Add tests for zero timescale.
3137
3138 2019-01-07  Youenn Fablet  <youenn@apple.com>
3139
3140         API test broken: TestWebKitAPI.WebKit.CustomDataStorePathsVersusCompletionHandlers
3141         https://bugs.webkit.org/show_bug.cgi?id=193175
3142
3143         Reviewed by Chris Dumez.
3144
3145         Updated API test as we bumped the SW schema to version 4.
3146
3147         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3148         * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-4.sqlite3: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-3.sqlite3.
3149         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
3150         (TEST):
3151
3152 2019-01-06  Fujii Hironori  <Hironori.Fujii@sony.com>
3153
3154         [Win][Clang] Fix compilation warnings of MiniBrowser
3155         https://bugs.webkit.org/show_bug.cgi?id=193029
3156
3157         Reviewed by Ross Kirsling.
3158
3159         * MiniBrowser/win/MiniBrowserWebHost.h: Removed unused m_oldFont
3160         and m_URLBarFont. Reorder member variables to fix -Wreorder
3161         warning.
3162         * MiniBrowser/win/PageLoadTestClient.cpp:
3163         (PageLoadTestClient::PageLoadTestClient): Reorder the member initializer list.
3164         * MiniBrowser/win/PageLoadTestClient.h: Removed 'virtual' of
3165         pageLoadStartedAtTime and pageLoadEndedAtTime. Removed unused
3166         m_currentURLIndex.
3167         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3168         (WebKitBrowserWindow::WebKitBrowserWindow): Initialize
3169         navigationClient with '{ }' to fix the missing field warning.
3170         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
3171         (initDocStruct): Changed the argument type docname to const.
3172
3173 2019-01-06  Jiewen Tan  <jiewen_tan@apple.com>
3174
3175         [WebAuthN] Import U2F command/response converters from Chromium
3176         https://bugs.webkit.org/show_bug.cgi?id=193150
3177         <rdar://problem/47054028>
3178
3179         Reviewed by Brent Fulgham.
3180
3181         Adds API tests.
3182
3183         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3184         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
3185         (TestWebKitAPI::getTestAttestedCredentialDataBytes):
3186         (TestWebKitAPI::getTestAuthenticatorDataBytes):
3187         (TestWebKitAPI::getTestAttestationObjectBytes):
3188         (TestWebKitAPI::getTestSignResponse):
3189         (TestWebKitAPI::getTestU2fRegisterResponse):
3190         (TestWebKitAPI::TEST):
3191         (TestWebKitAPI::convertToVector): Deleted.
3192         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
3193         * TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp: Added.
3194         (TestWebKitAPI::constructMakeCredentialRequest):
3195         (TestWebKitAPI::constructGetAssertionRequest):
3196         (TestWebKitAPI::TEST):
3197
3198 2019-01-05  Oriol Brufau  <obrufau@igalia.com>
3199
3200         [GTK] Add python3-setuptools, libunistring-dev, bison and flex dependencies
3201         https://bugs.webkit.org/show_bug.cgi?id=193136
3202
3203         Reviewed by Michael Catanzaro.
3204
3205         * gtk/install-dependencies:
3206         Add python3-setuptools, libunistring-dev, bison and flex to install-dependencies,
3207         they are needed by update-webkitgtk-libs.
3208
3209 2019-01-05  Aakash Jain  <aakash_jain@apple.com>
3210
3211         Unreviewed follow-up fix to r239650
3212         https://bugs.webkit.org/show_bug.cgi?id=193140
3213         <rdar://problem/47063037>
3214
3215         Typecast patch_id to string.
3216
3217         * BuildSlaveSupport/ews-build/steps.py:
3218         (ValidatePatch._is_patch_obsolete):
3219
3220 2019-01-04  Daniel Bates  <dabates@apple.com>
3221
3222         [lldb-webkit]: Add support for pretty-printing raw bitmask types
3223         https://bugs.webkit.org/show_bug.cgi?id=193024
3224
3225         Reviewed by Jer Noble.
3226
3227         Add support infrastructure to pretty-print a raw bitmask type. Included is a pretty-printer
3228         for the bitmask type WebEventFlags as an example.
3229
3230         Exposed a new function lldb_webkit.addSummaryAndSyntheticFormattersForRawBitmaskType()
3231         that can be used to register summary and synthetic child formatters for a bitmask type.
3232         For example, consider the following enum and bitmask typedefs:
3233
3234         typedef enum {
3235             A = 1 << 0,
3236             B = 1 << 1,
3237             C = 1 << 2,
3238         } SpecialFlagValues;
3239         typedef unsigned SpecialFlags;
3240
3241         To teach lldb-webkit how to pretty print SpecialFlags types, add the following code inside
3242         __lldb_init_module():
3243
3244             addSummaryAndSyntheticFormattersForRawBitmaskType(debugger, "SpecialFlags", {
3245                     1 << 0: "A",
3246                     1 << 1: "B",
3247                     1 << 2: "C",
3248             })
3249
3250         * lldb/lldb_webkit.py:
3251         (addSummaryAndSyntheticFormattersForRawBitmaskType):
3252         (addSummaryAndSyntheticFormattersForRawBitmaskType.GeneratedRawBitmaskProvider):
3253         (addSummaryAndSyntheticFormattersForRawBitmaskType.raw_bitmask_summary_provider):
3254         (addSummaryAndSyntheticFormattersForRawBitmaskType.lldb_webkit):
3255         A convenience function to dynamically creaste a synthetic formatter class and summary
3256         string function for the specified bitmask type and enumerator value to name map. This
3257         function register the dynamically created class and function with LLDB.
3258
3259         (__lldb_init_module):
3260         (FlagEnumerationProvider):
3261         (FlagEnumerationProvider._enumerator_value_to_name_map):
3262         (FlagEnumerationProvider._bitmask):
3263         (FlagEnumerationProvider._update):
3264         (FlagEnumerationProvider.has_children):
3265         (FlagEnumerationProvider.num_children):
3266         (FlagEnumerationProvider.get_child_index):
3267         (FlagEnumerationProvider.get_child_at_index):
3268         (FlagEnumerationProvider.update):
3269         Extract out provider logic from WTFOptionSetProvider into a base class that can be shared.
3270
3271         (WTFOptionSetProvider):
3272         (WTFOptionSetProvider._enumerator_value_to_name_map):
3273         (WTFOptionSetProvider._bitmask):
3274         (WTFOptionSetProvider._update):
3275         Write in terms of the base class.
3276
3277         (RawBitmaskProviderBase):
3278         (RawBitmaskProviderBase._enumerator_value_to_name_map):
3279         (RawBitmaskProviderBase._bitmask):
3280         Added. Base synthetic formatter class for a raw bitmask type. Derived classes are expected to
3281         override the class variable ENUMERATOR_VALUE_TO_NAME_MAP with a dictionary of the form:
3282         {
3283             1 << 0: "A",
3284             1 << 1: "B",
3285             1 << 2: "C",
3286         }
3287         It is not necessary to instantiate such a derived class directory. Instead use the convenience
3288         function addSummaryAndSyntheticFormattersForRawBitmaskType.
3289
3290         (WTFOptionSetProvider.has_children): Deleted.
3291         (WTFOptionSetProvider.num_children): Deleted.
3292         (WTFOptionSetProvider.get_child_index): Deleted.
3293         (WTFOptionSetProvider.get_child_at_index): Deleted.
3294         (WTFOptionSetProvider.update): Deleted.
3295
3296 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
3297
3298         [ews-build] Add build step to validate the patch before processing it
3299         https://bugs.webkit.org/show_bug.cgi?id=193140
3300
3301         Reviewed by Lucas Forschler.
3302
3303         * BuildSlaveSupport/ews-build/factories.py:
3304         (Factory.__init__): Added ValidatePatch step.
3305         * BuildSlaveSupport/ews-build/steps.py:
3306         (ValidatePatch):
3307         (ValidatePatch.fetch_data_from_url): Fetch data from a url.
3308         (ValidatePatch.get_patch_json): Get patch json data.
3309         (ValidatePatch.get_bug_json): Get bug json data.
3310         (ValidatePatch.get_bug_id_from_patch): Get bug id from a patch id.
3311         (ValidatePatch._is_patch_obsolete): Check if the patch is obsolete.
3312         (ValidatePatch._is_patch_review_denied): Check if the patch is marked r-.
3313         (ValidatePatch._is_bug_closed): Check if the bug is already closed.
3314         (ValidatePatch.skip_build): Skip the build.
3315         (ValidatePatch.start):
3316
3317 2019-01-04  Alex Christensen  <achristensen@webkit.org>
3318
3319         Progress towards fixing Mac CMake build
3320         https://bugs.webkit.org/show_bug.cgi?id=193105
3321
3322         Reviewed by Don Olmstead.
3323
3324         * TestWebKitAPI/PlatformMac.cmake:
3325
3326 2019-01-04  Alex Christensen  <achristensen@webkit.org>
3327
3328         Fix API test after r239631
3329         https://bugs.webkit.org/show_bug.cgi?id=193118
3330
3331         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
3332         (TestWebKitAPI::TEST):
3333         This test relied on m_maximumProcessCount being set to 1 in ProcessPoolConfiguration::createWithLegacyOptions.
3334         Do the same thing via the API to fix the test.
3335
3336 2019-01-04  Jer Noble  <jer.noble@apple.com>
3337
3338         [WebKitLegacy] Media playback pauses on scroll
3339         https://bugs.webkit.org/show_bug.cgi?id=192829
3340
3341         Reviewed by Eric Carlson.
3342
3343         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3344         * TestWebKitAPI/Tests/WebKitCocoa/StopSuspendResumeAllMedia.mm: Added.
3345         (TestWebKitAPI::TEST):
3346         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm: Added.
3347         (-[ScrollingDoesNotPauseMediaDelegate webViewDidFinishLoad:]):
3348         (-[ScrollingDoesNotPauseMediaDelegate uiWebView:didCommitLoadForFrame:]):
3349         (-[ScrollingDoesNotPauseMediaDelegate handleEvent:]):
3350         (TestWebKitAPI::TEST):
3351
3352 2019-01-04  Chris Dumez  <cdumez@apple.com>
3353
3354         Add support for toggling device orientation API support per site
3355         https://bugs.webkit.org/show_bug.cgi?id=193143
3356         <rdar://problem/46605724>
3357
3358         Reviewed by Alex Christensen.
3359
3360         Add API test coverage.
3361
3362         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3363         (-[DataMappingSchemeHandler setTaskHandler:]):
3364         (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
3365         (-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationEventEnabled:]):
3366         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
3367         (-[WebsitePoliciesDeviceOrientationDelegate webView:didFinishNavigation:]):
3368
3369 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
3370
3371         [ews-build] use svn-apply script to apply the patches
3372         https://bugs.webkit.org/show_bug.cgi?id=193138
3373
3374         Reviewed by Lucas Forschler.
3375
3376         * BuildSlaveSupport/ews-build/factories.py:
3377         (Factory.__init__): Add the ApplyPatch step.
3378         * BuildSlaveSupport/ews-build/steps.py:
3379         (CheckOutSource): Added step name.
3380         (CheckOutSource.__init__): Used alwaysUseLatest so that it doesn't apply patch.
3381         (ApplyPatch): Build step to apply patch using svn-apply script.
3382         (UnApplyPatchIfRequired):
3383         (UnApplyPatchIfRequired.__init__): Deleted, since the alwaysUseLatest parameter is now in base class.
3384
3385 2019-01-04  Alex Christensen  <achristensen@webkit.org>
3386
3387         Deprecate WKContextCreate
3388         https://bugs.webkit.org/show_bug.cgi?id=193118
3389
3390         Reviewed by Brady Eidson.
3391
3392         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3393         (WebKitBrowserWindow::WebKitBrowserWindow):
3394         * TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
3395         (TestWebKitAPI::TEST):
3396         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
3397         (TestWebKitAPI::TEST):
3398         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
3399         (TestWebKitAPI::TEST):
3400         * TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
3401         (TestWebKitAPI::TEST):
3402         * TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
3403         (TestWebKitAPI::TEST):
3404         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
3405         (TestWebKitAPI::TEST):
3406         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
3407         (TestWebKitAPI::TEST):
3408         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
3409         (TestWebKitAPI::TEST):
3410         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
3411         (TestWebKitAPI::TEST):
3412         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
3413         (TestWebKitAPI::TEST):
3414         * TestWebKitAPI/Tests/WebKit/Find.cpp:
3415         (TestWebKitAPI::TEST):
3416         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
3417         (TestWebKitAPI::TEST):
3418         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
3419         (TestWebKitAPI::TEST):
3420         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
3421         (TestWebKitAPI::TEST):
3422         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
3423         (TestWebKitAPI::TEST):
3424         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
3425         (TestWebKitAPI::TEST):
3426         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
3427         (TestWebKitAPI::TEST):
3428         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
3429         (TestWebKitAPI::TEST):
3430         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
3431         (TestWebKitAPI::loadAlternateHTMLString):
3432         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
3433         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
3434         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
3435         (TestWebKitAPI::buildAndPerformTest):
3436         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
3437         (TestWebKitAPI::TEST):
3438         * TestWebKitAPI/Tests/WebKit/NavigationClientDefaultCrypto.cpp:
3439         (TestWebKitAPI::TEST):
3440         * TestWebKitAPI/Tests/WebKit/PageGroup.cpp:
3441         (TestWebKitAPI::TEST):
3442         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
3443         (TestWebKitAPI::TEST):
3444         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
3445         (TestWebKitAPI::TEST):
3446         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
3447         (TestWebKitAPI::TEST):
3448         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
3449         (TestWebKitAPI::TEST):
3450         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
3451         (TestWebKitAPI::TEST):
3452         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
3453         (TestWebKitAPI::TEST):
3454         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
3455         (TestWebKitAPI::TEST):
3456         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
3457         (TestWebKitAPI::TEST):
3458         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
3459         (TestWebKitAPI::TEST):
3460         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
3461         (TestWebKitAPI::TEST):
3462         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
3463         (TestWebKitAPI::TEST):
3464         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
3465         (TestWebKitAPI::TEST):
3466         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
3467         (TestWebKitAPI::TEST):
3468         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
3469         (TestWebKitAPI::TEST):
3470         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
3471         (TestWebKitAPI::TEST):
3472         * TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
3473         (TestWebKitAPI::TEST):
3474         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
3475         (TestWebKitAPI::TEST):
3476         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
3477         (TestWebKitAPI::TEST):
3478         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
3479         (TestWebKitAPI::TEST):
3480         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
3481         (TestWebKitAPI::TEST):
3482         * TestWebKitAPI/Tests/WebKit/WebCoreStatisticsWithNoWebProcess.cpp:
3483         (TestWebKitAPI::TEST):
3484         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
3485         (TestWebKitAPI::TEST):
3486         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
3487         (TestWebKitAPI::TEST):
3488         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
3489         (WebKit2_CommandBackForwardTestWKView::SetUp):
3490         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
3491         (TestWebKitAPI::TEST):
3492         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
3493         (TestWebKitAPI::TEST):
3494         * TestWebKitAPI/Tests/WebKitCocoa/SchemeRegistry.mm:
3495         (TestWebKitAPI::TEST):
3496         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
3497         (TestWebKitAPI::WebKitAgnosticTest::runWebKit2Test):
3498
3499 2019-01-03  Matt Rajca  <mrajca@apple.com>
3500
3501         Make DidPlayMediaPreventedFromPlaying autoplay event more generic.
3502         https://bugs.webkit.org/show_bug.cgi?id=193128
3503         rdar://34554231
3504
3505         Reviewed by Jer Noble.
3506
3507         Today, the "DidPlayMediaPreventedFromPlaying" autoplay event is only sent for
3508         media prevented from autoplaying. It could be generalized to a "DidPlayMediaWithUserGesture"
3509         event along with a flag that indicates whether or not autoplay was actually prevented.
3510
3511         Tests: existing API tests were updated to reflect the new names. New API tests
3512         were added for the new case in which the "DidPlayMediaWithUserGesture" event is sent.
3513
3514         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3515         * TestWebKitAPI/Tests/WebKit/long-test.mp4: Added.
3516         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3517         (TEST):
3518         * TestWebKitAPI/Tests/WebKitCocoa/audio-with-play-button.html: Added.
3519         * TestWebKitAPI/Tests/WebKitCocoa/video-with-play-button.html: Added.
3520
3521 2019-01-04  Chris Dumez  <cdumez@apple.com>
3522
3523         [PSON] Calling history.back() from inside the load event handler prevents process-swapping
3524         https://bugs.webkit.org/show_bug.cgi?id=193120
3525
3526         Reviewed by Alex Christensen.
3527
3528         Add API test coverage.
3529
3530         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3531
3532 2019-01-04  Chris Dumez  <cdumez@apple.com>
3533
3534         Crash under WebProcessPool::addSuspendedPage()
3535         https://bugs.webkit.org/show_bug.cgi?id=193110
3536
3537         Reviewed by Youenn Fablet.
3538
3539         Add API test coverage.
3540
3541         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3542
3543 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
3544
3545         [ews-build] Check patch relevance before applying the patch
3546         https://bugs.webkit.org/show_bug.cgi?id=193102
3547
3548         Reviewed by Lucas Forschler.
3549
3550         * BuildSlaveSupport/ews-build/factories.py:
3551         (Factory.__init__): Moved CheckPatchRelevance step to base class.
3552
3553 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
3554
3555         [ews-build] Check patch relevance step should print patch id
3556         https://bugs.webkit.org/show_bug.cgi?id=193137
3557
3558         Reviewed by Lucas Forschler.
3559
3560         * BuildSlaveSupport/ews-build/steps.py:
3561         (CheckPatchRelevance.start): Update the status to include patch id.
3562
3563 2019-01-04  Jonathan Bedard  <jbedard@apple.com>
3564
3565         webkitpy: Increase simulator teardown timeout
3566         https://bugs.webkit.org/show_bug.cgi?id=193141
3567         <rdar://problem/46174217>
3568
3569         Rubber-stamped by Aakash Jain.
3570
3571         * Scripts/webkitpy/xcode/simulated_device.py:
3572         (SimulatedDeviceManager.tear_down): Use SIMULATOR_BOOT_TIMEOUT.
3573
3574 2019-01-03  Ross Kirsling  <ross.kirsling@sony.com>
3575
3576         test262-runner misbehaves when test file YAML has a trailing space
3577         https://bugs.webkit.org/show_bug.cgi?id=193053
3578
3579         Reviewed by Yusuke Suzuki.
3580
3581         * Scripts/test262/Runner.pm:
3582         (parseData):
3583         Accept trailing space when parsing a test file's YAML block.
3584
3585 2019-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
3586
3587         UserMedia test should use WKPageNavigationClient
3588         https://bugs.webkit.org/show_bug.cgi?id=192913
3589
3590         Reviewed by Youenn Fablet.
3591
3592         The test currently uses the deprecated WKPageLoaderClient. It should use
3593         WKPageNavigationClient instead, which provides the same callback under a similar name.
3594
3595         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
3596         (TestWebKitAPI::TEST):
3597
3598 2019-01-02  Alex Christensen  <achristensen@webkit.org>
3599
3600         Homograph with LATIN SMALL LETTER R WITH FISHHOOK
3601         https://bugs.webkit.org/show_bug.cgi?id=192944
3602
3603         Reviewed by Tim Horton.
3604
3605         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
3606         (TestWebKitAPI::TEST):
3607
3608 2019-01-02  Wenson Hsieh  <wenson_hsieh@apple.com>
3609
3610         Add support for using the current text selection as the find string on iOS
3611         https://bugs.webkit.org/show_bug.cgi?id=193034
3612         <rdar://problem/45138739>
3613
3614         Reviewed by Tim Horton.
3615
3616         Add a new API test to verify that the new WebKit SPI (_stringForFind, _takeFindStringFromSelection:, and
3617         _setStringForFind) works as expected.
3618
3619         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3620         * TestWebKitAPI/Tests/WebKitCocoa/UseSelectionAsFindString.mm: Added.
3621
3622 2019-01-02  Aakash Jain  <aakash_jain@apple.com>
3623
3624         [ews-build] Use git on OpenSource EWS bots
3625         https://bugs.webkit.org/show_bug.cgi?id=193092
3626
3627         Reviewed by Lucas Forschler.
3628
3629         * BuildSlaveSupport/ews-build/steps.py:
3630         (CheckOutSource): Use git instead of svn.
3631         (CheckOutSource.__init__): Use timeout of 2 hours since the initial checkout might take a long time.
3632
3633 2019-01-02  Daniel Bates  <dabates@apple.com>
3634
3635         [lldb-webkit] Remove broken code to print WTF::OptionSet::m_storage
3636         https://bugs.webkit.org/show_bug.cgi?id=193023
3637
3638         Reviewed by Simon Fraser.
3639
3640         The code to print WTF::OptionSet::m_storage as an item in the set never worked and does
3641         not seem meaningful to fix because WTF::OptionSet::m_storage is just the sum of the printed
3642         enumerator values. We should just remove this code.
3643
3644         * lldb/lldb_webkit.py:
3645         (WTFOptionSetProvider.has_children):
3646         (WTFOptionSetProvider.num_children):
3647         (WTFOptionSetProvider.get_child_index):
3648         (WTFOptionSetProvider.get_child_at_index):
3649
3650 2018-12-29  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
3651
3652         .ycm_extra_conf.py should handle XXXInlines.h
3653         https://bugs.webkit.org/show_bug.cgi?id=193055
3654
3655         Reviewed by Carlos Garcia Campos.
3656
3657         compile_commands.json database only records flags and options for cpp source files.
3658         So, when we open headers, this database does not have any information for that.
3659         Our .ycm_extra_conf.py alleviates this by using XXX.cpp's configuration for XXX.h.
3660         But this mitigation does not handle XXXInlines.h well since we do not have XXXInlines.cpp.
3661         This patch adds support for XXXInlines.h in .ycm_extra_conf.py. When XXXInlines.h is queried,
3662         we attempt to find XXX.cpp and use the configuration if it exists.
3663
3664         * gtk/ycm_extra_conf.py:
3665         (getImplementationFilename):
3666         (FlagsForFile):
3667
3668 2018-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3669
3670         Unreviewed. Support PHP 7.3 in Debian.
3671
3672         Add 7.3 to the list of php versions supported in Debian.
3673
3674         * Scripts/webkitpy/port/base.py:
3675         (Port._debian_php_version):
3676
3677 2018-12-27  Alex Christensen  <achristensen@webkit.org>
3678
3679         Resurrect Mac CMake build
3680         https://bugs.webkit.org/show_bug.cgi?id=192658
3681
3682         Reviewed by Yusuke Suzuki.
3683
3684         * DumpRenderTree/PlatformMac.cmake:
3685         * MiniBrowser/mac/CMakeLists.txt:
3686         * TestWebKitAPI/PlatformMac.cmake:
3687
3688 2018-12-26  Adrian Perez de Castro  <aperez@igalia.com>
3689
3690         [Tools] Remove references to Bison and Flex
3691         https://bugs.webkit.org/show_bug.cgi?id=193033
3692
3693         Reviewed by Michael Catanzaro.
3694
3695         The Bison and Flex tools are not needed anymore since r209883.
3696
3697         * CygwinDownloader/cygwin-downloader.py:
3698         * EWSTools/ubuntu-ews-packages:
3699         * Scripts/filter-build-webkit:
3700         (shouldIgnoreLine):
3701         * gtk/install-dependencies:
3702         * wpe/install-dependencies:
3703
3704 2018-12-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3705
3706         WebDriver: warn about non existing tests when parsing expectations
3707         https://bugs.webkit.org/show_bug.cgi?id=192979
3708
3709         Reviewed by Michael Catanzaro.
3710
3711         It's common to update web driver tests and forget updating the test expectations in case of tests removed or
3712         renamed.
3713
3714         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
3715         (WebDriverTestRunner.__init__):
3716
3717 2018-12-21  Chris Dumez  <cdumez@apple.com>
3718
3719         navigator.userAgent in service workers does not reflect customUserAgent set by client
3720         https://bugs.webkit.org/show_bug.cgi?id=192951
3721
3722         Reviewed by Youenn Fablet.
3723
3724         Extend API test coverage.
3725
3726         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
3727         (-[SWCustomUserAgentDelegate initWithUserAgent:]):
3728         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
3729         (-[SWUserAgentMessageHandler initWithExpectedMessage:]):
3730         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
3731
3732 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
3733
3734         [WebAuthN] userPresence should always be true
3735         https://bugs.webkit.org/show_bug.cgi?id=192835
3736         <rdar://problem/46538788>
3737
3738         Reviewed by Brent Fulgham.
3739
3740         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
3741         (TestWebKitAPI::TEST):
3742
3743 2018-12-19  Simon Fraser  <simon.fraser@apple.com>
3744
3745         Add support to run-benchmark to use non-default copies of the browser apps
3746         https://bugs.webkit.org/show_bug.cgi?id=192905
3747         rdar://problem/46845840
3748
3749         Reviewed by Dewei Zhu.
3750         
3751         Add support for a --browser-path argument to run-benchmark, which allows you to use
3752         a custom app bundle for a given browser (only implemented for Safari at present).
3753
3754         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
3755         (BenchmarkRunner.__init__):
3756         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
3757         (BrowserDriver.__init__):
3758         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver_factory.py:
3759         (BrowserDriverFactory.create):
3760         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
3761         (OSXBrowserDriver._launch_process):
3762         (OSXBrowserDriver._launch_process_with_caffeinate): Fix spelling.
3763         (OSXBrowserDriver._launch_process_with_caffinate): Deleted.
3764         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
3765         (OSXChromeCanaryDriver.launch_url):
3766         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
3767         (OSXFirefoxNightlyDriver.launch_url):
3768         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
3769         (OSXSafariDriver.__init__):
3770         (OSXSafariDriver.launch_url):
3771         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
3772         (parse_args):
3773         (run_benchmark_plan):
3774         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
3775         (WebServerBenchmarkRunner.__init__):
3776         * Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py:
3777         (FakeBenchmarkRunner.__init__):
3778
3779 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
3780
3781         [WebAuthN] Import an APDU coder from Chromium
3782         https://bugs.webkit.org/show_bug.cgi?id=192949
3783         <rdar://problem/46879933>
3784
3785         Reviewed by Brent Fulgham.
3786
3787         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3788         * TestWebKitAPI/Tests/WebCore/ApduTest.cpp: Added.
3789         (TestWebKitAPI::TEST):
3790
3791 2018-12-21  Wenson Hsieh  <wenson_hsieh@apple.com>
3792
3793         Setting the file wrapper and content type of an attachment to a PDF should update its image
3794         https://bugs.webkit.org/show_bug.cgi?id=192984
3795         <rdar://problem/46798028>
3796
3797         Reviewed by Tim Horton.
3798
3799         Add an API test to verify that setting the file wrapper for a _WKAttachment with an enclosing image element with
3800         PDF data correctly updates the image element.
3801
3802         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3803
3804 2018-12-21  Michael Catanzaro  <mcatanzaro@igalia.com>
3805
3806         Add JSCOnly to bot dashboard
3807         https://bugs.webkit.org/show_bug.cgi?id=192964
3808
3809         Reviewed by Alexey Proskuryakov.
3810
3811         Apparently we have five JSCOnly test bots and multiple developers working on keeping them in
3812         good shape. Sadly, they are hidden bots not exposed in the dashboard. They would be more
3813         useful if they were not so secret, so add them.
3814
3815         There appear to be no build-only bots, so the first column is blank. And of course there are
3816         no WebKit1 or WebKit2 bots, because this is JSCOnly, so the second and third columns are
3817         blank too. That's OK. This will be the last bot on the dashboard, so it won't look too bad,
3818         and there's plenty of room in the final column for all the bots.
3819
3820         I had a hard time picking a logo to use, because the JavaScript language does not have an
3821         official logo. But I believe I've found one that will be satisfactory.
3822
3823         I will sneak in one bonus change: WPE's EWS queue was missing, and has been added.
3824
3825         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish.png: Added.
3826         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish@2x.png: Added.
3827         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
3828         (BubbleQueueServer):
3829         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
3830         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
3831         (WebKitBuildbot):
3832         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
3833         (table.queue-grid tr.platform.linux-jsconly img.logo):
3834
3835 2018-12-21  Benjamin Poulain  <benjamin@webkit.org>
3836
3837         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
3838         https://bugs.webkit.org/show_bug.cgi?id=192821
3839
3840         Reviewed by Chris Dumez.
3841
3842         * DumpRenderTree/mac/DumpRenderTree.mm:
3843         (createWebViewAndOffscreenWindow):
3844         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
3845
3846 2018-12-20  Fujii Hironori  <Hironori.Fujii@sony.com>
3847
3848         [Win][Clang] Fix compilation warnings of DumpRenderTree
3849         https://bugs.webkit.org/show_bug.cgi?id=192924
3850
3851         Reviewed by Alex Christensen.
3852
3853         * DumpRenderTree/AccessibilityController.h: Added member variable initializations in the class definition.
3854         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
3855         (AccessibilityController::AccessibilityController): Moved member variable initializations to the class definition.
3856         * DumpRenderTree/win/DumpRenderTree.cpp:
3857         (dumpHistoryItem): String literals can't be converted non-const type. Use auto for them.
3858         (resetWebPreferencesToConsistentValues): Pass a temporal _bstr_t
3859         object to the argument of setDefaultTextEncodingName instead of a
3860         const string literal.
3861         (createWebViewAndOffscreenWindow): Use %lx for HRESULT (aka 'long').
3862         (main): Exit if _dup2 fails. Use %lu for'DWORD'(aka 'unsigned long').
3863         (setCacheFolder): Deleted.
3864         * DumpRenderTree/win/DumpRenderTreeWin.h: Fix class/struct mismatch of FrameLoadDelegate and PolicyDelegate declarations.
3865         * DumpRenderTree/win/EditingDelegate.cpp:
3866         (dump): Use %d for int.
3867         * DumpRenderTree/win/FrameLoadDelegate.cpp: Removed unused variable g_delegateWaitingOnTimer.
3868         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
3869         (BSTRFromString): Deleted unused function.
3870         * DumpRenderTree/win/TestRunnerWin.cpp:
3871         (TestRunner::setDatabaseQuota): Pass a temporal _bstr_t object to
3872         the arguemnt of setQuota instead of const string literal.
3873         * DumpRenderTree/win/WorkQueueItemWin.cpp:
3874         (jsStringRefToWString): Deleted unused function.
3875
3876 2018-12-20  Chris Dumez  <cdumez@apple.com>
3877
3878         Add API test coverage for customUserAgent client setting and service workers
3879         https://bugs.webkit.org/show_bug.cgi?id=192952
3880
3881         Reviewed by Alex Christensen.
3882
3883         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
3884         (-[SWMessageHandler userContentController:didReceiveScriptMessage:]):
3885         (-[SWSchemes webView:startURLSchemeTask:]):
3886         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
3887         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
3888
3889 2018-12-20  Chris Dumez  <cdumez@apple.com>
3890
3891         Use Optional::hasValue() instead of Optional::has_value()
3892         https://bugs.webkit.org/show_bug.cgi?id=192948
3893
3894         Reviewed by Tim Horton.
3895
3896         * TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
3897         (TestWebKitAPI::TEST):
3898         * TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
3899         (TestWebKitAPI::TEST):
3900         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
3901         (TestWebKitAPI::TEST_F):
3902
3903 2018-12-20  Chris Dumez  <cdumez@apple.com>
3904
3905         Add style script rule to check for uses of std::optional<>
3906         https://bugs.webkit.org/show_bug.cgi?id=192931
3907
3908         Reviewed by Tim Horton.
3909
3910         * Scripts/webkitpy/style/checkers/cpp.py:
3911         (check_wtf_optional):
3912         (check_style):
3913
3914 2018-12-20  Jiewen Tan  <jiewen_tan@apple.com>
3915
3916         [WebAuthN] Add a runtime flag for local authenticator
3917         https://bugs.webkit.org/show_bug.cgi?id=192792
3918         <rdar://problem/46798738>
3919
3920         Reviewed by Brent Fulgham.
3921
3922         * DumpRenderTree/TestOptions.cpp:
3923         (TestOptions::TestOptions):
3924         * DumpRenderTree/TestOptions.h:
3925         * DumpRenderTree/mac/DumpRenderTree.mm:
3926         (enableExperimentalFeatures):
3927         (setWebPreferencesForTestOptions):
3928         * WebKitTestRunner/TestController.cpp:
3929         (WTR::TestController::resetPreferencesToConsistentValues):
3930         (WTR::updateTestOptionsFromTestHeader):
3931         * WebKitTestRunner/TestOptions.h:
3932         (WTR::TestOptions::hasSameInitializationOptions const):
3933
3934 2018-12-20  Jonathan Bedard  <jbedard@apple.com>
3935
3936         webkitpy: Autoinstall package URLs have changed
3937         https://bugs.webkit.org/show_bug.cgi?id=192909
3938         <rdar://problem/46860359>
3939
3940         Rubber-stamped by Alexey Proskuryakov.
3941
3942         PyPi urls have been moved around, we need to update our auto-installed packages.
3943
3944         We should check for Selenium before asking PyPi for the latest version.
3945
3946         * Scripts/webkitpy/thirdparty/__init__.py:
3947         (AutoinstallImportHook._install_mechanize): Update with new pypi url.
3948         (AutoinstallImportHook._install_keyring): Ditto.
3949         (AutoinstallImportHook._install_pep8): Ditto.
3950         (AutoinstallImportHook._install_mozlog): Ditto.
3951         (AutoinstallImportHook._install_mozprocess): Ditto.
3952         (AutoinstallImportHook._install_pytest_timeout): Ditto.
3953         (AutoinstallImportHook._install_pytest): Ditto.
3954         (AutoinstallImportHook._install_pylint): Ditto.
3955         (AutoinstallImportHook._install_buildbot): Ditto.
3956         (AutoinstallImportHook._install_coverage): Ditto.
3957         (AutoinstallImportHook._install_twisted_15_5_0): Ditto.
3958         (AutoinstallImportHook._install_selenium): Update with new pypi url, only check
3959         for new Selenium if the installed version isn't sufficient.
3960         (AutoinstallImportHook.get_latest_pypi_url): Update with new pypi url.
3961
3962 2018-12-20  Chris Dumez  <cdumez@apple.com>
3963
3964         Use Optional::valueOr() instead of Optional::value_or()
3965         https://bugs.webkit.org/show_bug.cgi?id=192933
3966
3967         Reviewed by Geoffrey Garen.
3968
3969         * TestWebKitAPI/Tests/WTF/URLParser.cpp:
3970         (TestWebKitAPI::checkURL):
3971         (TestWebKitAPI::checkRelativeURL):
3972         (TestWebKitAPI::checkURLDifferences):
3973         (TestWebKitAPI::checkRelativeURLDifferences):
3974         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
3975         (TestWebKitAPI::checkURL):
3976
3977 2018-12-20  Ryan Haddad  <ryanhaddad@apple.com>
3978
3979         Unreviewed, rolling out r239417.
3980
3981         Introduced two API test failures on macOS.
3982
3983         Reverted changeset:
3984
3985         "<rdar://problem/46194315> macOS: WebKit1 does not handle
3986         occlusion changes"
3987         https://bugs.webkit.org/show_bug.cgi?id=192821
3988         https://trac.webkit.org/changeset/239417
3989
3990 2018-12-20  Devin Rousso  <drousso@apple.com>
3991
3992         Web Inspector: UIString should take an optional key and description to aid localization
3993         https://bugs.webkit.org/show_bug.cgi?id=153962
3994         <rdar://problem/24542505>
3995
3996         Reviewed by Brian Burg.
3997
3998         * Scripts/extract-localizable-js-strings:
3999
4000 2018-12-20  Tim Horton  <timothy_horton@apple.com>
4001
4002         Unparented WKWebView can't retrieve main resource data for a main frame plugin
4003         https://bugs.webkit.org/show_bug.cgi?id=192923
4004         <rdar://problem/46859068>
4005
4006         Reviewed by Wenson Hsieh.
4007
4008         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4009         * TestWebKitAPI/WebKitCocoa/GetResourceData.mm:
4010         Add a test ensuring that both parented and unparented WKWebViews can
4011         retrieve main resource data when loading a PDF.
4012
4013 2018-12-20  Carlos Garcia Campos  <cgarcia@igalia.com>
4014
4015         [GTK][WPE] Bump webkitgtk-test-fonts to 0.0.8
4016         https://bugs.webkit.org/show_bug.cgi?id=192852
4017
4018         Reviewed by Michael Catanzaro.
4019
4020         EmojiOne font was replaced by Noto Color Emoji.
4021
4022         * WebKitTestRunner/gtk/fonts/fonts.conf: Use Noto Color Emoji when Apple Color Emoji font family is used in tests.
4023         * gtk/jhbuild.modules:
4024         * wpe/jhbuild.modules:
4025
4026 2018-12-19  Chris Dumez  <cdumez@apple.com>
4027
4028         wtf/Optional.h: move-constructor and move-assignment operator should disengage the value being moved from
4029         https://bugs.webkit.org/show_bug.cgi?id=192728
4030         <rdar://problem/46746779>
4031
4032         Reviewed by Geoff Garen.
4033
4034         * DumpRenderTree/*:
4035         * MiniBrowser/*:
4036         * TestRunnerShared/*:
4037         * TestWebKitAPI/*:
4038         * WebGPUAPIStructure/*:
4039         * WebKitTestRunner/*:
4040
4041 2018-12-19  Benjamin Poulain  <benjamin@webkit.org>
4042
4043         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
4044         https://bugs.webkit.org/show_bug.cgi?id=192821
4045
4046         Reviewed by Chris Dumez.
4047
4048         * DumpRenderTree/mac/DumpRenderTree.mm:
4049         (createWebViewAndOffscreenWindow):
4050
4051 2018-12-19  Alex Christensen  <achristensen@webkit.org>
4052
4053         Navigations away from the SafeBrowsing interstitial show a flash of old content
4054         https://bugs.webkit.org/show_bug.cgi?id=192676
4055
4056         Reviewed by Chris Dumez.
4057
4058         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
4059         (safeBrowsingView):
4060         (TEST):
4061         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
4062
4063 2018-12-19  Adrian Perez de Castro  <aperez@igalia.com>
4064
4065         [GTK][WPE] Unify TestController::platformRunUntil() and honor condition flag
4066         https://bugs.webkit.org/show_bug.cgi?id=192855
4067
4068         Reviewed by Michael Catanzaro.
4069
4070         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
4071         (WTR::TestController::notifyDone): Use the WPE implementation.
4072         (WTR::TestController::platformRunUntil): Use the WPE implementation.
4073         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
4074         (WTR::TestController::platformRunUntil): Honor the condition flag.
4075
4076 2018-12-19  Megan Gardner  <megan_gardner@apple.com>
4077
4078         Allow clients to set the navigator platform
4079         https://bugs.webkit.org/show_bug.cgi?id=192735
4080
4081         Reviewed by Tim Horton.
4082
4083         Add a test for setting a custom navigator platform.
4084
4085         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
4086         (-[CustomNavigatorPlatformDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4087         (-[CustomNavigatorPlatformDelegate webView:didFinishNavigation:]):
4088
4089 2018-12-19  Truitt Savell  <tsavell@apple.com>
4090
4091         Unreviewed, rolling out r239358.
4092
4093         Revision caused imported/w3c/web-platform-tests/IndexedDB/ to
4094         crash on Debug bots
4095
4096         Reverted changeset:
4097
4098         "Clean up IndexedDB files between tests"
4099         https://bugs.webkit.org/show_bug.cgi?id=192796
4100         https://trac.webkit.org/changeset/239358
4101
4102 2018-12-18  Wenson Hsieh  <wenson_hsieh@apple.com>
4103
4104         [iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
4105         https://bugs.webkit.org/show_bug.cgi?id=192842
4106         <rdar://problem/46823586>
4107
4108         Reviewed by Tim Horton.
4109
4110         Adjusts an existing API test to verify that "com.apple.webarchive" is not one of the types registered to the
4111         item provider when dragging a rich text selection.
4112
4113         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
4114
4115 2018-12-18  David Quesada  <david_quesada@apple.com>
4116
4117         REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure
4118         https://bugs.webkit.org/show_bug.cgi?id=192810
4119         <rdar://problem/46812536>
4120
4121         Reviewed by Alex Christensen.
4122
4123         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4124         (-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
4125             After releasing our reference to the web view, wait until the next turn of the runloop
4126             before checking that the originatingWebView has been zeroed, since the web view might
4127             still be referenced in the autorelease pool. This _WKDownload unit test isn't about
4128             testing general memory management of WKWebViews, only that _WKDownload does not retain
4129             its web view via the 'originatingWebView' property.
4130
4131 2018-12-18  Sihui Liu  <sihui_liu@apple.com>
4132
4133         Clean up IndexedDB files between tests
4134         https://bugs.webkit.org/show_bug.cgi?id=192796
4135
4136         Reviewed by Geoffrey Garen.
4137
4138         * DumpRenderTree/mac/DumpRenderTree.mm:
4139         (runTest):
4140         * WebKitTestRunner/TestController.cpp:
4141         (WTR::TestController::resetStateToConsistentValues):
4142         (WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
4143         (WTR::RemoveAllIndexedDatabasesCallback):
4144         (WTR::TestController::ClearIndexedDatabases):
4145         * WebKitTestRunner/TestController.h:
4146
4147 2018-12-18  Alex Christensen  <achristensen@webkit.org>
4148
4149         Fix API test introduced in r239339 on iOS.
4150         https://bugs.webkit.org/show_bug.cgi?id=192675
4151
4152         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
4153         (TEST):
4154         The iOS implementation of the safe browsing warning is a little different.
4155         It does some element creation when it is added to the window so it knows how big it is.
4156         To test these elements, we need to simulate adding it to the window.
4157         A similar technique is done in other iOS API tests, such as SafeBrowsing.ShowWarningSPI.
4158
4159 2018-12-18  Jonathan Bedard  <jbedard@apple.com>
4160
4161         webkitpy: Ignore device type for test when using --force
4162         https://bugs.webkit.org/show_bug.cgi?id=192786
4163         <rdar://problem/46794894>
4164
4165         Reviewed by Daniel Bates.
4166
4167         It is sometimes the case that a contributor will wish to run a test on a specific device,
4168         despite expectations which indicate a test should not be run on that device.
4169
4170         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
4171         (parse_args):
4172         * Scripts/webkitpy/port/device_port.py:
4173         (DevicePort.default_child_processes): Strip device type information when using --force.
4174         (DevicePort.setup_test_run): Only allow incomplete match when using --force.
4175
4176 2018-12-18  Alex Christensen  <achristensen@webkit.org>
4177
4178         WKWebView has old URL while displaying SafeBrowsing interstitial, for link-click navigations
4179         https://bugs.webkit.org/show_bug.cgi?id=192675
4180
4181         Reviewed by Geoffrey Garen.
4182
4183         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
4184         (goBack):
4185         (TEST):
4186         (visitUnsafeSite):
4187         (-[SafeBrowsingHelper observeValueForKeyPath:ofObject:change:context:]):
4188         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
4189
4190 2018-12-18  Chris Dumez  <cdumez@apple.com>
4191
4192         Regression(r239182) SuspendedPage's process reuse for link navigation optimization sometimes broken
4193         https://bugs.webkit.org/show_bug.cgi?id=192772
4194
4195         Reviewed by Antti Koivisto.
4196
4197         Add API test coverage.
4198
4199         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4200
4201 2018-12-18  Philippe Normand  <pnormand@igalia.com>
4202
4203         Unreviewed, JHBuild GTK build fix attempt
4204
4205         * gtk/jhbuild.modules: There's no libffi in this moduleset anymore.
4206         There's no ninja module either, it should be provided by the
4207         host system.
4208
4209 2018-12-17  Chris Dumez  <cdumez@apple.com>
4210
4211         Allow passing nil as session state to [WKWebView _restoreSessionState:]
4212         https://bugs.webkit.org/show_bug.cgi?id=192789
4213         <rdar://problem/46755277>
4214
4215         Reviewed by Alex Christensen.
4216
4217         Add API test coverage.
4218
4219         * TestWebKitAPI/Tests/WebKit/WKBackForwardList.mm:
4220         (TEST):
4221
4222 2018-12-17  Simon Fraser  <simon.fraser@apple.com>
4223
4224         Don't use more expensive layer backing store formats when subpixel text antialiasing is not enabled
4225         https://bugs.webkit.org/show_bug.cgi?id=192780
4226         rdar://problem/43394387
4227
4228         Reviewed by Tim Horton.
4229
4230         No need to set "AppleFontSmoothing" defaults for WK2.
4231
4232         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
4233         (WTR::InjectedBundle::platformInitialize):
4234
4235 2018-12-17  Jonathan Bedard  <jbedard@apple.com>
4236
4237         webkitpy: Handle case where stdout and stderr don't accept unicode
4238         https://bugs.webkit.org/show_bug.cgi?id=192775
4239         <rdar://problem/46497303>
4240
4241         Reviewed by Stephanie Lewis.
4242
4243         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
4244         (MeteredStream.write): If unicode cannot be written to the stream, replace unicode
4245         characters with '?'.
4246         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
4247         (RegularTest.test_stream_with_encoding):
4248
4249 2018-12-17  Daniel Bates  <dabates@apple.com>
4250
4251         Support concatenating StringView with other string types
4252         https://bugs.webkit.org/show_bug.cgi?id=177566
4253
4254         Reviewed by Darin Adler.
4255
4256         Add some tests to ensure we do not regress the number of allocations needed when performing
4257         string concatenation with string views.
4258
4259         * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
4260         (TestWebKitAPI::TEST):
4261
4262 2018-12-17  Commit Queue  <commit-queue@webkit.org>
4263
4264         Unreviewed, rolling out r239265 and r239274.
4265         https://bugs.webkit.org/show_bug.cgi?id=192765
4266
4267         unorm_normalize is deprecated, and broke an internal build
4268         (Requested by Truitt on #webkit).
4269
4270         Reverted changesets:
4271
4272         "[GTK][WPE] Need a function to convert internal URI to display
4273         ("pretty") URI"
4274         https://bugs.webkit.org/show_bug.cgi?id=174816
4275         https://trac.webkit.org/changeset/239265
4276
4277         "Fix the Apple Internal Mac build with a newer SDK"
4278         https://trac.webkit.org/changeset/239274
4279
4280 2018-12-17  Daniel Bates  <dabates@apple.com>
4281
4282         Implement UIScriptController::toggleCapsLock() for iOS
4283         https://bugs.webkit.org/show_bug.cgi?id=191815
4284
4285         Reviewed by Andy Estes.
4286