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