[Mac] Allow customizing H264 encoder
[WebKit.git] / Tools / ChangeLog
1 2017-04-19  Youenn Fablet  <youenn@apple.com>
2
3         [Mac] Allow customizing H264 encoder
4         https://bugs.webkit.org/show_bug.cgi?id=170829
5
6         Reviewed by Alex Christensen.
7
8         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
9
10 2017-04-19  Brady Eidson  <beidson@apple.com>
11
12         Add asynchronous equivalent of -[<WKUIDelegate> webView:createWebViewWithConfiguration:...].
13         <rdar://problem/30699851> and https://bugs.webkit.org/show_bug.cgi?id=171018
14
15         Reviewed by Tim Horton.
16
17         * TestWebKitAPI/Tests/WebKit2Cocoa/OpenAndCloseWindow.mm:
18         (TEST):
19         (-[OpenAndCloseWindowUIDelegateAsync webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
20         (-[OpenAndCloseWindowUIDelegateAsync _webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:completionHandler:]):
21
22 2017-04-19  Brady Eidson  <beidson@apple.com>
23
24         REGRESSION (r213168): An extra Web Content process is spun up on launch and is never closed.
25         <rdar://problem/30774839> and https://bugs.webkit.org/show_bug.cgi?id=171002
26
27         Reviewed by Alex Christensen.
28
29         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
30         * TestWebKitAPI/Tests/WebKit2Cocoa/InitialWarmedProcessUsed.mm: Added.
31
32 2017-04-19  Brent Fulgham  <bfulgham@apple.com>
33
34         [WK2] Run tests with ResourceLoadStatistics enabled
35         https://bugs.webkit.org/show_bug.cgi?id=170952
36
37         Reviewed by Andy Estes.
38
39         Excercise the load statistics code during tests.
40
41         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
42         (WTR::initializeWebViewConfiguration):
43
44 2017-04-19  Bill Ming  <mbbill@gmail.com>
45
46         close_fds should be set to False on Windows.
47         https://bugs.webkit.org/show_bug.cgi?id=170838
48
49         Reviewed by Brent Fulgham.
50
51         * Scripts/webkitpy/common/system/executive.py:
52         (Executive._should_close_fds):
53
54 2017-04-19  David Kilzer  <ddkilzer@apple.com>
55
56         Stop using strcpy() in WebKit::EnvironmentUtilities::stripValuesEndingWithString()
57         <https://webkit.org/b/170994>
58         <rdar://problem/29889932>
59
60         Reviewed by Brent Fulgham.
61
62         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
63         (EnvironmentUtilitiesTest.cpp): Add to TestWebKitAPILibrary
64         target.
65         * TestWebKitAPI/Tests/WebKit2/EnvironmentUtilitiesTest.cpp: Add.
66         (TestWebKitAPI::strip): Helper method to set/get environment
67         variable for testing.
68         (TestWebKitAPI::WebKit2_StripValuesEndingWithString_Test): Add
69         tests.
70
71 2017-04-19  JF Bastien  <jfbastien@apple.com>
72
73         WebAssembly: add script which can import GCC torture tests
74         https://bugs.webkit.org/show_bug.cgi?id=170740
75
76         Reviewed by Saam Barati.
77
78         Add a script which can import the GCC torture tests and create a
79         yaml file to run them as part of jsc's WebAssembly regression
80         tests.
81
82         This patch doesn't commit the tests themselves because they're
83         licensed differently.
84
85         * Scripts/run-jsc-stress-tests: learn how to run
86         Emscripten-generated .js+.wasm files, and do a bit of cleanup on
87         the options because WebAssembly is enabled by default.
88         * Scripts/update-wasm-gcc-torture.py: Added.
89         (parse_args):
90         (update_lkgr):
91         (untar_torture):
92         (list_js_files):
93         (waterfall_known_failures):
94         (create_yaml):
95         (main):
96
97 2017-04-19  Youenn Fablet  <youenn@apple.com>
98
99         Import web-platform-tests/tools
100         https://bugs.webkit.org/show_bug.cgi?id=170718
101
102         Reviewed by Alex Christensen.
103
104         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
105         (main):
106         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
107         (WebPlatformTestServer.ports_to_forward):
108         (WebPlatformTestServer._prepare_config):
109         (WebPlatformTestServer._install_modules): Deleted.
110         * Scripts/webkitpy/w3c/test_importer.py:
111         (TestImporter.write_html_files_for_templated_js_tests):
112
113 2017-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
114
115         [WK2] Add infrastructure and unit tests for file uploads using data interaction
116         https://bugs.webkit.org/show_bug.cgi?id=170903
117         <rdar://problem/31314689>
118
119         Reviewed by Tim Horton.
120
121         Adds 5 new unit tests covering different cases of uploading files through data interaction, as well as
122         infrastructure for simulating UIItemProviders that load file data. Makes a few adjustments to the
123         DataInteractionSimulator along the way, detailed in the per-method annotations below. See
124         <https://bugs.webkit.org/show_bug.cgi?id=170880> for more details about the change this patch is testing.
125
126         New tests:
127         DataInteractionTests.ExternalSourceImageToFileInput
128         DataInteractionTests.ExternalSourceHTMLToUploadArea
129         DataInteractionTests.ExternalSourceImageAndHTMLToSingleFileInput
130         DataInteractionTests.ExternalSourceImageAndHTMLToMultipleFileInput
131         DataInteractionTests.ExternalSourceImageAndHTMLToUploadArea
132
133         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
134         (testIconImage):
135         (temporaryURLForDataInteractionFileLoad):
136         (cleanUpDataInteractionTemporaryPath):
137
138         Creates and tears down temporary file directories for testing data interaction.
139
140         (-[UIItemProvider registerFileRepresentationForTypeIdentifier:withData:filename:]):
141         (TestWebKitAPI::TEST):
142         * TestWebKitAPI/ios/DataInteractionSimulator.h:
143         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
144
145         Make necessary changes to be able to test what happens when data interaction ends over an element with no
146         operation. Previously, we would always simulate performing a data interaction operation when ending the
147         simulation, but this causes us to wait indefinitely for a data operation response to arrive in the UI process.
148         Instead, we need to note whether or not the content view is allowing data interaction, and only perform an
149         operation and wait for the -didPerform call if the operation was allowed. Otherwise, we immediately transition
150         the phase to Cancelled and end the run.
151
152         (-[DataInteractionSimulator _resetSimulatedState]):
153         (-[DataInteractionSimulator runFrom:to:]):
154         (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
155         (-[DataInteractionSimulator _advanceProgress]):
156         (-[DataInteractionSimulator externalItemProviders]):
157         (-[DataInteractionSimulator setExternalItemProviders:]):
158
159         Previously, we hard-coded DataInteractionSimulator to only support a single external item provider. In order to
160         test the scenario where multiple files are being "data interacted" into a file-type input, we generalize this to
161         take multiple item providers.
162
163         (-[DataInteractionSimulator externalItemProvider]): Deleted.
164         (-[DataInteractionSimulator setExternalItemProvider:]): Deleted.
165
166 2017-04-18  John Wilander  <wilander@apple.com>
167
168         Make WebCore::topPrivatelyControlledDomain() return "localhost" for localhost
169         https://bugs.webkit.org/show_bug.cgi?id=170798
170         <rdar://problem/31595108>
171
172         Reviewed by Alex Christensen.
173
174         * TestWebKitAPI/Tests/mac/PublicSuffix.mm:
175         (TestWebKitAPI::TEST_F):
176             Added two negative test cases for WebCore::isPublicSuffix().
177             Added test cases with mixed case domains, localhost, and
178             non-ASCII for WebCore::topPrivatelyControlledDomain().
179
180 2017-04-18  Jonathan Bedard  <jbedard@apple.com>
181
182         Unreviewed, rolling out r215346 and 215361.
183
184         The problem these changes were fixing was addressed in
185         <https://trac.webkit.org/changeset/215416/webkit>.
186
187         Reverted changesets:
188
189         "webkitpy: Ignore previously launched pid when system is under
190         stress"
191         https://bugs.webkit.org/show_bug.cgi?id=170741
192         http://trac.webkit.org/changeset/215346
193         http://trac.webkit.org/changeset/215361
194
195 2017-04-17  Alex Christensen  <achristensen@webkit.org>
196
197         Allow Variants of RetainPtrs
198         https://bugs.webkit.org/show_bug.cgi?id=170923
199
200         Reviewed by Tim Horton and Sam Weinig.
201
202         * TestWebKitAPI/Tests/WTF/Variant.cpp:
203         (TestWebKitAPI::TEST):
204         Add tests for RetainPtr and for another class with overloaded operator& to verify such classes can
205         work in Variants.
206
207 2017-04-17  Brady Eidson  <beidson@apple.com>
208
209         Make WKHTTPCookieStore public.
210         <rdar://problem/31024691> and https://bugs.webkit.org/show_bug.cgi?id=170920
211
212         Reviewed by Geoffrey Garen.
213
214         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
215         (TEST):
216
217 2017-04-17  Youenn Fablet  <youenn@apple.com>
218
219         Disable outdated WritableStream API
220         https://bugs.webkit.org/show_bug.cgi?id=170749
221         <rdar://problem/31446233>
222
223         Reviewed by Alex Christensen.
224
225         Replacing READABLE_STREAM_API, READABLE_BYTE_STREAM_API and WRITABLE_STREAM_API compilation flag by:
226         - A STREAMS_API compilation flag.
227         - A ReadableByteStreamAPI and WritableStreamAPI runtime flags, turned off except for RWT and DRT.
228
229         * DumpRenderTree/mac/DumpRenderTree.mm:
230         (enableExperimentalFeatures):
231         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
232         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
233         (WTR::InjectedBundle::beginTesting):
234         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
235         (WTR::TestRunner::setFetchAPIEnabled):
236         (WTR::TestRunner::setWritableStreamAPIEnabled):
237         (WTR::TestRunner::setReadableByteStreamAPIEnabled):
238         * WebKitTestRunner/InjectedBundle/TestRunner.h:
239
240 2017-04-17  Tim Horton  <timothy_horton@apple.com>
241
242         Provide a viewport parameter to disable clipping to the safe area
243         https://bugs.webkit.org/show_bug.cgi?id=170766
244         <rdar://problem/31564634>
245
246         Reviewed by Beth Dakin.
247
248         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
249         (WTR::UIScriptController::setObscuredInsets):
250         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
251         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
252         (WTR::UIScriptController::setObscuredInsets):
253         * TestRunnerShared/UIScriptContext/UIScriptController.h:
254         * WebKitTestRunner/ios/TestControllerIOS.mm:
255         (WTR::TestController::platformResetStateToConsistentValues):
256         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
257         (WTR::UIScriptController::setObscuredInsets):
258         Add a UIScriptController mechanism to install obscured insets
259         on the web view.
260
261 2017-04-17  Dan Bernstein  <mitz@apple.com>
262
263         [Cocoa] Move isNullFunctionPointer down into WTF
264         https://bugs.webkit.org/show_bug.cgi?id=170892
265
266         Reviewed by Sam Weinig.
267
268         * TestWebKitAPI/Configurations/TestWTF.xcconfig:
269         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
270         * TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp: Added.
271         (TestWebKitAPI::TEST):
272         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd: Added.
273         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS.tbd: Added.
274         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS-v2.tbd: Added.
275         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS.tbd: Added.
276
277 2017-04-17  Jonathan Bedard  <jbedard@apple.com>
278
279         webkitpy: Correct poll when killing ServerProcess
280
281         Unreviewed infrastructure fix.
282
283         * Scripts/webkitpy/port/server_process.py:
284         (ServerProcess._kill): A polled process equaling 'None' means the process is running.
285
286 2017-04-17  Eric Carlson  <eric.carlson@apple.com>
287
288         [MediaStream] Enable getUserMedia API test
289         https://bugs.webkit.org/show_bug.cgi?id=170901
290         <rdar://problem/31656594>
291
292         Reviewed by Youenn Fablet.
293
294         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test.
295
296         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
297         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
298         (TestWebKitAPI::TEST): Enable capture with mock devices.
299         * TestWebKitAPI/Tests/WebKit2/getUserMedia.html: Update to mediaDevices.getUserMedia
300
301 2017-04-17  Xan Lopez  <xan@igalia.com>
302
303         [GTK] Update the Fedora dependencies for WebKitGTK+
304         https://bugs.webkit.org/show_bug.cgi?id=170590
305
306         Reviewed by Carlos Alberto Lopez Perez.
307
308         * gtk/install-dependencies: add a bunch of modules necessary to
309         get a proper set of GStreamer codecs for WebRTC.
310
311 2017-04-16  Sam Weinig  <sam@webkit.org>
312
313         [WebIDL] Switch IDLAttributes.txt over to a more structured format so that more information can be added for each attribute
314         https://bugs.webkit.org/show_bug.cgi?id=170843
315
316         Reviewed by Chris Dumez.
317
318         * DumpRenderTree/DerivedSources.make:
319         * WebKitTestRunner/DerivedSources.make:
320         * Scripts/webkitpy/bindings/main.py:
321         (BindingsTests.generate_from_idl):
322         Pass IDLAttributes.json, as it is now mandatory to have one.
323
324 2017-04-14  Mark Lam  <mark.lam@apple.com>
325
326         Update architectures in xcconfig files.
327         https://bugs.webkit.org/show_bug.cgi?id=170867
328         <rdar://problem/31628104>
329
330         Reviewed by Joseph Pecoraro.
331
332         * DumpRenderTree/mac/Configurations/Base.xcconfig:
333         * MobileMiniBrowser/Configurations/Base.xcconfig:
334         * TestWebKitAPI/Configurations/Base.xcconfig:
335         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
336         * WebKitTestRunner/Configurations/Base.xcconfig:
337
338 2017-04-14  Brady Eidson  <beidson@apple.com>
339
340         Fix basic WKURLSchemeHandler bugs.
341         <rdar://problem/30647559> and https://bugs.webkit.org/show_bug.cgi?id=170862
342
343         Reviewed by Andy Estes.
344
345         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
346         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm: Added.
347         (-[SchemeHandler initWithData:mimeType:]):
348         (-[SchemeHandler dealloc]):
349         (-[SchemeHandler webView:startTask:]):
350         (-[SchemeHandler webView:stopTask:]):
351         (TEST):
352
353 2017-04-14  Bill Ming  <mbbill@gmail.com>
354
355         webkit-patch failed to detect git repository
356         https://bugs.webkit.org/show_bug.cgi?id=170859
357
358         Reviewed by Daniel Bates.
359
360         Windows cmd does not accept single quoted path. So, using
361         double quotes here will provide better platform compatibility.
362
363         * Scripts/VCSUtils.pm:
364         (isGitDirectory):
365         (isGitSVNDirectory):
366         (svnRevisionForDirectory):
367         (svnInfoForPath):
368
369 2017-04-14  Ryan Haddad  <ryanhaddad@apple.com>
370
371         Unreviewed, rolling out r215374.
372
373         This change causes LayoutTests to exit early with crashes on
374         Sierra.
375
376         Reverted changeset:
377
378         "webkitpy: Ignore previously launched pid when system is under
379         stress"
380         https://bugs.webkit.org/show_bug.cgi?id=170741
381         http://trac.webkit.org/changeset/215374
382
383 2017-04-14  Dan Bernstein  <mitz@apple.com>
384
385         [ios-simulator] API test WebKit2.AdditionalReadAccessAllowedURLs is failing
386         https://bugs.webkit.org/show_bug.cgi?id=170856
387
388         Disabled the newly-added test in the Simulator, which doesn’t enforce sandboxing.
389
390         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
391
392 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
393
394         webkitpy: Ignore previously launched pid when system is under stress
395         https://bugs.webkit.org/show_bug.cgi?id=170741
396
397         Unreviewed infrastructure fix.
398
399         Drivers are destroyed between failing layout tests, which is not necessary and
400         prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
401
402         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
403         (Worker._kill_driver): Do not destroy drivers when they are stopped.
404         * Scripts/webkitpy/port/driver.py:
405         (Driver.stop): Reset driver values set in initializer.
406
407 2017-04-14  Andy Estes  <aestes@apple.com>
408
409         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
410         https://bugs.webkit.org/show_bug.cgi?id=167594
411
412         Re-enabled this API test now that webkit.org/b/161967 is fixed.
413
414         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
415         (TEST):
416
417 2017-04-14  Andy Estes  <aestes@apple.com>
418
419         [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
420         https://bugs.webkit.org/show_bug.cgi?id=161967
421
422         Reviewed by Alexey Proskuryakov.
423
424         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
425         (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
426
427 2017-04-14  Ryan Haddad  <ryanhaddad@apple.com>
428
429         Unreviewed, rolling out r215363.
430
431         This change causes LayoutTests to exit early with crashes.
432
433         Reverted changeset:
434
435         "webkitpy: Ignore previously launched pid when system is under
436         stress"
437         https://bugs.webkit.org/show_bug.cgi?id=170741
438         http://trac.webkit.org/changeset/215363
439
440 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
441
442         webkitpy: Ignore previously launched pid when system is under stress
443         https://bugs.webkit.org/show_bug.cgi?id=170741
444
445         Unreviewed infrastructure fix.
446
447         Drivers are destroyed between failing layout tests, which is not necessary and
448         prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
449
450         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
451         (Worker._kill_driver): Do not destroy drivers when they are stopped.
452
453 2017-04-14  Jonathan Bedard  <jbedard@apple.com>
454
455         webkitpy: Ignore previously launched pid when system is under stress
456         https://bugs.webkit.org/show_bug.cgi?id=170741
457
458         Unreviewed infrastructure fix.
459
460         Server processes are destroyed in the driver, which is not necessary and prevents
461         the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
462
463         * Scripts/webkitpy/port/driver.py:
464         (Driver.run_test): Do not destroy server process.
465         (Driver._start): Only create the server process if it is None.
466         (Driver.stop): Do not destroy server process.
467
468 2017-04-13  Dan Bernstein  <mitz@apple.com>
469
470         [Cocoa] Allow clients to specify in _WKProcessPoolConfiguration additional directory sandbox extensions
471         https://bugs.webkit.org/show_bug.cgi?id=170387
472
473         Reviewed by Sam Weinig.
474
475         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
476         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm: Added.
477         (TEST):
478         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsPlugin.mm: Added.
479         (-[AdditionalReadAccessAllowedURLsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
480         (-[AdditionalReadAccessAllowedURLsPlugIn dealloc]):
481         (-[AdditionalReadAccessAllowedURLsPlugIn readStringFromURL:completionHandler:]):
482         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLsProtocol.h: Added.
483
484 2017-04-13  Jonathan Bedard  <jbedard@apple.com>
485
486         webkitpy: Ignore previously launched pid when system is under stress
487         https://bugs.webkit.org/show_bug.cgi?id=170741
488
489         Reviewed by David Kilzer.
490
491         We have seen cases where xcrun simctl launch will return a pid of a previous
492         process and the process will appear to be running even though it is crashing.
493         Ensure that the PID that simulator_process is receiving is not the pid of the
494         previously run process.
495
496         * Scripts/webkitpy/port/simulator_process.py:
497         (SimulatorProcess._start): Check to make sure we aren't receiving an old PID.
498
499 2017-04-13  Jonathan Bedard  <jbedard@apple.com>
500
501         Build ImageDiff with host SDK
502         https://bugs.webkit.org/show_bug.cgi?id=168531
503
504         Reviewed by David Kilzer.
505
506         ImageDiff should be built and run with the host SDK, not the target SDK.
507         Build ImageDiff twice, once for the target SDK and once for the host
508         as an intermediate step towards building for only the host SDK.
509
510         * ImageDiff/Makefile: Added.
511         * Makefile: Add ImageDiff to list of targets.
512         * Scripts/build-imagediff: Build bmalloc and WTF for the host.
513         * Scripts/build-webkit: Build ImageDiff for host.
514         * Scripts/webkitdirs.pm: Export extractNonMacOSHostConfiguration.
515         (extractNonMacOSHostConfiguration): Remove non-host configuration data from the array.
516         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Added.
517         * Scripts/webkitpy/port/base.py:
518         (Port.check_build): Attempt to build image diff if not found.
519         (Port.check_image_diff): Enable logging flag.
520         (Port._build_image_diff): Allow webkitpy to build image-diff during testing.
521
522 2017-04-12  Alex Christensen  <achristensen@webkit.org>
523
524         Clean up SharedBuffer public functions
525         https://bugs.webkit.org/show_bug.cgi?id=170795
526
527         Reviewed by Andreas Kling.
528
529         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
530         (TestWebKitAPI::TEST_F):
531
532 2017-04-12  Dan Bernstein  <mitz@apple.com>
533
534         [Mac] Future-proof .xcconfig files
535         https://bugs.webkit.org/show_bug.cgi?id=170802
536
537         Reviewed by Tim Horton.
538
539         * DumpRenderTree/mac/Configurations/Base.xcconfig:
540         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
541         * MiniBrowser/Configurations/Base.xcconfig:
542         * MiniBrowser/Configurations/DebugRelease.xcconfig:
543         * TestWebKitAPI/Configurations/Base.xcconfig:
544         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
545         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
546         * WebKitTestRunner/Configurations/Base.xcconfig:
547         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
548
549 2017-04-12  Alex Christensen  <achristensen@webkit.org>
550
551         Remove unused SharedBuffer::wrapCFDataArray
552         https://bugs.webkit.org/show_bug.cgi?id=170794
553
554         Reviewed by Brady Eidson.
555
556         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
557         (TestWebKitAPI::TEST_F):
558
559 2017-04-12  Yusuke Suzuki  <utatane.tea@gmail.com>
560
561         [WTF] Introduce Thread class and use RefPtr<Thread> and align Windows Threading implementation semantics to Pthread one
562         https://bugs.webkit.org/show_bug.cgi?id=170502
563
564         Reviewed by Mark Lam.
565
566         Mechanical change. Use Thread:: APIs.
567
568         * DumpRenderTree/JavaScriptThreading.cpp:
569         (runJavaScriptThread):
570         (startJavaScriptThreads):
571         (stopJavaScriptThreads):
572         * DumpRenderTree/mac/DumpRenderTree.mm:
573         (testThreadIdentifierMap):
574         * TestWebKitAPI/Tests/WTF/Condition.cpp:
575         * TestWebKitAPI/Tests/WTF/Lock.cpp:
576         (TestWebKitAPI::runLockTest):
577         * TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
578
579 2017-04-12  Alex Christensen  <achristensen@webkit.org>
580
581         Modernize vector adoption
582         https://bugs.webkit.org/show_bug.cgi?id=170758
583
584         Reviewed by Geoffrey Garen.
585
586         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
587         (TestWebKitAPI::TEST_F):
588
589 2017-04-11  Dean Jackson  <dino@apple.com>
590
591         Disable outdated WritableStream API
592         https://bugs.webkit.org/show_bug.cgi?id=170749
593         <rdar://problem/31446233>
594
595         Reviewed by Tim Horton.
596
597         The API we implement is no longer accurate. Disable it until we
598         are compatible with the new specification
599
600         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
601
602 2017-04-11  David Quesada  <david_quesada@apple.com>
603
604         Add SPI for handling geolocation authorization requests
605         https://bugs.webkit.org/show_bug.cgi?id=170362
606         rdar://problem/17508627
607
608         Reviewed by Alex Christensen.
609
610         Add API tests for the new WKUIDelegate SPI for allowing or denying websites permission
611         to use geolocation. Adopt the new WKProcessPool._coreLocationProvider property to
612         provide a stub object to simulate the various configurations of geolocation permissions:
613         1. The app doesn't have permission to use geolocation.
614         2. The app is allowed to use geolocation, but the UI delegate denies the web view permission.
615         3. The app is allowed to use geolocation, and the UI delegate allows the web view permission.
616
617         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
618         * TestWebKitAPI/Tests/WebKit2Cocoa/Geolocation.mm: Added.
619         (-[TestCoreLocationProvider setListener:]):
620         (-[TestCoreLocationProvider requestGeolocationAuthorization]):
621         (-[TestCoreLocationProvider start]):
622         (-[TestCoreLocationProvider stop]):
623         (-[TestCoreLocationProvider setEnableHighAccuracy:]):
624         (expectException):
625         (-[GeolocationTestUIDelegate _webView:requestGeolocationAuthorizationForURL:frame:decisionHandler:]):
626         (-[GeolocationTestUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
627         (TestWebKitAPI::TEST):
628         * TestWebKitAPI/Tests/WebKit2Cocoa/GeolocationGetCurrentPositionResult.html: Added.
629
630 2017-04-10  Matt Rajca  <mrajca@apple.com>
631
632         Change autoplay state to "prevented" when media is paused due to restrictions.
633         https://bugs.webkit.org/show_bug.cgi?id=170686
634
635         Reviewed by Alex Christensen.
636
637         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
638         * TestWebKitAPI/Tests/WebKit2/autoplay-muted-with-controls.html: Added test.
639         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
640         (TEST):
641
642 2017-04-11  Yusuke Suzuki  <utatane.tea@gmail.com>
643
644         [WebCore][JSC] ResourceUsageData.{timeOfNextEdenCollection,timeOfNextFullCollection} should be MonotonicTime
645         https://bugs.webkit.org/show_bug.cgi?id=170725
646
647         Reviewed by Sam Weinig.
648
649         * TestWebKitAPI/Tests/WTF/Time.cpp:
650         (TestWebKitAPI::TEST):
651
652 2017-04-10  Alex Christensen  <achristensen@webkit.org>
653
654         Revert r215217
655         https://bugs.webkit.org/show_bug.cgi?id=170703
656
657         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
658
659 2017-04-10  Alex Christensen  <achristensen@webkit.org>
660
661         Continue enabling WebRTC
662         https://bugs.webkit.org/show_bug.cgi?id=170703
663
664         Reviewed by Youenn Fablet.
665
666         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
667
668 2017-04-10  Kocsen Chung  <kocsen_chung@apple.com>
669
670         Have parseRevisionProperty use default repo name as the Buildbot key.
671         https://bugs.webkit.org/show_bug.cgi?id=170696
672
673         Reviewed by Daniel Bates.
674
675         Previously, we needed to set a key and a fallbackKey when addressing
676         Buildbot data for Internal. That is no longer necessary as we can make a safe assumption
677         that the repo name maps exactly to that key for every repository other
678         than WebKit.
679
680         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
681         Set `key = repositoryName` and only use fallback keys when dealing with WebKit.
682
683 2017-04-10  Aakash Jain  <aakash_jain@apple.com>
684
685         Add test262 JavaScriptCore tests to dashboard
686         https://bugs.webkit.org/show_bug.cgi?id=170711
687
688         Rubber-stamped by Joseph Pecoraro.
689
690         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
691         (WebKitBuildbot): Added test262 JSC tests to dashboard.
692
693 2017-04-10  Alex Christensen  <achristensen@webkit.org>
694
695         REGRESSION(r195479) First main resource load in new WebProcess bypasses content extensions
696         https://bugs.webkit.org/show_bug.cgi?id=170707
697         <rdar://problem/27788755>
698
699         Reviewed by Tim Horton.
700
701         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
702         (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
703         (TEST_F):
704         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
705         (-[ContentBlockingWebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
706         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
707         (TEST):
708
709 2017-04-10  Alex Christensen  <achristensen@webkit.org>
710
711         Add API to get available content extension identifiers in a WKContentExtensionStore
712         https://bugs.webkit.org/show_bug.cgi?id=170093
713
714         Reviewed by Geoffrey Garen.
715
716         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm:
717         (TEST_F):
718
719 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
720
721         Refactor DataInteractionTests.UnresponsivePageDoesNotHangUI to not check against a fixed time interval
722         https://bugs.webkit.org/show_bug.cgi?id=170658
723
724         Reviewed by Tim Horton.
725
726         Uses ignoreSynchronousMessagingTimeoutsForTesting to ensure that this test times out if data interaction
727         preparation is synchronous, or passes if it is asynchronous.
728
729         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
730         (TestWebKitAPI::TEST):
731         * TestWebKitAPI/cocoa/TestWKWebView.h:
732         * TestWebKitAPI/cocoa/TestWKWebView.mm:
733         (-[TestWKWebView initWithFrame:]):
734         (-[TestWKWebView initWithFrame:configuration:processPoolConfiguration:]):
735         (-[TestWKWebView _setUpTestWindow:]):
736
737 2017-04-10  Brent Fulgham  <bfulgham@apple.com>
738
739         [WK2][macOS] Block access to Apple Events before launch.
740         https://bugs.webkit.org/show_bug.cgi?id=170626
741         <rdar://problem/16079334>
742
743         Reviewed by Alexey Proskuryakov.
744
745         Add a new TestWebKitAPI test that fails if Apple Events are sent.
746
747         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
748         * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent.cpp: Added.
749         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
750         (TestWebKitAPI::didFinishLoadForFrame):
751         (TestWebKitAPI::TEST):
752         * TestWebKitAPI/Tests/WebKit2/mac/InjectedBundleAppleEvent_Bundle.cpp: Added.
753         (TestWebKitAPI::InjectedBundleAppleEventTest::InjectedBundleAppleEventTest):
754         (TestWebKitAPI::InjectedBundleAppleEventTest::didCreatePage):
755
756 2017-04-10  Guillaume Emont  <guijemont@igalia.com>
757
758         [JSC] Do not run FTL stress tests on MIPS
759         https://bugs.webkit.org/show_bug.cgi?id=170684
760
761         Reviewed by Carlos Alberto Lopez Perez.
762
763         run-jsc-stress-tests does not correctly detect MIPS platforms, and its
764         logic to detect if the platform supports FTL ignores that MIPS does
765         not support FTL. This adds detection of MIPS (with the magic number
766         determined empirically) and fixes the determination of whether we
767         support FTL.
768
769         * Scripts/run-jsc-stress-tests:
770
771 2017-04-10  Jonathan Bedard  <jbedard@apple.com>
772
773         webkitpy: Increase estimate for processes run by iOS Simulators
774         https://bugs.webkit.org/show_bug.cgi?id=170678
775         <rdar://problem/31534061>
776
777         Reviewed by Aakash Jain.
778
779         Previously, it was estimated that each simulated iOS device would run about 100
780         processes.  With newer versions of iOS, this is closer to 125.
781
782         * Scripts/webkitpy/port/ios_simulator.py:
783         (IOSSimulatorPort): Increase process estimate from 100 to 125.
784
785 2017-04-10  Adrian Perez de Castro  <aperez@igalia.com>
786
787         [GTK] Misplaced right click menu on web page due to deprecated gtk_menu_popup()
788         https://bugs.webkit.org/show_bug.cgi?id=170553
789
790         Reviewed by Michael Catanzaro.
791
792         Use gtk_menu_popup_at_pointer() and gtk_menu_popup_at_rect() when
793         building with GTK+ 3.22 or newer. This allows the Wayland GTK+ backend
794         to properly position popup menus, and also avoids using functions
795         which were deprecated starting at that GTK+ release.
796
797         * MiniBrowser/gtk/BrowserSearchBar.c:
798         (searchEntryMenuIconPressedCallback):
799         Update MiniBrowser to use gtk_menu_popup_at_pointer().
800
801 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
802
803         REGRESSION (r214403): fast/events/drag-to-navigate.html and fast/events/only-valid-drop-targets-receive-file-drop.html failing
804         https://bugs.webkit.org/show_bug.cgi?id=170677
805         <rdar://problem/31512633>
806
807         Reviewed by Tim Horton.
808
809         Fixes two drag and drop LayoutTests by introducing and enabling a TestOptions switch (enableDragDestinationActionLoad)
810         to allow dropping URLs to trigger page navigation.
811
812         * DumpRenderTree/TestOptions.h:
813         * DumpRenderTree/TestOptions.mm:
814         (TestOptions::TestOptions):
815         * DumpRenderTree/mac/DumpRenderTree.mm:
816         (resetWebViewToConsistentStateBeforeTesting):
817         * DumpRenderTree/mac/UIDelegate.h:
818         * DumpRenderTree/mac/UIDelegate.mm:
819         (-[UIDelegate resetToConsistentStateBeforeTesting:]):
820         (-[UIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
821
822 2017-04-10  Fujii Hironori  <Hironori.Fujii@sony.com>
823
824         update-webkit-dependency should report $response->message for diagnose
825         https://bugs.webkit.org/show_bug.cgi?id=170666
826
827         Reviewed by Alex Christensen.
828
829         * Scripts/update-webkit-dependency: Print $response->message to STDERR if an error happens.
830
831 2017-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
832
833         Data interaction on an image enclosed by an anchor should vend the anchor's URL
834         https://bugs.webkit.org/show_bug.cgi?id=170660
835         <rdar://problem/31043220>
836
837         Reviewed by Tim Horton.
838
839         Adds two new unit tests covering cases where data interaction is triggered from an image nested underneath an
840         anchor. In one of the tests, the link has an href, and in the other, its href is missing, in which case we
841         should fall back to the image URL instead. Also fixes a related unit test that was trying to check selection
842         rects, but should not be.
843
844         See WebCore ChangeLog for more details.
845
846         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
847         * TestWebKitAPI/Tests/WebKit2Cocoa/image-in-link-and-input.html: Added.
848         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
849         (TestWebKitAPI::TEST):
850
851 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
852
853         [GTK] Remove the GDK dependency from ImageDiff
854         https://bugs.webkit.org/show_bug.cgi?id=85299
855
856         Reviewed by Žan Doberšek.
857
858         Add a cairo only implementation of ImageDiff. We currently have 3 different implementations of ImageDiff: the
859         Gdk based one used by GTK+ port, the cairo based one used by WinCairo and the CG based one. Most of the code is
860         actually common in all of them, but it's duplicated. So, I've taken advantage of this patch to refactor the
861         ImageDiff code to share the common implementation. This patch adds the cross-platform code, and the cairo
862         implementation and enables it in the GTK+ port. In follow up patches we can move WinCairo to this implementation
863         and also add CG implementation.
864
865         * ImageDiff/CMakeLists.txt:
866         * ImageDiff/Cairo.cmake: Added.
867         * ImageDiff/ImageDiff.cpp: Added.
868         (main):
869         * ImageDiff/PlatformGTK.cmake:
870         * ImageDiff/PlatformImage.cpp: Added.
871         (ImageDiff::PlatformImage::isCompatible):
872         (ImageDiff::PlatformImage::difference):
873         * ImageDiff/PlatformImage.h: Added.
874         * ImageDiff/cairo/PlatformImageCairo.cpp: Added.
875         (ImageDiff::PlatformImage::createFromStdin):
876         (ImageDiff::PlatformImage::createFromDiffData):
877         (ImageDiff::PlatformImage::PlatformImage):
878         (ImageDiff::PlatformImage::~PlatformImage):
879         (ImageDiff::PlatformImage::width):
880         (ImageDiff::PlatformImage::height):
881         (ImageDiff::PlatformImage::rowBytes):
882         (ImageDiff::PlatformImage::hasAlpha):
883         (ImageDiff::PlatformImage::pixels):
884         (ImageDiff::PlatformImage::writeAsPNGToStdout):
885         * ImageDiff/gtk/ImageDiff.cpp: Removed.
886
887 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
888
889         REGRESSION(r214426): [GTK] Test media/video-click-dblckick-standalone.html started to fail in the bots after r214426
890         https://bugs.webkit.org/show_bug.cgi?id=170667
891
892         Reviewed by Žan Doberšek.
893
894         In r214666 we disabled modern media controls runtime feature for the GTK+ port, but layout tests still override
895         that value.
896
897         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
898         (WTR::TestController::updatePlatformSpecificTestOptionsForTest): Disable modern media controls.
899
900 2017-04-10  Carlos Garcia Campos  <cgarcia@igalia.com>
901
902         WTR: Avoid conversion from platform image to WKImage and then to platform image again when dumping pixel results
903         https://bugs.webkit.org/show_bug.cgi?id=170653
904
905         Reviewed by Tim Horton.
906
907         When dumping pixels from a web view snapshot, we create a platform image that is then converted to a WKImage,
908         which is a ShareableBitmap, so the image is rendered into a graphics context. Then we immediately extract the
909         platform image back from the WKImage to dump the pixels. We could avoid that conversion by taking the web
910         snapshot from TestInvocation::dumpPixelsAndCompareWithExpected().
911
912         * WebKitTestRunner/PlatformWebView.h: Add PlatformImage typedef and use it as return value of windowSnapshotImage().
913         * WebKitTestRunner/TestInvocation.cpp:
914         (WTR::TestInvocation::dumpResults): Pass the WKImage to dumpPixelsAndCompareWithExpected() only when pixel
915         results were created in the web process.
916         * WebKitTestRunner/TestInvocation.h: Make WKImage a default paramater of dumpPixelsAndCompareWithExpected().
917         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
918         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the cairo surface from the given WKimage in case
919         of web contents snapshot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
920         * WebKitTestRunner/cg/TestInvocationCG.cpp:
921         (WTR::createCGContextFromCGImage): Changed to receive a CGImageRef and renamed.
922         (WTR::createCGContextFromImage): Get the CGImageRef from the WKImage and call createCGContextFromCGImage().
923         (WTR::paintRepaintRectOverlay): It receives now the image size instead of the WKImage.
924         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create the CGContextRef from the WKImage in case of web
925         contents snpashot, and use PlatformWebView::windowSnapshotImage() in case of web view snapshot.
926         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
927         (WTR::PlatformWebView::windowSnapshotImage): Return the cairo surface instead of creating a WKImage. Also use
928         RGB24 format to match what mac does (kCGWindowImageShouldBeOpaque).
929         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
930         (WTR::PlatformWebView::windowSnapshotImage): Return the CGImageRef instead of creating a WKImage.
931         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
932         (WTR::PlatformWebView::windowSnapshotImage): Ditto.
933
934 2017-04-10  Chris Dumez  <cdumez@apple.com>
935
936         Drop Timer::startOneShot() overload taking a double
937         https://bugs.webkit.org/show_bug.cgi?id=170659
938
939         Reviewed by Yusuke Suzuki.
940
941         Drop Timer::startOneShot() overload taking a double as people should use Seconds type now.
942
943         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
944         (TestWebKitAPI::TEST):
945         * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
946         (WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
947
948 2017-04-09  Wenson Hsieh  <wenson_hsieh@apple.com>
949
950         [WK2] Add infrastructure to perform actions after an asynchronous position information request finishes
951         https://bugs.webkit.org/show_bug.cgi?id=170658
952         <rdar://problem/31431450>
953
954         Reviewed by Tim Horton.
955
956         Adds a new test verifying that when a web page is unresponsive, the process of preparing for data interaction
957         does not also cause the UI process to spin. We assume here that the call to prepare must be asynchronous, so it
958         should complete before the unresponsiveness timeout is triggered.
959
960         See WebKit2 ChangeLog for more details.
961
962         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
963         (TestWebKitAPI::TEST):
964
965 2017-04-09  Chris Dumez  <cdumez@apple.com>
966
967         Drop Timer::startRepeating() overload taking a double
968         https://bugs.webkit.org/show_bug.cgi?id=170656
969
970         Reviewed by Yusuke Suzuki.
971
972         Drop Timer::startRepeating() overload taking a double as people should use Seconds type now.
973
974         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
975         (TestWebKitAPI::TEST):
976
977 2017-04-09  Youenn Fablet  <youenn@apple.com>
978
979         Resync WPT tests up to 23cd07d4685d81024b7440e042f8bbdb33e7ddec
980         https://bugs.webkit.org/show_bug.cgi?id=170647
981
982         Reviewed by Sam Weinig.
983
984         * Scripts/webkitpy/common/checkout/scm/git.py:
985         (Git.fetch): Fetching origin remote in case there is more than one.
986
987 2017-04-08  Simon Fraser  <simon.fraser@apple.com>
988
989         Update CSSProperties.json with correct fill-and-stroke status, and other cleanup
990         https://bugs.webkit.org/show_bug.cgi?id=170643
991
992         Reviewed by Chris Dumez.
993         
994         Update the CSSProperties.json style checker to allow:
995             - comments in codegen_properties
996             - obsolete-category and obsolete-url in specification blocks
997             - renamed "done" to "supported"
998             
999         Fix some references to codegen_properties to be codegen-properties.
1000
1001         * Scripts/webkitpy/style/checkers/jsonchecker.py:
1002         (JSONCSSPropertiesChecker.validate_status_type):
1003         (JSONCSSPropertiesChecker.validate_property_specification):
1004         (JSONCSSPropertiesChecker.check_codegen_properties):
1005
1006 2017-04-08  Youenn Fablet  <youenn@apple.com>
1007
1008         WebRTC tests gardening
1009         https://bugs.webkit.org/show_bug.cgi?id=170508
1010
1011         Reviewed by Eric Carlson.
1012
1013         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1014
1015 2017-04-07  Keith Miller  <keith_miller@apple.com>
1016
1017         Add a PriorityQueue class
1018         https://bugs.webkit.org/show_bug.cgi?id=170579
1019
1020         Reviewed by Saam Barati.
1021
1022         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1023         * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp: Added.
1024         (operator  _z ):
1025         (enqueue):
1026         (dequeue):
1027         (TEST):
1028         (compareMove):
1029
1030 2017-04-07  Ryosuke Niwa  <rniwa@webkit.org>
1031
1032         Replace ES6SampleBench by ARES-6 in run-benchmark
1033         https://bugs.webkit.org/show_bug.cgi?id=170585
1034
1035         Reviewed by Saam Barati.
1036
1037         Updated the plan file for ES6SampleBench to run ARES-6 instead. Also increased the number of iterations
1038         from 4 to 8 to match teh default, and reduced the number of browser instances to use from 5 to 3.
1039
1040         * Scripts/webkitpy/benchmark_runner/data/patches/ARES-6.patch: Renamed from ES6SampleBench.patch.
1041         * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan: Renamed from es6bench.plan.
1042
1043 2017-04-07  Myles C. Maxfield  <mmaxfield@apple.com>
1044
1045         REGRESSION(r211382): Complex text with justification erroneously overflows containers
1046         https://bugs.webkit.org/show_bug.cgi?id=170399
1047         <rdar://problem/31442008>
1048
1049         Reviewed by Simon Fraser.
1050
1051         Check for the invariant that the sum of the advances is equal to m_totalWidth.
1052
1053         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
1054         (TestWebKitAPI::TEST_F):
1055
1056 2017-04-07  Ryan Haddad  <ryanhaddad@apple.com>
1057
1058         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
1059         https://bugs.webkit.org/show_bug.cgi?id=167594
1060
1061         Unreviewed test gardening.
1062
1063         Disable this test because it is still timing out on the bots.
1064
1065         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
1066         (TEST):
1067
1068 2017-04-07  Jonathan Bedard  <jbedard@apple.com>
1069
1070         REGRESSION (r214553): Allow layout-tests to be run from Xcode without re-directing stdout, stdin and stderr
1071         https://bugs.webkit.org/show_bug.cgi?id=170601
1072         <rdar://problem/31492696>
1073
1074         Reviewed by Simon Fraser.
1075
1076         * TestRunnerShared/IOSLayoutTestCommunication.cpp:
1077         (setUpIOSLayoutTestCommunication): Skip TCP setup if no port is in the environment.
1078         (tearDownIOSLayoutTestCommunication): Only teardown if TCP was used.
1079
1080 2017-04-07  Aakash Jain  <aakash_jain@apple.com>
1081
1082         Add support for test262 JavaScriptCore tests
1083         https://bugs.webkit.org/show_bug.cgi?id=170523
1084
1085         Reviewed by Daniel Bates.
1086
1087         * BuildSlaveSupport/build.webkit.org-config/config.json: Added bot433 and bot434.
1088         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1089         (RunTest262Tests): Added class to run Test262 tests.
1090         (RunTest262Tests.start): Added.
1091         (RunTest262Tests.countFailures): Method to count the failures.
1092         (Test262Factory): Added Test262 factory class.
1093         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1094         (RunTest262TestsTest): Added unit tests.
1095         (RunTest262TestsTest.assertResults): Helper method.
1096         (RunTest262TestsTest.test_no_regressions_output): Added test case.
1097         (test_failure_output): Same. 
1098         (test_failures_output): Same.
1099
1100 2017-04-07  Caio Lima  <ticaiolima@gmail.com>
1101
1102         [JSC] Change --debug option to --debugger
1103         https://bugs.webkit.org/show_bug.cgi?id=170587
1104
1105         Reviewed by Keith Miller.
1106
1107         * Scripts/run-jsc:
1108
1109         This patch is changing the new debugger flag for Tools/Scripts/run-jsc
1110         to --debugger to avoid shadowing --debug flag used to run JSC with
1111         Debug build.
1112
1113 2017-04-07  Brent Fulgham  <bfulgham@apple.com>
1114
1115         WebKit should percent encode single quotes in query strings
1116         https://bugs.webkit.org/show_bug.cgi?id=170561
1117         <rdar://problem/7415154>
1118
1119         Reviewed by Alex Christensen.
1120
1121         Add a test case for single-quote in the URL query string.
1122
1123         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1124
1125 2017-04-06  Myles C. Maxfield  <mmaxfield@apple.com>
1126
1127         Make FontWithFeatures test font pass OTS
1128         https://bugs.webkit.org/show_bug.cgi?id=169788
1129
1130         Reviewed by Tim Horton.
1131
1132         OTS, or the OpenType Sanitizer, is a check which tells if fonts are properly formed.
1133         Previously, our FontWithFeatures test font did not pass this check. This patch updates
1134         the font to pass the checks. Now, we can use this font on other platforms, and
1135         contribute the font to the W3C for testing the CSS Fonts level 3 spec.
1136
1137         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
1138         (Generator::appendCFFTable):
1139         (Generator::Feature::operator<):
1140         (Generator::appendGSUBTable):
1141         (Generator::appendOS2Table):
1142         (Generator::appendFormat4CMAPTable):
1143         (Generator::appendHEADTable):
1144         (Generator::appendHHEATable):
1145         (Generator::NameRecord::operator<):
1146         (Generator::appendNameSubtable):
1147         (Generator::appendNAMETable):
1148
1149 2017-04-06  Alexey Proskuryakov  <ap@apple.com>
1150
1151         Disable flaky WebKit2.ResizeWithHiddenContentDoesNotHang
1152         for https://bugs.webkit.org/show_bug.cgi?id=170195
1153
1154         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
1155
1156 2017-04-06  Ryan Haddad  <ryanhaddad@apple.com>
1157
1158         Unreviewed, rolling out r215046.
1159
1160         This change broke internal builds.
1161
1162         Reverted changeset:
1163
1164         "WebRTC tests gardening"
1165         https://bugs.webkit.org/show_bug.cgi?id=170508
1166         http://trac.webkit.org/changeset/215046
1167
1168 2017-04-06  Youenn Fablet  <youenn@apple.com>
1169
1170         WebRTC tests gardening
1171         https://bugs.webkit.org/show_bug.cgi?id=170508
1172
1173         Reviewed by Eric Carlson.
1174
1175         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1176
1177 2017-04-06  Jonathan Bedard  <jbedard@apple.com>
1178
1179         REGRESSION: Simulators failing to install after launch_app times out
1180         <rdar://problem/31478107>
1181
1182         Unreviewed infrastructure fix.
1183
1184         * Scripts/webkitpy/xcode/simulated_device.py:
1185         (SimulatedDevice.launch_app._install_timeout): Raise RuntimeError, not Exception.
1186
1187 2017-04-05  Joseph Pecoraro  <pecoraro@apple.com>
1188
1189         test262: module test progressions need updated expectations (@@iterator changes)
1190         https://bugs.webkit.org/show_bug.cgi?id=170535
1191
1192         Reviewed by Saam Barati.
1193
1194         * Scripts/run-jsc-stress-tests:
1195         Add :failDueToOutdatedOrBadTest to distinguish between a test failure
1196         in JavaScriptCore or an outdated or incorrect test262 test.
1197
1198 2017-04-05  Joseph Pecoraro  <pecoraro@apple.com>
1199
1200         Remove run-jsc-stress-tests benign warning about otool '-S' switch
1201         https://bugs.webkit.org/show_bug.cgi?id=170527
1202
1203         Reviewed by Aakash Jain.
1204
1205         * Scripts/run-jsc-stress-tests:
1206         The switch is not necessary and produces an error.
1207
1208 2017-04-05  Jonathan Bedard  <jbedard@apple.com>
1209
1210         webkitpy: Add pid logging for simulator processes
1211         https://bugs.webkit.org/show_bug.cgi?id=170505
1212
1213         Reviewed by Alexey Proskuryakov.
1214
1215         * Scripts/webkitpy/port/simulator_process.py:
1216         (SimulatorProcess._start.handler): Add pid to exception.
1217         (SimulatorProcess._start): Ditto.
1218         * Scripts/webkitpy/xcode/simulated_device.py:
1219         (SimulatedDevice.launch_app): Log pid when the process fails to launch and when
1220         a pid is successfully returned.
1221
1222 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
1223
1224         Unreviewed, rolling out r214932.
1225
1226         This change broke an internal build.
1227
1228         Reverted changeset:
1229
1230         "[ios-simulator] API test WebKit2.DataDetectionReferenceDate
1231         timing out"
1232         https://bugs.webkit.org/show_bug.cgi?id=161967
1233         http://trac.webkit.org/changeset/214932
1234
1235 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
1236
1237         Unreviewed, rolling out r214962.
1238
1239         Roll r214937 back in because it wasn't at fault for the build
1240         breakage.
1241
1242         Reverted changeset:
1243
1244         "Unreviewed, rolling out r214937."
1245         https://bugs.webkit.org/show_bug.cgi?id=170365
1246         http://trac.webkit.org/changeset/214962
1247
1248 2017-04-05  Ryan Haddad  <ryanhaddad@apple.com>
1249
1250         Unreviewed, rolling out r214937.
1251
1252         This change broke an internal build.
1253
1254         Reverted changeset:
1255
1256         "REGRESSION (r202472): Data Detection overwrites existing
1257         links in detected ranges"
1258         https://bugs.webkit.org/show_bug.cgi?id=170365
1259         http://trac.webkit.org/changeset/214937
1260
1261 2017-04-05  Jonathan Bedard  <jbedard@apple.com>
1262
1263         Increase timeouts for simulator testing
1264         Unreviewed infrastructure fix.
1265
1266         r214895 was not sufficient, increasing timeouts again.
1267
1268         * Scripts/webkitpy/xcode/simulated_device.py:
1269         (SimulatedDevice.install_app): Increase timeout from 3 to 10 seconds.
1270
1271 2017-04-05  Aakash Jain  <aakash_jain@apple.com>
1272
1273         Formatting fix to remove extra space.
1274
1275         Unreviewed formatting fix.
1276
1277         * Scripts/webkitdirs.pm:
1278         (isEmbeddedWebKit): Remove extra space.
1279
1280 2017-04-05  Aakash Jain  <aakash_jain@apple.com>
1281
1282         Rename isIOSLikeWebKit to isEmbeddedWebKit.
1283
1284         Rubber-stamped by Alexey Proskuryakov. 
1285
1286         * Scripts/webkitdirs.pm:
1287         (isEmbeddedWebKit): Added
1288         (isIOSLikeWebKit): Deleted.
1289
1290 2017-04-05  Alex Christensen  <achristensen@webkit.org>
1291
1292         Fix CMake build.
1293
1294         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
1295         * TestRunnerShared/spi/CoreGraphicsSPI.h: Removed.
1296         * TestRunnerShared/spi/CoreGraphicsTestSPI.h: Copied from Tools/TestRunnerShared/spi/CoreGraphicsSPI.h.
1297         There is a CoreGraphicsSPI.h in WebCore and the CMake build was finding the wrong one.
1298         Since we just inherit the include paths from WebCore in the CMake build and since this SPI is only used for testing,
1299         I just renamed CoreGraphicsSPI.h to CoreGraphicsTestSPI.h to avoid any name collisions.
1300         * WebKitTestRunner/PlatformMac.cmake:
1301         Add some missing files.
1302         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1303
1304 2017-04-05  Keith Miller  <keith_miller@apple.com>
1305
1306         Add debug option to run-jsc script
1307         https://bugs.webkit.org/show_bug.cgi?id=170503
1308
1309         Reviewed by Yusuke Suzuki.
1310
1311         Adds a new option to the run-jsc script so that when passed
1312         "--debug" it will wrap the jsc call with an lldb invocation. If
1313         someone wishes to use a different debugger they can set the
1314         DEBUGGER environment variable. Additionally, run-jsc now exits
1315         with the exit status of the jsc call.
1316
1317         * Scripts/run-jsc:
1318
1319 2017-04-05  Andy Estes  <aestes@apple.com>
1320
1321         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
1322         https://bugs.webkit.org/show_bug.cgi?id=170365
1323         <rdar://problem/29205721>
1324
1325         Reviewed by Tim Horton.
1326
1327         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1328         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
1329         (TEST): Re-enabled the test, which now passes.
1330
1331 2017-04-05  Andy Estes  <aestes@apple.com>
1332
1333         [ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
1334         https://bugs.webkit.org/show_bug.cgi?id=167594
1335
1336         Re-enabled this API test now that webkit.org/b/161967 is fixed.
1337
1338         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
1339         (TEST):
1340
1341 2017-04-05  Andy Estes  <aestes@apple.com>
1342
1343         [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
1344         https://bugs.webkit.org/show_bug.cgi?id=161967
1345
1346         Reviewed by Alexey Proskuryakov.
1347
1348         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1349         (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
1350
1351 2017-04-04  Simon Fraser  <simon.fraser@apple.com>
1352
1353         Various settings in Minibrowser are off by default, and should be on
1354         https://bugs.webkit.org/show_bug.cgi?id=170465
1355         rdar://problem/31421543
1356
1357         Reviewed by Tim Horton.
1358
1359         Explicitly set preferences that should be on by default to enabled, if they have not been
1360         set previously.
1361
1362         * MiniBrowser/mac/SettingsController.m:
1363         (-[SettingsController init]):
1364
1365 2017-04-04  JF Bastien  <jfbastien@apple.com>
1366
1367         Add JF Bastien as reviewer
1368         https://bugs.webkit.org/show_bug.cgi?id=170481
1369
1370         Reviewed by Mark Lam.
1371
1372         * Scripts/webkitpy/common/config/contributors.json:
1373
1374 2017-04-04  Jonathan Bedard  <jbedard@apple.com>
1375
1376         Increase timeouts for simulator testing
1377
1378         Unreviewed infrastructure fix.
1379
1380         * Scripts/webkitpy/port/simulator_process.py:
1381         (SimulatorProcess._start): Increase timeout from 3 to 6 seconds.
1382         * Scripts/webkitpy/xcode/simulated_device.py:
1383         (SimulatedDevice.install_app): Increase timeout from 1 to 3 seconds.
1384
1385 2017-04-04  Tim Horton  <timothy_horton@apple.com>
1386
1387         [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
1388         https://bugs.webkit.org/show_bug.cgi?id=165801
1389         <rdar://problem/29649535>
1390
1391         Reviewed by Wenson Hsieh.
1392
1393         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
1394         (TEST):
1395         Add some tests for wrapping finds.
1396
1397 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
1398
1399         Add some new patterns to filter-build-webkit
1400         https://bugs.webkit.org/show_bug.cgi?id=170429
1401
1402         Reviewed by Alexey Proskuryakov.
1403
1404         * Scripts/filter-build-webkit:
1405         (setOutputFormatOption):
1406
1407 2017-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
1408
1409         Data interaction should register type identifiers in order of priority
1410         https://bugs.webkit.org/show_bug.cgi?id=170428
1411         <rdar://problem/30633296>
1412
1413         Reviewed by Tim Horton.
1414
1415         Augments existing unit tests to check for the existence and priority of type identifiers in the UIItemProviders
1416         created upon starting data interaction. Also fixes a race condition in one of the unit tests and adds a new unit
1417         test for data interaction from a textarea to an input.
1418
1419         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1420         (checkTypeIdentifierPrecedesOtherTypeIdentifier):
1421         (TestWebKitAPI::TEST):
1422         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1423         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1424         (-[DataInteractionSimulator _advanceProgress]):
1425         (-[DataInteractionSimulator sourceItemProviders]):
1426         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
1427
1428 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1429
1430         [GTK][JHBuild] Update mesa repository url for tarballs
1431         https://bugs.webkit.org/show_bug.cgi?id=170431
1432
1433         Reviewed by Michael Catanzaro.
1434
1435         * gtk/jhbuild.modules:
1436
1437 2017-04-03  Joseph Pecoraro  <pecoraro@apple.com>
1438
1439         TestWebKitAPI: Warning: Multiple build commands for Ahem.ttf
1440         https://bugs.webkit.org/show_bug.cgi?id=170430
1441
1442         Reviewed by Alexey Proskuryakov.
1443
1444         * TestWebKitAPI/Tests/mac/Ahem.ttf: Removed.
1445         Eliminate one of the copies of Ahem.ttf.
1446
1447         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1448         Once eliminated, there is now only one Ahem.ttf that is copied
1449         to the Resources bundle. Drive-by sort the project file.
1450
1451 2017-04-03  Simon Fraser  <simon.fraser@apple.com>
1452
1453         Allow MiniBrowser windows to receive local file drags again
1454         https://bugs.webkit.org/show_bug.cgi?id=170422
1455
1456         Reviewed by Wenson Hsieh.
1457
1458         Adopt the new UIDelegate SPI to allow drops.
1459
1460         * MiniBrowser/mac/WK2BrowserWindowController.m:
1461         (-[WK2BrowserWindowController _webView:dragDestinationActionMaskForDraggingInfo:]):
1462
1463 2017-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1464
1465         [GTK][JHBuild] Fetch libvpx from a release tarball instead of git
1466         https://bugs.webkit.org/show_bug.cgi?id=170426
1467
1468         Reviewed by Michael Catanzaro.
1469
1470         * gtk/jhbuild.modules:
1471
1472 2017-04-03  Nan Wang  <n_wang@apple.com>
1473
1474         AX: Expose link children when doing search predication on iOS
1475         https://bugs.webkit.org/show_bug.cgi?id=170424
1476         <rdar://problem/31413335>
1477
1478         Reviewed by Chris Fleizach.
1479
1480         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1481         (AccessibilityUIElement::uiElementForSearchPredicate):
1482         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1483         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
1484
1485 2017-04-03  Brian Burg  <bburg@apple.com>
1486
1487         run-safari should support launching with custom language and locale
1488         https://bugs.webkit.org/show_bug.cgi?id=170397
1489
1490         Reviewed by Alexey Proskuryakov.
1491
1492         Hook up -AppleLanguages and -AppleLocale to command line options.
1493
1494         * Scripts/webkitdirs.pm:
1495         (printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
1496         (argumentsForRunAndDebugMacWebKitApp):
1497
1498 2017-04-03  Jonathan Bedard  <jbedard@apple.com>
1499
1500         webkitpy: Provide option to skip install
1501         https://bugs.webkit.org/show_bug.cgi?id=170344
1502
1503         Reviewed by Alexey Proskuryakov.
1504
1505         Installing can take time for on device testing.  Provide an option to skip install
1506         and use whatever driver is currently installed on the device or simulator.
1507
1508         * Scripts/webkitpy/port/base.py:
1509         (Port.check_build): Do not check driver if skipping install.
1510         * Scripts/webkitpy/port/factory.py:
1511         (platform_options): Add '--no-install' option.
1512         * Scripts/webkitpy/port/ios.py:
1513         (IOSPort.setup_test_run): Check install option before installing.
1514
1515 2017-04-03  Keith Miller  <keith_miller@apple.com>
1516
1517         WebAssembly: Update spec tests
1518         https://bugs.webkit.org/show_bug.cgi?id=170361
1519
1520         Rubber-stamped by Saam Barati.
1521
1522         Update the runner to know the new wasm spec test harness code.
1523
1524         * Scripts/run-jsc-stress-tests:
1525
1526 2017-04-01  Alexey Proskuryakov  <ap@apple.com>
1527
1528         Rolling back <https://trac.webkit.org/r214697>, as it made WebKit2.DataDetectionReferenceDate time out.
1529
1530         Was REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
1531         https://bugs.webkit.org/show_bug.cgi?id=170365
1532
1533         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1534
1535 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
1536
1537         Mac cmake buildfix after 214586.
1538         https://bugs.webkit.org/show_bug.cgi?id=170381
1539
1540         Unreviewed speculative buildfix.
1541
1542         * WebKitTestRunner/PlatformMac.cmake:
1543
1544 2017-04-01  Csaba Osztrogonác  <ossy@webkit.org>
1545
1546         Unreviewed speculative Mac cmake buildfix after r214586, just for fun.
1547         https://bugs.webkit.org/show_bug.cgi?id=161675
1548
1549         * WebKitTestRunner/PlatformMac.cmake:
1550
1551 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
1552
1553         webkitpy: Add target host concept
1554         https://bugs.webkit.org/show_bug.cgi?id=170186
1555         <rdar://problem/31301797>
1556
1557         Reviewed by Alexey Proskuryakov.
1558
1559         Adding the idea of a target host. Target hosts are objects conforming to the
1560         structure of the SystemHost object in Scripts/webkitpy/common/system/systemhost.py
1561         Target hosts are the hosts associated with a worker process.
1562
1563         * Scripts/webkitpy/common/system/filesystem.py:
1564         (FileSystem.map_base_host_path): Convert a path from an absolute path on the base
1565         host to an absolute path on this host.
1566         (FileSystem.move_to_base_host): Move file from this host to the base host.
1567         (FileSystem.move_from_base_host): Move file from the base host to this host.
1568         (FileSystem.copy_to_base_host): Copy file from this host to the base host.
1569         (FileSystem.copy_from_base_host): Copy file from the base host to this host.
1570         * Scripts/webkitpy/common/system/filesystem_mock.py:
1571         (MockFileSystem.map_base_host_path): Convert a path from an absolute path on the base
1572         host to an absolute path on this host.
1573         (MockFileSystem.move_to_base_host): Move file from this host to the base host.
1574         (MockFileSystem.move_from_base_host): Move file from the base host to this host.
1575         (MockFileSystem.copy_to_base_host): Copy file from this host to the base host.
1576         (MockFileSystem.copy_from_base_host): Copy file from the base host to this host.
1577         * Scripts/webkitpy/port/base.py:
1578         (Port.target_host): Return host determined by worker number.
1579         (Port.abspath_for_test): Accept optional target_host argument to return location
1580         of test on a target host.
1581         (Port._driver_tempdir): Accept optional target_host argument to return a temporary
1582         directory on a target host.
1583         (Port.sample_process): Accept optional target_host argument to sample process on
1584         a target host.
1585         * Scripts/webkitpy/port/darwin.py:
1586         (DarwinPort.sample_process): Run sample process on target host.
1587         (DarwinPort.sample_file_path): Accept directory for file.
1588         (DarwinPort.spindump_file_path): Ditto.
1589         * Scripts/webkitpy/port/darwin_testcase.py:
1590         (DarwinTest.test_spindump): Check file movement.
1591         (DarwinTest.test_sample_process): Ditto.
1592         (DarwinTest.test_sample_process_exception):
1593         * Scripts/webkitpy/port/driver.py:
1594         (Driver.__init__): Add and set self._target_host variable.
1595         (Driver._start): Pass target host to _driver_tempdir().
1596         (Driver.stop): Call the target host's rmtree.
1597         (Driver._check_for_driver_timeout): Pass target host to sample_process.
1598         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
1599         (Driver._command_from_driver_input): Pass target host to abspath_for_test and map
1600         layout test directory to target host.
1601         * Scripts/webkitpy/port/ios.py:
1602         (IOSPort):
1603         (IOSPort.target_host): Replaced device_for_worker_number.
1604         (IOSPort.setup_test_run): Replace device_for_worker_number with target_host.
1605         (IOSPort.device_for_worker_number): Replaced with target_host.
1606         * Scripts/webkitpy/port/server_process.py:
1607         (ServerProcess.__init__): Accept target_host instead of worker_number.
1608         (ServerProcess._start): Replace _host with _target_host.
1609         (ServerProcess._handle_timeout): Ditto.
1610         (ServerProcess._kill): Ditto.
1611         * Scripts/webkitpy/port/simulator_process.py:
1612         (SimulatorProcess.__init__): Accept target_host instead of worker_number.
1613         (SimulatorProcess._start): Replace _device with _target_host.
1614         (SimulatorProcess.stop): Ditto.
1615         (SimulatorProcess._kill): Deleted.
1616
1617 2017-03-31  Jonathan Bedard  <jbedard@apple.com>
1618
1619         Unreviewed fix after r214569
1620         https://bugs.webkit.org/show_bug.cgi?id=170255
1621
1622         Unreviewed infrastructure fix.
1623
1624         * Scripts/webkitpy/port/ios.py:
1625         (IOSPort.clean_up_test_run): Check if the device is defined before teardown.
1626
1627 2017-03-31  Andy Estes  <aestes@apple.com>
1628
1629         REGRESSION (r202472): Data Detection overwrites existing links in detected ranges
1630         https://bugs.webkit.org/show_bug.cgi?id=170365
1631         <rdar://problem/29205721>
1632
1633         Reviewed by Tim Horton.
1634
1635         * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
1636         (expectLinkCount): Changed to only query links with the x-apple-data-detectors attribute.
1637         (TEST): Re-enabled the test, which now passes.
1638
1639 2017-03-31  Tim Horton  <timothy_horton@apple.com>
1640
1641         Mail can get stuck underneath FindController::findStringMatches after searching in a long message
1642         https://bugs.webkit.org/show_bug.cgi?id=170326
1643         <rdar://problem/30330395>
1644
1645         Reviewed by Simon Fraser.
1646
1647         * TestWebKitAPI/Tests/WebKit2Cocoa/FindInPage.mm:
1648         (TEST):
1649
1650 2017-03-31  Carlos Garcia Campos  <cgarcia@igalia.com>
1651
1652         Unreviewed. Fix WTR crashes in GTK+ port after r214413.
1653
1654         Fixes: http/tests/ssl/upgrade-origin-usage.html
1655                http/tests/websocket/tests/hybi/network-process-crash-error.html
1656                http/tests/websocket/tests/hybi/simple-wss.html
1657
1658         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
1659         (WTR::TestController::platformContext): Return the context.
1660
1661 2017-03-30  Sam Weinig  <sam@webkit.org>
1662
1663         Expose the WKView SPI, _prepareForMoveToWindow:withCompletionHandler as WKWebView SPI
1664         https://bugs.webkit.org/show_bug.cgi?id=170315
1665
1666         Reviewed by Simon Fraser.
1667
1668         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1669         * TestWebKitAPI/Tests/WebKit2Cocoa/PrepareForMoveToWindow.mm: Added.
1670         Add test showing the completion handler is called.
1671
1672 2017-03-30  Filip Pizlo  <fpizlo@apple.com>
1673
1674         Air should support linear scan for optLevel<2
1675         https://bugs.webkit.org/show_bug.cgi?id=170161
1676
1677         Reviewed by Saam Barati.
1678         
1679         This makes us run a bunch of JS tests at optLevel=1 to force testing of this new compiler
1680         pipeline.
1681
1682         * Scripts/run-jsc-stress-tests:
1683
1684 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
1685
1686         Support tvOS and watchOS in webkitdirs.pm
1687         https://bugs.webkit.org/show_bug.cgi?id=170267
1688
1689         Reviewed by Alexey Proskuryakov.
1690
1691         * Scripts/webkitdirs.pm:
1692         (determineXcodeSDK): Evaluate sdk for tvos and watchos.
1693         (xcodeSDKPlatformName): Added support for tvos and watchos.
1694         (determinePortName): Same.
1695         (isAppleCocoaWebKit): Same.
1696         (willUseAppleTVDeviceSDK): Added.
1697         (willUseAppleTVSimulatorSDK): Added.
1698         (willUseWatchDeviceSDK): Added.
1699         (willUseWatchSimulatorSDK): Added.
1700         (isTVOSWebKit): Added.
1701         (isWATCHOSWebKit): Added.
1702         (isIOSLikeWebKit): Added.
1703
1704 2017-03-30  Wenson Hsieh  <wenson_hsieh@apple.com>
1705
1706         [WK2] Touches should not cancel when showing a custom action sheet while data interaction is active
1707         https://bugs.webkit.org/show_bug.cgi?id=170291
1708         <rdar://problem/31301388>
1709
1710         Reviewed by Tim Horton.
1711
1712         Adds support for testing how the custom action sheet presentation codepath interacts with data interaction, as
1713         well as a new unit test. In this case, we force data interaction to fail if touches are canceled on the
1714         shared UIApplication, and verify that data interaction completes successfully.
1715
1716         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1717         (TestWebKitAPI::TEST):
1718         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1719         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1720         (-[DataInteractionSimulatorApplication _cancelAllTouches]):
1721         (-[DataInteractionSimulator initWithWebView:]):
1722         (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
1723         (-[DataInteractionSimulator runFrom:to:]):
1724         (-[DataInteractionSimulator _advanceProgress]):
1725         (-[DataInteractionSimulator _webView:showCustomSheetForElement:]):
1726
1727 2017-03-30  Per Arne Vollan  <pvollan@apple.com>
1728
1729         [Win] Pass close_fds = True in Python popen call.
1730         https://bugs.webkit.org/show_bug.cgi?id=170172
1731
1732         Reviewed by Brent Fulgham.
1733
1734         This was previously not supported on Windows, but in Python 2.7.10 it is.
1735
1736         * Scripts/webkitpy/common/system/executive.py:
1737         (Executive._should_close_fds):
1738         * Scripts/webkitpy/port/server_process.py:
1739         (ServerProcess._start):
1740
1741 2017-03-30  Aakash Jain  <aakash_jain@apple.com>
1742
1743         Change my status to be a WebKit reviewer.
1744
1745         Unreviewed status update edit.
1746
1747         * Scripts/webkitpy/common/config/contributors.json:
1748
1749 2017-03-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1750
1751         Change my status to be a WebKit reviewer.
1752
1753         Unreviewed status update edit.
1754
1755         * Scripts/webkitpy/common/config/contributors.json:
1756
1757 2017-03-29  Tim Horton  <timothy_horton@apple.com>
1758
1759         Swipe gesture tests don't work on macOS Sierra
1760         https://bugs.webkit.org/show_bug.cgi?id=161675
1761         <rdar://problem/23379930>
1762
1763         Reviewed by Darin Adler.
1764
1765         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1766         (WTR::UIScriptController::platformPlayBackEventStream):
1767         (WTR::UIScriptController::beginBackSwipe):
1768         (WTR::UIScriptController::completeBackSwipe):
1769         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h: Copied from Tools/DumpRenderTree/mac/UIScriptControllerMac.mm.
1770         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm: Added.
1771         (eventIsOfType):
1772         (eventIsOfTypes):
1773         (eventIsOfGestureType):
1774         (eventIsOfGestureTypes):
1775         (+[EventSerializer dictionaryForEvent:relativeToTime:]):
1776         (+[EventSerializer createEventForDictionary:inWindow:relativeToTime:]):
1777         (+[EventSerializer playEventStream:inWindow:completionHandler:]):
1778         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.mm.
1779         * TestRunnerShared/EventSerialization/mac/SharedEventStreamsMac.mm: Added.
1780         (beginSwipeBackEventStream):
1781         (completeSwipeBackEventStream):
1782         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1783         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1784         (WTR::UIScriptController::playBackEventStream):
1785         (WTR::UIScriptController::beginBackSwipe):
1786         (WTR::UIScriptController::completeBackSwipe):
1787         (WTR::UIScriptController::platformPlayBackEventStream):
1788         (WTR::UIScriptController::platformClearAllCallbacks): Deleted.
1789         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1790         * TestRunnerShared/spi/CoreGraphicsSPI.h: Added.
1791         * TestRunnerShared/spi/IOKitSPI.h: Renamed from Tools/WebKitTestRunner/ios/IOKitSPI.h.
1792         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1793         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1794         (WTR::playBackEvents):
1795         (WTR::UIScriptController::beginBackSwipe):
1796         (WTR::UIScriptController::completeBackSwipe):
1797         (WTR::UIScriptController::platformPlayBackEventStream):
1798
1799 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1800
1801         webkitpy: Robust test clean-up
1802         https://bugs.webkit.org/show_bug.cgi?id=170255
1803
1804         Reviewed by Alexey Proskuryakov.
1805
1806         On-device testing is the motivation for this change.  Failure to run clean-up functions can
1807         result in zombie processes, residual NFS mounts and other undesirable remnants from a failed
1808         test run.  Make an effort to clean-up even if exceptions are thrown during set-up or clean-up.
1809
1810         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1811         (Manager._set_up_run): Clean up test run if set-up fails.
1812         * Scripts/webkitpy/port/ios.py:
1813         (IOSPort.clean_up_test_run): Continue cleaning up devices even after an exception is thrown.
1814
1815 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1816
1817         Simulator testing stops after the first crash
1818         <rdar://problem/31325362>
1819
1820         Unreviewed infrastructure fix.
1821
1822         * Scripts/webkitpy/xcode/simulated_device.py:
1823         (SimulatedDevice):
1824         (SimulatedDevice.launch_app): Increase timeout when attempting to launch app.
1825
1826 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1827
1828         webkitpy: Standardize web-server port definitions
1829         https://bugs.webkit.org/show_bug.cgi?id=170144
1830         <rdar://problem/31284026>
1831
1832         Reviewed by Daniel Bates.
1833
1834         Default web-server ports should be declared in global variables.
1835         Add functions to web-servers which return the ports these servers
1836         are using so that other tools can forward them.
1837
1838         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
1839         (LayoutTestApacheHttpd.__init__): Use shared constants in http_server_base.py.
1840         * Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
1841         (TestLayoutTestApacheHttpd.test_start_cmd): Check port_to_forward for expected values.
1842         * Scripts/webkitpy/layout_tests/servers/http_server.py:
1843         (Lighttpd.__init__): Use shared constants in http_server_base.py.
1844         (Lighttpd._prepare_config): Ditto.
1845         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
1846         (HttpServerBase): Add default port constants.
1847         (HttpServerBase.ports_to_forward): Add function to return ports used for http server.
1848         * Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
1849         (TestHttpServer.test_start_cmd): Check port_to_forward for expected values.
1850         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1851          (WebPlatformTestServer.ports_to_forward): Add function to return ports used for web-platform tests.
1852         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
1853         (PyWebSocket): Make default port values public.
1854         (PyWebSocket.__init__): Use public default port.
1855         (PyWebSocket.ports_to_forward): Return port used in an array.
1856         * Scripts/webkitpy/port/base.py:
1857         (Port.to.ports_to_forward): Return all ports used the various web-servers managed by the port object.
1858         (Port.to.start_websocket_server): Use PyWebSocket port constants.
1859
1860 2017-03-29  Wenson Hsieh  <wenson_hsieh@apple.com>
1861
1862         Links with empty hrefs should not be drag sources
1863         https://bugs.webkit.org/show_bug.cgi?id=170241
1864         <rdar://problem/31305505>
1865
1866         Reviewed by Tim Horton.
1867
1868         Adds a new API test: DataInteractionTests.LinkWithEmptyHREF.
1869
1870         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1871         (TestWebKitAPI::TEST):
1872         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1873
1874         Expose the current phase of the data interaction simulator for verifying behaviors in unit tests.
1875
1876         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1877         (-[DataInteractionSimulator phase]):
1878
1879 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1880
1881         Use TCP instead of FIFOs for Simulator/Device communication
1882         https://bugs.webkit.org/show_bug.cgi?id=169419
1883         <rdar://problem/30949615>
1884
1885         Reviewed by Alexey Proskuryakov.
1886
1887         Using TCP instead of FIFOs when communicating with devices allows the device being tested
1888         to be on a different machine then the one handling the management of the test run.
1889
1890         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
1891         * DumpRenderTree/mac/DumpRenderTree.mm:
1892         (dumpRenderTree): Call setUp/tearDownIOSLayoutTestCommunication() instead of using FIFOs.
1893         * Scripts/webkitpy/port/device.py:
1894         (Device.__init__): Initialize the listening_socket.
1895         (Device.listening_port): Return port of listening socket.
1896         (Device.prepare_for_testing): Open listening socket on an open port, prepare platform device
1897         fro testing.
1898         (Device.finished_testing): Close listening socket associated with this device, call the
1899         platform device's finished_testing function if it exists.
1900         * Scripts/webkitpy/port/ios.py:
1901         (IOSPort.setup_test_run): Prepare each device for testing.
1902         (IOSPort.clean_up_test_run): Notify each device that testing has completed.
1903         * Scripts/webkitpy/port/ios_simulator.py:
1904         (IOSSimulatorPort): Work around device persistence bug.
1905         (IOSSimulatorPort.__init__): Ditto.
1906         * Scripts/webkitpy/port/simulator_process.py:
1907         (SimulatorProcess):
1908         (SimulatorProcess.NonBlockingFileFromSocket): Add to work around shortcomings in
1909         Python 2’s makefile.
1910         (SimulatorProcess.NonBlockingFileFromSocket.__init__): Initialize file with socket.
1911         (SimulatorProcess.ReadFileSocket.close): Close file and then socket;
1912         (SimulatorProcess.__init__): Pass TCP port over environment, remove FIFO names.
1913         (SimulatorProcess.__getattr__): Expose all file attributes.
1914         (SimulatorProcess._accept_connection_create_file): Wait for connection from server and
1915         create and return a file-like object from the incoming connection.
1916         (SimulatorProcess._start): Use TCP connections instead of FIFOs.
1917         (SimulatorProcess._start.handler): Output server port in timeout exception.
1918         (SimulatorProcess._reset): Deleted.
1919         * TestRunnerShared/IOSLayoutTestCommunication.cpp: Added.
1920         (connectToServer): Return socket connected to the provided server address.
1921         (setupiOSLayoutTestCommunication): Connect stdin, stdout and stderr as socket to a
1922         TCP server running on localhost.
1923         (tearDownIOSLayoutTestCommunication): Close stdin, stdout and stderr TCP sockets.
1924         * TestRunnerShared/IOSLayoutTestCommunication.h: Added.
1925         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1926         * WebKitTestRunner/ios/TestControllerIOS.mm:
1927         (WTR::TestController::platformInitialize): Call setUpIOSLayoutTestCommunication()
1928         instead of using FIFOs.
1929         (WTR::TestController::platformDestroy): Call tearDownIOSLayoutTestCommunication().
1930
1931 2017-03-29  Jonathan Bedard  <jbedard@apple.com>
1932
1933         webkitpy: Add IOSDevicePort and IOSPort tests
1934         https://bugs.webkit.org/show_bug.cgi?id=170206
1935         <rdar://problem/31308364>
1936
1937         Reviewed by Alexey Proskuryakov.
1938
1939         * Scripts/webkitpy/port/darwin_testcase.py: Removed unused import.
1940         * Scripts/webkitpy/port/ios_device_unittest.py: Added.
1941         (iosDeviceTest): Contains tests for the IOSDevicePort.
1942         (iosDeviceTest.make_port): Creates an IOSDevicePort with arguments.
1943         (iosDeviceTest.test_operating_system): Check for the correct operating system.
1944         * Scripts/webkitpy/port/ios_simulator_unittest.py: Moved from Tools/Scripts/webkitpy/port/ios_unittest.py.
1945         (iosSimulatorTest): Inherit from ios_testcase.
1946         (iosSimulatorTest.make_port): Ditto.
1947         (iosSimulatorTest.test_get_crash_log): Ditto.
1948         * Scripts/webkitpy/port/ios_testcase.py: Added.
1949         (iOSTest): Contains shared tests for the IOSDevicePort and IOSSimulatorPort.
1950         (iOSTest.test_driver_name): Tests for iOS app driver.
1951         (iOSTest.test_baseline_searchpath): Check that ios and ios-wk1 are in the baseline search path.
1952         * Scripts/webkitpy/port/ios_unittest.py: Moved to ios_simulator_unittest.py.
1953         * Scripts/webkitpy/port/port_testcase.py:
1954         (PortTestCase): Rename is_simulator to disable_setup to more accurately describe it's meaning.
1955         (PortTestCase.test_diff_image): Use disable_setup instead of is_simulator.
1956         (PortTestCase.test_diff_image_crashed): Ditto.
1957
1958 2017-03-28  Jason Marcell  <jmarcell@apple.com>
1959
1960         Fix `index-expected.txt` for dashboard test results.
1961         https://bugs.webkit.org/show_bug.cgi?id=170214
1962
1963         Reviewed by Alexey Proskuryakov.
1964
1965         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/index-expected.txt:
1966
1967 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
1968
1969         Bot watcher's dashboard has separate settings for "mac" and "macos"
1970         https://bugs.webkit.org/show_bug.cgi?id=170164
1971
1972         Reviewed by Tim Horton.
1973
1974         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
1975         (Settings.prototype.parsePlatformFamily): Aded a special case for "macos".
1976
1977 2017-03-28  Alexey Proskuryakov  <ap@apple.com>
1978
1979         Fix dashboard test results on the dashboard
1980         https://bugs.webkit.org/show_bug.cgi?id=170158
1981
1982         Reviewed by Tim Horton.
1983
1984         Link to result diff instead of stdio. Looking at the diff, I wonder if it can be
1985         further improved, as it's not super readable, but stdio is entirely useless in this context.
1986
1987         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
1988         (Buildbot.prototype.dashboardTestResultsURLForIteration): Generate formatted diff link.
1989
1990         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
1991         Fixed a typo in step name, so that it's actually treated as productive.
1992
1993         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
1994         (BuildbotTesterQueueView.prototype.appendBuilderQueueStatus):
1995         (BuildbotTesterQueueView.prototype.update):
1996         (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
1997         Added special handling for dashboard test results.
1998
1999 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
2000
2001         Fix Dashboard test _presentPopoverForJavaScriptCoreTestRegressions
2002         https://bugs.webkit.org/show_bug.cgi?id=170193
2003
2004         Reviewed by Alexey Proskuryakov.
2005
2006         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
2007         Fixed the order of arguments.
2008
2009 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
2010
2011         Dashboard tests fails to fetch the revision from commits
2012         https://bugs.webkit.org/show_bug.cgi?id=170191
2013
2014         Reviewed by Alexey Proskuryakov.
2015
2016         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/MockTrac.js:
2017         Added recordedCommitIndicesByRevisionNumber.
2018         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
2019         (setup): Populated trac.recordedCommitIndicesByRevisionNumber since the dashboard code uses this variable.
2020
2021 2017-03-28  Timothy Horton  <timothy_horton@apple.com>
2022
2023         Safari crashes when attempting to close tab that is displaying PDF
2024         https://bugs.webkit.org/show_bug.cgi?id=170201
2025         <rdar://problem/31242019>
2026
2027         Reviewed by Wenson Hsieh.
2028
2029         * TestWebKitAPI/Tests/WebKit2Cocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
2030         (TEST):
2031         Add a test for doAfterNextStablePresentationUpdate just like the existing
2032         non-stable one.
2033
2034 2017-03-28  Jonathan Bedard  <jbedard@apple.com>
2035
2036         webkitpy: Use host pattern for devices
2037         https://bugs.webkit.org/show_bug.cgi?id=170121
2038
2039         Reviewed by Daniel Bates.
2040
2041         Devices should be treated like hosts throughout webkitpy
2042         so that more code can be re-used.  Add the needed properties
2043         and use executive over custom implemented polling/killing
2044         functions.
2045
2046         * Scripts/webkitpy/port/device.py:
2047         (Device):
2048         (Device.executive): Add optional executive property.
2049         (Device.filesystem): Add optional filesystem property.
2050         (Device.user): Add optional user property.
2051         (Device.platform): Add optional platform property.
2052         (Device.workspace): Add optional workspace property.
2053         (Device.poll): Deleted.
2054         * Scripts/webkitpy/port/simulator_process.py:
2055         (SimulatorProcess.Popen.poll): Use the devices executive.
2056         (SimulatorProcess.stop): Ditto.
2057         (SimulatorProcess._kill): Ditto.
2058         * Scripts/webkitpy/xcode/simulated_device.py:
2059         (SimulatedDevice.__init__): Add executive, filesystem, user, platform
2060         and workspace to the platform device.
2061         (SimulatedDevice.poll): Deleted.
2062
2063 2017-03-28  Aakash Jain  <aakash_jain@apple.com>
2064
2065         Dashboard test fails with error: latestIterationGetter is not a function
2066         https://bugs.webkit.org/show_bug.cgi?id=170167
2067
2068         Reviewed by Alexey Proskuryakov.
2069
2070         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/resources/tests.js:
2071         (this.view._latestProductiveIteration): Configure _latestProductiveIteration in setup.
2072
2073 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2074
2075         Another test v8.
2076
2077 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2078
2079         Another test v7.
2080
2081 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2082
2083         Another test v6.
2084
2085 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2086
2087         Another test v5.
2088
2089 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2090
2091         Another test v4.
2092
2093 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2094
2095         Another test v3.
2096
2097 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2098
2099         Another test v2.
2100
2101 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2102
2103         Another test.
2104
2105 2017-03-27  Lucas Forschler  <lforschler@apple.com>
2106
2107         <rdar://problem/30949128>
2108         Update build.webkit.org to use port 16000 for PBChangeSource.
2109         
2110         Reviewed by Alexey Proskuryakov.
2111
2112         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2113
2114 2017-03-27  Jason Marcell  <jmarcell@apple.com>
2115
2116         Bots should run the dashboard tests
2117         https://bugs.webkit.org/show_bug.cgi?id=168994
2118
2119         Reviewed by Daniel Bates and David Kilzer.
2120
2121         We pull the `--results-directory` argument value out so that `RunDashboardTests` can override it so that we can separately run the dashboard layout tests.
2122
2123         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2124         (RunWebKitTests): Define a class variable called resultDirectory for the `--results-directory` argument so that subclasses can override this if needed.
2125         (RunWebKitTests.start): Set the `--results-directory` argument value to the value of self.resultDirectory.
2126         (RunDashboardTests): Subclass of RunWebKitTests in which we run the layout tests for the Bot Watcher's Dashboard.
2127         (RunDashboardTests.start): Override the `--layout-tests-directory` to point to the dashboard layout tests.
2128         (ExtractTestResults.addCustomURLs): Update the current results URL label to indicate that it links to layout tests results and add a new link to link to dashboard layout test results.
2129         (TestFactory.__init__): Update unit tests to account for new RunDashboardTests step.
2130         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2131         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
2132
2133 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
2134
2135         webkitpy: Look for 'ios' test expectations for IOSPorts
2136         https://bugs.webkit.org/show_bug.cgi?id=169413
2137
2138         Reviewed by Alexey Proskuryakov.
2139
2140         Test expectations for iOS tests should include the 'ios' folder.  Modify
2141         default_baseline_search_path to include 'ios' folder and derivatives for
2142         IOSPort.
2143
2144         * Scripts/webkitpy/port/ios.py:
2145         (IOSPort._generate_all_test_configurations): Moved from IOSSimulatorPort.
2146         (IOSPort.default_baseline_search_path): Add ios expectations along with port specific expectations.
2147         (IOSPort.test_expectations_file_position): Added for testing.
2148         * Scripts/webkitpy/port/ios_simulator.py:
2149         (IOSSimulatorPort._generate_all_test_configurations): Moved to IOSPort.
2150         (IOSSimulatorPort.default_baseline_search_path): Moved to IOSPort.
2151
2152 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
2153
2154         REGRESSION: Reseting _device_map on each child process
2155         <rdar://problem/31274476>
2156
2157         Unreviewed infrastructure fix.
2158
2159         * Scripts/webkitpy/port/ios_simulator.py:
2160         (IOSSimulatorPort): Add _DEVICE_MAP class variable.
2161         (IOSSimulatorPort.__init__): Use shared class variable
2162         (IOSSimulatorPort._device_for_worker_number_map): Use _DEVICE_MAP class variable
2163         (IOSSimulatorPort._create_devices): Ditto.
2164         (IOSSimulatorPort._quit_ios_simulator): Ditto.
2165         (IOSSimulatorPort.clean_up_test_run): Ditto.
2166
2167 2017-03-27  Jonathan Bedard  <jbedard@apple.com>
2168
2169         REGRESSION: Failing to iterate over Simulator.managed_devices map
2170         <rdar://problem/31274476>
2171
2172         Unreviewed infrastructure fix.
2173
2174         * Scripts/webkitpy/port/ios_simulator.py:
2175         (IOSSimulatorPort._create_devices): Iterate through managed_devices by worker number.
2176
2177 2017-03-27  Alex Christensen  <achristensen@webkit.org>
2178
2179         Make WebSockets work in network process
2180         https://bugs.webkit.org/show_bug.cgi?id=169930
2181
2182         Reviewed by Youenn Fablet.
2183
2184         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2185         Add terminateNetworkProcess for the new test
2186         http/tests/websocket/tests/hybi/network-process-crash-error.html
2187         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2188         (WTR::TestRunner::setAllowsAnySSLCertificate):
2189         (WTR::TestRunner::terminateNetworkProcess):
2190         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2191         * WebKitTestRunner/TestController.cpp:
2192         (WTR::TestController::setAllowsAnySSLCertificate):
2193         (WTR::TestController::terminateNetworkProcess):
2194         * WebKitTestRunner/TestController.h:
2195         * WebKitTestRunner/TestInvocation.cpp:
2196         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2197         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2198         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2199         (WTR::TestController::platformContext):
2200         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2201         (WTR::TestController::platformContext):
2202         (WTR::TestController::platformLibraryPathForTesting):
2203         Add some infrastructure for http/tests/websocket/tests/hybi/simple-wss.html
2204         which calls testRunner.setAllowsAnySSLCertificate.  It used to only be effective
2205         for the WebProcess, but SocketStreamHandleImpl::createStreams is now in the NetworkProcess,
2206         and we need its call to Settings::allowsAnySSLCertificate to be loosened for this test,
2207         which tests that wss works, but our test certificate has an invalid certificate chain.
2208         We want production software to not have the ability to have its security weakened, so this
2209         is a test code path that is only implemented in WebKitTestRunner.
2210
2211 2017-03-25  Jonathan Bedard  <jbedard@apple.com>
2212
2213         webkitpy: Use generalized device instead of platform specific one
2214         https://bugs.webkit.org/show_bug.cgi?id=170078
2215
2216         Reviewed by Daniel Bates.
2217
2218         SimulatedDevice is re-created each time 'xcrun simctl list' is called.  Device
2219         should remain persistent.  Changing Device to a more explicit interface.
2220         SimulatedDevice no longer inherits from Device and IOSSimulator returns Devices
2221         wrapping SimulatedDevices.
2222
2223         * Scripts/webkitpy/port/device.py: Added.
2224         (Device):
2225         (Device.__init__): Construct with platform device.
2226         (Device.install_app): Install app at app path on platform device.
2227         (Device.launch_app): Launch app with bundle ID on platform device.
2228         (Device.poll): Poll platform device.
2229         (Device.udid): Access platform device UDID.
2230         (Device.__nonzero__): Check if instantiated with a valid platform device.
2231         (Device.__eq__): Compare by udid.
2232         (Device.__ne__): Ditto.
2233         (Device.__repr__): Print out platform_device representation.
2234         * Scripts/webkitpy/port/ios_simulator.py:
2235         (IOSSimulatorPort.__init__): Initialize the _device_map to an empty dictionary.
2236         (IOSSimulatorPort._device_for_worker_number_map):  Return self._device_map.
2237         (IOSSimulatorPort._create_simulators): Call Simulator.managed_devices directly.
2238         (IOSSimulatorPort._create_devices): Place Simulator.managed_devices into the
2239         device map.
2240         (IOSSimulatorPort._quit_ios_simulator): Reset self._device_map.
2241         * Scripts/webkitpy/xcode/device.py: Removed.
2242         * Scripts/webkitpy/xcode/simulated_device.py:
2243         (SimulatedDevice):
2244         (SimulatedDevice.__init__): Move host, name and did to SimulatedDevice.
2245         (SimulatedDevice.__eq__): Compare two simulated devices.
2246         (SimulatedDevice.__ne__): Ditto.
2247         (SimulatedDevice.__repr__): Print name and udid.
2248
2249 2017-03-25  Adrian Perez de Castro  <aperez@igalia.com>
2250
2251         [GTK] No value returned from PrintCustomWidgetTest::createWebKitPrintOperation() in TestPrinting.cpp
2252         https://bugs.webkit.org/show_bug.cgi?id=170059
2253
2254         Reviewed by Carlos Garcia Campos.
2255
2256         * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp: Use "void" as return type in the declaration,
2257         the only use of the method in this same file ignores the returned value anyway.
2258
2259 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
2260
2261         webkitpy should be able to run API tests
2262         https://bugs.webkit.org/show_bug.cgi?id=170028
2263
2264         Reviewed by Alexey Proskuryakov.
2265
2266         * Scripts/webkitpy/common/config/ports.py:
2267         (DeprecatedPort.run_api_tests_command): Added.
2268         * Scripts/webkitpy/port/base.py:
2269         (Port.api_results_directory): Added.
2270         * Scripts/webkitpy/tool/steps/runtests.py:
2271         (RunTests.run): Check if we should be running API tests.
2272         (RunTests._run_api_tests): Generate script to run API tests with json output.
2273         * Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
2274
2275 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
2276
2277         Add JSON results for API tests
2278         https://bugs.webkit.org/show_bug.cgi?id=170021
2279
2280         Reviewed by Alexey Proskuryakov.
2281
2282         * Scripts/run-api-tests:
2283         (runTestsBySuite): Appends failures and timeouts to JSON data.
2284         (writeJsonDataIfApplicable): Writes JSON data to a file.
2285
2286 2017-03-24  Lucas Forschler  <lforschler@apple.com>
2287
2288         update committer_auth.py to be python 2.7 compliant
2289         https://bugs.webkit.org/show_bug.cgi?id=170063
2290         
2291         Reviewed by Alexey Proskuryakov.
2292
2293         * BuildSlaveSupport/build.webkit.org-config/committer_auth.py:
2294         (CommitterAuth.authenticate):
2295             convert e.message to e.args[0]
2296
2297 2017-03-24  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
2298
2299         webkitpy: Parse JSON results from run-api-tests
2300         https://bugs.webkit.org/show_bug.cgi?id=170062
2301
2302         Reviewed by Alexey Proskuryakov.
2303
2304         * Scripts/webkitpy/common/net/apitestresults.py: Added.
2305         (APITestResults): Structure to represent API test results.
2306         (APITestResults.__init__):
2307         (APITestResults.intersection): Return the failures common to both sets of results.
2308         (APITestResults.results_from_string): Create an APITestResults object from a JSON results string.
2309         (APITestResults.equals): Return True if both results were the same.
2310         (APITestResults.is_subset): Return True if failing tests are a subset of the other failing tests.
2311         (APITestResults.all_passed): Return True if everything passed.
2312         (APITestResults.failing_tests): List of tests that didn't pass.
2313         (APITestResults.did_exceed_test_failure_limit): Always False.
2314         * Scripts/webkitpy/common/net/apitestresults_unittest.py: Added.
2315         (APITestResultsTest): Unit tests.
2316         * Scripts/webkitpy/tool/bot/apitestresultsreader.py: Added.
2317         (APITestResultsReader): Read contents of JSON results file.
2318
2319 2017-03-24  Alex Christensen  <achristensen@webkit.org>
2320
2321         REGRESSION: Content Blocker: Blocking "a[href*=randomString]" doesn't work
2322         https://bugs.webkit.org/show_bug.cgi?id=169167
2323
2324         Reviewed by Simon Fraser.
2325
2326         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2327         (TestWebKitAPI::TEST_F):
2328         Test an example of a selector that was incorrectly determined to be invalid.
2329
2330 2017-03-24  Jonathan Bedard  <jbedard@apple.com>
2331
2332         Increase timeout for booting simulators.
2333         <rdar://problem/31080009>
2334
2335         Unreviewed infrastructure fix.
2336
2337         * Scripts/webkitpy/xcode/simulator.py:
2338         (Simulator.wait_until_device_is_booted): Increase timeout.
2339         (Simulator.wait_until_device_is_in_state): Increase timeout.
2340
2341 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2342
2343         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r214277.
2344
2345         Since r214277 beforeunload events are not fired unless there's some user interaction, so we need to simulate it
2346         in our unit tests to work.
2347
2348         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
2349         (testWebViewJavaScriptDialogs):
2350
2351 2017-03-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2352
2353         [GTK] Add MIMETypeRegistry implementation using xdgmime and remove the GTK+ one
2354         https://bugs.webkit.org/show_bug.cgi?id=170001
2355
2356         Reviewed by Michael Catanzaro.
2357
2358         Ignore style of xdgmime sources.
2359
2360         * Scripts/webkitpy/tool/steps/checkstyle.py:
2361
2362 2017-03-23  Wenson Hsieh  <wenson_hsieh@apple.com>
2363
2364         Dragging on a large image should not revert to a file icon if data interaction is enabled
2365         https://bugs.webkit.org/show_bug.cgi?id=170018
2366         <rdar://problem/31184508>
2367
2368         Reviewed by Tim Horton.
2369
2370         Add new tests for data interaction. LargeImageToTargetDiv verifies the change made in this patch, while
2371         AttachmentElementItemProviders was a test that was previously removed due to <rdar://problem/31038797>.
2372
2373         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2374         * TestWebKitAPI/Tests/WebKit2Cocoa/large-red-square.png: Added.
2375         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2376         (TestWebKitAPI::TEST):
2377
2378 2017-03-23  Fujii Hironori  <Hironori.Fujii@sony.com>
2379
2380         Update WinCairoRequirements.zip
2381         https://bugs.webkit.org/show_bug.cgi?id=169950
2382
2383         Reviewed by Alex Christensen.
2384
2385         * Scripts/update-webkit-wincairo-libs: Replace $winCairoLibsURL.
2386
2387 == Rolled over to ChangeLog-2017-03-23 ==