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