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