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