[GLIB] Remove delete on destroy GMainLoopSources
[WebKit-https.git] / Tools / ChangeLog
1 2015-11-02  Carlos Garcia Campos  <cgarcia@igalia.com>
2
3         [GLIB] Remove delete on destroy GMainLoopSources
4         https://bugs.webkit.org/show_bug.cgi?id=150771
5
6         Reviewed by Žan Doberšek.
7
8         * TestWebKitAPI/Tests/WTF/glib/GMainLoopSource.cpp:
9         (TestWebKitAPI::TEST): Remove DeleteOnDestroy unit tests.
10         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
11         (WebViewTest::wait): Use g_timeout_add instead of GMainLoopSource.
12
13 2015-11-01  Yusuke Suzuki  <utatane.tea@gmail.com>
14
15         [ES6] Support Generator Syntax
16         https://bugs.webkit.org/show_bug.cgi?id=150769
17
18         Reviewed by Geoffrey Garen.
19
20         Added ENABLE_ES6_GENERATORS flag.
21
22         * Scripts/webkitperl/FeatureList.pm:
23
24 2015-11-01  Alexey Proskuryakov  <ap@apple.com>
25
26         Sort EWS bots in popovers
27         https://bugs.webkit.org/show_bug.cgi?id=150782
28
29         Reviewed by Darin Adler.
30
31         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueView.js:
32         (BubbleQueueView.prototype._popoverContentForBubbleQueue):
33
34 2015-10-31  Filip Pizlo  <fpizlo@apple.com>
35
36         B3::reduceStrength's DCE should be more agro and less wrong
37         https://bugs.webkit.org/show_bug.cgi?id=150748
38
39         Reviewed by Geoffrey Garen.
40
41         Add an LLVM version of testb3's "testComplex".
42
43         * ReducedFTL/ComplexTest.cpp: Added.
44
45 2015-11-01  Commit Queue  <commit-queue@webkit.org>
46
47         Unreviewed, rolling out r191831.
48         https://bugs.webkit.org/show_bug.cgi?id=150774
49
50         The new test fails (Requested by ap on #webkit).
51
52         Reverted changeset:
53
54         "Begin work on supporting reply blocks in
55         _WKRemoteObjectRegistry"
56         https://bugs.webkit.org/show_bug.cgi?id=150739
57         http://trac.webkit.org/changeset/191831
58
59 2015-10-31  Andreas Kling  <akling@apple.com>
60
61         Add a debug overlay with information about web process resource usage.
62         <https://webkit.org/b/150599>
63
64         Reviewed by Darin Adler.
65
66         Add a menu item to the MiniBrowser so we can toggle the resource usage overlay on/off.
67
68         * MiniBrowser/mac/SettingsController.h:
69         * MiniBrowser/mac/SettingsController.m:
70         (-[SettingsController _populateMenu]):
71         (-[SettingsController validateMenuItem:]):
72         (-[SettingsController toggleShowResourceUsageOverlay:]):
73         (-[SettingsController resourceUsageOverlayVisible]):
74         * MiniBrowser/mac/WK2BrowserWindowController.m:
75         (-[WK2BrowserWindowController didChangeSettings]):
76
77 2015-10-31  Lucas Forschler  <lforschler@apple.com>
78
79         Teach the CompileWebKit step to look for additional arguments.
80         
81         Unreviewed config change.
82
83         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
84         (CompileWebKit.start):
85
86 2015-10-30  Anders Carlsson  <andersca@apple.com>
87
88         Begin work on supporting reply blocks in _WKRemoteObjectRegistry
89         https://bugs.webkit.org/show_bug.cgi?id=150739
90
91         Reviewed by Tim Horton.
92
93         Add a test. We only test the encoding right now.
94
95         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.h:
96         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
97         (TEST):
98         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistryPlugIn.mm:
99         (-[RemoteObjectRegistryPlugIn sayHello:completionHandler:]):
100
101 2015-10-30  Lucas Forschler  <lforschler@apple.com>
102
103         Add CMAke builder to build.webkit.org
104         https://bugs.webkit.org/show_bug.cgi?id=150738
105         
106         Reviewed by Alex Christensen.
107
108         * BuildSlaveSupport/build.webkit.org-config/config.json:
109
110 2015-10-30  Brent Fulgham  <bfulgham@apple.com>
111
112         [Win] build-jsc and run-javascriptcore-tests do not work
113         https://bugs.webkit.org/show_bug.cgi?id=150700
114
115         Reviewed by Mark Lam.
116         
117         Correct our build system so that it expects Windows to be using CMake,
118         and to build the correct sub-projects for our JSC helper scripts.
119
120         * Scripts/build-jsc: Make sure to build the testapi harness when
121           building for Windows.
122         * Scripts/build-webkit:
123           (1) Use the existing 'cmakeBasedPortName()'
124           (2) Use File::Spec rather than hard-coding path delimeters.
125           (3) Refer to Visual Studio 14.0, rather than the unsupported 12.0.
126         method rather than hard-coding the name based on conditional.
127         * Scripts/copy-webkitlibraries-to-product-directory: Don't try to grab
128           LLVM libraries on Apple Windows build.
129         * Scripts/run-javascriptcore-tests:
130         (testapiPath): Use File::Spec rather than hard-coding path delimeters.
131         * Scripts/run-jsc: Ditto.
132         * Scripts/webkitdirs.pm:
133         (cmakeBasedPortName): Update to return the right value for the Apple
134         Windows port and the WinCairo port.
135         (isCMakeBuild): Expect CMake build for all Windows ports.
136
137 2015-10-30  Carlos Garcia Campos  <cgarcia@igalia.com>
138
139         [JHBuild] Do not try to update the dependencies if jhbuild configuration hasn't changed
140         https://bugs.webkit.org/show_bug.cgi?id=150665
141
142         Reviewed by Csaba Osztrogonác.
143
144         We check it only to wipe the directory or not, but we are still
145         tryihng to update every module even when the configuration hasn't
146         changed. This is problematic because it makes the whole build fail
147         when any repository fails to checkout an already checked out
148         revision, because the server is down for example. This is even
149         more problematic for the bots that skip perfectly valid revisions.
150         It's still possible to force an update passing --force command
151         line argument.
152
153         * Scripts/update-webkit-libs-jhbuild:
154         (deleteJhbuildMd5): Delete the md5sum files if exist.
155         (runJhbuild): Return early if the md5sum files haven't
156         changed. Only write them after a successful build and delete them
157         if the build fails to ensure we don't skip next run.
158
159 2015-10-30  Philippe Normand  <pnormand@igalia.com>
160
161         [GTK] Fix MacCLang build errors in Tools
162         https://bugs.webkit.org/show_bug.cgi?id=150031
163
164         Reviewed by Carlos Garcia Campos.
165
166         * TestWebKitAPI/PlatformWebView.h: Fix PlatformWindow typedef on OSX flavor of the GTK port.
167         * TestWebKitAPI/gtk/PlatformWebViewGtk.cpp: Include WKView.h for WKViewCreate().
168         * WebKitTestRunner/PlatformWebView.h: Fix PlatformWindow typedef on OSX flavor of the GTK port.
169         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp: Include WKView.h for WKViewCreate().
170
171 2015-10-29  Hunseop Jeong  <hs85.jeong@samsung.com>
172
173         [EFL] MiniBrowser didn't work after r191749.
174         https://bugs.webkit.org/show_bug.cgi?id=150706
175
176         Reviewed by Alex Christensen.
177
178         Renamed jhbuildWrapperPrefixIfNeeded to wrapperPrefixIfNeeded in r191749.
179
180         * Scripts/run-minibrowser:
181
182 2015-10-29  Commit Queue  <commit-queue@webkit.org>
183
184         Unreviewed, rolling out r191766.
185         https://bugs.webkit.org/show_bug.cgi?id=150707
186
187         Problem with Cygwin build (Requested by bfulgham_ on #webkit).
188
189         Reverted changeset:
190
191         "[Win] build-jsc and run-javascriptcore-tests do not work"
192         https://bugs.webkit.org/show_bug.cgi?id=150700
193         http://trac.webkit.org/changeset/191766
194
195 2015-10-29  Brent Fulgham  <bfulgham@apple.com>
196
197         [Win] build-jsc and run-javascriptcore-tests do not work
198         https://bugs.webkit.org/show_bug.cgi?id=150700
199
200         Reviewed by Mark Lam.
201         
202         Correct our build system so that it expects Windows to be using CMake,
203         and to build the correct sub-projects for our JSC helper scripts.
204
205         * Scripts/build-jsc: Make sure to build the testapi harness when
206           building for Windows.
207         * Scripts/build-webkit:
208           (1) Use the existing 'cmakeBasedPortName()'
209           (2) Use File::Spec rather than hard-coding path delimeters.
210           (3) Refer to Visual Studio 14.0, rather than the unsupported 12.0.
211         method rather than hard-coding the name based on conditional.
212         * Scripts/run-javascriptcore-tests:
213         (testapiPath): Use File::Spec rather than hard-coding path delimeters.
214         * Scripts/run-jsc: Ditto.
215         * Scripts/webkitdirs.pm:
216         (cmakeBasedPortName): Update to return the right value for the Apple
217         Windows port and the WinCairo port.
218         (isCMakeBuild): Expect CMake build for all Windows ports.
219
220 2015-10-29  Alex Christensen  <achristensen@webkit.org>
221
222         Fix build-jsc on Mac after r191749.
223
224         * Scripts/build-jsc:
225         Use isCMakeBuild to determine if we are building with CMake instead of cmakeBasedPortName.
226
227 2015-10-29  Alex Christensen  <achristensen@webkit.org>
228
229         Fix Mac CMake build
230         https://bugs.webkit.org/show_bug.cgi?id=150686
231
232         Reviewed by Filip Pizlo.
233
234         * Scripts/build-webkit:
235         * Scripts/webkitdirs.pm:
236         (isCachedArgumentfileOutOfDate):
237         (wrapperPrefixIfNeeded):
238         (generateBuildSystemFromCMakeProject):
239         (buildCMakeGeneratedProject):
240         (cmakeBasedPortName):
241         (determineIsCMakeBuild):
242         (isCMakeBuild):
243         (promptUser):
244         (jhbuildWrapperPrefixIfNeeded): Deleted.
245
246 2015-10-29  Lucas Forschler  <lforschler@apple.com>
247
248         Teach JSC bots to build 32bit instead of x86_64
249         
250         Reviewed by Mark Lam.
251
252         * BuildSlaveSupport/build.webkit.org-config/config.json:
253
254 2015-10-29  Per Arne Vollan  <peavo@outlook.com>
255
256         [WinCairo] Fall back to AppleWin results in layout tests.
257         https://bugs.webkit.org/show_bug.cgi?id=150672
258
259         Reviewed by Alex Christensen.
260
261         * Scripts/webkitpy/port/win.py:
262         (WinCairoPort):
263         (WinCairoPort.default_baseline_search_path):
264
265 2015-10-28  Keith Rollin  <krollin@apple.com>
266
267         Do not sanitize user input for input[type=url]
268         https://bugs.webkit.org/show_bug.cgi?id=150346
269         <rdar://problem/23243240>
270
271         Reviewed by Brent Fulgham.
272
273         The Windows version of DumpRenderTree's eventSender.keyDown handler
274         simulates user-entry by decomposing the given character into a virtual
275         key code and a set of modifier keys. The code that determines if the
276         shift key should be simulated only worked if the character was an
277         upper case character. Extend this support to also include symbols that
278         (on the U.S. keyboard) require holding down the shift key.
279
280         This change allows fast/forms/input-user-input-sanitization.html
281         to succeed, which requires us to simulate the entering of '@' and ':'.
282
283         * DumpRenderTree/win/EventSender.cpp:
284         (keyDownCallback):
285
286 2015-10-28  Alex Christensen  <achristensen@webkit.org>
287
288         Compile and link with CMake on Mac
289         https://bugs.webkit.org/show_bug.cgi?id=150632
290
291         Reviewed by Tim Horton.
292
293         * TestWebKitAPI/PlatformMac.cmake:
294
295 2015-10-28  Xabier Rodriguez Calvar  <calvaris@igalia.com>
296
297         Unreviewed.
298
299         * Scripts/webkitpy/common/config/watchlist: Removed dead files from Streams API watchlist.
300
301 2015-10-28  Per Arne Vollan  <peavo@outlook.com>
302
303         Add WinCairo to list of ports in run-webkit-tests.
304         https://bugs.webkit.org/show_bug.cgi?id=150625
305
306         Reviewed by Brent Fulgham.
307
308         * Scripts/webkitpy/common/config/ports.py:
309         (DeprecatedPort.port):
310         (WinPort.run_webkit_tests_command):
311         (WinCairoPort):
312         (GtkWK2Port):
313         * Scripts/webkitpy/port/factory.py:
314         (PortFactory):
315         * Scripts/webkitpy/port/win.py:
316         (WinPort.find_system_pid):
317         (WinCairoPort):
318
319 2015-10-27  Alexey Proskuryakov  <ap@apple.com>
320
321         WebKitTestRunner leaks in generateWhitelist()
322         https://bugs.webkit.org/show_bug.cgi?id=150563
323
324         Reviewed by Andreas Kling.
325
326         * WebKitTestRunner/mac/TestControllerMac.mm:
327         (WTR::generateWhitelist):
328
329 2015-10-27  Anders Carlsson  <andersca@apple.com>
330
331         Add an API test for _WKRemoteObjectRegistry
332         https://bugs.webkit.org/show_bug.cgi?id=150597
333
334         Reviewed by Andreas Kling.
335
336         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
337         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.h: Added.
338         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm: Added.
339         (TEST):
340         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistryPlugIn.mm: Added.
341         (-[RemoteObjectRegistryPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
342         (-[RemoteObjectRegistryPlugIn sayHello:]):
343
344 2015-10-26  Youenn Fablet  <youenn.fablet@crf.canon.fr>
345
346         Add myself to the reviewers list
347         https://bugs.webkit.org/show_bug.cgi?id=150581
348
349         Unreviewed.
350
351         * Scripts/webkitpy/common/config/contributors.json:
352
353 2015-10-26  Ryan Haddad  <ryanhaddad@apple.com>
354
355         Adding myself to contributors.json
356
357         * Scripts/webkitpy/common/config/contributors.json:
358
359 2015-10-26  Tim Horton  <timothy_horton@apple.com>
360
361         Don't expose the whitelist/blacklist in _WKUserStyleSheet
362         https://bugs.webkit.org/show_bug.cgi?id=150566
363
364         Reviewed by Anders Carlsson.
365
366         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
367         (TEST):
368
369 2015-10-26  Philippe Normand  <pnormand@igalia.com>
370
371         Unreviewed, rolling out r191576.
372
373         broke
374
375         Reverted changeset:
376
377         "[GStreamer] Bump internal jhbuild versions to 1.6.0"
378         https://bugs.webkit.org/show_bug.cgi?id=149594
379         http://trac.webkit.org/changeset/191576
380
381 2015-10-26  ChangSeok Oh  <changseok.oh@collabora.com>
382
383         [GStreamer] Bump internal jhbuild versions to 1.6.0
384         https://bugs.webkit.org/show_bug.cgi?id=149594
385
386         Reviewed by Philippe Normand.
387
388         Bump up whole gstreamer libraries to 1.6.0. Relevant patches are no more
389         useful so they are removed accordingly.
390
391         * gtk/jhbuild.modules:
392         * gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch: Removed.
393         * gtk/patches/gst-plugins-bad-remove-gnustep-support.patch: Removed.
394         * gtk/patches/gst-plugins-base-rtp-rtcpbuffer-fix-typo-in-enum.patch: Removed.
395
396 2015-10-25  Alexey Proskuryakov  <ap@apple.com>
397
398         API tests fail on El Capitan after r191543
399         https://bugs.webkit.org/show_bug.cgi?id=150547
400
401         Reviewed by Dan Bernstein.
402
403         * Scripts/run-api-tests: (listAllTests): Add appropriate arch arguments in one more place.
404
405 2015-10-24  Tim Horton  <timothy_horton@apple.com>
406
407         Add a way to add user style sheets to WKUserContentController
408         https://bugs.webkit.org/show_bug.cgi?id=150531
409         <rdar://problem/23191691>
410
411         Reviewed by Darin Adler.
412
413         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
414         (TEST):
415
416 2015-10-24  Tim Horton  <timothy_horton@apple.com>
417
418         Expose more information about the exception in WKErrorJavaScriptExceptionOccurred errors
419         https://bugs.webkit.org/show_bug.cgi?id=150525
420
421         Reviewed by Darin Adler.
422
423         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm:
424         (TEST):
425         Test the various new keys.
426
427 2015-10-24  Frederic Wang  <fred.wang@free.fr>
428
429         check-webkit-style complains about missing operator whitespace inside character literal
430         https://bugs.webkit.org/show_bug.cgi?id=150396
431
432         Reviewed by Darin Adler.
433
434         * Scripts/webkitpy/style/checkers/cpp.py: Improve matching of C++ character literal.
435         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
436         (WebKitStyleTest.test_spacing): Add a test to verify that the spacing for the character literal 'OS/2' is not tested.
437
438 2015-10-23  Michael Saboff  <msaboff@apple.com>
439
440         REGRESSION (r179357-r179359): WebContent Crash using AOL Mail @ com.apple.JavascriptCore JSC::linkPolymorphicCall(JSC::ExecState*, JSC::CallLinkInfo&, JSC::CallVariant, JSC::RegisterPreservationMode) + 1584
441         https://bugs.webkit.org/show_bug.cgi?id=150513
442
443         Reviewed by Saam Barati.
444
445         Added a new test function, failNextNewCodeBlock() to simplify the writing of a regression test.
446
447         * DumpRenderTree/TestRunner.cpp:
448         (simulateWebNotificationClickCallback):
449         (failNextCodeBlock):
450         (numberOfDFGCompiles):
451         (TestRunner::staticFunctions):
452         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
453         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
454         (WTR::TestRunner::setBlockAllPlugins):
455         (WTR::TestRunner::failNextCodeBlock):
456         (WTR::TestRunner::numberOfDFGCompiles):
457         * WebKitTestRunner/InjectedBundle/TestRunner.h:
458
459 2015-10-23  Anders Carlsson  <andersca@apple.com>
460
461         Simplify the WebKitLegacy menu conversion code
462         https://bugs.webkit.org/show_bug.cgi?id=150509
463
464         Reviewed by Andreas Kling.
465
466         Implement the context menu delegate method so we'll test that code path.
467
468         * MiniBrowser/mac/WK1BrowserWindowController.m:
469         (-[WK1BrowserWindowController webView:contextMenuItemsForElement:defaultMenuItems:]):
470
471 2015-10-23  Per Arne Vollan  <peavo@outlook.com>
472
473         [WinCairo] Improve test results for fast layouttests.
474         https://bugs.webkit.org/show_bug.cgi?id=150464
475
476         Reviewed by Alex Christensen.
477
478         Set custom device scale factor to 1.0.
479
480         * DumpRenderTree/win/DumpRenderTree.cpp:
481         (createWebViewAndOffscreenWindow):
482
483 2015-10-23  Mark Salisbury  <mark.salisbury@hp.com>
484
485         [GTK] update-webkitgtk-libs should use mesa tarball
486
487         https://bugs.webkit.org/show_bug.cgi?id=150470
488
489         update-webkitgtk-libs downloads all build dependencies; in fixing
490         bug 148941 mesa was switched from ftp to git access.  Now an http
491         tarball is available, which is preferred over accessing via git.
492
493         Reviewed by Philippe Normand
494
495         * gtk/jhbuild.modules:
496         Mesa access changed to http tarball.
497
498 2015-10-22  Sam Weinig  <sam@webkit.org>
499
500         Navigations on the same host (but with different schemes and ports) should not trigger universal links
501         <rdar://problem/22811325>
502         https://bugs.webkit.org/show_bug.cgi?id=150481
503
504         Reviewed by Dan Bernstein.
505
506         * TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm:
507         Update test to test that navigations on the same host but with different schemes does not
508         trigger universal links, but that changes in the host do.
509
510 2015-10-22  Ryosuke Niwa  <rniwa@webkit.org>
511
512         REGRESSION (r181972): Scroll position changes to top of youtube page when switching tabs
513         https://bugs.webkit.org/show_bug.cgi?id=150428
514
515         Reviewed by Antti Koivisto.
516
517         Added a regression test using WebKit API test.
518
519         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
520         * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm: Added.
521         (TestWebKitAPI::didFinishLoadForFrame):
522         (TestWebKitAPI::TEST):
523
524 2015-10-22  Carlos Garcia Campos  <cgarcia@igalia.com>
525
526         Unreviewed. Fix GTK+ build after r191423.
527
528         Add WebKitDOMHTMLBaseFontElement to the list of deleted classes.
529
530         * gtk/webkitdom.py:
531         (WebKitDOMDocGenerator):
532
533 2015-10-22  Aakash Jain  <aakash_jain@apple.com>
534
535         [Win][EFL][GTK] webkitpy test failed after r191374.
536         https://bugs.webkit.org/show_bug.cgi?id=150433
537
538         Reviewed by Alexey Proskuryakov.
539
540         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
541         (CrashLogsTest.test_find_all_log_darwin): Check platform before running test.
542         (CrashLogsTest.test_find_log_darwin): Same.
543
544 2015-10-21  Brian Burg  <bburg@apple.com>
545
546         Unreviewed, update watchlist for JS builtins.
547
548         Add a category for JS builtins code generator, similar to other generators.
549
550         Add a nag message to rebaseline builtins generator tests when touching
551         code generator files in Source/JavaScriptCore/Scripts/builtins/.
552
553         * Scripts/webkitpy/common/config/watchlist:
554
555 2015-10-21  Brian Burg  <bburg@apple.com>
556
557         Restructure generate-js-bindings script to be modular and testable
558         https://bugs.webkit.org/show_bug.cgi?id=149929
559
560         Reviewed by Alex Christensen.
561
562         Add a stub shell script and basic webkitpy support for running builtins
563         generator tests.
564
565         * Scripts/run-builtins-generator-tests: Added.
566         (main):
567         * Scripts/webkitpy/codegen/__init__.py: Added.
568         * Scripts/webkitpy/codegen/main.py: Added.
569
570             The only interesting difference here from the inspector protocol
571             generator equivalent is that this implementation decodes the target
572             framework and output mode (combined or separate) from the test's file name.
573
574         (BuiltinsGeneratorTests):
575         (BuiltinsGeneratorTests.__init__):
576         (BuiltinsGeneratorTests.generate_from_js_builtins):
577         (BuiltinsGeneratorTests.write_error_file):
578         (BuiltinsGeneratorTests.detect_changes):
579         (BuiltinsGeneratorTests.run_tests):
580         (BuiltinsGeneratorTests.main):
581
582 2015-10-21  Aakash Jain  <aakash_jain@apple.com>
583
584         run-webkit-tests does not copy all crash logs for layout test failures on Mac
585         https://bugs.webkit.org/show_bug.cgi?id=150407
586         <rdar://problem/22239750>
587
588         Reviewed by Alexey Proskuryakov.
589
590         * Scripts/webkitpy/port/mac.py:
591         (MacPort._merge_crash_logs): Merge unique crash logs from two dictionaries.
592         (MacPort._look_for_all_crash_logs_in_log_dir): Get the crash logs from
593         the log directory.
594         (MacPort.look_for_new_crash_logs): Uses above method to get crash logs
595         from log directory and merge them with the list of already crashed tests.
596
597 2015-10-21  Filip Pizlo  <fpizlo@apple.com>
598
599         Failures in PutStackSinkingPhase should be less severe
600         https://bugs.webkit.org/show_bug.cgi?id=150400
601
602         Reviewed by Geoffrey Garen.
603
604         Add a test mode for no PutStackSinkingPhase.
605
606         * Scripts/run-jsc-stress-tests:
607
608 2015-10-21  Nan Wang  <n_wang@apple.com>
609
610         AX: Expose table size and cell indexes on iOS
611         https://bugs.webkit.org/show_bug.cgi?id=150366
612
613         Reviewed by Chris Fleizach.
614
615         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
616         (AccessibilityUIElement::rowCount):
617         (AccessibilityUIElement::columnCount):
618         (AccessibilityUIElement::indexInTable):
619         (AccessibilityUIElement::numberAttributeValue):
620         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
621         (WTR::AccessibilityUIElement::numberAttributeValue):
622         (WTR::AccessibilityUIElement::rowCount):
623         (WTR::AccessibilityUIElement::columnCount):
624         (WTR::AccessibilityUIElement::indexInTable):
625
626 2015-10-21  Youenn Fablet  <youenn.fablet@crf.canon.fr>
627
628         W3C test importer should not import reference files as regular tests
629         https://bugs.webkit.org/show_bug.cgi?id=150331
630
631         Reviewed by Darin Adler.
632
633         Updated test_parser to return information that a file can be a referencefile or a manual test.
634         Updated test importer to skip those files.
635         Updated/Added test parser unit tests accordingly.
636
637         Updated test importer to import all not-test files, as they are usually used by tests and lead to test failing or timing out.
638         Updated test importer to log these 'resource' files that are not in a resources folder, and suggest to import script user
639         to mark these files as Skip, since they are not direct tests. 
640
641         * Scripts/webkitpy/w3c/test_importer.py:
642         (TestImporter.__init__):
643         (TestImporter.find_importable_tests):
644         (TestImporter.import_tests):
645         * Scripts/webkitpy/w3c/test_parser.py:
646         (TestParser.analyze_test):
647         * Scripts/webkitpy/w3c/test_parser_unittest.py:
648         (test_analyze_non_html_file):
649         (test_reference_test):
650
651 2015-10-20  Aakash Jain  <aakash_jain@apple.com>
652
653         run-webkit-tests does not copy all crash logs for layout test failures on iOS
654         https://bugs.webkit.org/show_bug.cgi?id=150056
655         <rdar://problem/9280656>
656
657         Reviewed by Alexey Proskuryakov.
658
659         * Scripts/webkitpy/common/system/crashlogs.py:
660         (CrashLogs.find_all_logs): Generic method to find all crash logs.
661         (CrashLogs._find_all_logs_darwin): Darwin based method to find all crash logs.
662         It iterates through log directory and returns all the logs based on timestamp.
663         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
664         (CrashLogsTest.create_crash_logs_darwin): Creates sample crash logs and verify them.
665         (CrashLogsTest.test_find_all_log_darwin): Testcase for above find_all_logs method
666         (CrashLogsTest.test_find_log_darwin): Restructured to share code with other methods.
667         * Scripts/webkitpy/layout_tests/controllers/manager.py:
668         (Manager.run): Modified start_time to start counting before simulator launch
669         so that we can capture crashes during simualator launch.
670         (Manager._look_for_new_crash_logs): Browse through list of crashes and append
671         any test which is not already marked as CRASH to the run_results.
672         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
673         (TestExpectationsModel.get_expectations_string): return PASS in case there
674         are no expectations defined for this test.
675         * Scripts/webkitpy/layout_tests/models/test_run_results.py:
676         (summarize_results): Add other_crashes in a separte category in full_results.json.
677         * Scripts/webkitpy/port/ios.py:
678         (IOSSimulatorPort._merge_crash_logs): Merge unique crash logs from two dictionaries.
679         (IOSSimulatorPort._look_for_all_crash_logs_in_log_dir): Get the crash logs
680         from the log directory.
681         (IOSSimulatorPort.look_for_new_crash_logs): Uses above method to get crash
682         logs from log directory and merge them with the list of already crashed tests.
683
684 2015-10-20  Dana Burkart  <dburkart@apple.com>
685
686         Fix the build
687
688         Unreviewed.
689
690         My previous patch was missing a necessary space character.
691
692         * Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl:
693
694 2015-10-20  Dana Burkart  <dburkart@apple.com>
695
696         svn-apply fails to apply binary diffs in some cases
697         https://bugs.webkit.org/show_bug.cgi?id=64647
698
699         Reviewed by Daniel Bates.
700
701         * Scripts/VCSUtils.pm:
702         (decodeGitBinaryPatchDeltaSize): Modified.
703         We need to handle the case where the binary diff is the last in the patch; so we match on "-- \n" or "\Z".
704         * Tools/Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl: Added.
705
706 2015-10-20  Alexey Proskuryakov  <ap@apple.com>
707
708         Mac Debug EWS never finishes when there are failures
709         https://bugs.webkit.org/show_bug.cgi?id=150334
710
711         Reviewed by Daniel Bates.
712
713         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
714         * Scripts/webkitpy/tool/commands/queues.py:
715
716 2015-10-20  Philippe Normand  <pnormand@igalia.com>
717
718         [GTK] Enable OpenWebRTC test video/audio sources in tests
719
720         This is needed because we can't expect the buildbots to have
721         webcam/mic devices plugged in.
722
723         Rubber-stamped by Carlos Garcia Campos.
724
725         * Scripts/run-gtk-tests:
726         (TestRunner._setup_testing_environment):
727         * Scripts/webkitpy/port/gtk.py:
728         (GtkPort.setup_environ_for_server):
729
730 2015-10-20  Yoav Weiss  <yoav@yoav.ws>
731
732         Rename the PICTURE_SIZES flag to CURRENTSRC
733         https://bugs.webkit.org/show_bug.cgi?id=150275
734
735         Reviewed by Dean Jackson.
736
737         * Scripts/webkitperl/FeatureList.pm:
738
739 2015-10-19  Hunseop Jeong  <hs85.jeong@samsung.com>
740
741         Unreviewed, add myself to the committers list.
742
743         * Scripts/webkitpy/common/config/contributors.json:
744
745 2015-10-19  Alexey Proskuryakov  <ap@apple.com>
746
747         Add new EWS queues to bot watcher's dashboard
748         https://bugs.webkit.org/show_bug.cgi?id=150297
749
750         Reviewed by Darin Adler.
751
752         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
753         (BubbleQueueServer):
754
755 2015-10-19  ChangSeok Oh  <changseok.oh@collabora.com>
756
757         REGRESSION(r190262): User media unit test failures after r190262
758         https://bugs.webkit.org/show_bug.cgi?id=149580
759
760         Reviewed by Carlos Garcia Campos.
761
762         The test failures on usermedia-permission-requests and WebKit2.UserMediaBasic have gone.
763         So we do not need to skip them anymore.
764
765         * Scripts/run-gtk-tests:
766         (TestRunner): Deleted.
767
768 2015-10-19  Csaba Osztrogonác  <ossy@webkit.org>
769
770         Add historical addresses to contributors.json
771         https://bugs.webkit.org/show_bug.cgi?id=150227
772
773         Reviewed by Darin Adler.
774
775         * Scripts/webkitpy/common/config/contributors.json:
776
777 2015-10-18  Sungmann Cho  <sungmann.cho@navercorp.com>
778
779         [Win] Change the DLL name in MiniBrowserLib.vcxproj to match webkit.org/b/150124.
780         https://bugs.webkit.org/show_bug.cgi?id=150307
781
782         Reviewed by Brent Fulgham.
783
784         The DLL build rules have been changed to generate "{Name}Lib.DLL",
785         but these changes have not yet been applied to the Visual Studio builds.
786
787         * MiniBrowser/MiniBrowser.vcxproj/MiniBrowserLib.vcxproj:
788
789 2015-10-16  Andreas Kling  <akling@apple.com>
790
791         [EFL, AppleWin] WTF.ConcatenateCharacterArrayAndEmptyString API test failed
792         <https://webkit.org/b/150153>
793
794         Unreviewed.
795
796         Just use simple arrays of LChar and UChar for this test instead of creating String
797         objects and then getting the characters8()/characters16() from them, since that
798         doesn't guarantee null-termination (the bug.)
799
800         * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
801         (TestWebKitAPI::TEST):
802         (TestWebKitAPI::build): Deleted.
803
804 2015-10-16  Tim Horton  <timothy_horton@apple.com>
805
806         WebKit2.AutoLayoutIntegration API test is failing on some of the bots
807         https://bugs.webkit.org/show_bug.cgi?id=150255
808
809         Reviewed by Simon Fraser.
810
811         * Scripts/run-api-tests:
812         (runTest):
813         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
814         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:]):
815         (-[AutoLayoutWKWebView layoutAtMinimumWidth:andExpectContentSizeChange:]):
816         (-[AutoLayoutWKWebView load:expectingContentSize:]): Deleted.
817         (-[AutoLayoutWKWebView expectContentSizeChange:]): Deleted.
818         Don't set the layout size until after the load finishes and we're waiting
819         for the reply, so that there is no race between the new size coming in
820         and us waiting for it.
821
822 2015-10-16  Anders Carlsson  <andersca@apple.com>
823
824         WebEditingDelegate should be a formal protocol
825         https://bugs.webkit.org/show_bug.cgi?id=150254
826         <rdar://problem/23149847>
827
828         Reviewed by Dan Bernstein.
829
830         * DumpRenderTree/mac/EditingDelegate.h:
831         Conform to the WebEditingDelegate protocol.
832
833 2015-10-16  Tim Horton  <timothy_horton@apple.com>
834
835         Hook up autolayout intrinsic sizing for WKWebView
836         https://bugs.webkit.org/show_bug.cgi?id=150219
837         <rdar://problem/20016905>
838
839         Reviewed by Simon Fraser.
840
841         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
842         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm: Added.
843         (-[AutoLayoutNavigationDelegate webView:didFinishNavigation:]):
844         (-[AutoLayoutWKWebView load:expectingContentSize:]):
845         (-[AutoLayoutWKWebView expectContentSizeChange:]):
846         (-[AutoLayoutWKWebView invalidateIntrinsicContentSize]):
847         (TEST):
848         Add a variety of tests, including one which catches the bug that
849         the WebCore part of this patch fixes.
850
851 2015-10-15  Csaba Osztrogonác  <ossy@webkit.org>
852
853         Update the help message of --system-malloc
854         https://bugs.webkit.org/show_bug.cgi?id=150169
855
856         Reviewed by Geoffrey Garen.
857
858         * Scripts/webkitperl/FeatureList.pm:
859
860 2015-10-15  Youenn Fablet  <youenn.fablet@crf.canon.fr>
861
862         Update ImportExpectations according currently imported wpt tests
863         https://bugs.webkit.org/show_bug.cgi?id=150158
864
865         Reviewed by Chris Dumez.
866
867         * Scripts/webkitpy/w3c/test_downloader.py:
868         (TestDownloader.copy_tests): ensuring that directories marked as [ Skip ] are not copied.
869
870 2015-10-15  Eunmi Lee  <eunmi15.lee@samsung.com>
871
872         Unreviewed, Update my email address.
873
874         * Scripts/webkitpy/common/config/contributors.json:
875
876 2015-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
877
878         [GTK] Test WebKit2.RestoreSessionStateContainingFormData fails
879         https://bugs.webkit.org/show_bug.cgi?id=84960
880
881         Reviewed by Žan Doberšek.
882
883         * Scripts/run-gtk-tests:
884         (TestRunner): Unskip tests using SessionState.
885         * TestWebKitAPI/PlatformGTK.cmake: Add
886         WKPageCopySessionStateWithFiltering test.
887
888 2015-10-14  Carlos Garcia Campos  <cgarcia@igalia.com>
889
890         [GTK] Missing return value on TestWebExtensions.cpp:193
891         https://bugs.webkit.org/show_bug.cgi?id=149755
892
893         Unreviewed. Add missing return value.
894
895         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp:
896         (permissionRequestCallback):
897
898 2015-10-14  Andy Estes  <aestes@apple.com>
899
900         [iOS] build-dumprendertree does not build ImageDiff
901         https://bugs.webkit.org/show_bug.cgi?id=150152
902
903         Reviewed by Tim Horton.
904
905         run-webkit-tests attempts to build the tools it requires by calling build-dumprendertree and build-webkittestrunner.
906         On iOS, build-dumprendertree builds the DumpRenderTree.app target, which does not contain the ImageDiff target
907         as a dependent. If you haven't built ImageDiff by other means (say, because you built the 'All Source' scheme in
908         WebKit.xcworkspace), tests that rely on image diffing won't work properly.
909
910         There's actually no reason to build the DumpRenderTree.app target on iOS; the default aggregate target works
911         fine on that platform, and results in ImageDiff being built.
912
913         * Scripts/build-dumprendertree:
914
915 2015-10-14  Brent Fulgham  <bfulgham@apple.com>
916
917         [Win] Enforce launcher/library naming scheme
918         https://bugs.webkit.org/show_bug.cgi?id=150124
919
920         Reviewed by Alex Christensen.
921
922         * DumpRenderTree/PlatformWin.cmake: Use 'Lib' suffix for DLLs.
923         * MiniBrowser/win/CMakeLists.txt: Ditto.
924         * TestWebKitAPI/PlatformWin.cmake: Ditto.
925         * win/DLLLauncher/DLLLauncherMain.cpp:
926         (wWinMain): Look for a DLL named {name}Lib.dll, rather than the
927         original {name}.dll.
928
929 2015-10-14  Andreas Kling  <akling@apple.com>
930
931         REGRESSION(r190882): Concatenating a character array and an empty string is broken.
932         <https://webkit.org/b/150135>
933
934         Reviewed by Geoffrey Garen.
935
936         Add a new WTF API test that covers this issue.
937
938         * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
939         (TestWebKitAPI::build):
940         (TestWebKitAPI::TEST):
941
942 2015-10-14  Alex Christensen  <achristensen@webkit.org>
943
944         Add SPI for reloading without content blockers
945         https://bugs.webkit.org/show_bug.cgi?id=150058
946         rdar://problem/22742222
947
948         Reviewed by Sam Weinig.
949
950         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
951         (WTR::TestController::cocoaResetStateToConsistentValues):
952         * WebKitTestRunner/mac/TestControllerMac.mm:
953         (WTR::TestController::platformConfigureViewForTest):
954
955 2015-10-14  Mark Lam  <mark.lam@apple.com>
956
957         Rename some JSC option names to be more uniform.
958         https://bugs.webkit.org/show_bug.cgi?id=150127
959
960         Reviewed by Geoffrey Garen.
961
962         * Scripts/jsc-stress-test-helpers/js-executable-allocation-fuzz:
963         * Scripts/run-jsc-stress-tests:
964
965 2015-10-14  Anders Carlsson  <andersca@apple.com>
966
967         Change the bundle app cache APIs to take a page
968         https://bugs.webkit.org/show_bug.cgi?id=150123
969
970         Reviewed by Sam Weinig.
971
972         Update APIs.
973
974         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
975         (WTR::InjectedBundle::beginTesting):
976         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
977         (WTR::InjectedBundlePage::didReachApplicationCacheOriginQuota):
978         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
979         (WTR::TestRunner::clearAllApplicationCaches):
980         (WTR::TestRunner::clearApplicationCacheForOrigin):
981         (WTR::TestRunner::setAppCacheMaximumSize):
982         (WTR::TestRunner::applicationCacheDiskUsageForOrigin):
983         (WTR::TestRunner::originsWithApplicationCache):
984
985 2015-10-14  Youenn Fablet  <youenn.fablet@crf.canon.fr>
986
987         Update web-platform-tests tools to the latest revision
988         https://bugs.webkit.org/show_bug.cgi?id=149645
989
990         Reviewed by Darin Adler.
991
992         Disabling git submodules information conversion to json install file for web-platform-tests.
993         Disabling related python unit tests.
994         The tools submodules contain submodules and the conversion tool does not support that yet.
995
996         Updating wpt launcher script to aling it with web-platform-test main script.
997
998         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
999         (main):
1000         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server_unittest.py:
1001         (TestWebPlatformTestServer.test_corrupted_subserver_files): Deleted.
1002         * Scripts/webkitpy/w3c/test_importer_unittest.py:
1003         (TestImporterTest.test_submodules_generation):
1004
1005 2015-10-13  Alexey Proskuryakov  <ap@apple.com>
1006
1007         More debug queue build fixing.
1008
1009         Preserve the build style in one more place. Changed mock build_style from "both"
1010         to "release", as we don't support testing both debug and release.
1011
1012         * Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
1013         (MockCommitQueue.archive_last_test_results):
1014         (MockCommitQueue):
1015         (MockCommitQueue.build_style):
1016         (MockCommitQueue.did_pass_testing_ews):
1017         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1018         (PatchAnalysisTask._test):
1019         (PatchAnalysisTask._build_and_test_without_patch):
1020         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1021         (EarlyWarningSystemTest._default_expected_logs):
1022         * Scripts/webkitpy/tool/commands/queues_unittest.py:
1023
1024 2015-10-13  Alexey Proskuryakov  <ap@apple.com>
1025
1026         More debug queue build fixing.
1027
1028         Add build_style argument to derived classes as well.
1029
1030         * Scripts/webkitpy/common/config/ports.py:
1031         (MacPort):
1032         (MacPort.run_webkit_tests_command):
1033         (WinPort.run_bindings_tests_command):
1034         (WinPort):
1035         (WinPort.run_webkit_tests_command):
1036         (GtkWK2Port.build_webkit_command):
1037         (GtkWK2Port):
1038         (GtkWK2Port.run_webkit_tests_command):
1039
1040 2015-10-13  Myles C. Maxfield  <mmaxfield@apple.com>
1041
1042         [iOS] Build fix
1043
1044         Unreviewed.
1045
1046         Mach-O section names are limited to 16 characters.
1047
1048         * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
1049         * DumpRenderTree/mac/DumpRenderTree.mm:
1050         (activateFontsIOS):
1051
1052 2015-10-13  Alexey Proskuryakov  <ap@apple.com>
1053
1054         Build fix for mac-debug EWS queue.
1055
1056         Unreviewed.
1057
1058         Pass --debug to run-webkit-tests.
1059
1060         While at it, removed unsupported run_webkit_unit_tests_command. All the test steps
1061         will need to be substantially modified to work in EWS, so the dummy implementation
1062         was not helpful.
1063
1064         * Scripts/webkitpy/common/config/ports.py:
1065         (DeprecatedPort.run_javascriptcore_tests_command):
1066         (DeprecatedPort):
1067         (DeprecatedPort.run_webkit_tests_command):
1068         (DeprecatedPort.run_python_unittests_command):
1069         (DeprecatedPort.run_webkit_unit_tests_command): Deleted.
1070         * Scripts/webkitpy/common/config/ports_mock.py:
1071         (MockPort.run_javascriptcore_tests_command):
1072         (MockPort):
1073         (MockPort.run_webkit_tests_command):
1074         (MockPort.run_bindings_tests_command):
1075         (MockPort.run_webkit_unit_tests_command): Deleted.
1076         * Scripts/webkitpy/tool/commands/download_unittest.py:
1077         * Scripts/webkitpy/tool/steps/runtests.py:
1078         (RunTests.run):
1079         * Scripts/webkitpy/tool/steps/runtests_unittest.py:
1080         (RunTestsTest.test_webkit_run_unit_tests):
1081         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1082         (StepsTest.test_runtests_args):
1083
1084 2015-10-13  Brent Fulgham  <bfulgham@apple.com>
1085
1086         [Win] Generate Crash Traces
1087         https://bugs.webkit.org/show_bug.cgi?id=150103
1088
1089         Reviewed by Daniel Bates.
1090
1091         We were using an exception filter to try to emit "#CRASHED" to stderr
1092         when a test program crashed. However, the modern Python implementation
1093         seems capable of recognizing crashes on its own. Furthermore, registering
1094         the exception handler was preventing the JIT debugger (NTSD) from
1095         automatically attaching to the crashing program, so we were not getting
1096         crash traces.
1097         
1098         * DumpRenderTree/win/DumpRenderTree.cpp:
1099         (main): Don't register an exception filter.
1100         (exceptionFilter): Deleted.
1101         * Scripts/webkitpy/common/system/crashlogs.py:
1102         (CrashLogs): Add another regular expression to handle a second crash trace
1103         syntax I encountered during testing.
1104         (CrashLogs._find_newest_log_win): If the old regular expression doesn't match,
1105         try the new one. The PID found by the new expression is in hexadecimal, so
1106         convert it to an integer before returning it.
1107         * Scripts/webkitpy/port/driver.py:
1108         (Driver._check_for_driver_crash_or_unresponsiveness): Windows was not recognizing
1109         the "#CRASHED" state because it was appending '\r\n', rather than just '\r'. Instead,
1110         check for "#CRASHED" after stripping off the EOL characters.
1111         * Scripts/webkitpy/port/win.py:
1112         (WinPort.setup_crash_log_saving): Put back the '-e %ld' flag in the debugger
1113         invocation. This is apparently used to signal an event when the debugger is finished.
1114
1115 2015-10-13  Alexey Proskuryakov  <ap@apple.com>
1116
1117         Mac Debug and 32-bit queues should be separate
1118         https://bugs.webkit.org/show_bug.cgi?id=150092
1119
1120         Reviewed by Lucas Forschler.
1121
1122         * QueueStatusServer/config/queues.py:
1123         * QueueStatusServer/model/queues.py:
1124         (Queue._capitalize_after_dash):
1125         (Queue._caplitalize_after_dash): Deleted.
1126         * Scripts/webkitpy/common/config/ews.json:
1127
1128 2015-10-13  Sergio Villar Senin  <svillar@igalia.com>
1129
1130         [GTK] Fix build for ENABLE_TOUCH_EVENTS=OFF
1131         https://bugs.webkit.org/show_bug.cgi?id=150085
1132
1133         Reviewed by Carlos Garcia Campos.
1134
1135         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
1136
1137 2015-10-13  Sebastian Dröge  <sebastian@centricular.com>
1138
1139         Unreviewed, add myself to the committers list.
1140
1141         * Scripts/webkitpy/common/config/contributors.json:
1142
1143 2015-10-12  Alexey Proskuryakov  <ap@apple.com>
1144
1145         Update bot watcher's dashboard to reflect that EWS is on iOS 9 now
1146         https://bugs.webkit.org/show_bug.cgi?id=149983
1147
1148         Reviewed by Dan Bates.
1149
1150         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1151         (BubbleQueueServer):
1152         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1153
1154 2015-10-12  Alexey Proskuryakov  <ap@apple.com>
1155
1156         Fix webkitpy tests after r190922.
1157
1158         * Scripts/webkitpy/common/config/ews.json:
1159         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1160         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1161
1162 2015-10-12  Alexey Proskuryakov  <ap@apple.com>
1163
1164         Add a Mac debug EWS queue
1165         https://bugs.webkit.org/show_bug.cgi?id=150069
1166
1167         Reviewed by Geoffrey Garen.
1168
1169         * QueueStatusServer/config/queues.py:
1170         * Scripts/webkitpy/common/config/ews.json:
1171         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1172         (AbstractEarlyWarningSystem):
1173         (AbstractEarlyWarningSystem.archive_last_test_results):
1174         (AbstractEarlyWarningSystem.build_style):
1175         (AbstractEarlyWarningSystem.refetch_patch):
1176         (AbstractEarlyWarningSystem.load_ews_classes):
1177
1178 2015-10-12  Mario Sanchez Prada  <mario@endlessm.com>
1179
1180         [GTK] Update jhbuild's version of harfbuzz
1181         https://bugs.webkit.org/show_bug.cgi?id=149749
1182
1183         Reviewed by Martin Robinson.
1184
1185         Update harfbuzz to 0.9.35, following the lead of Debian Stable.
1186
1187         * gtk/jhbuild.modules: Updated details for harfbuzz.
1188
1189 2015-10-12  Mario Sanchez Prada  <mario@endlessm.com>
1190
1191         [GTK] Media tests crashing with gst-plugins-bad 1.4.4 and cpp 5.2
1192         https://bugs.webkit.org/show_bug.cgi?id=150026
1193
1194         Reviewed by Philippe Normand.
1195
1196         Backport upstream patch from gst-plugins-bad so that the right version
1197         of FAAD2 can be found with newer versions of cpp, so that gst-plugins-bad
1198         gets compiled properly, avoiding crashes on runtime while running tests.
1199
1200         * gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch: Added.
1201         * gtk/jhbuild.modules: Referenced the newly added patch for gst-plugins-bad.
1202
1203 2015-10-11  Myles C. Maxfield  <mmaxfield@apple.com>
1204
1205         Test font-variant-* and font-feature-settings with mocked preinstalled fonts
1206         https://bugs.webkit.org/show_bug.cgi?id=149777
1207
1208         Reviewed by Simon Fraser.
1209
1210         Include FontWithFeatures in DumpRenderTree and WebKitTestRunner. Add it
1211         to the list of tests to preinstall at startup time.
1212
1213         Also, update the generation of the 'name' table in the FontWithFeatures font.
1214
1215         * DumpRenderTree/mac/DumpRenderTree.mm:
1216         (allowedFontFamilySet):
1217         (activateTestingFonts):
1218         (activateFontsIOS):
1219         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
1220         (Generator::generate):
1221         (Generator::appendCFFTable):
1222         (Generator::appendNameSubtable):
1223         (Generator::appendNAMETable):
1224         * FontWithFeatures/FontWithFeatures/main.cpp:
1225         (main):
1226         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
1227         (WTR::allowedFontFamilySet):
1228         (WTR::activateFonts):
1229         * WebKitTestRunner/mac/TestControllerMac.mm:
1230         (WTR::allowedFontFamilySet):
1231
1232 2015-10-11  Jinyoung Hur  <hur.ims@navercorp.com>
1233
1234         Unreviewed. Add Jinyoung Hur as a committer. 
1235
1236         * Scripts/webkitpy/common/config/contributors.json:
1237
1238 2015-10-10  Dan Bernstein  <mitz@apple.com>
1239
1240         [iOS] Remove unnecessary iOS version checks
1241         https://bugs.webkit.org/show_bug.cgi?id=150002
1242
1243         Reviewed by Alexey Proskuryakov.
1244
1245         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1246         (-[HIDEventGenerator _createIOHIDEventType:]):
1247         (-[HIDEventGenerator _sendHIDEvent:]):
1248         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
1249         * WebKitTestRunner/ios/UIKitSPI.h:
1250
1251 2015-10-09  Myles C. Maxfield  <mmaxfield@apple.com>
1252
1253         Unreviewed, rolling out r190689
1254         https://bugs.webkit.org/show_bug.cgi?id=149992
1255
1256         Fixed in other repository.
1257
1258         Reverted changesets:
1259
1260         "Unreviewed, rolling out r190572, r190593, r190594, and r190639."
1261         https://bugs.webkit.org/show_bug.cgi?id=149897
1262
1263 2015-10-09  Brian Burg  <bburg@apple.com>
1264
1265         Teach webkitperl how to figure out IOS versions from the SDK
1266         https://bugs.webkit.org/show_bug.cgi?id=149963
1267
1268         Reviewed by Daniel Bates.
1269
1270         It should be easier to check the major and minor version of IOS SDKs.
1271
1272         * Scripts/copy-webkitlibraries-to-product-directory: use iosVersion().
1273         * Scripts/webkitdirs.pm:
1274         (splitVersionString): Added.
1275         (determineOSXVersion): Use splitVersionString.
1276         (determineIOSVersion): Added. Look at the SDK version and make a tuple.
1277         (iosVersion): Added.
1278
1279 2015-10-09  Simon Fraser  <simon.fraser@apple.com>
1280
1281         [iOS WK2] Fix some leaks in TestRunnerWKWebView and UIScriptContext
1282         https://bugs.webkit.org/show_bug.cgi?id=149960
1283
1284         Reviewed by Tim Horton.
1285         
1286         Use adoptWK(), and null out some members (file is not using ARC).
1287
1288         * WebKitTestRunner/UIScriptContext/UIScriptContext.cpp:
1289         (UIScriptContext::uiScriptComplete):
1290         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1291         (-[TestRunnerWKWebView dealloc]):
1292
1293 2015-10-09  Csaba Osztrogonác  <ossy@webkit.org>
1294
1295         Remove ENABLE_SUID_SANDBOX_LINUX cruft
1296         https://bugs.webkit.org/show_bug.cgi?id=149954
1297
1298         Reviewed by Darin Adler.
1299
1300         * Scripts/webkitperl/FeatureList.pm:
1301
1302 2015-10-09  Daniel Bates  <dabates@apple.com>
1303
1304         Make iOS builders generate debug information in a separate dSYM file
1305         https://bugs.webkit.org/show_bug.cgi?id=149696
1306
1307         Reviewed by Darin Adler.
1308
1309         Similar to the Mac builders, the iOS builders should write debug information
1310         into a separate dSYM file instead of including such information in the binary
1311         itself (default Xcode behavior)
1312
1313         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1314         (CompileWebKit.start):
1315
1316 2015-10-09  Csaba Osztrogonác  <ossy@webkit.org>
1317
1318         Fix webkitpy tests after r190779
1319         https://bugs.webkit.org/show_bug.cgi?id=149949
1320
1321         Reviewed by Ryosuke Niwa.
1322
1323         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
1324         (BenchmarkResults.format):
1325         (BenchmarkResults._format_values):
1326
1327 2015-10-08  Dewei Zhu  <dewei_zhu@apple.com>
1328
1329         Extend run-benchmark script to support human-readable results conversion.
1330         https://bugs.webkit.org/show_bug.cgi?id=149944
1331
1332         Reviewed by Ryosuke Niwa.
1333
1334         Add '--read-results-json' and '--no-adjust-unit' options.
1335         '--read-results-json' option converts result file to human readable format.
1336         '--no-adjust-unit' option skips scientific notation convertion.
1337         '--platform' defaults to 'osx' and '--browser' defaults to 'safari'.
1338
1339         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
1340         (BenchmarkResults.format):
1341         (BenchmarkResults._format_tests):
1342         (BenchmarkResults._format_values):
1343         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
1344         (BenchmarkRunner.__init__):
1345         (BenchmarkRunner._run_benchmark):
1346         (BenchmarkRunner._dump):
1347         (BenchmarkRunner.show_results):
1348         (BenchmarkRunner._show_results): Deleted.
1349         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
1350         (parse_args):
1351         (start):
1352
1353 2015-10-08  Daniel Bates  <dabates@apple.com>
1354
1355         Add iOS 9 device builder to WebKit Bot Watcher's Dashboard
1356         https://bugs.webkit.org/show_bug.cgi?id=149945
1357
1358         Reviewed by Dan Bernstein.
1359
1360         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9.png: Added.
1361         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9@2x.png: Added.
1362         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1363         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1364         (WebKitBuildbot):
1365         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1366         (table.queue-grid tr.platform.ios-9 img.logo):
1367
1368 2015-10-08  Daniel Bates  <dabates@apple.com>
1369
1370         Teach build-webkit to install LLVM binaries for iOS when building for device with the public iOS SDK
1371         https://bugs.webkit.org/show_bug.cgi?id=149943
1372
1373         Reviewed by Dan Bernstein.
1374
1375         Following the addition of the LLVM binaries for iOS in changeset r190759 (bug #149913) we should
1376         teach build-webkit to install them when building for iOS device using the public iOS SDK. 
1377
1378         * Scripts/build-webkit:
1379
1380 2015-10-08  Daniel Bates  <dabates@apple.com>
1381
1382         Add LLVM binaries for iOS 9 device
1383         https://bugs.webkit.org/show_bug.cgi?id=149913
1384
1385         Reviewed by Filip Pizlo.
1386
1387         Implement support for building LLVM for ARM64-based iOS devices.
1388
1389         * Scripts/build-jsc: Enable the FTL when building for Mac or iOS device.
1390         * Scripts/copy-webkitlibraries-to-product-directory: Move logic to clean
1391         an existing build earlier in the file such that remove previously built
1392         libraries before building/copying new ones (if applicable).
1393         (fileContains): Moved function outside of if-block.
1394         (isContentOfFileEqualToString): Renamed; formerly named fileContentsEquals().
1395         (buildLLVM): Added. Extracted machinery to build LLVM into this function and
1396         added logic to build LLVM for ARM64-based iOS devices.
1397         (symlinkLLVMLibrariesIfNeeded): Added. Extracted machinery to symlink the built
1398         LLVM into the WebKitBuild directory.
1399
1400 2015-10-08  Alexey Proskuryakov  <ap@apple.com>
1401
1402         Crash-only queues on bot watcher's dashboard should not have non-crashing tests in popovers
1403         https://bugs.webkit.org/show_bug.cgi?id=149848
1404
1405         Reviewed by Darin Adler.
1406
1407         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
1408
1409 2015-10-07  Brent Fulgham  <bfulgham@apple.com>
1410
1411         [Win] Support 64-bit Build and Testing
1412         https://bugs.webkit.org/show_bug.cgi?id=149904
1413
1414         Reviewed by Daniel Bates.
1415
1416         Extend our existing scripts to support 64-bit build and test operations on
1417         Windows.
1418
1419         * Scripts/build-dumprendertree: We don't need to build DRT on its own;
1420         Windows always builds the whole stack.
1421         * Scripts/webkit-build-directory: Add an option to return the location of
1422         the executable files produced by a specific configuration. This change is
1423         actually useful for Gtk and EFL, too.
1424         * Scripts/webkitdirs.pm:
1425         (executableProductDir): Added. This function appends the proper binary
1426         path to the productDir. This is useful for Windows, Gtk, and EFL ports.
1427         (jscProductDir): Use the new 'executableProductDir' method.
1428         (setPathForRunningWebKitApp): Ditto.
1429         (runSafari): Ditto.
1430         (runMiniBrowser): Ditto.
1431         * Scripts/webkitpy/port/factory.py:
1432         (configuration_options): Add a 64-bit option, used on Windows to specify
1433         which binary target should be used for testing.
1434         * Scripts/webkitpy/port/win.py:
1435         (WinPort._port_flag_for_scripts): Added. Supply the 64-bit flag to child
1436         processes when needed.
1437         (WinPort._build_path): Add the correct binary target path to _build_path.
1438         (WinPort._ntsd_location): Check 32-bit paths when running 32-bit tests,
1439         64-bit paths for 64-bit tests.
1440         (WinPort.setup_crash_log_saving): Remove '-e %ld' argument, since the
1441         NTSD debugger does not understand this argument.
1442
1443 2015-10-07  Myles C. Maxfield  <mmaxfield@apple.com>
1444
1445         Test font-variant-* and font-feature-settings with TrueType fonts
1446         https://bugs.webkit.org/show_bug.cgi?id=149776
1447
1448         Reviewed by Simon Fraser.
1449
1450         This test extends our existing FontWithFeatures project to be able to generate a
1451         TrueType font. This font is conceptually similar as the existing OpenType font,
1452         except the feature -> character mapping is different.
1453
1454         The font itself only supports the following characters:
1455         ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
1456         However, the shape of these letters are either an X or a check mark.
1457         The letter "A" always is a check mark.
1458         The letter "B" always is an X.
1459         Each font feature has an letter associated with it. When the font feature is enabled,
1460         that letter is shown as a check mark. For example, when
1461         "kLowerCaseType / kLowerCaseSmallCapsSelector" is enabled, "S" is shown as a check
1462         mark.
1463
1464         Here are the mappings of font features to letters:
1465         kLigaturesType / kCommonLigaturesOnSelector: C
1466         kLigaturesType / kContextualLigaturesOnSelector: D
1467         kLigaturesType / kRareLigaturesOnSelector: G
1468         kLigaturesType / kHistoricalLigaturesOnSelector: I
1469         kContextualAlternatesType / kContextualAlternatesOnSelector: L
1470         kVerticalPositionType / kInferiorsSelector: O
1471         kVerticalPositionType / kSuperiorsSelector: P
1472         kLowerCaseType / kLowerCaseSmallCapsSelector: S
1473         kUpperCaseType / kUpperCaseSmallCapsSelector: V
1474         kLowerCaseType / kLowerCasePetiteCapsSelector: T
1475         kUpperCaseType / kUpperCasePetiteCapsSelector: W
1476         kLetterCaseType / 14: Y
1477         kStyleOptionsType / kTitlingCapsSelector: a
1478         kNumberCaseType / kUpperCaseNumbersSelector: c
1479         kNumberCaseType / kLowerCaseNumbersSelector: d
1480         kNumberSpacingType / kProportionalNumbersSelector: f
1481         kNumberSpacingType / kMonospacedNumbersSelector: g
1482         kFractionsType / kDiagonalFractionsSelector: i
1483         kFractionsType / kVerticalFractionsSelector: j
1484         kVerticalPositionType / kOrdinalsSelector: Q
1485         kTypographicExtrasType / kSlashedZeroOnSelector: k
1486         kLigaturesType / kHistoricalLigaturesOnSelector: K
1487         kCharacterShapeType / kJIS1978CharactersSelector: m
1488         kCharacterShapeType / kJIS1983CharactersSelector: n
1489         kCharacterShapeType / kJIS1990CharactersSelector: o
1490         kCharacterShapeType / kJIS2004CharactersSelector: p
1491         kCharacterShapeType / kSimplifiedCharactersSelector: q
1492         kCharacterShapeType / kTraditionalCharactersSelector: r
1493         kTextSpacingType / kMonospacedTextSelector: t
1494         kTextSpacingType / kProportionalTextSelector: u
1495         kRubyKanaType / kRubyKanaOnSelector: v
1496
1497         * FontWithFeatures/FontWithFeatures.xcodeproj/project.pbxproj:
1498         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
1499         (CFFBuilder::moveTo):
1500         (CFFBuilder::lineTo):
1501         (GLYFBuilder::GLYFBuilder):
1502         (GLYFBuilder::takeResult):
1503         (GLYFBuilder::moveTo):
1504         (GLYFBuilder::lineTo):
1505         (GLYFBuilder::closePath):
1506         (GLYFBuilder::writePoint):
1507         (GLYFBuilder::append16):
1508         (generateBoxCharString):
1509         (generateCheckCharString):
1510         (generateXCharString):
1511         (itemForGlyph):
1512         (Generator::generate):
1513         (Generator::insertSelector):
1514         (Generator::insertFeature):
1515         (Generator::generateFeatureDescription):
1516         (Generator::appendCFFTable):
1517         (Generator::appendGLYFTable):
1518         (Generator::appendLOCATable):
1519         (Generator::appendFEATTable):
1520         (Generator::appendMetamorphosisChain):
1521         (Generator::appendMORXTable):
1522         (Generator::appendHEADTable):
1523         (Generator::appendHMTXTable):
1524         (Generator::appendNameSubtable):
1525         (Generator::append2ByteASCIIString):
1526         (Generator::appendNAMETable):
1527         (generateFont):
1528         (CFFBuilder::curveToCubic): Deleted.
1529         (charStringForGlyph): Deleted.
1530         * FontWithFeatures/FontWithFeatures/FontCreator.h:
1531         * FontWithFeatures/FontWithFeatures/main.cpp:
1532         (constructFontWithTrueTypeFeature):
1533         (constructFontWithOpenTypeFeature):
1534         (drawText):
1535         (main):
1536         (drawTextWithFeature): Deleted.
1537
1538 2015-10-07  Commit Queue  <commit-queue@webkit.org>
1539
1540         Unreviewed, rolling out r190572, r190593, r190594, and
1541         r190639.
1542         https://bugs.webkit.org/show_bug.cgi?id=149897
1543
1544         Breaks Mavericks build (Requested by litherum on #webkit).
1545
1546         Reverted changesets:
1547
1548         "Allow WKRetainPtrs to be used as keys in hashing data
1549         structures"
1550         https://bugs.webkit.org/show_bug.cgi?id=149762
1551         http://trac.webkit.org/changeset/190572
1552
1553         "REGRESSION(189668?): http/tests/notifications/events.html
1554         flakily asserts or times out"
1555         https://bugs.webkit.org/show_bug.cgi?id=149218
1556         http://trac.webkit.org/changeset/190593
1557
1558         "Prospective Mavericks build fix."
1559         http://trac.webkit.org/changeset/190594
1560
1561         "Post-review cleanup after r190572."
1562         http://trac.webkit.org/changeset/190639
1563
1564 2015-10-06  Michael Catanzaro  <mcatanzaro@igalia.com>
1565
1566         [GTK] Add autocleanups
1567         https://bugs.webkit.org/show_bug.cgi?id=149588
1568
1569         Reviewed by Darin Adler.
1570
1571         * TestWebKitAPI/Tests/WebKit2Gtk/AutocleanupsTest.cpp: Added.
1572         (AutocleanupsTest::create):
1573         (AutocleanupsTest::testWebProcessAutocleanups):
1574         (registerTests):
1575         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
1576         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutocleanups.cpp: Added.
1577         (testUIProcessAutocleanups):
1578         (testWebProcessAutocleanups):
1579         (beforeAll):
1580         (afterAll):
1581
1582 2015-10-06  Brian Burg  <bburg@apple.com>
1583
1584         Unreviewed, try to fix the iOS 8 build after r190368.
1585
1586         On older versions, IOHIDEventCreateForceEvent is not available.
1587
1588         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1589         (-[HIDEventGenerator _createIOHIDEventType:]): Add another guard for force events.
1590
1591 2015-10-06  Keith Miller  <keith_miller@apple.com>
1592
1593         Add gmalloc option to run-javascriptcore-tests.
1594         https://bugs.webkit.org/show_bug.cgi?id=149858
1595
1596         Reviewed by Geoffrey Garen.
1597
1598         run-javascriptcore-tests takes a new option --gmalloc with an optional string argument, the path to the gmalloc dylib.
1599         If no argument is provided then /usr/lib/libgmalloc.dylib is used by default.
1600
1601         * Scripts/run-javascriptcore-tests:
1602
1603 2015-10-06  Myles C. Maxfield  <mmaxfield@apple.com>
1604
1605         Post-review cleanup after r190572.
1606
1607         Unreviewed.
1608
1609         * TestWebKitAPI/Tests/WebKit2/WKRetainPtr.cpp:
1610
1611 2015-10-06  Brent Fulgham  <bfulgham@apple.com>
1612
1613         [Win] Unreviewed build correction.
1614
1615         * TestWebKitAPI/PlatformWin.cmake: We don't need to link to all of these libraries. Most
1616         are soft-linked at runtime.
1617
1618 2015-10-06  Keith Miller  <keith_miller@apple.com>
1619
1620         Fix run-javascriptcore-tests/run-jsc-stress-tests to work with rootless, add a --quick option and deprecate the Mozilla driver.
1621         https://bugs.webkit.org/show_bug.cgi?id=149815
1622
1623         Reviewed by Filip Pizlo.
1624
1625         Rootless has an issue where it will strip any environment variables that start with DYLD starting a perl/ruby/python script.
1626         Now, run-jsc-stress-tests takes an new argument, --env-vars, that will set the specified environment variables before
1627         running tests. Additionally, I added a quick option that only runs default and the NoCJITValidate versions of each test.
1628         Finally, I removed the calls to the mozilla jsDriver.pl since the run-jsc-stress-tests runner runs the same test suite
1629         so should just use one test runner.
1630
1631         * Scripts/run-javascriptcore-tests:
1632         (runJSCStressTests):
1633         (runMozillaTests): Deleted.
1634         (defaultJsDriverArgsForMozillaTests): Deleted.
1635         * Scripts/run-jsc-stress-tests:
1636
1637 2015-10-06  Mark Salisbury  <mark.salisbury@hp.com>
1638
1639         [GTK] Make update-webkitgtk-libs work behind firewall
1640
1641         update-webkitgtk-libs can work behind a firewall with changes to
1642         a few packages.  Where outbound git and active FTP connections
1643         fail, using http protocol succeeds.  Most packages are
1644         already accessed using http.
1645
1646         https://bugs.webkit.org/show_bug.cgi?id=148941
1647
1648         Reviewed by Martin Robinson.
1649
1650         Tools
1651         * gtk/jhbuild.modules:
1652             Replace git URLs with http.  Remove no longer used ftp repositories.
1653             Update argument for libxml2's autogen.sh script (--without-python
1654             is ignored; --with-python=no is correct).
1655         * jhbuild/jhbuild-wrapper:
1656             Instead of connecting to git://git.gnome.org/jhbuild, connect to
1657             http://git.gnome.org/browse/jhbuild.
1658
1659 2015-10-06  Daniel Bates  <dbates@webkit.org>
1660
1661         Enable XSLT when building WebKit for iOS using the public iOS SDK
1662         https://bugs.webkit.org/show_bug.cgi?id=149827
1663
1664         Reviewed by Alexey Proskuryakov.
1665
1666         Teach script configure-xcode-for-ios-development to copy the OS X XSLT headers to the iPhoneOS
1667         and iPhoneSimulator SDKs so as to support building WebKit for iOS with XSLT. A person must
1668         run this script before building WebKit for iOS or the build will fail because one or more XSLT
1669         headers cannot be found.
1670
1671         * Scripts/configure-xcode-for-ios-development:
1672         (copyMissingXSLTHeadersToSDKIfNeeded): Added.
1673
1674 2015-10-05  Myles C. Maxfield  <mmaxfield@apple.com>
1675
1676         REGRESSION(189668?): http/tests/notifications/events.html flakily asserts or times out
1677         https://bugs.webkit.org/show_bug.cgi?id=149218
1678
1679         Reviewed by Alexey Proskuryakov.
1680
1681         Because of r189668, WebKitTestRunner now tears down and recreates its WKNotificationManagerRef
1682         when the TestOptions change. Previously, WebNotificationProvider only could handle a single
1683         WKNotificationManagerRef. Because the ower of the WKNotificationManagerRef is reference counted,
1684         and AppKit internally retains some objects which end up retaining the WKNotificationManagerRef,
1685         the old WKNotificationManager may not be destroyed before the new one is created. Therefore,
1686         WebNotificationProvider must be updated to appropriately handle multiple
1687         WKNotificationManagerRefs in flight at the same time.
1688
1689         * WebKitTestRunner/WebNotificationProvider.cpp:
1690         (WTR::WebNotificationProvider::~WebNotificationProvider):
1691         (WTR::WebNotificationProvider::showWebNotification):
1692         (WTR::WebNotificationProvider::closeWebNotification):
1693         (WTR::WebNotificationProvider::addNotificationManager):
1694         (WTR::WebNotificationProvider::removeNotificationManager):
1695         (WTR::WebNotificationProvider::simulateWebNotificationClick):
1696         (WTR::WebNotificationProvider::reset):
1697         * WebKitTestRunner/WebNotificationProvider.h:
1698
1699 2015-10-05  Daniel Bates  <dabates@apple.com>
1700
1701         Disable Bitcode when building for iOS device
1702         https://bugs.webkit.org/show_bug.cgi?id=149818
1703
1704         Reviewed by Alexey Proskuryakov.
1705
1706         Xcode 7 generates bitcode for iOS device apps by default. Do not generate bitcode
1707         when building for iOS device.
1708
1709         * Scripts/webkitdirs.pm:
1710         (XcodeOptions):
1711
1712 2015-10-05  Daniel Bates  <dabates@apple.com>
1713
1714         [iOS] Make it possible to build WebKit using iphoneos SDK without a developer certificate installed
1715         https://bugs.webkit.org/show_bug.cgi?id=140828
1716         <rdar://problem/19520599>
1717
1718         Reviewed by Alexey Proskuryakov.
1719
1720         Support building WebKit for iOS device without an iOS Developer certificate installed. Otherwise,
1721         we will pass CODE_SIGN_IDENTITY="iPhone Developer: " to Xcode to find a iOS Developer certificate
1722         to use. To use a specific installed iOS Developer certificate, explicitly pass CODE_SIGN_IDENTITY
1723         to build-webkit.
1724
1725         * Scripts/webkitdirs.pm:
1726         (XcodeOptions): Cleaned up code. When building for iOS device, pass to Xcode CODE_SIGN_IDENTITY="iPhone Developer: "
1727         to code sign using the installed iOS development certificate (if it exists - we assume there is only one such certificate).
1728         Otherwise, pass CODE_SIGN_IDENTITY="" and CODE_SIGNING_REQUIRED=NO to Xcode to disable code signing.
1729         (hasIOSDevelopmentCertificate): Added.
1730
1731 2015-10-05  Daniel Bates  <dabates@apple.com>
1732
1733         DumpRenderTree built with public iOS SDK crashes under -[WebPreferences(WebPrivate) _setCurrentNetworkLoaderSessionCookieAcceptPolicy:]
1734         https://bugs.webkit.org/show_bug.cgi?id=149766
1735
1736         Reviewed by Alexey Proskuryakov.
1737
1738         Create network storage testing session on iOS.
1739
1740         Currently we do not create a network storage testing session on iOS. A network storage testing session always
1741         has an associated cookie store. When WebKit is built without USE(CFNETWORK), NetworkStorageSession::defaultStorageSession().cookieStorage()
1742         returns nullptr because the caller is expected to interact with NSHTTPCookieStorage instead of querying
1743         NetworkStorageSession for the cookie store. When WebKit is built with USE(CFNETWORK) accessing
1744         NetworkStorageSession::defaultStorageSession().cookieStorage() returns a valid cookie store (creating one if
1745         it does not exist). Instead we should make use of NetworkStorageSession::switchToNewTestingSession() to
1746         create a network storage testing session when building DumpRenderTree for iOS so as to ensure a consistent
1747         testing environment regardless of whether we built with USE(CFNETWORK). This will also make the behavior of
1748         DumpRenderTree on iOS more consistent with the behavior of DumpRenderTree on Mac.
1749
1750         As a side effect of this change DumpRenderTree no longer crashes in -[WebPreferences(WebPrivate) _setCurrentNetworkLoaderSessionCookieAcceptPolicy:]
1751         when WebKit is built without USE(CFNETWORK) because NetworkStorageSession::defaultStorageSession().cookieStorage()
1752         returns a non-null pointer to a cookie store.
1753
1754         * DumpRenderTree/mac/DumpRenderTree.mm:
1755         (prepareConsistentTestingEnvironment):
1756
1757 2015-10-05  Simon Fraser  <simon.fraser@apple.com>
1758
1759         Fix the iOS 8 build again, where -[UIApplication _enqueueHIDEvent:] is not
1760         available.
1761
1762         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1763         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
1764
1765 2015-10-05  Myles C. Maxfield  <mmaxfield@apple.com>
1766
1767         Allow WKRetainPtrs to be used as keys in hashing data structures
1768         https://bugs.webkit.org/show_bug.cgi?id=149762
1769
1770         Reviewed by Anders Carlsson.
1771
1772         * TestWebKitAPI/PlatformGTK.cmake:
1773         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1774         * TestWebKitAPI/Tests/WebKit2/WKRetainPtr.cpp: Added.
1775         (TestWebKitAPI::TEST):
1776
1777 2015-10-05  Simon Fraser  <simon.fraser@apple.com>
1778
1779         Fix the iOS 8 build, where -[UIApplication _enqueueHIDEvent:] is not
1780         available, and tidy up the #ifdefs in the UIKitSPI header.
1781
1782         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1783         (-[HIDEventGenerator _sendHIDEvent:]):
1784         * WebKitTestRunner/ios/UIKitSPI.h:
1785
1786 2015-10-04  Zan Dobersek  <zdobersek@igalia.com>
1787
1788         [GTK] Remove duplicate entries in WebKitTestRunner_SOURCES
1789         https://bugs.webkit.org/show_bug.cgi?id=149792
1790
1791         Reviewed by Martin Robinson.
1792
1793         * WebKitTestRunner/PlatformGTK.cmake: Don't list build targets
1794         for WebKitTestRunner multiple times.
1795
1796 2015-10-04  Daniel Bates  <dabates@apple.com>
1797
1798         Fix the Apple Internal iOS build after <http://trac.webkit.org/changeset/190515>
1799         (https://bugs.webkit.org/show_bug.cgi?id=149753)
1800
1801         For now, support calling build-layouttestrelay without --ios-simulator so long
1802         as we are building on a Mac.
1803
1804         * Scripts/build-layouttestrelay:
1805
1806 2015-10-04  Alexey Proskuryakov  <ap@apple.com>
1807
1808         Support Trac 1.0.x XML timeline link format
1809         https://bugs.webkit.org/show_bug.cgi?id=149786
1810
1811         Reviewed by Lucas Forschler.
1812
1813         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
1814         (Trac.prototype._convertCommitInfoElementToObject):
1815
1816 2015-10-04  Alexey Proskuryakov  <ap@apple.com>
1817
1818         Fix some errors on bot watcher's dashboard
1819         https://bugs.webkit.org/show_bug.cgi?id=149789
1820
1821         Reviewed by Lucas Forschler.
1822
1823         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
1824         (BuildbotTesterQueueView.prototype.appendBuilderQueueStatus): We may not get to layout
1825         tests step, in which case layoutTestResults.tooManyFailures would raise an exception.
1826
1827 2015-10-04  Alexey Proskuryakov  <ap@apple.com>
1828
1829         Bot watcher's dashboard builders should turn yellow when svn fails
1830         https://bugs.webkit.org/show_bug.cgi?id=149791
1831
1832         Reviewed by Lucas Forschler.
1833
1834         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
1835         (BuildbotBuilderQueueView.prototype.appendBuilderQueueStatus):
1836         (BuildbotBuilderQueueView.prototype.update):
1837
1838 2015-10-02  Daniel Bates  <dabates@apple.com>
1839
1840         Add iOS 9 Simulator builders and testers to WebKit Bot Watcher's Dashboard
1841         https://bugs.webkit.org/show_bug.cgi?id=149769
1842
1843         Reviewed by Alexey Proskuryakov.
1844
1845         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator.png: Added.
1846         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator@2x.png: Added.
1847         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1848         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1849         (WebKitBuildbot):
1850         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1851         (table.queue-grid tr.platform.ios-simulator-9 img.logo):
1852
1853 2015-10-02  Ryosuke Niwa  <rniwa@webkit.org>
1854
1855         REGRESSION(r190370): Speedometer spits out an extra console message
1856         https://bugs.webkit.org/show_bug.cgi?id=149720
1857
1858         Unreviewed. Temporarily ignore the console error message.
1859
1860         * Scripts/webkitpy/performance_tests/perftest.py:
1861         (PerfTest._filter_output):
1862
1863 2015-10-02  Brent Fulgham  <bfulgham@apple.com>
1864
1865         Provide "--no-ninja" option to avoid using Ninja
1866         https://bugs.webkit.org/show_bug.cgi?id=149757
1867
1868         Reviewed by Alex Christensen.
1869
1870         Add a new command line argument understood by webkitdirs.pm so
1871         that we can conditionally avoid using Ninja. This is an
1872         'opt-out' argument, so no existing Ninja users should be affected.
1873         
1874         * Scripts/webkitdirs.pm:
1875         (canUseNinja): Check for option and block ninja if present.
1876
1877 2015-10-02  Aakash Jain  <aakash_jain@apple.com>
1878
1879         Flakiness dashboard should support OS X El Capitan
1880         https://bugs.webkit.org/show_bug.cgi?id=149648
1881
1882         Reviewed by Alexey Proskuryakov.
1883
1884         * TestResultServer/static-dashboards/flakiness_dashboard.js: Fix the broken dashboard for ElCapitan.
1885
1886 2015-10-02  Daniel Bates  <dabates@apple.com>
1887
1888         Fix run-webkit-tests --ios-simulator after <http://trac.webkit.org/changeset/190515>
1889         (https://bugs.webkit.org/show_bug.cgi?id=149753)
1890
1891         For now, pass --ios-simulator.
1892
1893         * Scripts/webkitpy/port/ios.py:
1894         (IOSSimulatorPort._build_relay):
1895
1896 2015-10-02  Simon Fraser  <simon.fraser@apple.com>
1897
1898         Remove a "nullable" that breaks the iOS 8 build.
1899
1900         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1901         (-[TestRunnerWKWebView scrollViewWillBeginZooming:withView:]):
1902
1903 2015-10-02  Daniel Bates  <dabates@apple.com>
1904
1905         LayoutTestRelay is not built and archived when building for iOS Simulator
1906         https://bugs.webkit.org/show_bug.cgi?id=149753
1907
1908         Reviewed by Alexey Proskuryakov and Andy Estes.
1909
1910         Towards running layout tests on the iOS Simulator test bots, we need to teach scripts build-webkit
1911         and built-product-archive to build the Mac tool LayoutTestRelay and include this tool in the built
1912         product archive when building for iOS Simulator, respectively.
1913
1914         * BuildSlaveSupport/built-product-archive:
1915         (main): Pass the full platform name (options.platform) to archiveBuiltProduct() so that it can
1916         differentiate between iOS device and iOS Simulator platforms.
1917         (webkitBuildDirectoryForConfigurationAndPlatform): Extracted logic to run the script webkit-build-directory
1918         from determineWebKitBuildDirectories() into this function so that it can be used by both
1919         determineWebKitBuildDirectories() and archiveBuiltProduct().
1920         (determineWebKitBuildDirectories): Moved logic to execute the script webkit-build-directory from here to
1921         webkitBuildDirectoryForConfigurationAndPlatform().
1922         (createZip): Added parameter embedParentDirectoryNameOnDarwin (defaults to False) to specify whether
1923         we should call ditto(1) with --keepParent to embed the parent directory name in the zip archive. This
1924         argument is only applicable when building on Darwin. We only pass embedParentDirectoryNameOnDarwin=True
1925         when making an archive for a Mac or iOS device build. For iOS Simulator builds we archive two directories
1926         and we do not want to keep the parent directory because it is a placeholder directory used as a workaround
1927         for the limitation that ditto(1) can only accept a single directory to archive on its command line.
1928         (archiveBuiltProduct): Modified to take the full platform name as an argument. Added logic for iOS.
1929         For iOS device builds we use the same logic as for a Mac build and archive the configuration-specific
1930         build directory. For iOS Simulator builds we archive the configuration-specific iOS build directory,
1931         LayoutTestRelay and LayoutTestRelay.dSYM (if it exists) from the configuration-specific Mac build.
1932         * Scripts/build-layouttestrelay:
1933             - Remove unnecessary include of Perl module POSIX.
1934             - Only build LayoutTestRelay when building for iOS Simulator (i.e. --ios-simulator is passed).
1935         * Scripts/build-webkit:
1936             - Invoke script build-layouttestrelay when building for iOS Simulator.
1937
1938 2015-10-02  Brent Fulgham  <bfulgham@apple.com>
1939
1940         [Win] Unreviewed test fix.
1941
1942         You cannot run 'run-webkit-tests' from the command line because it does not know
1943         to append the binary subdirectory (bin32/bin64). We don't see this on our builders
1944         because they explicitly set use the 'root' argument to provide the full path to
1945         the test binaries.
1946
1947         * Scripts/webkitpy/port/win.py:
1948         (WinPort._build_path): Added.
1949
1950 2015-10-02  Alex Christensen  <achristensen@webkit.org>
1951
1952         Reloading without content blockers doesn't apply to resource loads after the main frame finishes
1953         https://bugs.webkit.org/show_bug.cgi?id=149430
1954         rdar://problem/22742222
1955
1956         Reviewed by Geoffrey Garen.
1957
1958         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1959         (WTR::TestController::cocoaResetStateToConsistentValues):
1960         * WebKitTestRunner/mac/TestControllerMac.mm:
1961         (WTR::TestController::platformConfigureViewForTest):
1962         Test what happens when you disable content blockers from the SPI.
1963
1964 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
1965
1966         [Win] Unreviewed build fix for run-api-tests
1967
1968         * Scripts/run-api-tests:
1969         (testToolPaths): Windows run needs to specify the binary path.
1970
1971 2015-10-01  Daniel Bates  <dabates@apple.com>
1972
1973         Another attempt to fix the Windows builders after <https://trac.webkit.org/changeset/190387>
1974         (https://bugs.webkit.org/show_bug.cgi?id=149695)
1975
1976         Following r190424 we can now rely on webkit-build-directory to return the path to
1977         the correct configuration-specific build directory on Windows.
1978
1979         * BuildSlaveSupport/built-product-archive:
1980         (archiveBuiltProduct):
1981
1982 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
1983
1984         [Win] Unreviewed build fix.
1985
1986         * Scripts/webkitdirs.pm:
1987         (setupAppleWinEnv): Use 64-bit build tools if available
1988
1989 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
1990
1991         [Win] Fix TestWebKitAPI build under CMake.
1992
1993         Reviewed by Alex Christensen.
1994
1995         * TestWebKitAPI/PlatformWin.cmake: Add missing link command
1996         for Psapi.lib.
1997
1998 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
1999
2000         [Win] Fix behavior of webkit-build-directory script
2001         https://bugs.webkit.org/show_bug.cgi?id=149718
2002
2003         Reviewed by Alex Christensen.
2004
2005         * Scripts/webkitdirs.pm:
2006         (determineConfigurationProductDir): Do not include the binary
2007         sub-directory in the configuration product directory output.
2008         (jscProductDir): Append correct binary path for Windows build.
2009         (setPathForRunningWebKitApp): Include properly binary subdirectories.
2010         (runSafari): Update for revised productDir behavior.
2011         (runMiniBrowser): Ditto.
2012
2013 2015-10-01  Alexey Proskuryakov  <ap@apple.com>
2014
2015         Stop building LayoutTestRelay for now. It's a Mac project, but build-webkit tries to
2016         use iOS SDK, like with all the others.
2017
2018         * Scripts/build-webkit:
2019
2020 2015-10-01  Daniel Bates  <dabates@apple.com>
2021
2022         Attempt to fix the iOS 9 Simulator testers
2023
2024         Add dependency DumpRenderTree.app to target All of project DumpRenderTree so that we
2025         build DumpRenderTree.app, if applicable. Also, teach build-webkit to build project
2026         LayoutTestRelay when building for iOS Simulator.
2027
2028         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2029         * Scripts/build-webkit:
2030
2031 2015-10-01  Carlos Garcia Campos  <cgarcia@igalia.com>
2032
2033         [GTK] Websites with invalid auth header keep loading forever
2034         https://bugs.webkit.org/show_bug.cgi?id=149710
2035
2036         Reviewed by Martin Robinson.
2037
2038         Add test case to check that we can authenticate sites with an
2039         empty realm.
2040
2041         * TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp:
2042         (testWebViewAuthenticationEmptyRealm):
2043         (serverCallback):
2044         (beforeAll):
2045
2046 2015-10-01  Alexey Proskuryakov  <ap@apple.com>
2047
2048         [Mac] Make run-api-tests work with System Integrity Protection
2049         https://bugs.webkit.org/show_bug.cgi?id=149711
2050         rdar://problem/22928202
2051
2052         Reviewed by Dan Bernstein.
2053
2054         * Scripts/run-api-tests:
2055         (runTest):
2056         (archCommandLineArgumentsForRestrictedEnvironmentVariables):
2057
2058 2015-10-01  Daniel Bates  <dabates@apple.com>
2059
2060         Attempt to fix the Windows build after <https://trac.webkit.org/changeset/190387>
2061         (https://bugs.webkit.org/show_bug.cgi?id=149695)
2062
2063         For some reason built-product-archive hardcodes the assumption that we build for 32-bit Windows.
2064         For now, use the path to the top-level WebKit build directory instead of using the configuration-
2065         specific build directory.
2066
2067         * BuildSlaveSupport/built-product-archive:
2068         (archiveBuiltProduct):
2069
2070 2015-10-01  Csaba Osztrogonác  <ossy@webkit.org>
2071
2072         [EFL] Fix the openwebrtc and gst-plugins-openwebrtc build with clang
2073         https://bugs.webkit.org/show_bug.cgi?id=145837
2074
2075         Reviewed by Philippe Normand.
2076
2077         * efl/jhbuild.modules:
2078         * efl/patches/openwebrtc-clang-warning-fix.patch: Added.
2079         * efl/patches/openwebrtc-gst-plugins-clang-warning-fix.patch: Added.
2080
2081 2015-10-01  Wenson Hsieh  <wenson_hsieh@apple.com>
2082
2083         Unreviewed. Fix the iOS build after r190407.
2084
2085         * WebKitTestRunner/ios/IOKitSPI.h:
2086
2087 2015-10-01  Wenson Hsieh  <wenson_hsieh@apple.com>
2088
2089         Implement keyboard event sending for iOS in WebKitTestRunner
2090         https://bugs.webkit.org/show_bug.cgi?id=149676
2091
2092         Reviewed by Simon Fraser.
2093
2094         Adds support for generating and sending key events in WebKitTestRunner. This is accomplished in a similar
2095         way as touch events, using IOHIDEvent machinery. Also adds callbacks to the UIScriptController JS API that
2096         allows us to run code when the keyboard is shown or hidden.
2097
2098         * WebKitTestRunner/UIScriptContext/Bindings/UIScriptController.idl: Adds the typeCharacter JS interface.
2099         * WebKitTestRunner/UIScriptContext/UIScriptController.cpp:
2100         (WTR::UIScriptController::setDidShowKeyboardCallback):
2101         (WTR::UIScriptController::didShowKeyboardCallback):
2102         (WTR::UIScriptController::setDidHideKeyboardCallback):
2103         (WTR::UIScriptController::didHideKeyboardCallback):
2104         (WTR::UIScriptController::typeCharacterUsingHardwareKeyboard):
2105         (WTR::UIScriptController::platformSetDidShowKeyboardCallback):
2106         (WTR::UIScriptController::platformSetDidHideKeyboardCallback):
2107         * WebKitTestRunner/UIScriptContext/UIScriptController.h:
2108         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
2109         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2110         (-[TestRunnerWKWebView initWithFrame:configuration:]): Registers the TestRunnerWKWebView to listen to
2111                 the notifications that the keyboard has been raised or lowered.
2112         (-[TestRunnerWKWebView _keyboardDidShow:]):
2113         (-[TestRunnerWKWebView _keyboardDidHide:]):
2114         * WebKitTestRunner/ios/HIDEventGenerator.h:
2115         * WebKitTestRunner/ios/HIDEventGenerator.m:
2116         (-[HIDEventGenerator _sendIOHIDKeyboardEvent:usage:isKeyDown:]): Helper to send a HID keyboard event.
2117         (shouldWrapWithShiftKeyEventForCharacter): Helper used to generate key events.
2118         (hidUsageCodeForCharacter): Ditto.
2119         (-[HIDEventGenerator keyDown:completionBlock:]): Synthesizes and sends HIDKeyboardEvents, triggering
2120                 a keyDown event in WebKit.
2121         * WebKitTestRunner/ios/IOKitSPI.h:
2122         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2123
2124 2015-10-01  Carlos Garcia Campos  <cgarcia@igalia.com>
2125
2126         Unreviewed, rolling out r190399.
2127
2128         Tests are still failing even after r190362
2129
2130         Reverted changeset:
2131
2132         "Unreviewed. Unskip GTK+ user media unit tests after r190362."
2133         http://trac.webkit.org/changeset/190399
2134
2135 2015-10-01  Csaba Osztrogonác  <ossy@webkit.org>
2136
2137         [jhbuild] switch to new upstream usrsctp library
2138         https://bugs.webkit.org/show_bug.cgi?id=149494
2139
2140         Reviewed by Philippe Normand.
2141
2142         * efl/jhbuild.modules:
2143         * gtk/jhbuild.modules:
2144
2145 2015-10-01  Carlos Garcia Campos  <cgarcia@igalia.com>
2146
2147         Unreviewed. Unskip GTK+ user media unit tests after r190362.
2148
2149         They should pass now.
2150
2151         * Scripts/run-gtk-tests:
2152         (TestRunner):
2153
2154 2015-09-30  Daniel Bates  <dabates@apple.com>
2155
2156         Another attempt to fix the build after <https://trac.webkit.org/changeset/190387>
2157         (https://bugs.webkit.org/show_bug.cgi?id=149695)
2158
2159         * BuildSlaveSupport/built-product-archive:
2160         (determineWebKitBuildDirectories): Substitute _configurationBuildDirectory for _buildDirectory.
2161         (extractBuiltProduct): Substitute _topLevelBuildDirectory for _buildDirectory.
2162
2163 2015-09-30  Daniel Bates  <dabates@apple.com>
2164
2165         Attempt to fix the build after <https://trac.webkit.org/changeset/190387>
2166         (https://bugs.webkit.org/show_bug.cgi?id=149695)
2167
2168         Actually, we need to pass --configuration to script webkit-build-directory to have
2169         it return the path to the configuration-specific build directory.
2170
2171         * BuildSlaveSupport/built-product-archive:
2172         (determineWebKitBuildDirectories):
2173
2174 2015-09-30  Daniel Bates  <dabates@apple.com>
2175
2176         built-product-archive archives incorrect build directory for iOS port
2177         https://bugs.webkit.org/show_bug.cgi?id=149695
2178
2179         Reviewed by Darin Adler.
2180
2181         Fixes an issue where the script built-product-archive archives a non-existent
2182         build directory for the iOS port. Without loss of generality, the script assumes
2183         the path to the Release configuration build for iOS is in directory WebKitBuild/Release.
2184         But the built products for this configuration are in directory WebKitBuild/Release-iphonesimulator.
2185
2186         Currently the script built-product-archive calls `webkit-build-directory --top-level ...`
2187         to determine the top-level build directory and computes the configuration-specific
2188         build directory to be the concatenation of the the top-level build directory and
2189         the configuration (e.g. Release). This is incorrect. Instead we should call
2190         webkit-build-directory omitting the flag --top-level to compute the path to the
2191         configuration-specific build directory.
2192
2193         * BuildSlaveSupport/built-product-archive: Fix up the style such that we use single quoted literals.
2194         (main): Renamed global variable _buildDirectory to _topLevelBuildDirectory to better describe
2195         its purpose and added global variable _configurationBuildDirectory to store the path
2196         to the configuration-specific build directory. Ensure that we have a non-empty string
2197         for both the top-level and configuration-specific build directories.
2198         (determineWebKitBuildDirectories): Formerly named determineWebKitBuildDirectory.
2199         Compute the configuration-specific build directory and store it in the global variable
2200         _configurationBuildDirectory.
2201         (archiveBuiltProduct): Modified to use _configurationBuildDirectory.
2202         (extractBuiltProduct): Modified to use _configurationBuildDirectory and _topLevelBuildDirectory
2203         as needed.
2204         (determineWebKitBuildDirectory): Deleted.
2205
2206 2015-09-30  Hunseop Jeong  <hs85.jeong@samsung.com>
2207
2208         [EFL] css3/device-adapt/* tests failed after r190335.
2209         https://bugs.webkit.org/show_bug.cgi?id=149655
2210
2211         Reviewed by Simon Fraser.
2212
2213         device-adapt/* tests need the fixedLayout option but useFixedLayout option is
2214         overwritten by updatePlatformSpecificViewOptionsForTest after r190335.
2215
2216         * WebKitTestRunner/efl/TestControllerEfl.cpp:
2217         (WTR::shouldUseFixedLayout):
2218
2219 2015-09-30  Dewei Zhu  <dewei_zhu@apple.com>
2220
2221         Extend JetStream timeout for slow devices.
2222
2223         Reviewed by Chris Dumez.
2224
2225         Extend JetStream timeout to 20 minutes.
2226
2227         * Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan:
2228
2229 2015-09-30  Daniel Bates  <dabates@apple.com>
2230
2231         Rename iOS builders/testers to include version
2232         https://bugs.webkit.org/show_bug.cgi?id=149685
2233
2234         Reviewed by Simon Fraser.
2235
2236         Substitute "Apple iOS 9" for "Apple iOS" in the names of iOS builders/testers so as
2237         make it clear to a reader the version of iOS these builders/testers are using.
2238
2239         * BuildSlaveSupport/build.webkit.org-config/config.json:
2240         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2241
2242 2015-09-30  Daniel Bates  <dabates@apple.com>
2243
2244         Add iOS criterion for triggering a build
2245         https://bugs.webkit.org/show_bug.cgi?id=149679
2246
2247         Rubber-stamped by Alexey Proskuryakov.
2248
2249         First pass at defining criterion for triggering an iOS build.
2250
2251         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
2252         (_should_file_trigger_build):
2253         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
2254         (ShouldBuildTest):
2255         (ShouldBuildTest.test_should_build):
2256
2257 2015-09-29  Simon Fraser  <simon.fraser@apple.com>
2258
2259         [iOS] Allow tests to generate user gestures for UI testing
2260         https://bugs.webkit.org/show_bug.cgi?id=149653
2261
2262         Reviewed by Tim Horton.
2263
2264         Expose functionality in UIScriptController to allow for testing single- and double-tap,
2265         and to listen for completion of scrolling and zooming in the WKWebView.
2266         
2267         Tap generation is done using synthetic IOHIDEvents, via a new HIDEventGenerator class
2268         which hides the complexity of creating these events. Event dispatch is asynchronous.
2269         We detect when the last event has been handled by dispatching a vendor-specific event,
2270         which is detected via -_handleHIDEvent: in our UIApplication subclass.
2271         
2272         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Link with IOKit.
2273         * WebKitTestRunner/UIScriptContext/Bindings/UIScriptController.idl: Two new properties
2274         for 'will begin zooming' and 'did end zooming' callbacks, and functions to dispatch
2275         single and double taps.
2276         * WebKitTestRunner/UIScriptContext/UIScriptContext.cpp:
2277         (UIScriptContext::registerCallback): Used to store the callbacks for zooming.
2278         Unlike the "task" callbacks, these are persistent, but we store them in the same hash map.
2279         (UIScriptContext::unregisterCallback):
2280         (UIScriptContext::callbackWithID):
2281         (UIScriptContext::fireCallback):
2282         * WebKitTestRunner/UIScriptContext/UIScriptContext.h:
2283         * WebKitTestRunner/UIScriptContext/UIScriptController.cpp:
2284         (WTR::UIScriptController::setWillBeginZoomingCallback): Cross-platform code.
2285         (WTR::UIScriptController::willBeginZoomingCallback): Ditto.
2286         (WTR::UIScriptController::setDidEndZoomingCallback):
2287         (WTR::UIScriptController::didEndZoomingCallback):
2288         (WTR::UIScriptController::singleTapAtPoint): Non-iOS stub.
2289         (WTR::UIScriptController::doubleTapAtPoint): Ditto.
2290         (WTR::UIScriptController::platformSetWillBeginZoomingCallback):
2291         (WTR::UIScriptController::platformSetDidEndZoomingCallback):
2292         * WebKitTestRunner/UIScriptContext/UIScriptController.h:
2293         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2294         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h: Properties for the zooming callbacks.
2295         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2296         (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]): Dispatch the zooming callback.
2297         (-[TestRunnerWKWebView scrollViewWillBeginZooming:withView:]): Ditto.
2298         (-[TestRunnerWKWebView scrollViewDidEndZooming:withView:atScale:]): Ditto.
2299         (-[TestRunnerWKWebView onDidEndZooming:]): Deleted.
2300         * WebKitTestRunner/ios/HIDEventGenerator.h: Copied from Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.h.
2301         * WebKitTestRunner/ios/HIDEventGenerator.m: Added.
2302         (simpleDragCurve):
2303         (calculateNextLocation):
2304         (delayBetweenMove):
2305         (+[HIDEventGenerator sharedHIDEventGenerator]):
2306         (+[HIDEventGenerator nextEventCallbackID]):
2307         (-[HIDEventGenerator init]):
2308         (-[HIDEventGenerator _createIOHIDEventType:]):
2309         (-[HIDEventGenerator _sendHIDEvent:]):
2310         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
2311         (-[HIDEventGenerator _updateTouchPoints:count:]):
2312         (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
2313         (-[HIDEventGenerator touchDown:touchCount:]):
2314         (-[HIDEventGenerator touchDown:]):
2315         (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
2316         (-[HIDEventGenerator liftUp:touchCount:]):
2317         (-[HIDEventGenerator liftUp:]):
2318         (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
2319         (-[HIDEventGenerator sendTaps:location:withNumberOfTouches:completionBlock:]):
2320         (-[HIDEventGenerator tap:completionBlock:]):
2321         (-[HIDEventGenerator doubleTap:completionBlock:]):
2322         (-[HIDEventGenerator twoFingerTap:completionBlock:]):
2323         (-[HIDEventGenerator dragWithStartPoint:endPoint:duration:completionBlock:]):
2324         (-[HIDEventGenerator pinchCloseWithStartPoint:endPoint:duration:completionBlock:]):
2325         (-[HIDEventGenerator pinchOpenWithStartPoint:endPoint:duration:completionBlock:]):
2326         (-[HIDEventGenerator markerEventReceived:]):
2327         * WebKitTestRunner/ios/IOKitSPI.h: Added.
2328         * WebKitTestRunner/ios/UIKitSPI.h: Copied from Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.h.
2329         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2330         (WTR::globalToContentCoordinates):
2331         (WTR::UIScriptController::singleTapAtPoint):
2332         (WTR::UIScriptController::doubleTapAtPoint):
2333         (WTR::UIScriptController::platformSetWillBeginZoomingCallback):
2334         (WTR::UIScriptController::platformSetDidEndZoomingCallback):
2335         * WebKitTestRunner/ios/mainIOS.mm:
2336         (-[WebKitTestRunnerApp _handleHIDEvent:]):
2337
2338 2015-09-30  Dana Burkart  <dburkart@apple.com>
2339
2340         git-add-reviewer should trim trailing spaces/newlines
2341         https://bugs.webkit.org/show_bug.cgi?id=149513
2342
2343         Reviewed by Darin Adler.
2344
2345         * Scripts/git-add-reviewer:
2346         (nonInteractive):
2347
2348 2015-09-30  Eric Carlson  <eric.carlson@apple.com>
2349
2350         REGRESSION(r190262): User media unit test failures after r190262
2351         https://bugs.webkit.org/show_bug.cgi?id=149580
2352
2353         Reviewed by Darin Adler.
2354
2355         * WebKitTestRunner/TestController.cpp:
2356         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible): Fix parameter
2357           order to WKUserMediaPermissionRequestAllow.
2358
2359 2015-09-30  Daniel Bates  <dabates@apple.com>
2360
2361         Add iOS builders and testers
2362         https://bugs.webkit.org/show_bug.cgi?id=149549
2363
2364         Reviewed by Alexey Proskuryakov.
2365
2366         Adds definitions for 64-bit iOS Simulator release builders and testers and a iOS device
2367         builder that builds universal release binaries for armv7, armv7s and arm64 architectures.
2368
2369         * BuildSlaveSupport/build.webkit.org-config/config.json: Add definitions for builders and testers.
2370         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Update unit tests.
2371
2372 2015-09-30  Timothy Hatcher  <timothy@apple.com>
2373
2374         Give WebKitLauncher the get-task-allow entitlement to allow it to work on El Capitan
2375         https://bugs.webkit.org/show_bug.cgi?id=149674
2376
2377         Reviewed by Lucas Forschler.
2378
2379         * WebKitLauncher/WebKitLauncher.entitlements: Added.
2380         * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:
2381
2382 2015-09-30  Jason Marcell  <jmarcell@apple.com>
2383
2384         BuildbotQueueView.prototype._appendPendingRevisionCount should skip repositories that don't
2385         have an associated trac instance.
2386         https://bugs.webkit.org/show_bug.cgi?id=149673
2387
2388         Reviewed by Alexey Proskuryakov.
2389
2390         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
2391         (BuildbotQueueView.prototype._appendPendingRevisionCount): Skip repositories that don't
2392         have an associated trac instance.
2393
2394 2015-09-30  Daniel Bates  <dabates@apple.com>
2395
2396         Prioritize testing latest build request on iOS test bots
2397         https://bugs.webkit.org/show_bug.cgi?id=149669
2398
2399         Reviewed by Darin Adler.
2400
2401         We should prioritize testing of the latest build request on the iOS test bots
2402         as we do for Mac and Windows test bots.
2403
2404         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2405         (loadBuilderConfig):
2406
2407 2015-09-30  Daniel Bates  <dabates@apple.com>
2408
2409         Add buildbot category for iOS builders and testers
2410         https://bugs.webkit.org/show_bug.cgi?id=149667
2411
2412         Reviewed by Darin Adler.
2413
2414         Group iOS builders and testers under category iOS and add dashboard and console hyperlinks
2415         for iOS to the build.webkit.org home page.
2416
2417         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2418         (loadBuilderConfig):
2419         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
2420
2421 2015-09-30  Daniel Bates  <dabates@apple.com>
2422
2423         Actually fix the Mac builders build after <http://trac.webkit.org/changeset/190219>
2424         (https://bugs.webkit.org/show_bug.cgi?id=149539)
2425
2426         I inadvertently didn't remove the ONLY_ACTIVE_ARCH=NO flag when building on a Mac
2427         in <http://trac.webkit.org/changeset/190351>.
2428
2429         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2430         (CompileWebKit.start):
2431
2432 2015-09-30  Daniel Bates  <dabates@apple.com>
2433
2434         Attempt to fix the Mac builders build after <http://trac.webkit.org/changeset/190219>
2435         (https://bugs.webkit.org/show_bug.cgi?id=149539)
2436
2437         {32, 64}-bit Mac builders should not try to build project {Plugin.64, Plugin.32},
2438         respectively; only pass ONLY_ACTIVE_ARCH=NO when building for iOS.
2439
2440         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2441         (CompileWebKit.start):
2442
2443 2015-09-30  Lucas Forschler  <lforschler@apple.com>
2444
2445         bot210 was configured for a queue instead of bot126.
2446         
2447         Unreviewed config.json fix.
2448         
2449         * BuildSlaveSupport/build.webkit.org-config/config.json:
2450
2451 2015-09-30  Lucas Forschler  <lforschler@apple.com>
2452
2453         Bring El Capitan buildbot infrastructure online.
2454         https://bugs.webkit.org/show_bug.cgi?id=149605
2455         
2456         Reviewed by Darin Adler.
2457
2458         * BuildSlaveSupport/build.webkit.org-config/config.json:
2459
2460 2015-09-30  Tomas Popela  <tpopela@redhat.com>
2461
2462         [GTK] Deprecation warnings in DOMNodeTest
2463         https://bugs.webkit.org/show_bug.cgi?id=149663
2464
2465         After the webkit_dom_document_get_elements_by_tag_name deprecation we
2466         need to update the tests to use webkit_dom_document_query_selector_all
2467         to avoid compilation warnings.
2468
2469         Also add a new test for webkit_dom_document_get_elements_by_tag_name_as_html_collection
2470         (the suggested replacement for the deprecated function).
2471
2472         Reviewed by Carlos Garcia Campos.
2473
2474         * TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
2475         (WebKitDOMNodeTest::testTagNamesNodeList):
2476         (WebKitDOMNodeTest::testTagNamesHTMLCollection):
2477         (registerTests):
2478         (WebKitDOMNodeTest::testTagNames): Deleted.
2479         * TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp:
2480         (prepareDOMForTagNamesTests):
2481         (testWebKitDOMNodeTagNamesNodeList):
2482         (testWebKitDOMNodeTagNamesHTMLCollection):
2483         (beforeAll):
2484         (testWebKitDOMNodeTagNames): Deleted.
2485
2486 2015-09-29  Simon Fraser  <simon.fraser@apple.com>
2487
2488         WebKitTestRunner fails to apply "useFlexibleViewport" when it's specified in a file comment
2489         https://bugs.webkit.org/show_bug.cgi?id=149650
2490
2491         Reviewed by Tim Horton.
2492         
2493         TestInvocation::invoke() consulted shouldMakeViewportFlexible(), but that only
2494         looks at the file path, and not the custom options that come from file comments.
2495         
2496         Fix by computing TestOptions before making the TestInvocation, and setting them
2497         as const TestInvocation data. This meant changing various call sites to take
2498         the std::string pathOrURL, rather than the TestInvocation itself.
2499         
2500         Also initialize TestInvocation with a WKURLRef, rather than a std::string.
2501
2502         * WebKitTestRunner/CMakeLists.txt:
2503         * WebKitTestRunner/TestController.cpp:
2504         (WTR::TestController::ensureViewSupportsOptionsForTest):
2505         (WTR::testPath):
2506         (WTR::createTestURL):
2507         (WTR::updateTestOptionsFromTestHeader):
2508         (WTR::TestController::testOptionsForTest):
2509         (WTR::TestController::updateWebViewSizeForTest):
2510         (WTR::TestController::updateWindowScaleForTest):
2511         (WTR::TestController::runTest):
2512         * WebKitTestRunner/TestController.h:
2513         * WebKitTestRunner/TestInvocation.cpp:
2514         (WTR::TestInvocation::TestInvocation):
2515         (WTR::TestInvocation::invoke):
2516         (WTR::createWKURL): Deleted.
2517         (WTR::TestInvocation::shouldMakeViewportFlexible): Deleted.
2518         (WTR::TestInvocation::shouldUseFixedLayout): Deleted.
2519         * WebKitTestRunner/TestInvocation.h:
2520         (WTR::TestInvocation::options):
2521         * WebKitTestRunner/TestOptions.cpp: Copied from Tools/WebKitTestRunner/TestOptions.h.
2522         (WTR::pathContains):
2523         (WTR::shouldMakeViewportFlexible):
2524         (WTR::shouldUseFixedLayout):
2525         (WTR::isSVGTestPath):
2526         (WTR::isHiDPITestPath):
2527         (WTR::TestOptions::TestOptions):
2528         * WebKitTestRunner/TestOptions.h:
2529         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2530         * WebKitTestRunner/efl/TestControllerEfl.cpp:
2531         (WTR::pathContains):
2532         (WTR::shouldUseFixedLayout):
2533         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
2534         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2535         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
2536         * WebKitTestRunner/ios/TestControllerIOS.mm:
2537         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
2538         * WebKitTestRunner/mac/TestControllerMac.mm:
2539         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
2540
2541 2015-09-29  Aakash Jain  <aakash_jain@apple.com>
2542
2543         Flakiness dashboard should support OS X El Capitan
2544         https://bugs.webkit.org/show_bug.cgi?id=149648
2545
2546         Reviewed by Alexey Proskuryakov.
2547
2548         * QueueStatusServer/app.yaml: We do not need to maintain SVN revision here because of 
2549         difference between new appscale and old Google App Engine implementation.
2550         * TestResultServer/app.yaml: Same.
2551         * TestResultServer/static-dashboards/builders.jsonp: Added OSX El Capitan support.
2552
2553 2015-09-29  Daniel Bates  <dabates@apple.com>
2554
2555         configure-xcode-for-ios-development does not work with Xcode 7
2556         https://bugs.webkit.org/show_bug.cgi?id=149640
2557
2558         Reviewed by Alexey Proskuryakov.
2559
2560         When Xcode 7 is installed, running configure-xcode-for-ios-development dies with an error
2561         because it cannot find the Xcode specification files for iOS simulator and device. These
2562         files have moved to a new location in Xcode 7 distribution. Moreover we must add the
2563         relevant definitions to the Xcode 7 specification files directly as opposed to creating
2564         new specification files with the added definitions (as we did in older versions of Xcode)
2565         in order for Xcode 7 to honor these definitions.
2566
2567         * Scripts/configure-xcode-for-ios-development: Sorted forward declarations.
2568         (updateXcodeSpecificationFilesForSDKIfNeeded): Added.
2569         (updateXcode7SpecificationFile): Added.
2570         (createLegacyXcodeSpecificationFilesForSDKIfNeeded): Formerly named createXcodeSpecificationFilesForSDKIfNeeded.
2571         (writeXcodeSpecification): Moved congratulations line to caller so as to write out the
2572         appropriate success message.
2573         (mergeXcodeSpecificationWithSpecificationAndId): Formerly named createXcodeSpecificationFromSpecificationAndId.
2574         (createXcodeSpecificationFilesForSDKIfNeeded): Deleted.
2575         (createXcodeSpecificationFromSpecificationAndId): Deleted.
2576
2577 2015-09-29  Brent Fulgham  <bfulgham@apple.com>
2578
2579         [Win] Allow 'prepare-ChangeLog' to be used without Cygwin
2580         https://bugs.webkit.org/show_bug.cgi?id=149639
2581
2582         Reviewed by Alex Christensen.
2583
2584         * Scripts/VCSUtils.pm:
2585         (exitStatus): Use 'isWindows()' method.
2586         (isSVNVersion16OrNewer): 'eval' is not needed here, and just causes
2587         an error. This method could probably just go away.
2588         (normalizePath): Leave Windows (or Unix) paths as platform paths, rather than
2589         always changing to Unix style. 
2590         (unixPath): Added. Needed so Windows can always show a Unix path in the
2591         ChangeLog file.
2592         (changeLogName): Work around the fact that 'getpwuid' is not available on
2593         a pure Windows build of Perl.
2594         * Scripts/prepare-ChangeLog:
2595         (generateFunctionLists): Normalize path received from 'svn' in case it's a Unix
2596         path on Windows.
2597         (svnUpdateCommand): Added helper function. Needed because Windows Perl does not
2598         support using arrays for 'open' arguments.
2599         (resolveChangeLogsPath): Ditto.
2600         (resolveConflictedChangeLogs): Use new helper functions.
2601         (generateNewChangeLogs): Force Windows to use Unix paths in ChangeLog output.
2602         (diffCommand): Use double-quotes for paths, since Windows doesn't understand single
2603         quotes. Unix systems are happy either way.
2604         (statusCommand): Ditto.
2605         * Scripts/webkitdirs.pm:
2606         (launcherName): Drive-by fix. WinLauncher was renamed to MiniBrowser some time ago.
2607
2608 2015-09-29  Brent Fulgham  <bfulgham@apple.com>
2609
2610         [Win] Unreviewed 64-bit build fix after switch to CMake.
2611
2612         * Scripts/webkitdirs.pm:
2613         (determineIsWin64FromArchitecture): Added.
2614
2615 2015-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2616
2617         printing does not use minimum page zoom factor
2618         https://bugs.webkit.org/show_bug.cgi?id=108507
2619
2620         Reviewed by Darin Adler.
2621
2622         WebKitTestRunner always takes the snapshots from the UI process
2623         (expect for IOS), so in the case of printing, the layout in the
2624         web view is not the expected one. When printing, we need to take
2625         the snapshot in the web process and ensure it's rendered with a
2626         PrintContext.
2627
2628         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2629         (WTR::InjectedBundlePage::dump): When dumping pixels, pass
2630         kWKSnapshotOptionsPrinting option to
2631         WKBundlePageCreateSnapshotWithOptions() when printing.
2632
2633 2015-09-28  Carlos Garcia Campos  <cgarcia@igalia.com>
2634
2635         [WTR] Pixel tests generate the snapshots twice in Web and UI processes
2636         https://bugs.webkit.org/show_bug.cgi?id=149595
2637
2638         Reviewed by Tim Horton.
2639
2640         All ports except IOS implement
2641         PlatformWebView::windowSnapshotImage() to generate the snapshot
2642         for the pixel tests in the UI process. But we are still generating
2643         a snapshot for pixel tests in the Web process too, that is passed
2644         to the UI process but ignored.
2645         Whether a pixel result is needed or not, is only known by the web
2646         process depending on whether the test called dumpAsText with
2647         dumpPixels == true or not. Since the pixels are now dump in the UI
2648         process, we need to pass that information to the UI process when
2649         the test is done. For that we set a PixelResultIsPending bool
2650         parameter to the Done message, and we only add the PixelResult
2651         when UI process doesn't need to generate the pixels dump.
2652
2653         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2654         (WTR::InjectedBundle::didReceiveMessageToPage): Set
2655         m_pixelResultIsPending to false on reset.
2656         (WTR::InjectedBundle::done): Add PixelResultIsPending parameter to the
2657         Done message, and set the PixelResult if m_pixelResultIsPending is false.
2658         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2659         (WTR::InjectedBundle::setPixelResult): Set m_pixelResultIsPending to false.
2660         (WTR::InjectedBundle::setNeedsPixelResult): Set m_pixelResultIsPending.
2661         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2662         (WTR::InjectedBundlePage::dump): Only create a snapshot for IOS
2663         port.
2664         * WebKitTestRunner/TestInvocation.cpp:
2665         (WTR::TestInvocation::dumpResults): Use either the pixel result
2666         from the web process or generate a pixel result from the web view
2667         if need it.
2668         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2669         * WebKitTestRunner/TestInvocation.h: Add SnapshotResultType enum
2670         parameter to dumpPixelsAndCompareWithExpected, since the snapshot
2671         is created by the caller now, but the CG implementation needs to
2672         know if it's a Web or UI process snapshot.
2673         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
2674         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
2675         cairo surface for the given image.
2676         * WebKitTestRunner/cg/TestInvocationCG.cpp:
2677         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
2678         CGContext for the given image.
2679
2680 2015-09-28  Dean Johnson  <dean_johnson@apple.com>
2681
2682         Fix JS errors on dashboard metrics page
2683         https://bugs.webkit.org/show_bug.cgi?id=149608
2684
2685         Reviewed by Alexey Proskuryakov.
2686
2687         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js: Updated to use Settings.
2688         (initPlatformsByFamily): 
2689         (updateHiddenPlatforms):
2690         (parsePlatformFamily): Deleted.
2691         (updateToggleButtons): Deleted.
2692         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js:
2693         (updateHiddenPlatforms): Added to remove errors.
2694         (initPlatformsByFamily): Added to remove errors.
2695         (unhiddenQueues): Updated to use Settings.
2696         (documentReady): Added logic to add toggle buttons to the settings menu.
2697         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
2698         (Settings.prototype.parsePlatformFamily): Moved duplicate logic from Main.js and
2699         MetricsMain.js to Settings.
2700         (Settings.prototype.updateToggleButtons): Moved duplicate logic from Main.js and
2701         MetricsMain.js to Settings.
2702         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/QueueView.js:
2703         (QueueView.prototype._updateHiddenState): Updated to use Settings.
2704
2705 2015-09-28  Aakash Jain  <aakash_jain@apple.com>
2706
2707         Appscale query fails because of missing index
2708         https://bugs.webkit.org/show_bug.cgi?id=149609
2709
2710         Reviewed by Darin Adler.
2711
2712         * QueueStatusServer/index.yaml: Added the required index.
2713
2714 2015-09-28  Brent Fulgham  <bfulgham@apple.com>
2715
2716         [Win] Fix the 64-bit build after switch to cmake.
2717
2718         Reviewed by Alex Christensen.
2719
2720         * Scripts/webkitdirs.pm:
2721         (generateBuildSystemFromCMakeProject): Use correct arguments for cmake to
2722         run a 64-bit build.
2723
2724 2015-09-28  Brent Fulgham  <bfulgham@apple.com>
2725
2726         [Win] Allow Windows to run test-webkitpy without Cygwin
2727         https://bugs.webkit.org/show_bug.cgi?id=149602
2728
2729         Reviewed by Alex Christensen.
2730
2731         These changes mostly shift from hard-coded paths using UNIX-style
2732         separators to Python's "os.path.join" syntax that uses the correct
2733         path separator for each platform.
2734         
2735         * Scripts/webkitpy/common/system/path.py:
2736         (cygpath): Don't pass paths through Cygpath on native Windows.
2737         * Scripts/webkitpy/port/win.py:
2738         (WinPort._path_to_apache): Use os.path.join.
2739         (WinPort._ntsd_location): Support 64-bit environment (ProgramW6432 doesn't exist
2740         in 64-bit environments).
2741         * Scripts/webkitpy/style/checker.py: Use os.path.join.
2742         * Scripts/webkitpy/style/checker_unittest.py:
2743         (GlobalVariablesTest.test_path_rules_specifier.assertNoCheck): Use os.path.join.
2744         (GlobalVariablesTest.test_path_rules_specifier): Ditto.
2745         (GlobalVariablesTest): Ditto.
2746         (GlobalVariablesTest.test_max_reports_per_category): Ditto.
2747         (CheckerDispatcherSkipTest.test_should_skip_with_warning): Ditto.
2748         (CheckerDispatcherDispatchTest.test_js_paths): Ditto.
2749         (CheckerDispatcherDispatchTest.test_json_paths): Ditto.
2750         (CheckerDispatcherDispatchTest.test_python_paths): Ditto.
2751         (CheckerDispatcherDispatchTest.test_text_paths): Ditto.
2752         (CheckerDispatcherDispatchTest.test_xml_paths): Ditto.
2753         (StyleProcessor_CodeCoverageTest._create_carriage_checker_class): Ditto.
2754         (StyleProcessor_CodeCoverageTest): Ditto.
2755         (StyleProcessor_CodeCoverageTest.test_should_process__skip_without_warning): Ditto.
2756         (StyleProcessor_CodeCoverageTest.test_should_process__skip_with_warning): Ditto.
2757         (StyleProcessor_CodeCoverageTest.test_should_process__true_result): Ditto.
2758         * Scripts/webkitpy/w3c/test_parser_unittest.py: Uses os.path.join rather than
2759         manual string concatenation of paths.
2760
2761 2015-09-28  Csaba Osztrogonác  <ossy@webkit.org>
2762
2763         Add bugzilla addresses of committers to contributors.json
2764         https://bugs.webkit.org/show_bug.cgi?id=149520
2765
2766         Reviewed by Darin Adler.
2767
2768         * Scripts/webkitpy/common/config/contributors.json:
2769
2770 2015-09-28  Csaba Osztrogonác  <ossy@webkit.org>
2771
2772         validate-committer-lists -b shouldn't need edituser privileges
2773         https://bugs.webkit.org/show_bug.cgi?id=149519
2774
2775         Reviewed by Darin Adler.
2776
2777         * Scripts/validate-committer-lists:
2778         (CommitterListBugzillaChecker._has_invalid_bugzilla_email):
2779         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
2780         (BugzillaQueries.is_invalid_bugzilla_email):
2781         (BugzillaQueries): Deleted.
2782         (BugzillaQueries.fetch_logins_matching_substring): Deleted.
2783
2784 2015-09-26  Carlos Garcia Campos  <cgarcia@igalia.com>
2785
2786         Unreviewed. Gardening: skip media stream tests failing after r190262.
2787
2788         * Scripts/run-gtk-tests:
2789         (TestRunner):
2790
2791 2015-09-25  Alexey Proskuryakov  <ap@apple.com>
2792
2793         [Mac] USE_INTERNAL_SDK is used undefined in tools projects
2794         https://bugs.webkit.org/show_bug.cgi?id=149571
2795
2796         Reviewed by Dan Bernstein.
2797
2798         Use the same pattern as in Source directory configurations (so, also get rid of AspenFamily.xcconfig). 
2799
2800         * DumpRenderTree/mac/Configurations/Base.xcconfig:
2801         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2802         * LayoutTestRelay/Configurations/Base.xcconfig:
2803         * MiniBrowser/Configurations/Base.xcconfig:
2804         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2805         * TestWebKitAPI/Configurations/Base.xcconfig:
2806         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2807         * WebEditingTester/Configurations/Base.xcconfig:
2808         * WebEditingTester/Configurations/DebugRelease.xcconfig:
2809         * WebKitTestRunner/Configurations/Base.xcconfig:
2810         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2811         * WebKitTestRunner/iOS.xcconfig: Removed.
2812
2813 2015-09-25  Eric Carlson  <eric.carlson@apple.com>
2814
2815         Clean up user media request internal API
2816         https://bugs.webkit.org/show_bug.cgi?id=149527
2817
2818         Reviewed by Tim Horton.
2819
2820         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
2821         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack): Update for API changes.
2822
2823         * WebKitTestRunner/TestController.cpp:
2824         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible): Ditto.
2825
2826 2015-09-25  Simon Fraser  <simon.fraser@apple.com>
2827
2828         [iOS WK2] Add viewport tests and fix runUIScript() timing issues
2829         https://bugs.webkit.org/show_bug.cgi?id=149577
2830
2831         Reviewed by Tim Horton.
2832         
2833         When calling testRunner.runUIScript() from a page load event, the script could run
2834         in the UI process before the current remote layer tree transaction had been handled
2835         there. This meant that runUIScript() could query state which was about to change.
2836         
2837         Fix by delaying the execution of the UI script until a layer tree transaction has
2838         been handled by the UI process, leveraging the existing DrawingAreaProxy::dispatchAfterEnsuringDrawing().
2839
2840         * WebKitTestRunner/TestInvocation.cpp:
2841         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2842         (WTR::TestInvocation::runUISideScriptAfterUpdateCallback):
2843         * WebKitTestRunner/TestInvocation.h:
2844
2845 2015-09-25  Alexey Proskuryakov  <ap@apple.com>
2846
2847         [Mac] Media tests start to time out after a few days of bot uptime
2848         https://bugs.webkit.org/show_bug.cgi?id=149468
2849
2850         Reviewed by Darin Adler.
2851
2852         Delete cache directory in addition to the temporary one. Don't delete /private/tmp/MediaCache,
2853         as it's not longer used by tests. Set TMPDIR and DIRHELPER_USER_DIR_SUFFIX to make
2854         all temporary and cache files go to a custom location.
2855
2856         * Scripts/webkitpy/port/base.py:
2857         * Scripts/webkitpy/port/driver.py:
2858         * Scripts/webkitpy/port/mac.py:
2859         * Scripts/webkitpy/port/win.py:
2860         (WinPort._driver_tempdir_for_environment): Deleted unused function.
2861
2862 2015-09-25  Dan Bernstein  <mitz@apple.com>
2863
2864         Removed MiniBrowser.entitlements.
2865
2866         Rubber-stamped by Anders Carlsson.
2867
2868         The entitlements weren’t used anyway.
2869
2870         * MiniBrowser/MiniBrowser.entitlements: Removed.
2871         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
2872
2873 2015-09-24  Daniel Bates  <dabates@apple.com>
2874
2875         Add WebKitSystemInterface for iOS 9.0
2876         https://bugs.webkit.org/show_bug.cgi?id=149550
2877
2878         Rubber-stamped by Alexey Proskuryakov.
2879
2880         * Scripts/copy-webkitlibraries-to-product-directory:
2881
2882 2015-09-24  Daniel Bates  <dabates@apple.com>
2883
2884         Support building for arbitrary architectures
2885         https://bugs.webkit.org/show_bug.cgi?id=149539
2886
2887         Reviewed by Alexey Proskuryakov.
2888
2889         Teach buildbot to pass the architectures associated with the builder to build-webkit
2890         when building on OS X and iOS. As a side effect of this change we now support building
2891         universal binaries when multiples architectures are specified.
2892
2893         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2894         (CompileWebKit.start):
2895
2896 2015-09-24  Daniel Bates  <dabates@apple.com>
2897
2898         Fix the build after <http://trac.webkit.org/changeset/190212>
2899         (http://trac.webkit.org/changeset/190212)
2900
2901         I inadvertently did not remove the fullPlatform argument from one of the callers of archiveBuiltProduct().
2902
2903         * BuildSlaveSupport/built-product-archive:
2904         (main):
2905
2906 2015-09-24  Daniel Bates  <dabates@apple.com>
2907
2908         Support running unit tests on iOS Simulator test bot
2909         https://bugs.webkit.org/show_bug.cgi?id=149536
2910
2911         Reviewed by Alexey Proskuryakov.
2912
2913         Implements support for running unit tests on a iOS test bot. At the time of writing,
2914         the script run-api-tests supports running unit tests on Mac, Windows and iOS Simulator.
2915
2916         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2917         (RunUnitTests.start): Append appropriate command line flag when invoking script run-api-tests.
2918         (TestFactory.__init__): Add step RunUnitTests when the test bot is for the iOS Simulator platform.
2919
2920 2015-09-24  Daniel Bates  <dabates@apple.com>
2921
2922         Add support infrastructure for OpenSource iOS builders and testers
2923         https://bugs.webkit.org/show_bug.cgi?id=149534
2924
2925         Reviewed by Darin Adler.
2926
2927         Towards setting up OpenSource iOS build bots, teach buildbot and its support
2928         scripts about iOS.
2929
2930         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2931         (appendCustomBuildFlags): Require the caller to pass parameter fullPlatform and append
2932         --ios-simulator or --device for a builder/tester whose full platform name begins with
2933         "ios-simulator" or "ios", respectively.
2934         (RunJavaScriptCoreTests.start): Pass the full platform name to appendCustomBuildFlags().
2935         * BuildSlaveSupport/built-product-archive:
2936         (main): Pass the full platform name to determineWebKitBuildDirectory().
2937         (determineWebKitBuildDirectory): Call script webkit-build-directory with the appropriate
2938         command line flag when building for iOS.
2939         (archiveBuiltProduct): Use the same logic for iOS as we do for Mac. Also, remove unused
2940         parameter fullPlatform. This parameter was originally added in r125066 to support the
2941         Chromium Android port, which has since been removed from the OpenSource WebKit Project.
2942         (extractBuiltProduct): Use the same logic for iOS as we do for Mac.
2943         * BuildSlaveSupport/clean-build:
2944         (main): Call script webkit-build-directory with the appropriate command line flag when
2945         building for iOS.
2946         * BuildSlaveSupport/delete-stale-build-files:
2947         (main): Use the same logic for iOS as we do for Mac.
2948         (webkitBuildDirectory): Call script webkit-build-directory with the appropriate command line
2949         flag when building for iOS.
2950         * BuildSlaveSupport/test-result-archive:
2951         (archiveTestResults): Use the same logic for iOS as we do for Mac.
2952
2953 2015-09-24  Daniel Bates  <dabates@apple.com>
2954
2955         Remove Chromium-specific changes to script built-product-archive
2956         https://bugs.webkit.org/show_bug.cgi?id=149530
2957
2958         Rubber-stamped by Csaba Osztrogonác.
2959
2960         Reverts changes made in r113074 and r113067 to support Chromium testers. The
2961         Chromium code has long since been removed from the OpenSource WebKit Project.
2962
2963         * BuildSlaveSupport/built-product-archive:
2964         (createZipManually):
2965         (createZip):
2966         (archiveBuiltProduct):
2967
2968 2015-09-24  Dan Bernstein  <mitz@apple.com>
2969
2970         Build fix.
2971
2972         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
2973
2974 2015-09-24  Mark Lam  <mark.lam@apple.com>
2975
2976         Unreviewed. Make Lucas Forschler a WebKit reviewer.
2977
2978         * Scripts/webkitpy/common/config/contributors.json:
2979
2980 2015-09-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2981
2982         Unreviewed. Fix GObject DOM API breaks after r190120.
2983
2984         Bring back code removed in r169931 to handle documentation of
2985         deleted classes.
2986
2987         * gtk/webkitdom.py:
2988         (WebKitDOMDocGenerator):
2989         (WebKitDOMDocGenerator.write_deleted_classes):
2990         (WebKitDOMDocGenerator.generate):
2991         (write_deleted_classes):
2992         (WebKitDOMDocGeneratorSections._deleted_class):
2993         (WebKitDOMDocGeneratorSections._deleted_class.in):
2994         (WebKitDOMDocGeneratorSections.write_deleted_classes):
2995         (WebKitDOMDocGeneratorSections.write_deleted_classes.with):
2996
2997 2015-09-23  Myles C. Maxfield  <mmaxfield@apple.com>
2998
2999         [Cocoa] [Font Features] Implement font-variant-*
3000         https://bugs.webkit.org/show_bug.cgi?id=148413
3001
3002         Reviewed by Darin Adler.
3003
3004         Update test font to use "lnum" feature.
3005
3006         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
3007         (Generator::appendGSUBTable):
3008
3009 2015-09-22  Andy Estes  <aestes@apple.com>
3010
3011         ContentFiltering.AllowDownloadAfterAddData is very flaky
3012         https://bugs.webkit.org/show_bug.cgi?id=148885
3013         <rdar://problem/22729563>
3014
3015         Reviewed by Alexey Proskuryakov.
3016
3017         The AllowDownload* tests were relying on -_downloadDidStart: being called before -webView:didFinishNavigation:,
3018         but there is no guarantee of this. For tests that should allow a download, spin the runloop until
3019         -_downloadDidStart: is called. The test will now timeout on failure, but will no longer produce false failures.
3020
3021         * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm:
3022         (downloadTest):
3023
3024 2015-09-22  Alexey Proskuryakov  <ap@apple.com>
3025
3026         Mavericks: Media tests start to time out after a few days of bot uptime
3027         https://bugs.webkit.org/show_bug.cgi?id=149468
3028
3029         Reviewed by Chris Dumez.
3030
3031         * Scripts/webkitpy/port/base.py:
3032         * Scripts/webkitpy/port/driver.py:
3033         * Scripts/webkitpy/port/mac.py:
3034
3035 2015-09-22  Nan Wang  <n_wang@apple.com>
3036
3037         Unreviewed, add myself to the committers list.
3038
3039         * Scripts/webkitpy/common/config/contributors.json:
3040
3041 2015-09-21  Simon Fraser  <simon.fraser@apple.com>
3042
3043         Remove 'nullable' to fix older iOS builds.
3044
3045         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3046         (-[TestRunnerWKWebView scrollViewDidEndZooming:withView:atScale:]):
3047
3048 2015-09-21  Brent Fulgham  <bfulgham@apple.com>
3049
3050         [Win] Show tiled drawing debug overlay on Windows
3051         https://bugs.webkit.org/show_bug.cgi?id=149426
3052
3053         Reviewed by Dean Jackson.
3054
3055         * MiniBrowser/MiniBrowser.vcxproj/MiniBrowserLib.rc: Add new menu option.
3056         * MiniBrowser/MiniBrowser.vcxproj/MiniBrowserLibResource.h: Ditto.
3057         * MiniBrowser/win/Common.cpp:
3058         (::ToggleMenuItem): Recognize new menu item and toggle the 'showTiledScrollingIndicator'
3059         flag if needed.
3060         * MiniBrowser/win/MiniBrowser.h: Update to use new IWebPreferencesPrivate3 class.
3061
3062 2015-09-21  Brent Fulgham  <bfulgham@apple.com>
3063
3064         [Win] Use command-line argument to launch in regular or High DPI mode.
3065         https://bugs.webkit.org/show_bug.cgi?id=149417
3066
3067         Reviewed by Dean Jackson.
3068
3069         * MiniBrowser/win/Common.cpp:
3070         (parseCommandLine): Ignore the '--highDPI' argument. It's used at the
3071         very start of execution, before the MiniBrowser.dll is loaded.
3072         * win/DLLLauncher/DLLLauncherMain.cpp:
3073         (shouldUseHighDPI): Check for '--highDPI', and use this mode if
3074         present. On WinCairo, always use High DPI.
3075
3076 2015-09-21  Ryosuke Niwa  <rniwa@webkit.org>
3077
3078         32-bit Mac build fix attempt after r190065.
3079
3080         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3081
3082 2015-09-21  Alexey Proskuryakov  <ap@apple.com>
3083
3084         [OS X] Update for Xcode 7.0 on Yosemite
3085         https://bugs.webkit.org/show_bug.cgi?id=149389
3086
3087         Reviewed by Dan Bernstein.
3088
3089         * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.h:
3090         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.h:
3091         Removed unneeded declarations - conforming to a protocol is sufficient.
3092
3093         * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
3094         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm:
3095         Changed the definitions to be compiled whenever the SDK requires it (so we will have
3096         dead code compiled in when building for 10.10 with 10.11 SDK, somewhat unfortunately).
3097
3098 2015-09-21  Simon Fraser  <simon.fraser@apple.com>
3099
3100         Add the ability for tests to run script in the UI process in WebKitTestRunner
3101         https://bugs.webkit.org/show_bug.cgi?id=149356
3102
3103         Reviewed by Tim Horton.
3104
3105         This change adds testRunner.runUIScript(script, callback), which allows a test
3106         to execute script in a JSContext which runs in the UI process. That context
3107         has bindings exposed through the UIScriptController interface; currently one test
3108         function, and some iOS-specific functions are included. UIScriptController can be
3109         async with a callback, and runUIScript() itself is asynchronous. When the UI 
3110         script is complete, it calls uiController.uiScriptComplete(result), where 'result'
3111         is a string passed back to the web process, and given to the runUIScript()
3112         callback function.
3113         
3114         Thanks to Gyuyoung Kim for help with the Gtk/Efl build.
3115
3116         * WebKitTestRunner/DerivedSources.make: Build UIScriptController.idl.
3117         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: Add runUIScript().
3118         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3119         (WTR::InjectedBundle::didReceiveMessageToPage): When the UI-side script is
3120         complete, call back into TestRunner.
3121         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3122         (WTR::nextUIScriptCallbackID):
3123         (WTR::TestRunner::runUIScript): Post a message to the injected bundle to run the UI script.
3124         (WTR::TestRunner::runUIScriptCallback): When the UI script is done, execute its callback function.
3125         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3126         * WebKitTestRunner/PlatformWebView.h:
3127         * WebKitTestRunner/TestController.cpp:
3128         (WTR::updateTestOptionsFromTestHeader):
3129         (WTR::TestController::testOptionsForTest): Support "useFlexibleViewport" as a test argument.
3130         (WTR::shouldUseFixedLayout): Deleted. Moved to a TestInvocation function.
3131         * WebKitTestRunner/TestInvocation.cpp:
3132         (WTR::TestInvocation::shouldUseFixedLayout):
3133         (WTR::TestInvocation::shouldUseThreadedScrolling):
3134         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
3135         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3136         (WTR::TestInvocation::runUISideScript): Run the UI-side script!
3137         (WTR::TestInvocation::uiScriptDidComplete): Send a message back to the injected bundle.
3138         * WebKitTestRunner/TestInvocation.h:
3139         * WebKitTestRunner/TestOptions.h:
3140         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3141         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3142         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h: Copied from Tools/WebKitTestRunner/TestOptions.h.
3143         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Added.
3144         (-[TestRunnerWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
3145         (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]):
3146         (-[TestRunnerWKWebView scrollViewDidEndZooming:withView:atScale:]):
3147         (-[TestRunnerWKWebView onDidEndZooming:]): Allow a test to hook into the end of zooming.
3148         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3149         (WTR::PlatformWebView::PlatformWebView): Make a TestRunnerWKWebView on iOS.
3150         * WebKitTestRunner/ios/UIScriptControllerIOS.mm: Added.
3151         (WTR::UIScriptController::doAsyncTask):
3152         (WTR::UIScriptController::zoomToScale):
3153         (WTR::UIScriptController::zoomScale):
3154         (WTR::UIScriptController::minimumZoomScale):
3155         (WTR::UIScriptController::maximumZoomScale):
3156         (WTR::UIScriptController::contentVisibleRect):
3157         * WebKitTestRunner/mac/EventSenderProxy.mm:
3158         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3159         (-[TestRunnerWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]): Deleted.
3160         * WebKitTestRunner/mac/TestControllerMac.mm:
3161         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
3162         (WTR::shouldUseThreadedScrolling): Deleted. Moved to TestInvocation.
3163         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.h:
3164         * WebKitTestRunner/uiscriptcontext/UIScriptContext.cpp: Added. Owns the JS context in the UI process.
3165         (UIScriptContext::UIScriptContext):
3166         (UIScriptContext::~UIScriptContext):
3167         (UIScriptContext::runUIScript): Entrypoint to running the UI script. If the script didn't do anything
3168         asynchronous, call the callback.
3169         (UIScriptContext::nextTaskCallbackID):
3170         (UIScriptContext::prepareForAsyncTask): Do setup for one async task (i.e. a UIScriptController function
3171         that has a callback). Has to store the callbackID of the script, so code called from the completion
3172         callback knows which UI script invoked it.
3173         (UIScriptContext::asyncTaskComplete): Called when one task is finished.
3174         (UIScriptContext::uiScriptComplete):
3175         (UIScriptContext::objectFromRect): Make a JS object from a rect.
3176         * WebKitTestRunner/uiscriptcontext/UIScriptContext.h: Copied from Tools/WebKitTestRunner/TestOptions.h.
3177         (WTR::UIScriptContext::hasOutstandingAsyncTasks):
3178         * WebKitTestRunner/uiscriptcontext/UIScriptController.cpp: Copied from Tools/WebKitTestRunner/TestOptions.h.
3179         (WTR::UIScriptController::UIScriptController):
3180         (WTR::UIScriptController::makeWindowObject):
3181         (WTR::UIScriptController::wrapperClass):
3182         (WTR::UIScriptController::doAsyncTask):
3183         (WTR::UIScriptController::zoomToScale):
3184         (WTR::UIScriptController::zoomScale):
3185         (WTR::UIScriptController::minimumZoomScale):
3186         (WTR::UIScriptController::maximumZoomScale):
3187         (WTR::UIScriptController::contentVisibleRect):
3188         (WTR::UIScriptController::uiScriptComplete):
3189         * WebKitTestRunner/uiscriptcontext/UIScriptController.h: Copied from Tools/WebKitTestRunner/TestOptions.h.
3190         (WTR::UIScriptController::create):
3191         * WebKitTestRunner/uiscriptcontext/bindings/UIScriptController.idl: Copied from Tools/WebKitTestRunner/TestOptions.h.
3192
3193 2015-09-21  Tim Horton  <timothy_horton@apple.com>
3194
3195         Turn on threaded scrolling by default in the tests
3196         https://bugs.webkit.org/show_bug.cgi?id=149377
3197
3198         Reviewed by Simon Fraser.
3199
3200         * WebKitTestRunner/mac/TestControllerMac.mm:
3201         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
3202         (WTR::shouldUseThreadedScrolling): Deleted.
3203         Turn on threaded scrolling by default.
3204
3205 2015-09-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3206
3207         [GTK] run-gtk-tests doesn't provide feedback about crashing google tests
3208         https://bugs.webkit.org/show_bug.cgi?id=149252
3209
3210         Reviewed by Darin Adler.
3211
3212         In case of glib tests the test runner notifies about tests
3213         crashing, but for google tests we don't get any feedback, which
3214         means that in case of a test crashing we get a list of **PASS**
3215         messages and at the summary we are notified that the test suite
3216         has failed, but it's impossible to know which test cases have failed.
3217
3218         * Scripts/run-gtk-tests:
3219         (TestRunner._run_google_test): Add a **CRASH** message if test
3220         case crashed.
3221
3222 2015-09-20  Alexey Proskuryakov  <ap@apple.com>
3223
3224         WebKitTestRunner can leak user content script results between tests
3225         https://bugs.webkit.org/show_bug.cgi?id=149391
3226
3227         Reviewed by Sam Weinig.
3228
3229         Move WKBundlePageRemoveAllUserContent call so that it's executed before loading
3230         about:blank, and thus about:blank doesn't have unintended side effects.
3231
3232         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3233         (WTR::InjectedBundle::beginTesting):
3234         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3235         (WTR::InjectedBundlePage::resetAfterTest):
3236
3237 2015-09-20  Alexey Proskuryakov  <ap@apple.com>
3238
3239         [Mac, iOS] AccessibilityController doesn't uninstall global notification handler
3240         https://bugs.webkit.org/show_bug.cgi?id=149384
3241
3242         Reviewed by Chris Fleizach.
3243
3244         * DumpRenderTree/ios/AccessibilityControllerIOS.mm:
3245         (AccessibilityController::addNotificationListener): Fixed a leak, and cleaned up the code.
3246         (AccessibilityController::platformResetToConsistentState): Actually remove the handler,
3247         regardless of whether someone else holds a reference (we also call -stopListening in
3248         -dealloc).
3249
3250         * DumpRenderTree/mac/AccessibilityControllerMac.mm:
3251         (AccessibilityController::platformResetToConsistentState):
3252         (AccessibilityController::addNotificationListener):
3253         Ditto.
3254
3255 2015-09-20  Youenn Fablet  <youenn.fablet@crf.canon.fr>
3256
3257         Remove XHR_TIMEOUT compilation guard
3258         https://bugs.webkit.org/show_bug.cgi?id=149260
3259
3260         Reviewed by Benjamin Poulain.
3261
3262         * Scripts/webkitperl/FeatureList.pm:
3263
3264 2015-09-19  Dan Bernstein  <mitz@apple.com>
3265
3266         Attempted build fix.
3267
3268         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
3269
3270 2015-09-18  Commit Queue  <commit-queue@webkit.org>
3271
3272         Unreviewed, rolling out r189908.
3273         https://bugs.webkit.org/show_bug.cgi?id=149368
3274
3275         Broke run-webkit-tests --pixel (Requested by ap on #webkit).
3276
3277         Reverted changeset:
3278
3279         "printing does not use minimum page zoom factor"
3280         https://bugs.webkit.org/show_bug.cgi?id=108507
3281         http://trac.webkit.org/changeset/189908
3282
3283 2015-09-18  Andy Estes  <aestes@apple.com>
3284
3285         [iOS] did{Start,Finish}LoadForQuickLookDocumentInMainFrame is never called on WKNavigationDelegate
3286         https://bugs.webkit.org/show_bug.cgi?id=149360
3287
3288         Reviewed by Tim Horton.
3289
3290         Added an API test.
3291
3292         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3293         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm: Added.
3294         (-[QuickLookNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
3295         (-[QuickLookNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
3296         (-[QuickLookNavigationDelegate webView:didFinishNavigation:]):
3297         (TEST):
3298         * TestWebKitAPI/ios/pages.pages: Added.
3299
3300 2015-09-18  Nan Wang  <n_wang@apple.com>
3301
3302         AX: Implement ARIA 1.1 @aria-current on iOS
3303         https://bugs.webkit.org/show_bug.cgi?id=149297
3304
3305         Reviewed by Chris Fleizach.
3306
3307         Added support to test aria-current on iOS.
3308
3309         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3310         (AccessibilityUIElement::stringAttributeValue):
3311         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3312         (WTR::AccessibilityUIElement::stringAttributeValue):
3313
3314 2015-09-18  Alexey Proskuryakov  <ap@apple.com>
3315
3316         iOS WebKitTestRunner frequently crashes in WKContextGetIconDatabase
3317         https://bugs.webkit.org/show_bug.cgi?id=149352
3318
3319         Reviewed by Simon Fraser.
3320
3321         * WebKitTestRunner/TestController.cpp: (WTR::TestController::~TestController):
3322         m_context can be null. This may indicate a bug in webkitpy too, but
3323         WebKitTestRunner should handle this situation nicely, there is nothing intrinsically
3324         wrong with opening and immediately closing it.
3325
3326 2015-09-18  Daniel Bates  <dabates@apple.com>
3327
3328         isGitSVNDirectory() returns true when Git is not installed
3329         https://bugs.webkit.org/show_bug.cgi?id=149351
3330
3331         Reviewed by Alexey Proskuryakov.
3332
3333         Fixes an issue where VCSUtils::isGitSVNDirectory() returns true for any arbitrary directory if
3334         Git is not installed on the machine.
3335
3336         * Scripts/VCSUtils.pm:
3337         (isGitSVNDirectory): Ensure that `git config --get svn-remote.svn.fetch 2>& 1` exits with
3338         status code 0 (success).
3339
3340 2015-09-18  Alex Christensen  <achristensen@webkit.org>
3341
3342         Prevent build-webkit from building four times on Windows 
3343         https://bugs.webkit.org/show_bug.cgi?id=149336
3344
3345         Reviewed by Brent Fulgham.
3346
3347         * Scripts/build-webkit:
3348         Move the Windows code out of the for loop iterating over each subdirectory to be build.
3349         They're built all at once.
3350         * Scripts/webkitdirs.pm:
3351         (buildVisualStudioProject):
3352         (cmakeGeneratedBuildfile):
3353         Don't generate the Visual Studio solution if it already exists.
3354         It will run CMake again if necessary.
3355
3356 2015-09-17  Simon Fraser  <simon.fraser@apple.com>
3357
3358         [iOS WK2] WTR fails to set the key window in the UIKit sense
3359         https://bugs.webkit.org/show_bug.cgi?id=149325
3360
3361         Reviewed by Tim Horton.
3362
3363         -[WebKitTestRunnerWindow isKeyWindow] just returned _platformWebView->windowIsKey().
3364         This causes UIKit to bypass code that actually sets the key window, resulting in
3365         [UIAppliation sharedApplication].keyWindow always being nil.
3366
3367         Fix by PlatformWebView::setWindowIsKey() actually call -makeKeyWindow, and having
3368         -[WebKitTestRunnerWindow isKeyWindow] call super.
3369
3370         * WebKitTestRunner/PlatformWebView.h:
3371         (WTR::PlatformWebView::setWindowIsKey): Deleted.
3372         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
3373         (WTR::PlatformWebView::setWindowIsKey):
3374         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
3375         (WTR::PlatformWebView::setWindowIsKey):
3376         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3377         (-[WebKitTestRunnerWindow isKeyWindow]):
3378         (WTR::PlatformWebView::PlatformWebView):
3379         (WTR::PlatformWebView::~PlatformWebView):
3380         (WTR::PlatformWebView::setWindowIsKey):
3381         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3382         (WTR::PlatformWebView::setWindowIsKey):
3383
3384 2015-09-17  Simon Fraser  <simon.fraser@apple.com>
3385
3386         [iOS WK2] When loading viewport tests, use the normal web page viewport configuration
3387         https://bugs.webkit.org/show_bug.cgi?id=149321
3388
3389         Reviewed by Tim Horton.
3390         
3391         InjectedBundlePage::platformDidStartProvisionalLoadForFrame() unconditionally 
3392         enabled the "testing" viewport configuration, which disables page scaling.
3393         
3394         If we're running viewport tests, we want the normal web page configuration.
3395         Do that by passing a flag in the dictionary sent to InjectedBundle::beginTesting(),
3396         based on whether the test is in a "viewport" directory.
3397
3398         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3399         (WTR::InjectedBundle::beginTesting):
3400         * WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
3401         (WTR::InjectedBundlePage::platformDidStartProvisionalLoadForFrame): Deleted.
3402         * WebKitTestRunner/TestInvocation.cpp:
3403         (WTR::TestInvocation::shouldLogFrameLoadDelegates):
3404         (WTR::TestInvocation::shouldLogHistoryClientCallbacks):
3405         (WTR::TestInvocation::shouldMakeViewportFlexible):
3406         (WTR::TestInvocation::invoke):
3407         * WebKitTestRunner/TestInvocation.h:
3408         * WebKitTestRunner/ios/TestControllerIOS.mm:
3409         (WTR::TestController::platformConfigureViewForTest):
3410         (WTR::shouldMakeViewportFlexible): Deleted.
3411
3412 2015-09-17  Simon Fraser  <simon.fraser@apple.com>
3413
3414         Give iOS WebKitTestRunner a launch storyboard
3415         https://bugs.webkit.org/show_bug.cgi?id=149314
3416
3417         Reviewed by Dan Bates.
3418         
3419         Add a launch storyboard to iOS WebKitTestRunner so that Springboard recognizes
3420         that it's been built for specific device configurations, and puts the window
3421         at the top of the screen. This simplifies coordinate conversions in a future patch.
3422
3423         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3424         * WebKitTestRunner/WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist:
3425         * WebKitTestRunner/ios/Launch.storyboard: Added.
3426
3427 2015-09-17  Myles C. Maxfield  <mmaxfield@apple.com>
3428
3429         Update licence in r189890
3430         https://bugs.webkit.org/show_bug.cgi?id=149306
3431
3432         Reviewed by Dean Jackson.
3433
3434         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
3435         * FontWithFeatures/FontWithFeatures/FontCreator.h:
3436         * FontWithFeatures/FontWithFeatures/main.cpp:
3437
3438 2015-09-17  Mark Lam  <mark.lam@apple.com>
3439
3440         Add the ability to skip JIT stress tests in run-javascriptcore-tests.
3441         https://bugs.webkit.org/show_bug.cgi?id=149285
3442
3443         Reviewed by Saam Barati.
3444
3445         Just need to add an option to pass --no-jit to run-jsc-stress-test.
3446
3447         * Scripts/run-javascriptcore-tests:
3448         (runJSCStressTests):
3449
3450 2015-09-17  Alex Christensen  <achristensen@webkit.org>
3451
3452         Switch AppleWin build to use CMake
3453         https://bugs.webkit.org/show_bug.cgi?id=149163
3454
3455         Reviewed by Brent Fulgham.
3456
3457         * Scripts/build-webkit:
3458         * Scripts/run-api-tests:
3459         (runTest):
3460         (listAllTests):
3461         (prepareEnvironmentForRunningTestTool):
3462         (testToolPaths):
3463         (testToolPath): Deleted.
3464         Run the API tests as separate executables on Windows.
3465         It used to be TestWebKitAPI.exe, and it is now TestWTF.exe, TestWebCore.exe, and TestWebKit.exe.
3466         * Scripts/webkitdirs.pm:
3467         (checkRequiredSystemConfig):
3468         (jhbuildWrapperPrefixIfNeeded):
3469         (generateBuildSystemFromCMakeProject):
3470         Fix configuration quirks.
3471
3472 2015-09-17  Dean Johnson  <dean_johnson@apple.com>
3473
3474         Added toggle options for hiding and showing certain platform families on the dashboard.
3475         https://bugs.webkit.org/show_bug.cgi?id=148403
3476
3477         Reviewed by David Kilzer.
3478
3479         This patch removes "hiddenPlatforms" from use in the code and local storage. We also removed
3480         individual hide/show buttons for platforms because we've added toggle options to hide/show entire
3481         families. Examples of these are "mac", "ios", and "linux". "Show All Platforms" was also removed
3482         in lieu of an "all" button in the toggle menu.
3483
3484         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
3485         (parsePlatformFamily): Helper function to parse out a platform family.
3486         (initPlatformsByFamily): Initializes platformsByFamily, which organizes platforms on the
3487         page by platformsByFamily[<family>] = <list of platforms belonging to that family>.
3488         (updateToggleButtons): Updates the status of the toggle buttons.
3489         (updateHiddenPlatforms): Changed to work with the new implementation of hiding/showing platforms.
3490         (documentReady): Added creation of toggle buttons.
3491         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js:
3492         (unhiddenQueues): Updated to search by platform family instead of the individual platform name.
3493         (documentReady): Changed hiddenPlatforms => hiddenPlatformFamilies.
3494         (updateHiddenPlatforms): Deleted. After removing the individual hide button code, 
3495         this did the exact same thing as the updateHiddenPlatforms in Scripts/Main.js so it was removed.
3496         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/QueueView.js:
3497         (QueueView): Updated to use hiddenPlatformFamilies.
3498         (QueueView.prototype._updateHiddenState): Updated to use hiddenPlatformFamilies.
3499         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
3500         (Settings.prototype.toggleHiddenPlatformFamily): Renamed function and some variables.
3501         (Settings.prototype.clearHiddenPlatformFamilies): Now uses hiddenPlatformFamilies for events.
3502         (Settings.prototype.toggleHiddenPlatform): Deleted.
3503         (Settings.prototype.clearHiddenPlatforms): Deleted.
3504         (Settings.prototype.toggleShowPlatformFamily): Deleted.
3505         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
3506         (div.cellButton, div.accessibilityButton, div.platformFamilyToggleButton):
3507         (div.cellButton.unhide, div.accessibilityButton.unhide, div.platformFamilyToggleButton.unhide):
3508         (.settings-visible div.settingsWrapper.hide, .settings-visible div.settingsWrapper):
3509         (table.queue-grid tr.headers th):
3510         (div.settingsWrapper.hide):
3511         (div.settingsWrapper):
3512         (div.familyToggleWrapper):
3513         (div.platformFamilyToggleButton):
3514         (div.platformFamilyShowToggleButton:not(:last-child)):
3515         (div.familyShown):
3516         (div.accessibilityButton):
3517         (div.cellButton, div.accessibilityButton): Added platformFamilyToggleButton class.
3518         (div.cellButton.unhide, div.accessibilityButton.unhide): Added platformFamilyToggleButton class.
3519         (.settings-visible div.accessibilityButton.hide, .settings-visible div.accessibilityButton.unhide): Added
3520         platformFamilyToggleButton and settingsWrapper class.
3521         (.accessibilityButton): Deleted.
3522
3523 2015-09-17  Tim Horton  <timothy_horton@apple.com>
3524
3525         Add a test ensuring that scrolling in the middle of a page can't start a swipe gesture
3526         https://bugs.webkit.org/show_bug.cgi?id=148904
3527
3528         Reviewed by Myles Maxfield.
3529
3530         * WebKitTestRunner/TestController.cpp:
3531         (WTR::parseBooleanTestHeaderValue):
3532         (WTR::updateViewOptionsFromTestHeader):
3533         Check for the key "useThreadedScrolling".
3534         Add some code to check for "true" and "false" for boolean options.
3535
3536         (WTR::TestController::viewOptionsForTest):
3537         Apply the test's overrides last, even after the platform's.
3538
3539 2015-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
3540
3541         printing does not use minimum page zoom factor
3542         https://bugs.webkit.org/show_bug.cgi?id=108507
3543
3544         Reviewed by Darin Adler.
3545
3546         WebKitTestRunner always takes the snapshots from the UI process
3547         (expect for IOS), so in the case of printing, the layout in the
3548         web view is not the expected one. When printing, we need to take
3549         the snapshot in the web process and ensure it's rendered with a
3550         PrintContext.
3551
3552         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3553         (WTR::InjectedBundlePage::dump): When dumping pixels, pass
3554         kWKSnapshotOptionsPrinting option to
3555         WKBundlePageCreateSnapshotWithOptions() when printing. When not
3556         printing, don't even create the snapshot, since it will be ignored
3557         by the UI process that always creates its own from the WebView (expect for IOS platform)
3558         * WebKitTestRunner/TestInvocation.cpp:
3559         (WTR::TestInvocation::dumpResults): Use always the snapshot image
3560         received from the web process if any when comparing pixel
3561         results. Now we only receive a snapshot from the web process in
3562         case of printing, or when platform is IOS. Otherwhise, generate
3563         the snapshot from the WebView as usual.
3564         * WebKitTestRunner/TestInvocation.h: Add SnapshotResultType enum
3565         parameter to dumpPixelsAndCompareWithExpected, since the snapshot
3566         is created by the caller now, but the CG implementation needs to
3567         know if it's a Web or UI process snapshot.
3568         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
3569         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
3570         cairo surface for the given image.
3571         * WebKitTestRunner/cg/TestInvocationCG.cpp:
3572         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
3573         CGContext for the given image.
3574
3575 2015-09-16  Myles C. Maxfield  <mmaxfield@apple.com>
3576
3577         Create a font which can be used for testing font features
3578         https://bugs.webkit.org/show_bug.cgi?id=149237
3579
3580         Reviewed by Simon Fraser.
3581
3582         This patch adds a new project in the Tools/ directory which generates a font which can
3583         be used for testing font features. This is a standalone project consisting of two files:
3584         1. A file which actually generates the byte vector representing the font. This file has
3585         a single public function: std::vector<uint8_t> generateFont(). This file is not platform
3586         specific, and only relies on the C++ STL.
3587         2. A file with a main() which calls generateFont() and writes out the font, as well as
3588         uses the font to render some demonstration text into a .png file. This file is platform
3589         specific.
3590
3591         The font itself only supports the following characters:
3592         ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
3593         However, the shape of these letters are either an X or a check mark.
3594
3595         The letter "A" always is a check mark.
3596         The letter "B" always is an X.
3597         Without any font features turned on, the rest of the letters are shown as X.
3598
3599         Each font feature has an letter associated with it. When the font feature is enabled,
3600         that letter is shown as a check mark. For example, when "smcp" is enabled, "J" is shown
3601         as a check mark.
3602
3603         Here are the mappings of font features to letters:
3604 &nb