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