[Qt] [WK2] Support customizing popup menus with QML
[WebKit-https.git] / Tools / ChangeLog
1 2011-12-12  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2
3         [Qt] [WK2] Support customizing popup menus with QML
4         https://bugs.webkit.org/show_bug.cgi?id=73560
5
6         Reviewed by Tor Arne Vestbø.
7
8         Add an Item Selector to our WebView using the experimental API.
9
10         * MiniBrowser/qt/MiniBrowser.pro:
11         * MiniBrowser/qt/MiniBrowser.qrc:
12         * MiniBrowser/qt/qml/BrowserWindow.qml:
13         * MiniBrowser/qt/qml/ItemSelector.qml: Added.
14
15 2011-12-12  Alexander Færøy  <alexander.faeroy@nokia.com>
16
17         [Qt] MiniBrowser should only visualize mock touch points when in non-desktop mode
18         https://bugs.webkit.org/show_bug.cgi?id=74283
19
20         Reviewed by Simon Hausmann.
21
22         * MiniBrowser/qt/MiniBrowserApplication.cpp:
23         (MiniBrowserApplication::sendTouchEvent):
24
25 2011-12-12  Kentaro Hara  <haraken@chromium.org>
26
27         [Refactoring] In prepare-ChangeLog, move into a method the top-level code
28         to show ChangeLogs diff and open ChangeLogs in an editor
29         https://bugs.webkit.org/show_bug.cgi?id=74266
30
31         Reviewed by Ryosuke Niwa.
32
33         We are planning to write unit-tests for prepare-ChangeLog
34         in a run-leaks_unittest manner. This patch is one of the incremental
35         refactorings to remove all top-level code and global variables from
36         prepare-ChangeLog.
37
38         * Scripts/prepare-ChangeLog: Moved the top-level code to show ChangeLogs diff into printDiff().
39         Moved the top-level code to open ChangeLogs in an editor into openChangeLogs().
40         Renamed @changed_files to @changedFiles.
41         Renamed %conflict_files to %conflictFiles.
42         (generateFunctionLists):
43         (printDiff):
44         (openChangeLogs):
45
46 2011-12-11  Kentaro Hara  <haraken@chromium.org>
47
48         [Refactoring] Move top-level code to resolve conflicted ChangeLogs into a method
49         https://bugs.webkit.org/show_bug.cgi?id=74257
50
51         Reviewed by Ryosuke Niwa.
52
53         We are planning to write unit-tests for prepare-ChangeLog
54         in a run-leaks_unittest/ manner. This patch is one of the incremental
55         refactorings to remove all top-level code and global variables from
56         prepare-ChangeLog.
57
58         * Scripts/prepare-ChangeLog: Moved top-level code to get the latest ChangeLogs
59         into getLatestChangeLogs(), and moved top-level code to resolve conflicted ChangeLogs
60         into resolveConflictedChangeLogs().
61         (getLatestChangeLogs):
62         (resolveConflictedChangeLogs):
63
64 2011-12-11  Kentaro Hara  <haraken@chromium.org>
65
66         [Refactoring] Move top-level code to generate a new ChangeLog into a method
67         https://bugs.webkit.org/show_bug.cgi?id=74253
68
69         Reviewed by David Kilzer.
70
71         The objective is to make prepare-ChangeLog a loadable Perl module for unit testing,
72         which requires to remove top-level code and global variables. This patch is one of
73         the incremental refactorings for that.
74
75         * Scripts/prepare-ChangeLog: Moved top-level code to generate a new ChangeLog into generateNewChangeLogs().
76         (generateFunctionLists):
77         (findChangeLogs):
78         (generateNewChangeLogs):
79         (generateFileList): Removed an unnecessary variable $didChangeRegressionTests.
80
81 2011-12-10  Kentaro Hara  <haraken@chromium.org>
82
83         [Refactoring] In prepare-ChangeLog, move top-level code to find ChangeLogs into a method
84         https://bugs.webkit.org/show_bug.cgi?id=74175
85
86         Reviewed by Ryosuke Niwa.
87
88         The objective is to make prepare-ChangeLog a loadable Perl module for unit testing.
89         This requires to remove top-level code. This patch is one of the incremental refactorings
90         for that.
91
92         * Scripts/prepare-ChangeLog: Moved top-level code to find ChangeLogs into findChangeLogs().
93         (findChangeLogs):
94
95 2011-12-10  Andreas Kling  <kling@webkit.org>
96
97         Add my Apple e-mail to committers.py.
98
99         * Scripts/webkitpy/common/config/committers.py:
100
101 2011-12-09  Dirk Pranke  <dpranke@chromium.org>
102
103         chromium win build: revert build_webkit_exes_from_webkit_gyp change
104         https://bugs.webkit.org/show_bug.cgi?id=74225
105
106         This change sets build_webkit_exes_from_webkit_gyp back to 1;
107         the "All.gyp" solution doesn't work on windows.
108
109         * Scripts/webkitdirs.pm:
110         (buildChromium):
111
112 2011-12-09  Hugo Parente Lima  <hugo.lima@openbossa.org>
113
114         [Qt] Click's count is limited to three continuous clicks.
115         https://bugs.webkit.org/show_bug.cgi?id=45666
116
117         Reviewed by Kenneth Rohde Christiansen.
118
119         Update m_time at every call to leapForward, so double clicks
120         event are correctly sent by EventSender.
121
122         * WebKitTestRunner/qt/EventSenderProxyQt.cpp:
123         (WTR::EventSenderProxy::updateClickCountForButton):
124         (WTR::EventSenderProxy::leapForward):
125
126 2011-12-09  Kentaro Hara  <haraken@chromium.org>
127
128         [Refactoring] Reduce top-level code in prepare-ChangeLog
129         https://bugs.webkit.org/show_bug.cgi?id=74172
130
131         Reviewed by Ryosuke Niwa.
132
133         The objective is to make prepare-ChangeLog a loadable Perl module for unit testing.
134         This requires to remove top-level code. This patch is one of the incremental refactorings
135         for that.
136
137         * Scripts/prepare-ChangeLog: Moved some top-level code into generateFunctionLists().
138         (generateFunctionLists):
139
140 2011-12-09  Sam Weinig  <sam@webkit.org>
141
142         Expose a WKConnectionRef which represents the connection to/from the WebProcess/UIProcess
143         https://bugs.webkit.org/show_bug.cgi?id=74218
144
145         Reviewed by Anders Carlsson.
146
147         Add a test of the WKConnectionRef API.
148
149         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
150         * TestWebKitAPI/Tests/WebKit2/WKConnection.cpp: Added.
151         (TestWebKitAPI::didCreateConnection):
152         (TestWebKitAPI::connectionDidReceiveMessage):
153         (TestWebKitAPI::connectionDidClose):
154         (TestWebKitAPI::TEST):
155         * TestWebKitAPI/Tests/WebKit2/WKConnection_Bundle.cpp: Added.
156         (TestWebKitAPI::connectionDidReceiveMessage):
157         (TestWebKitAPI::WKConnectionTest::WKConnectionTest):
158         (TestWebKitAPI::WKConnectionTest::initialize):
159
160 2011-12-09  David Levin  <levin@chromium.org>
161
162         Hash* iterators should allow comparison between const and const versions.
163         https://bugs.webkit.org/show_bug.cgi?id=73370
164
165         Reviewed by Darin Adler.
166
167         * TestWebKitAPI/TestWebKitAPI.gypi: Add the new test file to the build.
168         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
169         * TestWebKitAPI/win/TestWebKitAPI.vcproj: Ditto.
170         * TestWebKitAPI/Tests/WTF/HashMap.cpp: Added.
171         (TestWebKitAPI::TEST): Add a test for the new functionality.
172
173 2011-12-09  Dirk Pranke  <dpranke@chromium.org>
174
175         chromium: visual studio projects are busted when build_webkit_exes_from_webkit_gyp==0
176         https://bugs.webkit.org/show_bug.cgi?id=74212
177
178         Reviewed by Tony Chang.
179
180         The change introduced in r102201 to split the executables out of
181         WebKit.gyp apparently doesn't work right on Windows, since
182         WebKit.gyp and Tools.gyp refer to dependent projects by
183         different relative paths (it appears gyp doesn't normalize the
184         paths). This change moves Tools.gyp to be in the same directory
185         as WebKit.gyp (and All.gyp), which should fix this and
186         conveniently will also solve the problem of how to add Tools.gyp
187         to the chromium DEPS file.
188
189         * Tools.gyp: Renamed to ../Source/WebKit/chromium/Tools.gyp
190
191 2011-12-09  Kentaro Hara  <haraken@chromium.org>
192
193         [Refactoring] In prepare-ChangeLog, move top-level code to fetch a bug description from URL into a method
194         https://bugs.webkit.org/show_bug.cgi?id=74173
195
196         Reviewed by Ryosuke Niwa.
197
198         The objective is to make prepare-ChangeLog a loadable Perl module for unit testing.
199         This requires to remove top-level code. This patch is one of the incremental refactorings
200         for that.
201
202         * Scripts/prepare-ChangeLog: Moved top-level code to fetch a bug description from URL into fetchBugDescriptionFromURL().
203         (fetchBugDescriptionFromURL):
204
205 2011-12-09  Tony Chang  <tony@chromium.org>
206
207         Switch the chromium mac bots to using skia test results
208         https://bugs.webkit.org/show_bug.cgi?id=74201
209
210         Reviewed by Ryosuke Niwa.
211
212         This is reverting http://trac.webkit.org/changeset/97781 and changing
213         the name in master.cfg to no longer have cg in the name.
214
215         * BuildSlaveSupport/build.webkit.org-config/config.json:
216         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
217         (appendCustomBuildFlags):
218         (RunWebKitTests.start):
219
220 2011-12-09  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
221
222         [Qt] Remove a wrongly placed ASSERT.
223
224         Reviewed by Tor Arne Vestbø.
225
226         * MiniBrowser/qt/MiniBrowserApplication.cpp:
227         (MiniBrowserApplication::notify):
228
229 2011-12-09  Cary Clark  <caryclark@google.com>
230
231         layout_test update to accommodate new use_skia=1 default on Chromium-Mac
232         https://bugs.webkit.org/show_bug.cgi?id=74118
233
234         Reviewed by Adam Barth.
235
236         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
237         (get):
238         * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
239         (ChromiumMacPort.__init__):
240         * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
241         (ChromiumMacPortTest.test_versions):
242         (ChromiumMacPortTest.test_graphics_type):
243
244 2011-12-09  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
245
246         [Qt] Use new qmake option in Qt5 to prevent dependency issues with GNUmake
247
248         The GNUmake + gcc_MD_depends options together produce .d files using GCC, but
249         this failed when moving files in the source tree, as the .d file would contain
250         stale dependencies on the old source file location. By keeping the object files
251         (and hence the depdendency files) in a proper tree structure inside the objects
252         directory we can prevent this failure.
253
254         A side benefit is that we can also have objects with the same name inside the
255         same project.
256
257         Reviewed by Simon Hausmann.
258
259         * qmake/mkspecs/features/unix/default_pre.prf:
260
261 2011-12-09  Csaba Osztrogonác  <ossy@webkit.org>
262
263         Unreviewed. Update unit test after r102412.
264
265         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
266         (IRCCommandTest.test_whois):
267
268 2011-12-09  Kentaro Hara  <haraken@chromium.org>
269
270         REGRESSION(r102105): run-bindings-tests should output full diff results
271         https://bugs.webkit.org/show_bug.cgi?id=74166
272
273         Reviewed by Adam Barth.
274
275         Since r102105, the output of run-bindings-tests is truncated to 500 characters.
276         run-bindings-tests should output full diff results.
277
278         * Scripts/webkitpy/bindings/main.py: Replaced e.message_with_output() with e.output.
279         (BindingsTests.generate_from_idl):
280         (BindingsTests.generate_supplemental_dependency):
281         (BindingsTests.detect_changes):
282
283 2011-12-09  Simon Hausmann  <simon.hausmann@nokia.com>
284
285         [Qt] Fix compilation with newly separated Qt 5 QtQuick module
286         https://bugs.webkit.org/show_bug.cgi?id=73990
287
288         Reviewed by Kenneth Rohde Christiansen, tweaked by Csaba Osztrogonác.
289
290         Fix QtQuick includes after move from QtDeclarative to QtQuick.
291
292         * MiniBrowser/qt/BrowserWindow.h:
293         * WebKitTestRunner/qt/PlatformWebViewQt.cpp:
294
295 2011-12-08  Adam Klein  <adamk@chromium.org>
296
297         [MutationObservers] V8LazyEventHandler breaks microtask delivery semantics
298         https://bugs.webkit.org/show_bug.cgi?id=73492
299
300         Reviewed by Adam Barth.
301
302         Add eventSender.scheduleAsynchronousKeyDown, needed to cause a
303         keypress event without any script on the stack.
304
305         * DumpRenderTree/chromium/EventSender.cpp:
306         (EventSender::EventSender):
307         (EventSender::keyDown):
308         (KeyDownTask::KeyDownTask):
309         (KeyDownTask::runIfValid):
310         (EventSender::scheduleAsynchronousKeyDown):
311         * DumpRenderTree/chromium/EventSender.h:
312
313 2011-12-08  Hayato Ito  <hayato@chromium.org>
314
315         [gdb] Pretty printer for a 8-bit version of WTF::StringImpl and LChar*.
316         https://bugs.webkit.org/show_bug.cgi?id=73980
317
318         Reviewed by Tony Chang.
319
320         * gdb/webkit.py:
321         (guess_string_length):
322         (ustring_to_string):
323         (lstring_to_string):
324         (LCharStringPrinter):
325         (LCharStringPrinter.to_string):
326         (WTFStringImplPrinter.get_length):
327         (WTFStringImplPrinter.to_string):
328         (WTFStringImplPrinter.is_8bit):
329         (WTFStringPrinter.stringimpl_ptr):
330         (WTFStringPrinter.get_length):
331         (WTFStringPrinter.to_string):
332         (add_pretty_printers.lookup_function):
333
334 2011-12-08  Pierre Rossi  <pierre.rossi@gmail.com>
335
336         Drop ENABLE_NO_LISTBOX_RENDERING, and make it a runtime decision.
337         https://bugs.webkit.org/show_bug.cgi?id=73916
338
339         Reviewed by Kent Tamura.
340
341         * qmake/mkspecs/features/features.prf:
342
343 2011-12-08  Adrienne Walker  <enne@google.com>
344
345         Unreviewed contributor additions to committers.py.
346
347         * Scripts/webkitpy/common/config/committers.py:
348
349 2011-12-08  David Reveman  <reveman@chromium.org>
350
351         [Chromium] Add per-tile painting flag to DumpRenderTree and rename AcceleratedDrawing to AcceleratedPainting in chromium specific code.
352         https://bugs.webkit.org/show_bug.cgi?id=74017
353
354         Reviewed by James Robinson.
355         
356         Add support for command line flag enable-per-tile-painting in DumpRenderTree.
357
358         * DumpRenderTree/chromium/DumpRenderTree.cpp:
359         (main):
360         * DumpRenderTree/chromium/TestShell.cpp:
361         (TestShell::TestShell):
362         (TestShell::resetWebSettings):
363         * DumpRenderTree/chromium/TestShell.h:
364         (TestShell::setAcceleratedPaintingEnabled):
365         (TestShell::setPerTilePaintingEnabled):
366         * DumpRenderTree/chromium/WebPreferences.cpp:
367         (WebPreferences::reset):
368         (WebPreferences::applyTo):
369         * DumpRenderTree/chromium/WebPreferences.h:
370         * Scripts/webkitpy/layout_tests/port/chromium.py:
371         (ChromiumDriver._wrapper_options):
372         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
373         (parse_args):
374
375 2011-12-08  Dirk Pranke  <dpranke@chromium.org>
376
377         create a "SystemHost" object for webkitpy to slim down the Host object
378         https://bugs.webkit.org/show_bug.cgi?id=72680
379
380         Reviewed by Eric Siedel.
381
382         This creates a SystemHost object that other objects that should
383         only have dependencies on functionality in webkitpy.common.system
384         can use; this will allow them to not require a full Host.
385
386         * Scripts/webkitpy/common/host.py:
387         * Scripts/webkitpy/common/host_mock.py:
388         * Scripts/webkitpy/common/system/systemhost.py: Added.
389         * Scripts/webkitpy/common/system/systemhost_mock.py: Added.
390
391 2011-12-08  Chris Fleizach  <cfleizach@apple.com>
392
393         AX: platform/mac/accessibility/search-with-frames.html crashes
394         https://bugs.webkit.org/show_bug.cgi?id=74093
395
396         Reviewed by Darin Adler.
397
398         Take care of the case when an incoming element is null.
399
400         * DumpRenderTree/AccessibilityUIElement.cpp:
401         (uiElementForSearchPredicateCallback):
402         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
403         (AccessibilityUIElement::uiElementForSearchPredicate):
404         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
405         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
406
407 2011-12-08  Alexander Færøy  <ahf@0x90.dk>
408
409         [Qt] Visualize mock point ID's in the MiniBrowser
410         https://bugs.webkit.org/show_bug.cgi?id=74098
411
412         Reviewed by Tor Arne Vestbø.
413
414         * MiniBrowser/qt/BrowserWindow.cpp:
415         (BrowserWindow::updateVisualMockTouchPoints):
416         * MiniBrowser/qt/qml/MockTouchPoint.qml:
417
418 2011-12-08  Dominic Mazzoni  <dmazzoni@google.com>
419
420         Accessibility: AccessibilityController should support listening to notifications on all elements.
421         https://bugs.webkit.org/show_bug.cgi?id=72866
422
423         Adds addNotificationListener and removeNotificationListener methods
424         to AccessibilityController, to listen to notifications on any element
425         rather than a specific element. Mac (DRT and WKTR) and Chromium (DRT)
426         implementations are all contained in this change.
427
428         On Mac, refactors AccessibilityNotificationHandler into its own
429         source file that can be used by both AccessibilityController and
430         AccessibilityUIElement. (Both DRT and WKTR.)
431
432         Reviewed by Chris Fleizach.
433
434         * DumpRenderTree/AccessibilityController.cpp:
435         (addNotificationListenerCallback):
436         (removeNotificationListenerCallback):
437         (AccessibilityController::getJSClass):
438         * DumpRenderTree/AccessibilityController.h:
439         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
440         * DumpRenderTree/chromium/AccessibilityController.cpp:
441         (AccessibilityController::AccessibilityController):
442         (AccessibilityController::notificationReceived):
443         (AccessibilityController::addNotificationListenerCallback):
444         (AccessibilityController::removeNotificationListenerCallback):
445         * DumpRenderTree/chromium/AccessibilityController.h:
446         * DumpRenderTree/gtk/AccessibilityControllerGtk.cpp:
447         (AccessibilityController::addNotificationListener):
448         (AccessibilityController::removeNotificationListener):
449         * DumpRenderTree/mac/AccessibilityControllerMac.mm:
450         (AccessibilityController::~AccessibilityController):
451         (AccessibilityController::addNotificationListener):
452         (AccessibilityController::removeNotificationListener):
453         * DumpRenderTree/mac/AccessibilityNotificationHandler.h: Added.
454         * DumpRenderTree/mac/AccessibilityNotificationHandler.mm: Added.
455         (-[NSString createJSStringRef]):
456         (-[AccessibilityNotificationHandler init]):
457         (-[AccessibilityNotificationHandler setPlatformElement:]):
458         (-[AccessibilityNotificationHandler dealloc]):
459         (-[AccessibilityNotificationHandler setCallback:]):
460         (-[AccessibilityNotificationHandler startObserving]):
461         (-[AccessibilityNotificationHandler _notificationReceived:]):
462         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
463         (AccessibilityUIElement::addNotificationListener):
464         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
465         (notificationListenerProc):
466         (AccessibilityController::addNotificationListener):
467         (AccessibilityController::removeNotificationListener):
468         (AccessibilityController::winNotificationReceived):
469         (AccessibilityController::winAddNotificationListener):
470         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
471         (AccessibilityUIElement::addNotificationListener):
472         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
473         (WTR::AccessibilityController::addNotificationListener):
474         (WTR::AccessibilityController::removeNotificationListener):
475         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
476         (WTR::AccessibilityController::logAccessibilityEvents):
477         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp:
478         (WTR::AccessibilityTextMarker::AccessibilityTextMarker):
479         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp:
480         (WTR::AccessibilityTextMarkerRange::AccessibilityTextMarkerRange):
481         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityController.idl:
482         * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm: Added.
483         (WTR::AccessibilityController::addNotificationListener):
484         (WTR::AccessibilityController::removeNotificationListener):
485         * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.h: Added.
486         * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm: Added.
487         (-[NSString createJSStringRef]):
488         (-[AccessibilityNotificationHandler init]):
489         (-[AccessibilityNotificationHandler setPlatformElement:]):
490         (-[AccessibilityNotificationHandler dealloc]):
491         (-[AccessibilityNotificationHandler setCallback:]):
492         (-[AccessibilityNotificationHandler startObserving]):
493         (-[AccessibilityNotificationHandler _notificationReceived:]):
494         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
495         (WTR::AccessibilityUIElement::AccessibilityUIElement):
496         (WTR::AccessibilityUIElement::verticalScrollbar):
497         (WTR::AccessibilityUIElement::addNotificationListener):
498         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
499
500 2011-12-08  Csaba Osztrogonác  <ossy@webkit.org>
501
502         [Qt][WK2] Unreviewed buildfix after r102352.
503
504         * qmake/mkspecs/features/webkit2.prf:
505
506 2011-12-08  Adam Roben  <aroben@apple.com>
507
508         Make finding crash logs by PID work on Snow Leopard
509
510         Crash Reporter on Snow Leopard doesn't set the "app_description" extended attribute that we
511         were using to check the PID of the crashed process. (Crash Reporter on Lion does.) Now we
512         read the first line of the crash log and pull the PID out of there.
513
514         Fixes <http://webkit.org/b/74094> "webkit-patch crash-log <process> <PID>" doesn't work on
515         Snow Leopard
516
517         Reviewed by Darin Adler.
518
519         * Scripts/webkitpy/common/system/crashlogs.py:
520         (CrashLogs._find_newest_log_darwin): Read the first line of the crash log to get the process
521         name and PID for the log, rather than checking the Lion-only app_description extended
522         attribute. We now also reject the log if the process name doesn't match what we expect.
523
524         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
525         (make_mock_crash_report_darwin): Added. Returns a mock crash report given a process name and
526         PID.
527         (CrashLogsTest.assertLinesEqual): Added. This is a compatibility shim around
528         unittest.TestCase.assertMultiLineEqual, which didn't exist before Python 2.7.
529         (CrashLogsTest.test_find_log_darwin): Made the mock crash reports more believable by using
530         the new make_mock_crash_report_darwin function. Also added tests for files that can't be
531         read, files that actually contain a crash log for some other process, and files that are
532         misformatted.
533
534         * Scripts/webkitpy/common/system/filesystem.py: Removed FileSystem.getxattr, which is now
535         unused.
536
537         * Scripts/webkitpy/common/system/filesystem_mock.py:
538         (MockFileSystem.__init__): Removed xattr support, which is now unused.
539         (MockFileSystem.open_text_file_for_reading): Changed to actually pass the file's data to
540         ReadableTextFileObject. This function was completely broken before!
541         (ReadableBinaryFileObject.__init__): Made the data parameter non-optional to try to prevent
542         bugs like the above.
543         (ReadableTextFileObject.__init__): Added. Wraps the data in a StringIO object so we can do
544         things like readline() and seek().
545
546         (ReadableTextFileObject.close):
547         (ReadableTextFileObject.read):
548         Added. We override the superclass implementation to account for using a StringIO object.
549
550         (ReadableTextFileObject.readline):
551         (ReadableTextFileObject.seek):
552         Added. These just call through to StringIO.
553
554         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
555         (MainTest.test_crash_log):
556         (MainTest.test_web_process_crash_log):
557         Changed to use make_mock_crash_report_darwin.
558
559 2011-12-06  Jon Lee  <jonlee@apple.com>
560
561         [WK2] Add permissions support (73960)
562         https://bugs.webkit.org/show_bug.cgi?id=73960
563         <rdar://problem/10357008>
564
565         Reviewed by Darin Adler.
566
567         Add null function item to comply with added callback to WKPageUIClient.
568
569         * MiniBrowser/mac/BrowserWindowController.m:
570         (-[BrowserWindowController awakeFromNib]):
571         * WebKitTestRunner/TestController.cpp:
572         (WTR::TestController::createOtherPage):
573         (WTR::TestController::initialize):
574
575 2011-12-08  Alexander Færøy  <alexander.faeroy@nokia.com>
576
577         [Qt] Visualize mock points in the Qt MiniBrowser
578         https://bugs.webkit.org/show_bug.cgi?id=74074
579
580         Reviewed by Tor Arne Vestbø.
581
582         * MiniBrowser/qt/BrowserWindow.cpp:
583         (BrowserWindow::updateVisualMockTouchPoints):
584         * MiniBrowser/qt/BrowserWindow.h:
585         * MiniBrowser/qt/MiniBrowser.qrc:
586         * MiniBrowser/qt/MiniBrowserApplication.cpp:
587         (MiniBrowserApplication::notify):
588         (MiniBrowserApplication::sendTouchEvent):
589         * MiniBrowser/qt/MiniBrowserApplication.h:
590         * MiniBrowser/qt/icons/touchpoint.png: Added.
591         * MiniBrowser/qt/qml/MockTouchPoint.qml: Added.
592
593 2011-12-08  Simon Hausmann  <simon.hausmann@nokia.com>
594
595         [Qt] WebKitTestRunner crashes with debug builds
596         https://bugs.webkit.org/show_bug.cgi?id=74090
597
598         Reviewed by Tor Arne Vestbø.
599
600         * WebKitTestRunner/qt/TestControllerQt.cpp:
601         (WTR::TestController::platformInitialize): Call QQuickWebView::platformInitialize
602         to ensure WTF/JSC threading is initialized.
603
604 2011-12-08  Dirk Pranke  <dpranke@chromium.org>
605
606         fix build-webkit --chromium after breakage in r102201
607         https://bugs.webkit.org/show_bug.cgi?id=74031
608
609         Reviewed by Tony Chang.
610
611         * Scripts/webkitdirs.pm:
612         (buildChromium):
613
614 2011-12-08  Kentaro Hara  <haraken@chromium.org>
615
616         Unreviewed, rolling out r102280.
617         http://trac.webkit.org/changeset/102280
618         https://bugs.webkit.org/show_bug.cgi?id=74031
619
620         Chromium/Windows build is broken
621
622         * Scripts/webkitdirs.pm:
623         (buildChromium):
624
625 2011-12-08  Nayan Kumar K  <nayankk@motorola.com>
626
627         Adding myself to committers list.
628
629         Unreviewed.
630
631         * Scripts/webkitpy/common/config/committers.py:
632
633 2011-12-07  Michael Saboff  <msaboff@apple.com>
634
635         StringBuilderTest.Append and StringBuilderTest.ToStringPreserveCapacity are failing.
636         https://bugs.webkit.org/show_bug.cgi?id=73995
637
638         Reenabled failing tests that the code part of the patch fixes.
639
640         Reviewed by Geoffrey Garen.
641
642         * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
643         (TestWebKitAPI::TEST):
644
645 2011-12-07  MORITA Hajime  <morrita@google.com>
646
647         [filter-build-webkit] should not emit reset color when --no-color is given
648         https://bugs.webkit.org/show_bug.cgi?id=73992
649
650         Reviewed by Daniel Bates.
651
652         Stop printing control sequences when --no-color is given.
653         After this change, the filter runs nicely even on environments
654         like Emacs compilation-mode which cannot understand the control sequence.
655
656         * Scripts/filter-build-webkit:
657         (printLine):
658
659 2011-12-07  Eric Seidel  <eric@webkit.org>
660
661         Use free memory to determine if we have space for DRT instances instead of total memory
662         https://bugs.webkit.org/show_bug.cgi?id=74021
663
664         Reviewed by Adam Barth.
665
666         This will hopefully make the Mac buildbots behave better.
667
668         I also reduced the expected memory needed per DRT now that
669         we're properly accounting for the system memory in our calculations.
670
671         * Scripts/webkitpy/common/system/platforminfo.py:
672         (PlatformInfo.total_bytes_memory):
673         (PlatformInfo._compute_free_bytes_from_vm_stat_output):
674         * Scripts/webkitpy/common/system/platforminfo_mock.py:
675         (MockPlatformInfo.total_bytes_memory):
676         * Scripts/webkitpy/layout_tests/port/base.py:
677         (Port.default_child_processes):
678         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
679         (PortTest.test_default_child_processes):
680
681 2011-12-07  Dirk Pranke  <dpranke@chromium.org>
682
683         fix build-webkit --chromium after breakage in r102201
684         https://bugs.webkit.org/show_bug.cgi?id=74031
685
686         Reviewed by Tony Chang.
687
688         r102201 introduced a change to the chromium build that splits
689         the executables out of WebKit.gyp into other gyp files, and adds
690         a new "All.gyp" that builds everything. However, I forgot to
691         update the build script to use All.gyp.
692
693         * Scripts/webkitdirs.pm:
694         (buildChromium):
695
696 2011-12-07  Tom Zakrajsek  <tomz@codeaurora.org>
697
698         Moved myself to the committers list.
699
700         * Scripts/webkitpy/common/config/committers.py:
701
702 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
703
704         [Qt] Fix debug shlib build with V8.
705
706         Reviewed by Tor Arne Vestbø.
707
708         * qmake/mkspecs/features/qtwebkit.prf: Don't link jscore with
709         v8 builds.
710
711 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
712
713         [Qt] V8 build fixes.
714
715         Reviewed by Tor Arne Vestbø.
716
717         * qmake/mkspecs/features/javascriptcore.prf: Don't add
718         Source/Thirdparty to the include search path here.
719         * qmake/mkspecs/features/webcore.prf: Instead it belongs here, because it's
720         used when building WebCore as well as using it, because header files like
721         GraphicsContext3D.h include stuff from ThirdParty.
722
723 2011-12-07  Peter Beverloo  <peter@chromium.org>
724
725         [Chromium] Fix project file generation for the Android bot after r102201
726         https://bugs.webkit.org/show_bug.cgi?id=73996
727
728         The gyp refactoring in r102201 was didn't explicitly exclude
729         the Android operating system in Tools/Tools.gyp, which broke
730         as gcc_version is not defined for that configuration.
731
732         Reviewed by Andreas Kling.
733
734         * Tools.gyp:
735
736 2011-12-07  Vsevolod Vlasov  <vsevik@chromium.org>
737
738         Unreviewed. Disabled failing tests on chromium.
739
740         * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
741         (TestWebKitAPI::TEST):
742
743 2011-12-06  Dirk Pranke  <dpranke@chromium.org>
744
745         binaries in webkit.gyp should be split into a new file to break circular dependencies on webkit_support
746         https://bugs.webkit.org/show_bug.cgi?id=73382
747
748         Reviewed by Tony Chang.
749
750         XCode (and hence GYP) can't handle circular dependencies between
751         files (and projects). Accordingly, although the binaries in
752         WebKit.gyp depend on webkit_support and webkit_support depends
753         on webkit, we don't mention the latter dependency in the file.
754         To fix this, this change moves the binaries like DRT into a new
755         GYP file, and modifies gyp_webkit to build from that file
756         instead of WebKit.gyp.
757
758         * Tools.gyp: Added.
759
760 2011-12-06  Adam Roben  <aroben@apple.com>
761
762         Add a pid parameter to CrashLogs.find_newest_log
763
764         When a PID is passed, only crash logs corresponding to a crashed process with that PID are
765         considered.
766
767         Fixes <http://webkit.org/b/73942> webkitpy provides no way to specify the PID of the crashed
768         process whose crash log you want to find
769
770         Reviewed by Dirk Pranke.
771
772         * Scripts/webkitpy/common/system/crashlogs.py:
773         (CrashLogs.find_newest_log): Added an optional pid parameter.
774         (CrashLogs._find_newest_log_darwin): Added a pid parameter. When specified, we look at each
775         candidate log's app_description extended attribute to see if that log corresponds to a
776         crashed process with the specified PID.
777
778         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
779         (CrashLogsTest.test_find_newest_log_darwin): Added a few more mock crash logs with various
780         contents and PIDs. Added tests that show that the pid parameter to find_newest_log is
781         respected. Also fixed an erroneous use of assertTrue instead of assertEqual.
782
783         * Scripts/webkitpy/common/system/filesystem.py:
784         (FileSystem.getxattr): Added. On Darwin, calls through to the xattr module. On other
785         systems, raises a KeyError, mimicking the behavior on Darwin when the given attribute isn't
786         present.
787
788         * Scripts/webkitpy/common/system/filesystem_mock.py:
789         (MockFileSystem.__init__): Added an optional xattrs parameter. Documented other parameters.
790         (MockFileSystem.getxattr): Added. Just pulls the given attribute out of the xattrs
791         dictionary.
792
793         * Scripts/webkitpy/tool/commands/queries.py:
794         (CrashLog): Added help text. Added an optional PID parameter.
795         (CrashLog.execute): Pass the PID, if any, through to find_newest_log.
796
797 2011-12-06  Adam Roben  <aroben@apple.com>
798
799         Wait for Crash Reporter to finish even when it lets the crashed process die quickly
800
801         NRWT was only waiting for Crash Reporter in cases where it was keeping the crashed process
802         alive beyond the normal timeout limit. In cases where the crashed process was able to die
803         faster, NRWT would assume that Crash Reporter had finished even though it often was still
804         running, which would lead to an incorrect crash log being picked up.
805
806         Part of <http://webkit.org/b/71380> NRWT incorrectly associates crash logs with tests
807
808         Reviewed by Dirk Pranke.
809
810         * Scripts/webkitpy/layout_tests/port/server_process.py:
811         (ServerProcess._reset):
812         (ServerProcess.write):
813         (ServerProcess._check_for_crash): Changed to use new set_crashed function instead of setting
814         .crashed directly. Added wait_for_crash_reporter parameter, which we pass along to
815         set_crashed.
816
817         (ServerProcess._handle_timeout): Fixed a logic error that would cause .crashed and
818         .timed_out both to be set to True in cases where Crash Reporter took a long time to run. Now
819         we bail out of handling the failure as a timeout if we find out that the process in fact
820         crashed. We tell _check_for_crash not to wait for Crash Reporter because we've already done
821         so.
822         (ServerProcess.set_crashed): Added. When the process crashes, we wait for Crash Reporter to
823         finish running (unless directed otherwise) so we can be sure the crash log has been saved to
824         disk.
825
826         * Scripts/webkitpy/layout_tests/port/server_process_unittest.py:
827         (TrivialMockPort.is_crash_reporter): Added.
828
829         * Scripts/webkitpy/layout_tests/port/webkit.py:
830         (WebKitDriver._check_for_driver_crash): Changed to use set_crashed. (This also fixed a typo
831         that would have partially broken crash detection on Windows, if NRWT worked on Windows.)
832
833 2011-12-06  Adam Barth  <abarth@webkit.org>
834
835         NRWT fails on unreleased versions of Mac OS X
836         https://bugs.webkit.org/show_bug.cgi?id=72748
837
838         Reviewed by Dirk Pranke.
839
840         Hopefully this patch will make NRWT work on future versions on Mac OS X.
841         Most of the infrastructure was already in place, but there were some
842         asserts that failed.  I've tested this patch by haxoring the version
843         detection logic to simulate an unknown version.  We might need to
844         iterate based on feedback from folks with a real future version.
845
846         * Scripts/webkitpy/layout_tests/port/apple.py:
847         (ApplePort.__init__):
848             - mac-future is an allowed port_name that's used internally by
849               webkitpy to represent future versions of Mac OS X.
850         * Scripts/webkitpy/layout_tests/port/mac_unittest.py:
851         (test_versions):
852             - Test that we don't throw exceptions when dealing with future
853               versions of Mac OS X.
854         * Scripts/webkitpy/layout_tests/port/webkit.py:
855         (WebKitPort._expectations_from_skipped_files):
856             - Demote this logging message to "debug".  It's expected that
857               mac-future doesn't have a Skipped file.
858         * Scripts/webkitpy/layout_tests/port/mac.py:
859         (MacPort.__init__):
860         * Scripts/webkitpy/layout_tests/port/win.py:
861         (WinPort.__init__):
862             - Re-order some code in these constructors so that
863               self._operating_system is available to the ApplePort constructor.
864
865 2011-12-06  Tommy Widenflycht  <tommyw@google.com>
866
867         Added myself as a committer.
868
869         * Scripts/webkitpy/common/config/committers.py:
870
871 2011-12-06  Peter Beverloo  <peter@chromium.org>
872
873         Added myself as a committer.
874
875         * Scripts/webkitpy/common/config/committers.py:
876
877 2011-12-06  Kentaro Hara  <haraken@chromium.org>
878
879         [Refactoring] In webkitpy/bindings/main.py, replace subprocess.Popen() with Executive
880         https://bugs.webkit.org/show_bug.cgi?id=73637
881
882         Reviewed by Adam Barth.
883
884         This patch replaces subprocess.Popen() with Executive, similar to other
885         Python scripts in webkitpy/. I manually confirmed that run-bindings-tests
886         works well for cases where no exception is raised, no exception is raised
887         but diff is found, and ScriptError is raised.
888
889         * Scripts/run-bindings-tests:
890         (main):
891         * Scripts/webkitpy/bindings/main.py: Replaces subprocess.Popen() with Executive.
892         (BindingsTests.__init__):
893         (BindingsTests.generate_from_idl):
894         (BindingsTests.generate_supplemental_dependency):
895         (BindingsTests.detect_changes):
896
897 2011-12-05  Alexander Færøy  <alexander.faeroy@nokia.com>
898
899         [Qt] MiniBrowser should default to touch behavior
900         https://bugs.webkit.org/show_bug.cgi?id=73863
901
902         Reviewed by Chang Shu.
903
904         MiniBrowser currently defaults to the traditional desktop behaviour
905         instead of touch behaviour which is prefered.
906
907         * MiniBrowser/qt/BrowserWindow.cpp:
908         (BrowserWindow::BrowserWindow):
909         * MiniBrowser/qt/MiniBrowserApplication.cpp:
910         (printHelp):
911         (MiniBrowserApplication::handleUserOptions):
912         * MiniBrowser/qt/MiniBrowserApplication.h:
913         (WindowOptions::WindowOptions):
914         (WindowOptions::setUseTraditionalDesktopBehavior):
915         (WindowOptions::useTraditionalDesktopBehavior):
916
917 2011-12-05  Raphael Kubo da Costa  <kubo@profusion.mobi>
918
919         webkit.py: Really fix the printing of StringImpl now that 8-bit strings are present.
920         https://bugs.webkit.org/show_bug.cgi?id=73878
921
922         Reviewed by Tony Chang.
923
924         r98624 turned StringImpl::m_data into StringImpl::{m_data8,m_data16}.
925         r98785 made webkit.py always use m_data16, which does not work when
926         the string is an 8-bit string (such as KURL::string()).
927
928         I was not able to directly call StringImpl::is8Bit() in the Python
929         code, so I just reproduced the implementation there.
930
931         * gdb/webkit.py:
932         (WTFStringPrinter.is_8bit): Reproduced StringImpl::is8Bit().
933         (WTFStringPrinter.to_string):
934         (JSCUStringPrinter.is_8bit): Reproduced StringImpl::is8Bit().
935         (JSCUStringPrinter.to_string):
936
937 2011-12-05  Eric Seidel  <eric@webkit.org>
938
939         Up the "expected ram for each DRT instance" to 400MB instead of 300MB
940         in hopes of making the Snow Leopard bot stop timing out.
941
942         Unreviewed.
943
944         * Scripts/webkitpy/layout_tests/port/base.py:
945         (Port.default_child_processes):
946         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
947         (PortTest.test_default_child_processes):
948
949 2011-12-05  Eric Seidel  <eric@webkit.org>
950
951         NRWT creates too many workers on RAM-limited machines
952         https://bugs.webkit.org/show_bug.cgi?id=73847
953
954         Reviewed by Dirk Pranke.
955
956         Make NRWT restrict its number of workers when there isn't enough
957         RAM to support them.
958         Also re-enable parallel testing on the Mac bots which were
959         failing due to not enough ram.
960
961         * Scripts/run-webkit-tests:
962         (platformIsReadyForParallelTesting):
963         * Scripts/webkitpy/common/host.py:
964         (Host.__init__):
965         * Scripts/webkitpy/common/system/executive_mock.py:
966         (MockExecutive.cpu_count):
967         * Scripts/webkitpy/common/system/platforminfo.py:
968         (PlatformInfo.__init__):
969         (PlatformInfo.display_name):
970         * Scripts/webkitpy/common/system/platforminfo_mock.py:
971         (MockPlatformInfo.display_name):
972         * Scripts/webkitpy/layout_tests/port/base.py:
973         (Port.default_child_processes):
974         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
975         (PortTest.test_default_child_processes):
976         (PortTest.test_pretty_patch_os_error):
977
978 2011-12-05  Hugo Parente Lima  <hugo.lima@openbossa.org>
979
980         Last mouse event could be lost if a JS call to eventSender.leapForward is made
981         https://bugs.webkit.org/show_bug.cgi?id=73366
982
983         Reviewed by Kenneth Rohde Christiansen.
984
985         Empty the entire event queue when requested besides using
986         sendEvent instead of postEvent to make sure all events were
987         delivered.
988
989         * WebKitTestRunner/qt/EventSenderProxyQt.cpp:
990         (WTR::EventSenderProxy::EventSenderProxy):
991         (WTR::EventSenderProxy::sendOrQueueEvent):
992         (WTR::EventSenderProxy::replaySavedEvents):
993
994 2011-12-05  Adam Barth  <abarth@webkit.org>
995
996         [Chromium] Remove no-longer-used forwarding headers in the WebKit API
997         https://bugs.webkit.org/show_bug.cgi?id=73845
998
999         Reviewed by Darin Fisher.
1000
1001         Update includes to point to the new header locations.
1002
1003         * DumpRenderTree/chromium/AccessibilityController.cpp:
1004         * DumpRenderTree/chromium/AccessibilityUIElement.cpp:
1005         * DumpRenderTree/chromium/CppBoundClass.cpp:
1006         * DumpRenderTree/chromium/DRTDevToolsAgent.cpp:
1007         * DumpRenderTree/chromium/DRTDevToolsAgent.h:
1008         * DumpRenderTree/chromium/DRTDevToolsClient.h:
1009         * DumpRenderTree/chromium/EventSender.cpp:
1010         * DumpRenderTree/chromium/EventSender.h:
1011         * DumpRenderTree/chromium/GamepadController.h:
1012         * DumpRenderTree/chromium/LayoutTestController.cpp:
1013         * DumpRenderTree/chromium/LayoutTestController.h:
1014         * DumpRenderTree/chromium/MockSpellCheck.cpp:
1015         * DumpRenderTree/chromium/NotificationPresenter.cpp:
1016         * DumpRenderTree/chromium/PlainTextController.cpp:
1017         * DumpRenderTree/chromium/Task.cpp:
1018         * DumpRenderTree/chromium/TestNavigationController.h:
1019         * DumpRenderTree/chromium/TestShell.cpp:
1020         * DumpRenderTree/chromium/TestWebPlugin.cpp:
1021         * DumpRenderTree/chromium/TestWebPlugin.h:
1022         * DumpRenderTree/chromium/TextInputController.cpp:
1023         * DumpRenderTree/chromium/WebPermissions.cpp:
1024         * DumpRenderTree/chromium/WebPreferences.h:
1025         * DumpRenderTree/chromium/WebThemeEngineDRTMac.h:
1026         * DumpRenderTree/chromium/WebThemeEngineDRTMac.mm:
1027         * DumpRenderTree/chromium/WebThemeEngineDRTWin.cpp:
1028         * DumpRenderTree/chromium/WebThemeEngineDRTWin.h:
1029         * DumpRenderTree/chromium/WebViewHost.cpp:
1030
1031 2011-12-05  Ryosuke Niwa  <rniwa@webkit.org>
1032
1033         Add Aharon Lanin to the contributors list.
1034
1035         * Scripts/webkitpy/common/config/committers.py:
1036
1037 2011-12-05  Jarred Nicholls  <jarred@sencha.com>
1038
1039         Moving myself from contributors to committers.
1040
1041         * Scripts/webkitpy/common/config/committers.py:
1042
1043 2011-12-05  Raphael Kubo da Costa  <kubo@profusion.mobi>
1044
1045         Add myself as a committer.
1046
1047         * Scripts/webkitpy/common/config/committers.py:
1048
1049 2011-12-05  Michael Brüning  <michael.bruning@nokia.com>
1050
1051         [Qt] Rename QQuickWebView::canStop property to just loading 
1052         https://bugs.webkit.org/show_bug.cgi?id=73813
1053
1054         Reviewed by Kenneth Rohde Christiansen.
1055
1056         Replaced references to WebView.canStop with WebView.loading.
1057
1058         * MiniBrowser/qt/qml/BrowserWindow.qml:
1059
1060 2011-12-05  Dirk Pranke  <dpranke@chromium.org>
1061
1062         run-webkit-tests: limit --child-processes properly on apple mac
1063         https://bugs.webkit.org/show_bug.cgi?id=73856
1064
1065         Reviewed by Adam Roben.
1066
1067         Fix typos in r102013 so that we correctly pass --child-processes=1 on
1068         the apple mac bots temporarily.
1069
1070         * Scripts/run-webkit-tests:
1071         (platformIsReadyForParallelTesting):
1072
1073 2011-12-05  Ryosuke Niwa  <rniwa@webkit.org>
1074
1075         Temporarily set --child-process=1 on Mac because 20+ tests are timing out
1076         https://bugs.webkit.org/show_bug.cgi?id=73840
1077
1078         Reviewed by Simon Fraser.
1079
1080         Temporarily go back to single process mode on Mac.
1081
1082         * Scripts/run-webkit-tests:
1083         (platformIsReadyForParallelTesting):
1084
1085 2011-12-05  Adam Roben  <aroben@apple.com>
1086
1087         Redeploy apple-macpro-7 and apple-xserve-1
1088
1089         These slaves have been sitting idle since we removed our Leopard builders in r97496.
1090
1091         Fixes <http://webkit.org/b/73829> REGRESSION (r97496): apple-macpro-7 and apple-xserve-1 are
1092         sitting idle
1093
1094         Reviewed by Sam Weinig.
1095
1096         * BuildSlaveSupport/build.webkit.org-config/config.json: Re-added apple-macpro-7 and
1097         apple-xserve-1. The former is now doing "SnowLeopard Intel Debug (WebKit2 Tests)", which
1098         allows apple-xserve-9 to be a build-only slave, and the latter is doing "Lion Intel Debug
1099         (WebKit2 Tests)".
1100
1101 2011-12-05  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1102
1103         [Qt] Make the UI of the MiniBrowser slightly nicer
1104
1105         Rubberstamped by Simon Hausmann.
1106
1107         - Add proper padding
1108         - Show feedback when pressing on the toolbar icons
1109         - Make the text entry better looking
1110
1111         * MiniBrowser/qt/qml/BrowserWindow.qml:
1112
1113 2011-12-05  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>
1114
1115         NRWT should handle duplicated expectations
1116         https://bugs.webkit.org/show_bug.cgi?id=69750
1117
1118         Reviewed by Dirk Pranke.
1119
1120         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1121         (TestExpectations.__init__):
1122         (TestExpectations._report_errors):
1123         (TestExpectations._add_expectations):
1124         * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
1125         (test_add_skipped_tests):
1126         * Scripts/webkitpy/layout_tests/port/base.py:
1127         (Port.skipped_tests):
1128         * Scripts/webkitpy/layout_tests/port/webkit.py:
1129         (WebKitPort.test_expectations):
1130         (WebKitPort.skipped_tests):
1131         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
1132         (test_test_expectations):
1133
1134 2011-12-04  Eric Seidel  <eric@webkit.org>
1135
1136         After success with Mac, Win and Gtk, turning on parallel testing
1137         by default for all platforms (except Qt).
1138
1139         We'll add more platforms to the blacklist if we see problems.
1140
1141         Unreviewed.
1142
1143         * Scripts/run-webkit-tests:
1144         (platformIsReadyForParallelTesting):
1145
1146 2011-12-04  Sam Weinig  <sam@webkit.org>
1147
1148         Add tests for RetainPtr::adoptNS/adoptCF
1149         https://bugs.webkit.org/show_bug.cgi?id=73470
1150
1151         Reviewed by Adam Roben and Darin Adler.
1152
1153         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1154         * TestWebKitAPI/Tests/WTF/cf/RetainPtr.cpp: Added.
1155         (TestWebKitAPI::TEST):
1156         Test that adopting using adoptCF creates a RetainPtr with a
1157         value whose retain count is 1.
1158
1159         * TestWebKitAPI/Tests/WTF/ns: Added.
1160         * TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm: Added.
1161         (TestWebKitAPI::TEST):
1162         Test that adopting using adoptNS creates a RetainPtr with a
1163         value whose retain count is 1.
1164
1165 2011-12-04  Martin Robinson  <mrobinson@igalia.com>
1166
1167         [GTK] Include cairo, pixman and gnome-icon-theme in the jhbuild modules
1168         https://bugs.webkit.org/show_bug.cgi?id=73748
1169
1170         Reviewed by Gustavo Noronha Silva.
1171
1172         * gtk/jhbuild.modules: Add some new modules the jhbuild moduleset.
1173
1174 2011-12-04  Philippe Normand  <pnormand@igalia.com>
1175
1176         Another GTK build fix after r101922.
1177
1178         Rubber-stamped by Martin Robinson.
1179
1180         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1181         (LayoutTestController::pathToLocalResource): Plug possible String ref leak.
1182
1183 2011-12-04  Xan Lopez  <xlopez@igalia.com>
1184
1185         Fix compiler warning in LayoutTestController
1186
1187         Reviewed by Philippe Normand.
1188
1189         * DumpRenderTree/LayoutTestController.cpp:
1190         (LayoutTestController::LayoutTestController): fix warning.
1191
1192 2011-12-04  Alexandre Mazari  <scaroo@gmail.com>
1193
1194         Add missing methods used by fast/notifications tests to LayoutTestController
1195         https://bugs.webkit.org/show_bug.cgi?id=63616
1196
1197         Reviewed by Martin Robinson.
1198
1199         Add missing simulateDesktopNotificationClick method used by
1200         fast/notifications. Provide a default implementation for
1201         areDesktopNotificationPermissionRequestsIgnored and
1202         ignoreDesktopNotificationPermissionRequests.
1203
1204         * DumpRenderTree/LayoutTestController.cpp:
1205         (LayoutTestController::LayoutTestController): call into the port implementation.
1206         (simulateDesktopNotificationClickCallback): ditto.
1207         (ignoreDesktopNotificationPermissionRequestsCallback): default implementation.
1208         (LayoutTestController::staticFunctions): declare new methods.
1209         (LayoutTestController::ignoreDesktopNotificationPermissionRequests): default implementation.
1210         * DumpRenderTree/LayoutTestController.h:
1211         (LayoutTestController::areDesktopNotificationPermissionRequestsIgnored):
1212         * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
1213         (LayoutTestController::simulateDesktopNotificationClick): dummy implementation.
1214         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1215         (LayoutTestController::simulateDesktopNotificationClick): ditto.
1216         * DumpRenderTree/mac/LayoutTestControllerMac.mm:
1217         (LayoutTestController::simulateDesktopNotificationClick): ditto.
1218         * DumpRenderTree/win/LayoutTestControllerWin.cpp:
1219         (LayoutTestController::simulateDesktopNotificationClick): ditto.
1220         * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
1221         (LayoutTestController::simulateDesktopNotificationClick): ditto.
1222
1223 2011-12-03  Mario Sanchez Prada  <msanchez@igalia.com>
1224
1225         [GTK] Don't log document events in DRT
1226         https://bugs.webkit.org/show_bug.cgi?id=73746
1227
1228         Reviewed by Martin Robinson.
1229
1230         Stop connecting globally to document-related events.
1231
1232         * DumpRenderTree/gtk/AccessibilityCallbacks.cpp:
1233         (connectAccessibilityCallbacks): Removed connections.
1234         (disconnectAccessibilityCallbacks): Removed disconnections.
1235
1236 2011-12-03  Dan Bernstein  <mitz@apple.com>
1237
1238         Added a test for <rdar://problem/10523721> Crash at WebCore::SubresourceLoader::releaseResources
1239
1240         Reviewed by Darin Adler.
1241
1242         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1243         * TestWebKitAPI/Tests/mac/SubresourceErrorCrash.mm: Added.
1244         (TestWebKitAPI::TEST):
1245
1246 2011-12-03  Philippe Normand  <pnormand@igalia.com>
1247
1248         Another GTK build fix after r101922.
1249
1250         Rubber-stamped by Martin James Robinson.
1251
1252         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1253         (LayoutTestController::pathToLocalResource): return value needs to
1254         be a URI.
1255
1256 2011-12-03  Martin Robinson  <mrobinson@igalia.com>
1257
1258         Small fix for my previous patch. Do not try to delete a member
1259         of a dictionary that does not exist.
1260
1261         Reviewed by Gustavo Noronha Silva.
1262
1263         * gtk/run-with-jhbuild:
1264         (install_and_run_jhbuild):
1265
1266 2011-12-03  Martin Robinson  <mrobinson@igalia.com>
1267
1268         Fix jhbuild installation for people who have unusual MAKE environment
1269         variables such as 'make -j4' as the jhbuild build does not handle it.
1270
1271         Reviewed by Gustavo Noronha Silva.
1272
1273         * gtk/run-with-jhbuild:
1274         (install_and_run_jhbuild): Remove any MAKE environment variable before building jhbuild.
1275
1276 2011-12-03  Martin Robinson  <mrobinson@igalia.com>
1277
1278         Fix the update-webkitgtk-libs script to properly trigger a jhbuild installation
1279         when run for the first time.
1280
1281         Reviewed by Gustavo Noronha Silva.
1282
1283         * Scripts/update-webkitgtk-libs: Fix first run.
1284
1285 2011-12-03  Philippe Normand  <pnormand@igalia.com>
1286
1287         Unreviewed, GTK build fix after r101922.
1288
1289         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1290         (LayoutTestController::pathToLocalResource): Added sentinel in
1291         g_build_filename call.
1292
1293 2011-12-03  Philippe Normand  <pnormand@igalia.com>
1294
1295         GTK API tests build fix. Run the tests inside jhbuild.
1296
1297         Rubber-stamped by Gustavo Noronha Silva.
1298
1299         * Scripts/run-gtk-tests:
1300         (TestRunner.__init__):
1301         (TestRunner.run._error_handler):
1302         (TestRunner):
1303         (TestRunner.run):
1304
1305 2011-12-03  Martin Robinson  <mrobinson@igalia.com>
1306
1307         Small build fix. Properly specify the path to the locally installed jhbuild.
1308
1309         * Scripts/update-webkitgtk-libs: Fix jhbuild path.
1310
1311 2011-12-03  Martin Robinson  <mrobinson@igalia.com>
1312
1313         [GTK][DRT] Normalize file:///tmp/LayoutTests in LayoutTestController::pathToLocalResource()
1314         https://bugs.webkit.org/show_bug.cgi?id=67256
1315
1316         Reviewed by Philippe Normand.
1317
1318         Implement LayoutTestController::pathToLocalResource for GTK+. Instead of passing 
1319         WEBKIT_TEST_FONTS to the GTK+ test harnesses, pass a more generic WEBKIT_TOP_LEVEL,
1320         which points to the more generic top-level path of the WebKit checkout. This code is
1321         duplicated between WK1 and WK2 harnesses because we do not currently have a way to
1322         share code here.
1323
1324         If WEBKIT_TOP_LEVEL is not provided, we search for the top level based on the binary
1325         location. This will cause the fallback to fail if you build into a non-typical location
1326         or even fake it with a symlink. In this case it's important to use the environment variable.
1327
1328         * DumpRenderTree/gtk/DumpRenderTree.cpp:
1329         (getTopLevelPath): Added.
1330         (initializeFonts): Use the new helper to get the font path.
1331         * DumpRenderTree/gtk/DumpRenderTreeGtk.h: Expose the new helper.
1332         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
1333         (LayoutTestController::pathToLocalResource):Use the new helper to normalize
1334         test paths.
1335         * Scripts/webkitpy/layout_tests/port/gtk.py:
1336         (GtkPort.setup_environ_for_server):Pass the top-level path of the
1337         checkout instead of passing the font path.
1338         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
1339         (WTR::getTopLevelPath): Added this helper.
1340         (WTR::inititializeFontConfigSetting): Use the helper to find the font path.
1341
1342 2011-12-02  David Levin  <levin@chromium.org>
1343
1344         Rename WTF class from TemporarilyChange to TemporaryChange.
1345         https://bugs.webkit.org/show_bug.cgi?id=73479
1346
1347         Reviewed by Eric Seidel.
1348
1349         * DumpRenderTree/ForwardingHeaders/wtf/TemporarilyChange.h: Removed.
1350         * DumpRenderTree/ForwardingHeaders/wtf/TemporaryChange.h: Added.
1351         * TestWebKitAPI/TestWebKitAPI.gypi:
1352         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1353         * TestWebKitAPI/Tests/WTF/TemporaryChange.cpp: Renamed from Tools/TestWebKitAPI/Tests/WTF/TemporarilyChange.cpp.
1354         (TestWebKitAPI::TEST):
1355         * TestWebKitAPI/win/TestWebKitAPI.vcproj:
1356
1357 2011-12-02  Tony Chang  <tony@chromium.org>
1358
1359         [NRWT] reftest asserts intermittently on the Qt-WK2 bot
1360         https://bugs.webkit.org/show_bug.cgi?id=73453
1361
1362         Reviewed by Ryosuke Niwa.
1363
1364         We used to assert if a ref test didn't generate pixel results. Instead, just claim it is a failing test.
1365         The verbose output will include the failure reason.
1366
1367         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py: Don't assert, return FailureReftestNoImagesGenerated instead.
1368         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
1369         (write_test_result):
1370         * Scripts/webkitpy/layout_tests/controllers/test_result_writer_unittest.py: Remove stray letter t.
1371         * Scripts/webkitpy/layout_tests/models/test_failures.py: Add a new failure type: FailureReftestNoImagesGenerated
1372         (determine_result_type):
1373         (FailureReftestNoImagesGenerated.__init__):
1374         (FailureReftestNoImagesGenerated):
1375         (FailureReftestNoImagesGenerated.message):
1376         * Scripts/webkitpy/layout_tests/port/test.py: Add a test case for integration tests.
1377         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Update test counts.
1378         (MainTest.test_run_singly_actually_runs_tests):
1379         (MainTest.test_unexpected_failures):
1380         (EndToEndTest.test_end_to_end):
1381
1382 2011-12-02  Ryosuke Niwa  <rniwa@webkit.org>
1383
1384         ChangeLog should be able to parse annotated changelogs
1385         https://bugs.webkit.org/show_bug.cgi?id=72703
1386
1387         Reviewed by Eric Seidel.
1388
1389         Make parse_entries_from_file aware of svn blame annotation such as "100000 ossy@webkit.org ",
1390         and extract the revision number for each entry.
1391
1392         Also add a support to extract "svn blame" result from svn/git checkout to scm classes.
1393
1394         * Scripts/webkitpy/common/checkout/changelog.py:
1395         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
1396         * Scripts/webkitpy/common/checkout/scm/git.py:
1397         * Scripts/webkitpy/common/checkout/scm/scm.py:
1398         * Scripts/webkitpy/common/checkout/scm/svn.py:
1399
1400 2011-12-02  Eric Seidel  <eric@webkit.org>
1401
1402         Enable parallel testing for Win and Gtk bots
1403         after confirming with Lucas and Martin the bots should be OK.
1404
1405         Unreviewed. (I ran the idea by Lucas and Martin.)
1406
1407         * Scripts/run-webkit-tests:
1408         (platformIsReadyForParallelTesting):
1409
1410 2011-12-02  Martin Robinson  <mrobinson@igalia.com>
1411
1412         Try to fix the GTK+ build.
1413
1414         * gtk/jhbuild.modules: Properly specify the glib-networking
1415         dependency for soup.
1416
1417 2011-12-02  Martin Robinson  <mrobinson@igalia.com>
1418
1419         Fix a syntax error in the committers.py file.
1420
1421         * Scripts/webkitpy/common/config/committers.py: Add a missing comma.
1422
1423 2011-12-02  Ryosuke Niwa  <rniwa@webkit.org>
1424
1425         Add Alan Stearns and Peter Linss to the contributors list.
1426
1427         * Scripts/webkitpy/common/config/committers.py:
1428
1429 2011-12-02  Kent Tamura  <tkent@chromium.org>
1430
1431         [Chromium] Fix compilation warnings for ASSERT()
1432         https://bugs.webkit.org/show_bug.cgi?id=73623
1433
1434         Reviewed by Tony Chang.
1435
1436         * DumpRenderTree/chromium/ImageDiff.cpp:
1437          - Fix fprintf format: %s -> %d for __LINE__
1438          - Do nothing for ASSERT() if NDEBUG.
1439
1440 2011-12-02  Eric Seidel  <eric@webkit.org>
1441
1442         Enable parallel testing for all Mac bots.
1443
1444         Unreviewed.
1445
1446         * Scripts/run-webkit-tests:
1447         (platformIsReadyForParallelTesting):
1448
1449 2011-12-02  Eric Seidel  <eric@webkit.org>
1450
1451         Enable parallel testing for run-webkit-tests on Mac Lion.
1452         I plan to move all the machines to parallel testing shortly
1453         but we're starting with Lion.
1454
1455         Unreviewed.
1456
1457         * Scripts/run-webkit-tests:
1458         (platformIsReadyForParallelTesting):
1459
1460 2011-12-02  Kausalya Madhusudhanan  <kmadhusu@chromium.org>
1461
1462         Added helper method to identify whether the page has custom page size style.
1463         https://bugs.webkit.org/show_bug.cgi?id=73585
1464
1465         Reviewed by Darin Fisher.
1466
1467         * DumpRenderTree/chromium/LayoutTestController.cpp:
1468         (LayoutTestController::LayoutTestController):
1469         (LayoutTestController::hasCustomPageSizeStyle):
1470         * DumpRenderTree/chromium/LayoutTestController.h:
1471
1472 2011-12-01  Ryosuke Niwa  <rniwa@webkit.org>
1473
1474         [NRWT] reftest should support having multiple references per test
1475         https://bugs.webkit.org/show_bug.cgi?id=73613
1476
1477         Reviewed by Dirk Pranke.
1478
1479         Add a support for having multiple reference files for a single test.
1480
1481         Because a reftest succeeds when it matches at least one of expected matches and fails when it matches
1482         at least one of expected mismatches, we compare expected mismatches first in order to minimize
1483         the number of reference files to open on DRT.
1484
1485         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1486         (interpret_test_failures): Remove checks no longer applicable.
1487         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
1488         (ResultSummaryTest.test_interpret_test_failures): Ditto.
1489         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
1490         (SingleTestRunner.__init__): Remove a bunch of code and just call port.reference_files.
1491         (SingleTestRunner._driver_input):
1492         (SingleTestRunner.run):
1493         (SingleTestRunner._run_reftest): Compare the output of the test to each reference file.
1494         * Scripts/webkitpy/layout_tests/models/test_input.py:
1495         (TestInput.__init__): Remove ref_file and is_mismatch_reftest because they are no longer used.
1496         * Scripts/webkitpy/layout_tests/port/base.py:
1497         (Port.reference_files): Renamed from _reference_file_for. Returns a list of expectation, filename pairs.
1498         (_parse_reftest_list): Now supports parsing multiple entries for a single test.
1499         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
1500         (PortTest.test_parse_reftest_list):
1501         * Scripts/webkitpy/layout_tests/port/test.py:
1502         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
1503         (MainTest.test_unexpected_failures):
1504         (MainTest.test_reftest_skipped_if_unlisted): Renamed from test_missing_and_unexpected_results.
1505         (EndToEndTest.test_end_to_end):
1506         (EndToEndTest.test_reftest_with_two_notrefs): Added.
1507
1508 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
1509
1510         Build libsoup without gnome dependencies (like keyring).
1511
1512         * gtk/jhbuild.modules:
1513
1514 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
1515
1516         Also build gcrypt and p11-kit, and make them dependencies of
1517         gnutls.
1518
1519         * gtk/jhbuild.modules:
1520
1521 2011-12-02  Kevin Ollivier  <kevino@theolliviers.com>
1522
1523         [wx] Unreviewed build fixes for Windows build.
1524
1525         * waf/build/wxpresets.py:
1526
1527 2011-12-01  Eric Seidel  <eric@webkit.org>
1528
1529         Reviewed by Adam Barth.
1530
1531         webkit-patch post, post-commits, upload should warn when posting to a closed bug, and offer to reopen it
1532         https://bugs.webkit.org/show_bug.cgi?id=32006
1533
1534         I decided not to make it warn, and just have it re-open the bug.
1535         That's not that different from today's behavior which will
1536         just silently attach the patch.
1537
1538         This patch makes behavior between upload and land-safely consistent
1539         (previously one would assign patches and the other would not)
1540         as well as adds the ability for both to ensure that the bug is open.
1541
1542         To test this I had to add a few more methods to MockBugzilla which
1543         (positively) affected a few other test results.
1544
1545         I also made AbstractStep keep a cached copy of the Bug object
1546         and used the cached copy where appropriate (including for 'bug_title').
1547         This should reduce the number of bug fetches we perform.
1548
1549         * Scripts/webkitpy/tool/commands/download_unittest.py:
1550         * Scripts/webkitpy/tool/commands/upload.py:
1551         * Scripts/webkitpy/tool/commands/upload_unittest.py:
1552         * Scripts/webkitpy/tool/mocktool.py:
1553         * Scripts/webkitpy/tool/steps/__init__.py:
1554         * Scripts/webkitpy/tool/steps/abstractstep.py:
1555         * Scripts/webkitpy/tool/steps/closebug.py:
1556         * Scripts/webkitpy/tool/steps/ensurebugisopenandassigned.py: Added.
1557         * Scripts/webkitpy/tool/steps/postdiff.py:
1558         * Scripts/webkitpy/tool/steps/postdiffforcommit.py:
1559         * Scripts/webkitpy/tool/steps/preparechangelog.py:
1560         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1561         * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py:
1562
1563 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
1564
1565         Also pass --no-interact to jhbuild when updating dependencies.
1566
1567         * Scripts/update-webkitgtk-libs:
1568
1569 2011-12-02  Alice Boxhall  <aboxhall@chromium.org>
1570
1571         Make _build_path check more thoroughly that build paths exist.
1572         https://bugs.webkit.org/show_bug.cgi?id=73601
1573
1574         Reviewed by Ojan Vafai.
1575
1576         * Scripts/webkitpy/layout_tests/port/chromium_mac.py:
1577         (ChromiumMacPort._build_path):
1578
1579 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
1580
1581         Add libffi to the jhbuild modules list as a glib dependency.
1582
1583         Rubber-stamped by Martin Robinson.
1584
1585         * gtk/jhbuild.modules:
1586
1587 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
1588
1589         Build fix. Use internal pcre on glib, make gnutls a dependency of
1590         glib-networking, unset AR_FLAGS for jhbuild builds, and run jhbuild
1591         in non-interactive mode.
1592
1593         * Scripts/update-webkitgtk-libs:
1594         * gtk/jhbuild.modules:
1595         * gtk/run-with-jhbuild:
1596
1597 2011-12-02  Adam Roben  <aroben@apple.com>
1598
1599         Fix for Python 2.6
1600
1601         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1602         (RunUnitTests.countFailures): Removed the flags parameter to re.split, which was only added
1603         in Python 2.7, and used whitespace instead of start-of-string/end-of-string markers when
1604         searching for "Tests that timed out:" etc. This makes our check less strict, but it
1605         shouldn't matter given the kinds of content we parse.
1606
1607 2011-12-02  Adam Roben  <aroben@apple.com>
1608
1609         Fix names of failed/timed out tests in run-api-tests output
1610
1611         Fixes <http://webkit.org/b/73663> run-api-tests prints suite names twice for failed or timed
1612         out tests
1613
1614         We were ending up with the suite name doubled (e.g., "WebKit2.WebKit2.MouseMoveAfterCrash").
1615
1616         Reviewed by Simon Fraser.
1617
1618         * Scripts/run-api-tests:
1619         (runTest): Don't prepend the suite name to $test. It's already been prepended at the start
1620         of this function.
1621
1622 2011-11-29  Martin Robinson  <mrobinson@igalia.com>
1623
1624         [GTK] generate-gtkdoc should respect build type
1625         https://bugs.webkit.org/show_bug.cgi?id=73296
1626
1627         Reviewed by Philippe Normand.
1628
1629         * Scripts/webkitdirs.pm:
1630         (buildAutotoolsProject): Pass the --debug to the generate-gtkdoc script.
1631         * gtk/common.py: If --build is passed give preference to the Debug build directory.
1632
1633 2011-12-02  Tony Chang  <tony@chromium.org>
1634
1635         [nrwt] fix wdiff output
1636         https://bugs.webkit.org/show_bug.cgi?id=73604
1637
1638         Reviewed by Adam Barth.
1639
1640         * Scripts/webkitpy/layout_tests/port/base.py:
1641         (Port.wdiff_text):
1642         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
1643         (PortTest.test_wdiff_text):
1644
1645 2011-12-02  Adam Roben  <aroben@apple.com>
1646
1647         Teach build.webkit.org to display how many unit tests failed or timed out
1648
1649         Fixes <http://webkit.org/b/73659> It's hard to tell how many unit tests are failing on
1650         build.webkit.org
1651
1652         We now display something like "5 unit tests failed or timed out". Eventually we might want
1653         to split out how many failure vs. timeouts there were.
1654
1655         Reviewed by Darin Adler.
1656
1657         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1658         (TestWithFailureCount): Moved this class up to the top of the file so it is before any other
1659         classes that may want to subclass it.
1660         (RunUnitTests): Changed to inherit from TestWithFailureCount.
1661         (RunUnitTests.countFailures): Added. Counts the number of tests following the "Tests that
1662         timed out:" and "Tests that failed:" lines, if present.
1663
1664         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1665         (StubStdio):
1666         (StubRemoteCommand):
1667         Added these two stub classes to mimic buildbot's RemoteCommand and log classes.
1668
1669         (RunUnitTestsTest.assertFailures): Helper method to check that we interpreted the results of
1670         the test run correctly.
1671
1672         (RunUnitTestsTest.test_no_failures_or_timeouts):
1673         (RunUnitTestsTest.test_one_failure):
1674         (RunUnitTestsTest.test_multiple_failures):
1675         (RunUnitTestsTest.test_one_timeout):
1676         (RunUnitTestsTest.test_multiple_timeouts):
1677         (RunUnitTestsTest.test_multiple_failures_and_timeouts):
1678         Test various cases.
1679
1680 2011-12-02  Adam Roben  <aroben@apple.com>
1681
1682         Teach prepare-ChangeLog to treat master.cfg as a Python file
1683
1684         Fixes <http://webkit.org/b/73658> prepare-ChangeLog doesn't show modified classes/functions
1685         in buildbot's master.cfg
1686
1687         Reviewed by Darin Adler.
1688
1689         * Scripts/prepare-ChangeLog:
1690         (get_function_line_ranges): Use get_function_line_ranges_for_python if the filename is
1691         master.cfg.
1692
1693 2011-12-02  Martin Robinson  <mrobinson@igalia.com>
1694
1695         [GTK] Create a wrapper script that knows how to install jhbuild and run commands with it
1696         https://bugs.webkit.org/show_bug.cgi?id=73669
1697
1698         Reviewed by Gustavo Noronha Silva.
1699
1700         Add a wrapper script that knows how to install jhbuild and also to wrap commands
1701         in the jhbuild shell.
1702
1703         * Scripts/webkitdirs.pm:
1704         (runAutogenForAutotoolsProject): Use the new wrapper script.
1705         (mustReRunAutogen): Ditto.
1706         (buildAutotoolsProject): Ditto.
1707         * Scripts/webkitpy/layout_tests/port/gtk.py:
1708         (GtkDriver.cmd_line): Ditto.
1709         * gtk/run-with-jhbuild: Added.
1710
1711 2011-12-01  Adam Roben  <aroben@apple.com>
1712
1713         Teach check-webkit-style how to check the syntax of JSON files
1714
1715         Fixes <http://webkit.org/b/73590> check-webkit-style doesn't flag JSON syntax errors
1716
1717         I previously landed this patch as r101711, but the new tests failed on Snow Leopard. This
1718         patch is identical to that one except for two change: assertIn(a, b) (which is new to Python
1719         2.7) has been replaced with assertTrue(a in b), and the test_missing_closing_brace test has
1720         been removed, since its output differs by platform.
1721
1722         Reviewed by Darin Adler.
1723
1724         * Scripts/webkitpy/style/checker.py:
1725         (_all_categories): Added JSONChecker's categories to the set of all categories.
1726         (FileType): Added a JSON type. Incremented other types.
1727         (CheckerDispatcher._file_type): Use the JSON file type for .json files.
1728         (CheckerDispatcher._create_checker): Use a JSONChecker for JSON files.
1729
1730         * Scripts/webkitpy/style/checker_unittest.py:
1731         (CheckerDispatcherDispatchTest.assert_checker_json): Added this helper method.
1732         (CheckerDispatcherDispatchTest.test_json_paths): Added. Based on test_python_paths.
1733
1734         * Scripts/webkitpy/style/checkers/jsonchecker.py: Added. (I didn't name this just "json",
1735         which would have matched our other checkers, because I couldn't figure out how to call
1736         "json.loads" without hitting namespace conflicts.)
1737         (JSONChecker.__init__): Turn of line filtering so that we always check the whole file, not
1738         just the modified lines from a patch.
1739         (JSONChecker.check): Try to parse the lines as JSON. Mark an error if there was an
1740         exception.
1741         (JSONChecker.line_number_from_json_exception): Parse the json modules exception message to
1742         try to extract a line number.
1743
1744         * Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Added.
1745         (MockErrorHandler.__init__):
1746         (MockErrorHandler.turn_off_line_filtering):
1747         (MockErrorHandler.__call__):
1748         Helper class. Copied from xml_unittest.py.
1749
1750         (JSONCheckerTest.test_line_number_from_json_exception): Test the
1751         line_number_from_json_exception helper method.
1752
1753         (JSONCheckerTest.assert_no_error):
1754         (JSONCheckerTest.assert_error):
1755         Helper methods to assert that we did or didn't get an error.
1756
1757         (JSONCheckerTest.mock_handle_style_error): Helper method.
1758
1759         (JSONCheckerTest.test_conflict_marker):
1760         (JSONCheckerTest.test_single_quote):
1761         (JSONCheckerTest.test_init):
1762         (JSONCheckerTest.test_no_error):
1763         Test various cases.
1764
1765 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
1766
1767         [GTK] Add glib, glib-networking, gnutls and libsoup to jhbuild
1768         https://bugs.webkit.org/show_bug.cgi?id=73664
1769
1770         Reviewed by Martin Robinson.
1771
1772         This patch adds our HTTP library and its main dependencies; this
1773         should not affect layout or rendering.
1774
1775         * gtk/jhbuild.modules:
1776
1777 2011-12-02  Gustavo Noronha Silva  <gns@gnome.org>
1778
1779         [GTK] Also run DumpRenderTree under jhbuild
1780         https://bugs.webkit.org/show_bug.cgi?id=73646
1781
1782         Reviewed by Martin Robinson.
1783
1784         * Scripts/webkitpy/layout_tests/port/gtk.py:
1785         (GtkDriver.cmd_line):
1786
1787 2011-12-02  Hajime Morrita  <morrita@chromium.org>
1788
1789         Unreviewed, rolling out r101751 and r101775.
1790         http://trac.webkit.org/changeset/101751
1791         http://trac.webkit.org/changeset/101775
1792         https://bugs.webkit.org/show_bug.cgi?id=73191
1793
1794         breaks Windows build
1795
1796         * DumpRenderTree/chromium/config.h:
1797         * DumpRenderTree/config.h:
1798         * TestWebKitAPI/config.h:
1799         * WebKitTestRunner/config.h:
1800
1801 2011-12-02  Kentaro Hara  <haraken@chromium.org>
1802
1803         Move run-bindings-tests implementation to webkitpy/bindings/main.py
1804         https://bugs.webkit.org/show_bug.cgi?id=73619
1805
1806         Reviewed by Adam Barth.
1807
1808         As run-bindings-tests has been growing, this patch just moves its implementation
1809         to webkitpy/bindings/main.py to integrate with the rest of webkitpy.
1810
1811         No change in behavior.
1812
1813         * Scripts/run-bindings-tests:
1814         (main):
1815         * Scripts/webkitpy/bindings/__init__.py: Added.
1816         * Scripts/webkitpy/bindings/main.py: Added.
1817         (BindingsTests.__init__):
1818         (BindingsTests.generate_from_idl):
1819         (BindingsTests.generate_supplemental_dependency):
1820         (BindingsTests.detect_changes):
1821         (BindingsTests.run_tests):
1822
1823 2011-12-01  Ilya Tikhonovsky  <loislo@chromium.org>
1824
1825         Tools/Scripts: eliminate find_test_files from Port class.
1826         https://bugs.webkit.org/show_bug.cgi?id=73553
1827
1828         rebaseline.py and chromium_gpu.py use Port.find_test_files() the same way as it is used in Port.tests()
1829         I'd like to replace all calls to find_test_files with tests and eliminate find_tests_files.
1830         Also I'll move _is_test_file() and related functions close to Port.tests().
1831
1832         Reviewed by Dirk Pranke.
1833
1834         * Scripts/webkitpy/layout_tests/port/base.py:
1835         (Port.tests):
1836         (Port.is_reference_html_file):
1837         (Port._has_supported_extension):
1838         (Port._is_test_file):
1839         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
1840         (PortTest.test_find_no_paths_specified):
1841         (PortTest.test_find_one_test):
1842         (PortTest.test_find_glob):
1843         (PortTest.test_find_with_skipped_directories):
1844         (PortTest.test_find_with_skipped_directories_2):
1845         (PortTest.test_is_test_file):
1846         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
1847         (_default_tests_paths):
1848         (ChromiumGpuLinuxPort.tests):
1849         (ChromiumGpuCgMacPort.tests):
1850         (ChromiumGpuMacPort.tests):
1851         * Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
1852         (ChromiumGpuTest.test_default_tests_paths.test_paths):
1853         (ChromiumGpuTest.test_default_tests_paths):
1854         (ChromiumGpuTest.test_test_files.test_paths):
1855         (ChromiumGpuTest):
1856         (ChromiumGpuTest.test_test_files):
1857         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
1858         (get_tests_run.RecordingTestDriver.run_test):
1859         * Scripts/webkitpy/tool/commands/rebaseline.py:
1860         (OptimizeBaselines._optimize_baseline):
1861         (OptimizeBaselines.execute):
1862         (AnalyzeBaselines._analyze_baseline):
1863         (AnalyzeBaselines.execute):
1864
1865 2011-12-01  Hajime Morrita  <morrita@chromium.org>
1866
1867         JS_INLINE and WTF_INLINE should be visible from WebCore
1868         https://bugs.webkit.org/show_bug.cgi?id=73191
1869
1870         Reviewed by Kevin Ollivier.
1871
1872         Removed macro definitions which is now provided by Platform.h
1873
1874         * DumpRenderTree/chromium/config.h:
1875         * DumpRenderTree/config.h:
1876         * TestWebKitAPI/config.h:
1877         * WebKitTestRunner/config.h:
1878
1879 2011-12-01  Hayato Ito  <hayato@chromium.org>
1880
1881         Explicitly pass tolerance=0 to port.diff_image in case of RefTestMismatch failure.
1882         https://bugs.webkit.org/show_bug.cgi?id=73406
1883
1884         Reviewed by Ryosuke Niwa.
1885
1886         WebKitPort's image_diff uses tolerance='0.1' in default.
1887         When reftests fail, we should use tolerace=0 when diff-ing images.
1888
1889         Since ImageDiff on chromium port doesn't use tolerance value as of now,
1890         this change doesn't affect chromium port's behavior.
1891
1892         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
1893         (write_test_result):
1894         * Scripts/webkitpy/layout_tests/port/base.py:
1895         (Port.diff_image):
1896         * Scripts/webkitpy/layout_tests/port/chromium.py:
1897         (ChromiumPort.diff_image):
1898         * Scripts/webkitpy/layout_tests/port/test.py:
1899         (TestPort.diff_image):
1900         * Scripts/webkitpy/layout_tests/port/webkit.py:
1901         (WebKitPort.diff_image):
1902         (WebKitPort._start_image_diff_process):
1903         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
1904         (MainTest.test_tolerance.ImageDiffTestPort.diff_image):
1905
1906 2011-12-01  Adam Klein  <adamk@chromium.org>
1907
1908         Add Chromium ToT GTest build bots (and group selection support) to flakiness dashboard
1909         https://bugs.webkit.org/show_bug.cgi?id=73599
1910
1911         Reviewed by Ojan Vafai.
1912
1913         * TestResultServer/static-dashboards/builders.js:
1914         * TestResultServer/static-dashboards/dashboard_base.js:
1915         ():
1916         (htmlForTestTypeSwitcher):
1917         * TestResultServer/static-dashboards/flakiness_dashboard_tests.js:
1918         (testHtmlForTestTypeSwitcherGroup):
1919
1920 2011-12-01  Ryosuke Niwa  <rniwa@webkit.org>
1921
1922         Parse reftest.list and extract types of ref tests
1923         https://bugs.webkit.org/show_bug.cgi?id=66837
1924
1925         Reviewed by Dirk Pranke.
1926
1927         Add support for reftest.list to base port.
1928
1929         * Scripts/webkitpy/common/find_files.py:
1930         (find):
1931         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
1932         (SingleTestRunner.__init__):
1933         * Scripts/webkitpy/layout_tests/port/base.py:
1934         (Port.__init__): Initialize self._reftest_list. It's a dictionary mapping from a test directory
1935         to a dictionary of {test path: ("==" or "!=", reference file path)}
1936         (Port._get_reftest_list): Added; calls test_file.parse_reftest_list to fill self._reftest_list.
1937         (Port._reference_file_for): Added; obtains the reference file name given a test name.
1938         (Port.is_reftest): Added; Calls _reference_file_for.
1939         (Port.reftest_expected_filename): Calls _reference_file_for.
1940         (Port.reftest_expected_mismatch_filename): Ditto.
1941         (Port.find_test_files):
1942         (is_reference_html_file): Treat any file that starts with ref- or notref- or ends with
1943         -expected, -expected-mismach, -ref, or -notref as a reference file.
1944         (_is_test_file):
1945         (_parse_reftest_list): Added.
1946         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
1947         (PortTest.test_is_test_file):
1948         (PortTest.test_parse_reftest_list):
1949         * Scripts/webkitpy/layout_tests/port/dryrun.py:
1950         (DryrunDriver.run_test):
1951         * Scripts/webkitpy/layout_tests/port/test.py:
1952         (unit_test_filesystem.add_test_file):
1953         (unit_test_filesystem.add_file):
1954         (unit_test_filesystem):
1955         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
1956         (get_tests_run.RecordingTestDriver.run_test):
1957         (MainTest.test_unexpected_failures):
1958         (MainTest.test_missing_and_unexpected_results):
1959         (EndToEndTest.test_end_to_end):
1960         * Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
1961         (Rebaseliner._compile_rebaselining_tests):
1962
1963 2011-12-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1964
1965         Unreviewed, rolling out r101711.
1966         http://trac.webkit.org/changeset/101711
1967         https://bugs.webkit.org/show_bug.cgi?id=73605
1968
1969         Broke 3 webkitpy tests (Requested by rniwa on #webkit).
1970
1971         * Scripts/webkitpy/style/checker.py:
1972         (_all_categories):
1973         (FileType):
1974         (CheckerDispatcher._file_type):
1975         (CheckerDispatcher._create_checker):
1976         * Scripts/webkitpy/style/checker_unittest.py:
1977         (CheckerDispatcherDispatchTest.assert_checker_cpp):
1978         (CheckerDispatcherDispatchTest.test_cpp_paths):
1979         * Scripts/webkitpy/style/checkers/jsonchecker.py: Removed.
1980         * Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Removed.
1981
1982 2011-12-01  Gustavo Noronha Silva  <gns@gnome.org>
1983
1984         Unreviewed. Add myself to GStreamer and WebKit2GTK+ watchlists.
1985
1986         * Scripts/webkitpy/common/config/watchlist:
1987
1988 2011-12-01  Martin Robinson  <mrobinson@igalia.com>
1989
1990         [GTK] Read fonts from the jhbuild root
1991         https://bugs.webkit.org/show_bug.cgi?id=73487
1992
1993         Reviewed by Gustavo Noronha Silva.
1994
1995         Read fonts from the jhbuild root instead of from the system. This will ensure
1996         that all testers use the same fonts instead of leaving this up to luck.
1997
1998         * DumpRenderTree/gtk/DumpRenderTree.cpp:
1999         (initializeFonts): Load fonts from jhbuild root.
2000         * Scripts/webkitpy/layout_tests/port/gtk.py:
2001         (GtkPort.setup_environ_for_server): Pass an environment variable containing
2002         the path to the jhbuild root.
2003         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
2004         (WTR::inititializeFontConfigSetting): Load fonts from the jhbuild root.
2005
2006 2011-12-01  Adam Roben  <aroben@apple.com>
2007
2008         Teach check-webkit-style how to check the syntax of JSON files
2009
2010         Fixes <http://webkit.org/b/73590> check-webkit-style doesn't flag JSON syntax errors
2011
2012         Reviewed by Darin Adler.
2013
2014         * Scripts/webkitpy/style/checker.py:
2015         (_all_categories): Added JSONChecker's categories to the set of all categories.
2016         (FileType): Added a JSON type. Incremented other types.
2017         (CheckerDispatcher._file_type): Use the JSON file type for .json files.
2018         (CheckerDispatcher._create_checker): Use a JSONChecker for JSON files.
2019
2020         * Scripts/webkitpy/style/checker_unittest.py:
2021         (CheckerDispatcherDispatchTest.assert_checker_json): Added this helper method.
2022         (CheckerDispatcherDispatchTest.test_json_paths): Added. Based on test_python_paths.
2023
2024         * Scripts/webkitpy/style/checkers/jsonchecker.py: Added. (I didn't name this just "json",
2025         which would have matched our other checkers, because I couldn't figure out how to call
2026         "json.loads" without hitting namespace conflicts.)
2027         (JSONChecker.__init__): Turn of line filtering so that we always check the whole file, not
2028         just the modified lines from a patch.
2029         (JSONChecker.check): Try to parse the lines as JSON. Mark an error if there was an
2030         exception.
2031         (JSONChecker.line_number_from_json_exception): Parse the json modules exception message to
2032         try to extract a line number.
2033
2034         * Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Added.
2035         (MockErrorHandler.__init__):
2036         (MockErrorHandler.turn_off_line_filtering):
2037         (MockErrorHandler.__call__):
2038         Helper class. Copied from xml_unittest.py.
2039
2040         (JSONCheckerTest.test_line_number_from_json_exception): Test the
2041         line_number_from_json_exception helper method.
2042
2043         (JSONCheckerTest.assert_no_error):
2044         (JSONCheckerTest.assert_error):
2045         Helper methods to assert that we did or didn't get an error.
2046
2047         (JSONCheckerTest.mock_handle_style_error): Helper method.
2048
2049         (JSONCheckerTest.test_conflict_marker):
2050         (JSONCheckerTest.test_single_quote):
2051         (JSONCheckerTest.test_init):
2052         (JSONCheckerTest.test_missing_closing_brace):
2053         (JSONCheckerTest.test_no_error):
2054         Test various cases.
2055
2056 2011-12-01  Martin Robinson  <mrobinson@igalia.com>
2057
2058         [GTK] Add a helper function to find the current executable's path
2059         https://bugs.webkit.org/show_bug.cgi?id=73473
2060
2061         Reviewed by Gustavo Noronha Silva.
2062
2063         Update MiniBrowser to not pass the binary directory as an environment variable.
2064         This means that you can move the binaries around without it breaking.
2065
2066         * MiniBrowser/gtk/main.c:
2067         (main): No longer set the environment variable.
2068         * WebKitTestRunner/GNUmakefile.am: No longer add the directory path define.
2069         * WebKitTestRunner/gtk/main.cpp:  Ditto.
2070
2071 2011-12-01  Gustavo Noronha Silva  <gns@gnome.org>
2072
2073         Unreviewed. Fix bad file =(.
2074
2075         * gtk/jhbuild.modules:
2076         * Scripts/webkitdirs.pm:
2077         (runAutogenForAutotoolsProject):
2078
2079 2011-12-01  Gustavo Noronha Silva  <gns@gnome.org>
2080
2081         [GTK] Add freetype to our jhbuild setup
2082         https://bugs.webkit.org/show_bug.cgi?id=73488
2083
2084         Reviewed by Martin Robinson.
2085
2086         This adds the first library to our jhbuild setup, and makes sure
2087         build-webkit calls autogen.sh and make with jhbuild, so that the
2088         environment is properly set.
2089
2090         * Scripts/webkitdirs.pm:
2091         (saveSum):
2092         (hashFile):
2093         (runAutogenForAutotoolsProject): save md5sum of jhbuild-related files, and
2094         call autogen under jhbuild run;
2095         (mustRunAutogen): generalized the arguments change checking to also force
2096         running autogen when jhbuild files change;
2097         (buildAutotoolsProject): run make under jhbuild;
2098         * gtk/jhbuild.modules: add freetype.
2099
2100 2011-12-01  Dominic Mazzoni  <dmazzoni@google.com>
2101
2102         Fix WebKitTestRunner compile warnings with XCode 3.2
2103         https://bugs.webkit.org/show_bug.cgi?id=73378
2104
2105         Reviewed by Chris Fleizach.
2106
2107         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp:
2108         (WTR::AccessibilityTextMarker::AccessibilityTextMarker):
2109         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp:
2110         (WTR::AccessibilityTextMarkerRange::AccessibilityTextMarkerRange):
2111         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2112         (WTR::AccessibilityUIElement::AccessibilityUIElement):
2113         (WTR::AccessibilityUIElement::verticalScrollbar):
2114
2115 2011-12-01  Adam Roben  <aroben@apple.com>
2116
2117         Allow committers to use their Trac credentials to force builds on the buildbots
2118
2119         Fixes <http://webkit.org/b/73353>
2120
2121         A new class, CommitterAuth, handles authentication of WebKit committers. CommitterAuth uses
2122         three files to do its job: a config file that contains a list of WebKit committer usernames,
2123         an htdigest file that contains Trac credentials, and JSON file that gives the paths for
2124         those two files.
2125
2126         Reviewed by Darin Adler.
2127
2128         * BuildSlaveSupport/build.webkit.org-config/committer_auth.py: Added.
2129         (Error): Basic wrapper around Exception that we use for cases where we couldn't even check
2130         whether credentials were valid or not.
2131         (CommitterAuth.__init__): Just store the path to auth.json.
2132         (CommitterAuth.auth_json): Load, parse, and return auth.json.
2133         (CommitterAuth.auth_json_filename): Return the path to auth.json.
2134         (CommitterAuth.authenticate): Return true if the user is a WebKit committer and their
2135         credentials are valid Trac credentials. Return false otherwise or if an error occurred while
2136         checking those conditions.
2137         (CommitterAuth.is_webkit_committer): Return true if the user is a WebKit committer. Return
2138         false otherwise or if an exception was thrown.
2139         (CommitterAuth.is_webkit_trac_user): Return true if the username/password are present in the
2140         Trac credentials htdigest file. Return false otherwise or if an exception was thrown.
2141
2142         (CommitterAuth.open_auth_json_file):
2143         (CommitterAuth.open_trac_credentials_file):
2144         (CommitterAuth.open_webkit_committers_file):
2145         Open the specified file. These are mostly useful for testing purposes.
2146
2147         (CommitterAuth.trac_credentials_filename):
2148         (CommitterAuth.webkit_committers_filename):
2149         Return the path to the specified file by retrieving it from auth.json.
2150
2151         (CommitterAuth.webkit_committers): Load and parse the committers file and extract the list
2152         of WebKit committers from it.
2153
2154         * BuildSlaveSupport/build.webkit.org-config/committer_auth_unittest.py: Added.
2155         (CMStringIO.__enter__):
2156         (CMStringIO.__exit__):
2157         Helper class that makes it possible to use StringIO with the "with" statement.
2158
2159         (open_override): Helper context manager for overriding the global "open" function
2160         temporarily.
2161
2162         (CommitterAuthTest.setUp): Set up a somewhat-mocked CommitterAuth that is used by most
2163         tests.
2164         (CommitterAuthTest.fake_open_function): Returns a function that can be used in place of
2165         "open" to test that the expected path was opened.
2166         (CommitterAuthTest.test_authentication_success): Test that committers can authenticate
2167         successfully.
2168         (CommitterAuthTest.test_committer_without_trac_credentials_fails): Test that committers who
2169         somehow have no Trac account can't authenticate.
2170
2171         (CommitterAuthTest.test_fail_to_open_auth_json_file):
2172         (CommitterAuthTest.test_fail_to_open_trac_credentials_file):
2173         (CommitterAuthTest.test_fail_to_open_webkit_committers_file):
2174         Test what happens when we can't open the three files we depend upon.
2175
2176         (CommitterAuthTest.test_implements_IAuth): Test that we fulfill buildbot's expectations for
2177         an authentication class.
2178
2179         (CommitterAuthTest.test_invalid_auth_json_file):
2180         (CommitterAuthTest.test_invalid_committers_file):
2181         (CommitterAuthTest.test_invalid_trac_credentials_file):
2182         (CommitterAuthTest.test_missing_auth_json_keys):
2183         Test what happens when the three files we depend upon are invalid in some way.
2184
2185         (CommitterAuthTest.test_open_auth_json_file):
2186         (CommitterAuthTest.test_open_trac_credentials_file):
2187         (CommitterAuthTest.test_open_webkit_committers_file):
2188         Test that we open the expected paths.
2189
2190         (CommitterAuthTest.test_trac_credentials_filename):
2191         (CommitterAuthTest.test_webkit_committers_filename):
2192         Test that we extract filenames out of auth.json correctly.
2193
2194         (CommitterAuthTest.test_non_committer_fails):
2195         (CommitterAuthTest.test_unknown_user_fails):
2196         (CommitterAuthTest.test_username_is_prefix_of_valid_user):
2197         (CommitterAuthTest.test_wrong_password_fails):
2198         Test various failed authentication attempts.
2199
2200         (CommitterAuthTest.test_webkit_committers): Test that we can parse the list of WebKit
2201         committers out of the committers file correctly.
2202
2203         (CommitterAuthTest.fake_auth_json_file):
2204         (CommitterAuthTest.invalid_auth_json_file):
2205         (CommitterAuthTest.fake_committers_file):
2206         (CommitterAuthTest.invalid_committers_file):
2207         (CommitterAuthTest.fake_htdigest_file):
2208         (CommitterAuthTest.invalid_htdigest_file):
2209         Return various fake files for testing.
2210
2211         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Specify an instance of CommitterAuth
2212         to be used for authentication in the web interface, and specify that only authenticated
2213         users may force builds.
2214
2215 2011-12-01  Adam Roben  <aroben@apple.com>
2216
2217         Add an HTDigestParser class to webkitpy
2218
2219         Fixes <http://webkit.org/b/73575> webkitpy doesn't provide a way to parse htdigest files
2220
2221         This class can be used to parse Apache's htdigest files and check whether a given
2222         username/realm/password tuple is present in the file. Eventually this will be used for
2223         authenticating users on build.webkit.org (<http://webkit.org/b/73353>).
2224
2225         Reviewed by Eric Seidel.
2226
2227         * Scripts/webkitpy/common/net/htdigestparser.py: Added.
2228         (HTDigestParser.__init__): Stores the parsed representation of the file.
2229         (HTDigestParser.authenticate): Hashes the username/realm/password tuple to generate a hashed
2230         password and returns whether the resulting tuple is present in the file.
2231         (HTDigestParser.entries): Just returns the parsed representation of the file.
2232         (HTDigestParser.parse_file): Splits each line on colons and checks that each line has the
2233         expected syntax ('username:realm:hashed_password'). If any line is invalid, we treat the
2234         whole file as invalid and all authentication attempts will fail.
2235
2236         * Scripts/webkitpy/common/net/htdigestparser_unittest.py: Added.
2237         (HTDigestParserTest.assertEntriesEqual): Helper method to assert that fake_htdigest_file,
2238         optionally appended with some extra data, generates the expected entries.
2239         (HTDigestParserTest.test_authenticate): Tests that tuples present in the file can
2240         authenticate, and tuples not present cannot.
2241         (HTDigestParserTest.test_entries): Tests that we get the expected entries from
2242         fake_htdigest_file.
2243
2244         (HTDigestParserTest.test_empty_file):
2245         (HTDigestParserTest.test_too_few_colons):
2246         (HTDigestParserTest.test_too_many_colons):
2247         (HTDigestParserTest.test_invalid_hash):
2248         Test various forms of invalid files.
2249
2250         (HTDigestParserTest.fake_htdigest_file): Returns a fake valid htdigest file for testing.
2251
2252 2011-12-01  Philippe Normand  <pnormand@igalia.com>
2253
2254         [GTK] Make the new 64-bit Release bot part of the core set
2255         https://bugs.webkit.org/show_bug.cgi?id=73570
2256
2257         Reviewed by Adam Roben.
2258
2259         The 64-bit Release bot re-introduced in r101676 replaces the 64-bit
2260         Debug bot which was already part of the core set. The GTK
2261         gardeners are willing to actively maintain it.
2262
2263         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
2264         (BuildBot.__init__):
2265         * Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
2266         (test_builder_name_regexps):
2267
2268 2011-12-01  Philippe Normand  <pnormand@igalia.com>
2269
2270         [GTK] Buildslave switch from 32-bit Debug to 64-bit Release
2271         https://bugs.webkit.org/show_bug.cgi?id=73547
2272
2273         Reviewed by Adam Roben.
2274
2275         * BuildSlaveSupport/build.webkit.org-config/config.json: Rename
2276         the 32-bit Debug configuration to 64-bit Release. The new slave is
2277         a 64-bit machine already. The 32-bit slave will be shut down.
2278
2279 2011-12-01  Martin Robinson  <mrobinson@igalia.com>
2280
2281         [GTK] build-jsc should not trigger gtkdoc generation
2282         https://bugs.webkit.org/show_bug.cgi?id=73552
2283
2284         Reviewed by Philippe Normand.
2285
2286         Do not generate gtkdoc when building projects other than WebKit. In particular, this ensures
2287         that build-jsc does not try to generate gtkdoc.
2288
2289         * Scripts/webkitdirs.pm:
2290         (buildAutotoolsProject): Only generate gtkdoc if the project is "WebKit".
2291
2292 2011-12-01  Kristóf Kosztyó  <kkristof@inf.u-szeged.hu>
2293
2294         tests_run0.txt gets clobbered when re-running failing tests
2295         https://bugs.webkit.org/show_bug.cgi?id=63844
2296
2297         Reviewed by Dirk Pranke.
2298
2299         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2300         (Manager.results_directory):
2301         * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
2302         (AbstractWorker.__init__):
2303         (_ManagerConnection.start_worker):
2304         (_InlineManager.start_worker):
2305         (_MultiProcessManager.start_worker):
2306         (_WorkerConnection.__init__):
2307         (_InlineWorkerConnection.__init__):
2308         (_MultiProcessWorkerConnection.__init__):
2309         * Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:
2310         (_TestWorker.__init__):
2311         (_TestsMixin.test_cancel):
2312         (_TestsMixin.test_done):
2313         (_TestsMixin.test_unknown_message):
2314         (InterfaceTest.test_managerconnection_is_abstract):
2315         (InterfaceTest.test_workerconnection_is_abstract):
2316         * Scripts/webkitpy/layout_tests/controllers/worker.py:
2317         (Worker.__init__):
2318         (Worker.safe_init):
2319         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2320         (MainTest.test_retries_directory):
2321
2322 2011-12-01  Adam Roben  <aroben@apple.com>
2323
2324         Buildbot fix
2325
2326         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Moved all of the initialization of
2327         BuildmasterConfig not performed by loadBuilderConfig up to the top of the file. This makes
2328         it possible for build steps to reference things like the buildbotURL property of the config.
2329
2330 2011-11-30  Adam Roben  <aroben@apple.com>
2331
2332         Use curl for downloading builds to test slaves
2333
2334         Buildbot's built-in file transfer capabilities are transferring files much more slowly than
2335         curl does. This seems to be due to a combination of buildbot being single-threaded (and thus
2336         often busy servicing web requests, etc.) and using an IPC mechanism with fairly high
2337         overhead (courtesy of the Twisted framework).
2338
2339         Eventually we'd like to make Buildbot's built-in transferring more efficient. In the
2340         meantime we'll try using curl for downloads and keep thinking about a solution for uploads.
2341         This should make the test slaves quite a bit faster, and should ease the CPU load on
2342         build.webkit.org a bit.
2343
2344         Part of <http://webkit.org/b/73484> Mac slaves take 7+ minutes to upload or download a build
2345
2346         Reviewed by Mark Rowe.
2347
2348         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Added the CreateWebKitBuildDirectory
2349         to Test slaves. It's run just before DownloadBuiltProduct.
2350         (DownloadBuiltProduct): Changed to be a normal ShellCommand that invokes curl to perform the
2351         download.
2352         (CreateWebKitBuildDirectory): Added. Creates the WebKitBuild directory on a slave.
2353         FileDownload used to do this for us automatically.
2354
2355 2011-11-21  Philippe Normand  <pnormand@igalia.com>
2356
2357         [GTK] enable-webaudio websetting
2358         https://bugs.webkit.org/show_bug.cgi?id=69836
2359
2360         Reviewed by Martin Robinson.
2361
2362         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
2363         (LayoutTestController::overridePreference): Update WebKitGTK
2364         enable-webaudio setting when a layout test requests it.
2365
2366 2011-11-30  Ilya Tikhonovsky  <loislo@chromium.org>
2367
2368         Web Inspector: chromium: I'd like to add a script for running perf tests for WebInspector.
2369         https://bugs.webkit.org/show_bug.cgi?id=73079
2370
2371         The idea is to have performance tests for WebInspector.
2372         I was suggested to put these tests into PerformanceTests/inspector.
2373         They produce output in a format that is suitable for chromium perf bot drawing scripts.
2374
2375         I'd like to reuse code for scanning folders for test files.
2376         Because of the fact that original test_files.py has common and layout specific parts
2377         I decided to extract the generic part and put it into webkitpy/common
2378         I think the two packages with name test_files look strange but I have no idea about a better name.
2379
2380         Reviewed by Dirk Pranke.
2381
2382         * Scripts/run-inspector-perf-tests.py: Added.
2383         * Scripts/webkitpy/common/find_files.py: Renamed from Tools/Scripts/webkitpy/layout_tests/port/test_files.py.
2384         (find):
2385         (_normalize):
2386         * Scripts/webkitpy/common/find_files_unittest.py: Added.
2387         (MockWinFileSystem.join):
2388         (MockWinFileSystem):
2389         (MockWinFileSystem.normpath):
2390         (TestWinNormalize.assert_filesystem_normalizes):
2391         (TestWinNormalize.test_mocked_win):
2392         (TestWinNormalize):
2393         (TestWinNormalize.test_win):
2394         * Scripts/webkitpy/layout_tests/port/base.py:
2395         (Port.tests):
2396         (Port.find_test_files):
2397         (Port._driver_class):
2398         (is_reference_html_file):
2399         (_has_supported_extension):
2400         * Scripts/webkitpy/layout_tests/port/base_unittest.py:
2401         (PortTest.test_find_no_paths_specified):
2402         (PortTest.test_find_one_test):
2403         (PortTest.test_find_glob):
2404         (PortTest.test_find_with_skipped_directories):
2405         (PortTest.test_find_with_skipped_directories_2):
2406         (PortTest):
2407         (PortTest.test_is_test_file):
2408         * Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
2409         (_tests):
2410         * Scripts/webkitpy/layout_tests/port/test.py:
2411         * Scripts/webkitpy/layout_tests/port/test_files_unittest.py: Removed.
2412         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
2413         * Scripts/webkitpy/performance_tests/__init__.py: Added.
2414         * Scripts/webkitpy/performance_tests/perftestsrunner.py: Added.
2415         (PerfTestsRunner.__init__):
2416         (PerfTestsRunner._parse_args):
2417         (PerfTestsRunner._collect_tests._is_test_file):
2418         (PerfTestsRunner._collect_tests):
2419         (PerfTestsRunner.run):
2420         (PerfTestsRunner._run_tests_set):
2421         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py: Added.
2422         (MainTest.TestPort):
2423         (MainTest.TestPort.create_driver):
2424         (MainTest.TestDriver.run_test):
2425         (MainTest.TestDriver):
2426         (MainTest.TestDriver.stop):
2427         (MainTest.create_runner):
2428         (MainTest.run_test):
2429         (MainTest.test_run_passing_test):
2430         (MainTest.test_run_silent_test):
2431         (MainTest.test_run_failed_test):
2432         (MainTest.test_run_tonguey_test):
2433         (MainTest.test_run_timeout_test):
2434         (MainTest.test_run_crash_test):
2435         (MainTest.test_run_test_set):
2436         (MainTest.test_collect_tests):
2437         (MainTest):
2438         (MainTest.test_parse_args):
2439         * Scripts/webkitpy/tool/commands/rebaseline.py:
2440         (OptimizeBaselines.execute):
2441         (AnalyzeBaselines.execute):
2442
2443 2011-11-30  nduca@chromium.org  <nduca@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
2444
2445         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
2446         https://bugs.webkit.org/show_bug.cgi?id=70838
2447
2448         Reviewed by James Robinson.
2449
2450         * DumpRenderTree/chromium/TestShell.cpp:
2451         (TestShell::resetWebSettings):
2452         * DumpRenderTree/chromium/TestShell.h:
2453         (TestShell::threadedCompositingEnabled):
2454         * DumpRenderTree/chromium/WebPreferences.cpp:
2455         (WebPreferences::reset):
2456         (WebPreferences::applyTo):
2457         * DumpRenderTree/chromium/WebPreferences.h:
2458         * DumpRenderTree/chromium/WebViewHost.cpp:
2459         (WebViewHost::WebViewHost):
2460         (WebViewHost::~WebViewHost):
2461
2462 2011-11-30  Chris Fleizach  <cfleizach@apple.com>
2463
2464         AX: Nodes are reporting that focus can be set when they really can't
2465         https://bugs.webkit.org/show_bug.cgi?id=72791
2466
2467         Reviewed by Beth Dakin.
2468
2469         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2470         (AccessibilityUIElement::isFocusable):
2471         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
2472         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2473         (WTR::AccessibilityUIElement::isFocusable):
2474
2475 2011-11-30  Alejandro G. Castro  <alex@igalia.com>
2476
2477         Moved myself to the reviewers list.
2478
2479         * Scripts/webkitpy/common/config/committers.py:
2480
2481 2011-11-30  David Levin  <levin@chromium.org>
2482
2483         [chromium] Move didUpdateLayout from WebFrameClient to WebViewClient.
2484         https://bugs.webkit.org/show_bug.cgi?id=73415
2485
2486         Reviewed by Darin Fisher.
2487
2488         * DumpRenderTree/chromium/WebViewHost.cpp:
2489         (WebViewHost::didUpdateLayout): Move didUpdateLayout to account for
2490         it being moved to a new interface and having the parameter removed.
2491         * DumpRenderTree/chromium/WebViewHost.h: Ditto.
2492
2493 2011-11-30  Adam Roben  <aroben@apple.com>
2494
2495         Make NRWT show DRT/WTR build logs when the build fails or --verbose is passed
2496
2497         This will make it a lot easier to investigate build failures on the bots.
2498
2499         Fixes <http://webkit.org/b/71160> NRWT doesn't show build output when building DRT
2500
2501         Reviewed by Eric Seidel.
2502
2503         * Scripts/webkitpy/common/system/executive_mock.py:
2504         (MockExecutive.run_command): Include the mock output in the ScriptError we raise since it
2505         makes the expected output in WebKitPortTest.test_build_driver more closely mimic the output
2506         seen in practice.
2507
2508         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
2509         (ManagerTest.test_http_locking): Pass False for the configure_logging parameter to Printer.
2510         The Printer was modifying the root logger in way that would cause my new tests in
2511         WebKitPort.test_build_driver to fail. The value of the configure_logging parameter doesn't
2512         seem important to the functioning of this test, and passing False makes Printer not modify
2513         the root logger.
2514
2515         * Scripts/webkitpy/layout_tests/port/webkit.py:
2516         (WebKitPort._run_script): Log the output of the command at the DEBUG level so it will show
2517         up when --verbose is passed but not otherwise.
2518         (WebKitPort._build_driver): When an error occurs, log the error message and the script's
2519         output at the ERROR level so it will always show up.
2520
2521         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
2522         (WebKitPortTest.test_build_driver): Test that nothing is logged in the normal, successful
2523         cases. Test that the build scripts' output is logged when --verbose is passed or the build
2524         fails.
2525
2526 2011-11-30  Adam Roben  <aroben@apple.com>
2527
2528         Add a way to set OutputCapture's log level
2529
2530         This will be used by some unit tests I'm planning to add.
2531
2532         Fixes <http://webkit.org/b/73469> OutputCapture can't be used to capture DEBUG messages
2533
2534         Reviewed by Eric Seidel.
2535
2536         * Scripts/webkitpy/common/system/outputcapture.py:
2537         (OutputCapture.__init__): Initialize our internal logging level to INFO, which was the only
2538         level we ever used before this patch.
2539         (OutputCapture.set_log_level): Added. This is useful for testing what log level code that is
2540         being tested uses. Sets the log level for any current or future logging handlers.
2541         (OutputCapture.capture_output): Use our internal logging level instead of always using INFO.
2542
2543         * Scripts/webkitpy/common/system/outputcapture_unittest.py: Added.
2544         (OutputCaptureTest.setUp): Create an OutputCapture to test.
2545         (OutputCaptureTest.log_all_levels): Helper method to log a message at each log level.
2546         (OutputCaptureTest.assertLogged): Helper method to assert that a particular set of strings
2547         was logged.
2548         (OutputCaptureTest.test_initial_log_level): Test that we start out at the INFO level.
2549         (OutputCaptureTest.test_set_log_level): Test that set_log_level correctly modifies the log
2550         level.
2551
2552 2011-11-29  Beth Dakin  <bdakin@apple.com>
2553
2554         https://bugs.webkit.org/show_bug.cgi?id=72751
2555         WebKit2.MouseMoveAfterCrash API test is failing 
2556
2557         Reviewed by Sam Weinig.
2558
2559         Like DumpRenderTree, the NSWindow should act as an active window.
2560         * TestWebKitAPI/mac/PlatformWebViewMac.mm:
2561         (-[ActiveOffscreenWindow isKeyWindow]):
2562         (TestWebKitAPI::PlatformWebView::PlatformWebView):
2563
2564 2011-11-30  Gustavo Noronha Silva  <gns@gnome.org>
2565
2566         Add step to update gtk dependencies to the buildbot
2567         https://bugs.webkit.org/show_bug.cgi?id=73455
2568
2569         Reviewed by Martin Robinson.
2570
2571         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2572
2573 2011-11-30  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2574
2575         [Qt] Add a fullscreen option to MiniBrowser.
2576         https://bugs.webkit.org/show_bug.cgi?id=73445
2577
2578         Reviewed by Noam Rosenthal.
2579
2580         This bypasses the compositor on the N9 to increase performances
2581         and remove the huge useless gray bar part of the window frame
2582         at the bottom.
2583
2584         * MiniBrowser/qt/BrowserWindow.cpp:
2585         (BrowserWindow::BrowserWindow):
2586         * MiniBrowser/qt/MiniBrowserApplication.cpp:
2587         (printHelp):
2588         (MiniBrowserApplication::handleUserOptions):
2589         * MiniBrowser/qt/MiniBrowserApplication.h:
2590         (WindowOptions::setStartFullScreen):
2591         (WindowOptions::startFullScreen):
2592
2593 2011-11-30  Martin Robinson  <mrobinson@igalia.com>
2594
2595         [GTK] Add an initial jhbuild setup which installs fonts into the WebKitBuild
2596         https://bugs.webkit.org/show_bug.cgi?id=73425
2597
2598         Reviewed by Gustavo Noronha Silva.
2599
2600         Add initial jhbuild support to the GTK+ port. update-webkitgtk-libs will
2601         ensure that the jhbuild root is up-to-date. Currently the only module is
2602         the font module.
2603
2604         * Scripts/update-webkitgtk-libs: Added.
2605         * gtk/common.py: Added a helper to get the number of CPUs.
2606         * gtk/jhbuild.modules: Added.
2607         * gtk/jhbuildrc: Added.
2608
2609 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
2610
2611         [Qt] Remove dependency of Qt DRT on JavaScriptCore.
2612
2613         Reviewed by Csaba Osztrogonác.
2614
2615         * DumpRenderTree/WorkQueue.cpp: Include the correct header file we're using anyway,
2616         instead of one that pulls in JavaScriptCore headers.
2617         * DumpRenderTree/qt/DumpRenderTree.pro: There's no need to pull in the JSC headers
2618         with load(javascriptcore).
2619
2620 2011-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
2621
2622         Unreviewed, rolling out r101440 and r101442.
2623         http://trac.webkit.org/changeset/101440
2624         http://trac.webkit.org/changeset/101442
2625         https://bugs.webkit.org/show_bug.cgi?id=73429
2626
2627         multiple crashes on layout tests (Requested by hayato on
2628         #webkit).
2629
2630         * DumpRenderTree/chromium/TestShell.cpp:
2631         (TestShell::resetWebSettings):
2632         * DumpRenderTree/chromium/TestShell.h:
2633         * DumpRenderTree/chromium/WebPreferences.cpp:
2634         (WebPreferences::reset):
2635         (WebPreferences::applyTo):
2636         * DumpRenderTree/chromium/WebPreferences.h:
2637         * DumpRenderTree/chromium/WebViewHost.cpp:
2638         (WebViewHost::WebViewHost):
2639         (WebViewHost::~WebViewHost):
2640
2641 2011-11-30  Fady Samuel  <fsamuel@chromium.org>
2642
2643         [Chromium] Fix broken DRT build for Aura Linux
2644         https://bugs.webkit.org/show_bug.cgi?id=72667
2645
2646         Reviewed by Tony Chang.
2647
2648         DRT now builds for Aura Linux. This, more or less, shares the same code as Android.
2649
2650         The following changes have been made:
2651
2652           1. Renamed TestShellAndroid to TestShellLinux.
2653           2. Stub code moved added in TestShellStub that will only compile on non-GTK Linux builds.
2654           3. Code common to Gtk, Aura, and Android moved to TestShellLinux.
2655
2656         * DumpRenderTree/DumpRenderTree.gypi:
2657         * DumpRenderTree/chromium/EventSender.cpp:
2658         (EventSender::keyDown):
2659         * DumpRenderTree/chromium/TestShellAndroid.cpp: Removed.
2660         * DumpRenderTree/chromium/TestShellGtk.cpp:
2661         * DumpRenderTree/chromium/TestShellLinux.cpp: Copied from Tools/DumpRenderTree/chromium/TestShellGtk.cpp.
2662         (AlarmHandler):
2663         (TestShell::waitTestFinished):
2664         (setupFontconfig):
2665         (platformInit):
2666         * DumpRenderTree/chromium/TestShellStub.cpp: Added.
2667         (checkLayoutTestSystemDependencies):
2668         (openStartupDialog):
2669
2670 2011-11-30  Fady Samuel  <fsamuel@chromium.org>
2671
2672         [Chromium] Set Result Before Early Exit for Fixed Layout Methods in LayoutTestController
2673         https://bugs.webkit.org/show_bug.cgi?id=73328
2674
2675         Reviewed by Kent Tamura.
2676
2677         * DumpRenderTree/chromium/LayoutTestController.cpp:
2678         (LayoutTestController::enableFixedLayoutMode):
2679         (LayoutTestController::setFixedLayoutSize):
2680
2681 2011-11-29  Hayato Ito  <hayato@chromium.org>
2682
2683         Skip writing the result of diff_image since non-chromium ports don't implement diff_image.
2684         https://bugs.webkit.org/show_bug.cgi?id=73381
2685
2686         Reviewed by Ryosuke Niwa.
2687
2688         This is a quick fix for the breakage of tests on non-chromium port.
2689         We should implement diff_image later on non-chromium ports.
2690
2691         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
2692         (write_test_result):
2693
2694 2011-11-29  Balazs Ankes  <Ankes.Balazs@stud.u-szeged.hu>
2695
2696         [NRWT] Fix --platform=qt-5.0 --new-baseline combo
2697         https://bugs.webkit.org/show_bug.cgi?id=72489
2698
2699         Reviewed by Eric Seidel.
2700
2701         Before the this fix always added "qt" option for the option list
2702         * Scripts/run-webkit-tests:
2703         * Scripts/webkitpy/layout_tests/port/qt.py:
2704
2705 2011-11-29  David Levin  <levin@chromium.org>
2706
2707         Add a way to revert a variable to its previous value after leaving a scope.
2708         https://bugs.webkit.org/show_bug.cgi?id=73371
2709
2710         Reviewed by Adam Barth.
2711
2712         * DumpRenderTree/ForwardingHeaders/wtf/TemporarilyChange.h: Added.
2713         * TestWebKitAPI/TestWebKitAPI.gypi: Added test file to the build.
2714         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
2715         * TestWebKitAPI/win/TestWebKitAPI.vcproj: Ditto.
2716         * TestWebKitAPI/Tests/WTF/TemporarilyChange.cpp: Added.
2717         (TestWebKitAPI::TEST): Added a test for TemporarilyChange.
2718
2719 2011-11-28  Kentaro Hara  <haraken@chromium.org>
2720
2721         Implement [Supplemental] IDL and support it in run-bindings-tests
2722         https://bugs.webkit.org/show_bug.cgi?id=73162
2723
2724         Reviewed by Adam Barth.
2725
2726         run-bindings-tests supports the [Supplemental] IDL in the following way.
2727             (1) It creates a file |x| listing all IDL files.
2728             (2) It generates a supplemental dependency file |y| using resolve-supplemental.pl and |x|.
2729             (3) For each IDL file |z|, it runs generate-bindings.pl with |y|.
2730                 Then, generate-bindings.pl generates .h and .cpp files for the IDL file |z|,
2731                 including all attributes in IDL files that are supplementing the IDL file |z|.
2732
2733         * Scripts/run-bindings-tests:
2734         (generate_from_idl):
2735         (generate_supplemental_dependency):
2736         (detect_changes):
2737         (run_tests):
2738         (main):
2739
2740 2011-11-18  Nat Duca  <nduca@chromium.org>
2741
2742         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
2743         https://bugs.webkit.org/show_bug.cgi?id=70838
2744
2745         Reviewed by James Robinson.
2746
2747         * DumpRenderTree/chromium/TestShell.cpp:
2748         (TestShell::resetWebSettings):
2749         * DumpRenderTree/chromium/TestShell.h:
2750         (TestShell::threadedCompositingEnabled):
2751         * DumpRenderTree/chromium/WebPreferences.cpp:
2752         (WebPreferences::reset):
2753         (WebPreferences::applyTo):
2754         * DumpRenderTree/chromium/WebPreferences.h:
2755         * DumpRenderTree/chromium/WebViewHost.cpp:
2756         (WebViewHost::WebViewHost):
2757         (WebViewHost::~WebViewHost):
2758
2759 2011-11-29  Ojan Vafai  <ojan@chromium.org>
2760
2761         List of builders in the flakiness dashboard is out of date
2762         https://bugs.webkit.org/show_bug.cgi?id=73347
2763
2764         Reviewed by Adam Barth.
2765
2766         The chromium gpu bots no longer run layout tests, so kill that
2767         group entirely.
2768
2769         * TestResultServer/static-dashboards/builders.js:
2770         * TestResultServer/static-dashboards/dashboard_base.js:
2771
2772 2011-11-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2773
2774         [Qt] Don't hard-code the list of WebKit2 generated sources
2775
2776         The generated sources are... wait for it... generated. So
2777         use the generator itself to figure out which sources we need
2778         to compile.
2779
2780         Reviewed by Simon Hausmann.
2781
2782         * qmake/mkspecs/features/default_post.prf:
2783
2784 2011-11-29  Martin Robinson  <mrobinson@igalia.com>
2785
2786         [GTK] Add a method to detect 'make dist' errors without running 'make dist'
2787         https://bugs.webkit.org/show_bug.cgi?id=73216
2788
2789         Reviewed by Philippe Normand.
2790
2791         Add a script that tries to sniff out 'make dist' problems without running
2792         'make dist.' 'make distcheck' takes a very long time to run and this should
2793         reduce the amount of times it needs to be run consecutively.
2794
2795         * gtk/common.py:
2796         (get_build_path.is_valid_build_directory): Guess the source directory
2797         by the existence of the GNUmakefile instead of the .libs directory. This
2798         allows one to run the script after running autogen.sh but before fully
2799         building.
2800         * gtk/find-make-dist-errors: Added.
2801
2802 2011-11-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2803
2804         [Qt] Remove use of internal headers in the MiniBrowser
2805
2806         Reviewed by Simon Hausmann.
2807
2808         * MiniBrowser/qt/MiniBrowser.pro:
2809
2810 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
2811
2812         [Qt] Fix debug-shlib build without webkit2
2813
2814         Reviewed by Tor Arne Vestbø.
2815
2816         * qmake/mkspecs/features/qtwebkit.prf: Respect no_webkit2.
2817
2818 2011-11-28  Csaba Osztrogonác  <ossy@webkit.org>
2819
2820         [Qt][WK2] Unreviewed buildfix after r101307.
2821
2822         * qmake/mkspecs/features/webkit2.prf: Add missing includepath.
2823
2824 2011-11-29  Roland Steiner  <rolandsteiner@chromium.org>
2825
2826         <style scoped>: add ENABLE(STYLE_SCOPED) flag to WebKit
2827         https://bugs.webkit.org/show_bug.cgi?id=72848
2828
2829         Add option to build-webkit.
2830
2831         Reviewed by Dimitri Glazkov.
2832
2833         * Scripts/build-webkit:
2834
2835 2011-11-28  Ojan Vafai  <ojan@chromium.org>
2836
2837         gtest normalization in the test results server is sometimes wrong
2838         https://bugs.webkit.org/show_bug.cgi?id=73262
2839
2840         Reviewed by Tony Chang.
2841
2842         If a gtest has it's modified changed (e.g. add FLAKY_) then it will have two
2843         entries in the incremental JSON, one of the entries will have the correct data
2844         from the run and the other will have dummy no-data values. Make sure to
2845         always pick the one with real data.
2846
2847         * TestResultServer/model/jsonresults.py:
2848         (JsonResults._remove_gtest_modifiers):
2849         * TestResultServer/model/jsonresults_unittest.py:
2850         (JsonResultsTest.test_remove_gtest_modifiers):
2851
2852 2011-11-28  Ojan Vafai  <ojan@chromium.org>
2853
2854         Some of the results.json files have results/times entries at the directory level
2855         https://bugs.webkit.org/show_bug.cgi?id=73261
2856
2857         Reviewed by Tony Chang.
2858
2859         This is just a bug that got introduced in a temporary push of the results server.
2860         This patch repairs the broken files. After all the bots have cycled, we can simplify
2861         this code to just assert that results/times are not at the directory level.
2862
2863         Also, when catching exceptions, log the full stacktrace.
2864
2865         * TestResultServer/model/jsonresults.py:
2866         (_is_directory):
2867         (JsonResults._load_json):
2868         (JsonResults._merge_tests):
2869         (JsonResults.merge):
2870         * TestResultServer/model/jsonresults_unittest.py:
2871         (JsonResultsTest.test_merge_directory_hierarchy_extra_results_and_times):
2872
2873 2011-11-28  Tony Chang  <tony@chromium.org>
2874
2875         ews bots should pass --force to update-webkit-chromium
2876         https://bugs.webkit.org/show_bug.cgi?id=73230
2877
2878         Reviewed by Adam Barth.
2879
2880         This makes it less likely for gclient changes to break the bots (e.g.,
2881         if a DEPS repository moves or is switched to a branch).
2882
2883         Also pass --force when using |build-webkit --update-chromium| since this
2884         appears to only be used by the bots.
2885
2886         Take 2: Add Options.non_interactive to update.py's options() method.
2887
2888         * Scripts/update-webkit:
2889         * Scripts/webkitdirs.pm:
2890         (determineIsChromium): Add --force-update to update-webkit --chromium.
2891         (forceChromiumUpdate):
2892         (buildChromium): Pass --force to update-webkit-chromium.
2893         * Scripts/webkitpy/tool/steps/update.py:
2894         (Update.run): Add --force-update if non-interactive (i.e., bots).
2895         * Scripts/webkitpy/tool/steps/update_unittest.py:
2896
2897 2011-11-28  Tony Chang  <tony@chromium.org>
2898
2899         Revert r101279, broke the ews and cq bots.
2900
2901         * Scripts/update-webkit:
2902         * Scripts/webkitdirs.pm:
2903         (determineIsChromium):
2904         (buildChromium):
2905         * Scripts/webkitpy/common/config/ports.py:
2906         (WebKitPort.update_webkit_command):
2907         (ChromiumPort.update_webkit_command):
2908         * Scripts/webkitpy/common/config/ports_mock.py:
2909         (MockPort.update_webkit_command):
2910         * Scripts/webkitpy/tool/steps/update.py:
2911         * Scripts/webkitpy/tool/steps/update_unittest.py: Removed.
2912
2913 2011-11-28  Ojan Vafai  <ojan@chromium.org>
2914
2915         testlistjson on the test results server doesn't understand hierarchical results format
2916         https://bugs.webkit.org/show_bug.cgi?id=73246
2917
2918         Reviewed by Tony Chang.
2919
2920         * TestResultServer/model/jsonresults.py:
2921         (JsonResults._delete_results_and_times):
2922         Instead of just getting the top-level keys, we now walk the tests tree and
2923         delete the results and times values.
2924
2925         * TestResultServer/model/jsonresults_unittest.py:
2926         Simplify the test harness to take in the same JSON format for the tests
2927         that the actual results.json uses instead of something very similar but
2928         needlessly different. This also allows for testing the broken case of
2929         results and times values being at non-leaf level.
2930
2931 2011-11-28  Tony Chang  <tony@chromium.org>
2932
2933         ews bots should pass --force to update-webkit-chromium
2934         https://bugs.webkit.org/show_bug.cgi?id=73230
2935
2936         Reviewed by Adam Barth.
2937
2938         This makes it less likely for gclient changes to break the bots (e.g.,
2939         if a DEPS repository moves or is switched to a branch).
2940
2941         Also pass --force when using |build-webkit --update-chromium| since this
2942         appears to only be used by the bots.
2943
2944         * Scripts/update-webkit:
2945         * Scripts/webkitdirs.pm:
2946         (determineIsChromium): Add --force-update to update-webkit --chromium.
2947         (forceChromiumUpdate):
2948         (buildChromium): Pass --force to update-webkit-chromium.
2949         * Scripts/webkitpy/tool/steps/update.py:
2950         (Update.run): Add --force-update if non-interactive (i.e., bots).
2951         * Scripts/webkitpy/tool/steps/update_unittest.py:
2952
2953 2011-11-28  Michael Saboff  <msaboff@apple.com>
2954
2955         Fixed help message for --exclude-kraken to say that
2956         it excludes Kraken and not SunSpider.
2957
2958         Rubber-stamped by Filip Pizlo.
2959
2960         * Scripts/bencher:
2961
2962 2011-11-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2963
2964         Unreviewed, rolling out r101273.
2965         http://trac.webkit.org/changeset/101273
2966         https://bugs.webkit.org/show_bug.cgi?id=73244
2967
2968         multiple test failures and timeouts (Requested by tony^work on
2969         #webkit).
2970
2971         * DumpRenderTree/DumpRenderTree.gypi:
2972         * DumpRenderTree/chromium/EventSender.cpp:
2973         (EventSender::keyDown):
2974         * DumpRenderTree/chromium/TestShellAndroid.cpp: Copied from Tools/DumpRenderTree/chromium/TestShellGtk.cpp.
2975         (AlarmHandler):
2976         (TestShell::waitTestFinished):
2977         (platformInit):
2978         (openStartupDialog):
2979         (checkLayoutTestSystemDependencies):
2980         * DumpRenderTree/chromium/TestShellGtk.cpp:
2981         (AlarmHandler):
2982         (setupFontconfig):
2983         (TestShell::waitTestFinished):
2984         (platformInit):
2985         * DumpRenderTree/chromium/TestShellLinux.cpp: Removed.
2986         * DumpRenderTree/chromium/TestShellStub.cpp: Removed.
2987
2988 2011-11-28  John Yani  <vanuan@gmail.com>
2989
2990         new-run-webkit-tests is locale dependent
2991         https://bugs.webkit.org/show_bug.cgi?id=68691
2992
2993         Reviewed and modified by Eric Seidel.
2994
2995         This is a simpler version of John's patch which I'm landing.
2996         This just engages the hacks from the Host constructor on a global
2997         basis.
2998
2999         * Scripts/webkitpy/common/host.py:
3000         (Host.__init__):
3001         (Host._engage_awesome_locale_hacks):
3002
3003 2011-11-28  Fady Samuel  <fsamuel@chromium.org>
3004
3005         [Chromium] Fix broken DRT build for Aura Linux
3006         https://bugs.webkit.org/show_bug.cgi?id=72667
3007
3008         Reviewed by Tony Chang.
3009
3010         DRT now builds for Aura Linux. This, more or less, shares the same code as Android.
3011
3012         The following changes have been made:
3013
3014           1. Renamed TestShellAndroid to TestShellLinux.
3015           2. Stub code moved added in TestShellStub that will only compile on non-GTK Linux builds.
3016           3. Code common to Gtk, Aura, and Android moved to TestShellLinux.
3017
3018         * DumpRenderTree/DumpRenderTree.gypi:
3019         * DumpRenderTree/chromium/EventSender.cpp:
3020         (EventSender::keyDown):
3021         * DumpRenderTree/chromium/TestShellAndroid.cpp: Removed.
3022         * DumpRenderTree/chromium/TestShellGtk.cpp:
3023         * DumpRenderTree/chromium/TestShellLinux.cpp: Copied from Tools/DumpRenderTree/chromium/TestShellGtk.cpp.
3024         (AlarmHandler):
3025         (TestShell::waitTestFinished):
3026         (setupFontconfig):
3027         (platformInit):
3028         * DumpRenderTree/chromium/TestShellStub.cpp: Added.
3029         (checkLayoutTestSystemDependencies):
3030         (openStartupDialog):
3031
3032 2011-11-28  Eric Seidel  <eric@webkit.org>
3033
3034         Add Environment object to Host and fix the GCC smartquotes trouble seen on the commit-queue
3035         https://bugs.webkit.org/show_bug.cgi?id=71983
3036
3037         Reviewed by Adam Barth.
3038
3039         We'll add more code to Environment overtime,
3040         allowing us to mock out more of our direct interactions with os.environ.
3041
3042         This patch also makes run_command print the passed in environment.
3043
3044         * Scripts/webkitpy/common/host_mock.py:
3045         * Scripts/webkitpy/common/system/environment.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
3046         * Scripts/webkitpy/common/system/environment_mock.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
3047         * Scripts/webkitpy/common/system/environment_unittest.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
3048         * Scripts/webkitpy/common/system/executive.py:
3049         * Scripts/webkitpy/common/system/executive_mock.py:
3050         * Scripts/webkitpy/layout_tests/port/webkit.py:
3051         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
3052         * Scripts/webkitpy/tool/commands/download_unittest.py:
3053         * Scripts/webkitpy/tool/steps/build.py:
3054
3055 2011-11-28  Simon Hausmann  <simon.hausmann@nokia.com>
3056
3057         [Qt] Build system fixes against V8.
3058
3059         Reviewed by Tor Arne Vestbø.
3060
3061         * qmake/mkspecs/features/webcore.prf: Get rid of old v8 cruft.
3062         * qmake/mkspecs/features/wtf.prf: If requested, pull in v8 from Qt and configure
3063         WTF accordingly to use v8. (WTF in the implementation needs it as well as users of WTF)
3064
3065 2011-11-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3066
3067         Make sure the useFixedLayout feature is consistently handled
3068         https://bugs.webkit.org/show_bug.cgi?id=73212
3069
3070         Reviewed by Simon Hausmann.
3071
3072         The web page parameters are set to our Qt defaults and are now altered
3073         in the WebKitTestRunner.
3074
3075         * WebKitTestRunner/qt/PlatformWebViewQt.cpp:
3076         (WTR::WrapperWindow::WrapperWindow):
3077
3078 2011-11-28  Simon Hausmann  <simon.hausmann@nokia.com>
3079
3080         [Qt] WTF should be built as separate static library
3081         https://bugs.webkit.org/show_bug.cgi?id=73201
3082
3083         Reviewed by Tor Arne Vestbø.
3084
3085         * DumpRenderTree/qt/DumpRenderTree.pro: Require wtf.
3086         * MiniBrowser/qt/BrowserWindow.cpp: Remove unnecessary config.h inclusion and
3087         thus wtf dependency.
3088         * WebKitTestRunner/InjectedBundle/Target.pri: Require wtf.
3089         * WebKitTestRunner/Target.pri: Ditto.
3090         * qmake/mkspecs/features/default_post.prf: When re-ordering the static libs
3091         consider wtf, too.
3092         * qmake/mkspecs/features/javascriptcore.prf: Remove WTF specific build stuff,
3093         moved into wtf.prf.
3094         * qmake/mkspecs/features/qtwebkit.prf: For debug builds with shared libs, also
3095         link in libwtf.
3096         * qmake/mkspecs/features/wtf.prf: Added. Stuff needed for building and using WTF.
3097
3098 2011-11-28  Kentaro Hara  <haraken@chromium.org>
3099
3100         run-bindings-tests shows diff error for a newly added binding test
3101         https://bugs.webkit.org/show_bug.cgi?id=73179
3102
3103         Reviewed by Adam Barth.
3104
3105         Currently, when we add a new binding test, say bindings/scripts/test/TestSupplemental.idl,
3106         run-bindings-tests just shows diff error because reference files
3107         (i.e. {V8,JS,...}TestSupplemental.h and {V8,JS,...}TestSupplemental.cpp) do not yet exist:
3108
3109             FAIL: (V8) V8TestSupplemental.h
3110             diff: WebCore/bindings/scripts/test/V8/V8TestSupplemental.h: No such file or directory
3111
3112         Instead, this patch treats a non-existent reference file as an empty file and
3113         shows the result of the newly added binding test, like this:
3114
3115             FAIL: (V8) V8TestSupplemental.h
3116             --- WebCore/bindings/scripts/test/V8/V8TestSupplemental.h       1970-01-01 09:00:00.000000000 +0900
3117             +++ /tmp/tmpmX2i2F/V8TestSupplemental.h 2011-11-28 11:08:34.150707677 +0900
3118             @@ -0,0 +1,84 @@
3119             +/*
3120             +    This file is part of the WebKit open source project.
3121             +    This file has been generated by generate-bindings.pl. DO NOT MODIFY!
3122             +
3123             (omitted)
3124
3125         * Scripts/run-bindings-tests:
3126         (detect_changes): Just added an -N option to the diff command.
3127
3128 2011-11-28  Martin Robinson  <mrobinson@igalia.com>
3129
3130         [Gtk][gtkdoc] Syntax error in Tools/gtk/generate-gtkdoc
3131         https://bugs.webkit.org/show_bug.cgi?id=73165
3132
3133         Reviewed by Philippe Normand.
3134
3135         Fix some syntax errors in this script and remove an unused variable.
3136
3137         * gtk/generate-gtkdoc:
3138         (get_webkit2_options.src_path): 
3139         (get_webkit2_options):
3140         (get_webkit1_options.src_path):
3141
3142 2011-11-26  Kevin Ollivier  <kevino@theolliviers.com>
3143
3144         [wx] Unreviewed build fix. Enable the inspector.
3145         
3146         * waf/build/settings.py:
3147
3148 2011-11-26  Martin Robinson  <mrobinson@igalia.com>
3149
3150         Try to fix the build after r101174.
3151
3152         * gtk/generate-gtkdoc: Properly handle empty PKG_CONFIG_PATHs.
3153
3154 2011-11-17  Martin Robinson  <mrobinson@igalia.com>
3155
3156         [GTK] Integrate build-gtkdoc into build-webkit and make
3157         https://bugs.webkit.org/show_bug.cgi?id=72626
3158
3159         Reviewed by Philippe Normand.
3160
3161         * GNUmakefile.am: Added support for new scripts and "make docs".
3162         * Scripts/webkitdirs.pm: Call generate-gtkdoc when building.
3163         (buildAutotoolsProject):
3164         * gtk/generate-gtkdoc: Added.
3165         * gtk/gtkdoc.py: Renamed from Source/WebKit2/UIProcess/API/gtk/docs/gtkdoc.py.
3166
3167 2011-11-25  Ádám Kallai  <Kallai.Adam@stud.u-szeged.hu>
3168
3169         [Qt] Add support for using OWRT with Qt5
3170         https://bugs.webkit.org/show_bug.cgi?id=72947
3171
3172         Add qt-5.0 platform and don't pass -graphicssystem to QtTestBrowser if using Qt5.
3173
3174         Reviewed by Csaba Osztrogonác.
3175
3176         * Scripts/old-run-webkit-tests:
3177
3178 2011-11-25  Yury Semikhatsky  <yurys@chromium.org>
3179
3180         [Chromium] Web Inspector: get rid of WebDevToolsFrontendClient::sendFrontendLoaded method
3181         https://bugs.webkit.org/show_bug.cgi?id=73126
3182
3183         No need to have a separate client call for this. The front-end can store messages
3184         which arrive before front-end loaded and dispatch them later. This happens in layout
3185         tests only by the way as all other messages should be initiated by the front-end code.
3186
3187         Reviewed by Pavel Feldman.
3188
3189         * DumpRenderTree/chromium/DRTDevToolsAgent.cpp:
3190         * DumpRenderTree/chromium/DRTDevToolsAgent.h:
3191         * DumpRenderTree/chromium/DRTDevToolsClient.cpp:
3192         * DumpRenderTree/chromium/DRTDevToolsClient.h:
3193
3194 2011-11-24  Kentaro Hara  <haraken@chromium.org>
3195
3196         Replace subprocess.call() with subprocess.Popen()
3197         https://bugs.webkit.org/show_bug.cgi?id=73105
3198
3199         Reviewed by Adam Barth.
3200
3201         Currently, the stdout and stderr of the child processes of run-bindings-tests
3202         are mixed (or even gone away) with the stdout and stderr of run-bindings-tests itself.
3203         This is the problem of subprocess.call(), which does not synchronize the stdout and stderr
3204         between a parent process and a child process. This patch replaces subprocess.call() with
3205         subprocess.Popen() and synchronizes the stdout and stderr between them.
3206         This patch also makes output messages of run-bindings-tests more readable.
3207
3208         With this patch, the output messages of run-bindings-tests look like as follows:
3209
3210             PASS: (CPP) WebDOMTestObj.h
3211             PASS: (CPP) WebDOMTestObj.cpp
3212             FAIL: (CPP) WebDOMTestInterface.h
3213             --- Source/WebCore/bindings/scripts/test/CPP/WebDOMTestInterface.h      2011-11-25 13:34:09.313516268 +0900
3214             +++ /tmp/tmpDAV87G/WebDOMTestInterface.h        2011-11-25 13:44:42.712946812 +0900
3215             @@ -23,7 +23,7 @@
3216              #ifndef WebDOMTestInterface_h
3217              #define WebDOMTestInterface_h
3218
3219             -#if ENABLE(Condition1) || ENABLE(Condition2)
3220             +#if ENABLE(Condition1) || ENABLE(Condition3)
3221
3222              #include <WebDOMObject.h>
3223              #include <WebDOMString.h>
3224              @@ -53,5 +53,5 @@
3225              WebDOMTestInterface toWebKit(WebCore::TestInterface*);
3226
3227              #endif
3228             -#endif // ENABLE(Condition1) || ENABLE(Condition2)
3229             +#endif // ENABLE(Condition1) || ENABLE(Condition3)
3230             PASS: (CPP) WebDOMFloat64Array.cpp
3231             PASS: (CPP) WebDOMFloat64Array.h
3232
3233             Some tests FAIL! (To update the reference files, execute "run-bindings-tests --reset-results")
3234
3235         * Scripts/run-bindings-tests:
3236         (generate_from_idl):
3237         (detect_changes):
3238         (run_tests):
3239         (main):
3240
3241 2011-11-24  Kentaro Hara  <haraken@chromium.org>
3242
3243         Fix the current working directory of run-bindings-tests
3244         https://bugs.webkit.org/show_bug.cgi?id=73106
3245
3246         Reviewed by Adam Barth.
3247
3248         Currently, run-bindings-tests outputs the following error
3249         (although it outputs "all tests passed!" in the end):
3250
3251             Testing the ObjC generator on TestObj.idl
3252             gcc: WebCore/bindings/objc/PublicDOMInterfaces.h: No such file or directory
3253             gcc: warning: '-x objective-c' after last input file has no effect
3254             gcc: no input files
3255
3256         This is because CodeGeneratorObjC.pm assumes that the current working directory
3257         is WebKit/Source/, but run-bindings-tests sets the current working directory to WebKit/.
3258         Thus, this patch changes it to WebKit/Source/.
3259
3260         * Scripts/run-bindings-tests:
3261         (generate_from_idl):
3262         (main):
3263
3264 2011-11-24  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3265
3266         [Qt] Get rid of the buildDirForSource() function in the build system
3267
3268         At some point the plan was to allow for running qmake on sub-trees
3269         of the sources, into the top level build directory, but this is no
3270         longer possible, so no reason to keep the convenience function around.
3271
3272         Reviewed by Simon Hausmann.
3273
3274         * WebKitTestRunner/DerivedSources.pri:
3275         * WebKitTestRunner/InjectedBundle/DerivedSources.pri:
3276         * qmake/mkspecs/features/default_post.prf:
3277         * qmake/mkspecs/features/default_pre.prf:
3278         * qmake/mkspecs/features/functions.prf:
3279         * qmake/mkspecs/features/javascriptcore.prf:
3280         * qmake/mkspecs/features/webcore.prf:
3281         * qmake/mkspecs/features/webkit2.prf:
3282
3283 2011-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3284
3285         Unreviewed, rolling out r101107.
3286         http://trac.webkit.org/changeset/101107
3287         https://bugs.webkit.org/show_bug.cgi?id=73062
3288
3289         Breaks the commit-queue (Requested by abarth on #webkit).
3290
3291         * Scripts/webkitpy/common/host.py:
3292         (Host._engage_awesome_windows_hacks):
3293         * Scripts/webkitpy/common/host_mock.py:
3294         (MockHost.__init__):
3295         * Scripts/webkitpy/common/system/environment.py: Removed.
3296         * Scripts/webkitpy/common/system/environment_unittest.py: Removed.
3297         * Scripts/webkitpy/common/system/executive.py:
3298         (Executive._run_command_with_teed_output):
3299         (Executive.run_and_throw_if_fail):
3300         * Scripts/webkitpy/common/system/executive_mock.py:
3301         (MockExecutive.run_and_throw_if_fail):
3302         (MockExecutive.run_command):
3303         * Scripts/webkitpy/layout_tests/port/webkit.py:
3304         (WebKitPort._driver_build_script_name):
3305         (WebKitPort._run_script):
3306         (WebKitPort._build_driver):
3307         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
3308         (test_build_driver):
3309         * Scripts/webkitpy/tool/commands/download_unittest.py:
3310         * Scripts/webkitpy/tool/steps/build.py:
3311         (Build.build):
3312
3313 2011-11-23  Ojan Vafai  <ojan@chromium.org>
3314
3315         Unreviewed, rolling out r101110.
3316         http://trac.webkit.org/changeset/101110
3317         https://bugs.webkit.org/show_bug.cgi?id=73057
3318
3319         The bots have now cycled and this patch is no longer needed.
3320
3321         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3322         (Manager._upload_json_files):
3323
3324 2011-11-23  Ojan Vafai  <ojan@chromium.org>
3325
3326         Temporarily save the incremental results json in order to identify bug
3327         https://bugs.webkit.org/show_bug.cgi?id=73057
3328
3329         Reviewed by Dean Jackson.
3330
3331         The test results server needed to be rolled back from tip of tree
3332         due to a JSON merging bug. It's hard to identify what the bug is without
3333         the raw data.
3334
3335         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3336         (Manager._upload_json_files):
3337
3338 2011-11-23  Ojan Vafai  <ojan@chromium.org>
3339
3340         Merging two version 4 results hits an error in the test results server
3341         https://bugs.webkit.org/show_bug.cgi?id=73042
3342
3343         Reviewed by Adam Barth.
3344
3345         The old code assumed that if the aggregate results value was not a leaf
3346         value that the incremental results would exist, which is just totally
3347         wrong. Added a test for that case as well.
3348
3349         * TestResultServer/model/jsonresults.py:
3350         (JsonResults._merge_tests):
3351         * TestResultServer/model/jsonresults_unittest.py:
3352         (JsonResultsTest.test_merge_build_directory_hierarchy_old_version):
3353         (JsonResultsTest.test_merge_build_directory_hierarchy):
3354
3355 2011-11-23  Eric Seidel  <eric@webkit.org>
3356
3357         Add Environment object to Host and fix the GCC smartquotes trouble seen on the commit-queue
3358         https://bugs.webkit.org/show_bug.cgi?id=71983
3359
3360         Reviewed by Adam Barth.
3361
3362         We'll add more code to Environment overtime,
3363         allowing us to mock out more of our direct interactions with os.environ.
3364
3365         This patch also makes run_command print the passed in environment.
3366
3367         * Scripts/webkitpy/common/host_mock.py:
3368         * Scripts/webkitpy/common/system/environment.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
3369         * Scripts/webkitpy/common/system/environment_mock.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
3370         * Scripts/webkitpy/common/system/environment_unittest.py: Copied from Tools/Scripts/webkitpy/tool/steps/build.py.
3371         * Scripts/webkitpy/common/system/executive.py:
3372         * Scripts/webkitpy/common/system/executive_mock.py:
3373         * Scripts/webkitpy/layout_tests/port/webkit.py:
3374         * Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
3375         * Scripts/webkitpy/tool/commands/download_unittest.py:
3376         * Scripts/webkitpy/tool/steps/build.py:
3377
3378 2011-11-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3379
3380         [Qt] Re-generate QtWebKit API forwarding headers when API changes
3381
3382         The forwarding headers are generated by syncqt, and syncqt is run by qmake,
3383         so we need sync.profile to live in the same directory as the project file
3384         that will be touched when adding/removing API (api.pri in our case).
3385
3386         Since the WebKit2 APIs live in a separate static library, we have to
3387         add the project file for WebKit2 as a dependency of the api.pri file
3388         as well, so that any changes to the WebKit2 API will still trigger a
3389         run of qmake (and then syncqt).
3390
3391         Lastly, we use the new QMAKE_SYNCQT_OUTDIR variable in Qt 5 to ensure
3392         that the forwarding headers are still generated in the root build dir,
3393         not in the Source dir along with the internal forwarding headers.
3394
3395         Reviewed by Andreas Kling.
3396
3397         * qmake/mkspecs/features/default_pre.prf:
3398         * qmake/mkspecs/features/functions.prf:
3399
3400 2011-11-23  Johnny Ding  <jnd@chromium.org>
3401
3402         Set right default value to baseURL in LayoutTestController::queueLoadHTMLString.
3403         https://bugs.webkit.org/show_bug.cgi?id=72950
3404
3405         Reviewed by Tony Chang.
3406
3407         * DumpRenderTree/chromium/LayoutTestController.cpp:
3408         (LayoutTestController::queueLoadHTMLString):
3409
3410 2011-11-23  Adam Barth  <abarth@webkit.org>
3411
3412         garden-o-matic should display a message if it can't find results to display
3413         https://bugs.webkit.org/show_bug.cgi?id=72991
3414
3415         Reviewed by Dimitri Glazkov.
3416
3417         Not all failures (e.g., TIMEOUT) have results that we can display.
3418         This patch adds a short message so that the user can see that we're
3419         done trying to load the results.
3420
3421         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
3422         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
3423         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
3424
3425 2011-11-23  Adam Barth  <abarth@webkit.org>
3426
3427         garden-o-matic should explain more clearly what the builder lists at the top of the page mean
3428         https://bugs.webkit.org/show_bug.cgi?id=72992
3429
3430         Reviewed by Dimitri Glazkov.
3431
3432         This patch also prepares us to list other sorts of failures, like
3433         performance and unit test.
3434
3435         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
3436         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
3437         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js:
3438         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
3439
3440 2011-11-23  Ryan Sleevi  <rsleevi@chromium.org>
3441
3442         Add new Chromium tests to the flakiness dashboard
3443         https://bugs.webkit.org/show_bug.cgi?id=72997
3444
3445         Reviewed by Ojan Vafai.
3446
3447         * TestResultServer/static-dashboards/dashboard_base.js:
3448         ():
3449
3450 2011-11-23  Adam Barth  <abarth@webkit.org>
3451
3452         garden-o-matic should support AUDIO failures
3453         https://bugs.webkit.org/show_bug.cgi?id=69477
3454
3455         Reviewed by Dimitri Glazkov.
3456
3457         This is a first iteration at supporting AUDIO failures in
3458         garden-o-matic.  We'll probably need to iterate a bit when we have a
3459         real audio failure in the tree to play with.  For example, we'll
3460         probably want to add and <audio> element to the "Examine" view to hear
3461         the differences, but that all can be done in a subsequent patch.
3462
3463         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/results.js:
3464
3465 2011-11-23  Scott Graham  <scottmg@chromium.org>
3466
3467         Adding gamepad support
3468         https://bugs.webkit.org/show_bug.cgi?id=69451
3469
3470         Reviewed by Darin Fisher.
3471
3472         Add a 'gamepadController' to Chromium DRT. Allows for setting of mock
3473         gamepad data that will be retrieved when JS code pulls via API access.
3474
3475         * DumpRenderTree/DumpRenderTree.gypi:
3476         * DumpRenderTree/chromium/GamepadController.cpp: Added.
3477         (GamepadController::GamepadController):
3478         (GamepadController::bindToJavascript):
3479         (GamepadController::reset):
3480         (GamepadController::connect):
3481         (GamepadController::disconnect):
3482         (GamepadController::setId):
3483         (GamepadController::setButtonCount):
3484         (GamepadController::setButtonData):
3485         (GamepadController::setAxisCount):
3486         (GamepadController::setAxisData):
3487         (GamepadController::fallbackCallback):
3488         * DumpRenderTree/chromium/GamepadController.h: Added.
3489         * DumpRenderTree/chromium/TestShell.cpp:
3490         (TestShell::TestShell):
3491         (TestShell::resetTestController):
3492         (TestShell::bindJSObjectsToWindow):
3493         * DumpRenderTree/chromium/TestShell.h:
3494         (TestShell::gamepadController):
3495
3496 2011-11-23  Raphael Kubo da Costa  <kubo@profusion.mobi>
3497
3498         [CMake] Move the top-level logic to the top-level directory.
3499         https://bugs.webkit.org/show_bug.cgi?id=72685
3500
3501         Reviewed by Brent Fulgham.
3502
3503         * CMakeLists.txt: Added.
3504         * DumpRenderTree/efl/CMakeLists.txt: Keep building into Programs/.
3505         * EWebLauncher/CMakeLists.txt: Renamed from Tools/CMakeListsEfl.txt.
3506         * Scripts/webkitdirs.pm:
3507         (generateBuildSystemFromCMakeProject):
3508         * WinCELauncher/CMakeLists.txt: Renamed from Tools/CMakeListsWinCE.txt.
3509
3510 2011-11-17  Vincent Scheib  <scheib@chromium.org>
3511
3512         Pointer Lock: Initial Tests for navigator.webkitPonter
3513         https://bugs.webkit.org/show_bug.cgi?id=72659
3514
3515         Reviewed by Darin Fisher.
3516
3517         * DumpRenderTree/chromium/TestShell.cpp:
3518         (TestShell::TestShell):
3519             Enabling PointerLock in TestShell
3520
3521 2011-11-22  Ryan Sleevi  <rsleevi@chromium.org>
3522
3523         Update flakiness dashboard for new Chromium builders and tests
3524         https://bugs.webkit.org/show_bug.cgi?id=72931
3525
3526         Reviewed by Ojan Vafai.
3527
3528         * TestResultServer/static-dashboards/builders.js:
3529         * TestResultServer/static-dashboards/dashboard_base.js:
3530
3531 2011-11-22  Adam Roben  <aroben@apple.com>
3532
3533         Remove some debugging code I accidentally left in r101005
3534
3535         * Scripts/prepare-ChangeLog:
3536         (get_function_line_ranges_for_python):
3537
3538 2011-11-22  Adam Roben  <aroben@apple.com>
3539
3540         Teach prepare-ChangeLog how to find changed classes/methods/functions in Python files
3541
3542         Fixes <http://webkit.org/b/57008> prepare-ChangeLog doesn't find names of modified
3543         classes/methods in Python source files
3544
3545         Reviewed by Dan Bates.
3546
3547         * Scripts/prepare-ChangeLog:
3548         (get_function_line_ranges): Call get_function_line_ranges_for_python for files ending in .py
3549         or that use python as their interpreter. Modified the code that extracts the interpreter to
3550         ignore a leading "/usr/bin/env " in the interpreter line, as is common for our Python
3551         scripts.
3552         (get_function_line_ranges_for_python): Added. Does simple parsing of Python files to look
3553         for class/def lines and generate ranges based on them.
3554
3555 2011-11-21  Yuta Kitamura  <yutak@chromium.org>
3556
3557         [GTK] Enable WebSocket hybi tests
3558         https://bugs.webkit.org/show_bug.cgi?id=72870
3559
3560         Reviewed by Xan Lopez.
3561
3562         * DumpRenderTree/gtk/DumpRenderTree.cpp:
3563         (resetDefaultsToConsistentValues):
3564         Reset the setting value to the default value (true).
3565         * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
3566         (LayoutTestController::overridePreference):
3567         Change the setting value through a function in DumpRenderTreeSupportGtk.
3568
3569 2011-11-21  Ryosuke Niwa  <rniwa@webkit.org>
3570
3571         ChangeLogEntry should be able to parse entries with multiple authors
3572         https://bugs.webkit.org/show_bug.cgi?id=72690
3573
3574         Reviewed by Eric Seidel.
3575
3576         Support multi-author change log entries in ChangeLogEntry. Split author names using
3577         the same logic as splitting reviewer names. _authors now stores list of dictionaries
3578         with "name" and "email" as keys. Unlike reviewers, we can't always resolve authors to
3579         accounts because some contributors are never listed in committers.py. 
3580
3581         * Scripts/webkitpy/common/checkout/changelog.py:
3582         * Scripts/webkitpy/common/checkout/changelog_unittest.py:
3583         * Scripts/webkitpy/common/config/committers.py: Fixed a bug that *_by_{name|email}
3584         throws an exception when the argument is None.
3585
3586 2011-11-21  Simon Hausmann  <simon.hausmann@nokia.com>
3587
3588         [Qt] Speed up debug builds.
3589         https://bugs.webkit.org/show_bug.cgi?id=72882
3590
3591         Reviewed by Tor Arne Vestbø.
3592
3593         Introduce a special type of build that replaces the static jsc/wc/wk2
3594         static libraries with shared libraries, that individually are much faster
3595         to link and don't require relinking into the big library when changing just
3596         one file in one module. It can be enabled with
3597         --qmakearg="CONFIG+=force_static_libs_as_shared"
3598
3599         * qmake/mkspecs/features/force_static_libs_as_shared.prf: Added. With this configuration,
3600         disable symbol visibility, static linkage and enable rpath.
3601         * qmake/mkspecs/features/functions.prf: Add a helper function to determine if
3602         we need to link the convenience libraries together or not and renamed linkStaticLibrary
3603         to just linkLibrary (because linkage is not necessarily static).
3604         * qmake/mkspecs/features/qtwebkit.prf: When using the trick, make sure to also
3605         link against jsc/wc/wk2 when linking app code against QtWebKit.
3606         * qmake/mkspecs/features/javascriptcore.prf: Use new +needToLinkLibrary helper
3607         function.
3608         * qmake/mkspecs/features/webcore.prf: Ditto.
3609         * qmake/mkspecs/features/webkit2.prf: Ditto.
3610
3611 2011-11-21  Adam Klein  <adamk@chromium.org>
3612
3613         Update flakiness dashboard linkification regexps for crbug.com/100000 and above
3614         https://bugs.webkit.org/show_bug.cgi?id=72898
3615
3616         Reviewed by Ojan Vafai.