2010-05-24 Ojan Vafai Reviewed by Eric Seidel. add tests to ensure that --git-commit ranges are exclusive of the start of the range https://bugs.webkit.org/show_bug.cgi?id=39612 * Scripts/webkitpy/common/checkout/scm_unittest.py: 2010-05-24 Eric Seidel Reviewed by Adam Barth. Add a temporary script for testing the html5 parser until it can run more layout tests https://bugs.webkit.org/show_bug.cgi?id=39611 * Scripts/test-html5-parser: Added. 2010-05-24 Eric Seidel Reviewed by Chris Jerdonek. webkit-patch needs --verbose flag to enable DEBUG logging https://bugs.webkit.org/show_bug.cgi?id=39208 I also added some code to print out how long commands take to run. * Scripts/webkit-patch: - Add hackish -v/--verbose parsing (similar to check-webkit-style) * Scripts/webkitpy/common/system/executive.py: - Log how long commands take to run. * Scripts/webkitpy/tool/main.py: - Add -v/--verbose option to global options. 2010-05-23 Eric Seidel Reviewed by Daniel Bates. Split PatchReader out into its own file https://bugs.webkit.org/show_bug.cgi?id=39576 This is in preparation for making check-webkit-style support being passed paths to patch files on the command line. * Scripts/check-webkit-style: * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: * Scripts/webkitpy/style/patchreader.py: Added. * Scripts/webkitpy/style/patchreader_unittest.py: Added. * Scripts/webkitpy/style_references.py: 2010-05-23 Adam Barth Reviewed by Daniel Bates. webkit-patch should let you add a comment when uploading a patch https://bugs.webkit.org/show_bug.cgi?id=39552 As requested by Dan "the man" Bates. * Scripts/webkitpy/tool/steps/options.py: * Scripts/webkitpy/tool/steps/postdiff.py: 2010-05-23 Adam Barth Reviewed by Eric Seidel. webkit-patch should assign newly created bugs to their creator https://bugs.webkit.org/show_bug.cgi?id=39548 As requested on webkit-dev. * Scripts/webkitpy/common/net/bugzilla.py: 2010-05-23 Adam Barth Reviewed by Eric Seidel. Hide prepare and post commands for webkit-patch https://bugs.webkit.org/show_bug.cgi?id=39539 It turns out these commands aren't very popular and they confuse new users. They'll still be there for advanced users, however. * Scripts/webkitpy/tool/commands/upload.py: 2010-05-23 Jesus Sanchez-Palencia Reviewed by Laszlo Gombos. [Qt] QtTestBrowser has two graphicsview options that aren't enabled correctly https://bugs.webkit.org/show_bug.cgi?id=39491 Making toggleResizesToContents and toggleTiledBackingStore checkable when QtTestBrowser is started on graphics view mode. * QtTestBrowser/main.cpp: (LauncherWindow::createChrome): 2010-05-23 Jesus Sanchez-Palencia Reviewed by Laszlo Gombos. [Qt] QtTestBrowser is still called QtLauncher in the code https://bugs.webkit.org/show_bug.cgi?id=39488 Finish the name change of QtLauncher to QtTestBrowser. * QtTestBrowser/main.cpp: (LauncherApplication::LauncherApplication): (LauncherApplication::handleUserOptions): * QtTestBrowser/mainwindow.cpp: (MainWindow::MainWindow): * QtTestBrowser/useragentlist.txt: 2010-05-23 Marcus Bulach Reviewed by Kent Tamura. [chromium] Adds Geolocation support to DumpRenderTree. https://bugs.webkit.org/show_bug.cgi?id=39440 Existing LayoutTests/fast/dom/Geolocation/* should pass. * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::setGeolocationPermission): (LayoutTestController::setMockGeolocationPosition): (LayoutTestController::setMockGeolocationError): * DumpRenderTree/chromium/LayoutTestController.h: * DumpRenderTree/chromium/TestShell.cpp: (TestShell::TestShell): * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::geolocationService): * DumpRenderTree/chromium/WebViewHost.h: 2010-05-22 Adam Barth Unreviewed. Re-order Yong's email addresses because his gmail account is the one he uses for bugs.webkit.org. * Scripts/webkitpy/common/config/committers.py: 2010-05-22 Daniel Bates Reviewed by Chris Jerdonek. Add infrastructure to parse SVN property changes https://bugs.webkit.org/show_bug.cgi?id=38885 Adds function VCSUtils::parseSvnDiffFooter to parse an SVN footer that consists of one or more properties. Note, the first line of an SVN footer begins with "Property changes on". * Scripts/VCSUtils.pm: - Added function parseSvnDiffFooter. Will use this function towards resolving Bug #39409 . - Removed FIXME comment above function parseSvnProperty, since it is being used by parseSvnDiffFooter. * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffFooter.pl: Added. - Added unit tests. 2010-05-22 Eric Seidel Unreviewed, fixing test results only. Disable compositing tests on the commit-queue as a workaround for bug 38912 https://bugs.webkit.org/show_bug.cgi?id=39067 * Scripts/webkitpy/tool/steps/steps_unittest.py: - Update test results after my previous change. 2010-05-22 Eric Seidel Unreviewed. Disable compositing tests on the commit-queue as a workaround for bug 38912 https://bugs.webkit.org/show_bug.cgi?id=39067 * Scripts/webkitpy/tool/steps/runtests.py: - Disable all of compositing, not just compositing/iframes 2010-05-22 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Link resources and load Ahem font for Windows https://bugs.webkit.org/show_bug.cgi?id=39473 * DumpRenderTree/chromium/DumpRenderTree.cpp: (main): Call platformInit(). * DumpRenderTree/chromium/TestShell.h: Declare platformInit(). It is not related to TestShell class, but the implementation of paltformInit() is placed at TestShell*.{cpp,mm}. * DumpRenderTree/chromium/TestShellGtk.cpp: (platformInit): * DumpRenderTree/chromium/TestShellMac.mm: (platformInit): * DumpRenderTree/chromium/TestShellWin.cpp: (platformInit): - Make stdout/stderr binary mode - Load Ahem font 2010-05-21 Eric Seidel Unreviewed, EWS build fix only. QueueStatusServer returns 500 error when EWS bots post empty queues https://bugs.webkit.org/show_bug.cgi?id=39523 Mac python seems to have some built-in timezone support however other python installs don't. So we need to ignore timezones in our parsing. Date parsing is tested by existing unit tests. * QueueStatusServer/handlers/updateworkitems.py: - Fix typo causing exception on server. * Scripts/webkitpy/common/net/bugzilla.py: - Fix exception due to python's lack of timezone support. 2010-05-21 Eric Seidel Reviewed by Adam Barth. QueueStatusServer returns 500 error when EWS bots post empty queues https://bugs.webkit.org/show_bug.cgi?id=39523 updateworkitems handler was raising an exception because int() couldn't convert "" to a number. I attempted to unit test this but we don't yet have a system by which to load unit tests for appengine classes which depend on google.appengine libraries which are not in the python default install. We'll need to write a wrapper script to load those into the python path and then run the unit test files. * QueueStatusServer/handlers/statusbubble.py: - Hide cr-win-ews since we're not currently running this bot. * QueueStatusServer/handlers/updateworkitems.py: - Fix the parsing logic to be able to understand "". * Scripts/webkitpy/common/net/statusserver.py: - Only log the work items posted to the server to the debug log channel. 2010-05-21 Eric Seidel Unreviewed, fixing the commit-queue to run again. Make the EWSes report queue position in white bubbles https://bugs.webkit.org/show_bug.cgi?id=39519 * Scripts/webkitpy/common/net/statusserver.py: - Fix exception in _post_work_items_to_server when passed integers. Unfortunately we have no good way to mock the Browser object yet, and after several attempts I was not able to create a good one, so no tests. :( 2010-05-14 Ojan Vafai Reviewed by Eric Seidel. webkit-patch land --squash commits too much if branch is not up to date https://bugs.webkit.org/show_bug.cgi?id=38852 * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/checkout/scm_unittest.py: 2010-05-21 Eric Seidel Reviewed by Adam Barth. Make the EWSes report queue position in white bubbles https://bugs.webkit.org/show_bug.cgi?id=39519 This also fixes sorting of commit-queue patches to be in order of patch attachment. https://bugs.webkit.org/show_bug.cgi?id=33395 This makes the various Queues post what patches they are about to process so that we can display a list of patches on status server pages, as well as report queue position in status bubbles. This is the first step towards creating a control-channel for the queues. Next step will be to have them read back the patches in order from the server and finally we will add the ability for the server to control that order. * Scripts/webkitpy/common/net/bugzilla.py: - Teach bugzilla how to parse attach_date for attachments. * Scripts/webkitpy/common/net/bugzilla_unittest.py: - Test that we're parsing dates correctly. This may have timezone issues for non-PST contributers, unsure. * Scripts/webkitpy/common/net/statusserver.py: - Post work items to the status server for display. * Scripts/webkitpy/tool/bot/patchcollection.py: - Call StatusServer.update_work_items * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: - Update unit test results now that we're posting work item list. * Scripts/webkitpy/tool/commands/queues.py: - Call StatusSever.update_work_items - Sort patches so that the server's list understands that the commit-queue gives priority to rollout patches. - I also fixed patch sorting per bug 33395 while I was here. * Scripts/webkitpy/tool/commands/queues_unittest.py: - Update results after update_work_items changes. - Test attachment sorting. * Scripts/webkitpy/tool/mocktool.py: - Add mock for update_work_items 2010-05-21 Robin Cao Reviewed by Adam Roben. fast/dom/HTMLObjectElement/children-changed.html times out on Windows run-webkit-tests https://bugs.webkit.org/show_bug.cgi?id=31315 * DumpRenderTree/win/FrameLoadDelegate.cpp: (FrameLoadDelegate::didFailProvisionalLoadWithError): Need to invoke locationChangeDone here as mac port does. 2010-05-20 Mark Rowe Rubber-stamped by Dan Bernstein. Remove the dependency on Foundation's private __COCOA_FORMAL_PROTOCOLS_2__ define. * DumpRenderTree/mac/LayoutTestControllerMac.mm: 2010-05-20 Tony Gentilcore Reviewed by Daniel Bates. Look in /proc/registry64 for the Platform SDK on 64-bit Windows. https://bugs.webkit.org/show_bug.cgi?id=39296 The build-webkit script failed for me on Vista 64. A web search turned up this blog post with a patch that worked for me: http://www.nicholaswilson.me.uk/2010/04/hacking-webkit-fail/ * Scripts/webkitdirs.pm: 2010-05-20 Eric Seidel Reviewed by Adam Barth. ThreadedMessageQueue should use with_statement for exception safety https://bugs.webkit.org/show_bug.cgi?id=39233 * Scripts/webkitpy/common/thread/threadedmessagequeue.py: 2010-05-20 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] QtTestBrowser does not support websites which requires HTTP Authentication via dialogs https://bugs.webkit.org/show_bug.cgi?id=38456 * QtTestBrowser/webpage.cpp: (WebPage::WebPage): (WebPage::authenticationRequired): * QtTestBrowser/webpage.h: 2010-05-20 Martin Robinson Reviewed by Eric Seidel. editingBehavior settings needs to be set back to a reasonable default between tests https://bugs.webkit.org/show_bug.cgi?id=39433 For now, hard code the default setting during reset, so that the serialized version of the setting stays in sync with expectations. * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): Reset editing behavior to the appropriate platform default. * DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): Ditto. 2010-05-20 Brent Fulgham Build fix. No review. The WebKitAPITest targets do not use the "_debug" suffix needed by the WinCairo port. Added Debug_Cairo target to correct this. * WebKitAPITest/WebKitAPITest.vcproj: 2010-05-20 Martin Robinson Reviewed by Ojan Vafai. editing/selection/extend-selection-after-double-click.html crashes on the Leopard Intel release bot https://bugs.webkit.org/show_bug.cgi?id=39431 * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setEditingBehavior): Prevent a double-free by not having this variable be in the auto-release pool. 2010-05-20 Martin Robinson Reviewed by Ojan Vafai. Expose the editing behavior setting in DRT to test all editing code paths https://bugs.webkit.org/show_bug.cgi?id=38603 * DumpRenderTree/LayoutTestController.cpp: (setEditingBehaviorCallback): Added. (LayoutTestController::staticFunctions): Expose the setEditingBehaviorCallback function. * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/chromium/LayoutTestController.cpp: Add callback method for setting editing behavior. * DumpRenderTree/chromium/LayoutTestController.h: Declaration for this method. * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setEditingBehavior): Implementation of editing behavior control. * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setEditingBehavior): Ditto * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setEditingBehavior): Added stub implementation of editing behavior control. * DumpRenderTree/qt/LayoutTestControllerQt.h: (LayoutTestController::setEditingBehavior): Add slot for controlling editor behavior. * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setEditingBehavior): Implementation of editing behavior control. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setEditingBehavior): Added stub implementation of editing behavior control. 2010-05-20 Kent Tamura Reviewed by Eric Seidel. [DRT/Chromium] Increase the time out value https://bugs.webkit.org/show_bug.cgi?id=39203 Change the time out value of Chromium DRT to 30 seconds, which is the same as other ports. If a DRT process exits before new-run-webkit-tests detects time out, new-run-webkit-tests assumes the DRT process crashed. * DumpRenderTree/chromium/TestShell.cpp: (TestShell::layoutTestTimeout): Change the time out value from 10 seconds to 30 seconds. 2010-05-20 Chris Evans Unreviewed. Marking myself as a committer. * Scripts/webkitpy/common/config/committers.py: Add cevans@google.com. 2010-05-20 Simon Hausmann Reviewed by Tor Arne Vestbo. [Qt] Weekly binary builds on Mac OS X don't work when launched in the Finder https://bugs.webkit.org/show_bug.cgi?id=37273 * QtTestBrowser/QtTestBrowser.pro: Build QtLauncher as bundle in package builds 2010-05-20 Fumitoshi Ukai Unreviewed fix for websocket test failures. * Scripts/new-run-webkit-websocketserver: options is named parameter for factory.get(). 2010-05-20 Fumitoshi Ukai Reviewed by Shinichiro Hamaji. Chromium: Add --chromium option to new-run-webkit-websocketserver https://bugs.webkit.org/show_bug.cgi?id=37664 Missed to pass options to factory.get() in r59595 * Scripts/new-run-webkit-websocketserver: Pass options to factory.get(). 2010-05-19 Eric Seidel Reviewed by Adam Roben. WinEWS should build Debug instead of Release https://bugs.webkit.org/show_bug.cgi?id=39242 This is a workaround for https://bugs.webkit.org/show_bug.cgi?id=39197 Adam Roben and Brian Weinstein believe this may also make building faster since Debug builds take less time to link. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: 2010-05-19 Dirk Pranke Unreviewed, build fix. * DumpRenderTree/chromium/NotificationPresenter.cpp: (NotificationPresenter::show): 2010-05-19 Eric Seidel Reviewed by Adam Barth. user.py throws exception when readline module is missing https://bugs.webkit.org/show_bug.cgi?id=39239 * Scripts/webkitpy/common/system/user.py: - The error handling path requires the "sys" module, so added an import sys at the top of the file. 2010-05-18 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Fix a repaint issue and textarea tests https://bugs.webkit.org/show_bug.cgi?id=39054 * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::canvas): Remove m_paintRect initialization in canvas(). This line updated m_paintRect unexpectedly during paintRect(). We don't need to initialize m_paintRect because show() does it. 2010-05-18 Tony Chang Reviewed by Kent Tamura. [chromium] new-run-webkit-tests --use-drt should run on Linux https://bugs.webkit.org/show_bug.cgi?id=37845 * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_unittest.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: 2010-05-18 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Fix some initialization/reset issues https://bugs.webkit.org/show_bug.cgi?id=39281 * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::reset): Reset m_userStyleSheetLocation. * DumpRenderTree/chromium/LayoutTestController.h: Remove unused variable, m_workQueueFrozen. (LayoutTestController::WorkQueue::WorkQueue): Initialize m_frozen. * DumpRenderTree/chromium/TestShell.cpp: (TestShell::resetTestController): Reset WebSettings too. 2010-05-18 Dirk Pranke Reviewed by Ojan Vafai. new-run-webkit-tests: implement '--reset-results' flag to complement the '--new-baseline' flag. '--new-baseline' will always write the results into the platform directory; '--reset-results' will update the existing baseline wherever it happens to be. Both sets of behavior are useful in different circumstances. https://bugs.webkit.org/show_bug.cgi?id=38879 * Scripts/webkitpy/layout_tests/data/image/canvas-bg.html: Added. * Scripts/webkitpy/layout_tests/data/image/canvas-zoom-expected.checksum: Added. * Scripts/webkitpy/layout_tests/data/image/canvas-zoom-expected.png: Added. * Scripts/webkitpy/layout_tests/data/image/canvas-zoom-expected.txt: Added. * Scripts/webkitpy/layout_tests/data/image/canvas-zoom.html: Added. * Scripts/webkitpy/layout_tests/data/misc/crash-expected.txt: Added. * Scripts/webkitpy/layout_tests/data/misc/crash.html: Added. * Scripts/webkitpy/layout_tests/data/misc/missing-expectation.html: Added. * Scripts/webkitpy/layout_tests/data/misc/passing-expected.txt: Added. * Scripts/webkitpy/layout_tests/data/misc/passing.html: Added. * Scripts/webkitpy/layout_tests/data/platform/test/image/canvas-bg-expected.checksum: Added. * Scripts/webkitpy/layout_tests/data/platform/test/image/canvas-bg-expected.png: Added. * Scripts/webkitpy/layout_tests/data/platform/test/image/canvas-bg-expected.txt: Added. * Scripts/webkitpy/layout_tests/data/platform/test/test_expectations.txt: Added. * Scripts/webkitpy/layout_tests/data/text/article-element-expected.txt: Added. * Scripts/webkitpy/layout_tests/data/text/article-element.html: Added. * Scripts/webkitpy/layout_tests/layout_package/test_expectations_unittest.py: * Scripts/webkitpy/layout_tests/port/test.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: * Scripts/webkitpy/layout_tests/port/test.py: * Scripts/webkitpy/layout_tests/port/dryrun.py: 2010-05-18 Eric Seidel Reviewed by Adam Roben. Add an --html5-parser option to DumpRenderTree to allow testing the new HTML5Lexer https://bugs.webkit.org/show_bug.cgi?id=39311 This flag allows us to run the new HTML5Lexer code. Right now all documents parse as empty documents, but now that we're able to run the code we can fix that. Once we're able to lex a few basic documents I'll add an --html5-parser flag to run-webkit-tests so that we test running all of the layout tests with the HTML5 parser. * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): (initializeGlobalsFromCommandLineOptions): 2010-05-08 Robert Hogan Reviewed by Simon Hausmann. [Qt] Fix http/tests/xmlhttprequest/cross-origin-no-authorization.html and http/tests/xmlhttprequest/cross-origin-authorization.html QHttpNetworkRequest adds Authorization and Cookie headers to XHRs without knowing if this is valid behaviour or not. In order to allow Qt to decide whether Cookie/Authorization headers should be added to an XHR QtWebKit needs to use an attribute added to QNetworkRequest. These new attributes are: QNetworkRequest::CookieLoadControlAttribute, QNetworkRequest::CookieSaveControlAttribute,and QNetworkRequest::AuthenticationReuseControlAttribute. In order to properly support the tests, Qt's DRT needs to use one NetworkAccessManager for all pages. This allows it to use cached credentials where appropriate. The tests now pass when run individually but there seems to be a problem with leaking the results of requests across tests when run with the others in http/tests. This will be addressed in a separate patch. https://bugs.webkit.org/show_bug.cgi?id=32967 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::DumpRenderTree::DumpRenderTree): * DumpRenderTree/qt/DumpRenderTreeQt.h: 2010-05-18 Fumitoshi Ukai Reviewed by Eric Seidel. run_webkit_tests_unittest fails on SnowLeopard https://bugs.webkit.org/show_bug.cgi?id=39279 * Scripts/webkitpy/layout_tests/port/base.py: Return copy of os.environ. * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py: Check os.environ was not modified. 2010-05-18 Fumitoshi Ukai Reviewed by Eric Seidel. Chromium: new-run-webkit-httpd fails to setup_mount https://bugs.webkit.org/show_bug.cgi?id=39257 * Scripts/webkitpy/common/system/executive.py: Assert type of args in run_command. * Scripts/webkitpy/common/system/executive_unittest.py: Add test_run_command_args_type * Scripts/webkitpy/layout_tests/port/chromium_win.py: Executive.run_command takes array for command line. * Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py: Test if setup_environ_for_server() run setup_mount.bat. 2010-05-17 Kent Tamura Reviewed by David Levin. Chromium Windows build system does not rebuild correctly when enabling/disabling a feature https://bugs.webkit.org/show_bug.cgi?id=38926 Add a workaround of this issue. * Scripts/update-webkit: Chromium-Windows only: If WebKit/chromium/features.gyp has been updated, remove WebKit/chromium/Debug and WebKit/chromium/Release. 2010-05-17 Sheriff Bot Unreviewed, rolling out r59631. http://trac.webkit.org/changeset/59631 https://bugs.webkit.org/show_bug.cgi?id=39255 chromium canaries can no longer run webkit_tests, suspect this change. (Requested by atwilson on #webkit). * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-17 Eric Seidel Reviewed by Adam Barth. Attempt to make new-run-webkit-tests --help more sane https://bugs.webkit.org/show_bug.cgi?id=37836 * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - Add a FIXME about options.singly and options.batch_size being different. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - Add support for hidden options. - Add option groupings to attempt to simplify --help. - Fix a bunch of option helps to start with a capitalized verb. - Hide a bunch of options which make no sense to users. - Sort options in --help. * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: - Add tests for option sorting. 2010-05-17 Robert Hogan Reviewed by Kenneth Rohde Christiansen. [Qt] Disable Icon Database by default in Qt DRT Unskip: http/tests/misc/favicon-loads-with-images-disabled.html http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html https://bugs.webkit.org/show_bug.cgi?id=37382 Add support for layoutTestController.setIconDatabaseEnabled and layoutTestController.disableImageLoading(). The XFrameOptions tests were failing because of an extra resource load callback for favicon.ico requests. These extra callbacks are removed by supporting both of the above layoutTestContoller commands. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::resetSettings): (WebCore::DumpRenderTree::DumpRenderTree): * DumpRenderTree/qt/DumpRenderTreeQt.h: (WebCore::DumpRenderTree::drtStoragePath): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::disableImageLoading): (LayoutTestController::setIconDatabaseEnabled): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-05-17 Fumitoshi Ukai Reviewed by Eric Seidel. Chromium: Add --chromium option to new-run-webkit-websocketserver https://bugs.webkit.org/show_bug.cgi?id=37664 os.environ setup and setup_mount for cygwin are moved in ChromiumWinPort.setup_environ_for_server. * Scripts/new-run-webkit-httpd: Remove passing register_cygwin. * Scripts/new-run-webkit-websocketserver: Add --chromium flag. Remove passing register_cygwin. Create port object using options. * Scripts/webkitpy/layout_tests/port/base.py: Add setup_environ_for_server(). * Scripts/webkitpy/layout_tests/port/chromium_win.py: Ditto. * Scripts/webkitpy/layout_tests/port/factory_unittest.py: Added. * Scripts/webkitpy/layout_tests/port/http_server.py: Remove register_cygwin_parameter. Call setup_environ_for_server(). * Scripts/webkitpy/layout_tests/port/websocket_server.py: Ditto. 2010-05-16 Daniel Bates Reviewed by Chris Jerdonek. https://bugs.webkit.org/show_bug.cgi?id=39184 Adds function VCSUtils::parseSvnProperty to parse an SVN property with either a single-line or multi-line value change. * Scripts/VCSUtils.pm: - Added function parseSvnProperty. We will use this function towards resolving Bug #38885 . - Removed FIXME comment above function parseSvnPropertyValue, since it is being used by parseSvnProperty. - Modified function parseSvnPropertyValue to break out of "while (<$fileHandle>)" loop when it encounters the start of the next property so that it can be processed by its caller, parseSvnPropertyValue. We reference this bullet below by (*). * Scripts/webkitperl/VCSUtils_unittest/parseSvnProperty.pl: Added. - Added unit tests. * Scripts/webkitperl/VCSUtils_unittest/parseSvnPropertyValue.pl: - Changed the name of the unit test "simple multi-line '-' change" to "single-line '-' change followed by empty line" since the former was an incorrect description of this test. - Added unit test "single-line '-' change followed by the next property", and "multi-line '-' change followed by the next property" to test (*) above. 2010-05-16 Tony Chang Not reviewed, fixing layout test. Don't output Inspect Element since this is not enabled on the bots, but most developers probably have it installed. * DumpRenderTree/mac/EventSendingController.mm: (-[EventSendingController contextClick:]): 2010-05-12 Tony Chang Reviewed by Darin Adler. Spellcheck disabling does not disable context menu https://bugs.webkit.org/show_bug.cgi?id=25639 * DumpRenderTree/mac/EventSendingController.mm: (+[EventSendingController isSelectorExcludedFromWebScript:]): (+[EventSendingController webScriptNameForSelector:]): (-[EventSendingController contextClick:]): add a bool parameter that when true, dumps the context menu items to stdout. 2010-05-16 Robert Hogan Reviewed by Kenneth Rohde Christiansen. [Qt] Unskip fast/loader/main-document-url-for-non-http-loads.html Update Qt DRT to use frame loader, editor client and notification presenter functions in DumpRenderTreeSupportQt. https://bugs.webkit.org/show_bug.cgi?id=38867 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::open): (WebCore::DumpRenderTree::dump): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::reset): (LayoutTestController::dumpEditingCallbacks): (LayoutTestController::dumpFrameLoadCallbacks): (LayoutTestController::dumpResourceLoadCallbacks): (LayoutTestController::setWillSendRequestReturnsNullOnRedirect): (LayoutTestController::setWillSendRequestReturnsNull): (LayoutTestController::setWillSendRequestClearHeader): 2010-05-16 Eric Seidel Unreviewed, rolling out r59571. http://trac.webkit.org/changeset/59571 https://bugs.webkit.org/show_bug.cgi?id=39054 Broke Cr Win, but we didn't notice immediately due to https://bugs.webkit.org/show_bug.cgi?id=38926. It's possible that this didn't actually break Cr Win, but rather that bug 38926 necessitates a clean compile after this and sucessive checkins only produced a partial recompile and thus failed to build. * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::canvas): 2010-05-16 Robert Hogan Reviewed by Kenneth Rohde Christiansen. [Qt]Unskip security/set-form-autocomplete-attribute.html Add support for layoutTestController.elementDoesAutoCompleteForElementWithId(). https://bugs.webkit.org/show_bug.cgi?id=38859 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::elementDoesAutoCompleteForElementWithId): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-05-16 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Fix repaint, WebGL, textarea tests https://bugs.webkit.org/show_bug.cgi?id=39054 * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::canvas): Remove m_paintRect initialization in canvas(). This line updated m_paintRect unexpectedly during paintRect(). We don't need to initialize m_paintRect because show() does it. 2010-05-16 Sergio Villar Senin Reviewed by Gustavo Noronha Silva. [GTK] Improve reporting of frame loader callbacks in DRT https://bugs.webkit.org/show_bug.cgi?id=36454 * DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewLoadStatusNotified): (createWebView): added connection to notify::load-status and signal callback 2010-05-15 Daniel Bates Reviewed by Chris Jerdonek. https://bugs.webkit.org/show_bug.cgi?id=39170 Add function parseSvnPropertyValue to parse single-line and multi-line property values of an SVN property change. * Scripts/VCSUtils.pm: Added function parseSvnPropertyValue. We will use this as part of Bug #38885 . * Scripts/webkitperl/VCSUtils_unittest/parseSvnPropertyValue.pl: Added. 2010-05-15 Jochen Eisinger Reviewed by Dmitry Titov. Add allowDatabase method to TestWebWorker. https://bugs.webkit.org/show_bug.cgi?id=38742 * DumpRenderTree/chromium/TestWebWorker.h: (TestWebWorker::allowDatabase): 2010-05-15 Simon Hausmann Rubber-stamped by Antti Koivisto. [Qt] Rename QtLauncher to QtTestBrowser https://bugs.webkit.org/show_bug.cgi?id=37665 Forgot to remove the original directory after the rename. * QtLauncher: Removed. 2010-05-15 Sheriff Bot Unreviewed, rolling out r59544. http://trac.webkit.org/changeset/59544 https://bugs.webkit.org/show_bug.cgi?id=39165 Cased LayoutTest to start crashing (Requested by abarth on #webkit). * Scripts/old-run-webkit-tests: 2010-05-15 Mario Sanchez Prada Reviewed by Xan Lopez. Ensure DRT loads GAIL (Gtk+ module), for a11y tests https://bugs.webkit.org/show_bug.cgi?id=38648 Add the GTK_MODULES envvar (set to "gail") to the clean environment when running DRT for the Gtk+ port * Scripts/old-run-webkit-tests: 2010-05-15 Eric Seidel Reviewed by Maciej Stachowiak. Add script to check for minimum python version and install if missing on Tiger https://bugs.webkit.org/show_bug.cgi?id=38886 Per Maciej's request on webkit-dev: https://lists.webkit.org/pipermail/webkit-dev/2010-May/012785.html provide a script which can automatically install Python on Tiger where the system provided version is too old to be of use. Note this uses the official Mac Python installer from python.org. This installs a copy of Python in /Library/Frameworks/Python.framework. It also makes symlinks from /usr/local/bin to the Python.framework/bin. I have tested this script on Leopard and it worked fine. I have not tested it on Tiger as I do not have access to a Tiger machine. In either case this should provide a great starting point for someone wishing to upgrade their copy of Python on Tiger. Future patches can make our scripts depend on a success return from this script and then they can either skip tests/sections for which python is insufficient, or they can fail themselves. * Scripts/ensure-valid-python: Added. 2010-05-15 Eric Seidel Reviewed by Adam Barth. Display queue position inside EWS bubbles https://bugs.webkit.org/show_bug.cgi?id=38979 This ended up being a lot of clean-up to our status server code. Added a new WorkItems model, a form with which to fill it, and taught the Attachment class how to calculate the current queue postion for an attachment using the data in WorkItems. I also finally made statusbubble.* and dashboard.* not use copy-paste code. The Attachment class has this summary() method which is very controller/view-like and does not belong in a model class. This patch got rid of all direct uses of summary(). * QueueStatusServer/handlers/dashboard.py: - Build row objects to hand off to the view instead of handing off a summary object and expecting the view to process it directly. * QueueStatusServer/handlers/statusbubble.py: - Build bubble object and hand them off to the view. * QueueStatusServer/handlers/updatestatus.py: - Code cleanup. Just move some code into _queue_status_from_request to make the main put() handler easier to read. * QueueStatusServer/handlers/updateworkitems.py: Added. - Controller to handle storing WorkItems model objects. * QueueStatusServer/main.py: - Add route for /update-work-items * QueueStatusServer/model/attachment.py: - Add new methods to replace direct summary() access. - Teach attachment how to calculate queue positions from WorkItems data. * QueueStatusServer/model/queues.py: - Move name_with_underscores here for easier re-use. * QueueStatusServer/model/workitems.py: Added. - New model for storing what items are currently queue for any bot. * QueueStatusServer/templates/dashboard.html: - Kill the copy/paste code! * QueueStatusServer/templates/statusbubble.html: - Kill the copy/paste code! * QueueStatusServer/templates/updateworkitems.html: Added. - Simple form for updating a queue's current work items. 2010-05-15 Joanmarie Diggs Reviewed by Xan Lopez. https://bugs.webkit.org/show_bug.cgi?id=30500 [Gtk] Find a way for WebKit to "announce" itself so that ATs can readily distinguish it from true Gtk/Gail The "announcement" is now made in the form of an object attribute associated with the AtkObject. * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::allAttributes): (attributeSetToString): 2010-05-15 Mario Sanchez Prada Reviewed by Xan Lopez. Accessibility: Implement isSelected in DRT for GTK https://bugs.webkit.org/show_bug.cgi?id=31018 Implement AccessibilityUIElement::isSelected() for Gtk * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::isSelected): 2010-05-14 Adam Barth Reviewed by Eric Seidel. scm.py should use self.run instead of run_command https://bugs.webkit.org/show_bug.cgi?id=38957 We've wanted to do this for a while, but it's a prerequiste for running SVN from the cwd instead of the checkout_root. * Scripts/webkitpy/common/checkout/scm.py: 2010-05-14 Anton Muhin Reviewed by Darin Fisher. [Chromium] Consider implementing addOriginAccessWhitelistEntry method https://bugs.webkit.org/show_bug.cgi?id=37578 Remove deprecated methods. * DumpRenderTree/chromium/LayoutTestController.cpp * DumpRenderTree/chromium/LayoutTestController.h 2010-05-14 Kenneth Russell Reviewed by Darin Adler. Rename WebGLArray types to TypedArray types https://bugs.webkit.org/show_bug.cgi?id=39091 Extended functionality of do-webcore-rename script and used it to rename the WebGLArray types to the TypedArray naming convention. The only source files which were touched by hand, and which are being manually reviewed, are: WebCore/page/DOMWindow.idl WebCore/bindings/generic/RuntimeEnabledFeatures.h (script's changes undone) WebKit/WebCore/bindings/js/JSDOMWindowCustom.cpp WebKit/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp These only needed to be touched to update the aliases between the WebGLArray and TypedArray names introduced in bug 39036. (It was not feasible to have do-webcore-rename handle this as it would introduce circular renamings.) These aliases will be removed in roughly a month once existing WebGL content has been updated. No new tests; covered under existing WebGL tests. Updated constructed-objects-prototypes and prototype-inheritance-2 tests. Ran all layout tests in Safari and all WebGL tests in Chromium. * Scripts/do-webcore-rename: Handle the case where some renames are substrings of others. Support renaming files containing custom JS bindings. If isDOMTypeRename is non-zero, expand the regexp which rewrites the file's contents in order to support custom JS bindings. 2010-05-14 Eric Seidel Reviewed by Adam Barth. webkit-patch rollout throws exception if bug is already open https://bugs.webkit.org/show_bug.cgi?id=38803 This was caused by someone incorrectly wrapping the code. :p I'm going to have to start demanding unit tests for wrapping changes... I also fixed the code to be able to reopen bugs which were never confirmed. Before it regressed, the code would just log in that case. Now it actually will reopen the bug, but there is a FIXME about how the logic is a bit backwards. * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/bugzilla_unittest.py: - Yay testing! 2010-05-14 Simon Hausmann Rubber-stamped by Antti Koivisto. [Qt] Rename QtLauncher to QtTestBrowser * QtTestBrowser: Copied from WebKitTools/QtLauncher. * QtTestBrowser/QtLauncher.pro: Removed. * QtTestBrowser/QtLauncher.qrc: Removed. * QtTestBrowser/QtTestBrowser.pro: Copied from WebKitTools/QtLauncher/QtLauncher.pro. * QtTestBrowser/QtTestBrowser.qrc: Copied from WebKitTools/QtLauncher/QtLauncher.qrc. * Scripts/run-launcher: * Scripts/webkitdirs.pm: 2010-05-14 Adam Barth Reviewed by Eric Seidel. Stop CCing webkit-bot-watchers https://bugs.webkit.org/show_bug.cgi?id=39020 webkit-bot-watchers is somewhat of a failed experiment. No one subscribed to the list (not even me). Removing it from the code because wms says it bounces email sometimes. * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: 2010-05-14 Eric Seidel Reviewed by Adam Barth. REGRESSION: webkit-patch commit-message throws exception https://bugs.webkit.org/show_bug.cgi?id=38997 * Scripts/webkitpy/tool/commands/upload.py: - Fix to respect and pass the --squash and --git-commit options. * Scripts/webkitpy/tool/commands/upload_unittest.py: - Fix the unit test to use the central MockCheckout instead of its own custom Mock which didn't require enough parameters. 2010-05-13 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] Improve QtLauncher user agent dialog resize https://bugs.webkit.org/show_bug.cgi?id=39062 * QtLauncher/main.cpp: (LauncherWindow::showUserAgentDialog): 2010-05-13 Eric Seidel Reviewed by Ojan Vafai. Disable compositing/iframes tests on the commit-queue as a workaround for bug 38912 https://bugs.webkit.org/show_bug.cgi?id=39067 Fix yet another typo in my original hack. I also added another unit test for this fix. * Scripts/webkitpy/common/config/ports.py: * Scripts/webkitpy/common/config/ports_unittest.py: 2010-05-13 Eric Seidel Reviewed by Ojan Vafai. Disable compositing/iframes tests on the commit-queue as a workaround for bug 38912 https://bugs.webkit.org/show_bug.cgi?id=39067 My previous (unreviewed) hack didn't actually work due to checking "mac" instead of "Mac". This change fixes my hack, and unit tests it. * Scripts/webkitpy/tool/mocktool.py: - Make it possible to make run_command log too. * Scripts/webkitpy/tool/steps/runtests.py: - Fix my hack to actually work. * Scripts/webkitpy/tool/steps/steps_unittest.py: - Test my hack (and basic RunTests behavior as well). 2010-05-13 Antonio Gomes , Yi Shen Reviewed by Kenneth Christiansen. [Qt] Add LayoutTestController interface: computedStyleIncludingVisitedInfo https://bugs.webkit.org/show_bug.cgi?id=37759 WebKitTools: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::computedStyleIncludingVisitedInfo): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-05-10 Adam Roben Convert status bar text to UTF-8 before logging it on Windows We were previously logging the text using printf("%S", bstr). This converts the UTF-16 BSTR to a multibyte string using wctomb, which uses the codepage for the current locale to perform the conversion. The conversion was failing, causing printf to bail and truncate the string. By converting to UTF-8 manually before logging, we avoid this issue (and also end up with UTF-8 output, which is what the expected results contain). We may have to do this in other places in DRT, eventually. Fixes REGRESSION (r59016): plugins/set-status.html fails on Windows Reviewed by Alexey Proskuryakov. * DumpRenderTree/win/DumpRenderTree.cpp: (toUTF8): Moved this here from FrameLoadDelegate. Renamed from BSTRtoString. * DumpRenderTree/win/DumpRenderTreeWin.h: Added declaration of toUTF8. * DumpRenderTree/win/FrameLoadDelegate.cpp: Removed BSTRtoString. (descriptionSuitableForTestResult): Updated for rename. * DumpRenderTree/win/UIDelegate.cpp: (UIDelegate::setStatusText): Convert the status bar text to UTF-8 before logging it so that Windows won't try (and fail) to convert it to the current locale's codepage. 2010-05-13 Eric Seidel Unreviewed hack, attempting to get the commit-queue running again. Disable compositing/iframes tests on the commit-queue as a workaround for bug 38912 https://bugs.webkit.org/show_bug.cgi?id=39067 I had this hack locally on the commit-queue, but it's fragile and broke this morning. It will work much better if committed to the repository. In either case it's temporary while we work up a real fix for bug 38912. * Scripts/webkitpy/common/config/ports.py: - Expose an is_leopard() method. * Scripts/webkitpy/tool/steps/runtests.py: - Don't run compositing/iframes tests on the commit-queue under leopard. 2010-05-13 Fumitoshi Ukai Unreviewed fix. Revert previous change. Even if with-statments are changed in websocket_server.py, it also claims syntax error for with statement in http_server.py. Until python 2.5 is installed on tiger bot, skips websocket/tests on tiger. * Scripts/webkitpy/layout_tests/port/websocket_server.py: use with statement 2010-05-13 Fumitoshi Ukai Unreviewed fix. On tiger bot, it claims syntax error for with statement. * Scripts/webkitpy/layout_tests/port/websocket_server.py: rewrite with statement with try-finally. 2010-05-13 Fumitoshi Ukai Reviewed by David Levin. WebSocket: pywebsocket 0.5 https://bugs.webkit.org/show_bug.cgi?id=38034 Remove pywebsocket from webkitpy/thirdparty. Make pywebsocket autoinstalled. * Scripts/new-run-webkit-websocketserver: Add --output-dir option. * Scripts/old-run-webkit-tests: Use new-run-webkit-websocketserver, rather than directly run pywebsocket's standalone.py * Scripts/run-webkit-websocketserver: Ditto. * Scripts/webkitpy/layout_tests/port/websocket_server.py: Use autoinstalled pywebsocket. * Scripts/webkitpy/thirdparty/__init__.py: Autoinstall pywebsocket * Scripts/webkitpy/thirdparty/pywebsocket: Removed. 2010-05-12 Chris Jerdonek Reviewed by Daniel Bates. Fixed a bug in svn-apply whereby the reviewer would not get set if the portion of the patch for the ChangeLog contains "NOBODY (**PS!)" in the leading junk. https://bugs.webkit.org/show_bug.cgi?id=38998 * Scripts/VCSUtils.pm: - Added the $changeLogTimeZone variable from svn-apply. - Added setChangeLogDateAndReviewer() from svn-apply. - Added a localTimeInProjectTimeZone() subroutine. - In setChangeLogDateAndReviewer(): - Added an $epochTime parameter to make the subroutine more testable. - Made the "NOBODY (**PS!)" regular expression more specific so that it will not apply to text in the leading junk. - Updated to call localTimeInProjectTimeZone(). * Scripts/svn-apply: - Removed the $changeLogTimeZone file variable. - Added an $epochTime file variable to represent the current time. - Removed the setChangeLogDateAndReviewer() subroutine. - Updated patch() to use the new setChangeLogDateAndReviewer() syntax. * Scripts/webkitperl/VCSUtils_unittest/setChangeLogDateAndReviewer.pl: Added. - Added unit tests. 2010-05-12 Eric Seidel Reviewed by Adam Barth. test-webkitpy fails on windows due to lack of readline module https://bugs.webkit.org/show_bug.cgi?id=38884 Win32 Python does not have a readline module, so we should not exit(1) if the import fails. Also the failure message is mac-specific and doesn't need to be. Only print the mac-specific install instructions on mac. * Scripts/webkitpy/common/system/user.py: 2010-05-12 Kent Tamura Reviewed by Nate Chapin. [DRT/Chromium] Add a missing Sans-serif font setting https://bugs.webkit.org/show_bug.cgi?id=38981 * DumpRenderTree/chromium/TestShell.cpp: (TestShell::resetWebSettings): Set "Helvetica" for Sans-serif. It is the same as the default setting of test_shell. 2010-05-10 Ojan Vafai Reviewed by Adam Barth. webkit-patch upload --fancy-review now uses the bugzilla bug ID as the rietveld ID https://bugs.webkit.org/show_bug.cgi?id=38866 wkrietveld.appspot.com has already been updated to allow you to pass --issue for the issue creation as well as subsequent uploads. Also, remove the extra code for trying to read out the issue ID from the changelog description since we just use the bugzilla ID now. * Scripts/webkitpy/common/config/__init__.py: * Scripts/webkitpy/common/net/rietveld.py: * Scripts/webkitpy/tool/steps/postcodereview.py: * Scripts/webkitpy/tool/steps/postdiff.py: 2010-05-12 Ojan Vafai No review needed. Marking myself as a reviewer. * Scripts/webkitpy/common/config/committers.py: 2010-05-12 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: add a --print default option so that you can easily get the default output plus something (e.g., you can say '--print default,config' instead of '--print misc,one-line-progress, one-line-summary,unexpected,unexpected-results,updates,config'. Also, add more unit tests for --verbose, --print everything, etc. https://bugs.webkit.org/show_bug.cgi?id=38877 * Scripts/webkitpy/layout_tests/layout_package/printing.py: * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py: 2010-05-12 Csaba Osztrogonác Reviewed by Adam Barth. Qt build failures cause SheriffBot false positives https://bugs.webkit.org/show_bug.cgi?id=38969 Add Qt bots back to the core builders, because bug fixed by r59261. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-05-12 Csaba Osztrogonác Reviewed by Kenneth Rohde Christiansen. [Qt] Slave losts cause build break on bots https://bugs.webkit.org/show_bug.cgi?id=38980 * Scripts/build-webkit: Remove 0 byte sized files from productDir before build. 2010-05-12 Csaba Osztrogonác Unreviewed trivial fix after r59254. * Scripts/old-run-webkit-tests: 2010-05-12 Csaba Osztrogonác Reviewed by Eric Seidel. run-webkit-tests --exit-after-N-failures should not count new tests as failures https://bugs.webkit.org/show_bug.cgi?id=31829 * Scripts/old-run-webkit-tests: 2010-05-12 James Robinson Reviewed by Simon Fraser. Disable smooth scrolling on OS X when running tests https://bugs.webkit.org/show_bug.cgi?id=38964 Some tests (like fast/repaint/fixed-move-after-keyboard-scroll.html) depend on smooth scrolling behavior. Since this is off by default in Leopard and on by default in Snow Leopard, DRT should turn it off always to ensure a consistent test environment. * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): 2010-05-10 Rodrigo Belem Reviewed by Kenneth Christiansen , Simon Hausmann and Gustavo Noronha. [Qt, Gtk] Allows build-webkit script to receive an install prefix as parameter https://bugs.webkit.org/show_bug.cgi?id=26224 Added more parameters to build-webkit script, the --prefix for gkt and --install-libs, --install-headers for qt. Now it is possible to change the install prefix for gtk and install path for qt. * Scripts/build-webkit: * Scripts/webkitdirs.pm: 2010-05-12 Philippe Normand Unreviewed, added my IRC nickname. * Scripts/webkitpy/common/config/committers.py: 2010-05-11 Chris Jerdonek Reviewed by Eric Seidel. Fixed two FIXME's in svn-apply: eliminated the unnecessary %copiedFiles variable and changed gitKnowsOfFile() to use exitStatus(). https://bugs.webkit.org/show_bug.cgi?id=38862 * Scripts/svn-apply: 2010-05-11 Eric Seidel Unreviewed, just fixing python typo. EWS bots should poll more often than every 5 minutes https://bugs.webkit.org/show_bug.cgi?id=38968 Typo in _now(), add a unittest to prove I fixed it. * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/queueengine_unittest.py: 2010-05-11 Adam Barth Reviewed by Eric Seidel. Qt build failures cause SheriffBot false positives https://bugs.webkit.org/show_bug.cgi?id=38969 The Qt buildbot randomly fails to compile occasionally because its network connection causes SVn to leave zero-byte files around. These compile failures confuse SheriffBot into thinking someone's patch caused a build break. In this patch, I've temporarily removed Qt from the list of core builders. Ossy is working on a script to clean up the zero byte files. Once that goes in, we can add Qt back to the core builders. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-05-11 Adam Barth Reviewed by Eric Seidel. sheriffbot is spammy. https://bugs.webkit.org/show_bug.cgi?id=38936 Reduce sheriffbot spam by not warning about new blameworthy revisions that can be explained by previously blamed revisions. This might cause us to not warn about some real failures, but we're getting too much spam from slow builders that have large blamelists (and we've already poked the responsible folks using data from a fast builder). * Scripts/webkitpy/tool/bot/sheriff_unittest.py: - Removed unneeded import * Scripts/webkitpy/tool/commands/sheriffbot.py: - The logic change * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: - Tests of the change * Scripts/webkitpy/tool/mocktool.py: - Merged two declarations of MockBuilder 2010-05-11 Tony Chang Reviewed by David Levin. [chromium] detect num processors to pass to make -j on Linux https://bugs.webkit.org/show_bug.cgi?id=38833 * Scripts/webkitdirs.pm: 2010-05-11 Eric Seidel Reviewed by Adam Barth. EWS bots should poll more often than every 5 minutes https://bugs.webkit.org/show_bug.cgi?id=38968 We'll make them poll every 2 minutes to start with. I'm going to re-write how polling works soon, so this is a stop-gap to try and make the bots more responsive. If Bill notices any additional load on bugzilla we'll drop the polling frequency back to 5 minutes. He's historically said that the EWS bots appear to be a drop in the bucket and thus should be able to poll much more frequently w/o causing trouble. * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/queueengine_unittest.py: - Add a test for sleep_message 2010-05-11 Eric Seidel Reviewed by Adam Barth. commit-queue should commit rollouts without running tests https://bugs.webkit.org/show_bug.cgi?id=38940 Most of this change is improving our test coverage for the commit-queue. The only functional change is removing the --test flag when the commit-queue is running in rollouts mode. I added test coverage for status updates, and updated the commit-queue status messages to distinguish rollout vs. normal landing mode in its empty queue and land patch messages. * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: - Got rid of a bunch of copy/paste code using _default_expected_stderr * Scripts/webkitpy/tool/commands/queues.py: - Moved rollout patch filtering out of _validate_patches_in_commit_queue so that we only have to check if the builders are green in one place. - Make the "empty queue" message note which queue it is referring to. - Don't pass --text to land-attachment when in rollout mode. * Scripts/webkitpy/tool/commands/queues_unittest.py: - Update results now that we're testing status updates. - Test _can_build_and_test since I made a typo in that call while writing this change and the unit tests failed to catch it! * Scripts/webkitpy/tool/mocktool.py: - Log status updates to make them testable in our unit tests. 2010-05-11 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Apply recent changes of test_shell to DRT https://bugs.webkit.org/show_bug.cgi?id=38895 Port the changes to test_shell during (r40492, r46810] of Chromium. Highlights: - Introduce NotificationPresenter - Fix parameter mismatch of WebViewClient::startDragging() This change fixes dozens of unexpected behaviors. * DumpRenderTree/DumpRenderTree.gypi: Add NotificationPresenter.{cpp,h} * DumpRenderTree/chromium/EventSender.cpp: (applyKeyModifier): (EventSender::EventSender): (EventSender::reset): (EventSender::webview): (EventSender::doDragDrop): (EventSender::keyDown): (EventSender::addTouchPoint): (EventSender::clearTouchPoints): (EventSender::releaseTouchPoint): (EventSender::setTouchModifier): (EventSender::updateTouchPoint): (EventSender::cancelTouchPoint): (EventSender::sendCurrentTouchEvent): (EventSender::touchEnd): (EventSender::touchMove): (EventSender::touchStart): (EventSender::touchCancel): * DumpRenderTree/chromium/EventSender.h: * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::reset): (LayoutTestController::showWebInspector): (LayoutTestController::setAuthorAndUserStylesEnabled): (LayoutTestController::setScrollbarPolicy): (LayoutTestController::setWillSendRequestClearHeader): (LayoutTestController::callShouldCloseOnWebView): (LayoutTestController::grantDesktopNotificationPermission): (LayoutTestController::removeOriginAccessWhitelistEntry): (LayoutTestController::addUserScript): (LayoutTestController::addUserStyleSheet): * DumpRenderTree/chromium/LayoutTestController.h: * DumpRenderTree/chromium/NotificationPresenter.cpp: Added. * DumpRenderTree/chromium/NotificationPresenter.h: Added. * DumpRenderTree/chromium/TestShell.cpp: (TestShell::TestShell): (TestShell::runFileTest): (TestShell::resetTestController): * DumpRenderTree/chromium/TestShell.h: (TestShell::eventSender): (TestShell::notificationPresenter): (TestShell::showDevTools): * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::createView): (WebViewHost::createPopupMenu): (WebViewHost::startDragging): (WebViewHost::notificationPresenter): (WebViewHost::createApplicationCacheHost): (WebViewHost::willSendRequest): (WebViewHost::updateAddressBar): (WebViewHost::updateURL): * DumpRenderTree/chromium/WebViewHost.h: (WebViewHost::addClearHeader): (WebViewHost::clearHeaders): 2010-05-10 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: fix a path-handling bug that was breaking the dryrun ports on windows, and add a comment about why we don't run the chromium dryrun tests by default on every port. https://bugs.webkit.org/show_bug.cgi?id=38796 * Scripts/webkitpy/layout_tests/port/dryrun.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-11 Mark Rowe Reviewed by Darin Adler. build-webkit shouldn't always override ENABLE_FOO Xcode configuration settings * Scripts/build-webkit: Don't pass the ENABLE setting to xcodebuild if the value matches the default. This will lead to xcodebuild picking up the settings from FeatureDefines.xcconfig, and will aid in revealing problems that are due to inconsistent values for settings across projects. 2010-05-11 Mark Rowe Build fix. * DumpRenderTree/mac/LayoutTestControllerMac.mm: 2010-05-10 Ojan Vafai Reviewed by David Levin. CheckStyle was eating script errors when there were local-commits and working copy changes https://bugs.webkit.org/show_bug.cgi?id=38880 * Scripts/webkitpy/tool/steps/checkstyle.py: * Scripts/webkitpy/tool/steps/checkstyle_unittest.py: Added. 2010-05-11 Jian Li Reviewed by Dmitry Titov. Expose FileReader interface. https://bugs.webkit.org/show_bug.cgi?id=38609 * Scripts/build-webkit: turn on building FileReader for Apple's WebKit. 2010-05-10 Tony Chang Reviewed by Kent Tamura. [chromium] Build DRT when running build-webkit --chromium https://bugs.webkit.org/show_bug.cgi?id=38730 * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Removed. * Scripts/build-dumprendertree: This does nothing now. 2010-05-10 Jon Honeycutt REGRESSION(r59100): Added test is broken on many platforms. https://bugs.webkit.org/show_bug.cgi?id=38881 Reviewed by Eric Seidel. * DumpRenderTree/win/TestNetscapePlugin/main.cpp: (NPP_Destroy): Use pluginLog, rather than printf, to match other platforms. 2010-05-10 Dirk Pranke Unreviewed, build fix. Fix a build failure caused by assuming the default platform in a unit test for new-run-webkit-tests instead of specifying --platform test. * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-10 Dirk Pranke Unreviewed, build-fix new-run-webkit-tests: fix test failure caused by me failing to update the expected output. Also, run '--platform test' instead of 'platform dryrun' since the former is guaranteed to work and the latter isn't. * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-10 Dirk Pranke Reviewed by David Levin. new-run-webkit-tests: looks like the unicode conversion broke --print-last-failures and --retest-last-failures. Fixing. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-10 Dirk Pranke Reviewed by David Levin. Re-attempt to fix 38616 - newline handling in new-run-webkit-tests. I didn't handle some cases correctly before and the solution was confusing. The new patch assumes all calls to the printing module don't have newlines, and will append newlines where necessary, just like logging does. https://bugs.webkit.org/show_bug.cgi?id=38790 * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/layout_package/metered_stream_unittest.py: * Scripts/webkitpy/layout_tests/layout_package/printing.py: * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-10 Kent Tamura Reviewed by Adam Barth. Make tkent a reviewer https://bugs.webkit.org/show_bug.cgi?id=38875 * Scripts/webkitpy/common/config/committers.py: 2010-05-07 Jon Honeycutt Crash closing window containing Flash plug-in https://bugs.webkit.org/show_bug.cgi?id=38797 Reviewed by Eric Seidel. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginAllocate): Initialize new member to false. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h: Added a new member. * DumpRenderTree/win/TestNetscapePlugin/main.cpp: (NPP_New): Check whether the element has the "testGetURLOnDestroy" attribute, and record that. (NPP_Destroy): If "testGetURLOnDestroy" is set, perform a load while destroying the plug-in. 2010-05-10 Eric Seidel Reviewed by David Levin. Executive.kill_* do not work with windows python https://bugs.webkit.org/show_bug.cgi?id=38872 http://trac.webkit.org/changeset/57444 is where the original breakage occurred. http://trac.webkit.org/changeset/58314 is where the regression started affecting chromium. I have since learned that sys.platform has no "windows" value. "win32" is always the value, under 32 or 64 bit windows The tests for this code are not run anywhere because test-webkitpy does not yet work on "win32". Mostly due to depending on unixisms like "cat" and "yes". * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/common/system/executive_unittest.py: 2010-05-10 Dirk Pranke Reviewed by Eric Seidel. Fix a bug in rebaseline-chromium-webkit-tests where we would crash instead of logging an error and exiting if it couldn't find either a debug or a release build of the image diff binary. https://bugs.webkit.org/show_bug.cgi?id=38692 * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests_unittest.py: Added. 2010-05-10 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests fails when run under sys.platform == "windows" due to undefined signal.SIGKILL https://bugs.webkit.org/show_bug.cgi?id=38861 * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/common/system/executive_unittest.py: 2010-05-10 Jer Noble Unreviewed. Adding myself as a committer. * Scripts/webkitpy/common/config/committers.py: 2010-05-10 Hans Wennborg Reviewed by Jeremy Orlow. [Chromium] Add quota parameter to WebViewClient::createSessionStorageNamespace() https://bugs.webkit.org/show_bug.cgi?id=38750 Put a per-origin quota on session storage since it is using memory in the browser process, and should not be allowed to grow arbitrarily large. See also http://trac.webkit.org/changeset/58828. * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::createSessionStorageNamespace): * DumpRenderTree/chromium/WebViewHost.h: 2010-05-10 Csaba Osztrogonác Rubber-stamped by Simon Hausmann. [Qt] Roll-out r59020 and r59021, because the Qt part of these changes haven't been landed in Qt trunk yet. Should be rolled-in again after the merge. https://bugs.webkit.org/show_bug.cgi?id=32967 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::DumpRenderTree::DumpRenderTree): * DumpRenderTree/qt/DumpRenderTreeQt.h: 2010-05-09 Daniel Bates Reviewed by Chris Jerdonek. https://bugs.webkit.org/show_bug.cgi?id=38812 Make the regular expressions for parsing the start of an SVN and Git header global variables since they are used throughout VCSUtils.pm. * Scripts/VCSUtils.pm: 2010-05-09 Chris Jerdonek Reviewed by Daniel Bates. Finished moving the header-parsing logic from svn-apply and -unapply to VCSUtils.pm's parsing methods. https://bugs.webkit.org/show_bug.cgi?id=38802 * Scripts/VCSUtils.pm: - Added to parseGitDiffHeader() the ability to parse and store whether a file is new or deleted. - Also reordered in parseGitDiffHeader() some of the else statements to a more readable ordering. - Added to parseSvnDiffHeader() the ability to parse and store whether a file is new. * Scripts/svn-apply: - Changed handleGitBinaryChange() to use the new "isNew" and "isDeletion" diffHash key-values. - Changed patch() to use the new "isNew" diffHash key-value. * Scripts/svn-unapply: - Changed patch() to use the new "isNew" and "isDeletion" diffHash key-values. * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: - Added unit tests for new and deleted files. * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl: - Updated the unit tests as necessary. - Added a unit test for a deleted file. * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl: - Updated the unit tests as necessary. 2010-05-08 Chris Jerdonek Reviewed by Daniel Bates. Added to svn-apply support for git renames and copies with similarity index less than 100%. https://bugs.webkit.org/show_bug.cgi?id=32834 * Scripts/VCSUtils.pm: - Added to parseGitDiffHeader() support for renames and similarity index less than 100%. - Added to parseDiff() support for processing renames, renames with changes, and copies with changes. - Added to parsePatch() the ability to process multiple return values from parseDiff(). * Scripts/svn-apply: - Added to patch() the ability to process diff hashes with the isDeletion key-value set. * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: - Updated the unit tests as necessary. - Added unit tests for rename with similarity index 100%, rename with similarity index < 100%, and rename with a change to the executable bit. * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl: - Added unit tests for rename with similarity index 100%, rename with similarity index < 100%, and rename with a change to the executable bit. * Scripts/webkitperl/VCSUtils_unittest/parsePatch.pl: - Updated the unit tests as necessary. * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl: - Simplified the carriage-return unit test to more narrowly test only carriage returns. 2010-05-08 Chris Jerdonek Reviewed by Daniel Bates. This revision suppresses the misleading "error: pathspec..." messages when using svn-apply to add a binary file from a Git diff. https://bugs.webkit.org/show_bug.cgi?id=38047 When adding a new binary file from a Git diff, svn-apply prints a misleading error of the form -- "error: pathspec '' did not match any file(s) known to git. Did you forget to 'git add'?" This patch suppresses these messages since they are normal. * Scripts/VCSUtils.pm: Added the callSilently() subroutine from runPatchCommand.pl, which executes a Perl function while suppressing STDERR. * Scripts/svn-apply: Refactored the Git portion of scmKnowsOfFile() into a gitKnowsOfFile(), and called this new subroutine using callSilently(). * Scripts/webkitperl/VCSUtils_unittest/runPatchCommand.pl: Removed callSilently() since it was moved to VCSUtils.pm in this patch. 2010-05-08 Victor Wang Reviewed by Adam Barth. [chromium]: Upload test results json files to app engine server Add an option to run_webkit_tests.py to upload generated JSON files to app engine server. These JSON files will be used by chromium layout test falkiness dashboard. https://bugs.webkit.org/show_bug.cgi?id=36063 * Scripts/webkitpy/layout_tests/layout_package/test_results_uploader.py: Added. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-05-08 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Build the ImageDiff tool for all platforms including Windows and Symbian https://bugs.webkit.org/show_bug.cgi?id=38706 Use qmath.h instead of math.h to make it portable. * DumpRenderTree/qt/ImageDiff.cpp: (main): 2010-05-08 Robert Hogan Reviewed by Simon Hausmann. [Qt] Fix http/tests/xmlhttprequest/cross-origin-no-authorization.html and http/tests/xmlhttprequest/cross-origin-authorization.html QHttpNetworkRequest adds Authorization and Cookie headers to XHRs without knowing if this is valid behaviour or not. In order to allow Qt to decide whether Cookie/Authorization headers should be added to an XHR QtWebKit needs to use an attribute added to QNetworkRequest. These new attributes are: QNetworkRequest::CookieLoadControlAttribute, QNetworkRequest::CookieSaveControlAttribute,and QNetworkRequest::AuthenticationReuseControlAttribute. In order to properly support the tests, Qt's DRT needs to use one NetworkAccessManager for all pages. This allows it to use cached credentials where appropriate. The tests now pass when run individually but there seems to be a problem with leaking the results of requests across tests when run with the others in http/tests. This will be addressed in a separate patch. https://bugs.webkit.org/show_bug.cgi?id=32967 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::DumpRenderTree::DumpRenderTree): * DumpRenderTree/qt/DumpRenderTreeQt.h: 2010-05-04 Robert Hogan Reviewed by Eric Seidel. [Qt] unskip http/tests/plugins/npapi-response-headers.html Turns out this failed because run-webkit-tests was eating the first occurrence of 'Content-Type: text/plain' in the test output as a header. Strange but true. So do as Chromium does and preface all text dumps with the 'Content-Type: text/plain' header. https://bugs.webkit.org/show_bug.cgi?id=38541 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::dump): 2010-05-08 Eric Seidel Reviewed by Daniel Bates. test-webkitpy fails under cygwin https://bugs.webkit.org/show_bug.cgi?id=38718 * Scripts/webkitpy/common/system/executive.py: - Add _KILL_PROCESS_KILLED_PROCESS_EXIT_CODE and _KILL_ALL_KILLED_PROCESS_EXIT_CODE to store the expected exit codes of processes killed by kill_process and kill_all. These two constants are only used by the unit tests but are stored in executive.py so they can be right next to the platform ifs. - Remove unnecessary str() conversion, run_command does that for us. - Make os.kill retry on cygwin on EAGAIN. It's unclear why CYGWIN throws EAGAIN, but it only does so sometimes. 3 may not be enough retries, but we'll try it to start with. - Add _windows_image_name to automatically convert "yes" to "yes.exe" for use with taskkill.exe /im. Various callers to kill_all could be updated to remove the .exe, but that can be done in another patch. - Use taskkill.exe for killall on cygwin. * Scripts/webkitpy/common/system/executive_unittest.py: - Use the new *_KILLED_PROCESS_EXIT_CODE constants which are correctly set to 0 on windows/cygwin systems where taskkill.exe is used. - Test _windows_image_name * Scripts/webkitpy/layout_tests/port/chromium_win.py: - Add FIXME about including mac-snowleopard in baseline_search_path. * Scripts/webkitpy/layout_tests/port/webkit.py: - Make default_configuration actually read from the Configuration file. * Scripts/webkitpy/layout_tests/port/webkit_unittest.py: Added. - Test default_configuration * Scripts/webkitpy/layout_tests/port/win.py: - Need a basic baseline_search_path if --platform dryrun is to work. 2010-05-08 Eric Seidel Unreviewed, just reverting commit. REGRESSION(59000): r59000 contained all sorts of changes it should not have, needs revert. https://bugs.webkit.org/show_bug.cgi?id=38798 * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/common/system/executive_unittest.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/webkit.py: * Scripts/webkitpy/layout_tests/port/webkit_unittest.py: Removed. * Scripts/webkitpy/layout_tests/port/win.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/download_unittest.py: 2010-05-06 Eric Seidel Reviewed by Daniel Bates. test-webkitpy fails under cygwin https://bugs.webkit.org/show_bug.cgi?id=38718 * Scripts/webkitpy/common/system/executive.py: - Add _KILL_PROCESS_KILLED_PROCESS_EXIT_CODE and _KILL_ALL_KILLED_PROCESS_EXIT_CODE to store the expected exit codes of processes killed by kill_process and kill_all. These two constants are only used by the unit tests but are stored in executive.py so they can be right next to the platform ifs. - Remove unnecessary str() conversion, run_command does that for us. - Make os.kill retry on cygwin on EAGAIN. It's unclear why CYGWIN throws EAGAIN, but it only does so sometimes. 3 may not be enough retries, but we'll try it to start with. - Add _windows_image_name to automatically convert "yes" to "yes.exe" for use with taskkill.exe /im. Various callers to kill_all could be updated to remove the .exe, but that can be done in another patch. - Use taskkill.exe for killall on cygwin. * Scripts/webkitpy/common/system/executive_unittest.py: - Use the new *_KILLED_PROCESS_EXIT_CODE constants which are correctly set to 0 on windows/cygwin systems where taskkill.exe is used. - Test _windows_image_name * Scripts/webkitpy/layout_tests/port/chromium_win.py: - Add FIXME about including mac-snowleopard in baseline_search_path. * Scripts/webkitpy/layout_tests/port/webkit.py: - Make default_configuration actually read from the Configuration file. * Scripts/webkitpy/layout_tests/port/webkit_unittest.py: Added. - Test default_configuration * Scripts/webkitpy/layout_tests/port/win.py: - Need a basic baseline_search_path if --platform dryrun is to work. 2010-05-07 Eric Seidel Reviewed by Nikolas Zimmermann. DryrunTest fails on every platform other than mac https://bugs.webkit.org/show_bug.cgi?id=38796 The test uses the port detection logic to find a suitable port to use results from. However that detection logic assumes chromium on linux, which requires a chromium checkout which the bots don't have. The test is broken and we'll need to fix it. For now I'm just going to disable the test on all platforms besides mac. * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-07 Eric Seidel Reviewed by Daniel Bates. Clean up baseline_search_path to use map to reduce copy/paste code https://bugs.webkit.org/show_bug.cgi?id=38792 Reading which portnames a port falls back to is easier if we convert port names to paths with map instead of using copy/paste code. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/mac.py: 2010-05-07 Eric Seidel Reviewed by Daniel Bates. rollout commands fail when commit is missing bug number https://bugs.webkit.org/show_bug.cgi?id=38791 * Scripts/webkitpy/tool/commands/download.py: - _commit_info failed to actually return the CommitInfo in the no-bug-id case. * Scripts/webkitpy/tool/commands/download_unittest.py: - Test that the fix worked. 2010-05-07 Darin Fisher Fix build bustage: toElement should be to. * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::elementDoesAutoCompleteForElementWithId): 2010-05-07 Chris Jerdonek Reviewed by Daniel Bates. Refactored VCSUtils.pm's parse-related methods to leave inapplicable hash values unset instead of setting them to "undef". https://bugs.webkit.org/show_bug.cgi?id=38724 Preferring "not set" over "undef" keeps the unit tests smaller and easier to maintain. Otherwise, we would have to update every unit test case each time we add support for a new key-value pair -- instead of just the relevant ones. * Scripts/VCSUtils.pm: - In parseGitDiffHeader(), adjusted the handling of these key-values: executableBitDelta and isBinary. - In parseSvnDiffHeader(), adjusted the handling of these key-values: copiedFromPath, isBinary, and sourceRevision. - In parseDiffHeader(), adjusted the handling of these key-values: isGit and isSvn. - In parseDiff(), adjusted the handling of these key-values: isBinary, isGit, isSvn, and sourceRevision. * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: - Updated the unit tests as necessary. * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Updated the unit tests as necessary. * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl: - Updated the unit tests as necessary. * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl: - Updated the unit tests as necessary. 2010-05-06 Mark Rowe Rubber-stamped by Dan Bernstein. Exclude leaks due to from the output. * Scripts/old-run-webkit-tests: 2010-05-06 Sheriff Bot Unreviewed, rolling out r58933. http://trac.webkit.org/changeset/58933 https://bugs.webkit.org/show_bug.cgi?id=38717 "Broke all websocket tests on Tiger" (Requested by eseidel on #webkit). * Scripts/new-run-webkit-websocketserver: * Scripts/old-run-webkit-tests: * Scripts/run-webkit-websocketserver: * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/thirdparty/__init__.py: * Scripts/webkitpy/thirdparty/pywebsocket/COPYING: Added. * Scripts/webkitpy/thirdparty/pywebsocket/MANIFEST.in: Added. * Scripts/webkitpy/thirdparty/pywebsocket/README: Added. * Scripts/webkitpy/thirdparty/pywebsocket/README.webkit: Added. * Scripts/webkitpy/thirdparty/pywebsocket/example/echo_client.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/example/echo_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/example/handler_map.txt: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/__init__.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/dispatch.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/handshake.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/headerparserhandler.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/memorizingfile.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/msgutil.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/standalone.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/util.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/setup.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/config.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/mock.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/run_all.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/test_dispatch.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/test_handshake.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/test_memorizingfile.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/test_mock.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/test_msgutil.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/test_util.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/README: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/blank_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/origin_check_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/sub/exception_in_transfer_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/sub/no_wsh_at_the_end.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/sub/non_callable_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/sub/plain_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/sub/wrong_handshake_sig_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/handlers/sub/wrong_transfer_sig_wsh.py: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/hello.pl: Added. 2010-05-06 Fumitoshi Ukai Reviewed by David Levin. WebSocket: pywebsocket 0.5 https://bugs.webkit.org/show_bug.cgi?id=38034 Remove pywebsocket from webkitpy/thirdparty. Make pywebsocket autoinstalled. * Scripts/new-run-webkit-websocketserver: Add --output-dir option. * Scripts/old-run-webkit-tests: Use new-run-webkit-websocketserver, rather than directly run pywebsocket's standalone.py * Scripts/run-webkit-websocketserver: Ditto. * Scripts/webkitpy/layout_tests/port/websocket_server.py: Use autoinstalled pywebsocket. * Scripts/webkitpy/thirdparty/__init__.py: Autoinstall pywebsocket * Scripts/webkitpy/thirdparty/pywebsocket: Removed. 2010-05-06 Chris Jerdonek Reviewed by Daniel Bates. svn-apply now understands the Git diff "copy from" syntax when the similarity index is 100%. https://bugs.webkit.org/show_bug.cgi?id=38628 * Scripts/VCSUtils.pm: - Adjusted parseGitDiffHeader() to parse the "copy from" and "similarity index" lines. * Scripts/svn-unapply: - Adjusted the patch() subroutine so that copies are recognized as file additions. * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl: - Added unit tests for the cases of a copy with similarity index 100% and less than 100%. 2010-05-06 Chris Jerdonek Reviewed by Daniel Bates. Removed the need for svn-apply and -unapply to re-parse whether a diff is binary or not. https://bugs.webkit.org/show_bug.cgi?id=38320 * Scripts/VCSUtils.pm: - Adjusted parseGitDiffHeader() to set the isBinary key. - Adjusted parseSvnDiffHeader() to set the isBinary key. - Adjusted parseDiffHeader() to set the isBinary key. - Changed the scmFormat key set by parseDiffHeader() to isGit and isSvn keys. - Adjusted parseDiff() to set the isBinary, isGit, and isSvn keys. * Scripts/svn-apply: - Updated the patch() method to use the isBinary, isGit, and isSvn keys. * Scripts/svn-unapply: - Updated the patch() method to use the isBinary and isSvn keys. * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: - Updated the unit tests as necessary. - Added a test case to test that the isBinary key is getting set properly. * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Updated the unit tests as necessary. * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl: - Updated the unit tests as necessary. * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl: - Updated the unit tests as necessary. 2010-05-06 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add support for resources on Mac https://bugs.webkit.org/show_bug.cgi?id=38637 Repack webkit_chromium_resources.pak, webkit_strings_en-US.pak, and webkit_resources.pak, and put them as Mac bundle resource. The 'actions' section is almost same as a part of test_shell.gypi. * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: 2010-05-06 Csaba Osztrogonác [Qt] Unreviewed buildfix after r58917. * DumpRenderTree/qt/LayoutTestControllerQt.h: Missing function declaration added. 2010-05-06 Anders Carlsson Reviewed by Darin Adler and Dan Bernstein.. REGRESSION (r51617): when plugins are disabled, plugins show up as garbage characters https://bugs.webkit.org/show_bug.cgi?id=38698 Add a 'setPluginsEnabled' layoutTestController function for disabling plug-ins. This is only implemented on Mac currently because the bug that needs this functionality is mac specific. * DumpRenderTree/LayoutTestController.cpp: (setPluginsEnabledCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setPluginsEnabled): * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setPluginsEnabled): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setPluginsEnabled): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setPluginsEnabled): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setPluginsEnabled): 2010-05-06 Jochen Eisinger Reviewed by Dimitri Glazkov. Make ImageDiff depend on WebKit. When compiled from within Chromium, WTF is not a standalone dynamic library but depends on WebKit. https://bugs.webkit.org/show_bug.cgi?id=38632 * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: 2010-05-06 Simon Hausmann Reviewed by Kenneth Rohde Christiansen. [Qt] Replace public inspector url with private property for QtLauncher https://bugs.webkit.org/show_bug.cgi?id=35340 Replace the public API with a private dynamic property until this feature is ready. * QtLauncher/main.cpp: (LauncherWindow::init): 2010-05-05 Joseph Pecoraro Reviewed by Pavel Feldman. Web Inspector: build-webkit --inspector-frontend Should Exclude *.re2js https://bugs.webkit.org/show_bug.cgi?id=38449 * Scripts/webkitdirs.pm: 2010-05-05 Charles Wei Reviewed by George Staikos This patch adds WCSS -wap-input-format and -wap-input-required support to WebKit Make the test cases in fast/wcss optionional only when WCSS is enabled. https://bugs.webkit.org/show_bug.cgi?id=37848 * Scripts/old-run-webkit-tests: * Scripts/webkitperl/features.pm: 2010-05-05 Kent Tamura Reviewed by Eric Seidel. [DRT/Chromium] Remove InitWebCoreSystemInterface() call https://bugs.webkit.org/show_bug.cgi?id=38624 Chromium r45167 added InitWebCoreSystemInterface() to webkit/support/platform_support_mac.mm. So we don't need to call it from DumpRenderTree.cpp anymore. * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: * DumpRenderTree/chromium/DumpRenderTree.cpp: (main): Remove InitWebCoreSystemInterface(). 2010-05-05 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: clean up newline handling in printing The new printing module seems to handle newlines somewhat inconsistently, especially in --verbose mode. This change cleans up the code to make things more consistent and adds a bunch of unit tests. https://bugs.webkit.org/show_bug.cgi?id=38616 * Scripts/webkitpy/common/array_stream.py: Added. * Scripts/webkitpy/common/array_stream_unittest.py: Added. * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/layout_package/metered_stream_unittest.py: Added. * Scripts/webkitpy/layout_tests/layout_package/printing.py: * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-05-05 James Robinson Reviewed by Adam Barth. Ban the single letter 'l' as an identifier name http://trac.webkit.org/changeset/58844 Add a lint rule to ban the single letter 'l' as an identifier name since it is very easy to confuse with the numeral '1', especially in code like WebCore/css/CSSHelper.cpp. See http://trac.webkit.org/changeset/58844 as an example of a bug caused by confusing short variable names. * Scripts/webkitpy/style/checkers/cpp.py: * Scripts/webkitpy/style/checkers/cpp_unittest.py: 2010-05-04 Eric Seidel Reviewed by Shinichiro Hamaji. PrettyPatch.pretty_diff("") should not hang https://bugs.webkit.org/show_bug.cgi?id=38552 Also found a bug in PrettyPatch.pretty_diff where it would hang when passed "" as input. I suspect there may be bugs in prettify.rb (or our use there-of) where it can hang, which would then cause the testing thread to hang. * Scripts/webkitpy/common/prettypatch.py: - Don't hang when passed "" * Scripts/webkitpy/common/prettypatch_unittest.py: - Test that we don't hang when passed "" * Scripts/webkitpy/layout_tests/port/base.py: - Add a FIXME that we should share code with prettypatch.rb 2010-05-04 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: turn off threading on the Chromium Mac port until we can stabilize the port more and figure out why it is hanging so frequently. https://bugs.webkit.org/show_bug.cgi?id=38553 * Scripts/webkitpy/layout_tests/port/chromium_mac.py: - override default_child_processes() and log a warning * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - fix a typo that caused us to print a method object instead of the value the method object returns in the case where there is only one child process. * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: - Add unit tests for the output of run_webkit_tests - in this case, the handling of --child-processes and --print config 2010-05-04 Timothy Hatcher Fix the find command in extract-localizable-strings so skip directories are correctly skipped and header files are searched. https://bugs.webkit.org/show_bug.cgi?id=38545 rdar://problem/7941295 Reviewed by Darin Adler. * Scripts/extract-localizable-strings: Append -o after each -prune so -and isn't implied. Surround all the -name arguments so they get an implied -print action. Removed check for "icu". Skip any header that ends in LocalizableStrings.h, so SafariLocalizableStrings.h is skipped. * Scripts/update-webkit-localizable-strings: Add the two icu directories to the skip list. 2010-05-04 Jesus Sanchez-Palencia Reviewed by Eric Seidel. Wrong documentation on 'webkit-patch help land'. https://bugs.webkit.org/show_bug.cgi?id=37871 Small fix on the help documentation for webkit-patch land. * Scripts/webkitpy/tool/commands/download.py: 2010-05-04 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] QWebPage viewMode property https://bugs.webkit.org/show_bug.cgi?id=38119 Rename the property from wrt_viewMode to _q_viewMode. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setViewModeMediaFeature): 2010-05-04 Jochen Eisinger Reviewed by Jeremy Orlow. Fix typo in run_webkit_tests.py: s/_print\./_printer./ https://bugs.webkit.org/show_bug.cgi?id=38515 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-05-04 Chris Jerdonek Reviewed by Eric Seidel. This revision completes the terminology change from "processor" to "checker" for the CarriageReturnProcessor, CppProcessor, PythonProcessor, and TextProcessor classes, etc. https://bugs.webkit.org/show_bug.cgi?id=38262 The word "processor" currently has two uses in our code. This revision renames the lower-level use to "checker" and preserves the word "processor" for higher-level, more general uses. This revision also makes whatever other name changes that logically followed from this change. * Scripts/check-webkit-style: - Updated references to PatchChecker. * Scripts/webkitpy/style/checker.py: - Renamed the StyleCheckerConfiguration class to StyleProcessorConfiguration. - Renamed the ProcessorDispatcher class to CheckerDispatcher, and made similar changes for the class's method names. - Renamed the PatchChecker class to PatchReader. - Updated the file as necessary to accommodate the other class renames in this patch. * Scripts/webkitpy/style/checker_unittest.py: - Updated the unit test code as necessary. * Scripts/webkitpy/style/checkers/common.py: - Renamed the CarriageReturnProcessor class to CarriageReturnChecker, and changed its process() method to check(). * Scripts/webkitpy/style/checkers/common_unittest.py: - Updated the unit test code as necessary. * Scripts/webkitpy/style/checkers/cpp.py: - Renamed the CppProcessor class to CppChecker, and renamed its process() method to check(). * Scripts/webkitpy/style/checkers/cpp_unittest.py: - Updated the unit test code as necessary. * Scripts/webkitpy/style/checkers/python.py: - Renamed the PythonProcessor class to PythonChecker, and renamed its process() method to check(). * Scripts/webkitpy/style/checkers/python_unittest.py: - Updated the unit test code as necessary. * Scripts/webkitpy/style/checkers/text.py: - Renamed the TextProcessor class to TextChecker, and renamed its process() method to check(). * Scripts/webkitpy/style/checkers/text_unittest.py: - Updated the unit test code as necessary. * Scripts/webkitpy/style/error_handlers.py: - Updated the code as necessary. * Scripts/webkitpy/style/error_handlers_unittest.py: - Updated the unit test code as necessary. 2010-05-04 Chris Jerdonek Reviewed by Eric Seidel. Adjusted svn-apply and -unapply to accept git diffs generated using the --no-prefix flag. https://bugs.webkit.org/show_bug.cgi?id=32438 * Scripts/VCSUtils.pm: - Loosened the regular expression for the "diff --git" line to match when the --no-prefix flag is used with "git diff". - Also refactored the code parsing the first line so that the script exits with an error message if the first line cannot be parsed. * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl: - Added a unit test case for the --no-prefix case. 2010-05-04 Chris Jerdonek Reviewed by Daniel Bates. Changed VCSUtils.pm's parseDiffHeader() to call the new parseGitDiffHeader() method. https://bugs.webkit.org/show_bug.cgi?id=38454 This revision makes more progress towards adding executable-bit support to svn-apply and svn-unapply. It also makes more progress towards refactoring the code into a more maintainable form. * Scripts/VCSUtils.pm: - Removed gitdiff2svndiff(). - Removed the Git-specific logic from parseDiffHeader() and renamed it parseSvnDiffHeader(). - Added a new parseDiffHeader() subroutine which calls parseSvnDiffHeader() or parseGitDiffHeader() depending on the format of the first header line. * Scripts/webkitperl/VCSUtils_unittest/gitdiff2svndiff.pl: Removed. * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Removed most of the test cases since these cases are now covered by the unit tests for parseSvnDiffHeader() and parseGitDiffHeader(). * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl: Added. - Copied the SVN unit tests from parseDiffHeader.pl and updated them as necessary. 2010-05-03 Eric Seidel Reviewed by Adam Barth. Builders should run the perl and python unit tests on every commit https://bugs.webkit.org/show_bug.cgi?id=37976 The unit tests take a few seconds to run, so they should not have any noticable effect on builder speed. We're running the tests everywhere but Tiger as Tiger's Python version is ancient. I would have rather have detected the python version of the slave but I couldn't find any API to do that, and I didn't want to hack version detection into test-webkitpy (at least not yet). * BuildSlaveSupport/build.webkit.org-config/master.cfg: 2010-05-03 Chris Jerdonek Reviewed by Adam Barth. Fixed a recent REGRESSION that caused svn-apply and -unapply to skip over changes to the first file in a diff if leading junk was present (like in an e-mail diff) and if the --force option was used. https://bugs.webkit.org/show_bug.cgi?id=38507 * Scripts/svn-apply: - Removed the bit of code at the beginning of the patch() subroutine that checks for the "Index:" line at the beginning of a file diff (since the parsePatch() subroutine already checks this). * Scripts/svn-unapply: - Removed the bit of code at the beginning of the patch() subroutine that checks for the "Index:" line at the beginning of a file diff (since the parsePatch() subroutine already checks this). 2010-05-03 Chris Jerdonek Unreviewed. Adjusted the ChangeLog entry below for r58732 (bug 35804) to reflect the fact that the change will not become active until the patch for bug 38454 lands. 2010-05-03 Chris Jerdonek Reviewed by Eric Seidel. Added code for svn-apply and -unapply to display an instructive error message if the --binary flag is left off the "git diff" command for diffs containing binary file differences. https://bugs.webkit.org/show_bug.cgi?id=35804 This change will become active when parseDiffHeader() is modified to call parseGitDiffHeader (see bug 38454). * Scripts/VCSUtils.pm: - Adjusted parseDiffHeader() to exit with an appropriate error message if it encounters a line of the form "Binary files and differ". 2010-05-03 Dirk Pranke Unreviewed, build fix. new-run-webkit-tests: r58728 broke the buildbot logic for parsing the output of the log; specifying --verbose should basically be equivalent to --print everything, but instead it was equivalent to not specifying --print and getting the default set. Now, --verbose acts as if --print everything was implicitly specified as the default (you can still override it if you specify both; this is a somewhat debatable call). https://bugs.webkit.org/show_bug.cgi?id=38504 * Scripts/webkitpy/layout_tests/layout_package/printing.py: 2010-05-03 Dirk Pranke Unreviewed, build fix. new-run-webkit-tests: Fix minor precedence bug introduced in r58728 where we printed "-\n" 78 times instead of "-" 78 times followed by a single "\n". * Scripts/webkitpy/layout_tests/layout_package/printing.py: 2010-05-03 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: refactor a large chunk of the printing/logging code out of run-webkit-tests py (almost 300 lines out of 1900). This change also renames --log to --print (to be slightly more descriptive). I've also added better help messages for printing. The new code has unit tests! There is still more code to be moved, but this patch is big enough as it is. Namely, still to move are the printing of the actual results and the timing statistics, which should move another 300-400 lines out of the file. Notable changes to run_webkit_tests.py beyond code simply moving: * MeteredStream is now hidden under the new printing.Printer class. All the references to self._meter now point to self._printer. * All logging configuration is done in printing.configure_logging() * Instead of using write() lambdas to control what is and isn't printed, we use separate methods on the printer object. This will make it easier to grep which print statements are printed under protection of each flag. * The print_results flag I added a few revs back to suppress printing in the unit tests has been replaced with --print nothing. * The ResultSummary class now stores the entire TestResult for each test, not just the actual result type. * summarize_unexpected_results() got moved from a method on TestRunner to a standalone function. This should move into a separate file along with the ResultSummary class and the TestResult class * The --trace option added recently has been replaced by '--print trace-everything' and '--print trace-unexpected' https://bugs.webkit.org/show_bug.cgi?id=38018 * Scripts/new-run-webkit-tests: - update to new entry points in run_webkit_tests.py * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: - fix a minor nit where we were printing an empty string where we didn't need to * Scripts/webkitpy/layout_tests/layout_package/printing.py: Added. * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py: Added * Scripts/webkitpy/layout_tests/port/test.py: - implement relative_test_filename() and expected_filename() so we can test printing unexpected results in a platform-neutral way * Scripts/webkitpy/run_webkit_test.py: - move a lot of the printing code into printing.py - change the signatures of the exported entry points for easier unit testing * Scripts/webkitpy/run_webkit_tests_unittest.py: - update w/ changes to run_webkit_tests entry points. 2010-05-03 Kevin Watters Reviewed by Kevin Ollivier. [wx] Build and use Mac's ComplexTextController to support complex text in wx. https://bugs.webkit.org/show_bug.cgi?id=38482 * wx/build/settings.py: 2010-05-03 Abhishek Arya Reviewed by Adam Barth. Add support for controlling clipboard access from javascript. Clipboard access from javascript is enabled in test framework. https://bugs.webkit.org/show_bug.cgi?id=27751 * DumpRenderTree/LayoutTestController.cpp: (setJavaScriptCanAccessClipboardCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::setJavaScriptCanAccessClipboard): (LayoutTestController::overridePreference): * DumpRenderTree/chromium/LayoutTestController.h: * DumpRenderTree/chromium/TestShell.cpp: (TestShell::resetWebSettings): * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/qt/LayoutTestControllerQt.h: * DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): 2010-05-03 Anders Carlsson Reviewed by Adam Roben. Maui MiniBrowser: Add an option to show/hide the web view https://bugs.webkit.org/show_bug.cgi?id=38486 * MiniBrowser/win/BrowserWindow.cpp: (BrowserWindow::createWindow): Set the background brush to something other than null. (BrowserWindow::onCommand): Show and hide the web view accordingly. * MiniBrowser/win/MiniBrowser.rc: * MiniBrowser/win/resource.h: Add new menu item. 2010-05-03 Chris Jerdonek Reviewed by Daniel Bates. Added a parseGitDiffHeader() subroutine to VCSUtils.pm that parses any changes to the executable bit in a Git diff. https://bugs.webkit.org/show_bug.cgi?id=38425 This revision is more preparation towards adding "executable bit" support to svn-apply and svn-unapply. No code is going "live" in this change except for the new unit tests in test-webkitperl. * Scripts/VCSUtils.pm: - Added isExecutable() to determine whether a file mode has the executable bit set or not. - Added parseGitDiffHeader() to parse the header of a Git diff. * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl: Added. - Added unit tests for parseGitDiffHeader(). 2010-05-03 Daniel Bates Reviewed by Chris Jerdonek. https://bugs.webkit.org/show_bug.cgi?id=38447 Refactor the unit tests in VCSUtils_unittest/parseDiff.pl to use Test::More::is_deeply like we do in VCSUtils_unittest/parseDiffHeader.pl. * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: 2010-05-02 Chris Jerdonek Unreviewed. Corrected a file path in the ChangeLog entry for r58663 (bug 38319) below. 2010-05-02 Chris Jerdonek Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=38319 * Scripts/VCSUtils.pm: - In parseDiffHeader()-- - Added an "scmFormat" hash key to the return value to represent whether the diff is Git or SVN formatted. - Adjusted the code so the value of "copiedFromPath" will be undef rather than "does not exist" if the file was not copied. * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: - Added a FIXME to refactor these unit tests to use is_deeply(). * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Updated the unit tests to test the "scmFormat" value. - Simplified the unit tests by refactoring them to use is_deeply(). 2010-05-01 Daniel Bates Reviewed by Chris Jerdonek. https://bugs.webkit.org/show_bug.cgi?id=38423 Adds infrastructure to change the file mode of a file using the appropriate SCM-specific routines. No functionality was changed, so no new tests. * Scripts/VCSUtils.pm: Added subroutines scmToggleExecutableBit, scmAddExecutableBit, and scmRemoveExecutableBit. * Scripts/svn-apply: Check for the hash key executableBitDelta and toggle the executable bit. * Scripts/svn-unapply: Ditto. 2010-04-30 Chris Marrin Reviewed by Simon Fraser. Enabled accelerated compositing in DRT for Windows https://bugs.webkit.org/show_bug.cgi?id=38404 * DumpRenderTree/win/DumpRenderTree.cpp: (main): 2010-04-30 Anders Carlsson Try to fix GTK+ build. * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp: (webkit_test_plugin_new_stream): 2010-04-30 Anders Carlsson Fix build. * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp: 2010-04-30 Anders Carlsson Reviewed by Timothy Hatcher. Next step towards fixing https://bugs.webkit.org/show_bug.cgi?id=20784 move npapi.h to C99 integer types Use the C99 types everywhere. The "old" types are still around but will be removed in a subsequent commit. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (int32VariantToIdentifier): (doubleVariantToIdentifier): (testIdentifierToInt): (testGetIntIdentifier): * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): (NPP_NewStream): (NPP_WriteReady): (NPP_Write): (NPP_HandleEvent): * DumpRenderTree/win/TestNetscapePlugin/main.cpp: (NPP_New): (NPP_NewStream): (NPP_WriteReady): (NPP_Write): (NPP_HandleEvent): 2010-04-30 Steve Block Reviewed by Jeremy Orlow. Changed Steve Block from committer to reviewer. * Scripts/webkitpy/common/config/committers.py: 2010-04-28 Ojan Vafai Reviewed by Eric Seidel. webkit-patch doesn't work if a git repo is tracking multiple svn repos https://bugs.webkit.org/show_bug.cgi?id=38290 Getting the tests to pass required getting our SVN repo to more closely match the real svn.webkit.org repo by having a trunk directory. That involved adding an extra commit at the beginning and thus changing all the commit numbers in the tests. * Scripts/webkitpy/common/checkout/scm.py: 2010-04-29 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests can deadlock with Chromium's TestShell https://bugs.webkit.org/show_bug.cgi?id=38298 Fix _write_command_and_read_line to never send unicode() to test_shell, instead to always encode as utf-8. This was causing random hangs because if test_shell ever encounters a \0 in the stream it can deadlock with NRWT. There is still a deadlock bug to fix in NRWT/test_shell design, however this fix should make the deadlock occur less often. * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_unittest.py: 2010-04-29 Chris Jerdonek Reviewed by Eric Seidel. Refactored svn-apply and svn-unapply to use the new parsePatch() subroutine. https://bugs.webkit.org/show_bug.cgi?id=34033 * Scripts/VCSUtils.pm: - Consolidated %diffHash documentation. - Added prepareParsedPatch(). * Scripts/svn-apply: - Replaced main while loop with calls to parsePatch() and prepareParsedPatch(). * Scripts/svn-unapply: - Replaced main while loop with calls to parsePatch() and prepareParsedPatch(). * Scripts/test-webkitperl: - Changed to render relative test paths rather than absolute test paths. * Scripts/webkitperl/VCSUtils_unittest/prepareParsedPatch.pl: Added. - Added unit tests for prepareParsedPatch(). 2010-04-28 Chris Jerdonek Reviewed by Eric Seidel. Added to VCSUtils's parseDiffHeader() support for binary patches. https://bugs.webkit.org/show_bug.cgi?id=38094 The parseDiffHeader() function is part of new patch-parsing code for svn-apply and svn-unapply that will go live in a subsequent revision. * Scripts/VCSUtils.pm: - Added logic to parseDiffHeader() to recognize the ending of the header portion of a binary diff. * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Added unit test cases for SVN and Git binary diffs. 2010-04-28 Eric Seidel Reviewed by David Levin. Document that subprocess.poll/wait are not threadsafe https://bugs.webkit.org/show_bug.cgi?id=38289 * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/server_process.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-04-28 Chris Jerdonek Reviewed by Daniel Bates. Removed the dividing line (i.e. "====...") logic from the code called by svn-apply and svn-unapply. https://bugs.webkit.org/show_bug.cgi?id=38093 The dividing line logic is unnecessary. Removing it simplifies the code and makes some subsequent changes easier. * Scripts/VCSUtils.pm: - Removed the logic in gitdiff2svndiff() to convert the git "index" line to an SVN dividing line. - Adjusted the logic similarly in parseDiffHeader(). * Scripts/webkitperl/VCSUtils_unittest/gitdiff2svndiff.pl: - Updated the unit tests as necessary. * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: - Updated the unit tests as necessary. - Corrected an error in the unit tests whereby all elements of an array were referencing the same element rather than distinct elements -- causing unit test failures to be masked. * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Updated the unit tests as necessary. - Made the same unit test correction as above for parseDiff.pl. 2010-04-28 Evan Stade Unreviewed. * Scripts/webkitpy/common/config/committers.py: adding myself as a committer 2010-04-28 Sam Weinig Reviewed by Mark Rowe. Add MiniBrowser to the lists of modules to build and only build it on SnowLeopard and later. * Makefile: * MiniBrowser/Makefile: 2010-04-28 Sam Weinig Reviewed by Mark Rowe. Make running MiniBrowser.app without explicitly setting DYLD_FRAMEWORK_PATH. * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: * MiniBrowser/mac/make-launchable.sh: Added. 2010-04-28 Eric Seidel Reviewed by David Levin. Audit all uses of subprocess in webkitpy https://bugs.webkit.org/show_bug.cgi?id=38284 After further discussions with Jeffrey Yasskin about http://bugs.python.org/issue2320 and related issues of using subprocess from multiple threads, I have learned that subprocess is known to be non-threadsafe through recent Python 2.7 builds. I'm attempting to lessen our exposure to these subprocess bugs by auditing each use of subprocess in webkitpy. I did not find any unsafe calls in my audit, but I did remove numerous unneeded import subprocess lines. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/system/deprecated_logging_unittest.py: * Scripts/webkitpy/common/system/user.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py: Added. * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/gtk.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/qt.py: * Scripts/webkitpy/layout_tests/port/webkit.py: * Scripts/webkitpy/layout_tests/port/win.py: 2010-04-28 Darin Adler Ignore a directory the Python tools creates. * Scripts/webkitpy/style: Modified property svn:ignore. 2010-04-28 Darin Adler * Scripts/extract-localizable-strings: Fix minor mistake in argument checking. 2010-04-28 Luiz Agostini Reviewed by Kenneth Rohde Christiansen. [Qt] QWebPage viewMode property https://bugs.webkit.org/show_bug.cgi?id=38119 Replacing method qt_wrt_setViewMode by wrt_viewMode property. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setViewModeMediaFeature): 2010-04-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. Adjusted check-webkit-style so that files with file type NONE are automatically skipped without warning. https://bugs.webkit.org/show_bug.cgi?id=38197 This change simplifies configuring which files to skip. It also addresses an issue whereby check-webkit-style was unintentionally checking .vcproj files for carriage returns. * Scripts/webkitpy/style/checker.py: - Moved the C++, Python, and text file extensions to new module-level configuration variables. - Removed .pyc from the _SKIPPED_FILES_WITHOUT_WARNING configuration variable. - Changed the numeric values of the FileType enum so that FileType.NONE evaluates to False. - For ProcessorDispatcher.should_skip_without_warning(): - Changed the method to return True for FileType.NONE files. - Made ChangeLog files an exception to getting skipped. - Changed the StyleProcessor.process() method to raise an exception if given a file path that should not be processed. * Scripts/webkitpy/style/checker_unittest.py: - Updated the unit tests and added more test cases as necessary. 2010-04-28 Eric Seidel Reviewed by Jeremy Orlow. webkitpy: ScriptError('Failed to run "[u\'taskkill.exe\', u\'/f\', u\'/im\', u\'httpd.exe\']" exit_code: 128',) https://bugs.webkit.org/show_bug.cgi?id=38248 The previous code did not check the return code of taskkill. When I moved that callsite from using subprocess.call to Executive.run_command having a non-zero return code became an error. In this change I've centralized our killall handling in executive, and added tests for it to make sure it works. Currently kill_process and kill_all swallow exceptions in the cases where the process(es) to be killed do(es) not exist. * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/common/system/executive_unittest.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/gtk.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/qt.py: * Scripts/webkitpy/layout_tests/port/win.py: 2010-04-28 Eric Seidel Reviewed by Shinichiro Hamaji. wdiff_text throws ScriptError because wdiff returns non-zero when files differ https://bugs.webkit.org/show_bug.cgi?id=38246 wdiff returns 0 when files are the same, 1 when they differ. run_command by default raises ScriptError if the return code is non-zero. Fixed this by adding a custom error handler which only raises if the return code is not 1. I broke up the huge wdiff_text() method into little pieces for easier unit testing. There is only one functional change here and that is the addition of the custom error handler. * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/base_unittest.py: 2010-04-28 Fumitoshi Ukai Unreviewed build fix. * DumpRenderTree/chromium/TestShell.cpp: (TestShell::dumpImage): format '%u' expects type 'unsigned int', but argument 2 has type 'size_t'. * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::willSendRequest): too few arguments for format. 2010-04-27 Shinichiro Hamaji Reviewed by Darin Adler and Eric Seidel. Add layoutTestController.setPrinting() https://bugs.webkit.org/show_bug.cgi?id=37203 * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (setPrintingCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: (LayoutTestController::isPrinting): (LayoutTestController::setIsPrinting): * DumpRenderTree/mac/DumpRenderTree.mm: (dump): 2010-04-27 Michael Nordman Reviewed by Dmitry Titov. [Chromium] Add two things to the webkit API to support appcaches in workers. 1) WebURLRequest TargetTypes for worker and shared worker main resources. 2) Factory method on class WebCommonWorkerClient to createApplicationCacheHost() for the associated worker. https://bugs.webkit.org/show_bug.cgi?id=38147 * DumpRenderTree/chromium/TestWebWorker.h add a stub impl of the factory method (TestWebWorker::createApplicationCacheHost): 2010-04-27 Adam Barth Reviewed by Eric Seidel. run-bindings-tests doesn't work in an SVN checkout https://bugs.webkit.org/show_bug.cgi?id=38225 Previously detect_scm_system needed an absolute path for SVN. Now we accept a relative path. * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/checkout/scm_unittest.py: 2010-04-27 Sam Weinig Reviewed by Stephanie Lewis. Always build WebKit2 when building on SnowLeopard and later. * Scripts/build-webkit: 2010-04-27 Sam Weinig Reviewed by Maciej Stachowiak. Fix for https://bugs.webkit.org/show_bug.cgi?id=38238 Allow both WebKit and WebKit2 to link to the same WebCore.framework * Scripts/build-webkit: Remove the UMBRELLA_LDFLAGS override when building WebCore for WebKit2, it is no longer necessary. 2010-04-27 James Robinson Reviewed by David Levin. Fix a typo in chromium.py that causes NRWT to fail in --verbose mode in a Chromium checkout. https://bugs.webkit.org/show_bug.cgi?id=38234 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-04-27 Darin Fisher Reviewed by Dimitri Glazkov. [Chromium] Remove deprecated form of didChangeLocationWithinPage https://bugs.webkit.org/show_bug.cgi?id=38178 Switch over to implementing didNavigateWithinPage. * DumpRenderTree/chromium/WebViewHost.cpp: (TestWebViewDelegate::didNavigateWithinPage): (WebViewHost::didChangeLocationWithinPage): * DumpRenderTree/chromium/WebViewHost.h: 2010-04-27 Evan Martin Unreviewed. Adding myself to commmitters list. * Scripts/webkitpy/common/config/committers.py: 2010-04-27 Adam Barth Reviewed by Darin Adler. run-bindings-tests should use --reset-results instead of --overwrite https://bugs.webkit.org/show_bug.cgi?id=38200 As requested by Ojan. * Scripts/run-bindings-tests: 2010-04-27 Adam Barth Reviewed by Eric Seidel. REGRESSION(r58261): webkit-patch edit-changelogs is broken https://bugs.webkit.org/show_bug.cgi?id=38204 In 58261, we added code to abstract step that interrogates the squash and git_commit options, but it doesn't declare that it uses those options. That means any command that doesn't happen to declare those options might be broken if it uses the cached_lookup mechanism. * Scripts/webkitpy/tool/steps/abstractstep.py: * Scripts/webkitpy/tool/steps/applypatch.py: * Scripts/webkitpy/tool/steps/applypatchwithlocalcommit.py: * Scripts/webkitpy/tool/steps/build.py: * Scripts/webkitpy/tool/steps/checkstyle.py: * Scripts/webkitpy/tool/steps/cleanworkingdirectory.py: * Scripts/webkitpy/tool/steps/closebug.py: * Scripts/webkitpy/tool/steps/closebugforlanddiff.py: * Scripts/webkitpy/tool/steps/commit.py: * Scripts/webkitpy/tool/steps/confirmdiff.py: * Scripts/webkitpy/tool/steps/createbug.py: * Scripts/webkitpy/tool/steps/ensurebuildersaregreen.py: * Scripts/webkitpy/tool/steps/ensurelocalcommitifneeded.py: * Scripts/webkitpy/tool/steps/obsoletepatches.py: * Scripts/webkitpy/tool/steps/postcodereview.py: * Scripts/webkitpy/tool/steps/postdiff.py: * Scripts/webkitpy/tool/steps/preparechangelog.py: * Scripts/webkitpy/tool/steps/runtests.py: * Scripts/webkitpy/tool/steps/update.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py: * Scripts/webkitpy/tool/steps/validatereviewer.py: 2010-04-27 Eric Seidel Reviewed by David Levin. prepare-ChangeLog --bug fails on some CYGWIN installs due to missing certs https://bugs.webkit.org/show_bug.cgi?id=38212 * Scripts/prepare-ChangeLog: - Pass --insecure to curl to work around CYGWIN missing certs. 2010-04-27 Sam Weinig Rubber-stamped by Beth Dakin. It is no longer necessary to set ENABLE_EXPERIMENTAL_SINGLE_VIEW_MODE or WTF_USE_WEB_THREAD. Remove them. * Scripts/build-webkit: 2010-04-27 Chris Jerdonek Reviewed by David Levin. Changed Chris Jerdonek from committer to reviewer. * Scripts/webkitpy/common/config/committers.py: 2010-04-27 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] QGraphicsWebView: Arrow keys scroll the graphics-view instead of the web-page https://bugs.webkit.org/show_bug.cgi?id=35834 The scene should always have the size of the web view otherwhise it is possible to scroll the graphics view. * QtLauncher/webview.cpp: (WebViewGraphicsBased::resizeEvent): 2010-04-27 Diego Gonzalez Unreviewed. Adding myself to committers.py * Scripts/webkitpy/common/config/committers.py: 2010-04-27 Eric Seidel Reviewed by Adam Barth. [chromium] new-run-webkit-tests hangs on Chromium Bots (OS X and Linux) https://bugs.webkit.org/show_bug.cgi?id=37987 After further research, I believe the hang is caused by: http://bugs.python.org/issue2320 Basically Popen() is not reentrant. The workaround is to pass close_fds=True to Popen() on Mac/Linux. I fixed our main Popen wrapper "Executive.run_command" to use close_fds=True when appropriate. I audited all places we call Popen() and either moved them to run_command or left a FIXME that they are not thread safe. A few places I added the close_fds workaround there and left an explanitory note. * Scripts/webkitpy/common/checkout/scm_unittest.py: - Added note that this Popen use is not threadsafe. * Scripts/webkitpy/common/system/executive.py: - Fixed our Executive.run_* to workaround python bug 2320. * Scripts/webkitpy/common/system/user.py: _ Added note that this Popen use is not threadsafe. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: ditto. * Scripts/webkitpy/layout_tests/port/apache_http_server.py: ditto. * Scripts/webkitpy/layout_tests/port/base.py: - Change wdiff back to using run_command now that we believe it to be threadsafe. * Scripts/webkitpy/layout_tests/port/chromium.py: - Fix to use Executive in places. - Pass self._executive down to the Driver for easier unit testing. * Scripts/webkitpy/layout_tests/port/chromium_win.py: - Re-factor to use a _kill_all method. - Made the _kill_all method use run_command to be threadsafe. * Scripts/webkitpy/layout_tests/port/http_server.py: - Add FIXME about using Executive. * Scripts/webkitpy/layout_tests/port/server_process.py: - Use Executive to be threadsafe. * Scripts/webkitpy/layout_tests/port/webkit.py: - Pass self._executive down to the Driver. * Scripts/webkitpy/layout_tests/port/websocket_server.py: - Add note about Popen not being threadsafe. * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: - Move one caller to run_command add notes about moving others. 2010-04-27 Adam Barth Reviewed by Maciej Stachowiak. REGRESSION(r58261): webkit-patch upload does not work in an SVN checkout. https://bugs.webkit.org/show_bug.cgi?id=38186 Unfortunately, we don't have a good way of testing this change because our test coverage of the scm.py API is poor... * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/tool/steps/preparechangelog.py: 2010-04-26 Eric Seidel Reviewed by Adam Barth. Remove unused code from text_diff.py https://bugs.webkit.org/show_bug.cgi?id=38170 * Scripts/webkitpy/layout_tests/test_types/text_diff.py: - Remove is_render_tree_dump which appears unused. 2010-04-26 Adam Barth Reviewed by Eric Seidel. webkit-patch pretty-diff is broken https://bugs.webkit.org/show_bug.cgi?id=38172 We need to register for these options because they're used when we look up the diff. * Scripts/webkitpy/tool/steps/confirmdiff.py: 2010-04-26 Adam Barth Reviewed by Eric Seidel. Add ObjC and GObject to run-bindings-test https://bugs.webkit.org/show_bug.cgi?id=38168 * Scripts/run-bindings-tests: 2010-04-26 Adam Barth Reviewed by Eric Seidel. Add testing infrastructure for JSC bindings generator https://bugs.webkit.org/show_bug.cgi?id=38167 Add support for testing more than one bindings. Also, converted the script to PEP8 style. * Scripts/run-bindings-tests: 2010-04-26 Eric Seidel Reviewed by Adam Barth. Refactor results.html generation out into a new method and test it https://bugs.webkit.org/show_bug.cgi?id=38164 Hopefully this results in no change in functionality. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-04-26 Adam Barth Unreviewed, rolling out r58265. http://trac.webkit.org/changeset/58265 https://bugs.webkit.org/show_bug.cgi?id=38021 This change prevents me from uploading patches. It also breaks sheriff-bot. * Scripts/webkitpy/tool/steps/options.py: 2010-04-26 Eric Seidel Reviewed by Adam Barth. [chromium] new-run-webkit-tests hangs on Chromium Bots (OS X and Linux) https://bugs.webkit.org/show_bug.cgi?id=37987 Rolled out: http://trac.webkit.org/changeset/58062 http://trac.webkit.org/changeset/58060 http://trac.webkit.org/changeset/58059 http://trac.webkit.org/changeset/58055 http://trac.webkit.org/changeset/58054 and parts of: http://trac.webkit.org/changeset/58050 I also wrote some new comments and a tiny amount of new code to help make ChromiumDriver.run_test easier to read. In order to unit-test my new code, I had to change ChromiumDriver to not automatically start itself when created. That ended up being a lot of plumbing, but is hopefully easier to understand now. There are no tests for the (restored) wdiff code. wdiff does not exist on all systems, so for now we will assume it worked since it is just old code being reverted. * Scripts/webkitpy/layout_tests/driver_test.py: - Use create_driver instead of start_driver, and be sure to call .stop() * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - Use create_driver instead of start_driver * Scripts/webkitpy/layout_tests/port/base.py: - Added a comment to explain that diffs are binary files. - Various patch reverts relating to wdiff - Add Driver._command_wrapper to share code between WebKitDriver and ChromiumDriver. - Made _command_wrapper use shlex.split to get rid of the FIXME. * Scripts/webkitpy/layout_tests/port/base_unittest.py: Added. - test the new _command_wrapper * Scripts/webkitpy/layout_tests/port/chromium.py: - Use _command_wrapper to get rid of a bunch of ugly code. - Make __init__ stop auto-starting. - Rename create_driver to start_driver. - Added _write_command_and_read_line to make it possible to put a FIXME next to read_line() w/o having to put it in two places. - Moved test_shell command building into _test_shell_command and tested it. - Fix comments to say test_shell since ChromiumDriver is test_shell only. * Scripts/webkitpy/layout_tests/port/chromium_unittest.py: Added. - Test the new test_shell_command method. * Scripts/webkitpy/layout_tests/port/dryrun.py: - Rename create_driver to start_driver. * Scripts/webkitpy/layout_tests/port/test.py: - Rename create_driver to start_driver. * Scripts/webkitpy/layout_tests/port/webkit.py: - Rename create_driver to start_driver. - Treat output as binary arrays. * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: - Treat diff files as binary. * Scripts/webkitpy/layout_tests/test_types/text_diff.py: - Treat diff files as binary. 2010-04-26 Adam Barth Reviewed by Eric Seidel. Move bindings test directory into the scripts directory https://bugs.webkit.org/show_bug.cgi?id=38161 Change script to point to the new location of these data files. * Scripts/run-bindings-tests: 2010-04-26 Adam Barth Unreviewed. Mark run-bindings-tests executable so we can execute it. * Scripts/run-bindings-tests: 2010-04-26 Tony Chang Reviewed by David Levin. [chromium] build-webkit --chromium should build release by default https://bugs.webkit.org/show_bug.cgi?id=38028 * Scripts/build-dumprendertree: Also should build release by default * Scripts/build-webkit: Make sure to pass command line args through * Scripts/webkitdirs.pm: Build the right configuration 2010-04-26 Ojan Vafai Reviewed by Eric Seidel. complete rietveld bugzilla integration https://bugs.webkit.org/show_bug.cgi?id=38021 Makes --fancy-review the default. All this means is that the patch will be uploaded to rietveld in addition to bugs.webkit.org. * Scripts/webkitpy/tool/steps/options.py: 2010-04-26 Chris Jerdonek Reviewed by Shinichiro Hamaji. For check-webkit-style, renamed the style/processors/ directory to style/checkers/. https://bugs.webkit.org/show_bug.cgi?id=38122 * Scripts/webkitpy/style/checker.py: - Updated import statements. * Scripts/webkitpy/style/checker_unittest.py: - Updated import statements. * Scripts/webkitpy/style/checkers: Copied from WebKitTools/Scripts/webkitpy/style/processors. * Scripts/webkitpy/style/processors: Removed. * Scripts/webkitpy/style/processors/__init__.py: Removed. * Scripts/webkitpy/style/processors/common.py: Removed. * Scripts/webkitpy/style/processors/common_unittest.py: Removed. * Scripts/webkitpy/style/processors/cpp.py: Removed. * Scripts/webkitpy/style/processors/cpp_unittest.py: Removed. * Scripts/webkitpy/style/processors/python.py: Removed. * Scripts/webkitpy/style/processors/python_unittest.py: Removed. * Scripts/webkitpy/style/processors/python_unittest_input.py: Removed. * Scripts/webkitpy/style/processors/text.py: Removed. * Scripts/webkitpy/style/processors/text_unittest.py: Removed. 2010-04-06 Ojan Vafai Reviewed by Adam Barth. Include git commits in the diff for webkit-patch upload/land. https://bugs.webkit.org/show_bug.cgi?id=36394 Adds --squash, --no-squash and --git-commit. --git-commit will use a specific local commit for land/upload. If a commit-range is specified, then that range is treated as a single squashed commit. --squash will squash all local changes including working copy changes into a single patch. --no-squash is the legacy behavior (upload only considers the working copy, land commits the working copy and then each local commit separately to SVN) If neither is specified, then an informative error is raised if there is more than one local commit or when there are local commit(s) and working copy changes. If the webkit-patch.squash git config parameter is set, then that will be respected instead of raising an error. * Scripts/check-webkit-style: * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/api_unittest.py: * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/checkout/scm_unittest.py: * Scripts/webkitpy/style/optparser.py: --git-since is removed and --git-commit no longer implies commit_id.. Instead, it treats that individual commit, but also supports commit ranges (e.g. commit_id..) as arguments. * Scripts/webkitpy/style/optparser_unittest.py: * Scripts/webkitpy/style_references.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/abstractstep.py: * Scripts/webkitpy/tool/steps/applypatchwithlocalcommit.py: * Scripts/webkitpy/tool/steps/checkstyle.py: * Scripts/webkitpy/tool/steps/commit.py: * Scripts/webkitpy/tool/steps/options.py: * Scripts/webkitpy/tool/steps/postdiff.py: * Scripts/webkitpy/tool/steps/preparechangelog.py: * Scripts/webkitpy/tool/steps/preparechangelogforrevert.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py: * Scripts/webkitpy/tool/steps/validatereviewer.py: 2010-04-26 Chris Jerdonek Reviewed by Shinichiro Hamaji. Deleted the StyleChecker-related classes that are no longer being used. https://bugs.webkit.org/show_bug.cgi?id=38118 * Scripts/webkitpy/style/checker.py: - Deleted the DeprecatedStyleChecker class. * Scripts/webkitpy/style/checker_unittest.py: - Deleted the StyleCheckerTest, StyleCheckerCheckFileBase, StyleCheckerCheckFileTest, and StyleCheckerCheckPathsTest classes. 2010-04-26 Chris Jerdonek Reviewed by Shinichiro Hamaji. Changed the StyleChecker class to use the new TextFileReader class. https://bugs.webkit.org/show_bug.cgi?id=37066 This revision separates the code responsible for reading and iterating over text files from the rest of check-webkit-style. * Scripts/check-webkit-style: - Changed the script to use the new StyleProcessor and TextFileReader classes instead of the StyleChecker class. * Scripts/webkitpy/style/checker.py: - Added a FIXME to rename many of uses of the word "processor" to "checker". We did this to clarify the difference between ProcessorBase instances passed to the TextFileReader and classes that process and check lines for style. - Added a FIXME to remove FileType.NONE as a possible return value of ProcessorDispatcher._file_type(). This will better consolidate the logic of which files should be skipped. - Added a FIXME to delete the StyleChecker class. - Added the StyleProcessor class which implements ProcessorBase. This class is responsible for processing lines to check style (but not for reading files). For each file, this class creates creates both a carriage-return checker and a format-specific style checker (e.g. one of C++, Python, etc). - Updated the PatchChecker class to use a TextFileReader instance instead of a StyleChecker. * Scripts/webkitpy/style/checker_unittest.py: - Added the StyleProcessor_EndToEndTest class to do "end-to-end" tests of the StyleProcessor class. - Added the StyleProcessor_CodeCoverageTest to test the StyleProcessor class with more complete code coverage. Unlike the StyleProcessor_EndToEndTest class, this class makes heavy use of mock parameters. - Added FIXME's to delete the unit test classes that are no longer needed. - Updated the PatchCheckerTest class to use a MockTextFileReader instead of a MockStyleChecker. * Scripts/webkitpy/style/filereader.py: - Updated the TextFileReader class to use the preferred logic of checking file existence at the beginning of the process_file() method instead of in the except block, per https://bugs.webkit.org/show_bug.cgi?id=37122 * Scripts/webkitpy/style/filereader_unittest.py: - In the TextFileReaderTest class: - Moved the test_process_file__should_not_process() method. - Added a test_process_file__file_stdin() method to test the file path "-". 2010-04-20 Robert Hogan Reviewed by Simon Hausmann. [Qt] Add more support for textInputController Add support for selectedRange(), setMarkedText(), insertText(), and firstRectForCharacterRange(). Unskip tests: fast/forms/input-maxlength-ime-preedit.html fast/forms/input-maxlength-ime-completed.html fast/text/international/thai-cursor-position.html fast/events/ime-composition-events-001.html editing/selection/5825350-1.html editing/selection/5825350-2.html editing/selection/mixed-editability-10.html https://bugs.webkit.org/show_bug.cgi?id=35702 * DumpRenderTree/qt/TextInputControllerQt.cpp: (TextInputController::setMarkedText): (TextInputController::insertText): (TextInputController::selectedRange): (TextInputController::firstRectForCharacterRange): * DumpRenderTree/qt/TextInputControllerQt.h: 2010-04-23 Eric Seidel Reviewed by Adam Barth. check-webkit-style complains about non-utf8 data in layout test result https://bugs.webkit.org/show_bug.cgi?id=38027 The problem was we were assuming patch files/diff output as utf-8. Turns out they're not. We have to treat them as binary data because a single patch may have multiple text files in it with conflicting encodings! * Scripts/webkitpy/common/checkout/api.py: - contents_at_revision returns a byte array, so decode it to unicode before passing it to parse_latest_entry_from_file * Scripts/webkitpy/common/checkout/api_unittest.py: - Update our mock mock_contents_at_revision to match the encoding semantics of the real one. * Scripts/webkitpy/common/checkout/scm.py: - Be careful not to decode output which may contain file contents (like diff, cat or show) as the encoding for that content is unknown. * Scripts/webkitpy/common/checkout/scm_unittest.py: - Update our tests to use both latin1 and utf-8 encoded data. * Scripts/webkitpy/common/net/bugzilla.py: - _fill_attachment_form should not assume unicode data. Callers may wish to attach other types of files to bugs. * Scripts/webkitpy/common/prettypatch.py: - Diffs are byte arrays, deal with them as such. * Scripts/webkitpy/common/prettypatch_unittest.py: - Test to make sure we handle diffs with multiple conflicting encodings. * Scripts/webkitpy/common/system/executive_unittest.py: - Make sure that our unicode support does not break our byte array input support for run_command. 2010-04-23 Sam Weinig Reviewed by David Levin. Fix for https://bugs.webkit.org/show_bug.cgi?id=38060 Split up Threading.h Add necessary forwarding headers. * DumpRenderTree/ForwardingHeaders/wtf/Atomics.h: Added. * DumpRenderTree/ForwardingHeaders/wtf/ThreadSafeShared.h: Added. * DumpRenderTree/ForwardingHeaders/wtf/ThreadingPrimitives.h: Added. 2010-04-23 Xiaomei Ji No need to review. Add xji as committer. * Scripts/webkitpy/common/config/committers.py: 2010-04-23 Kevin Ollivier [wx] Build fix, add platform stub for new LayoutTestController method. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::markerTextForListItem): 2010-04-19 Dirk Pranke Reviewed by Adam Barth. new-run-webkit-tests: add a "--retry-failures" flag and a "--no-retry-failures" flag (the former is the default). Also, rename "--print-unexpected-results" and "--retry-unexpected-results" to "--print-last-failures" and "--retry-last-failures" because the retry flag was confusing. The new flag names aren't great, but hopefully they're less confusing. https://bugs.webkit.org/show_bug.cgi?id=37838 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-22 Sam Weinig Reviewed by Anders Carlsson. Fix for https://bugs.webkit.org/show_bug.cgi?id=38022 Move isMainThread predicate function to MainThread.h Added forwarding header for MainThread.h * DumpRenderTree/ForwardingHeaders/wtf/MainThread.h: Added. 2010-04-23 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Disable Netscape plugin support for minimal configuration https://bugs.webkit.org/show_bug.cgi?id=38026 Pass the minimal configuration option to Qt build system as part of the CONFIG variable. * Scripts/build-webkit: 2010-04-22 Fumitoshi Ukai Unreviewed fix. * Scripts/webkitpy/layout_tests/port/websocket_server.py: fix NameError: global name 'f' is not defined. 2010-04-22 James Robinson Reviewed by Adam Barth. Revert 58077 and follow-ups. It's broken. https://bugs.webkit.org/show_bug.cgi?id=37664 * Scripts/new-run-webkit-httpd: * Scripts/new-run-webkit-websocketserver: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-04-22 Yaar Schnitman Reviewed by Adam Barth. Integrate v8 testing utility with webkit tests https://bugs.webkit.org/show_bug.cgi?id=37731 * Scripts/run-bindings-tests: Added. 2010-04-22 Eric Seidel Reviewed by Dimitri Glazkov. new-run-webkit-tests --verbose shows ever-increasing #EOF lines https://bugs.webkit.org/show_bug.cgi?id=37794 * Scripts/webkitpy/layout_tests/port/webkit.py: - Remove the assert() since our ServerProcess code does not always seem to be reading the full stderr output (or we're not waiting for it to). 2010-04-22 Eric Seidel Reviewed by Adam Barth. Add code to help debug new-run-webkit-test hangs on the Chromium bots https://bugs.webkit.org/show_bug.cgi?id=38011 I can see no reasonable way to test this change. Stubbing out sys._current_frames() and traceback.extract_stack seems folly. Dumping real data would have line number (and possibly other call stack) variance between runs. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - Add _dump_thread_states and _dump_thread_states_if_necessary to have our main thread dump the states of all threads every 60 seconds when running in verbose mode. - Better document what is going on in our main loop. 2010-04-22 Sam Weinig Reviewed by Anders Carlsson. Fix for https://bugs.webkit.org/show_bug.cgi?id=38002 Add rudimentary statistics gathering for WebKit2 * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: * MiniBrowser/mac/AppDelegate.h: * MiniBrowser/mac/AppDelegate.m: (-[BrowserAppDelegate init]): (-[BrowserAppDelegate newWindow:]): (-[BrowserAppDelegate getCurrentPageNamespace]): (-[BrowserAppDelegate _setProcessModel:]): (-[BrowserAppDelegate showStatisticsWindow:]): (-[BrowserAppDelegate applicationWillTerminate:]): * MiniBrowser/mac/BrowserStatisticsWindow.xib: Added. * MiniBrowser/mac/BrowserStatisticsWindowController.h: Added. * MiniBrowser/mac/BrowserStatisticsWindowController.m: Added. (-[BrowserStatisticsWindowController initWithThreadedWKContextRef:processWKContextRef:]): (-[BrowserStatisticsWindowController dealloc]): (-[BrowserStatisticsWindowController windowDidLoad]): (-[BrowserStatisticsWindowController refreshStatistics:]): * MiniBrowser/mac/BrowserWindowController.h: * MiniBrowser/mac/English.lproj/MainMenu.xib: * MiniBrowser/mac/MiniBrowser_Prefix.pch: 2010-04-22 Dave Moore Reviewed by Dimitri Glazkov. Add test support for icon changes. https://bugs.webkit.org/show_bug.cgi?id=33812 * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (dumpIconChangesCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: (LayoutTestController::dumpIconChanges): (LayoutTestController::setDumpIconChanges): * DumpRenderTree/win/FrameLoadDelegate.cpp: (FrameLoadDelegate::didChangeIcons): * DumpRenderTree/win/FrameLoadDelegate.h: * WinLauncher/WinLauncher.h: (WinLauncherWebHost::didChangeIcons): 2010-04-22 Eric Seidel Unreviewed. Script fix. Will ask dpranke to look tomorrow. new-run-webkit-tests --verbose shows ever-increasing #EOF lines https://bugs.webkit.org/show_bug.cgi?id=37794 The bots are seeing cases where .error is sometimes empty. Lets make the code not crash in that case for now. * Scripts/webkitpy/layout_tests/port/webkit.py: 2010-04-22 Fumitoshi Ukai Unreviewed fix. * Scripts/webkitpy/layout_tests/port/websocket_server.py: fix NameError: global name 'f' is not defined. 2010-04-22 Fumitoshi Ukai Unreviewed fix. * Scripts/new-run-webkit-websocketserver: PyWebSocket no longer takes keyword argument 'register_cygwin'. 2010-04-22 Eric Seidel Unreviewed. Restore the Leopard bots to using old-run-webkit-tests for now. * Scripts/run-webkit-tests: 2010-04-22 Fumitoshi Ukai Unreviewed fix. * Scripts/webkitpy/layout_tests/port/http_server.py: fix NameError: global name 'env' is not defined. 2010-04-22 Fumitoshi Ukai Unreviewed fix. * Scripts/webkitpy/layout_tests/port/websocket_server.py: fix NameError: global name 'env' is not defined. 2010-04-22 Fumitoshi Ukai Reviewed by Adam Barth. Chromium: Add --chromium option to new-run-webkit-websocketserver https://bugs.webkit.org/show_bug.cgi?id=37664 Move cygwin setup logic in chromium_win.py. * Scripts/new-run-webkit-httpd: remove register_cygwin parameter to pass http_server. * Scripts/new-run-webkit-websocketserver: add --chromium flag * Scripts/webkitpy/layout_tests/port/chromium_win.py: setup for cygwin * Scripts/webkitpy/layout_tests/port/http_server.py: remove cygwin setup logic * Scripts/webkitpy/layout_tests/port/websocket_server.py: remove cygwin setup logic 2010-04-22 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests --verbose shows ever-increasing #EOF lines https://bugs.webkit.org/show_bug.cgi?id=37794 * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - Fix the log message to explain that this is stderr output, not test output. * Scripts/webkitpy/layout_tests/port/webkit.py: - Be sure to reset the server_process.error after reading (seems like the wrong place to do this, but at least this fixes the bug and dpranke and I can talk about better designs later). - Also remove the #EOF from the stderr output before returning it. 2010-04-22 Eric Seidel Unreviewed. Fixing new-run-webkit-tests on the bots. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - Fixing _compat_shim_option to take variable keyword args. - Turns out that nargs + callback is ignored unless type is specified. So I added the type so that the option was properly consumed. This was why new-run-webkit-tests couldn't find any tests, it was looking for them under "20" because that was the argument which should have been consumed by --exit-after-n-failures. 2010-04-22 Tony Chang Not reviewed, build fix for chromium Windows. [chromium] fix ImageDiff compile on windows https://bugs.webkit.org/show_bug.cgi?id=37979 * DumpRenderTree/chromium/ImageDiff.cpp: 2010-04-22 Adam Barth Unreviewed, rolling out r58069. http://trac.webkit.org/changeset/58069 https://bugs.webkit.org/show_bug.cgi?id=27751 Broke compile on Windows. * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::overridePreference): * DumpRenderTree/chromium/LayoutTestController.h: * DumpRenderTree/chromium/TestShell.cpp: (TestShell::resetWebSettings): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: * DumpRenderTree/qt/LayoutTestControllerQt.h: * DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/win/LayoutTestControllerWin.cpp: * DumpRenderTree/wx/LayoutTestControllerWx.cpp: 2010-04-22 Eric Seidel Unreviewed. Just adding logging. Adding logging to help debug why the Leopard Bot can't find any tests to run. * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - Make it a fatal error to have no tests to run. 2010-04-22 Abhishek Arya Reviewed by Adam Barth. Add support for controlling clipboard access from javascript. Clipboard access from javascript is enabled in test framework. https://bugs.webkit.org/show_bug.cgi?id=27751 * DumpRenderTree/LayoutTestController.cpp: (setJavaScriptCanAccessClipboardCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::setJavaScriptCanAccessClipboard): (LayoutTestController::overridePreference): * DumpRenderTree/chromium/LayoutTestController.h: * DumpRenderTree/chromium/TestShell.cpp: (TestShell::resetWebSettings): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/qt/LayoutTestControllerQt.h: * DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setJavaScriptCanAccessClipboard): 2010-04-21 Adam Barth Reviewed by Eric Seidel. webkit-patch can't fetch attachments on security bugs https://bugs.webkit.org/show_bug.cgi?id=37975 Instead of calling CURL, we just need to use our Mechanize object, which understand bugs.webkit.org authentication. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/net/bugzilla.py: 2010-04-21 Eric Seidel Unreviewed. Temporary commit, will roll-out before morning. Turning on new-run-webkit-tests for the Leopard build bot for testing of the harness. Users should not noctice (except for the results.html difference). * Scripts/run-webkit-tests: 2010-04-21 Eric Seidel Unreviewed. Fix typo in my previous fix attempt. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 More on-the-bot debugging, sigh. I wish I had a local build. * Scripts/webkitpy/layout_tests/port/base.py: 2010-04-21 Eric Seidel Unreviewed. Fix typo in my previous fix attempt. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 * Scripts/webkitpy/layout_tests/port/base.py: - Add self. to class variable access. 2010-04-21 Eric Seidel Unreviewed. Another attempt to fix NRWT for chromium. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 * Scripts/webkitpy/layout_tests/port/base.py: - wdiff_text was returning a byte array instead of a unicode string. The simple fix was to just decode the result. However, seeing so much duplicated code with Executive made me cry, so I re-wrote the function to be more like pretty_patch_text and use run_command (which already knows how to handle unicode). 2010-04-21 Adam Barth Reviewed by Eric Seidel. Windows tests buildbots are too slow to be core builders https://bugs.webkit.org/show_bug.cgi?id=37970 It's 10:45. The Windows test bots are still hours behind. They're too slow to be core builders. When they get fast, we can add them back. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-04-21 Eric Seidel Unreviewed. Attempt one more time to fix NRWT for chromium. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 I'm debugging in the blind because I don't have a chromium build on this laptop. * Scripts/webkitpy/layout_tests/port/chromium.py: - Apply the previous fix to a second caller. 2010-04-21 Eric Seidel Unreviewed. Attempt one more time to fix NRWT for chromium. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 * Scripts/webkitpy/layout_tests/port/chromium.py: - Fix handling of test_shell output so that we always decode it as utf-8. Unlike DumpRenderTree test_shell does not ever return pixel data. It spits out the pixel dumps in a separate file, thus all output over stdout is utf-8 text. 2010-04-21 Eric Seidel Unreviewed. Attempt one more time to fix NRWT for chromium. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 * Scripts/webkitpy/layout_tests/test_types/image_diff.py: - Pass encoding to _save_baseline_data and write_output_files * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: - Make _save_baseline_data and write_output_files take an encoding. * Scripts/webkitpy/layout_tests/test_types/text_diff.py: - Pass encoding to _save_baseline_data and write_output_files 2010-04-21 No'am Rosenthal Reviewed by Kenneth Rohde Christiansen. [Qt] QtLauncher: make FPS measurement accurate https://bugs.webkit.org/show_bug.cgi?id=37934 Instead of counting paints, which are not interchangeable with frames that the user sees, we now set an arbitrary timer for FPS measurements. The idea is that if the main thread is delayed for any reason, that timer would be delayed as well. * QtLauncher/QtLauncher.pro: * QtLauncher/fpstimer.cpp: Added. (FpsTimer::FpsTimer): (FpsTimer::numFrames): (FpsTimer::start): (FpsTimer::stop): (FpsTimer::timerEvent): * QtLauncher/fpstimer.h: Added. * QtLauncher/webview.cpp: (WebViewGraphicsBased::setFrameRateMeasurementEnabled): (WebViewGraphicsBased::updateFrameRate): (WebViewGraphicsBased::paintEvent): * QtLauncher/webview.h: 2010-04-21 Eric Seidel Unreviewed, just adding missing ":" in python file. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 new-run-webkit-tests --chromium was borked. * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-04-21 Eric Seidel Reviewed by Adam Barth. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 Third time is the charm. I've fixed all the new-run-webkit-tests regressions from previous attempts. I fixed the queue to not ignore Tor as a reviwer in r57531, but instead it throws an exception every time his name is in a patch. This fixes our Executive.run_command code to work around a Popen bug http://bugs.python.org/issue5290 whereby python versions before 2.6 do not correctly handle unicode objects as input or output to Popen.communicate. Following the advice of: http://farmdev.com/talks/unicode/ I have changed all of webkitpy to use unicode() objects as strings instead of str objects (which in Python 3 are renamed "bytes"). String literals were left as "foo" instead of converting to u"foo" as u"foo" is only required if the string has a non-ascii code point. Python is smart about comparing str() and unicode() values and will log an error to the console if the comparison is ever invalid. Executive.run* now correctly accept and return unicode() objects. I attempted to fix all the places that we call .write() to make sure we encode any unicode() objects into utf-8. I removed several uses of StringIO. StringIO should generally always be passed a unicode() value. Likewise I replaced most calls to open() with codecs.open(). codecs.open() matches Python 3 open semantics in requiring an encoding parameter. Files opened with codecs.open() with a unicode-compatible encoding will vend unicode() objects from their read() calls, like how StringIO created with a unicode() object will do. I also deployed "with" statements wider (now that the project has settled on Python 2.5) to close a bunch of file descriptor leaks. * Scripts/webkitpy/common/checkout/api_unittest.py: - Read/write utf-8 files instead of ascii. - Update the tests to use test for proper unicode() handling. * Scripts/webkitpy/common/checkout/changelog.py: - Document that parse_latest_entry_from_file expects file-like objects which return unicode strings. * Scripts/webkitpy/common/checkout/changelog_unittest.py: - Use unicode() strings instead of str() byte arrays. - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/common/checkout/commitinfo.py: - Remove unneeded import. * Scripts/webkitpy/common/checkout/scm.py: - Remove use of str(). * Scripts/webkitpy/common/checkout/scm_unittest.py: - Read/write utf-8 files and use unicode() strings in testing. * Scripts/webkitpy/common/config/committers.py: - Use \u instead of \x to make slightly clearer what we're doing. * Scripts/webkitpy/common/net/bugzilla.py: - Add a new _string_contents() method and explain why we have to call unicode() on the result of soup.string and why it's safe to do so w/o needing to pass a codec name. - Remove the (unused) support for passing a file object to add_patch_to_bug(). * Scripts/webkitpy/common/net/buildbot.py: - Use unicode() instead of str() when needing to coax a NavigableString object into a unicode() object. * Scripts/webkitpy/common/net/buildbot_unittest.py: - Add a test which contains a unicode builder name. * Scripts/webkitpy/common/net/statusserver.py: - Remove use of str() * Scripts/webkitpy/common/prettypatch.py: - Write out the patch file as utf-8. * Scripts/webkitpy/common/system/autoinstall.py: - Write out files with a explicit encodings. - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/common/system/deprecated_logging.py: - Write out log files as utf-8. * Scripts/webkitpy/common/system/executive.py: - Make run* properly take and return unicode() objects. - Cleaned up input handling in run_command a little by adding a _compute_input() method which can return early instead of having such a long/cluttered if-block. * Scripts/webkitpy/common/system/executive_unittest.py: - Added a unit test to make sure we don't break Tor again! * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - Write out the test list as utf-8. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: - Write out json files as utf-8. * Scripts/webkitpy/layout_tests/port/apache_http_server.py: - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/layout_tests/port/chromium.py: Add Executive.py FIXME. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: ditto. * Scripts/webkitpy/layout_tests/port/chromium_mac.py: ditto. * Scripts/webkitpy/layout_tests/port/gtk.py: ditto. * Scripts/webkitpy/layout_tests/port/mac.py: ditto. * Scripts/webkitpy/layout_tests/port/mac_unittest.py: - Make the skipped file parsing test unicode. * Scripts/webkitpy/layout_tests/port/qt.py: Add Executive.py FIXME. * Scripts/webkitpy/layout_tests/port/server_process.py: ditto. * Scripts/webkitpy/layout_tests/port/webkit.py: - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/layout_tests/port/websocket_server.py: - Make explicit the encodings of log files and pid files. * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: - Make encodings explicit and deploy "with". * Scripts/webkitpy/layout_tests/run_webkit_tests.py: ditto. * Scripts/webkitpy/layout_tests/test_types/image_diff.py: ditto. * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: ditto. * Scripts/webkitpy/layout_tests/test_types/text_diff.py: ditto. * Scripts/webkitpy/style/filereader_unittest.py: ditto. * Scripts/webkitpy/thirdparty/__init__.py: ditto. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: - Removed extra import. * Scripts/webkitpy/tool/commands/queues.py: - No need to map args to strings now that run_command does. - Update test results to match args changes. - Document our global argument hacks. * Scripts/webkitpy/tool/commands/upload.py: - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper. * Scripts/webkitpy/tool/mocktool.py: - Rename add_patch_to_bug argument to match bugzilla.py * Scripts/webkitpy/tool/steps/abstractstep.py: - Executive.run_* now require lists instead of strings. The lack of this change was what broke webkit-patch for svn users the first time this was landed. * Scripts/webkitpy/tool/steps/postdiff.py: - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper. * Scripts/webkitpy/tool/steps/postdiffforcommit.py: ditto * Scripts/webkitpy/tool/steps/postdiffforrevert.py: ditto * Scripts/webkitpy/tool/steps/steps_unittest.py: - Fixed spurious logging seen when running test-webkitpy 2010-04-21 Chris Fleizach Reviewed by Alexey Proskuryakov. aria-liveregion-notifications.html fails on leopard release bot https://bugs.webkit.org/show_bug.cgi?id=37112 Change the way that notifications are listened for by forcing clients to call a remove listener as well to match the add listener. DRT will assert if those are not done in the correct order. * DumpRenderTree/AccessibilityUIElement.cpp: (removeNotificationListenerCallback): (AccessibilityUIElement::getJSClass): * DumpRenderTree/AccessibilityUIElement.h: * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::removeNotificationListener): * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (-[AccessibilityNotificationHandler initWithPlatformElement:]): (-[AccessibilityNotificationHandler dealloc]): (-[AccessibilityNotificationHandler _notificationReceived:]): (-[AccessibilityNotificationHandler setCallback:]): (AccessibilityUIElement::AccessibilityUIElement): (AccessibilityUIElement::~AccessibilityUIElement): (AccessibilityUIElement::addNotificationListener): (AccessibilityUIElement::removeNotificationListener): * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::removeNotificationListener): 2010-04-21 Anders Carlsson Reviewed by Sam Weinig. Add debug menu items to show/hide the Web View. https://bugs.webkit.org/show_bug.cgi?id=37958 * MiniBrowser/mac/BrowserWindowController.h: * MiniBrowser/mac/BrowserWindowController.m: (-[BrowserWindowController showHideWebView:]): (-[BrowserWindowController removeReinsertWebView:]): (-[BrowserWindowController validateMenuItem:]): * MiniBrowser/mac/English.lproj/MainMenu.xib: 2010-04-21 Eric Seidel Unreviewed. Rolling out unicode() changes as they broke NRWT for chromium. Rolling out: http://trac.webkit.org/changeset/58014 http://trac.webkit.org/changeset/58016 http://trac.webkit.org/changeset/58020 REGRESSION(57531): the commit-queue still hates Tor Arne Vestbo https://bugs.webkit.org/show_bug.cgi?id=37765 * Scripts/webkitpy/common/checkout/api_unittest.py: * Scripts/webkitpy/common/checkout/changelog.py: * Scripts/webkitpy/common/checkout/changelog_unittest.py: * Scripts/webkitpy/common/checkout/commitinfo.py: * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/checkout/scm_unittest.py: * Scripts/webkitpy/common/config/committers.py: * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: * Scripts/webkitpy/common/net/statusserver.py: * Scripts/webkitpy/common/prettypatch.py: * Scripts/webkitpy/common/system/autoinstall.py: * Scripts/webkitpy/common/system/deprecated_logging.py: * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/common/system/executive_unittest.py: * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/port/apache_http_server.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/gtk.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/mac_unittest.py: * Scripts/webkitpy/layout_tests/port/qt.py: * Scripts/webkitpy/layout_tests/port/server_process.py: * Scripts/webkitpy/layout_tests/port/webkit.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: * Scripts/webkitpy/style/filereader_unittest.py: * Scripts/webkitpy/thirdparty/__init__.py: * Scripts/webkitpy/tool/commands/earlywarningsystem.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/abstractstep.py: * Scripts/webkitpy/tool/steps/postdiff.py: * Scripts/webkitpy/tool/steps/postdiffforcommit.py: * Scripts/webkitpy/tool/steps/postdiffforrevert.py: * Scripts/webkitpy/tool/steps/steps_unittest.py: 2010-04-21 Eric Seidel Unreviewed, fixing NRWT for real this time. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: - Add a hack to fix new-run-webkit-tests my understanding of codecs.open(encoding=None) must have been wrong. 2010-04-21 Eric Seidel Unreviewed, just fixing exception seen on builders. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: - Pass and encoding to _write_into_file_at_path 2010-04-21 Eric Seidel Reviewed by Adam Barth. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 I fixed the queue to not ignore Tor as a reviwer in r57531, but instead it throws an exception every time his name is in a patch. This fixes our Executive.run_command code to work around a Popen bug http://bugs.python.org/issue5290 whereby python versions before 2.6 do not correctly handle unicode objects as input or output to Popen.communicate. Following the advice of: http://farmdev.com/talks/unicode/ I have changed all of webkitpy to use unicode() objects as strings instead of str objects (which in Python 3 are renamed "bytes"). String literals were left as "foo" instead of converting to u"foo" as u"foo" is only required if the string has a non-ascii code point. Python is smart about comparing str() and unicode() values and will log an error to the console if the comparison is ever invalid. Executive.run* now correctly accept and return unicode() objects. I attempted to fix all the places that we call .write() to make sure we encode any unicode() objects into utf-8. I removed several uses of StringIO. StringIO should generally always be passed a unicode() value. Likewise I replaced most calls to open() with codecs.open(). codecs.open() matches Python 3 open semantics in requiring an encoding parameter. Files opened with codecs.open() with a unicode-compatible encoding will vend unicode() objects from their read() calls, like how StringIO created with a unicode() object will do. I also deployed "with" statements wider (now that the project has settled on Python 2.5) to close a bunch of file descriptor leaks. * Scripts/webkitpy/common/checkout/api_unittest.py: - Read/write utf-8 files instead of ascii. - Update the tests to use test for proper unicode() handling. * Scripts/webkitpy/common/checkout/changelog.py: - Document that parse_latest_entry_from_file expects file-like objects which return unicode strings. * Scripts/webkitpy/common/checkout/changelog_unittest.py: - Use unicode() strings instead of str() byte arrays. - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/common/checkout/commitinfo.py: - Remove unneeded import. * Scripts/webkitpy/common/checkout/scm.py: - Remove use of str(). * Scripts/webkitpy/common/checkout/scm_unittest.py: - Read/write utf-8 files and use unicode() strings in testing. * Scripts/webkitpy/common/config/committers.py: - Use \u instead of \x to make slightly clearer what we're doing. * Scripts/webkitpy/common/net/bugzilla.py: - Add a new _string_contents() method and explain why we have to call unicode() on the result of soup.string and why it's safe to do so w/o needing to pass a codec name. - Remove the (unused) support for passing a file object to add_patch_to_bug(). * Scripts/webkitpy/common/net/buildbot.py: - Use unicode() instead of str() when needing to coax a NavigableString object into a unicode() object. * Scripts/webkitpy/common/net/buildbot_unittest.py: - Add a test which contains a unicode builder name. * Scripts/webkitpy/common/net/statusserver.py: - Remove use of str() * Scripts/webkitpy/common/prettypatch.py: - Write out the patch file as utf-8. * Scripts/webkitpy/common/system/autoinstall.py: - Write out files with a explicit encodings. - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/common/system/deprecated_logging.py: - Write out log files as utf-8. * Scripts/webkitpy/common/system/executive.py: - Make run* properly take and return unicode() objects. - Cleaned up input handling in run_command a little by adding a _compute_input() method which can return early instead of having such a long/cluttered if-block. * Scripts/webkitpy/common/system/executive_unittest.py: - Added a unit test to make sure we don't break Tor again! * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - Write out the test list as utf-8. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: - Write out json files as utf-8. * Scripts/webkitpy/layout_tests/port/apache_http_server.py: - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/layout_tests/port/chromium.py: Add Executive.py FIXME. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: ditto. * Scripts/webkitpy/layout_tests/port/chromium_mac.py: ditto. * Scripts/webkitpy/layout_tests/port/gtk.py: ditto. * Scripts/webkitpy/layout_tests/port/mac.py: ditto. * Scripts/webkitpy/layout_tests/port/mac_unittest.py: - Make the skipped file parsing test unicode. * Scripts/webkitpy/layout_tests/port/qt.py: Add Executive.py FIXME. * Scripts/webkitpy/layout_tests/port/server_process.py: ditto. * Scripts/webkitpy/layout_tests/port/webkit.py: - Deploy "with" to close file descriptor leaks. * Scripts/webkitpy/layout_tests/port/websocket_server.py: - Make explicit the encodings of log files and pid files. * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: - Make encodings explicit and deploy "with". * Scripts/webkitpy/layout_tests/run_webkit_tests.py: ditto. * Scripts/webkitpy/layout_tests/test_types/image_diff.py: ditto. * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: ditto. * Scripts/webkitpy/layout_tests/test_types/text_diff.py: ditto. * Scripts/webkitpy/style/filereader_unittest.py: ditto. * Scripts/webkitpy/thirdparty/__init__.py: ditto. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: - Removed extra import. * Scripts/webkitpy/tool/commands/queues.py: - No need to map args to strings now that run_command does. - Update test results to match args changes. - Document our global argument hacks. * Scripts/webkitpy/tool/commands/upload.py: - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper. * Scripts/webkitpy/tool/mocktool.py: - Rename add_patch_to_bug argument to match bugzilla.py * Scripts/webkitpy/tool/steps/abstractstep.py: - Executive.run_* now require lists instead of strings. The lack of this change was what broke webkit-patch for svn users the first time this was landed. * Scripts/webkitpy/tool/steps/postdiff.py: - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper. * Scripts/webkitpy/tool/steps/postdiffforcommit.py: ditto * Scripts/webkitpy/tool/steps/postdiffforrevert.py: ditto * Scripts/webkitpy/tool/steps/steps_unittest.py: - Fixed spurious logging seen when running test-webkitpy 2010-04-21 Kinuko Yasuda Unreviewed. Add myself in committers.py. * Scripts/webkitpy/common/config/committers.py: 2010-04-21 Dirk Pranke Reviewed by Dimitri Glazkov. new-run-webkit-tests: fix a bug in the Chromium port where we would try to talk to a crashed test_shell and raise exceptions that weren't being caught. https://bugs.webkit.org/show_bug.cgi?id=37941 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-04-21 Laszlo Gombos Unreviewed. [Qt] [Symbian] Build fix. Work around a Qt quirk. Some versions of Symbian port Qt QFontDatabase::removeAllApplicationFonts symbol is not available. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::open): 2010-04-21 Alexey Proskuryakov Unreviewed. https://bugs.webkit.org/show_bug.cgi?id=37933 XMLHttpRequest.withCredentials should be better enforced. Adding stub implementation of authenticateSession(). Depending on platform loader behavior, a real implementation may or may not be necessary for the one test that currently uses it to pass. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::authenticateSession): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-21 Alexey Proskuryakov Reviewed by Brady Eidson. https://bugs.webkit.org/show_bug.cgi?id=37933 XMLHttpRequest.withCredentials should be better enforced. Adding authenticateSession() method that adds credentials to per-process credential storage (for platforms that even have such). No Windows implementation, because writing another loader for DRT is painful. * DumpRenderTree/LayoutTestController.cpp: (authenticateSessionCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/LayoutTestControllerMac.mm: (-[SynchronousLoader dealloc]): (-[SynchronousLoader connectionShouldUseCredentialStorage:]): (-[SynchronousLoader connection:didReceiveAuthenticationChallenge:]): (-[SynchronousLoader connection:didFailWithError:]): (-[SynchronousLoader connectionDidFinishLoading:]): (+[SynchronousLoader makeRequest:withUsername:password:]): (LayoutTestController::authenticateSession): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::authenticateSession): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::authenticateSession): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::authenticateSession): Stub implementations. 2010-04-21 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Make DRT compilable in Chromium tree https://bugs.webkit.org/show_bug.cgi?id=37923 We need to use different GYPs in a case of WebKit-only checkout and a case of whole Chromium checkout because the relative paths from webkit/ to WebKit/chromium/features.gypi are different in these cases and we can't use 'conditions' for 'includes' in GYPs. * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: 2010-04-21 Jakub Wieczorek Reviewed by Darin Adler. List item markers are not always updated after changes in the DOM. https://bugs.webkit.org/show_bug.cgi?id=37060 * DumpRenderTree/LayoutTestController.cpp: (markerTextForListItemCallback): A function that returns the marker text for a given list item. (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::markerTextForListItem): Implement it in the GTK port. * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::markerTextForListItem): Add a stub. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::markerTextForListItem): Implement it in the Qt port. * DumpRenderTree/qt/LayoutTestControllerQt.h: * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::markerTextForListItem): Add a stub. 2010-04-21 Adam Roben Exclude leaks in CGGradientCreateWithColorComponents from run-webkit-tests leaks output The leak in CG is covered by . Fixes . Reviewed by Eric Carlson. * Scripts/old-run-webkit-tests: (sub countAndPrintLeaks): Exclude leaks in CGGradientCreateWithColorComponents on certain OSs. 2010-04-21 Kent Tamura Reviewed by Shinichiro Hamaji. [DRT/Chromium] Import MockSpellCheck from Chromium https://bugs.webkit.org/show_bug.cgi?id=37910 Import webkit/tools/test_shell/mock_spellcheck.{cc,h} rev.37241 of Chromium. * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Add ICU explicitly because WTFString.h includes ICU headers. Add MockSpellCheck.{cpp,h}. * DumpRenderTree/chromium/MockSpellCheck.cpp: Added. * DumpRenderTree/chromium/MockSpellCheck.h: Added. * DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::spellCheck): * DumpRenderTree/chromium/WebViewHost.h: * DumpRenderTree/chromium/config.h: Define JS_EXPORTDATA, which is used by wtf/text/AtomicString.h included by wtf/text/WTFString.h. 2010-04-21 Adam Barth Reviewed by Eric Seidel. Add webkit-patch pretty-diff https://bugs.webkit.org/show_bug.cgi?id=37892 This is slightly lame because it asks you whether the diff is correct, but it's a starting point. * Scripts/webkitpy/tool/commands/__init__.py: * Scripts/webkitpy/tool/commands/prettydiff.py: Added. * Scripts/webkitpy/tool/main.py: 2010-04-21 Adam Barth Reviewed by Darin Adler. Remove mention of non-existant --no-build option https://bugs.webkit.org/show_bug.cgi?id=37893 The option doesn't exist! * Scripts/webkitpy/tool/commands/stepsequence.py: 2010-04-21 Balazs Kelemen Reviewed by Kenneth Rohde Christiansen. [Qt] Interrupting JavaScript is cumbersome when you use QtLaucher for testing or profiling. https://bugs.webkit.org/show_bug.cgi?id=37198 * QtLauncher/main.cpp: (LauncherWindow::toggleInterruptingJavaScriptEnabled): (LauncherWindow::newWindow): (LauncherWindow::cloneWindow): (LauncherWindow::createChrome): (main): * QtLauncher/webpage.cpp: (WebPage::WebPage): (WebPage::shouldInterruptJavaScript): * QtLauncher/webpage.h: (WebPage::setInterruptingJavaScriptEnabled): 2010-04-21 Eric Seidel Unreviewed, rolling out r57963. http://trac.webkit.org/changeset/57963 https://bugs.webkit.org/show_bug.cgi?id=37759 Three tests started crashing on the Qt bot. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-21 Tor Arne Vestbø Reviewed by Eric Seidel. Make new-run-webkit-tests work for the Qt port https://bugs.webkit.org/show_bug.cgi?id=37588 * Scripts/webkitpy/layout_tests/port/qt.py: 2010-04-21 Tor Arne Vestbø Reviewed by Eric Seidel. new-run-webkit-tests: try to detect alternate apache path https://bugs.webkit.org/show_bug.cgi?id=37587 _check_port_build() also needs to return true in the base implementation to not fail the check_build step. * Scripts/webkitpy/layout_tests/port/webkit.py: 2010-04-21 Yi Shen Reviewed by Simon Hausmann. [Qt] Add LayoutTestController interface: computedStyleIncludingVisitedInfo https://bugs.webkit.org/show_bug.cgi?id=37759 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::computedStyleIncludingVisitedInfo): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-21 Eric Seidel Unreviewed, test fix only. new-run-webkit-tests: implement a --log trace message to be able to display detailed output of an individual test run https://bugs.webkit.org/show_bug.cgi?id=37726 This change seems to have broken a test. Attempting to handle the case where we don't have any timing information. Dirk may have to correct this change. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-19 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests has much higher startup latency than run-webkit-tests https://bugs.webkit.org/show_bug.cgi?id=37643 I got rid of the -expected.checksum reads during startup. This makes startup noticably better on my laptop. * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - Use image_hash() instead of .image_hash now that expected.checksum file reads are done lazily. * Scripts/webkitpy/layout_tests/port/http_server_base.py: - Add debug logging for this sleep call. In my testing I never saw this sleep() hit. * Scripts/webkitpy/layout_tests/port/websocket_server.py: - Sleep a shorter interval to make websocket server startup more responsive. On my machine startup was taking around 1 second. - Remove the unconditional .5s delay on startup. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - Make image_hash file reads done lazily in a new image_hash() function. - Add a "Starting testing ..." meter update after DRT threads have been started, but before we get updates from the first one. - Rename variable "t" to a full english name to match WebKit style. 2010-04-20 Daniel Bates Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=37748 Make Sheriffbot more inspirational. * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/bugzilla_unittest.py: * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: * Scripts/webkitpy/tool/mocktool.py: 2010-04-20 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Import Chromium image_diff as ImageDiff https://bugs.webkit.org/show_bug.cgi?id=37790 ImageDiff.cpp is based on tools/imagediff/image_diff.cc r41911 of Chromium. * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: * DumpRenderTree/chromium/ImageDiff.cpp: Added. * Scripts/webkitpy/layout_tests/port/chromium_mac.py: 2010-04-20 Dirk Pranke This patch to new-run-webkit-tests adds a --log 'trace' option that prints out detailed info about a given test as it executes (where the baselines are, what the expectation is, what we got, how long it took). https://bugs.webkit.org/show_bug.cgi?id=37726 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - use the newly exposed TestResult class and implement --log trace * Scripts/webkitpy/layout_tests/layout_package/dump_render_thread.py: - rename TestStats to TestResult and make it more public, resulting in cleaner code * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: - add expectation_to_string() as a separate callable function 2010-04-20 Eric Seidel Unreviewed, rolling out r57907. http://trac.webkit.org/changeset/57907 https://bugs.webkit.org/show_bug.cgi?id=37765 Appears to have broken MacEWS and possibly webkit-patch upload for svn users. Needs further investigation. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/api_unittest.py: * Scripts/webkitpy/common/checkout/changelog.py: * Scripts/webkitpy/common/checkout/changelog_unittest.py: * Scripts/webkitpy/common/checkout/commitinfo.py: * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/checkout/scm_unittest.py: * Scripts/webkitpy/common/config/committers.py: * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: * Scripts/webkitpy/common/net/statusserver.py: * Scripts/webkitpy/common/prettypatch.py: * Scripts/webkitpy/common/system/autoinstall.py: * Scripts/webkitpy/common/system/deprecated_logging.py: * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/common/system/executive_unittest.py: * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/port/mac_unittest.py: * Scripts/webkitpy/tool/commands/earlywarningsystem.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/abstractstep.py: * Scripts/webkitpy/tool/steps/postdiff.py: * Scripts/webkitpy/tool/steps/postdiffforcommit.py: * Scripts/webkitpy/tool/steps/postdiffforrevert.py: * Scripts/webkitpy/tool/steps/steps_unittest.py: 2010-04-20 Nate Chapin Unreviewed. Update my irc handle in committers.py (natechapin -> japhet). * Scripts/webkitpy/common/config/committers.py: 2010-04-20 Eric Seidel Reviewed by Adam Barth. REGRESSION(57531): the commit-queue still hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37765 I fixed the queue to not ignore Tor as a reviwer in r57531, but instead it throws an exception every time his name is in a patch. This fixes our Executive.run_command code to work around a Popen bug http://bugs.python.org/issue5290 whereby python versions before 2.6 do not correctly handle unicode objects as input or output to Popen.communicate. Following the advice of: http://farmdev.com/talks/unicode/ I'm attempting to take the python unicode plunge and use unicode() objects as strings instead of str() objects everywhere in webkitpy. We do not have to use u"" instead of "" because u"a" == "a" as expected in Python. Python will generate a warning to the console in cases where a unicode() == str() operation cannot be performed. I also cleaned up the input handling in run_command a little by adding a new _compute_input() method which can return early instead of having such a long/cluttered if-block. Executive.run* now correctly accept and return unicode() objects. I attempted to fix all the places that we call .write() to make sure we encode any unicode() objects into utf-8. All places which use StringIO need to be sure to pass StringIO a pre-encoded byte-array (str object) instead of unicode so that clients which read from the StringIO don't have encoding exceptions. To make this easier, I removed the patch_file_object support from add_patch_to_bug, and changed the 4 places which previously used StringIO to create a fake patch file. I attempted to document any places where we are not correctly converting to/from bytes (str() objects) to strings (unicode() objects). * Scripts/webkitpy/common/checkout/api_unittest.py: - Read/write utf-8 files instead of ascii. - Update the tests to use test for proper unicode() handling. * Scripts/webkitpy/common/checkout/changelog_unittest.py: - Use unicode() strings instead of str() byte arrays. * Scripts/webkitpy/common/checkout/scm.py: - Remove use of str(). * Scripts/webkitpy/common/checkout/scm_unittest.py: - Read/write utf-8 files and use unicode() strings in testing. * Scripts/webkitpy/common/config/committers.py: - Use \u instead of \x to make slightly clearer what we're doing. * Scripts/webkitpy/common/net/bugzilla.py: - Add a new _string_contents() method and explain why we have to call unicode() on the result of soup.string and why it's safe to do so w/o needing to pass a codec name. - Remove the (unused) support for passing a file object to add_patch_to_bug(). * Scripts/webkitpy/common/net/buildbot.py: - Use unicode() instead of str() when needing to coax a NavigableString object into a unicode() object. * Scripts/webkitpy/common/net/statusserver.py: - Remove use of str() * Scripts/webkitpy/common/prettypatch.py: - Write out the patch file as utf-8. * Scripts/webkitpy/common/system/autoinstall.py: - Add a FIXME about encoding. * Scripts/webkitpy/common/system/deprecated_logging.py: - Document that tee() works on bytes, not strings. * Scripts/webkitpy/common/system/executive.py: - Make run* properly take and return unicode() objects. * Scripts/webkitpy/common/system/executive_unittest.py: - Added a unit test to make sure we don't break Tor again! * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - Write out the test list as utf-8. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: - Write out json files as utf-8. * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: - Add FIXME about encoding handling. * Scripts/webkitpy/tool/commands/upload.py: - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper. * Scripts/webkitpy/tool/mocktool.py: - Rename add_patch_to_bug argument to match bugzilla.py * Scripts/webkitpy/tool/steps/postdiff.py: - Pass the diff directly to add_patch_to_bug instead of creating a StringIO file wrapper. * Scripts/webkitpy/tool/steps/postdiffforcommit.py: ditto. * Scripts/webkitpy/tool/steps/postdiffforrevert.py: ditto. * Scripts/webkitpy/tool/steps/steps_unittest.py: - Fixed spurious logging seen when running test-webkitpy 2010-04-20 Chris Jerdonek Reviewed by Shinichiro Hamaji. For check-webkit-style, implemented __eq__() and __ne__() (the built-in equality and inequality methods) for the DefaultStyleErrorHandler class. https://bugs.webkit.org/show_bug.cgi?id=37850 This will facilitate unit-testing for a subsequent patch, namely for https://bugs.webkit.org/show_bug.cgi?id=37850 * Scripts/webkitpy/style/error_handlers.py: - Added __eq__() and __ne__() to the DefaultStyleErrorHandler class. * Scripts/webkitpy/style/error_handlers_unittest.py: - Added unit tests for __eq__() and __ne__(). - Also included a minor clean-up refactoring of combining the StyleErrorHandlerTestBase class (which has not needed to be separate due to previous changes) into the DefaultStyleErrorHandlerTest class. 2010-04-20 Jakub Wieczorek Unreviewed. Add my IRC nick to the committers.py list. * Scripts/webkitpy/common/config/committers.py: 2010-04-20 Kim Grönholm Reviewed by Simon Hausmann. [Qt] Multitouch mocking in QtLauncher doesn't work with QGraphicsView https://bugs.webkit.org/show_bug.cgi?id=37816 Fix multi-touch mocking in QtLauncher when using QGraphicsView. Test: https://bug-32434-attachments.webkit.org/attachment.cgi?id=44955 * QtLauncher/main.cpp: (LauncherWindow::eventFilter): (LauncherWindow::initializeView): 2010-04-20 MORITA Hajime Unreviewed, add myself to the committers list. * Scripts/webkitpy/common/config/committers.py: 2010-04-20 Kent Tamura Reviewed by Shinichiro Hamaji. [DRT/Chromium] Fix some unexpected results of editing https://bugs.webkit.org/show_bug.cgi?id=37843 This change fixes about 70 unexpected results. The original test_webview_delegate.cc doesn't have this bug. The bug was introduced when I ported it to WebKit tree. * DumpRenderTree/chromium/WebViewHost.cpp: (printRangeDescription): Replace the latter startContainer() with endContainer(). 2010-04-19 Dirk Pranke Unreviewed, build fix. Turn off some unit tests for now - the new-run-webkit-tests dryrun tests for chromium won't work if you don't have a chromium checkout. https://bugs.webkit.org/show_bug.cgi?id=37841 * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-04-19 Dirk Pranke Unreviewed, build fix. (Re-)add dryrun.py; this was renamed from passing.py in the previous CL but apparently somehow didn't get checked in. https://bugs.webkit.org/show_bug.cgi?id=37841 * Scripts/webkitpy/layout_tests/port/dryrun.py: Added. 2010-04-19 Shinichiro Hamaji Reviewed by David Levin. check-webkit-style: exits when encountering a deleted file https://bugs.webkit.org/show_bug.cgi?id=37122 This reverts the quick fix done by r57119 and makes check_patch not call check_file for deleted files. Also this change fixes the behavior for "-", which should mean stdin. Before this change, the style checker just ignored "-" with a warning message. * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: 2010-04-19 Daniel Bates No review, rolling out 57868. http://trac.webkit.org/changeset/57868 https://bugs.webkit.org/show_bug.cgi?id=37748 Sheriffbot wasn't very inspirational after this patch. Instead, he was silent when you said hi :-(. Rolling out this patch so that I can debug/test this some more. * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/bugzilla_unittest.py: * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: * Scripts/webkitpy/tool/mocktool.py: 2010-04-19 Daniel Bates Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=37748 Make Sheriffbot more inspirational. * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/bugzilla_unittest.py: * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: * Scripts/webkitpy/tool/mocktool.py: 2010-04-19 Kevin Ollivier [wx] Build fix, add missing header. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: 2010-04-19 Dirk Pranke Reviewed by Adam Barth. new-run-webkit-tests - repurpose the "Passing" port as "Dryrun" port that can be used to test platforms other than the one you are running on. This can be useful for checking baselines and testing code coverage. Note that running the code on the "wrong" port requires each port-specific implementation to actually not require any platform-specific python code (e.g., the chromium-win port must test for the existence of windows functions before calling them). https://bugs.webkit.org/show_bug.cgi?id=37782 * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/dryrun.py: Renamed from WebKitTools/Scripts/webkitpy/layout_tests/port/passing.py. * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: 2010-04-19 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: add --build (default) and --no-build options to make that step optional. This flag modifies what happens in port.check_build(). https://bugs.webkit.org/show_bug.cgi?id=37786 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/webkit.py: 2010-04-19 Dirk Pranke Unreviewed, build fix. new-run-webkit-tests - fix a typo in r57480 that caused us to stop logging the actual list of unexpected results. https://bugs.webkit.org/show_bug.cgi?id=37831 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-19 Dirk Pranke Reviewed by Adam Barth. From a patch by Tor Arne Vestbo new-run-webkit-tests: make the retry step more explicit https://bugs.webkit.org/show_bug.cgi?id=37606 It might be confusing to see the test and percent counters reset without any notice of what's going on, so we make the message that a retry-run is started explicit. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-19 Sam Weinig Reviewed by Anders Carlsson. Add support for opening a new window (File->New Window) to Windows MiniBrowser. Accelerator doesn't work. * MiniBrowser/win/BrowserView.cpp: (createNewPage): Use BrowserView::create. * MiniBrowser/win/BrowserWindow.cpp: (BrowserWindow::onCommand): Respond to ID_FILE_NEW_WINDOW by creating a new window. * MiniBrowser/win/BrowserWindow.h: (BrowserWindow::create): Added. Don't allow creating BrowserWindows on the stack by making constructor private and exposing the create function. * MiniBrowser/win/MiniBrowser.cpp: (MiniBrowser::createNewWindow): Move new window creation logic here. * MiniBrowser/win/MiniBrowser.h: * MiniBrowser/win/MiniBrowser.rc: * MiniBrowser/win/main.cpp: (_tWinMain): Use the new MiniBrowser::createNewWindow(). 2010-04-19 Chris Fleizach Reviewed by Beth Dakin. AX: aria-haspopup needs to be exposed https://bugs.webkit.org/show_bug.cgi?id=37808 * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::hasPopup): 2010-04-19 Dirk Pranke Reviewed by Eric Seidel. Submit a better workaround for r57806 than the one in r57831 - log an error and exit if you try to run new-run-webkit-tests with --use-drt on Windows. https://bugs.webkit.org/show_bug.cgi?id=37822 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-04-19 Jesus Sanchez-Palencia Unreviewed. Just adding myself as a committer. * Scripts/webkitpy/common/config/committers.py: 2010-04-19 Dirk Pranke Reviewed by Eric Seidel. Add slightly better logging to the websocket python wrapper script, including a --verbose flag for debug output. https://bugs.webkit.org/show_bug.cgi?id=37233 * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/new-run-webkit-websocketserver: 2010-04-19 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: add a way (--print-unexpected-results) to (re-)print out the tests that produced unexpected results in the last run. Also add a way (--retry-unexpected-results) to automatically re-test them. https://bugs.webkit.org/show_bug.cgi?id=37783 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-19 Dirk Pranke Reviewed by Eric Seidel. Restructure the logging in new-run-webkit-tests so that many of log messages that were logged to the MeteredStream also get logged in --verbose mode. https://bugs.webkit.org/show_bug.cgi?id=37780 * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-19 Dirk Pranke Reviewed by Eric Seidel. new-run-webkit-tests: add 'summary' and 'unexpected-results' options to the --log flag. Also add a 'progress' flag to enable the regular progress bar (as opposed to 'detailed-progress', which enables the dots). Also add a 'nothing' flag to allow you to be explicit that you don't want any logging on the command line. The default is '--log detailed-progress,summary,unexpected,unexpected-results' (The default logging is unchanged by this patch, this just makes things properly configurable). Note that 'nothing' doesn't work properly yet; I need a couple other patches to land to avoid rewriting things several different ways. https://bugs.webkit.org/show_bug.cgi?id=37785 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-19 Kenneth Rohde Christiansen Reviewed by Simon Hausmann. Make the URL change on committed load. * QtLauncher/mainwindow.cpp: (MainWindow::buildUI): (MainWindow::setAddressUrl): * QtLauncher/mainwindow.h: 2010-04-19 Dirk Pranke Reviewed by Eric Seidel. Fix a typo in the rebaselining tool that causes us to use "debug" instead of "Debug" in a directory path, which fails on platforms with case-sensitive filesystems. https://bugs.webkit.org/show_bug.cgi?id=37819 * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: 2010-04-19 Dirk Pranke Unreviewed, build fix. Fix breakage of chromium-win canary bots caused by r57806. That patch introduced the option of using Chrome's new port of DumpRenderTree, but unfortunately that port relies on the webkit.py class implementation which uses non-blocking I/O that isn't available on Windows. This patch turns off that option and doesn't import the class if we're running on Windows. https://bugs.webkit.org/show_bug.cgi?id=37817 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-04-19 James Robinson Reviewed by abarth. Fix a typo * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: 2010-04-19 Adam Roben Fix run-webkit-tests when there are spaces in the path Fixes Reviewed by Adam Barth. * Scripts/run-webkit-tests: Use an "indirect object" to specify the path to the harness to exec(). According to perldoc, this usage will prohibit perl from parsing the arguments to exec() via the shell, which would incorrectly split paths with spaces in them, etc. 2010-04-19 Dimitri Glazkov Reviewed by Adam Roben. WinLauncher.h should use LF line-endings and use native line-endings style. https://bugs.webkit.org/show_bug.cgi?id=37807 * WinLauncher/WinLauncher.h: Added property svn:eol-style, converted to LF line-endings. 2010-04-19 Kent Tamura Reviewed by Shinichiro Hamaji. [DRT/Chromium] Fix a test initialization problem https://bugs.webkit.org/show_bug.cgi?id=37791 * DumpRenderTree/chromium/DumpRenderTree.cpp: (runTest): Call resetTestController() before runFileTest(). Some controllers initialize their fields in reset() and not in their constructors. 2010-04-19 Kent Tamura Reviewed by Eric Seidel. [Chromium] new-run-webkit-tests should use WebKitDriver for --use-drt https://bugs.webkit.org/show_bug.cgi?id=37793 We need to use WebKitDriver instead of ChromiumDriver for Chromium DRT because its interface is different from test_shell. Chromium DRT has no UI. So we can't use it to show test results. * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-04-18 Eric Seidel Reviewed by Adam Roben. Make failure-reason more forgiving https://bugs.webkit.org/show_bug.cgi?id=37525 Removed search_limit, which wasn't very useful anyway. Added a log about the long load time loading from the builders. Prompt the user for what revision to start walking from (makes it easy to restart upon failure). * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/tool/commands/queries.py: 2010-04-18 Chris Jerdonek Reviewed by Shinichiro Hamaji. Created a class for check-webkit-style that encapsulates iterating over text files and reading them. https://bugs.webkit.org/show_bug.cgi?id=37754 This revision is an intermediate step towards separating our style-checking code from the logic of iterating over files and reading them. * Scripts/webkitpy/common/system/logtesting.py: - Added a logMessages() method to the LoggingTestCase class. This method provides unit tests with access to the raw list of log messages in case the tester needs to do something more than simply assert the list of existing messages. * Scripts/webkitpy/style/checker.py: - Added a ProcessorBase class that processors of lists of lines should eventually inherit from. - Also added a FIXME to use the ProcessorBase class and the TextFileReader class added below. * Scripts/webkitpy/style/filereader.py: Added. - Created a TextFileReader class that encapsulates reading and iterating over text files. * Scripts/webkitpy/style/filereader_unittest.py: Added. - Added a TextFileReaderTest class to unit-test the new TextFileReader class. 2010-04-15 Tony Chang Reviewed by Adam Barth. [chromium] new-run-webkit-tests should be able to use chromium DRT https://bugs.webkit.org/show_bug.cgi?id=37645 Make sure that the lack of a chromium checkout doesn't cause the script to fail. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: Fix up a few paths to be relative to an upstream output dir. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: Add --use-drt flag. 2010-04-18 Eric Seidel Unreviewed, fixing the Qt bot. Add a layer of indirection when calling run-webkit-tests to allow testing new-run-webkit-tests on various platforms https://bugs.webkit.org/show_bug.cgi?id=37632 * Scripts/run-webkit-tests: - Exit non-zero of launching the harness fails. 2010-04-18 Eric Seidel Unreviewed, fixing the Qt bot. Add a layer of indirection when calling run-webkit-tests to allow testing new-run-webkit-tests on various platforms https://bugs.webkit.org/show_bug.cgi?id=37632 * Scripts/run-webkit-tests: - Fix the wrapper to work for users who do not have WebKitTools/Scripts in their path. 2010-04-14 Eric Seidel Reviewed by Adam Barth. Add a layer of indirection when calling run-webkit-tests to allow testing new-run-webkit-tests on various platforms. https://bugs.webkit.org/show_bug.cgi?id=37632 This will let us test and fix bugs in new-run-webkit-tests without needing to restart the buildbot master between tests. Currently this change leaves run-webkit-tests as-is, but once its landed we will easily be able to turn on/off new-run-webkit-tests for various ports/configurations. I will send a note out to webkit-dev about how we will be using this launcher script to test on the bots. * Scripts/old-run-webkit-tests: Copied from WebKitTools/Scripts/run-webkit-tests. * Scripts/run-webkit-tests: - A new script which decides whether to run new- or old- run-webkit-tests based on the platform. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: - Add some dummy argument handling for arguments which old-run-webkit-tests supports but new-run-webkit-tests does not yet. 2010-04-18 Eric Seidel Reviewed by Adam Barth. Add Gtk bots to the list of "core builders" (builders which stop the commit-queue when they turn red) https://bugs.webkit.org/show_bug.cgi?id=33295 The Gtk builders have been green every time I've looked at them in the last 5 days or so. It would appear webkit is now keeping them green and we should update the core builder list to match reality. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-04-18 Robert Hogan Reviewed by Simon Hausmann. [Qt] Add support for LayoutTestController commands: setSmartInsertDeleteEnabled setSelectTrailingWhitespaceEnabled execCommand isCommandEnabled https://bugs.webkit.org/show_bug.cgi?id=35844 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setSmartInsertDeleteEnabled): (LayoutTestController::setSelectTrailingWhitespaceEnabled): (LayoutTestController::execCommand): (LayoutTestController::isCommandEnabled): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-17 Adam Barth Reviewed by Eric Seidel. Remove steps_references and commands_references https://bugs.webkit.org/show_bug.cgi?id=37758 We tried using the mumble_references convention to manage our dependencies, but it doesn't seem to be providing much value for the steps and commands module because these modules are small pieces of the larger tool module. In this patch, I've removed the references file for these modules. I've left the style_references file for the style module because that module seems better isolated from the rest of webkitpy and the style_references file appears to be providing some value. * Scripts/webkitpy/tool/commands/commandtest.py: * Scripts/webkitpy/tool/commands/download_unittest.py: * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: * Scripts/webkitpy/tool/commands/queries_unittest.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/queuestest.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/commands_references.py: Removed. * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py: * Scripts/webkitpy/tool/steps/steps_unittest.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py: * Scripts/webkitpy/tool/steps/validatereviewer_unittest.py: * Scripts/webkitpy/tool/steps_references.py: Removed. 2010-04-17 Eric Seidel Reviewed by Adam Barth. WebKit needs a Chromium Mac EWS Builder https://bugs.webkit.org/show_bug.cgi?id=37742 * Scripts/webkitpy/tool/commands/earlywarningsystem.py: 2010-04-17 Adam Barth Fix expected results for unit test broken by http://trac.webkit.org/changeset/57772 * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-04-17 Sam Weinig Reviewed by Adam Roben. Teach windows MiniBrowser how to work with window.open() and targeted links. * MiniBrowser/win/BrowserView.cpp: (createNewPage): Create a new BrowserWindow and return its page. (showPage): Show the page. (closePage): Empty implementation. (runJavaScriptAlert): Empty implementation. (BrowserView::create): Register a UIClient. * MiniBrowser/win/BrowserView.h: (BrowserView::webView): Added. Change create to take a BrowserWindow instead of an HWND. * MiniBrowser/win/BrowserWindow.cpp: (BrowserWindow::wndProc): Respond to WM_NCDESTROY. (BrowserWindow::goToURL): Added. Forwards to BrowserView. (BrowserWindow::onCreate): Don't always go to the default url. Let the caller do this. (BrowserWindow::onNCDestroy): Delete the window. * MiniBrowser/win/BrowserWindow.h: (BrowserWindow::view): Added. (BrowserWindow::window): Added. * MiniBrowser/win/main.cpp: (_tWinMain): Go to the default URL for the initial page. Allocate the initial window on the heap for correctness. 2010-04-16 Adam Roben Add the Windows Debug (Test) builder to the list of core builders It's been green for a few days now, and all the known Windows flakiness is Release-only. Rubber-stamped by Mark Rowe. * Scripts/webkitpy/common/net/buildbot.py: (BuildBot.core_builder_name_regexps): Added a regular expression to match the "Windows Debug (Test)" builder. 2010-04-16 Sam Weinig Reviewed by Anders Carlsson. Fix window.open() and targeted links. * MiniBrowser/mac/BrowserWindowController.m: (_createNewPage): Use the correct initializer to and load the window. 2010-04-16 Adam Roben Fix links to layout test results from build status pages Reviewed by Mark Rowe. * BuildSlaveSupport/build.webkit.org-config/master.cfg: (ExtractTestResults.finished): Prepend "/" on the URL of the test results page so that it is treated as an absolute URL. 2010-04-16 Tony Chang Reviewed by Dimitri Glazkov. [chromium] build DRT on Linux https://bugs.webkit.org/show_bug.cgi?id=37690 * Scripts/build-dumprendertree: Add support for win and linux 2010-04-16 Sam Weinig Reviewed by Adam Roben. Use the threaded process model for MiniBrowser if holding down the shift key on startup. * MiniBrowser/win/BrowserView.cpp: (BrowserView::create): 2010-04-15 Tony Chang Reviewed by Dimitri Glazkov. [chromium] Add TestShellGtk.cpp so we can link on Linux https://bugs.webkit.org/show_bug.cgi?id=37561 * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Add new file and add platform file exceptions. * DumpRenderTree/chromium/TestShellGtk.cpp: Added. (AlarmHandler): (TestShell::waitTestFinished): 2010-04-15 Tony Chang Reviewed by Dimitri Glazkov. build DRT on chromium mac https://bugs.webkit.org/show_bug.cgi?id=37639 * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: * Scripts/build-dumprendertree: enable build-dumprendertree --chromium 2010-04-15 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add LayoutTestHelper for Mac https://bugs.webkit.org/show_bug.cgi?id=37668 LayouTestHelper.mm is based on webkit/tools/test_shell/mac/layout_test_helper.mm of Chromium. * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: * DumpRenderTree/chromium/LayoutTestHelper.mm: Added. 2010-04-15 Alexey Proskuryakov Reviewed by Geoff Garen. https://bugs.webkit.org/show_bug.cgi?id=37494 REGRESSION (r57340): fast/events/mouse-drag-from-frame-to-other-frame.html fails on Windows * DumpRenderTree/win/EventSender.cpp: (makeEventSender): * DumpRenderTree/win/EventSender.h: Tell EventSender if it's being created for a top frame. * DumpRenderTree/win/FrameLoadDelegate.cpp: (FrameLoadDelegate::didClearWindowObjectForFrameInStandardWorld): We only want to reset EventSender machinery when a new test is loaded, not when an iframe (or just its global object) is created. 2010-04-15 Adam Roben Fix Windows WebKit2 build. * MiniBrowser/win/MiniBrowser.cpp: 2010-04-15 Ojan Vafai Reviewed by Adam Barth. Include codereview issue number in patch description https://bugs.webkit.org/show_bug.cgi?id=37677 This lets us know which rietveld issue this patch is tied to. Also, make it so that --fancy-review overrides --no-review. * Scripts/webkitpy/tool/steps/postcodereview.py: * Scripts/webkitpy/tool/steps/postdiff.py: 2010-04-15 Adam Roben Make --exit-after-n-failures work when all tests are timing out or crashing Fixes . Reviewed by Jon Honeycutt. * Scripts/run-webkit-tests: (top level): When a test crashes or times out, break out of the main loop if stopRunningTestsEarlyIfNeeded returns true. Moved some code from the bottom of the main loop from here... (stopRunningTestsEarlyIfNeeded): ...to here. 2010-04-15 Sam Weinig Reviewed by Anders Carlsson. Add WebHistoryClient support. https://bugs.webkit.org/show_bug.cgi?id=37671 Add HistoryClient logging. * MiniBrowser/mac/BrowserWindowController.m: (_didNavigateWithNavigationData): (_didPerformClientRedirect): (_didPerformServerRedirect): (_didUpdateHistoryTitle): (-[BrowserWindowController awakeFromNib]): 2010-04-15 Anders Carlsson Reviewed by Sam Weinig. Start the mini browser in threaded mode if shift is pressed during startup. https://bugs.webkit.org/show_bug.cgi?id=37670 * MiniBrowser/mac/AppDelegate.m: (-[BrowserAppDelegate init]): 2010-04-15 Chris Fleizach Reviewed by Beth Dakin. AXHelp is being appended from ancestors incorrectly https://bugs.webkit.org/show_bug.cgi?id=37659 * DumpRenderTree/AccessibilityUIElement.cpp: (getHelpTextCallback): (AccessibilityUIElement::getJSClass): * DumpRenderTree/AccessibilityUIElement.h: * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::helpText): * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::helpText): * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::helpText): 2010-04-15 Dirk Pranke Reviewed by Adam Barth. Re-format run-webkit-tests to fit in 80-columns for PEP-8 compliance. (broken by r57463 and r57381, at least). I've also filed bug 37477 to fix check-webkit-style to catch these things. https://bugs.webkit.org/show_bug.cgi?id=38586 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-15 Dirk Pranke Reviewed by Dimitri Glazkov. Add a way to override the user-visible name for the test binary since some ports don't call it DumpRenderTree (e.g., Chromium Win uses test_shell, Chromium Mac uses TestShell) by adding a driver_name() method to the Port interface. https://bugs.webkit.org/show_bug.cgi?id=37631 * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-14 Anders Carlsson Reviewed by Adam Roben. Add "Force Repaint" to debug menu. https://bugs.webkit.org/show_bug.cgi?id=37627 * MiniBrowser/mac/BrowserWindowController.h: * MiniBrowser/mac/BrowserWindowController.m: (-[BrowserWindowController forceRepaint:]): * MiniBrowser/mac/English.lproj/MainMenu.xib: 2010-04-15 Sam Weinig Reviewed by Adam Roben. Add debug-minibrowser script. * Scripts/debug-minibrowser: Copied from Scripts/run-minibrowser. * Scripts/webkitdirs.pm: 2010-04-15 Roland Steiner Reviewed by Dimitri Glazkov. Bug 37636 - [DRT/Chromium] Implement DRT/Chromium for Windows https://bugs.webkit.org/show_bug.cgi?id=37636 Second patch: add Windows-specific implementation parts of TestShell. * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: * DumpRenderTree/chromium/TestShell.h: (TestShell::finishedEvent): * DumpRenderTree/chromium/TestShellWin.cpp: (watchDogThread): (TestShell::waitTestFinished): 2010-04-15 Roland Steiner Reviewed by Dimitri Glazkov. Bug 37636 - [DRT/Chromium] Implement DRT/Chromium for Windows https://bugs.webkit.org/show_bug.cgi?id=37636 First patch: fix compiler errors. * DumpRenderTree/chromium/EventSender.cpp: (EventSender::reset): (EventSender::dispatchMessage): * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::pathToLocalResource): * DumpRenderTree/chromium/TestWebWorker.h: * DumpRenderTree/chromium/TextInputController.cpp: * DumpRenderTree/chromium/WebViewHost.h: * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: 2010-04-14 Luiz Agostini Reviewed by Simon Hausmann. [Qt] Moving setViewMode from DumpRenderTreeSupportQt to qwebpage.cpp https://bugs.webkit.org/show_bug.cgi?id=37622 Method qt_wrt_setViewMode was removed from qwebpage.cpp by mistake in r57433 (bug 35844). Moving it back. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setViewModeMediaFeature): 2010-04-15 Dirk Pranke Reviewed by Adam Barth. Add some very minimal unit tests for new-run-webkit-tests. This should be enough to catch egregious brokenness like syntax errors and import declaration issues. https://bugs.webkit.org/show_bug.cgi?id=37432 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py: Added. 2010-04-14 Brian Weinstein Reviewed by Adam Roben. Add a way for the buildbot to kill any old processes that are running. This is useful because the Windows bots can get in states where a process remains running (httpd.exe, DumpRenderTree.exe), which causes the bots to get in a red state, and the processes must be killed manually. * BuildSlaveSupport/build.webkit.org-config/master.cfg: If we are on Windows, kill the old processes that might be running. * BuildSlaveSupport/win/kill-old-processes: Added. 2010-04-14 Sam Weinig Reviewed by Anders Carlsson. Tear down WebKit more completely on window closing and application termination. We still don't block application termination for pending close, but this is a step in the right direction. * MiniBrowser/mac/AppDelegate.m: (-[BrowserAppDelegate applicationWillTerminate:]): * MiniBrowser/mac/BrowserWindowController.h: * MiniBrowser/mac/BrowserWindowController.m: (-[BrowserWindowController dealloc]): (-[BrowserWindowController windowWillClose:]): (-[BrowserWindowController applicationTerminating]): 2010-04-14 Adam Barth Reviewed by Eric Seidel. Use pretty patch for confirming webkit-patch diffs https://bugs.webkit.org/show_bug.cgi?id=37489 * Scripts/webkitpy/common/prettypatch.py: Added. * Scripts/webkitpy/tool/commands/download_unittest.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/confirmdiff.py: 2010-04-14 Eric Seidel Reviewed by Adam Barth. Teach webkit-patch how to handle revisions missing ChangeLogs https://bugs.webkit.org/show_bug.cgi?id=37519 Make commit_info_for_revision return None when revision is missing a ChangeLog. Previously we would throw an array index exception. Teach callers how to handle None. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/api_unittest.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: 2010-04-13 Eric Seidel Reviewed by Adam Roben. Add Qt Bot to the list of "core builders" (builders which block the commit-queue when red) https://bugs.webkit.org/show_bug.cgi?id=33297 This is an experiment. The bots have been green for a while. We'll see if adding them under sheriff-bot protection will keep them green. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-04-13 Eric Seidel Unreviewed, just fixing a constant in the Rietveld unit test. * Scripts/webkitpy/common/net/rietveld_unittest.py 2010-04-13 Eric Seidel Unreviewed, just adding missing Mock to fix python tests. * Scripts/webkitpy/tool/mocktool.py: 2010-04-13 Ojan Vafai Reviewed by David Levin. Add experimental prototype Rietveld integration to webkit-patch upload https://bugs.webkit.org/show_bug.cgi?id=37418 This patch adds bare-bones integration with Rietveld for code reviews. The behavior is hidden behind the --fancy-review command line flag. Currently, there's no support for uploading more than one patch per issue (which is a nice feature of Rietveld). The plan is to play with this for a bit and see if it's useful. Modified from Adam's original patch to autoinstall the rietveld upload script. * Scripts/webkitpy/common/config/__init__.py: * Scripts/webkitpy/common/net/rietveld.py: Added. * Scripts/webkitpy/common/net/rietveld_unitttest.py: Added. * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/__init__.py: * Scripts/webkitpy/tool/steps/options.py: * Scripts/webkitpy/tool/steps/postcodereview.py: Added. * Scripts/webkitpy/tool/steps/postdiff.py: 2010-04-13 Sam Weinig Rubber-stamped by Mark Rowe. Add Makefile to MiniBrowser. * MiniBrowser/Makefile: Added. 2010-04-13 Eric Seidel Unreviewed, just adding a sanity check. Add check to make sure commit-queue can never commit too short a message https://bugs.webkit.org/show_bug.cgi?id=37528 The commit-queue made bogus messages here: http://trac.webkit.org/changeset/57532 http://trac.webkit.org/changeset/57534 This was a regression caused by adding unicode parsing for our ChangeLog files. Popen does not seem to play nice with unicode strings. I'm also adding an "assert" to make sure short ChangeLogs never happen again. * Scripts/webkitpy/common/system/executive.py: - Cast input to strings before passing to POpen * Scripts/webkitpy/tool/steps/commit.py: - Validate that commit messages are not to short. 2010-04-13 Adam Roben Robustify new-run-webkit-tests against paths with spaces in them Reviewed by Eric Seidel. * Scripts/webkitpy/layout_tests/port/apache_http_server.py: (LayoutTestApacheHttpd.__init__): Quote all paths that we pass to Apache to ensure that paths with spaces in them are interpreted correctly. 2010-04-13 Csaba Osztrogonác Unreviewed buildfix after r57537. * DumpRenderTree/qt/LayoutTestControllerQt.h: Declaration of removeOriginAccessWhitelistEntry() added. 2010-04-13 Sam Weinig Reviewed by Maciej Stachowiak. Make building new webkit API and MiniBrowser a little easier. * Scripts/build-webkit: Make building with --webkit2 build the MiniBrowser as well and tell you how to use it. * Scripts/run-minibrowser: Copied from Scripts/run-safari. * Scripts/webkitdirs.pm: Add runMiniBrowser function. 2010-04-12 Timothy Hatcher SecurityOrigin needs a way to remove individual OriginAccessEntries https://bugs.webkit.org/show_bug.cgi?id=37449 Reviewed by Dave Hyatt. * DumpRenderTree/LayoutTestController.cpp: (removeOriginAccessWhitelistEntryCallback): Added. Call LayoutTestController::removeOriginAccessWhitelistEntry. (LayoutTestController::staticFunctions): Added removeOriginAccessWhitelistEntry. * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::removeOriginAccessWhitelistEntry): Added. FIXME to implement. * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::removeOriginAccessWhitelistEntry): Added. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::removeOriginAccessWhitelistEntry): Added. FIXME to implement. * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::removeOriginAccessWhitelistEntry): Added. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::whiteListAccessFromOrigin): FIXME to implement. (LayoutTestController::removeOriginAccessWhitelistEntry): Added. FIXME to implement. 2010-04-13 Timothy Hatcher Rename SecurityOrigin::whiteListAccessFromOrigin to addOriginAccessWhitelistEntry. And LayoutTestController.whiteListAccessFromOrigin to addOriginAccessWhitelistEntry. And SecurityOrigin::resetOriginAccessWhiteLists to resetOriginAccessWhitelists. SecurityOrigin needs a way to remove individual OriginAccessEntries https://bugs.webkit.org/show_bug.cgi?id=37449 Reviewed by Dave Hyatt. * DumpRenderTree/LayoutTestController.cpp: (addOriginAccessWhitelistEntryCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::addOriginAccessWhitelistEntry): * DumpRenderTree/chromium/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::addOriginAccessWhitelistEntry): * DumpRenderTree/mac/DumpRenderTree.mm: (resetWebViewToConsistentStateBeforeTesting): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::addOriginAccessWhitelistEntry): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::addOriginAccessWhitelistEntry): * DumpRenderTree/qt/LayoutTestControllerQt.h: * DumpRenderTree/win/DumpRenderTree.cpp: (resetWebViewToConsistentStateBeforeTesting): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::addOriginAccessWhitelistEntry): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::addOriginAccessWhitelistEntry): 2010-04-13 Tor Arne Vestbø Reviewed by Eric Seidel. Remove duplicate function for new-run-webkit-tests https://bugs.webkit.org/show_bug.cgi?id=37517 The version() function was already implemented. * Scripts/webkitpy/layout_tests/port/webkit.py: 2010-04-13 Eric Seidel Reviewed by David Levin. the commit-queue hates Tor Arne Vestbø https://bugs.webkit.org/show_bug.cgi?id=37511 We were failing to read reviewers out of ChangeLogs when the reviewer has unicode characters in his/her name. I fixed this by explicitly decoding from utf8 every time we read in a ChangeLog file (they are always UTF8). * Scripts/webkitpy/common/checkout/changelog.py: * Scripts/webkitpy/common/checkout/changelog_unittest.py: 2010-04-13 Adam Roben Fix run-webkit-tests on Windows with spaces in the path Fixes . Reviewed by Steve Falkenburg. * Scripts/run-webkit-tests: (convertPathUsingCygpath): Remove spaces from the path before passing them to cygpath, then add them back in after conversion, as some versions of cygpath seem to convert spaces into newlines. 2010-04-13 Adam Barth Unreviewed, but approved by Dumitru Daniliuc. (This patch is intended to fix the downstream Chromium build bots. Hopefully it will work!) Add a driver script for the new websocket server https://bugs.webkit.org/show_bug.cgi?id=37495 websocket_server.py can't be run directly because its a module and not a standalone script. This used to work by accident because it didn't depend on any other modules. * Scripts/new-run-webkit-websocketserver: Added. * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-04-12 Eric Seidel Reviewed by Adam Barth. Make new-run-webkit-test PrettyPatch failure reporting more awesome https://bugs.webkit.org/show_bug.cgi?id=37487 I also fixed an Executive/executive typo. * Scripts/webkitpy/layout_tests/port/base.py: 2010-04-12 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests should only build java support files on Mac https://bugs.webkit.org/show_bug.cgi?id=37482 Only the mac needs java support files, so I pushed _build_java down into the Mac port using a new hook "_check_port_build". In the process I noticed a bunch of code which could be shared between all ports and thus got rid of _tests_for_disabled_features and version() copy/paste between all webkit ports. I also made check_build only bother to check for ImageDiff if we're using pixel tests. * Scripts/webkitpy/layout_tests/port/gtk.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/qt.py: * Scripts/webkitpy/layout_tests/port/webkit.py: * Scripts/webkitpy/layout_tests/port/win.py: 2010-04-12 Dumitru Daniliuc Unreviewed, trying to make scripts work on machines without Ruby... * Scripts/webkitpy/layout_tests/port/base.py: 2010-04-12 Tor Arne Vestbø Reviewed by Eric Seidel. Add stub files for running new-run-webkit-tests for the Qt port * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/port/qt.py: Added. 2010-04-12 Dirk Pranke Reviewed by Eric Seidel. Modify run_webkit_tests.py to not call sys.exit() at the end of test run; doing so makes it more difficult to embed the routine for, among other things, unit tests. We push the exit calling up into new-run-webkit-tests. https://bugs.webkit.org/show_bug.cgi?id=37464 * Scripts/new-run-webkit-tests: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-12 Eric Seidel Unreviewed. Add stub Gtk implementation for new-run-webkit-tests. * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/port/gtk.py: Added. 2010-04-12 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests fails with exception on systems missing ruby https://bugs.webkit.org/show_bug.cgi?id=37441 * Scripts/webkitpy/layout_tests/port/base.py: - Catch failures similar to how wdiff code path does. - After one failure, stop trying. 2010-04-12 Tony Chang Reviewed by Eric Seidel. Fix how we import simplejson based on how it's used in this file. This fixes exceptions raised when trying to write the simplejson output. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-11 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored check-webkit-style so that the StyleChecker class has no dependencies on patch-related concepts. https://bugs.webkit.org/show_bug.cgi?id=37065 This patch is an intermediate step towards making the StyleChecker class a generalized file processor that can do arbitary operations on the files corresponding to a list of paths. This patch also simplifies the unit-testing of patch-checking code. * Scripts/check-webkit-style: - Updated to use the new PatchChecker class. * Scripts/webkitpy/style/checker.py: - Refactored the StyleChecker.check_patch() method into the check() method of a new PatchChecker class. * Scripts/webkitpy/style/checker_unittest.py: - Refactored the unit tests as necessary, changing the StyleCheckerCheckPatchTest class to a PatchCheckerTest class. 2010-04-11 Adam Barth Unreviewed. Fix new-run-webkit-tests regressions cased by Eric's option parsing patch https://bugs.webkit.org/show_bug.cgi?id=37430 We need some basic unit testing of this script, or we're going to keep breaking it like this. Added missing namespace qualifiers and propagated renaming of an option. * Scripts/webkitpy/common/config/ports.py: * Scripts/webkitpy/layout_tests/driver_test.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-11 Eric Seidel Reviewed by Adam Barth. Break new-run-webkit-tests options into groups for easier re-use and possible relocation https://bugs.webkit.org/show_bug.cgi?id=37408 new-run-webkit-tests currently has one huge function for dealing with all options-parsing. This patch is a first attempt at trying to split that large function down into smaller (hopefully more readable?) chunks dealing with the different areas of options. For example, it would make sense to move configuration options off into some module which deals with the vagries of WebKit's configuration system. It would also make sense to move Chromium options off onto the Chromium port object (where they are used). It may make sense to move results.json options over to the results.json code. This change is a first iteration, and we will certainly need more refinement to this code over time. Hopefully I didn't make things harder to read here. * Scripts/webkitpy/layout_tests/driver_test.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-11 Adam Barth Reviewed by Eric Seidel. create-rollout copy needs to be updated to reflect removal of --no-build https://bugs.webkit.org/show_bug.cgi?id=37425 Removed --no-build and --no-test from the instructions because these don't exist anymore. * Scripts/webkitpy/tool/commands/download_unittest.py: - Updated the expected results to reflect the new copy. * Scripts/webkitpy/tool/steps/postdiffforrevert.py: 2010-04-11 Sheriff Bot Unreviewed, rolling out r57460. http://trac.webkit.org/changeset/57460 https://bugs.webkit.org/show_bug.cgi?id=37424 broke chromium builders (Requested by tony^work on #webkit). * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: 2010-04-11 Tony Chang Reviewed by Darin Fisher. [chromium] update chromium DEPS for upstream compile https://bugs.webkit.org/show_bug.cgi?id=36578 * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Small fix to avoid a circular dependency between WebKit.gyp and webkit.gyp. 2010-04-11 Joseph Pecoraro Reviewed by Eric Seidel. svn-apply errors out when removing directories in git https://bugs.webkit.org/show_bug.cgi?id=34871 * Scripts/svn-apply: (isDirectoryEmptyForRemoval): early break if the directory doesn't exist (scmRemove): have git ignore unmatched files 2010-04-11 Daniel Bates No review, rolling out 57440. http://trac.webkit.org/changeset/57440 https://bugs.webkit.org/show_bug.cgi?id=27204 Did not handle Git patches that included both file and property changes to the same file. Rolling this change out while I look into this. * Scripts/VCSUtils.pm: * Scripts/svn-apply: * Scripts/svn-unapply: * Scripts/webkitperl/VCSUtils_unittest/appendSVNExecutableBitChangeToPatch.pl: Removed. * Scripts/webkitperl/VCSUtils_unittest/parseGitFileMode.pl: Removed. * Scripts/webkitperl/VCSUtils_unittest/parseStartOfPatchOrPropertyChangeAndEndOfPropertyChange.pl: Removed. 2010-04-11 Adam Barth Reviewed by Eric Seidel. Fix typo in log path for AbstractQueue https://bugs.webkit.org/show_bug.cgi?id=37414 * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: 2010-04-11 Adam Barth Unreviewed. Add missing import statement. * Scripts/webkitpy/common/system/executive.py: 2010-04-11 Robert Hogan Reviewed by Simon Hausmann. [Qt] Add setWillSendRequestReturnsNull and setWillSendRequestClearHeader https://bugs.webkit.org/show_bug.cgi?id=37410 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::setWillSendRequestReturnsNull): (LayoutTestController::setWillSendRequestClearHeader): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-11 Csaba Osztrogonác [Qt] Unreviewed buildfix for --debug build after r57433. Refactor Qt DRT support in QtWebKit https://bugs.webkit.org/show_bug.cgi?id=35844 * QtLauncher/main.cpp: qt_drt_garbageCollector_collect(); renamed to DumpRenderTreeSupportQt::garbageCollectorCollect(); (launcherMain): 2010-04-11 Joseph Pecoraro Reviewed by Mark Rowe. Make commit-log-editor Rubber-stamp aware. And other minor cleanups. https://bugs.webkit.org/show_bug.cgi?id=37407 * Scripts/commit-log-editor: 2010-04-11 Eric Seidel Reviewed by Adam Barth. Add PrettyPatch links to new-run-webkit-tests output https://bugs.webkit.org/show_bug.cgi?id=37406 * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: - We're leaking a file handle here, add a FIXME. * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: - Add pretty diff links. * Scripts/webkitpy/layout_tests/port/base.py: - Add support for generating pretty diffs using PrettyPatch. * Scripts/webkitpy/layout_tests/port/webkit.py: - We're leaking another file handle here, another FIXME. * Scripts/webkitpy/layout_tests/test_types/image_diff.py: - Update write_output_files signature. * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: - Remove unused arguments from write_output_files. - Add support for dumping pretty diffs to write_output_files. - Fix a bunch of file descriptor leaks in this file. * Scripts/webkitpy/layout_tests/test_types/text_diff.py: - Update write_output_files signature. 2010-04-10 Adam Barth Reviewed by Eric Seidel. kill_process is copy/pasted in five places https://bugs.webkit.org/show_bug.cgi?id=37405 We shouldn't replicate the kill_process logic in every port. Instead, we should move the process interaction to Executive. Dirk mentioned that he wanted this abstraction to make it easier to mock things out for testing. It turns out this function is only used in one place where it can't be used as a mock point for testing because the corresponding create process actually creates a real process. In the long term, we should indirect both these calls through a non-static Executive as a mock point. However, we should wait on that until we actually want to write the test. * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/layout_tests/port/win.py: 2010-04-10 Adam Barth Reviewed by Eric Seidel. new-run-webkit-tests shouldn't alter its path to import packages https://bugs.webkit.org/show_bug.cgi?id=37404 * Scripts/new-run-webkit-tests: * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: * Scripts/webkitpy/thirdparty/simplejson/decoder.py: 2010-04-10 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests should store results to a directory under the build tree https://bugs.webkit.org/show_bug.cgi?id=37380 * Scripts/webkitpy/layout_tests/port/webkit.py: 2010-04-10 Daniel Bates Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=27204 Implement support for changing the executable bit of a file. The executable bit is among the most changed file properties. Future support can include other property changes. Currently, if a patch changes the executable bit of a file it is not respected by svn-apply or svn-unapply. Since the commit-queue bot uses these tools as part of its workflow, such patches cannot be committed by it. That is, such patches need to be committed by hand. Instead, we should add support for the executable bit so that such patches can be committed by the commit-queue bot. * Scripts/VCSUtils.pm: Also change reference to Apple Computer, Inc. in copyright to Apple, Inc. * Scripts/svn-apply: * Scripts/svn-unapply: * Scripts/webkitperl/VCSUtils_unittest/appendSVNExecutableBitChangeToPatch.pl: Added. * Scripts/webkitperl/VCSUtils_unittest/parseGitFileMode.pl: Added. * Scripts/webkitperl/VCSUtils_unittest/parseStartOfPatchOrPropertyChangeAndEndOfPropertyChange.pl: Added. 2010-04-10 Eric Seidel Reviewed by Adam Barth. WinEWS bot fails to svn update because scm.clean_working_directory leaves files around https://bugs.webkit.org/show_bug.cgi?id=37401 The Git-based bots don't have this trouble because Git.clean_working_directory fully removes files that were marked as "add". SVN.clean_working_directory previously just called "svn revert" which would leave added files in the working directory untracked. This patch makes SVN.clean_working_directory function more like Git.clean_working_directory by removing added files after revert. * Scripts/webkitpy/common/checkout/scm.py: - Add SCM.absolute_path for easy conversion between repository-relative paths and absolute paths. - Add SCM.add and SCM.added_files - Make SVN.clean_working_directory remove any added_files after svn revert. - The new unit tests found a bug in Git.status_command, change to use git diff --name-status instead. * Scripts/webkitpy/common/checkout/scm_unittest.py: - Add tests for added code. 2010-04-10 Adam Barth Reviewed by Eric Seidel. new-run-webkit-tests can't find ImageDiff on Windows https://bugs.webkit.org/show_bug.cgi?id=37403 It turns out the build directory on Windows is structured differently than it is on other platforms. Instead of assuming the normal structure, we should just ask perl to figure it out for us. * Scripts/webkitpy/layout_tests/port/webkit.py: 2010-04-10 Adam Barth Rubber-stamped by Eric Seidel. Change "Gathering files" status line to "Collecting tests". Gathering the files sounds silly to me. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-10 Adam Barth Reviewed by Eric Seidel. Fix bugs to make new-run-webkit-tests almost run on windows https://bugs.webkit.org/show_bug.cgi?id=37400 Fix some minor bugs that prevent new-run-webkit-tests from being run on Windows. I still haven't run it to completion, but I'm getting further. * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/port/webkit.py: 2010-04-10 Robert Hogan Reviewed by Kenneth Rohde Christiansen. Refactor Qt DRT support in QtWebKit Update Qt DRT to use new DumpRenderTreeSupportQt static class. https://bugs.webkit.org/show_bug.cgi?id=35844 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting): (WebCore::DumpRenderTree::dumpFramesAsText): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/GCControllerQt.cpp: (GCController::collect): (GCController::collectOnAlternateThread): (GCController::getJSObjectCount): * DumpRenderTree/qt/GCControllerQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::counterValueForElementById): (LayoutTestController::setViewModeMediaFeature): (LayoutTestController::setMediaType): (LayoutTestController::closeWebInspector): (LayoutTestController::showWebInspector): (LayoutTestController::evaluateInWebInspector): (LayoutTestController::setFrameFlatteningEnabled): (LayoutTestController::setJavaScriptProfilingEnabled): (LayoutTestController::setTimelineProfilingEnabled): (LayoutTestController::pauseAnimationAtTimeOnElementWithId): (LayoutTestController::pauseTransitionAtTimeOnElementWithId): (LayoutTestController::sampleSVGAnimationForElementAtTime): (LayoutTestController::numberOfActiveAnimations): (LayoutTestController::whiteListAccessFromOrigin): (LayoutTestController::setCaretBrowsingEnabled): (LayoutTestController::setDomainRelaxationForbiddenForURLScheme): (LayoutTestController::workerThreadCount): (LayoutTestController::pageNumberForElementById): (LayoutTestController::numberOfPages): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-10 Adam Barth Reviewed by Eric Seidel. Move global queue log to the logs directory so it survives git clean -f https://bugs.webkit.org/show_bug.cgi?id=37395 * Scripts/webkitpy/tool/commands/queues.py: 2010-04-10 Adam Barth Reviewed by Eric Seidel. SheriffBot should spam when it encounters errors https://bugs.webkit.org/show_bug.cgi?id=37329 We need to always update the status server so we don't get stuck in a spam loop. I tried writing a test for this change, but it kind of got out of control. We need a better way to do failure injection. * Scripts/webkitpy/tool/commands/sheriffbot.py: 2010-04-10 Adam Barth Unreviewed attempt to fix the Chromium Mac canary. * Scripts/webkitpy/common/config/ports.py: * Scripts/webkitpy/common/config/ports_unittest.py: * Scripts/webkitpy/common/system/executive.py: 2010-04-10 Adam Barth Unreviewed. Add the Apache bits to win.py for new-run-webkit-tests https://bugs.webkit.org/show_bug.cgi?id=37397 I still have run this yet, but I looked around to figure out what the various paths appear to be. I'll figure out a way to remove the copy/paste code in a future patch. * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/webkit.py: * Scripts/webkitpy/layout_tests/port/win.py: 2010-04-10 Adam Barth Reviewed by Eric Seidel. Sketch out the win port for new-run-webkit-tests https://bugs.webkit.org/show_bug.cgi?id=37393 I haven't tried running this yet, but we've got to start somewhere. * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/webkit.py: * Scripts/webkitpy/layout_tests/port/win.py: Added. 2010-04-10 Ojan Vafai Reviewed by Adam Barth. webkit-patch land should not build and test by default https://bugs.webkit.org/show_bug.cgi?id=33631 Reverse the sense of --no-build and --no-test to be --build and --test. Also, decoupled the build and test options so you can test without building. (Patch manngled by Adam Barth. All bugs are his fault.) * Scripts/webkitpy/tool/commands/earlywarningsystem.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/steps/options.py: * Scripts/webkitpy/tool/steps/runtests.py: 2010-04-10 Adam Barth Reviewed by Eric Seidel. Factor WebKitPort out of MacPort to allow for WinPort https://bugs.webkit.org/show_bug.cgi?id=37388 The split is a bit of a guess. We might have to adjust things once we actually have a second port to work with. * Scripts/webkitpy/layout_tests/port/apache_http_server.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/webkit.py: Added. * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-04-10 Adam Barth Reviewed by Eric Seidel. run_webkit_tests.py shouldn't have platform-specific logic https://bugs.webkit.org/show_bug.cgi?id=37387 Dirk Pranke pointed out that my last patch was wrong because I introduced platform-specific logic into run_webkit_tests.py, limiting the parallelism in Chromium to work around a bug in the main Mac port. * Scripts/webkitpy/common/system/executive.py: - Fix a typo pointed out by Chris Jerdonek. * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-10 Robert Hogan Unreviewed fix to regressions in r57416. [Qt] Fix regressions in http/tests/navigation from r57416 Reset willSendRequestReturnsNullOnRedirect after each test to prevent it leaking to subsequent tests. Error pointed out by Jakub Wieczorek. https://bugs.webkit.org/show_bug.cgi?id=37237 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): 2010-04-11 Robert Hogan Reviewed by Simon Hausmann. [Qt] Update layoutTestController.DumpResourceLoadCallbacks to match other ports. Add support for layoutTestController.setWillSendRequestReturnsNullOnRedirect to Qt DRT. Prevent dumping resource load callbacks once layout test has dumped. https://bugs.webkit.org/show_bug.cgi?id=37237 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::dump): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setWillSendRequestReturnsNullOnRedirect): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-10 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Implement Desktop Notifications API for QtWebKit https://bugs.webkit.org/show_bug.cgi?id=35503 DRT stubs for notification. Enables to run and pass 3 (currently disabled) tests. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::grantDesktopNotificationPermission): (LayoutTestController::checkDesktopNotificationPermission): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-04-09 Dumitru Daniliuc Unreviewed, another change to executive.py to make it run with python 2.4. * Scripts/webkitpy/common/system/executive.py: 2010-04-09 Dumitru Daniliuc Unreviewed, attempting to make executive.py run with python 2.4 (which is still used on Chromium's Windows canary bot). * Scripts/webkitpy/common/system/executive.py: 2010-04-09 Kevin Watters Reviewed by Eric Seidel. [wx] Basic implementation of SVG support for wx port. * wx/build/settings.py: 2010-04-09 Adam Barth Reviewed by Eric Seidel. Don't reinvent Executive.cpu_count for every port https://bugs.webkit.org/show_bug.cgi?id=37377 mac.py and chromium_mac.py had some copy/paste code. This code doesn't actually have anything to do with WebKit ports. It's really just something in the multiprocessing package. The lame bit is that package isn't available in older versions of Python, so we need to implement a fallback. However, we already have the fallback in common. We don't need to reinvent it specificly for layout_tests. * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/test.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-09 Adam Barth Reviewed by Eric Seidel. new-run-webkit-tests --release fails to build release DRT when global configuration is Debug https://bugs.webkit.org/show_bug.cgi?id=37376 We need to explicitly pass the --release flag. I bet there are more instances of this bug. * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/mac.py: 2010-04-09 Tony Chang Reviewed by Eric Seidel. [chromium] DRT compile fix on win/linux https://bugs.webkit.org/show_bug.cgi?id=37314 Looks like this was missed when upstreaming. * DumpRenderTree/chromium/EventSender.cpp: (applyKeyModifier): 2010-04-09 Adam Barth Unreviewed, but approved by Dirk Pranke. rename test_expectations_test.py to test_expectations_unittest.py so it actually gets run https://bugs.webkit.org/show_bug.cgi?id=37372 We need to end unit tests with _unittest.py for them to be autodetected by the test harness. +6 tests. * Scripts/webkitpy/layout_tests/layout_package/test_expectations_unittest.py: Renamed from WebKitTools/Scripts/webkitpy/layout_tests/layout_package/test_expectations_test.py. 2010-04-09 Adam Barth Reviewed by Eric Seidel. new-run-webkit-tests should talk about DumpRenderTree not test_shell https://bugs.webkit.org/show_bug.cgi?id=37371 test_shell is some strange Chromium thing. DumpRenderTree (tm) is the real deal. * Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py: Added. * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: Removed. * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/server_process.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-09 Zoltan Horvath Reviewed by Alexey Proskuryakov. Fix 2 issues (what were introduced in r56524) in svn-create-patch's generateDiff() https://bugs.webkit.org/show_bug.cgi?id=32582 Add missing return variable. Initialize $patch variable and remove unnecessary condition. * Scripts/svn-create-patch: 2010-04-09 Kevin Ollivier [wx] Build fix after addition of LayoutTestController method. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::computedStyleIncludingVisitedInfo): 2010-04-09 Sam Weinig Reviewed by Anders Carlsson. Fix for https://bugs.webkit.org/show_bug.cgi?id=37368 Add MiniBrowser. * MiniBrowser: Added. * MiniBrowser/MiniBrowser.vcproj: Added. * MiniBrowser/MiniBrowser.xcodeproj: Added. * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Added. * MiniBrowser/mac: Added. * MiniBrowser/mac/AppDelegate.h: Added. * MiniBrowser/mac/AppDelegate.m: Added. * MiniBrowser/mac/BrowserWindowController.h: Added. * MiniBrowser/mac/BrowserWindowController.m: Added. * MiniBrowser/mac/English.lproj: Added. * MiniBrowser/mac/English.lproj/BrowserWindow.xib: Added. * MiniBrowser/mac/English.lproj/InfoPlist.strings: Added. * MiniBrowser/mac/English.lproj/MainMenu.xib: Added. * MiniBrowser/mac/MiniBrowser-Info.plist: Added. * MiniBrowser/mac/MiniBrowser_Prefix.pch: Added. * MiniBrowser/mac/main.m: Added. * MiniBrowser/win: Added. * MiniBrowser/win/BrowserView.cpp: Added. * MiniBrowser/win/BrowserView.h: Added. * MiniBrowser/win/BrowserWindow.cpp: Added. * MiniBrowser/win/BrowserWindow.h: Added. * MiniBrowser/win/MiniBrowser.cpp: Added. * MiniBrowser/win/MiniBrowser.h: Added. * MiniBrowser/win/MiniBrowser.rc: Added. * MiniBrowser/win/Resources: Added. * MiniBrowser/win/main.cpp: Added. * MiniBrowser/win/resource.h: Added. * MiniBrowser/win/stdafx.cpp: Added. * MiniBrowser/win/stdafx.h: Added. 2010-04-09 Eric Seidel Reviewed by Adam Barth. webkit-patch attached my patch to the wrong bug https://bugs.webkit.org/show_bug.cgi?id=37015 The problem here is that SVN was violating SCM's implicit contract of always returning paths relative to the repository root. That can easily be fixed by telling SVN that the CWD is the repository root. When fixing this I realized there are a large number of places in SCM.py where we want to consider explicitly passing self.checkout_root as the CWD. That would allow scm methods to be executed even when the CWD is not inside the scm tree at all, and would also make sure (in the case of SVN) that paths returned are relative to the root. Git (almost always) returns paths relative to the repository root. * Scripts/webkitpy/common/checkout/scm.py: - Explicitly pass self.checkout_root as cwd in run_status_and_extract_filenames - Add a ton of FIXMEs about the need to go back and decide which methods require cwd=self.checkout_root and which do not. We'll probably add a helper function to scm (likely SCM._run) which always passes cwd=self.checkout_root to Executive.run_command * Scripts/webkitpy/common/checkout/scm_unittest.py: - Add a test for this change. * Scripts/webkitpy/tool/commands/upload.py: - Removed the explicit os.chdir to the repository root, since scm.py methods should be robust against the cwd not being equal to the root. 2010-04-09 Adam Roben Don't return 0 as a JSValueRef That is an illegal use of the JSC API. Fixes REGRESSION (r57292): :visited tests are asserting on debug Windows and GTK builds Reviewed by Anders Carlsson. * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::computedStyleIncludingVisitedInfo): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::computedStyleIncludingVisitedInfo): Return an "undefined" JSValueRef instead of 0. 2010-04-09 Csaba Osztrogonác Reviewed by Eric Seidel. Make DumpRenderTree parallelizable https://bugs.webkit.org/show_bug.cgi?id=36899 * DumpRenderTree/mac/DumpRenderTree.mm: (libraryPathForDumpRenderTree): Use DUMPRENDERTREE_TEMP if exist. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): Use DUMPRENDERTREE_TEMP if exist. * Scripts/run-webkit-tests: - Create a unique temporary directory and pass its path to DumpRenderTree with DUMPRENDERTREE_TEMP environment variable. 2010-04-09 Mark Rowe Reviewed by Oliver Hunt. IDL files are being copied in to the WebCore framework again Add a script to detect the presence of inappropriate files in the frameworks. At present it only looks for .css, .idl and .in files in the top level of WebCore.framework/Resources, as these are the only cases we've encountered recently. It can be extended to check the other frameworks or for other inappropriate files in the future. * Scripts/check-for-inappropriate-files-in-framework: Added. 2010-04-08 Sam Weinig Reviewed by Darin Adler. Add option to build WebKit2 to build-webkit. * Scripts/build-webkit: 2010-04-08 Darin Adler Reviewed by Alexey Proskuryakov. run-webkit-tests should respect argument order https://bugs.webkit.org/show_bug.cgi?id=37257 * Scripts/run-webkit-tests: Changed so that sorting is done only on the results of iterating directories. Test order is based on what's passed on the command line. Removed code that aimed to eliminate duplicates since it can be useful to run the same test more than once. 2010-04-07 David Hyatt Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=24300, don't expose history info via CSS. Add a new method for obtaining computed style with :visited info included. This allows layout tests to actually tell that :visited is in effect. * DumpRenderTree/LayoutTestController.cpp: (computedStyleIncludingVisitedInfoCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::computedStyleIncludingVisitedInfo): 2010-04-07 Dirk Pranke Reviewed by Adam Barth. Enable rebaseline-chromium-webkit-tests to run from a webkit-only checkout (i.e., you don't need anything from the Chromium tree checked out). This requires us to introduce the concept of a "target" port/platform that we use to get configuration information from as well as the "running" port that we use to make directories and diff images and the "rebaselining" port we use to actually manage baselines. https://bugs.webkit.org/show_bug.cgi?id=37238 * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: 2010-04-05 Antonio Gomes Reviewed by Simon Hausmann. [Qt] REGRESSION:(r50665) QWebFrame::setScrollBarPolicy(Qt::Vertical,Qt::ScrollBarAlwaysOff) has no effect. https://bugs.webkit.org/show_bug.cgi?id=29431 Added stubs for Mac, win, gtk and wx DRTs to implement setScrollbarPolicy method. * DumpRenderTree/LayoutTestController.cpp: (setScrollbarPolicyCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setScrollbarPolicy): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setScrollbarPolicy): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setScrollbarPolicy): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setScrollbarPolicy): 2010-04-01 Antonio Gomes Reviewed by David Hyatt. [Qt] REGRESSION:(r50665) QWebFrame::setScrollBarPolicy(Qt::Vertical,Qt::ScrollBarAlwaysOff) has no effect. https://bugs.webkit.org/show_bug.cgi?id=29431 Make possible to DRT to set scrollbar policies (on, off or auto). * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setScrollbarPolicy): * DumpRenderTree/qt/LayoutTestControllerQt.h: * QtLauncher/main.cpp: (LauncherWindow::toggleScrollbars): (LauncherWindow::createChrome): 2010-04-08 Adam Barth Reviewed by Eric Seidel. new-run-webkit-tests should give a percent complete indication https://bugs.webkit.org/show_bug.cgi?id=37258 Because it's awesome. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-08 Adam Barth Unreviewed. Add back the --target option because it's needed by the downstream Chromium bots. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-08 Adam Barth Reviewed by Eric Seidel. new-run-webkit-tests should understand set-webkit-configuration https://bugs.webkit.org/show_bug.cgi?id=37252 * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-08 Adam Barth Reviewed by Eric Seidel. Rename target to configuration in new-run-webkit-tests to match the rest of WebKit https://bugs.webkit.org/show_bug.cgi?id=37251 The rest of our tools call --debug or --release the configuration. It's confusing to call it target in this script. * Scripts/webkitpy/layout_tests/driver_test.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-04-07 Adam Barth Reviewed by Eric Seidel. Remove depricated op.popen2 call in new-run-webkit-tests https://bugs.webkit.org/show_bug.cgi?id=37249 Python complains that this API is depricated. We already solved this problem in executive.py. * Scripts/webkitpy/layout_tests/port/mac.py: 2010-04-07 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests crashes when run on a 64-bit machine https://bugs.webkit.org/show_bug.cgi?id=37248 * Scripts/webkitpy/layout_tests/port/mac.py: - The code was trying to always run the 32-bit intel version of the DumpRenderTree binary. DRT does not build 32-bit on 64-bit machines so that makes no sense. This may have made sense for test_shell at some point, but I think we should just remove this for DRT. 2010-04-07 Eric Seidel Reviewed by Adam Barth. WebKit Apache configs only listen on IPv4 addresses, causing random timeouts https://bugs.webkit.org/show_bug.cgi?id=37104 Add warnings that the partial support for specifying what port numbers apache should bind to is even more broken after this fix. * Scripts/run-webkit-httpd: * Scripts/run-webkit-tests: 2010-04-07 Shinichiro Hamaji Reviewed by Darin Adler. LayoutTestController::m_handlesAuthenticationChallenges isn't initialized https://bugs.webkit.org/show_bug.cgi?id=37190 * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): 2010-03-31 Eric Seidel Reviewed by Adam Barth. Add webkit-patch command to crawl buildbot history and find when tests started to fail. https://bugs.webkit.org/show_bug.cgi?id=36911 This is a very bare-bones implementation, which works, but isn't pretty. We will need further re-factoring and improvement to this code, but after long discussions with Adam, I think it's best that we land this and iterate from there. * Scripts/webkitpy/common/net/buildbot.py: - Add revision_build_pairs_with_results for cleaner code and possible optimization of this command. - Return None if a build number can't be found for a revision in build_for_revision - Separate out suspect_revisions_for_transition for re-use by FailureReason - Add LayoutTestResults.failing_tests() and make our parsing code explict about what tables it accepts. * Scripts/webkitpy/tool/commands/queries.py: - Move _print_blame_information_for_commit out of WhatBroke for re-use by FailureReason. - Add FailureReason command which can crawl a given builder and explain why it is currently red on a per-test basis. 2010-04-06 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add DumpRenderTree.gyp, and some small fixes https://bugs.webkit.org/show_bug.cgi?id=37137 - Add DumpRenderTree.gyp - Remove some dependencies to base/string_util.h, base/compiler_specific.h, base/file_path.h, base/file_util.h, base/message_loop.h, base/sys_string_conversions.h, * DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Added. * DumpRenderTree/chromium/CppVariant.cpp: (CppVariant::toStringVector): * DumpRenderTree/chromium/EventSender.cpp: (EventSender::EventSender): (EventSender::keyDown): (EventSender::scheduleAsynchronousClick): (EventSender::beginDragWithFiles): * DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::setUserStyleSheetLocation): (LayoutTestController::pathToLocalResource): * DumpRenderTree/chromium/TextInputController.cpp: (TextInputController::markedRange): (TextInputController::selectedRange): 2010-04-06 Dirk Pranke Reviewed by Eric Seidel. Write stack traces into the results directory for new-run-webkit-tests, instead of writing them alongside the test file. https://bugs.webkit.org/show_bug.cgi?id=36504 * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: 2010-04-06 Dirk Pranke Unreviewed build fix. Enable pixel tests by default in new-run-webkit-tests unless explicitly set by the port or by the command line. This was broken in the fix for bug 36801 (rev. 57173). https://bugs.webkit.org/show_bug.cgi?id=37184 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-06 Dirk Pranke Reviewed by Eric Seidel. Disable pixel tests on the mac port by default. Also, revamp the way we check for pixel tests being enabled or disabled. We now look for options.pixel_tests instead of options.no_pixel_tests, and we have the "--pixel-tests" (force enable) and "--no-pixel-tests" (force disable) flags. https://bugs.webkit.org/show_bug.cgi?id=36801 * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations_test.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-04-06 Diego Gonzalez Reviewed by Laszlo Gombos. [Qt] Added the iPhone and iPad latest user agent in QtLauncher UA switcher https://bugs.webkit.org/show_bug.cgi?id=37159 * QtLauncher/useragentlist.txt: 2010-04-06 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Add current user-agent string for Symbian for QtLauncher https://bugs.webkit.org/show_bug.cgi?id=37131 * QtLauncher/useragentlist.txt: 2010-04-06 Adam Barth Reviewed by Eric Seidel. Explain how to handle rollout patches https://bugs.webkit.org/show_bug.cgi?id=37139 We need to set expectations for how long landing rollout patches with the commit-queue takes. The commit-queue is optimized for safety, not performance. Also, give folks an alternative way to land patches quickly. In addition, improve our testing of add_patch_to_bug by having MockBugzilla log. This caused me to tighten a bunch of tests and notice that one of our tests wasn't being run. * Scripts/webkitpy/tool/commands/download_unittest.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/postdiffforrevert.py: 2010-04-06 Adam Barth Reviewed by Eric Seidel. Turns out commit_info.committer() can be None https://bugs.webkit.org/show_bug.cgi?id=37106 When the committer isn't in committers.py, the committer() property on commit_info can be None. We need to handle that case gracefully. * Scripts/webkitpy/common/checkout/commitinfo.py: * Scripts/webkitpy/tool/bot/sheriff.py: * Scripts/webkitpy/tool/bot/sheriff_unittest.py: * Scripts/webkitpy/tool/commands/queries.py: 2010-04-06 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] [Symbian] Build fix for Dumprendertree if Qt printing is not supported https://bugs.webkit.org/show_bug.cgi?id=37082 Use the QT_NO_PRINTER guard to flag QPrinter dependent code. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::dryRunPrint): 2010-04-05 Adam Barth Reviewed by Eric Seidel. SheriffBot should force_build builders that are idle and have failed exactly once https://bugs.webkit.org/show_bug.cgi?id=37059 We can get into a deadlocked state where the commit-queue is stopped because the builders are red but the SheriffBot hasn't taken action because the builder has failed only once. The SheriffBot should force build idle builders that have failed exactly once to either turn the tree green again (if the test was flaky) or trigger the "failed twice" remedies (IRC and bug posts). * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/tool/bot/sheriff.py: * Scripts/webkitpy/tool/bot/sheriff_unittest.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/mocktool.py: 2010-04-05 Chris Jerdonek Reviewed by Shinichiro Hamaji. Fixed check-webkit-style issue where the script was prematurely exiting when encountering deleted files in patches. https://bugs.webkit.org/show_bug.cgi?id=37122 * Scripts/webkitpy/style/checker.py: - Changed non-existent file message from ERROR to WARN. - StyleChecker.check_file() no longer raises an exception when a file is not found. * Scripts/webkitpy/style/checker_unittest.py: - Updated unit tests as necessary. 2010-04-05 Adam Barth Reviewed by Eric Seidel. SheriffBot should include blamelist when posting to bugs https://bugs.webkit.org/show_bug.cgi?id=37113 When posting on bugs, we should include the full list of SVN revisions that caused the regression to folks have a better sense of whether they are to blame. * Scripts/webkitpy/tool/bot/sheriff.py: * Scripts/webkitpy/tool/bot/sheriff_unittest.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/mocktool.py: 2010-04-05 Chris Jerdonek Unreviewed after discussion with Adam, Darin, and Eric. Deleted the auto-install directory since it is no longer needed in source control (it is auto-generated). Also added webkitpy/thirdparty/autoinstalled to webkitpy/thirdparty's svn:ignore property. * Scripts/webkitpy/thirdparty/autoinstalled: Removed. 2010-04-05 Mark Rowe Reviewed by Adele Peterson. Test case for / . REGRESSION(r56989): Crash in Mail in WebCore::Position::isCandidate when deleting block using block deletion UI Add a JavaScript hook in DRT to call through to WebView's -setEditable:. This is required in order to reproduce the crash. * DumpRenderTree/LayoutTestController.cpp: (setWebViewEditableCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setWebViewEditable): * DumpRenderTree/mac/DumpRenderTree.mm: (resetWebViewToConsistentStateBeforeTesting): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setWebViewEditable): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setWebViewEditable): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setWebViewEditable): (LayoutTestController::layerTreeAsText): 2010-04-05 Darin Adler Ignore more files the Python tools strew about the working directory. * Scripts/webkitpy: Added property svn:ignore. * Scripts/webkitpy/common: Added property svn:ignore. * Scripts/webkitpy/common/checkout: Added property svn:ignore. * Scripts/webkitpy/common/config: Added property svn:ignore. * Scripts/webkitpy/common/net: Added property svn:ignore. * Scripts/webkitpy/common/thread: Added property svn:ignore. * Scripts/webkitpy/python24: Added property svn:ignore. * Scripts/webkitpy/thirdparty/autoinstalled: Modified property svn:ignore. * Scripts/webkitpy/tool/bot: Added property svn:ignore. 2010-04-05 Adam Barth Unreviewed. Add Vitaly Repeshko as a committer. * Scripts/webkitpy/common/config/committers.py: 2010-04-05 Adam Barth Unreviewed. Update kenne's IRC nick to his registered nick. * Scripts/webkitpy/common/config/committers.py: 2010-04-05 Ojan Vafai Reviewed by Eric Seidel. assorted helper functions and cleanup of git utilities https://bugs.webkit.org/show_bug.cgi?id=37103 * Scripts/webkitpy/common/checkout/scm.py: No code currently uses the optional dry_run argument. So removing it. Change all uses of "trunk" to read the correct value out of the git config. Made the dcommit call actually get called when dry_run==true. * Scripts/webkitpy/common/checkout/scm_unittest.py: * Scripts/webkitpy/common/net/credentials.py: Move the git config call into scm. * Scripts/webkitpy/common/net/credentials_unittest.py: * Scripts/webkitpy/common/system/executive.py: If return_exit_code==true, don't error out, just return the exit_code. 2010-04-05 Ojan Vafai Reviewed by Eric Seidel. prepare-ChangeLog should take a merge-base for which git branch to diff against. https://bugs.webkit.org/show_bug.cgi?id=36394 * Scripts/prepare-ChangeLog: 2010-04-05 Chris Jerdonek Reviewed by Shinichiro Hamaji. Removed the PatchStyleErrorHandler class and incorporated its functionality into the DefaultStyleErrorHandler class. https://bugs.webkit.org/show_bug.cgi?id=37067 * Scripts/webkitpy/style/checker.py: - In the StyleChecker class: - Added a line_number parameter to the check_file() method. - Renamed the handle_style_error parameter to mock_handle_style_error to be consistent with the other mock_* parameter names. - Added a mock_check_file parameter to the check_patch() method to facilitate unit testing the changes in this patch. - Rewrote the check_patch() method with the patch-parsing logic taken from the PatchStyleErrorHandler class. * Scripts/webkitpy/style/checker_unittest.py: - Added a StyleCheckerCheckFileBase class and sub-classed the existing StyleCheckerCheckFileTest class from it. - Added a StyleCheckerCheckPatchTest class to unit-test the rewritten check_patch() method. - Removed the vestigial __main__ code at the bottom of the file. This is left over from when check-webkit-style was implemented as a module and a wrapper module. * Scripts/webkitpy/style/error_handlers.py: - Added an optional line_numbers parameter to the DefaultStyleErrorHandler class constructor and adjusted the __call__() method as necessary. - Removed the PatchStyleErrorHandler class. * Scripts/webkitpy/style/error_handlers_unittest.py: - Removed the PatchStyleErrorHandlerTest class which unit-tested the PatchStyleErrorHandler class which is being removed in this patch. - Added a test_line_numbers() test method to the DefaultStyleErrorHandlerTest class to test use of the DefaultStyleErrorHandler's new line_numbers attribute. 2010-04-05 Adam Barth Unreviewed. Tighten SheriffBot's flaky test detector https://bugs.webkit.org/show_bug.cgi?id=37063 Instead of just looking for two sequential red builds, look for two sequential failures of the same test. This should reduce sheriffbot false positive substantially. I'm landing this change unreviewed because I've noticed SheriffBot triggering a lot more false positives now that we've expanded the set of core builders. I've tried to take Eric's comments on Bug 37063 into account. I'm happy to iterate on this patch tomorrow once Eric wakes up. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: * Scripts/webkitpy/tool/commands/queries.py: 2010-04-04 John Gregg Unreviewed, add myself to the committers list. * Scripts/webkitpy/common/config/committers.py: 2010-04-04 Robert Hogan Unreviewed, add myself to the committers list. * Scripts/webkitpy/common/config/committers.py: 2010-04-04 Dumitru Daniliuc Unreviewed, adding my IRC nickname to committers.py * Scripts/webkitpy/common/config/committers.py: 2010-04-04 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored check-webkit-style's option-parsing code. https://bugs.webkit.org/show_bug.cgi?id=37064 * Scripts/check-webkit-style: - Moved the "WebKit checkout not found" check from ArgumentParser.parse() to the calling code. - Moved the --git-commit argument validation from the calling code to ArgumentParser.parse(). * Scripts/webkitpy/style/checker_unittest.py: - Updated a unit test as necessary. * Scripts/webkitpy/style/optparser.py: - Renamed ArgumentParser._exit_with_help() to _parse_error() and made its error_message parameter required. - Removed the found_checkout parameter from ArgumentParser.parse(). - Removed the "WebKit checkout not found" check and moved it to the calling code. - Added --git-commit argument checking. * Scripts/webkitpy/style/optparser_unittest.py: - Adjusted the import statements to be fully qualified. - Changed the ArgumentParserTest class to inherit from LoggingTestCase, and updated the class as necessary. - Added a unit-test for the --git-commit validation. - Added unit tests for the --git-diff and --git-since variants of --git-commit. 2010-04-03 Chris Jerdonek Reviewed by Shinichiro Hamaji. The check-webkit-style script now logs an ERROR and exits when encountering a file path that does not exist. Previously, it failed silently on such paths. https://bugs.webkit.org/show_bug.cgi?id=36957 * Scripts/webkitpy/common/system/logtesting.py: - Added a FIXME to rename the LoggingTestCase class to LoggingTestCaseBase. * Scripts/webkitpy/style/checker.py: - In the StyleChecker.check_file() method: - Added a mock_os_path_exists parameter. - Renamed the process_file parameter to mock_process_file. - Added logic to log an error and exist if the given path does not exist. * Scripts/webkitpy/style/checker_unittest.py: - Refactored the StyleCheckerCheckFileTest class slightly to inherit from LoggingTestCase. - Added a test method to unit-test the case of a file that does not exist. - Adjusted the other test methods as necessary. 2010-04-03 Adam Barth Reviewed by Eric Seidel. Add Tiger Bot to the list of "core builders" (builders which block the commit-queue when red) https://bugs.webkit.org/show_bug.cgi?id=33289 Add Tiger and SnowLeopard Tests to the core builders. This is a bit of an experiment now that the bots are green. Hopefully we can keep them on the list and have the tree stay greener. * Scripts/webkitpy/common/net/buildbot.py: 2010-04-02 Adam Barth Unreviewed. Have Eric and Adam watch the SheriffBot https://bugs.webkit.org/show_bug.cgi?id=37054 * Scripts/webkitpy/tool/bot/sheriff.py: * Scripts/webkitpy/tool/bot/sheriff_unittest.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: 2010-04-02 Adam Barth Reviewed by Darin Adler. commit-queue should ignore builders when landing rollouts https://bugs.webkit.org/show_bug.cgi?id=37051 When we moved the "builders are red" check into the master process, we forgot about rollouts. I thought we had a test covering this case, but looking at the test, it was a bit too loose. I added a new test and introduced some new logging technology into MockTool to make the test tighter. * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/mocktool.py: 2010-04-02 David Levin Reviewed by Adam Barth. sherrifbot should ensure that the rollout reason doesn't start with - (and fix webkit-patch upload). https://bugs.webkit.org/show_bug.cgi?id=37030 * Scripts/webkitpy/tool/bot/sheriff.py: Ensure that the rollout reason doesn't start with -. * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: A test with a rollout reason which starts with -. * Scripts/webkitpy/tool/steps/createbug.py: Fix webkit-patch upload. 2010-04-02 Chris Jerdonek Unreviewed. Fixed check-webkit-style to recognize the short form of the --verbose option, as stated in --help. * Scripts/check-webkit-style: - Tweaked one line. 2010-04-02 Kevin Ollivier [wx] Build fix for DumpRenderTree after addition of layerTreeAsText. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::layerTreeAsText): 2010-04-02 Laszlo Gombos Reviewed by Eric Seidel. Accept XHTML-MP content type as XHTML content https://bugs.webkit.org/show_bug.cgi?id=34262 Register xhtmlmp file extension as the new type for XHTML-MP test content. * Scripts/run-webkit-tests: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/port/lighttpd.conf: 2010-04-02 Adam Barth Reviewed by Eric Seidel. create-rollout doesn't fill out ChangeLog https://bugs.webkit.org/show_bug.cgi?id=37010 The contract between apply_reverse_diff and PrepareChangeLogForRevert was unclear. I broke filling out the ChangeLog during rollout earlier when I changed apply_reverse_diff to revert the ChangeLogs because PrepareChangeLogForRevert thought that it was supposed to do that. I've now taught PrepareChangeLogsForRevert the new contract. It's unclear to me how to test this change because it's essentially an integration issue that requires the file system. At some point we should think about a testing strategy for integration. As the system becomes larger, we're running into more of these issues. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/tool/steps/preparechangelogforrevert.py: 2010-04-02 Adam Barth Reviewed by Eric Seidel. Add cr-win-ews to QueueStatusServer https://bugs.webkit.org/show_bug.cgi?id=37004 * QueueStatusServer/model/queues.py: * QueueStatusServer/templates/dashboard.html: * QueueStatusServer/templates/statusbubble.html: 2010-04-02 Chris Jerdonek Reviewed by Adam Barth. Unit-test networktransaction.py's log messages, and add a base class to make unit-testing log messages even easier. https://bugs.webkit.org/show_bug.cgi?id=36958 The purpose of this patch is also to provide a mini-tutorial on how to unit-test Python logging.py messages. * Scripts/webkitpy/common/net/networktransaction_unittest.py: - Unit-tested the log messages in test_retry(). * Scripts/webkitpy/common/system/logtesting.py: - Adjusted the LogTesting class by moving the code that clears the array of log messages into a finally block. This prevents redundant AssertionErrors from getting rendered to the screen while running unit tests. - Added a LoggingTestCase class so the setUp() and tearDown() methods do not need to be implemented in order to test logging. Rather, TestCase classes can simply inherit from this class. 2010-04-02 Chris Jerdonek Reviewed by Shinichiro Hamaji. Re-wrote check-webkit-style's argument parsing code to use Python's optparser module and more uniform error-handling logic. https://bugs.webkit.org/show_bug.cgi?id=34676 * Scripts/webkitpy/style/optparser.py: - Removed "option help" from check-webkit-style's usage string since that is provided separately by the OptionParser class. - Also changed the usage string from a function to a constant string _USAGE. - Added an _EPILOG string which renders after OptionParser's usage string and option help. - In the ArgumentParser class: - Changed the constructor's stderr_write parameter to a mock_stderr since the OptionParser accepts a sys.stderr substitute rather than a sys.stderr.write substitute. - Changed the constructor to set a _parser data attribute with an OptionParser instance. - Added a _create_option_parser() method which instantiates the OptionParser. - Updated _exit_with_help() to interact with the OptionParser's help method. - Updated the parse() method as necessary. Also changed the raising of ValueErrors to calls to _exit_with_help(). * Scripts/webkitpy/style/optparser_unittest.py: - Removed the CreateUsageTest class since the create_usage method was replaced by a constant string. - Added a _MockStdErr class to the ArgumentParserTest class. - Updated the unit tests as necessary. 2010-04-02 Adam Barth Reviewed by Eric Seidel. The master commit-queue process should take responsibility for checking that the builders are green https://bugs.webkit.org/show_bug.cgi?id=37009 We had a failure where the child process noticed that the builders were red. We've always had this race condition, but the new optimistic design made it easier to trigger. * Scripts/webkitpy/tool/commands/queues.py: 2010-04-02 Adam Barth Reviewed by Eric Seidel. Tweak rollout changelog to pass ValidateReviewer check https://bugs.webkit.org/show_bug.cgi?id=37019 We need to use the magic word "unreviewed" to make the commit-queue happy when landing rollouts. * Scripts/webkitpy/common/checkout/changelog.py: * Scripts/webkitpy/common/checkout/changelog_unittest.py: 2010-04-02 Chris Jerdonek Unreviewed. Removed duplicate ChangeLog entry. 2010-04-02 Chris Jerdonek Rubber-stamped by Eric Seidel. To the Python 2.4 error message, added a link to the wiki page that contains instructions on how to upgrade. * Scripts/test-webkitpy: - Eliminated a use of the ternary operator in configure_logging() to let the version warning display in case of Python 2.4. * Scripts/webkitpy/python24/versioning.py: - Added this link to the error text: http://trac.webkit.org/wiki/PythonGuidelines * Scripts/webkitpy/python24/versioning_unittest.py: - Updated unit test text. 2010-04-02 Adam Barth Reviewed by Eric Seidel. Record the IRC nick of folks who request rollouts https://bugs.webkit.org/show_bug.cgi?id=36999 * Scripts/webkitpy/common/net/irc/ircbot.py: * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/sheriffircbot.py: * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: 2010-04-01 Adam Barth Reviewed by Eric Seidel. Add cr-win-ews https://bugs.webkit.org/show_bug.cgi?id=36974 Adds support for an Early Warning System for Chromium on Linux. The interface to the Chromium port is the same on every platform, so we don't need to create a new Port object for this queue. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: 2010-04-01 Adam Barth Reviewed by Eric Seidel. Using a failure exit code when failing to load a required import https://bugs.webkit.org/show_bug.cgi?id=37000 Well spotted by Mark Rowe. * Scripts/webkitpy/common/system/user.py: 2010-04-01 Chris Jerdonek Reviewed by Eric Seidel. Rewrote the revision (r56942) to disable the 79 character line length limit Python/PEP8 style check. https://bugs.webkit.org/show_bug.cgi?id=33639#c39 This rewrite puts the disabling not in the PythonProcessor but in the calling code's default filter rule configuration. This allows the user to check line-length style from the command-line if desired. * Scripts/webkitpy/style/checker.py: - Added "-pep8/E501" to the _BASE_FILTER_RULES configuration variable to disable the line-length check. - Added "-pep8/E501" to the list of recognized style categories to permit the category to be checked from the command line. * Scripts/webkitpy/style/processors/python.py: - Reverted r56942: http://trac.webkit.org/changeset/56942 2010-04-01 Kinuko Yasuda Reviewed by Dmitry Titov. Add FileThread for async file operation support in FileReader and FileWriter https://bugs.webkit.org/show_bug.cgi?id=36896 Add options to enable FILE_READER and FILE_WRITER support. * Scripts/build-webkit: 2010-04-01 Kent Tamura Unreviewed. Add missing license header. * DumpRenderTree/chromium/TestShellMac.mm: 2010-04-01 Adam Barth Reviewed by Eric Seidel. Improve the error handling in rollout a bit https://bugs.webkit.org/show_bug.cgi?id=36995 This patch does a few things to make the error handling in rollout a bit more robust. * Scripts/webkitpy/common/checkout/api.py: The old logic here was wrong. We don't want to resolve the ChangeLogs (that would remove the old ChangeLog entry). Instead, we want to revert the ChangeLogs so we can fill them with the new message. * Scripts/webkitpy/tool/commands/download_unittest.py: Update test expectations because we're using a different mock object. * Scripts/webkitpy/tool/commands/download.py: - Added an update command to make updating from the SheriffBot more robust. - Now that we have CommitInfo, we can automatically CC the responsible parties on the bug we create. - Re-ordered the steps in create-rollout. Our original thinking was that we always wanted to create the bug, but that's not really true given how things appear to be playing out. If we fail to apply the reverse diff, we don't want to create the bug. * Scripts/webkitpy/tool/commands/sheriffbot.py: - Use the new, more robust update command. * Scripts/webkitpy/tool/steps/createbug.py: Allow commands to pre-load who they want to be CCed on a new bug. 2010-04-01 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add TestShell and WebViewHost class, main(), and so on https://bugs.webkit.org/show_bug.cgi?id=36814 This change introduces: - WebViewHost class It's an implementation of some delegates required by Chromium WebKit API, and manages painting of a WebView. It's base on src/webkit/tools/test_shell/test_webview_delegate.{cc,h} of Chromium rev.40492. - TestShell class The TestShell instance holds global states of DumpRenderTree process. Unlike TestShell class of Chromium test_shell, TestShell instance is created just once. - DumpRenderTree.cpp The program entry. * DumpRenderTree/chromium/DumpRenderTree.cpp: Added. * DumpRenderTree/chromium/TestShell.cpp: Added. * DumpRenderTree/chromium/TestShell.h: Added. * DumpRenderTree/chromium/TestShellMac.mm: Added. * DumpRenderTree/chromium/WebViewHost.cpp: Added. * DumpRenderTree/chromium/WebViewHost.h: Added. * DumpRenderTree/chromium/config.h: Added. 2010-04-01 David Levin Reviewed by Adam Barth. sheriffbot rollout should verify that the svn revision is a number. https://bugs.webkit.org/show_bug.cgi?id=37001 * Scripts/webkitpy/common/net/bugzilla.py: Allow for the message to be None. * Scripts/webkitpy/tool/bot/sheriff.py: Did verification that svn revision is a number. Fixed the imports (since the files uses ScriptError and log) and a typo. * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: Added a test to verify the behavior. 2010-04-01 Adam Barth Reviewed by Eric Seidel. Print an error message for readline bogosity in MacPorts https://bugs.webkit.org/show_bug.cgi?id=36979 * Scripts/webkitpy/common/system/user.py: 2010-04-01 Adam Barth Reviewed by Eric Seidel. Don't pass --non-interactive to create-rollout https://bugs.webkit.org/show_bug.cgi?id=36989 It turns out you can't pass --non-interactive to create-rollout. Also, improve our error reporting slighly to catch the case where we error out after creating the rollout bug. * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/sheriff.py: 2010-04-01 Ojan Vafai Reviewed by Eric Seidel. webkit-patch can incorrectly think the working directory is modified https://bugs.webkit.org/show_bug.cgi?id=36985 If a file's modification time is modified, but the contents are not, then diff-index will think the file has been modified unless you do some crazy update-index call. Instead, call diff --name-only, which has the index update builtin. Tried to write a test, but could not reproduce this in a unittest. To test manually: touch file-in-repo git diff-index HEAD git diff HEAD --name-only The diff-index call incorrectly shows file-in-repo as modified. * Scripts/webkitpy/common/checkout/scm.py: 2010-04-01 Adam Barth Reviewed by Eric Seidel. Add rollout command to sheriffbot https://bugs.webkit.org/show_bug.cgi?id=36986 This IRC command creates a new bug an attaches a rollout patch. To actually commit the rollout, a committer needs to mark the patch commit-queue+ in bugs.webkit.org. Also, factored out some of the logic from the queue into a separate object for easier testing. * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/sheriff.py: Added. * Scripts/webkitpy/tool/bot/sheriff_unittest.py: Added. * Scripts/webkitpy/tool/bot/sheriffircbot.py: * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: 2010-04-01 Eric Seidel Unreviewed, only ignoring chatty style errors. check-webkit-style: WebKit needs a python style checker https://bugs.webkit.org/show_bug.cgi?id=33639 Remove the 79 char line limit by ignoring pep8/E501. Because we have our own report_error implementation we have to ignore E501 by hand instead of passing --ignore=E501. Right now over 1400 lines of our existing python fail E501 so this rule just generates needless noise. The rest of WebKit has no wrapping rule so it makes little sense for our Python to differ here. * Scripts/webkitpy/style/processors/python.py: 2010-04-01 Adam Barth Unreviewed. Add cmarrin's IRC nickname. * Scripts/webkitpy/common/config/committers.py: 2010-04-01 Adam Barth Unreviewed. EWS spins hot when unable to build https://bugs.webkit.org/show_bug.cgi?id=36981 The problem is that the queue engine things we have more work to do, but the bot isn't actually able to do anything. After this change, we back off the usual amount. * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/queueengine_unittest.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: 2010-04-01 Chris Marrin Reviewed by Simon Fraser. Added layerTreeAsText function to DRT (for Mac) https://bugs.webkit.org/show_bug.cgi?id=36782 This is the DRT side. It exposes the call to JavaScript through the LayoutTestController. * DumpRenderTree/LayoutTestController.cpp:Platform independent JavaScript shim (layerTreeAsTextCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/LayoutTestControllerMac.mm:Mac specific plumbing to WebKit (LayoutTestController::layerTreeAsText): * DumpRenderTree/win/LayoutTestControllerWin.cpp:Windows specific plumbing to WebKit (LayoutTestController::layerTreeAsText): 2010-04-01 Kevin Ollivier [wx] Build fix after addition of JavaScriptCore/wtf/text directory. * wx/build/settings.py: 2010-04-01 Jian Li Rubber-stamped by David Levin. Add myself to the reviewers list. * Scripts/webkitpy/common/config/committers.py: 2010-04-01 Adam Barth Unreviewed. Turns out the Chromium Windows bots don't have pdevenv installed. * Scripts/webkitdirs.pm: 2010-04-01 Adam Barth Reviewed by Dimitri Glazkov. Let Chromium Windows build with Visual Studio Express https://bugs.webkit.org/show_bug.cgi?id=36919 This is horrible, horrible copy/paste code, but that seems to be the way of webkitdirs.pm. :( Someone needs to go through an cleanup this code, but I don't have the heart to do it in this patch. * Scripts/webkitdirs.pm: 2010-04-01 Ilya Tikhonovsky Reviewed by Yury Semikhatsky. Add myself to the committers list. https://bugs.webkit.org/show_bug.cgi?id=36953 * Scripts/webkitpy/common/config/committers.py: 2010-04-01 Eric Seidel Rubber-stamped by Adam Barth. Add Snow Leopard Release bot to the list of "core builders" (builders which stop the commit-queue when they turn red) https://bugs.webkit.org/show_bug.cgi?id=33292 Just adding the "Build" builder for now. We'll add the "Test" builders when the tests are less flaky. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-04-01 Yury Semikhatsky Reviewed by David Levin. Add myself to the reviewers list. https://bugs.webkit.org/show_bug.cgi?id=36935 * Scripts/webkitpy/common/config/committers.py: 2010-03-31 Chris Jerdonek Reviewed by Dave Levin. Added Python style checking to check-webkit-style using the third-party pep8 module (via autoinstall). https://bugs.webkit.org/show_bug.cgi?id=33639 * Scripts/webkitpy/style/checker.py: - Added PYTHON to FileType. - Updated ProcessorDispatcher to return a PythonProcessor for *.py files. * Scripts/webkitpy/style/checker_unittest.py: - Updated the ProcessorDispatcher unit tests for *.py files. * Scripts/webkitpy/style/processors/python.py: Added. - Added PythonProcessor class. * Scripts/webkitpy/style/processors/python_unittest.py: Added. - Added PythonProcessor unit tests. * Scripts/webkitpy/style/processors/python_unittest_input.py: Added. - Added a sample Python file to test the PythonProcessor.process() code path (since pep8 accepts a file path). * Scripts/webkitpy/style/unittests.py: - Updated the style unit test file to import python_unittest.py. * Scripts/webkitpy/style_references.py: - Adjusted style references to import pep8. 2010-03-31 Chris Jerdonek Reviewed by Dave Levin. Rewrote autoinstall.py to support unzipping *.zip files after download, unzipping and extracting *.tar.gz files after download, and copying installed files to a given destination directory. https://bugs.webkit.org/show_bug.cgi?id=35163 These changes will let us autoinstall pep8.py from the web and put our third-party autoinstalled code in an explicit directory like webkitpy/thirdparty/autoinstalled. These changes should also speed up the execution of autoinstalled *.zip packages slightly since *.pyc files cannot be generated when importing from zipped packages using the current autoinstall. * Scripts/test-webkitpy: - Addressed the FIXME to enable auto-install logging once autoinstall was rewritten not to log as verbosely. * Scripts/webkitpy/common/net/bugzilla.py: - Updated mechanize import statement. * Scripts/webkitpy/common/net/buildbot.py: - Updated mechanize import statement. * Scripts/webkitpy/common/net/irc/ircbot.py: - Updated ircbot and irclib import statements. * Scripts/webkitpy/common/net/networktransaction.py: - Updated mechanize import statement. * Scripts/webkitpy/common/net/networktransaction_unittest.py: - Updated mechanize import statement. * Scripts/webkitpy/common/net/statusserver.py: - Updated mechanize import statement. * Scripts/webkitpy/common/system/autoinstall.py: Added. - Added AutoInstaller class. - Added sample/testing usage to the __main__ block. * Scripts/webkitpy/thirdparty/__init__.py: - Updated the autoinstall lines to use the new autoinstall methods. - Added pep8.py to the list of auto-installed packages. - Added a README file to the target autoinstallation directory so users know that the directory is safe to delete. * Scripts/webkitpy/thirdparty/autoinstall.py: Removed. - This is replaced by the rewritten autoinstall webkitpy/common/system/autoinstall.py. * Scripts/webkitpy/thirdparty/autoinstalled/__init__.py: Removed. - The target autoinstallation directory is now auto-generated. 2010-03-31 Chris Jerdonek Reviewed by Shinichiro Hamaji. Tweak webkitpy's logtesting.LogTesting class to get more mileage out of our unit tests that test log messages. https://bugs.webkit.org/show_bug.cgi?id=36886 This patch adds to the LogTesting class's tearDown() method a line asserting that the array of remaining log messages is empty. This ensures that no extra log messages are getting logged that the caller might not be aware of or may have forgotten to check for. * Scripts/webkitpy/common/system/logtesting.py: - Modified the tearDown() method as described above. - Also modified the assertMessages() method to clear the array of log messages after asserting. 2010-03-31 Chris Jerdonek Reviewed by Adam Barth. Added support for a --verbose-logging flag to test-webkitpy. https://bugs.webkit.org/show_bug.cgi?id=36429 Verbose logging is useful for debugging test-webkitpy code that runs before the actual unit tests -- things like autoinstalling and unit-test auto-detection logic. This is different from verbose logging of the unit tests themselves (which corresponds to the unittest module's --verbose flag). * Scripts/test-webkitpy: - In the configure_logging() method-- - Added an is_verbose_logging parameter that sets the logging level to logging.DEBUG instead of logging.INFO. - Changed the method to throttle the logging level on the root logger's handler instead of directly on the root logger itself. - Enabled logging of the autoinstall module when the flag is set. * Scripts/webkitpy/thirdparty/autoinstalled/__init__.py: - Added a work-around for a bug in Python 2.6's logging module that was discovered while working on this patch. 2010-03-31 Chris Jerdonek Reviewed by Adam Barth. Enabled Python's logging module for webkit-patch, and replaced deprecated_logging with Python logging in networktransaction.py. This eliminates some spurious output when running test-webkitpy. https://bugs.webkit.org/show_bug.cgi?id=36725 * Scripts/webkit-patch: - Replaced the configure_logging() function with a call to the new logutils.configure_logging() function. * Scripts/webkitpy/common/net/networktransaction.py: - Replaced the use of deprecated_logging with Python logging. * Scripts/webkitpy/common/system/logutils.py: - Added _default_handlers() which creates the default logging handler for webkitpy. - Added configure_logging() which configures default logging for webkitpy. * Scripts/webkitpy/common/system/logutils_unittest.py: - Added unit tests for logutils.configure_logging(). * Scripts/webkitpy/style/checker.py: - Refactored check-webkit-style's configure_logging() method to call the new logutils.configure_logging(). * Scripts/webkitpy/style_references.py: - Updated references as necessary. 2010-03-31 Eric Seidel Reviewed by Adam Barth. webkit-patch land fails if not run from the root directory https://bugs.webkit.org/show_bug.cgi?id=35822 The root of the problem was that ChangeLog.__init__ expects a path relative to the current working directory, and SCM expects to return paths relative to the SCM root. Fix it by converting from SCM-relative to absolute paths in Checkout.modified_changelogs * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/api_unittest.py: 2010-03-31 Adam Barth Reviewed by Eric Seidel. Add more tests for webkitpy.common.checkout https://bugs.webkit.org/show_bug.cgi?id=36926 We don't have a great way of testing checkout, sadly. * Scripts/webkitpy/common/checkout/api_unittest.py: 2010-03-31 Adam Barth Reviewed by Eric Seidel. REGRESSION: EWS crashes on failure https://bugs.webkit.org/show_bug.cgi?id=36924 Turns out we need to pass one more argument. My test is kind of lame, but at least it's there. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: 2010-03-31 Chris Jerdonek Unreviewed. Fixed typo in WebKitTools/ChangeLog: opsys -> ospath. 2010-03-31 Adam Barth Reviewed by Eric Seidel. Make the EWS go faster by being optimistic https://bugs.webkit.org/show_bug.cgi?id=36916 Have the EWS be optimistic that a patch will correctly build. This should speed up the common case by not requiring two builds for every patch. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: * Scripts/webkitpy/tool/commands/queues.py: 2010-03-31 Adam Barth Reviewed by Eric Seidel. Add the ability to restart sheriffbot from IRC https://bugs.webkit.org/show_bug.cgi?id=36909 * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/sheriffircbot.py: * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: 2010-03-31 Adam Barth Reviewed by Eric Seidel. Add win-ews to QueueStatusServer https://bugs.webkit.org/show_bug.cgi?id=36876 The win-ews is still experimental, but it seems to be more or less running. We should show its results to the people. * QueueStatusServer/model/queues.py: * QueueStatusServer/templates/dashboard.html: * QueueStatusServer/templates/statusbubble.html: 2010-03-30 Victor Wang Reviewed by Eric Seidel. Update rebaseline tool to check the release image diff binary and fallback to debug if the release version does not exist. https://bugs.webkit.org/show_bug.cgi?id=36245 * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: 2010-03-31 Eric Seidel Reviewed by Adam Barth. Teach buildbot.py how to parse builder activity from /one_box_per_builder https://bugs.webkit.org/show_bug.cgi?id=36898 I also removed some obsolete FIXMEs and refactored one_box_per_builder parsing into multiple methods for easier reading. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/buildbot_unittest.py: 2010-03-31 Dirk Pranke Reviewed by Eric Seidel. Fix logging in new-run-webkit-tests so that we don't report IMAGE expected failures as unexpected passes when we run with pixel tests disabled. This change splits some of the logic embedded into the TestExpectations classes out into separate pure functions (result_was_expected, remove_image_failures) to make them easier to test. This also adds a parameter to matches_an_expected_result() to indicate whether or not pixel test results should be included in the expectations. https://bugs.webkit.org/show_bug.cgi?id=36771 * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations_test.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-03-31 Chris Jerdonek Reviewed by Eric Seidel. In webkitpy, refactored two calls to os.path.relpath() replacements to use a common method. https://bugs.webkit.org/show_bug.cgi?id=36891 * Scripts/webkitpy/common/net/bugzilla.py: - Replaced the relpath implementation with a call to webkitpy.common.system.ospath.relpath(). * Scripts/webkitpy/common/system/ospath.py: Added. - Moved the relpath() implementation from style/main.py. * Scripts/webkitpy/common/system/ospath_unittest.py: Added. - Moved the relpath() unit tests from style/main_unittest.py. * Scripts/webkitpy/style/main.py: - Replaced the relpath implementation with a call to webkitpy.common.system.ospath.relpath(). * Scripts/webkitpy/style/main_unittest.py: - Moved the relpath unit tests to ospath_unittest.py. 2010-03-31 Adam Barth Reviewed by Eric Seidel. Add a Builder.force_build method https://bugs.webkit.org/show_bug.cgi?id=36875 We plan to eventually use this in SheriffBot to break deadlocks created by flaky tests. * Scripts/webkitpy/common/net/buildbot.py: 2010-03-31 Adam Barth Reviewed by Eric Seidel. webkit-patch reads wrong bug url from unified diff context https://bugs.webkit.org/show_bug.cgi?id=36477 Instead of trying to figure out the bug_id from the diff, we should just get the information from the Checkout object, which understands these concepts. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/commitinfo.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/mocktool.py: 2010-03-31 Adam Barth Reviewed by Eric Seidel. webkit-patch commit-queue should land patches optimistically https://bugs.webkit.org/show_bug.cgi?id=34187 This patch adds an optimistic path to commit-queue and a "fail twice" requirement for rejecting patches. That means we'll land good patches faster (via the optmistic first run) and we'll reject many fewer patches due to flaky tests. * Scripts/webkitpy/tool/commands/queues.py: 2010-03-31 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] Custom user agent for user agent switcher https://bugs.webkit.org/show_bug.cgi?id=36757 * QtLauncher/main.cpp: (LauncherWindow::showUserAgentDialog): 2010-03-31 Eric Seidel Reviewed by Adam Barth. path to committers.py in commit-queue rejection message is wrong https://bugs.webkit.org/show_bug.cgi?id=36865 This fix would have only been 3 lines long if we had 1. Had access to an SCM object or tool to give us the checkout root 2. Been able to depend on Python 2.6 Instead I've added a bunch of hack code, but at least now we should never have to update this string again as the location of committers.py is fully dynamically discovered. :p * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/bugzilla_unittest.py: 2010-03-31 Shinichiro Hamaji Unreviewed test fix for r56809. webkit-patch what-broke throws exception https://bugs.webkit.org/show_bug.cgi?id=36852 * Scripts/webkitpy/common/checkout/api_unittest.py: 2010-03-30 Chris Jerdonek Rubber stamped by Dave Levin. Made check-webkit-style less chatty. Examples include: - https://bugs.webkit.org/show_bug.cgi?id=36866#c4 - https://bugs.webkit.org/show_bug.cgi?id=36472#c9 * Scripts/webkitpy/style/checker.py: - Changed unrecognized file type log message from info to debug. 2010-03-30 Kevin Ollivier [wx] Build fix after new method added. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::callShouldCloseOnWebView): 2010-03-30 Eric Seidel Reviewed by Adam Barth. webkit-patch what-broke throws exception https://bugs.webkit.org/show_bug.cgi?id=36852 * Scripts/webkitpy/common/checkout/api.py: Add missing import StringIO. * Scripts/webkitpy/common/checkout/api_unittest.py: Test the function which previously threw and exception. 2010-03-30 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=36616 Dvorak-Qwerty keyboard layout gives unexpected results in javascript keydown https://bugs.webkit.org/show_bug.cgi?id=36797 For non-Roman layouts, keydown Event.keyCode is always 0 * DumpRenderTree/mac/EventSendingController.mm: (-[EventSendingController keyDown:withModifiers:withLocation:]): Generate a correct keyCode for keys used in tests (we used to always pass 0 for 'A'). 2010-03-30 Adam Barth Reviewed by Eric Seidel. Implement win-ews https://bugs.webkit.org/show_bug.cgi?id=36809 * Scripts/webkitpy/common/config/ports.py: * Scripts/webkitpy/tool/commands/earlywarningsystem.py: 2010-03-30 Chris Jerdonek Reviewed by Eric Seidel. Adjusted test-webkitpy to delete all orphaned *.pyc files from webkitpy/ prior to importing any modules from webkitpy. This ensures that no import statements in webkitpy falsely succeed because of leftover *.pyc files. https://bugs.webkit.org/show_bug.cgi?id=36599 * Scripts/test-webkitpy: - Added _clean_pyc_files() to delete orphaned *.pyc files from a directory. - Added _clean_webkitpy_with_test() to call and test _clean_pyc_files(). - Moved the "import webkitpy.python24.versioning" statement from the top of the module to the init() method -- immediately after the call to _clean_webkitpy_with_test(). 2010-03-30 Fumitoshi Ukai Reviewed by Shinichiro Hamaji. [Chromium-Win] subprocess.call should be called with stdin=open(os.devnull,'r') https://bugs.webkit.org/show_bug.cgi?id=36811 subproess.Popen() on Python 2.4/Windows with stdout,stdout, but no stdin will fail, because it uses return value of GetStdHandle(STD_INPUT_HANDLE), but DuplicateHandle requires integer, not the handle. We don't need stdin, so use devnull as stdin. Same as https://bugs.webkit.org/show_bug.cgi?id=36586 * Scripts/webkitpy/layout_tests/port/chromium_win.py: open os.devnull for stdin 2010-03-29 Eric Seidel Unreviewed, build fix only. * Scripts/webkitpy/tool/steps/validatereviewer.py: Add missing import. 2010-03-29 Hayato Ito Reviewed by Shinichiro Hamaji. Remove '_flymake' suffix from base part of file name so that check-webkit-style uses a correct header guard name when it is called from Emacs's flymake. https://bugs.webkit.org/show_bug.cgi?id=36573 * Scripts/webkitpy/style/processors/cpp.py: * Scripts/webkitpy/style/processors/cpp_unittest.py: 2010-03-29 Chris Jerdonek Reviewed by Eric Seidel. Get the following test-webkitpy unit test working again: scm_unittest.SVNTest.test_svn_apply(). https://bugs.webkit.org/show_bug.cgi?id=36696 * Scripts/webkitpy/common/checkout/scm_unittest.py: - Add leading spaces to the empty lines of the ChangeLog strings. - Manually set the _reviewer attribute on the Attachment object to get the tests to pass. 2010-03-29 Martin Robinson Reviewed by Holger Freyther. [GTK] suppress (un)desired launcher output that can make layout test to fail with stderr https://bugs.webkit.org/show_bug.cgi?id=36390 Suppress debugging messages sent to the GLib logger during DRT runs. * DumpRenderTree/gtk/DumpRenderTree.cpp: (logHandler): Added. (main): Use logHandler as the default GLib log message handler. 2010-03-29 Eric Seidel Reviewed by Adam Barth. sheriff-bot should comment on bugs when builders break https://bugs.webkit.org/show_bug.cgi?id=36786 * Scripts/webkitpy/tool/commands/sheriffbot.py: - Add a new _post_blame_comment_to_bug and all it from process_work_item - Move commit-queue logic into _post_rollout_patch to make its api match the other _post commands. * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: - Test the new _post_blame_comment_to_bug call 2010-03-29 Eric Seidel Reviewed by Adam Barth. sheriff-bot fails to get information about certain builds https://bugs.webkit.org/show_bug.cgi?id=36768 This seems to be caused by: http://buildbot.net/trac/ticket/753 I have no work-around, but for now at least we're logging the error better. I also added allow_none to our ServerProxy creation in case that fixes things for other versions of python. * Scripts/webkitpy/common/net/buildbot.py: 2010-03-29 Victor Wang Reviewed by Adam Barth. Add sign in/out link to TestResults appengine Add a link to main menu for sign in/out to this appengine. People signed in with admin privilege could perform actions that are only allowed to admins like deleting files. https://bugs.webkit.org/show_bug.cgi?id=36767 * TestResultServer/handlers/menu.py: * TestResultServer/stylesheets/menu.css: (.sign): * TestResultServer/templates/menu.html: 2010-03-29 Eric Seidel Reviewed by Adam Barth. ValidateReviewer step is draconian and un-tested https://bugs.webkit.org/show_bug.cgi?id=36792 ValidateReviewer logic was commented out in http://trac.webkit.org/changeset/56744 That was a symptom of the fact that validatereviewer.py is too inflexible to be used when real humans are driving webkit-patch. For now we just disable ValidateReviewer when humans are at the keyboard. * Scripts/webkitpy/tool/steps/validatereviewer.py: - Only run when in non-interactive mode. * Scripts/webkitpy/tool/steps/validatereviewer_unittest.py: Added. - Test our validation logic to make sure it's sane. 2010-03-29 Chris Jerdonek Reviewed by Shinichiro Hamaji. Eliminate explicit slash characters from check-webkit-style's _rel_path() method to make its implementation more platform independent. https://bugs.webkit.org/show_bug.cgi?id=36759 * Scripts/webkitpy/style/main.py: - Changed to use os.sep instead of slash_chars "/\\". This can be done since os.path.abspath() converts slashes to os.sep. 2010-03-29 Dirk Pranke Reviewed by Dimitri Glazkov. Change new-run-webkit-tests to not use more than four threads by default on the mac port until https://bugs.webkit.org/show_bug.cgi?id=36622 is fixed. https://bugs.webkit.org/show_bug.cgi?id=36687 * Scripts/webkitpy/layout_tests/port/mac.py: 2010-03-29 Dirk Pranke Reviewed by Dimitri Glazkov. Reformat port/mac.py to fit witin 80 columns for PEP-8 compliance. https://bugs.webkit.org/show_bug.cgi?id=36691 * Scripts/webkitpy/layout_tests/port/mac.py: 2010-03-29 Eric Seidel Reviewed by Adam Barth. new-run-webkit-tests fails java/lc3 on a clean checkout https://bugs.webkit.org/show_bug.cgi?id=36078 * Scripts/webkitpy/layout_tests/port/mac.py: - Build the java support files in check_build - Unwrap a line which would still fit under 80col 2010-02-26 Kenneth Rohde Christiansen Reviewed by Simon Fraser. Add support for Widgets 1.0: View Mode Media Feature https://bugs.webkit.org/show_bug.cgi?id=35446 Add hooks to the Qt DRT for testing the view mode media feature. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setViewModeMediaFeature): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-03-29 Adam Barth Unreviewed. Update expected results for unit tests. * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: 2010-03-29 Adam Barth Unreviewed. I think Eric meant svn_revision. * Scripts/webkitpy/tool/commands/sheriffbot.py: 2010-03-26 Eric Seidel Reviewed by Adam Barth. webkit-patch commit-queue should notice if it breaks builders (and roll out its own changes) https://bugs.webkit.org/show_bug.cgi?id=29311 Now that we have sheriff-bot watching the tree, it can post rollout patches on behalf of the commit queue. * Scripts/webkitpy/common/checkout/commitinfo.py: add responsible_parties() * Scripts/webkitpy/common/checkout/commitinfo_unittest.py: test responsible_parties() * Scripts/webkitpy/tool/commands/sheriffbot.py: - Break IRC logic out into _post_irc_warning for easier testing. - Add _post_rollout_patch for posting rollout patches to bugzilla. * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: - Test _rollout_reason * Scripts/webkitpy/tool/grammar.py: - Fix join_with_separators to not add Adam's "oxford comma" for two item lists. * Scripts/webkitpy/tool/grammar_unittest.py: - Test join_with_separators 2010-03-29 Adam Barth Reviewed by Eric Seidel. Sheriffbot should actually run commands https://bugs.webkit.org/show_bug.cgi?id=36776 Some minor changes to Sheriffbot: 1) We should actually run commands (by giving control back to the command processing object. 2) Use URLs instead of just numbers to represent SVN revisions (making it easier to folks in IRC ot followup). * Scripts/webkitpy/tool/bot/irc_command.py: * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: 2010-03-26 Kenneth Rohde Christiansen Reviewed by Antti Koivisto. Renaming of frame flattening LayoutTestController method to setFrameFlatteningEnabled(bool) * DumpRenderTree/LayoutTestController.cpp: (setFrameFlatteningEnabledCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setFrameFlatteningEnabled): * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setFrameFlatteningEnabled): * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setFrameFlatteningEnabled): * DumpRenderTree/qt/LayoutTestControllerQt.h: * DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setFrameFlatteningEnabled): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setFrameFlatteningEnabled): 2010-03-28 Gustavo Noronha Silva No review, rolling out r56679. http://trac.webkit.org/changeset/56679 https://bugs.webkit.org/show_bug.cgi?id=36454 Lots of tests broken. * DumpRenderTree/gtk/DumpRenderTree.cpp: (createWebView): 2010-03-28 Chris Jerdonek Unreviewed. Fixed typo in deprecated_logging_unittest.py, which is masking sys.stderr while running test-webkitpy. See also-- https://bugs.webkit.org/show_bug.cgi?id=36725#c3 * Scripts/webkitpy/common/system/deprecated_logging_unittest.py: 2010-03-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. Renamed check-webkit-style's --debug flag to --verbose to be more in line with other WebKit scripts. Also renamed the current --verbose flag to --min-confidence to allow the --debug rename. https://bugs.webkit.org/show_bug.cgi?id=36521 We also renamed the internal "verbose" variables to "confidence" or "min_confidence," as appropriate, to avoid confusion with the --verbose flag, and because the new names are more accurate. * Scripts/check-webkit-style: - Renamed is_debug to is_verbose. * Scripts/webkitpy/style/checker.py: - Renamed _DEFAULT_VERBOSITY to _DEFAULT_CONFIDENCE. - Renamed "verbosity" parameters to "min_confidence" throughout. - Renamed configure_logging()'s is_debug parameter to is_verbose. * Scripts/webkitpy/style/checker_unittest.py: - Updated the unit tests as necessary. * Scripts/webkitpy/style/error_handlers.py: - Updated the call to StyleCheckerConfiguration.write_style_error(). * Scripts/webkitpy/style/error_handlers_unittest.py: - Updated the unit tests as necessary. * Scripts/webkitpy/style/optparser.py: - Updated the usage string with the new flag names. - Renamed the verbosity parameter to min_confidence throughout. - Renamed the is_debug parameter to is_verbose throughout. * Scripts/webkitpy/style/optparser_unittest.py: - Updated the unit tests as necessary. * Scripts/webkitpy/style/processors/cpp.py: - Renamed the verbosity parameter to min_confidence throughout. * Scripts/webkitpy/style/processors/cpp_unittest.py: - Updated the unit tests as necessary. 2010-03-28 Chris Jerdonek Unreviewed. Added back a line that accidentally got deleted in r56690. * Scripts/check-webkit-style: 2010-03-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. Add to check-webkit-style support for checking directories. https://bugs.webkit.org/show_bug.cgi?id=35234 * Scripts/check-webkit-style: - Replaced the call to check_file() with a call to check_paths(). * Scripts/webkitpy/style/checker.py: - In the StyleChecker class: - Added a check_paths() method that accepts a list of paths to files and directories. - Added a _check_directory() method that checks the files in a directory. * Scripts/webkitpy/style/checker_unittest.py: - Added a StyleCheckerCheckPathsTest to unit-test the new check_paths() method. * Scripts/webkitpy/style/optparser.py: - Updated the usage string. 2010-03-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. Changed check-webkit-style to convert paths to paths relative to the checkout root when invoking check-webkit-style with path arguments. Also added warning messages where appropriate. https://bugs.webkit.org/show_bug.cgi?id=35498 Converting paths to paths relative to the checkout root ensures that style checking will behave as expected (since path-specific rules assume input paths are relative to a source root). * Scripts/check-webkit-style: - Added debug logging of whether the current directory was found to be in a WebKit checkout. - Added the found_checkout parameter to the call to parser.parse(). - Renamed the files variable to paths. - Added a call to change_directory() prior to checking style. * Scripts/webkitpy/style/checker.py: - For StyleChecker.check_file(): - Updated the docstring. - Added two log messages. * Scripts/webkitpy/style/checker_unittest.py: - Updated a call to parser.parse() with the found_checkout parameter. * Scripts/webkitpy/style/main.py: Added. - Added a new file so the code in this patch could be unit-tested, as opposed to adding new code to check-webkit-style. - Added the method _rel_path() as a substitute for os.path.relpath(), which is available only in Python 2.6. - Added the method change_directory(), which contains most of the new functionality in this patch. * Scripts/webkitpy/style/main_unittest.py: Added. - Added RelPathTest to test main._rel_path(). - Added ChangeDirectoryTest to test main.change_directory(). * Scripts/webkitpy/style/optparser.py: - Updated check-webkit-style's usage string. - For the ArgumentParser.parse() method: - Added a found_checkout parameter. - Renamed filenames to paths. - Added logic so that an error is raised if no paths are passed if found_checkout is False. * Scripts/webkitpy/style/optparser_unittest.py: - Updated the ArgumentParser.parse() unit tests to include coverage for the new found_checkout parameter. * Scripts/webkitpy/style/unittests.py: - Added an import statement for main_unittest. * Scripts/webkitpy/style_references.py: - Renamed SimpleScm to WebKitCheckout. - Added a detect_checkout() function to allow returning None instead of a WebKitCheckout instance if no checkout is found. - Renamed checkout_root to root_path. 2010-03-27 Sergio Villar Senin Reviewed by Eric Seidel. Print didHandleOnloadEventsForFrame in the callback of onload-event signal comming from frame loader [GTK] Improve reporting of frame loader callbacks in DRT https://bugs.webkit.org/show_bug.cgi?id=36454 * DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewOnloadEvent): (createWebView): added connection to signal::onload-event and signal callback 2010-03-27 Sergio Villar Senin Reviewed by Eric Seidel. Print didCommitLoadForFrame in the callback of signal::load-committed [GTK] Improve reporting of frame loader callbacks in DRT https://bugs.webkit.org/show_bug.cgi?id=36454 * DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewLoadCommitted): (createWebView): added connection to sinal::load-committed and signal callback 2010-03-27 Sergio Villar Senin Reviewed by Eric Seidel. Print didStartProvisionalLoadForFrame in the callback of notify::load-status property change notification [GTK] Improve reporting of frame loader callbacks in DRT https://bugs.webkit.org/show_bug.cgi?id=36454 * DumpRenderTree/gtk/DumpRenderTree.cpp: (webInspectorCloseWindow): (webInspectorInspectWebView): (createWebView): added connection to notify::load-status and signal callback 2010-03-27 Chris Jerdonek Reviewed by Adam Barth. In webkitpy/, deleted the /unittests.py files since test-webkitpy now auto-detects all *_unittest.py files. https://bugs.webkit.org/show_bug.cgi?id=36712 * Scripts/webkitpy/common/net/irc/unittests.py: Removed. * Scripts/webkitpy/common/system/unittests.py: Removed. * Scripts/webkitpy/common/thread/unittests.py: Removed. * Scripts/webkitpy/common/unittests.py: Removed. * Scripts/webkitpy/python24/unittests.py: Removed. * Scripts/webkitpy/style/unittests.py: Removed. * Scripts/webkitpy/tool/unittests.py: Removed. * Scripts/webkitpy/unittests.py: Removed. 2010-03-27 Sergio Villar Senin Reviewed by Eric Seidel. Add a CR after printing didFinishDocumentLoadForFrame [GTK] Improve reporting of frame loader callbacks in DRT https://bugs.webkit.org/show_bug.cgi?id=36454 * DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewLoadFinished): 2010-03-27 Chris Jerdonek Rubber-stamped by Adam Barth. Fixed the name of a unit test file in webkitpy. * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py: Copied from WebKitTools/Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittests.py. * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittests.py: Removed. 2010-03-26 Chris Jerdonek Reviewed by Adam Barth. The test-webkitpy script now automatically detects all unit-test files in webkitpy/. This lets us eliminate the need to have and maintain all of the unittests.py files. https://bugs.webkit.org/show_bug.cgi?id=36591 * Scripts/test-webkitpy: - Replaced the "from webkitpy.unittests import *" with a call to webkitpy.test.main.Tester().run_tests(). * Scripts/webkitpy/test/__init__.py: Copied from WebKitTools/QueueStatusServer/filters/__init__.py. - Required file for the new webkitpy/test/ directory. * Scripts/webkitpy/test/main.py: Added. - Added a Tester class that contains the following methods: - _find_unittest_files() to detect all the unit-test files. - _modules_from_paths() to convert the paths to the unit-test files to fully-qualified module names. - run_tests() which calls the above two methods and then passes the module names to Python's unittest module. 2010-03-27 Robert Hogan Reviewed by Simon Fraser. [Qt/Win] Add support to unix and windows NS plugin for executing scripts on setWindow. https://bugs.webkit.org/show_bug.cgi?id=36701 * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp: (webkit_test_plugin_new_instance): Add onSetWindow. (webkit_test_plugin_destroy_instance): Add onSetWindow. (webkit_test_plugin_set_window): Add onSetWindow. * DumpRenderTree/win/TestNetscapePlugin/main.cpp: (NPP_New): Add onSetWindow. (NPP_Destroy): Add onSetWindow. (NPP_SetWindow): Add onSetWindow. 2010-03-26 Robert Hogan Reviewed by Simon Hausmann. Allow plugins implemented by the application, such as mimetype 'x-qt-plugin', when pluginsEnabled is false. Add support for LayoutTestController.WebKitPluginsEnabled https://bugs.webkit.org/show_bug.cgi?id=32196 * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (copyWebSettingKey): * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::overridePreference): 2010-03-26 Adam Barth Reviewed by Eric Seidel. Add some basic IRC commands to sheriffbot https://bugs.webkit.org/show_bug.cgi?id=36684 Adds support for sheriffbot to respond to a "hi" command and a "last-green-revision" command. It's lame that we're rebuilding MultiCommandTool, but as discussed in person we'll intergrate the two once we see what the requirements are. * Scripts/webkitpy/tool/bot/irc_command.py: Added. * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/queueengine_unittest.py: * Scripts/webkitpy/tool/bot/sheriffircbot.py: * Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: Added. * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/queuestest.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/unittests.py: 2010-03-26 Adam Barth Unreviewed. More errors in the IRC module. I have no idea how to test ircbot.py, which is too bad. Hopefully we've abstracted it away enough that we don't have to touch it very much after this patch. * Scripts/webkitpy/common/net/irc/ircbot.py: 2010-03-26 Adam Barth Unreviewed. Add a missing "_". * Scripts/webkitpy/common/net/irc/ircproxy.py: * Scripts/webkitpy/common/net/irc/ircproxy_unittest.py: Added. * Scripts/webkitpy/common/net/irc/unittests.py: 2010-03-26 Adam Barth Unreviewed. Fix a the commit queue after my recent change. * Scripts/webkitpy/tool/bot/queueengine.py: 2010-03-26 Dirk Pranke Unreviewed fix. Fix the return value for port/base.diff_image (changed from 1/0 to True/False in bug 34826. * Scripts/webkitpy/layout_tests/port/base.py: 2010-03-26 Dirk Pranke Reviewed by Eric Seidel. Change the Mac port of new-run-webkit-tests to look for a test_expectations.txt file in addition to the Skipped files, so we can track pixel failures. https://bugs.webkit.org/show_bug.cgi?id=36619 * Scripts/webkitpy/layout_tests/port/mac.py: 2010-03-26 Dirk Pranke Reviewed by Eric Seidel. Implement pixel tests (image diff) properly on the Mac port. This change introduces a new "ServerPocess" class that can be used to manage processes that the run-webkit-tests harness forks off and expects to stay up for longer than a single request/response session. Both DumpRenderTree and ImageDiff use this style of communication, although the current code forks off a new ImageDiff for each diff (We need to restructure other parts of the code to be able to do this safely in a multi-threaded environment). Also, now that the ServerProcess abstraction exists, we can probably clean up and simplify some of the thread management logic in test_shell_thread as well. https://bugs.webkit.org/show_bug.cgi?id=34826 * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/server_process.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: 2010-03-26 Sergio Villar Senin Reviewed by Eric Seidel. Print didFinishLoadForFrame outcome in DRT [GTK] Improve reporting of frame loader callbacks in DRT https://bugs.webkit.org/show_bug.cgi?id=36454 * DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewLoadCommitted): 2010-03-26 Eric Seidel Unreviewed test fix. My change conflicted with one of Adam's causing test-webkitpy to fail. Move commit_message_for_this_commit from scm to checkout https://bugs.webkit.org/show_bug.cgi?id=36629 * Scripts/webkitpy/common/checkout/api_unittest.py: - modified_changelogs is now on Checkout instead of scm. 2010-03-26 Adam Barth Reviewed by Eric Seidel. Refactor IRCBot controller logic to allow for commands https://bugs.webkit.org/show_bug.cgi?id=36676 We need to move the controller logic into the tool package so it can know about commands. The changes to queueengine could go in a different patch, but we're going to need it anyway. * Scripts/webkitpy/common/config/irc.py: Added. * Scripts/webkitpy/common/net/irc/ircbot.py: * Scripts/webkitpy/common/net/irc/ircproxy.py: * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/sheriffircbot.py: Added. * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: 2010-03-26 Adam Barth Rubber stamped by Eric Seidel. Move the threading code into its own module. (It has nothing to do with IRC.) * Scripts/webkitpy/common/net/irc/ircbot.py: * Scripts/webkitpy/common/net/irc/ircproxy.py: * Scripts/webkitpy/common/net/irc/messagepump.py: Removed. * Scripts/webkitpy/common/net/irc/messagepump_unittest.py: Removed. * Scripts/webkitpy/common/net/irc/threadedmessagequeue.py: Removed. * Scripts/webkitpy/common/net/irc/threadedmessagequeue_unittest.py: Removed. * Scripts/webkitpy/common/net/irc/unittests.py: * Scripts/webkitpy/common/thread: Added. * Scripts/webkitpy/common/thread/__init__.py: Added. * Scripts/webkitpy/common/thread/messagepump.py: Copied from Scripts/webkitpy/common/net/irc/messagepump.py. * Scripts/webkitpy/common/thread/messagepump_unittest.py: Copied from Scripts/webkitpy/common/net/irc/messagepump_unittest.py. * Scripts/webkitpy/common/thread/threadedmessagequeue.py: Copied from Scripts/webkitpy/common/net/irc/threadedmessagequeue.py. * Scripts/webkitpy/common/thread/threadedmessagequeue_unittest.py: Copied from Scripts/webkitpy/common/net/irc/threadedmessagequeue_unittest.py. * Scripts/webkitpy/common/thread/unittests.py: Added. * Scripts/webkitpy/common/unittests.py: 2010-03-26 Eric Seidel Reviewed by Adam Barth. Move commit_message_for_this_commit from scm to checkout https://bugs.webkit.org/show_bug.cgi?id=36629 Finally add some basic unit testing for Checkout.commit_message_for_this_commit * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/api_unittest.py: Added. * Scripts/webkitpy/common/unittests.py: 2010-03-26 Diego Gonzalez [Qt] User Agent Switcher on QtLauncher https://bugs.webkit.org/show_bug.cgi?id=36451 Patch by Diego Gonzalez on 2010-03-26 Reviewed by Simon Hausmann. Make possible to change the QtLauncher user agent via a predefined list. * QtLauncher/QtLauncher.pro: * QtLauncher/QtLauncher.qrc: Added. * QtLauncher/main.cpp: (LauncherWindow::showUserAgentDialog): (LauncherWindow::createChrome): * QtLauncher/useragentlist.txt: Added. * QtLauncher/webpage.cpp: (WebPage::userAgentForUrl): * QtLauncher/webpage.h: (WebPage::setUserAgent): 2010-03-26 Victor Wang Reviewed by Adam Barth. Host layout test flakiness dashboard in TestResultServer appengine. Flakiness dashboard is a tool to monitor layout test status and help layout test regression diagnostics. https://bugs.webkit.org/show_bug.cgi?id=36195 * TestResultServer/handlers/dashboardhandler.py: Added. - New handler to handle dashboard request * TestResultServer/handlers/menu.py: - Add new dashboard links * TestResultServer/handlers/testfilehandler.py: - Request routes refactory * TestResultServer/index.yaml: * TestResultServer/main.py: - Add new dashboard request routes and refactor test result file rountes. * TestResultServer/model/dashboardfile.py: Added. - Model to access datastore for dashboard files * TestResultServer/model/testfile.py: * TestResultServer/stylesheets/dashboardfile.css: Added. * TestResultServer/templates/dashboardfilelist.html: Added. * TestResultServer/templates/showfilelist.html: 2010-03-26 Adam Barth Reviewed by Eric Seidel. Remove some evil statics from CommitInfo https://bugs.webkit.org/show_bug.cgi?id=36637 These methods should really be on checkout. You can tell because they know about ChangeLogs and take an SCM as an argument. :) * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/changelog.py: * Scripts/webkitpy/common/checkout/commitinfo.py: * Scripts/webkitpy/tool/commands/queries.py: 2010-03-23 Jesus Sanchez-Palencia Reviewed by Simon Hausmann. Add an option to QtLauncher to enable/disable a QGLWidget as Viewport of the QGraphicsView when the launcher is running on graphicsview mode. [Qt] QtLauncher needs an option to Enable/Disable a QGLWidget as Viewport https://bugs.webkit.org/show_bug.cgi?id=36270 * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: (LauncherWindow::toggleQGLWidgetViewport): (LauncherWindow::createChrome): 2010-03-26 Fumitoshi Ukai Reviewed by Shinichiro Hamaji. [Chromium-Win] websocket_server.py failed to start https://bugs.webkit.org/show_bug.cgi?id=36586 subproess.Popen() on Python 2.4/Windows with stdout,stdout, but no stdin will fail, because it uses return value of GetStdHandle(STD_INPUT_HANDLE), but DuplicateHandle requires integer, not the handle. We don't need stdin, so use devnull as stdin. * Scripts/webkitpy/layout_tests/port/websocket_server.py: open os.devnull for stdin 2010-03-26 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add TestNavigationController and TestWebWorker https://bugs.webkit.org/show_bug.cgi?id=36520 Add LayoutTestController class, which is going to be used by DumpRenderTree Chromium port. These files are based on: - src/webkit/tools/test_shell/layout_test_controller.cc - src/webkit/tools/test_shell/layout_test_controller.h of Chromium rev.40492. * DumpRenderTree/chromium/LayoutTestController.cpp: Added. * DumpRenderTree/chromium/LayoutTestController.h: Added. 2010-03-25 Charlie Reis Reviewed by Adam Barth. onbeforeunload not called at window close + frame or iframe focused https://bugs.webkit.org/show_bug.cgi?id=27481 Adds a callShouldCloseOnWebView method to LayoutTestController, to allow automated testing for bug 27481. * DumpRenderTree/LayoutTestController.cpp: (callShouldCloseOnWebViewCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::callShouldCloseOnWebView): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::callShouldCloseOnWebView): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::callShouldCloseOnWebView): * DumpRenderTree/qt/LayoutTestControllerQt.h: * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::callShouldCloseOnWebView): 2010-03-25 Eric Seidel Reviewed by Adam Barth. Add webkit-patch lkgr for finding last known good revision https://bugs.webkit.org/show_bug.cgi?id=36626 This is rather slow for now because the command has to compute this information from the buildbot. A better long-term solution would be to have a server somewhere store a pre-computed LKGR and then any script (like webkit-patch) could just fetch it. * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/tool/commands/queries.py: 2010-03-25 Adam Barth Reviewed by Eric Seidel. Move modified_changelogs (and friends) from scm to checkout https://bugs.webkit.org/show_bug.cgi?id=36636 These functions know about ChangeLogs, which is forbidden knowledge in scm.py. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/changelog.py: * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/abstractstep.py: * Scripts/webkitpy/tool/steps/preparechangelogforrevert.py: * Scripts/webkitpy/tool/steps/revertrevision.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py: * Scripts/webkitpy/tool/steps/validatereviewer.py: 2010-03-25 Adam Barth Reviewed by Eric Seidel. Move apply_patch from scm to checkout https://bugs.webkit.org/show_bug.cgi?id=36635 SCM shouldn't have any knowledge of WebKit scripts. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/checkout/scm_unittest.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/applypatch.py: 2010-03-25 Eric Seidel Unreviewed build fix to un-break webkit-patch land. Test-case coming in follow-up commit. Move commit_message_for_this_commit from scm to checkout https://bugs.webkit.org/show_bug.cgi?id=36629 * Scripts/webkitpy/common/checkout/api.py: import scm.CommitMessage 2010-03-25 Dan Bernstein Reviewed by Darin Adler. Support color bitmap fonts * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added ColorBits.ttf and ColorBits-A.png. * DumpRenderTree/fonts/ColorBits-A.png: Copied from WebCore/inspector/front-end/Images/successGreenDot.png. * DumpRenderTree/fonts/ColorBits.ttf: Added. * DumpRenderTree/mac/DumpRenderTree.mm: (activateFonts): Activate ColorBits.ttf. 2010-03-25 Mark Rowe Remove a printf that was causing commit-log-editor to spew the name of the editor to the terminal many times during a commit. * Scripts/commit-log-editor: 2010-03-25 Adam Barth Reviewed by Eric Seidel. Move commit_message_for_this_commit from scm to checkout https://bugs.webkit.org/show_bug.cgi?id=36629 This function requires knowledge of ChangeLogs, but scm shouldn't know about ChangeLogs. * Scripts/webkitpy/common/checkout/api.py: * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/applypatchwithlocalcommit.py: * Scripts/webkitpy/tool/steps/commit.py: 2010-03-25 Adam Barth Reviewed by Eric Seidel. REGRESSION: webkit-patch land can't land "rubber-stamped" patches https://bugs.webkit.org/show_bug.cgi?id=36582 Allow a "-" in rubber stamped. * Scripts/webkitpy/tool/steps/validatereviewer.py: 2010-03-25 Adam Barth Unreviewed. Fix some copyright lines to remove extraneous comma and python directive. * Scripts/webkitpy/tool/bot/patchcollection.py: * Scripts/webkitpy/tool/bot/patchcollection_unittest.py: * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/queueengine_unittest.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/earlywarningsystem.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/comments.py: * Scripts/webkitpy/tool/grammar.py: * Scripts/webkitpy/tool/multicommandtool.py: * Scripts/webkitpy/tool/multicommandtool_unittest.py: 2010-03-25 Simon Fraser Reviewed by Darin Adler, Alexey Proskuryakov. https://bugs.webkit.org/show_bug.cgi?id=36631 Allow the test plugin to run scripts in response to NPP_SetWindow calls Hook up the ability for the TestNetscapePlugIn to run JavaScript in response to NPP_SetWindow. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginAllocate): * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h: * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): (NPP_Destroy): (NPP_SetWindow): 2010-03-25 Laszlo Gombos Unreviewed, build fix. [Qt] Fix QtLauncher guards. * QtLauncher/main.cpp: (LauncherWindow::showFPS): (LauncherWindow::updateFPS): 2010-03-25 Yury Semikhatsky Reviewed by Pavel Feldman. Allow running tests with enabled developer extras and closed Web Inspector. Tests that have inspector-enabled/ in their path/url will have developer extras enabled. https://bugs.webkit.org/show_bug.cgi?id=36610 * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/DumpRenderTree.cpp: (shouldEnableDeveloperExtras): (runTest): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setJavaScriptProfilingEnabled): (LayoutTestController::setDeveloperExtrasEnabled): (LayoutTestController::showWebInspector): (LayoutTestController::closeWebInspector): * DumpRenderTree/mac/DumpRenderTree.mm: (shouldEnableDeveloperExtras): (runTest): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setJavaScriptProfilingEnabled): (LayoutTestController::setDeveloperExtrasEnabled): (LayoutTestController::showWebInspector): (LayoutTestController::closeWebInspector): * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::shouldEnableDeveloperExtras): (WebCore::DumpRenderTree::open): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::closeWebInspector): (LayoutTestController::setDeveloperExtrasEnabled): (LayoutTestController::showWebInspector): (LayoutTestController::setJavaScriptProfilingEnabled): * DumpRenderTree/win/DumpRenderTree.cpp: (shouldEnableDeveloperExtras): (runTest): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setJavaScriptProfilingEnabled): (LayoutTestController::setDeveloperExtrasEnabled): (LayoutTestController::showWebInspector): (LayoutTestController::closeWebInspector): 2010-03-25 Adam Barth Rubber stamped by Eric Seidel. Tweaks to sheriffbot to improve latency by keeping the working copy up to date even when there's no build break. Also, officially move sheriffbot to #webkit. (Also teach ValidateReviewer to understand rubber stamps.) * Scripts/webkitpy/common/net/irc/ircbot.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/steps/validatereviewer.py: 2010-03-22 Jesus Sanchez-Palencia Reviewed by Simon Hausmann. Not displaying FPS info on the terminal. On S60 and Maemo the Window title will be used and Status bar will used on desktop. [Qt] QtLauncher's FPS info should not be displayed on the terminal https://bugs.webkit.org/show_bug.cgi?id=36244 * QtLauncher/main.cpp: (LauncherWindow::initializeView): (LauncherWindow::showFPS): (LauncherWindow::updateFPS): * QtLauncher/webview.cpp: (WebViewGraphicsBased::setFrameRateMeasurementEnabled): (WebViewGraphicsBased::updateFrameRate): * QtLauncher/webview.h: (WebViewGraphicsBased::frameRateMeasurementEnabled): 2010-03-25 Diego Gonzalez Reviewed by Kenneth Christiansen. Added missing frame flattening activation on fast/frames/flattening/frameset-flattening-grid.html; removed unnecessary CONSOLE MESSAGE from the expected file; reset the setFrameSetFlatteningEnabled for each test. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::resetSettings): 2010-03-25 Chris Jerdonek Reviewed by Adam Barth. Moved deprecated_logging unit test import statement from webkitpy/unittests.py to webkitpy/common/system/unittests.py. https://bugs.webkit.org/show_bug.cgi?id=36093 This is part of the master bug to reorganize webkitpy. * Scripts/webkitpy/common/system/unittests.py: * Scripts/webkitpy/unittests.py: 2010-03-25 Chris Jerdonek Reviewed by Adam Barth. Moved webkit_logging.py to common/system/deprecated_logging.py inside webkitpy. https://bugs.webkit.org/show_bug.cgi?id=36093 This is part of the master bug to reorganize webkitpy. * Scripts/validate-committer-lists: * Scripts/webkitpy/common/checkout/changelog.py: * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/buildbot.py: * Scripts/webkitpy/common/net/credentials.py: * Scripts/webkitpy/common/net/irc/ircproxy.py: * Scripts/webkitpy/common/net/networktransaction.py: * Scripts/webkitpy/common/net/statusserver.py: * Scripts/webkitpy/common/system/deprecated_logging.py: Copied from WebKitTools/Scripts/webkitpy/webkit_logging.py. * Scripts/webkitpy/common/system/deprecated_logging_unittest.py: Copied from WebKitTools/Scripts/webkitpy/webkit_logging_unittest.py. * Scripts/webkitpy/common/system/executive.py: * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: * Scripts/webkitpy/tool/commands/openbugs.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/commands/stepsequence.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/multicommandtool.py: * Scripts/webkitpy/tool/steps/abstractstep.py: * Scripts/webkitpy/tool/steps/applypatch.py: * Scripts/webkitpy/tool/steps/build.py: * Scripts/webkitpy/tool/steps/checkstyle.py: * Scripts/webkitpy/tool/steps/closebug.py: * Scripts/webkitpy/tool/steps/closebugforlanddiff.py: * Scripts/webkitpy/tool/steps/confirmdiff.py: * Scripts/webkitpy/tool/steps/ensurebuildersaregreen.py: * Scripts/webkitpy/tool/steps/ensurelocalcommitifneeded.py: * Scripts/webkitpy/tool/steps/obsoletepatches.py: * Scripts/webkitpy/tool/steps/preparechangelog.py: * Scripts/webkitpy/tool/steps/reopenbugafterrollout.py: * Scripts/webkitpy/tool/steps/runtests.py: * Scripts/webkitpy/tool/steps/update.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py: * Scripts/webkitpy/tool/steps/validatereviewer.py: * Scripts/webkitpy/unittests.py: * Scripts/webkitpy/webkit_logging.py: Removed. * Scripts/webkitpy/webkit_logging_unittest.py: Removed. 2010-03-25 Julien Chaffraix Reviewed by Kenneth Rohde Christiansen. commit-log-editor can call itself in an infinite loop https://bugs.webkit.org/show_bug.cgi?id=35291 if $editor ends up being commit-log-editor, the script will exec itself in an infinite loop. To avoid this, we now check that the $editor variable is not commit-log-editor to avoid this case. * Scripts/commit-log-editor: Added an isCommitLogEditor method and reworked the $editor setting to add this check. 2010-03-25 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. Add a Toggle Frame Flattening option to QtLauncher. It will be enabled by default on Maemo5 and S60 platforms. [Qt] Add enable/disable Frame Flattening option to QtLauncher https://bugs.webkit.org/show_bug.cgi?id=36558 * QtLauncher/main.cpp: (LauncherWindow::applyPrefs): (LauncherWindow::toggleFrameFlattening): (LauncherWindow::createChrome): 2010-03-25 Zoltan Horvath Reviewed by Eric Seidel. svn-create-patch prints a warning for large patches https://bugs.webkit.org/show_bug.cgi?id=32582 svn-create-patch prints a warning message for larger patches than 20k. * Scripts/svn-create-patch: 2010-03-25 Adam Barth Unreviewed. Renamed early_warning_system.py to earlywarningsystem.py. https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/tool/commands/early_warning_system.py: Removed. * Scripts/webkitpy/tool/commands/early_warning_system_unittest.py: Removed. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: Copied from Scripts/webkitpy/tool/commands/early_warning_system.py. * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: Copied from Scripts/webkitpy/tool/commands/early_warning_system_unittest.py. * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/unittests.py: 2010-03-25 Chris Jerdonek Reviewed by Adam Barth. In webkitpy, pushed the unit test import statements in webkitpy/unittests.py into appropriate unittests.py files in the new root-level packages beneath webkitpy. https://bugs.webkit.org/show_bug.cgi?id=36093 This is part of the master bug to reorganize webkitpy. * Scripts/webkitpy/common/system/unittests.py: * Scripts/webkitpy/common/unittests.py: Added. * Scripts/webkitpy/python24/unittests.py: Added. * Scripts/webkitpy/tool/unittests.py: Added. * Scripts/webkitpy/unittests.py: 2010-03-25 Adam Barth Unreviewed. Move WebKitCheckout into the webkitpy.common.checkout package. https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/common/checkout/api.py: Copied from Scripts/webkitpy/webkitcheckout.py. * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/webkitcheckout.py: Removed. 2010-03-25 Adam Barth Unreviewed. Move OutputCapture to webkitpy.common.system. https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/common/net/bugzilla_unittest.py: * Scripts/webkitpy/common/net/credentials_unittest.py: * Scripts/webkitpy/common/system/outputcapture.py: Copied from Scripts/webkitpy/outputcapture.py. * Scripts/webkitpy/outputcapture.py: Removed. * Scripts/webkitpy/tool/commands/commandtest.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/queuestest.py: * Scripts/webkitpy/tool/multicommandtool_unittest.py: * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py: * Scripts/webkitpy/tool/steps/steps_unittest.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittests.py: 2010-03-25 Adam Barth Unreviewed. Move user.py to webkitpy.common.system. * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/net/bugzilla.py: * Scripts/webkitpy/common/net/credentials.py: * Scripts/webkitpy/common/system/user.py: Copied from Scripts/webkitpy/user.py. * Scripts/webkitpy/common/system/user_unittest.py: Copied from Scripts/webkitpy/user_unittest.py. * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/unittests.py: * Scripts/webkitpy/user.py: Removed. * Scripts/webkitpy/user_unittest.py: Removed. 2010-03-25 Adam Barth Unreviewed. Move executive.py to webkitpy.common.system. https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/common/checkout/scm.py: * Scripts/webkitpy/common/checkout/scm_unittest.py: * Scripts/webkitpy/common/config/ports.py: * Scripts/webkitpy/common/config/ports_unittest.py: * Scripts/webkitpy/common/net/credentials.py: * Scripts/webkitpy/common/net/credentials_unittest.py: * Scripts/webkitpy/common/system/executive.py: Copied from Scripts/webkitpy/executive.py. * Scripts/webkitpy/common/system/executive_unittest.py: Copied from Scripts/webkitpy/executive_unittest.py. * Scripts/webkitpy/executive.py: Removed. * Scripts/webkitpy/executive_unittest.py: Removed. * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/bot/queueengine_unittest.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/early_warning_system.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/stepsequence.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/steps/checkstyle.py: * Scripts/webkitpy/tool/steps/preparechangelog.py: * Scripts/webkitpy/unittests.py: * Scripts/webkitpy/webkit_logging_unittest.py: 2010-03-25 Adam Barth Unreviewed. Move grammary.py into webkitpy.tool. https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/grammar.py: Removed. * Scripts/webkitpy/grammar_unittest.py: Removed. * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/grammar.py: Copied from Scripts/webkitpy/grammar.py. * Scripts/webkitpy/tool/grammar_unittest.py: Copied from Scripts/webkitpy/grammar_unittest.py. * Scripts/webkitpy/tool/multicommandtool.py: * Scripts/webkitpy/tool/steps/obsoletepatches.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py: * Scripts/webkitpy/unittests.py: 2010-03-25 Chris Jerdonek Reviewed by Adam Barth. In webkitpy, moved init/ to common/system/. https://bugs.webkit.org/show_bug.cgi?id=36093 This is part of the master bug to reorganize webkitpy. * Scripts/webkitpy/common/system: Copied from WebKitTools/Scripts/webkitpy/init. * Scripts/webkitpy/common/system/logutils.py: * Scripts/webkitpy/common/system/logutils_unittest.py: * Scripts/webkitpy/init: Removed. * Scripts/webkitpy/init/__init__.py: Removed. * Scripts/webkitpy/init/logtesting.py: Removed. * Scripts/webkitpy/init/logutils.py: Removed. * Scripts/webkitpy/init/logutils_unittest.py: Removed. * Scripts/webkitpy/init/unittests.py: Removed. * Scripts/webkitpy/python24/versioning_unittest.py: * Scripts/webkitpy/style_references.py: * Scripts/webkitpy/unittests.py: 2010-03-25 Adam Barth Unreviewed. Move stepsequence to webkitpy.tool.commands. https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/stepsequence.py: Removed. * Scripts/webkitpy/tool/commands/abstractsequencedcommand.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/stepsequence.py: Copied from Scripts/webkitpy/stepsequence.py. 2010-03-25 Adam Barth Unreviewed. Create webkitpy.common.checkout as described in https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/changelogs.py: Removed. * Scripts/webkitpy/changelogs_unittest.py: Removed. * Scripts/webkitpy/commitinfo.py: Removed. * Scripts/webkitpy/commitinfo_unittest.py: Removed. * Scripts/webkitpy/common/checkout: Added. * Scripts/webkitpy/common/checkout/__init__.py: Copied from Scripts/webkitpy/common/__init__.py. * Scripts/webkitpy/common/checkout/changelog.py: Copied from Scripts/webkitpy/changelogs.py. * Scripts/webkitpy/common/checkout/changelog_unittest.py: Copied from Scripts/webkitpy/changelogs_unittest.py. * Scripts/webkitpy/common/checkout/commitinfo.py: Copied from Scripts/webkitpy/commitinfo.py. * Scripts/webkitpy/common/checkout/commitinfo_unittest.py: Copied from Scripts/webkitpy/commitinfo_unittest.py. * Scripts/webkitpy/common/checkout/diff_parser.py: Copied from Scripts/webkitpy/diff_parser.py. * Scripts/webkitpy/common/checkout/diff_parser_unittest.py: Copied from Scripts/webkitpy/diff_parser_unittest.py. * Scripts/webkitpy/common/checkout/scm.py: Copied from Scripts/webkitpy/scm.py. * Scripts/webkitpy/common/checkout/scm_unittest.py: Copied from Scripts/webkitpy/scm_unittest.py. * Scripts/webkitpy/common/net/credentials.py: * Scripts/webkitpy/diff_parser.py: Removed. * Scripts/webkitpy/diff_parser_unittest.py: Removed. * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/scm.py: Removed. * Scripts/webkitpy/scm_unittest.py: Removed. * Scripts/webkitpy/stepsequence.py: * Scripts/webkitpy/style_references.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/comments.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/preparechangelogforrevert.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py: * Scripts/webkitpy/tool/steps/validatereviewer.py: * Scripts/webkitpy/unittests.py: * Scripts/webkitpy/webkitcheckout.py: 2010-03-25 Chris Jerdonek Reviewed by Adam Barth. In webkitpy, moved init/versioning.py to python24/. https://bugs.webkit.org/show_bug.cgi?id=36093 This is part of the master bug to reorganize webkitpy. * Scripts/test-webkitpy: * Scripts/webkit-patch: * Scripts/webkitpy/init/unittests.py: * Scripts/webkitpy/init/versioning.py: Removed. * Scripts/webkitpy/init/versioning_unittest.py: Removed. * Scripts/webkitpy/python24: Added. * Scripts/webkitpy/python24/__init__.py: Copied from WebKitTools/Scripts/webkitpy/tool/__init__.py. * Scripts/webkitpy/python24/versioning.py: Copied from WebKitTools/Scripts/webkitpy/init/versioning.py. * Scripts/webkitpy/python24/versioning_unittest.py: Copied from WebKitTools/Scripts/webkitpy/init/versioning_unittest.py. * Scripts/webkitpy/unittests.py: 2010-03-25 Adam Barth Unreviewed. Create webkitpy.common.net as described in https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/bugzilla.py: Removed. * Scripts/webkitpy/bugzilla_unittest.py: Removed. * Scripts/webkitpy/buildbot.py: Removed. * Scripts/webkitpy/buildbot_unittest.py: Removed. * Scripts/webkitpy/commitinfo.py: * Scripts/webkitpy/common/net: Added. * Scripts/webkitpy/common/net/__init__.py: Added. * Scripts/webkitpy/common/net/bugzilla.py: Copied from Scripts/webkitpy/bugzilla.py. * Scripts/webkitpy/common/net/bugzilla_unittest.py: Copied from Scripts/webkitpy/bugzilla_unittest.py. * Scripts/webkitpy/common/net/buildbot.py: Copied from Scripts/webkitpy/buildbot.py. * Scripts/webkitpy/common/net/buildbot_unittest.py: Copied from Scripts/webkitpy/buildbot_unittest.py. * Scripts/webkitpy/common/net/credentials.py: Copied from Scripts/webkitpy/credentials.py. * Scripts/webkitpy/common/net/credentials_unittest.py: Copied from Scripts/webkitpy/credentials_unittest.py. * Scripts/webkitpy/common/net/irc: Copied from Scripts/webkitpy/irc. * Scripts/webkitpy/common/net/irc/ircbot.py: * Scripts/webkitpy/common/net/irc/ircproxy.py: * Scripts/webkitpy/common/net/irc/messagepump_unittest.py: * Scripts/webkitpy/common/net/irc/threadedmessagequeue_unittest.py: * Scripts/webkitpy/common/net/irc/unittests.py: * Scripts/webkitpy/common/net/networktransaction.py: Copied from Scripts/webkitpy/networktransaction.py. * Scripts/webkitpy/common/net/networktransaction_unittest.py: Copied from Scripts/webkitpy/networktransaction_unittest.py. * Scripts/webkitpy/common/net/statusserver.py: Copied from Scripts/webkitpy/statusserver.py. * Scripts/webkitpy/credentials.py: Removed. * Scripts/webkitpy/credentials_unittest.py: Removed. * Scripts/webkitpy/irc: Removed. * Scripts/webkitpy/irc/__init__.py: Removed. * Scripts/webkitpy/irc/ircbot.py: Removed. * Scripts/webkitpy/irc/ircproxy.py: Removed. * Scripts/webkitpy/irc/messagepump.py: Removed. * Scripts/webkitpy/irc/messagepump_unittest.py: Removed. * Scripts/webkitpy/irc/threadedmessagequeue.py: Removed. * Scripts/webkitpy/irc/threadedmessagequeue_unittest.py: Removed. * Scripts/webkitpy/irc/unittests.py: Removed. * Scripts/webkitpy/networktransaction.py: Removed. * Scripts/webkitpy/networktransaction_unittest.py: Removed. * Scripts/webkitpy/scm_unittest.py: * Scripts/webkitpy/statusserver.py: Removed. * Scripts/webkitpy/tool/bot/queueengine.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/commands/queries_unittest.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/queuestest.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/postdiffforrevert.py: * Scripts/webkitpy/unittests.py: 2010-03-25 Chris Jerdonek Reviewed by Adam Barth. In webkitpy, renamed MockBugzillaTool to MockTool. * Scripts/webkitpy/tool/commands/commandtest.py: * Scripts/webkitpy/tool/commands/queries_unittest.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/queuestest.py: * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/mocktool.py: * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py: * Scripts/webkitpy/tool/steps/steps_unittest.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittests.py: 2010-03-25 Chris Jerdonek Reviewed by Adam Barth. In Scripts/webkitpy, moved webkitport.py and committers.py into common/config/ (also creating common/config/). https://bugs.webkit.org/show_bug.cgi?id=36093 This is part of the master bug to reorganize webkitpy. * Scripts/validate-committer-lists: * Scripts/webkitpy/bugzilla.py: * Scripts/webkitpy/bugzilla_unittest.py: * Scripts/webkitpy/changelogs.py: * Scripts/webkitpy/commitinfo.py: * Scripts/webkitpy/commitinfo_unittest.py: * Scripts/webkitpy/committers.py: Removed. * Scripts/webkitpy/committers_unittest.py: Removed. * Scripts/webkitpy/common: Added. * Scripts/webkitpy/common/__init__.py: Copied from WebKitTools/Scripts/webkitpy/style/__init__.py. * Scripts/webkitpy/common/config: Added. * Scripts/webkitpy/common/config/__init__.py: Copied from WebKitTools/Scripts/webkitpy/style/__init__.py. * Scripts/webkitpy/common/config/committers.py: Copied from WebKitTools/Scripts/webkitpy/committers.py. * Scripts/webkitpy/common/config/committers_unittest.py: Copied from WebKitTools/Scripts/webkitpy/committers_unittest.py. * Scripts/webkitpy/common/config/ports.py: Copied from WebKitTools/Scripts/webkitpy/webkitport.py. * Scripts/webkitpy/common/config/ports_unittest.py: Copied from WebKitTools/Scripts/webkitpy/webkitport_unittest.py. * Scripts/webkitpy/mock_bugzillatool.py: * Scripts/webkitpy/tool/commands/early_warning_system.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/steps/abstractstep.py: * Scripts/webkitpy/unittests.py: * Scripts/webkitpy/webkitport.py: Removed. * Scripts/webkitpy/webkitport_unittest.py: Removed. 2010-03-25 Adam Barth Unreviewed. Move mock_bugzillatool.py to tool/mocktool.py. * Scripts/webkitpy/mock_bugzillatool.py: Removed. * Scripts/webkitpy/tool/commands/commandtest.py: * Scripts/webkitpy/tool/commands/queries_unittest.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/queuestest.py: * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/mocktool.py: Copied from Scripts/webkitpy/mock_bugzillatool.py. * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py: * Scripts/webkitpy/tool/steps/steps_unittest.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittests.py: 2010-03-24 Adam Barth Unreviewed. Move comments.py and multicommandtool.py to their new home. * Scripts/webkitpy/comments.py: Removed. * Scripts/webkitpy/multicommandtool.py: Removed. * Scripts/webkitpy/multicommandtool_unittest.py: Removed. * Scripts/webkitpy/tool/commands/abstractsequencedcommand.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/openbugs.py: * Scripts/webkitpy/tool/commands/queries.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/comments.py: Copied from Scripts/webkitpy/comments.py. * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/tool/multicommandtool.py: Copied from Scripts/webkitpy/multicommandtool.py. * Scripts/webkitpy/tool/multicommandtool_unittest.py: Copied from Scripts/webkitpy/multicommandtool_unittest.py. * Scripts/webkitpy/tool/steps/closebugforlanddiff.py: * Scripts/webkitpy/tool/steps/closepatch.py: * Scripts/webkitpy/tool/steps/reopenbugafterrollout.py: * Scripts/webkitpy/unittests.py: 2010-03-24 Adam Barth Unreviewed. Fixup one import statement I didn't find because the .pyc masked the error. * Scripts/webkitpy/stepsequence.py: 2010-03-24 Adam Barth Unreviewed. Move queueengine.py to its new home. * Scripts/webkitpy/queueengine.py: Removed. * Scripts/webkitpy/queueengine_unittest.py: Removed. * Scripts/webkitpy/tool/bot/queueengine.py: Copied from Scripts/webkitpy/queueengine.py. * Scripts/webkitpy/tool/bot/queueengine_unittest.py: Copied from Scripts/webkitpy/queueengine_unittest.py. * Scripts/webkitpy/tool/commands/early_warning_system.py: * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/unittests.py: 2010-03-24 Adam Barth Unreviewed. Move patchcollection.py to its new home. * Scripts/webkitpy/patchcollection.py: Removed. * Scripts/webkitpy/patchcollection_unittest.py: Removed. * Scripts/webkitpy/tool/bot: Added. * Scripts/webkitpy/tool/bot/__init__.py: Added. * Scripts/webkitpy/tool/bot/patchcollection.py: Copied from WebKitTools/Scripts/webkitpy/patchcollection.py. * Scripts/webkitpy/tool/bot/patchcollection_unittest.py: Copied from WebKitTools/Scripts/webkitpy/patchcollection_unittest.py. * Scripts/webkitpy/tool/commands/queues.py: * Scripts/webkitpy/unittests.py: 2010-03-24 Chris Jerdonek Reviewed by Adam Barth. In Scripts/webkitpy, moved steps_references.py and the steps folder into webkitpy/patch. https://bugs.webkit.org/show_bug.cgi?id=36093 * Scripts/webkitpy/steps: Removed. * Scripts/webkitpy/steps/__init__.py: Removed. * Scripts/webkitpy/steps/abstractstep.py: Removed. * Scripts/webkitpy/steps/applypatch.py: Removed. * Scripts/webkitpy/steps/applypatchwithlocalcommit.py: Removed. * Scripts/webkitpy/steps/build.py: Removed. * Scripts/webkitpy/steps/checkstyle.py: Removed. * Scripts/webkitpy/steps/cleanworkingdirectory.py: Removed. * Scripts/webkitpy/steps/cleanworkingdirectorywithlocalcommits.py: Removed. * Scripts/webkitpy/steps/closebug.py: Removed. * Scripts/webkitpy/steps/closebugforlanddiff.py: Removed. * Scripts/webkitpy/steps/closebugforlanddiff_unittest.py: Removed. * Scripts/webkitpy/steps/closepatch.py: Removed. * Scripts/webkitpy/steps/commit.py: Removed. * Scripts/webkitpy/steps/confirmdiff.py: Removed. * Scripts/webkitpy/steps/createbug.py: Removed. * Scripts/webkitpy/steps/editchangelog.py: Removed. * Scripts/webkitpy/steps/ensurebuildersaregreen.py: Removed. * Scripts/webkitpy/steps/ensurelocalcommitifneeded.py: Removed. * Scripts/webkitpy/steps/metastep.py: Removed. * Scripts/webkitpy/steps/obsoletepatches.py: Removed. * Scripts/webkitpy/steps/options.py: Removed. * Scripts/webkitpy/steps/postdiff.py: Removed. * Scripts/webkitpy/steps/postdiffforcommit.py: Removed. * Scripts/webkitpy/steps/postdiffforrevert.py: Removed. * Scripts/webkitpy/steps/preparechangelog.py: Removed. * Scripts/webkitpy/steps/preparechangelogforrevert.py: Removed. * Scripts/webkitpy/steps/promptforbugortitle.py: Removed. * Scripts/webkitpy/steps/reopenbugafterrollout.py: Removed. * Scripts/webkitpy/steps/revertrevision.py: Removed. * Scripts/webkitpy/steps/runtests.py: Removed. * Scripts/webkitpy/steps/steps_unittest.py: Removed. * Scripts/webkitpy/steps/update.py: Removed. * Scripts/webkitpy/steps/updatechangelogswithreview_unittests.py: Removed. * Scripts/webkitpy/steps/updatechangelogswithreviewer.py: Removed. * Scripts/webkitpy/steps/validatereviewer.py: Removed. * Scripts/webkitpy/steps_references.py: Removed. * Scripts/webkitpy/stepsequence.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/steps: Copied from WebKitTools/Scripts/webkitpy/steps. * Scripts/webkitpy/tool/steps/__init__.py: * Scripts/webkitpy/tool/steps/applypatch.py: * Scripts/webkitpy/tool/steps/applypatchwithlocalcommit.py: * Scripts/webkitpy/tool/steps/build.py: * Scripts/webkitpy/tool/steps/checkstyle.py: * Scripts/webkitpy/tool/steps/cleanworkingdirectory.py: * Scripts/webkitpy/tool/steps/cleanworkingdirectorywithlocalcommits.py: * Scripts/webkitpy/tool/steps/closebug.py: * Scripts/webkitpy/tool/steps/closebugforlanddiff.py: * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py: * Scripts/webkitpy/tool/steps/closepatch.py: * Scripts/webkitpy/tool/steps/commit.py: * Scripts/webkitpy/tool/steps/confirmdiff.py: * Scripts/webkitpy/tool/steps/createbug.py: * Scripts/webkitpy/tool/steps/editchangelog.py: * Scripts/webkitpy/tool/steps/ensurebuildersaregreen.py: * Scripts/webkitpy/tool/steps/ensurelocalcommitifneeded.py: * Scripts/webkitpy/tool/steps/metastep.py: * Scripts/webkitpy/tool/steps/obsoletepatches.py: * Scripts/webkitpy/tool/steps/postdiff.py: * Scripts/webkitpy/tool/steps/postdiffforcommit.py: * Scripts/webkitpy/tool/steps/postdiffforrevert.py: * Scripts/webkitpy/tool/steps/preparechangelog.py: * Scripts/webkitpy/tool/steps/preparechangelogforrevert.py: * Scripts/webkitpy/tool/steps/promptforbugortitle.py: * Scripts/webkitpy/tool/steps/reopenbugafterrollout.py: * Scripts/webkitpy/tool/steps/revertrevision.py: * Scripts/webkitpy/tool/steps/runtests.py: * Scripts/webkitpy/tool/steps/steps_unittest.py: * Scripts/webkitpy/tool/steps/update.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittests.py: * Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py: * Scripts/webkitpy/tool/steps/validatereviewer.py: * Scripts/webkitpy/tool/steps_references.py: Copied from WebKitTools/Scripts/webkitpy/steps_references.py. * Scripts/webkitpy/unittests.py: 2010-03-24 Eric Seidel Unreviewed, build fix only. Abstract LayoutTestResults logic for easier reuse https://bugs.webkit.org/show_bug.cgi?id=36579 * Scripts/webkitpy/buildbot_unittest.py: Add a missing import. 2010-03-24 Adam Barth Unreviewed. Fix a stray comma to test landing an patch without review. * Scripts/webkitpy/commitinfo.py: 2010-03-24 Chris Jerdonek Reviewed by Adam Barth. In Scripts/webkitpy, moved commands_references.py and the commands folder into webkitpy/patch. https://bugs.webkit.org/show_bug.cgi?id=36483 This is part of master bug 36093 to organize webkitpy. * Scripts/webkitpy/commands: Removed. * Scripts/webkitpy/commands/__init__.py: Removed. * Scripts/webkitpy/commands/abstractsequencedcommand.py: Removed. * Scripts/webkitpy/commands/commandtest.py: Removed. * Scripts/webkitpy/commands/download.py: Removed. * Scripts/webkitpy/commands/download_unittest.py: Removed. * Scripts/webkitpy/commands/early_warning_system.py: Removed. * Scripts/webkitpy/commands/early_warning_system_unittest.py: Removed. * Scripts/webkitpy/commands/openbugs.py: Removed. * Scripts/webkitpy/commands/openbugs_unittest.py: Removed. * Scripts/webkitpy/commands/queries.py: Removed. * Scripts/webkitpy/commands/queries_unittest.py: Removed. * Scripts/webkitpy/commands/queues.py: Removed. * Scripts/webkitpy/commands/queues_unittest.py: Removed. * Scripts/webkitpy/commands/queuestest.py: Removed. * Scripts/webkitpy/commands/sheriffbot.py: Removed. * Scripts/webkitpy/commands/sheriffbot_unittest.py: Removed. * Scripts/webkitpy/commands/upload.py: Removed. * Scripts/webkitpy/commands/upload_unittest.py: Removed. * Scripts/webkitpy/commands_references.py: Removed. * Scripts/webkitpy/tool/commands: Copied from WebKitTools/Scripts/webkitpy/commands. * Scripts/webkitpy/tool/commands/commandtest.py: * Scripts/webkitpy/tool/commands/download.py: * Scripts/webkitpy/tool/commands/download_unittest.py: * Scripts/webkitpy/tool/commands/early_warning_system.py: * Scripts/webkitpy/tool/commands/early_warning_system_unittest.py: * Scripts/webkitpy/tool/commands/openbugs_unittest.py: * Scripts/webkitpy/tool/commands/queries_unittest.py: * Scripts/webkitpy/tool/commands/queues_unittest.py: * Scripts/webkitpy/tool/commands/queuestest.py: * Scripts/webkitpy/tool/commands/sheriffbot.py: * Scripts/webkitpy/tool/commands/sheriffbot_unittest.py: * Scripts/webkitpy/tool/commands/upload.py: * Scripts/webkitpy/tool/commands/upload_unittest.py: * Scripts/webkitpy/tool/commands_references.py: Copied from WebKitTools/Scripts/webkitpy/commands_references.py. * Scripts/webkitpy/tool/main.py: * Scripts/webkitpy/unittests.py: 2010-03-24 Adam Barth Reviewed by Eric Seidel. Rename webkitpy.patch to webkitpy.tool https://bugs.webkit.org/show_bug.cgi?id=36580 This is in preparation for the great webkitpy naming cleanup. * Scripts/webkit-patch: * Scripts/webkitpy/patch: Removed. * Scripts/webkitpy/patch/__init__.py: Removed. * Scripts/webkitpy/patch/patcher.py: Removed. * Scripts/webkitpy/tool: Copied from WebKitTools/Scripts/webkitpy/patch. * Scripts/webkitpy/tool/main.py: Copied from WebKitTools/Scripts/webkitpy/patch/patcher.py. * Scripts/webkitpy/tool/patcher.py: Removed. 2010-03-24 Eric Seidel Reviewed by Adam Barth. Abstract LayoutTestResults logic for easier reuse https://bugs.webkit.org/show_bug.cgi?id=36579 * Scripts/webkitpy/buildbot.py: - Split out logic into new LayoutTestResults class. * Scripts/webkitpy/buildbot_unittest.py: - Rename the testing class to match. * Scripts/webkitpy/commands/queries.py: - Use the new LayoutTestResults class. 2010-03-24 Eric Seidel Reviewed by Eric Seidel. Move Bugzilla.prompt_for_component to User.prompt_with_list for re-use https://bugs.webkit.org/show_bug.cgi?id=36577 * Scripts/webkitpy/bugzilla.py: - Move prompt_for_component to User * Scripts/webkitpy/commands/queries.py: - Add a missing argument_names declaration. * Scripts/webkitpy/user.py: - Add prompt_with_list - Make staticmethods classmethods for easier mocking 2010-03-24 David Kilzer commit-log-editor: thinks mergeChangeLogs.pl is a ChangeLog file Reviewed by Eric Seidel. Fixes the following error when committing a file with "ChangeLog" in the name that isn't a ChangeLog (like mergeChangeLogs.pl from r56471 and r56472): $ git commit . Can't open WebKitTools/Scripts/webkitperl/VCSUtils_unittest/mergeChangeLog at commit-log-editor line 132. error: There was a problem with the editor 'commit-log-editor'. Please supply the message using either -m or -F option. * Scripts/commit-log-editor: Added '$' to anchor "ChangeLog" to the end of the file name when searching for ChangeLog files in a commit. 2010-03-24 David Kilzer resolve-ChangeLogs: fall back to git-merge-file if ChangeLog can't be merged Reviewed by Eric Seidel. * Scripts/resolve-ChangeLogs: Switched to exec git-merge-file if the merge attempt fails. 2010-03-24 Adam Barth Reviewed by Eric Seidel. webkit-patch or pre-commit hook should validate reviewer lines before committing https://bugs.webkit.org/show_bug.cgi?id=26927 Validate that patches have valid reivewers listed in their ChangeLogs before landing. For patches without reviewers can be landed if their ChangeLogs state that they are unreviewed. * Scripts/webkitpy/changelogs.py: * Scripts/webkitpy/commands/download.py: * Scripts/webkitpy/commitinfo.py: * Scripts/webkitpy/commitinfo_unittest.py: * Scripts/webkitpy/mock_bugzillatool.py: * Scripts/webkitpy/steps/__init__.py: * Scripts/webkitpy/steps/validatereviewer.py: Added. 2010-03-19 Holger Hans Peter Freyther Reviewed by David Levin. Undefined names reported by pyflakes in python scripts https://bugs.webkit.org/show_bug.cgi?id=36403 Attempt to use names that exist or can exist in the lexical scope instead of not being available at all. * Scripts/webkitpy/changelogs.py: Use self._content. * Scripts/webkitpy/layout_tests/port/base.py: Use os.stat * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: Use self._port * Scripts/webkitpy/style/processors/cpp_unittest.py: Use expected_message_re 2010-03-24 David Kilzer resolve-ChangeLogs: git-rebase fails when resolve-ChangeLogs can't merge Reviewed by Eric Seidel. When resolve-ChangeLogs fails to merge a patch while running as a git merge driver, it deletes the original file, which causes an internal failure and stops git mid-merge: fatal: Failed to execute internal merge The fix is to use the --force switch with patch so that it will always attempt to apply the patch. (The change in mergeChangeLogs() for the previous commit also fixed this, but adding --force also prevents any potential user interaction that patch may want to display.) * Scripts/VCSUtils.pm: (mergeChangeLogs): Added --force switch to patch command. Also changed to use the exit status from the patch command to determine the return value for this method. * Scripts/webkitperl/VCSUtils_unittest/mergeChangeLogs.pl: Added test to cover this bug. 2010-03-24 David Kilzer resolve-ChangeLogs: move mergeChanges() into VCSUtils package Reviewed by Eric Seidel. * Scripts/VCSUtils.pm: (mergeChangeLogs): Copied from mergeChanges() in resolve-ChangeLogs and renamed. Added method documentation. Fixed bug found by new tests where the original file to be patched was deleted when cleaning up after a traditinal rejected patch failed to apply. * Scripts/resolve-ChangeLogs: Switched to using mergeChangeLogs(). (mergeChanges): Moved to VCSUtils.pm and renamed to mergeChangeLogs(). * Scripts/webkitperl/VCSUtils_unittest/mergeChangeLogs.pl: Added. 2010-03-24 Eric Seidel Reviewed by Adam Barth. Add support for qt's unassigned list to webkit-patch assign-to-committer https://bugs.webkit.org/show_bug.cgi?id=36559 * Scripts/webkitpy/bugzilla.py: - Move Bugzilla.unassigned_email into Bug and make it a set. * Scripts/webkitpy/bugzilla_unittest.py: - Test the new Bug.is_unassigned method * Scripts/webkitpy/commands/upload.py: - Use the new Bug.is_unassigned method instead of an explicit == * Scripts/webkitpy/mock_bugzillatool.py: - Bugzilla.unassigned_email no longer needs mocking 2010-03-24 Kent Hansen Reviewed by Simon Hausmann. [Qt] Rename QWebSettings::XSSAuditorEnabled to XSSAuditingEnabled https://bugs.webkit.org/show_bug.cgi?id=36522 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setXSSAuditorEnabled): Use the new name. 2010-03-24 Chris Jerdonek Reviewed by Shinichiro Hamaji. Added to check-webkit-style support for a --debug flag. https://bugs.webkit.org/show_bug.cgi?id=36100 The --debug flag adjusts the logging level to DEBUG and includes the logger name and level in each log message. * Scripts/check-webkit-style: - Changed the code to check for the --debug flag and pass the result to the configure_logging() method. * Scripts/webkitpy/style/checker.py: - Added an is_debug parameter to configure_logging(). - Refactored configure_logging() by adding calls to the following two methods: _create_log_handlers() and _create_debug_log_handlers(). * Scripts/webkitpy/style/checker_unittest.py: - Added unit tests for configure_logging() with is_debug True by splitting the ConfigureLoggingTest class into ConfigureLoggingTest and ConfigureLoggingTestBase, and adding ConfigureLoggingDebugTest. * Scripts/webkitpy/style/optparser.py: - Updated the usage string. - Added an is_debug data attribute to the CommandOptionValues class. - Added support for the --debug flag to the ArgumentParser.parse() method. - Also added extra error information to the parse() method in the case of an invalid flag. * Scripts/webkitpy/style/optparser_unittest.py: - Updated the unit tests as necessary. - Also fixed an issue with the CommandOptionValuesTest.test_eq() unit test. 2010-03-23 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add TestNavigationController and TestWebWorker https://bugs.webkit.org/show_bug.cgi?id=36489 Add TestNavigationController and TestWebWorker classes, which are going to be used by DumpRenderTree Chromium port. These files are based on: - src/webkit/tools/test_shell/test_navigation_controller.{cc,h} - src/webkit/tools/test_shell/test_web_worker.h of Chromium rev.40492. TestNavigationController has non-style changes. - Change ContentState type: binary string -> WebHistoryItem - Remove TestShell dependency by introducing NavigationHost interface. * DumpRenderTree/chromium/TestNavigationController.cpp: Added. * DumpRenderTree/chromium/TestNavigationController.h: Added. * DumpRenderTree/chromium/TestWebWorker.h: Added. 2010-03-23 Eric Seidel Reviewed by Adam Barth. Add support for revision -> build lookup in buildbot.py and layout test result parsing https://bugs.webkit.org/show_bug.cgi?id=36474 * Scripts/webkitpy/bugzilla_unittest.py: Added a FIXME about sharing code. * Scripts/webkitpy/buildbot.py: - Add support for looking up builds by revision number. - Add support for fetching and parsing results.html files from buildbot. - build_for_revision has an allow_failed_lookups option to work around the fact that our buildbot's xmlrpc calls return failure on old revision numbers. - Add parsing support for twisted directory listings. * Scripts/webkitpy/buildbot_unittest.py: - Unit test all the new code. * Scripts/webkitpy/commands/queries.py: - Add a new results-for command which prints all the results for a given revision (very slow due to slow revision lookup) 2010-03-23 Daniel Bates Reviewed by Adam Roben. https://bugs.webkit.org/show_bug.cgi?id=36048 Detect if the Windows Platform SDK is missing when building with Visual C++ Express Edition and inform the user to download it. * Scripts/webkitdirs.pm: 2010-03-23 Darin Adler Tell Subversion about more directories that expect to have .pyc files. * Scripts/webkitpy: Modified property svn:ignore. * Scripts/webkitpy/irc: Added property svn:ignore. 2010-03-23 Daniel Bates Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=36149 Import the GNU readline interface to modify the behavior of raw_input so as to provide line editing support. In particular this will prevent "delete" characters from appearing in the returned value for function raw_input. * Scripts/webkitpy/user.py: 2010-03-23 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Remove support for Qt v4.4 https://bugs.webkit.org/show_bug.cgi?id=36389 * DumpRenderTree/qt/main.cpp: (main): * QtLauncher/mainwindow.cpp: (MainWindow::MainWindow): 2010-03-22 Csaba Osztrogonác Reviewed by Adam Barth. Make build_webkit_command() pass MAKEFLAGS environment variable to make. https://bugs.webkit.org/show_bug.cgi?id=36440 * Scripts/webkitpy/webkitport.py: * Scripts/webkitpy/webkitport_unittest.py: 2010-03-22 Dirk Pranke Reviewed by Dimitri Glazkov. Change baseline_path() to point to the upstream locations for the Chromium ports. Also change the reabselining scripts to use the correct functions to get the baseline directories, and fix the script's sys.path to pull in simplejson correctly. https://bugs.webkit.org/show_bug.cgi?id=36417 * Scripts/rebaseline-chromium-webkit-tests: - fix sys.path to pick up simplejson properly * Scripts/webkitpy/layout_tests/port/chromium.py: - change baseline_path() to use webkit_baseline_path() - error out correctly if we can't find the chromium base dir * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: - call baseline_path(), not chromium_baseline_path() 2010-03-22 Chris Jerdonek Reviewed by Adam Barth. Refactored the cpu_count() code in executive.py. https://bugs.webkit.org/show_bug.cgi?id=36437 * Scripts/webkitpy/executive.py: - Moved the import of the multiprocessing module to the top of the file rather than importing from within a function. 2010-03-22 Antonio Gomes Unreviewed. Rolling out r56183: http://trac.webkit.org/changeset/56183 https://bugs.webkit.org/show_bug.cgi?id=36244 Need to roll out because this patch will be re-worked by the author and other reviewers agreed on it. 2010-03-22 Chris Jerdonek Reviewed by Adam Barth. Created a function for getting a module-specific logging.logger based on the __file__ value of the module. https://bugs.webkit.org/show_bug.cgi?id=35821 This function allows us to get the module-specific logger for a module without having to hard-code the fully-qualified name of the module in the module itself. The code can be the same in every case: "_log = logutils.get_logger(__file__)". * Scripts/webkitpy/init/logutils.py: Added. - Added a module with a get_logger() function to return a module-specific logger based on the module's __file__ variable. * Scripts/webkitpy/init/logutils_unittest.py: Added. - Added unit tests for logutils.py. * Scripts/webkitpy/init/unittests.py: - Added logutils_unittest to the list of imports. 2010-03-22 Kenneth Rohde Christiansen Reviewed by Simon Hausmann. [Qt] REGRESSION (r56209): fast/media/print-restores-previous-mediatype.htm crashes https://bugs.webkit.org/show_bug.cgi?id=36386 Fix the regression by implementing a null printer for Qt DRT. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::NullPrinter::NullPaintEngine::begin): (WebCore::NullPrinter::NullPaintEngine::end): (WebCore::NullPrinter::NullPaintEngine::type): (WebCore::NullPrinter::NullPaintEngine::drawPixmap): (WebCore::NullPrinter::NullPaintEngine::updateState): (WebCore::NullPrinter::paintEngine): (WebCore::DumpRenderTree::dryRunPrint): 2010-03-20 Martin Robinson Reviewed by Xan Lopez. [GTK] eventSender.zoomPageOut() bug? https://bugs.webkit.org/show_bug.cgi?id=30575 Make zoomPage{In/Out}Callback respect the 1.2f zoom factor that DRT should be using. * DumpRenderTree/gtk/EventSender.cpp: (zoomIn): Added. (zoomOut): Added. (textZoomInCallback): Use zoomIn helper function. (textZoomOutCallback): Use zoomOut helper function. (zoomPageInCallback): Use zoomIn helper function, which respects zoom factor. (zoomPageOutCallback): Use zoomOut helper function, which respects zoom factor. 2010-03-20 Kevin Ollivier [wx] Build fix after recent database API change. * wx/browser/browser.cpp: (MyApp::OnInit): 2010-03-20 Chris Jerdonek Reviewed by Adam Barth. Renamed UnitTestLogStream to TestLogStream in webkitpy. https://bugs.webkit.org/show_bug.cgi?id=36099 TestLogStream is more concise and more consistent with the name of the module (logtesting rather than logunittesting) and its main class (LogTesting rather than LogUnitTesting). * Scripts/webkitpy/init/logtesting.py: - Renamings. * Scripts/webkitpy/style/checker_unittest.py: - Renamings. * Scripts/webkitpy/style_references.py: - Renamings. 2010-03-20 Kevin Ollivier [wx] Build fixes for new method in LayoutTestController. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setSpatialNavigationEnabled): * wx/build/settings.py: 2010-03-20 Dimitri Glazkov Unreviewed, tool fix. Remove vestiges of downstream directory names to unbreak rebaselining tool. * Scripts/webkitpy/layout_tests/port/chromium.py: Changed paths to use WebKit repo. 2010-03-20 Dirk Pranke Reviewed by Dimitri Glazkov. Re-enable the downstream test_expectations overrides file that was disabled in bug 36396 / r56287. https://bugs.chromium.org/show_bug.cgi?id=36401 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-03-19 Dirk Pranke Reviewed by Dimitri Glazkov. Disable the downstream override expectations temporarily to allow us to test that we've upstreamed everything correctly. Also, stop looking at the downstream baselines at all (now you will only be able to update baselines upstream). In theory this should work, but if we need to we can always add the downstream dirs back in. https://bugs.webkit.org/show_bug.cgi?id=36396 * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: 2010-03-19 Dirk Pranke Reviewed by Dimitri Glazkov. fix typo in chromium test expectations overrides routine https://bugs.webkit.org/show_bug.cgi?id=36397 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-03-19 Dirk Pranke Reviewed by Dimitri Glazkov. Flip the Chromium ports to look first for the test expectations in LayoutTests/platform/chromium and only afterwards look in the Chromium repo downstream for overrides. https://bugs.webkit.org/show_bug.cgi?id=36326 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-03-19 James Hawkins Unreviewed. Add myself to the committers list. * Scripts/webkitpy/committers.py: 2010-03-19 Adam Barth Unreviewed. Fix SheriffBot exception lock when we can't retrieve the first build from buildbot. (I'll ask Eric to review this change after the fact, but he's at lunch and I want to get the bot unlocked.) * Scripts/webkitpy/buildbot.py: * Scripts/webkitpy/buildbot_unittest.py: 2010-03-19 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=36380 websocket/tests/frame-lengths.html times out on Tiger bot https://bugs.webkit.org/show_bug.cgi?id=35041 websocket/tests/frame-lengths.html / websocket/tests/simple-stress.html fail on Windows bot Double the timeout (from 15 seconds to 30 seconds). We can increase it more, if necessary - sampling the DRT process on Mac OS X takes much longer anyway, so it's better to avoid timing out than to detect it early. * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setWaitToDump): * DumpRenderTree/mac/LayoutTestControllerMac.mm: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::waitUntilDone): * DumpRenderTree/win/LayoutTestControllerWin.cpp: * Scripts/run-webkit-tests: 2010-03-19 Laszlo Gombos Unreviewed. Buildfix for Qt v4.5. * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::applyZoom): 2010-03-19 Adam Barth Reviewed by Eric Seidel. Operational tweaks to SheriffBot https://bugs.webkit.org/show_bug.cgi?id=36385 These changes aren't pretty, but they're helpful to make SheriffBot work operationally. I plan to iterate in these areas, but I wanted to get this patch landed so I could be running the bot against TOT. * Scripts/webkitpy/commands/sheriffbot.py: * Scripts/webkitpy/irc/ircbot.py: * Scripts/webkitpy/thirdparty/autoinstalled/__init__.py: 2010-03-19 Eric Seidel Reviewed by Adam Barth. Help sheriff-bot avoid warning about flaky tests (and add more unit testing) https://bugs.webkit.org/show_bug.cgi?id=36354 * Scripts/webkitpy/buildbot.py: - Make Build creation easier to Mock and test * Scripts/webkitpy/buildbot_unittest.py: - Test finding green to red transitions and suspect revisions * Scripts/webkitpy/commands/queries.py: - Make what-broke note when builders have only failed once. 2010-03-19 Dirk Pranke Reviewed by Dimitri Glazkov. Fix the rebaselining tool, which was broken by r36324 when I added the concept of overridding expectations. https://bugs.webkit.org/show_bug.cgi?id=36374 * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: 2010-03-19 Adam Barth Reviewed by Eric Seidel. Misc bug fixes to make the SheriffBot actually work https://bugs.webkit.org/show_bug.cgi?id=36355 With these changes, I can actually run the sheriff-bot from start to finish. * Scripts/webkitpy/irc/ircproxy.py: * Scripts/webkitpy/patch/patcher.py: * Scripts/webkitpy/statusserver.py: 2010-03-19 Adam Barth Unreviewed. Actually import the sheriff-bot command so we can run it. Also, move the bot to #webkit-test so it doesn't cause a ruckus while we test it. * Scripts/webkitpy/patch/patcher.py: * Scripts/webkitpy/irc/ircbot.py: 2010-03-19 Adam Barth Reviewed by Eric Seidel. Second cut at SheriffBot https://bugs.webkit.org/show_bug.cgi?id=36353 This patch should contain a complete SheriffBot that's capable of saying reasonable things on IRC. I had to refactor the use of CommitInfo to make the SheriffBot testable, but I did the minimum necessary. We should grow webkitcheckout over time to contain the knowledge of ChangeLogs from scm. * Scripts/webkitpy/commands/sheriffbot.py: * Scripts/webkitpy/commands/sheriffbot_unittest.py: * Scripts/webkitpy/mock_bugzillatool.py: * Scripts/webkitpy/patch/patcher.py: * Scripts/webkitpy/webkitcheckout.py: Added. 2010-03-19 Adam Barth Unreviewed. Fix Hyatt's IRC nickname. * Scripts/webkitpy/committers.py: 2010-03-19 Adam Barth Unreviewed. Add IRC nicknames for the non-reviewer committers. * Scripts/webkitpy/committers.py: 2010-03-19 Adam Barth Unreviewed. More reviewer IRC nicknames. * Scripts/webkitpy/committers.py: 2010-03-19 Adam Barth Unreviewed. Add a bunch of IRC nicknames for reviewers. * Scripts/webkitpy/committers.py: 2010-03-19 Zoltan Horvath Reviewed by Oliver Hunt. Added USE_SYSTEM_MALLOC flag to build-webkit https://bugs.webkit.org/show_bug.cgi?id=21272 Add system-alloc flag to build-webkit. It makes easy to switch between system allocator and TCmalloc. * Scripts/build-webkit: 2010-03-19 Adam Barth Unreviewed "build" fix. Of course, I caused a regression in the file that isn't tested. :( * Scripts/webkitpy/statusserver.py: 2010-03-19 Eric Seidel Reviewed by Adam Barth. Add basic "who-broke-it" command and revision -> broken builder association code https://bugs.webkit.org/show_bug.cgi?id=36352 The "what-broke" command prints builders and what revisions we suspect broke them. who-broke-it prints revisions and what builders we suspect they broke. The sheriff-bot needs this revision to broken builder mapping so this change adds it! * Scripts/webkitpy/buildbot.py: * Scripts/webkitpy/commands/queries.py: 2010-03-19 Eric Seidel Reviewed by Adam Barth. Simplify BuildBot core builder code for easier re-use https://bugs.webkit.org/show_bug.cgi?id=36350 I simply couldn't see anything through all this Yak-hair. * Scripts/webkitpy/buildbot.py: * Scripts/webkitpy/commands/queries.py: 2010-03-19 Adam Barth Reviewed by Eric Seidel. committers.py should know IRC nicknames https://bugs.webkit.org/show_bug.cgi?id=36349 I'll add the actual nicknames in another patch. * Scripts/webkitpy/committers.py: * Scripts/webkitpy/committers_unittest.py: 2010-03-18 Anders Bakken Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=36318 QtLauncher runs as a GuiClient by default in Qt Embedded which will make it try to connect to an existing GuiServer. This patch makes it run like a stand-alone app. * QtLauncher/main.cpp: (LauncherApplication::LauncherApplication): 2010-03-19 Eric Seidel Reviewed by Adam Barth. Move find_green_to_red_transition out of "what-broke" onto Builder for easier re-use https://bugs.webkit.org/show_bug.cgi?id=36345 * Scripts/webkitpy/buildbot.py: * Scripts/webkitpy/commands/queries.py: 2010-03-19 Adam Barth Reviewed by Adam Barth. Actually pass the IRC password to the IRC object https://bugs.webkit.org/show_bug.cgi?id=36346 I wanted to do this before, but both patches were in flight. This patch finally closes the loop and makes the IRCProxy system complete. * Scripts/webkitpy/patch/patcher.py: 2010-03-18 Adam Barth Reviewed by Eric Seidel. Add a StatusServer front end to the SVNRevision table on QueueStatusServer https://bugs.webkit.org/show_bug.cgi?id=36344 No test because Browser was too hard to mock. :( I couldn't figure out how to make Mock be a dictionary as well as an object. * Scripts/webkitpy/statusserver.py: 2010-03-18 Eric Seidel Reviewed by Adam Barth. Split out CommitInfo class and add unit tests https://bugs.webkit.org/show_bug.cgi?id=36343 Move more logic out of "what-broke" into a shared CommitInfo class so that it can be used by other commands and unit tested. * Scripts/webkitpy/commands/queries.py: * Scripts/webkitpy/commitinfo.py: Added. * Scripts/webkitpy/commitinfo_unittest.py: Added. * Scripts/webkitpy/unittests.py: 2010-03-18 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Fix LayoutTests/http/tests/appcache/max-size.html https://bugs.webkit.org/show_bug.cgi?id=36207 Implement setAppCacheMaximumSize() for Qt. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setAppCacheMaximumSize): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-03-18 Adam Barth Reviewed by Eric Seidel. QueueStatusServer should be able to log broken bots https://bugs.webkit.org/show_bug.cgi?id=36341 We need to add a new table to the QueueStatusServer to store persistent information for the SheriffBot. The new table will keep track of which bots each SVN revision broke. * QueueStatusServer/handlers/__init__.py: * QueueStatusServer/handlers/svnrevision.py: Added. * QueueStatusServer/handlers/updatebase.py: Added. * QueueStatusServer/handlers/updatestatus.py: * QueueStatusServer/handlers/updatesvnrevision.py: Added. * QueueStatusServer/index.yaml: * QueueStatusServer/main.py: * QueueStatusServer/model/__init__.py: * QueueStatusServer/model/svnrevision.py: Added. * QueueStatusServer/templates/updatesvnrevision.html: Added. 2010-03-18 Kenneth Rohde Christiansen Reviewed by Darin Adler. Add a new method to the Qt LayoutTestController for changing media type and make the DRT support dry-run printing. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::dryRunPrint): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setMediaType): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-03-18 Dirk Pranke Reviewed by Dimitri Glazkov. Add upstream LayoutTests/platform/chromium* directories to the baseline search path for new-run-webkit-tests in preparation for upstreaming all of the Chromium baselines. Note that this does not actually create the directories themselves, but that's okay. https://bugs.webkit.org/show_bug.cgi?id=36324 * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: 2010-03-18 Alexey Proskuryakov Reviewed by Anders Carlsson. https://bugs.webkit.org/show_bug.cgi?id=36327 Test that a plug-in can override Node methods of its element * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (normalizeOverride): (pluginInvoke): Override "normalize", and call back to let a test know that the plug-in was called. 2010-03-17 Dirk Pranke Reviewed by Dimitri Glazkov. Add the concept of an "overrides" file for expectations so that we can store test_expectations both upstream and downstream for a port that runs both in webkit.org and in a separate repository (like Chromium). Also add some unit tests for the expectations module. https://bugs.webkit.org/show_bug.cgi?id=36249 * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations_test.py: Added. * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-03-18 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. Add an overlay QGraphicsTextItem to QtLauncher so we can display FPS info on the launcher and not on the terminal anymore. [Qt] QtLauncher's FPS info should be displayed on an overlay text item https://bugs.webkit.org/show_bug.cgi?id=36244 * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewGraphicsBased::setFrameRateMeasurementEnabled): (WebViewGraphicsBased::updateFrameRate): * QtLauncher/webview.h: 2010-03-18 Adam Barth Reviewed by Eric Seidel. First cut at SheriffBot https://bugs.webkit.org/show_bug.cgi?id=36253 This patch contains a first attempt at writing a sheriff bot. Currently, we're missing the logic that actually finds the SVN revision numbers to complain about, but once we have that, we'll have the rest of the infrustructure to ping IRC and to file bugs. There's a lot to fill in for the SheriffBot, but this patch give us the framework in which to do it. This patch required a bit of refactoring of AbstractQueue because SheriffBot is the first bot that doesn't process patches (it processes SVN revisions). Accordingly, I've factored out AbstractPatchQueue to hold the parts of AbstractQueue that are specific to dealing with patches. Some of the choices here might not be obvious yet, but we can tweak them as our needs become clearer. * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/commands/queues_unittest.py: * Scripts/webkitpy/commands/sheriffbot.py: Added. * Scripts/webkitpy/commands/sheriffbot_unittest.py: Added. * Scripts/webkitpy/mock_bugzillatool.py: Added a MockIRC object to the mock tool. * Scripts/webkitpy/multicommandtool.py: Added a finalize method so the tool can disconnect from IRC cleanly instead of just droping the socket. * Scripts/webkitpy/multicommandtool_unittest.py: * Scripts/webkitpy/patch/patcher.py: Added support for talking to IRC. * Scripts/webkitpy/unittests.py: We should add a commands/unittests.py file at some point to make the commands module more self-contained. 2010-03-18 Antti Koivisto Reviewed by Kenneth Rohde Christiansen. https://bugs.webkit.org/show_bug.cgi?id=36102 [Qt] Scaling control API for tiled backing store Add animated smooth zooming to Qt launcher when in tiled mode. * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::zoomAnimationFinished): (LauncherWindow::applyZoom): (LauncherWindow::zoomIn): (LauncherWindow::zoomOut): * QtLauncher/webview.h: (WebViewGraphicsBased::graphicsWebView): 2010-03-18 Adam Barth Reviewed by Eric Seidel. Support using IRC accounts with a password https://bugs.webkit.org/show_bug.cgi?id=36287 Add a global option to specify an IRC password so we can use the sheriffbot account (which needs a password). * Scripts/webkitpy/irc/ircbot.py: * Scripts/webkitpy/irc/ircproxy.py: * Scripts/webkitpy/patch/patcher.py: 2010-03-18 Eric Seidel Just fixing missing parenthesis typo, no review. * Scripts/webkitpy/commands/queries.py: '%' has higher precedence than 'or', use parentheses. 2010-03-18 Alexey Proskuryakov Reviewed by Adam Roben and Anders Carlsson. https://bugs.webkit.org/show_bug.cgi?id=36210 plugins/resize-from-plugin.html fails on some platforms Turns out that most platforms don't use "cross-platform" main.cpp. Copied code added for the test to their versions of the file. * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp: (webkit_test_plugin_set_window): * DumpRenderTree/win/TestNetscapePlugin/main.cpp: (NPP_SetWindow): 2010-03-18 Leandro Pereira Reviewed by Kenneth Rohde Christiansen. Add support to run-launcher to open the EFL example browser. http://webkit.org/b/36181 * Scripts/webkitdirs.pm: * Scripts/run-launcher: 2010-03-18 Sergio Villar Senin Reviewed by Xan Lopez. [GTK] Failing tests http/tests/misc/image-blocked-src-change.html & http/tests/misc/image-blocked-src-no-change.html https://bugs.webkit.org/show_bug.cgi?id=36227 * DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewConsoleMessage): print only the file name instead of the whole URI when printing messages with local URI's 2010-03-18 Eric Seidel Reviewed by Adam Barth. Teach what-broke how to look up reviewer and author Committer objects by name https://bugs.webkit.org/show_bug.cgi?id=36264 * Scripts/webkitpy/commands/queries.py: - Add committer_by_name lookups for both reviewer and author - Improve printing in the cases where lookups fail. * Scripts/webkitpy/committers.py: - Add committer_by_name * Scripts/webkitpy/committers_unittest.py: - Test committer_by_name 2010-03-17 Adam Barth Reviewed by Eric Seidel. create-rollout should actually fill out the description https://bugs.webkit.org/show_bug.cgi?id=36261 * Scripts/webkitpy/commands/download.py: The % operator was applied to the wrong string. * Scripts/webkitpy/commands/download_unittest.py: * Scripts/webkitpy/commands/upload_unittest.py: * Scripts/webkitpy/mock_bugzillatool.py: Add support for seeing what we actually do with create_bug. 2010-03-17 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. Accelerated Compositing is now default on QtWebKit so the option in QtLauncher must be true as default. [Qt] QtLauncher's Accelerated Compositing option must be true as default https://bugs.webkit.org/show_bug.cgi?id=36234 * QtLauncher/main.cpp: (LauncherWindow::applyPrefs): (LauncherWindow::toggleAcceleratedCompositing): (LauncherApplication::handleUserOptions): 2010-03-17 Adam Barth Reviewed by Eric Seidel. Commit queue should ignore (probably red) builders when landing rollouts https://bugs.webkit.org/show_bug.cgi?id=36169 When landing a rollout, the builders are probably red, so we need to ignore them in the subprocess too. Also, we might as well update the working copy because we haven't validated anything about the current revision prior to trying to land. This change is testable, but it requires changing the mock executive to log its arguments. That will generate a lot of expectation changes, so I'd like to do that in a separate patch. * Scripts/webkitpy/commands/queues.py: 2010-03-17 Chang Shu Reviewed by Laszlo Gombos. https://bugs.webkit.org/show_bug.cgi?id=36139 [Qt] Clean up cache each time DumpRenderTree starts. This behavior matches other platforms, such as mac and gtk. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): 2010-03-17 Adam Barth Unreviewed. Turns out this needs to be a string. * Scripts/webkitpy/bugzilla.py: 2010-03-17 Eric Seidel Reviewed by Adam Barth. Add more infrastructure for sheriff-bot, including making what-broke more awesome https://bugs.webkit.org/show_bug.cgi?id=36254 * Scripts/webkitpy/bugzilla.py: - Made the various URL methods return None when passed None. * Scripts/webkitpy/bugzilla_unittest.py: - Test that the url methods work as expected. * Scripts/webkitpy/buildbot.py: - Add a static Build.build_url so that its possible to generate a build url without a Build object. - Give users a URL in _fetch_xmlrpc_build_dictionary error message. * Scripts/webkitpy/changelogs.py: - Add a new ChangeLogEntry class to encapsulate entry-parsing logic. - Add is_path_to_changelog to greatly simplify SCM.modified_changelogs code. - Make ChangeLog.parse_latest_entry_from_file a public method. * Scripts/webkitpy/changelogs_unittest.py: - Add tests for new ChangeLog entry parsing. * Scripts/webkitpy/commands/queries.py: - Make "what-broke" not print "ok" builders, only failing ones. - Print much more information on failing builders, including links and authorship/reviewer information. * Scripts/webkitpy/commands/queues_unittest.py: - Use a fake_checkout path since fixing the cwd (as part of fixing scm_unittests.py) was breaking tests. * Scripts/webkitpy/mock_bugzillatool.py: - Move MockSCM away from using os.getcwd() as that was fragile (and wrong). * Scripts/webkitpy/patch/patcher.py: - Remove code which was broken now that this file has moved. - Code was also redundant now that SCM.find_checkout_root() exists. * Scripts/webkitpy/scm.py: - Greatly simplify modified_changelogs now that I understand list comprehensions. - Expect ChangeLogEntry objects instead of raw strings. - Add changed_files_for_revision, committer_email_for_revision and contents_at_revision - Add commit_with_message argument to all sites since someone half-added it before. :( - Get rid of copy/paste code using _status_regexp() * Scripts/webkitpy/scm_unittest.py: - Fix these tests! - Add new tests for new scm code. - Fix spelling of "awsome" to "awesome". 2010-03-17 Daniel Bates Rubber-stamped by David Levin. Add myself to the list of reviewers. * Scripts/webkitpy/committers.py: 2010-03-17 Adam Barth Reviewed by Eric Seidel. Change post-rollout to create-rollout and have it make a new bug instead of posting the rollout to the old bug. https://bugs.webkit.org/show_bug.cgi?id=36250 The new bug blocks the old bug instead of adding more complexity to the old bug. One tricky question is whether to create the bug if we're unable to create a rollout patch. In this patch, we do create the bug, but we might revist this question in the future. * Scripts/webkitpy/bugzilla.py: * Scripts/webkitpy/commands/download.py: * Scripts/webkitpy/commands/download_unittest.py: * Scripts/webkitpy/steps/createbug.py: 2010-03-17 Adam Barth Reviewed by Eric Seidel. Add a way for the bots to send messages to IRC https://bugs.webkit.org/show_bug.cgi?id=36235 We'll use these classes to notify #webkit about bad SVN revisions. This patch just has some skeleton code for us to play with. * Scripts/webkitpy/irc/__init__.py: Added. * Scripts/webkitpy/irc/ircbot.py: Added. A bot that knows how to talk to IRC. * Scripts/webkitpy/irc/ircproxy.py: Added. We need to run the bot on its own thread because the irclib needs its own mainloop. This class provides an abstraction of the threading. * Scripts/webkitpy/irc/messagepump.py: Added. * Scripts/webkitpy/irc/messagepump_unittest.py: Added. * Scripts/webkitpy/irc/threadedmessagequeue.py: Added. A thread-safe message queue for sending messages from the main thread to the IRC thread. * Scripts/webkitpy/irc/threadedmessagequeue_unittest.py: Added. * Scripts/webkitpy/irc/unittests.py: Added. * Scripts/webkitpy/thirdparty/autoinstalled/__init__.py: Autoinstall irclib * Scripts/webkitpy/unittests.py: 2010-03-17 Victor Wang Reviewed by Dimitri Glazkov. Fix image_diff syntax in webkitpy/port/base.py. The syntax is wrong if diff_filename is specified. https://bugs.webkit.org/show_bug.cgi?id=36230 * Scripts/webkitpy/layout_tests/port/base.py: 2010-03-16 Diego Gonzalez Reviewed by Kenneth Christiansen. Provide to QtLauncher a way to change the ViewportUpdateMode when it's in graphics based mode. [Qt] Make QtLaucher able to select the ViewportUpdateMode https://bugs.webkit.org/show_bug.cgi?id=36175 * QtLauncher/main.cpp: (LauncherWindow::selectViewportUpdateMode): (LauncherWindow::createChrome): 2010-03-17 Zoltan Horvath Reviewed by Darin Adler. Ambiguous error message when building for unspecified platform https://bugs.webkit.org/show_bug.cgi?id=30203 Add an extra line information to the error message. * Scripts/webkitdirs.pm: 2010-03-16 Adam Barth No review, rolling out r56044. http://trac.webkit.org/changeset/56044 https://bugs.webkit.org/show_bug.cgi?id=36048 This patch broke Windows Debug (Tests) * Scripts/webkitdirs.pm: 2010-03-16 John Abd-El-Malek Reviewed by Darin Fisher. Give keyboard focus to PluginDocuments by default https://bugs.webkit.org/show_bug.cgi?id=36147 * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginAllocate): * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h: * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): (NPP_SetWindow): (handleEventCarbon): (handleEventCocoa): 2010-03-16 Sam Weinig Reviewed by Mark Rowe. Fix run-webkit-httpd on Windows. * Scripts/webkitperl/httpd.pm: 2010-03-16 Alexey Proskuryakov Tiger build fix. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginGetProperty): Added more type casts to shut down warnings. 2010-03-16 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=36184 YouTube video resizing doesn't work with OOP plug-ins Added a resizeTo() method, which calls resizePlugin() in JS with the same arguments, and a lastSetWindowArguments property, which returns a string describing the last NPWindow passed to NPN_SetWindow. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginGetProperty): (testResizeTo): (pluginInvoke): * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h: * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_SetWindow): 2010-03-16 Joanmarie Diggs Reviewed by Xan Lopez. https://bugs.webkit.org/show_bug.cgi?id=35504 [Gtk] Evaluate and fix AtkTable for layout tables Implements rowCount and columnCount for Gtk in DRT. * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::rowCount): (AccessibilityUIElement::columnCount): 2010-03-15 Eric Seidel Reviewed by Adam Barth. Add "what-broke" command for debugging when the tree broke https://bugs.webkit.org/show_bug.cgi?id=36157 This is another step towards automated sheriffing of the webkit tree. With this logic our scripts are able to determine what revision broke the tree. Buildbot should do this for us, but unfortunately buildbot doesn't expose this kind of aggregate information. * Scripts/webkitpy/buildbot.py: - Add new Builder and Build classes (which will eventually replace the custom dictionaries previously used). - Split out more network logic into _fetch methods which will eventually be their own class for mocking. - Use XMLRPC to communicate with the buildbot master instead of scraping build pages. * Scripts/webkitpy/buildbot_unittest.py: - Test the newly added buildbot classes. * Scripts/webkitpy/commands/queries.py: - Add an experimental what-broke command. 2010-03-15 Daniel Bates Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=36048 Detect if the Windows Platform SDK is missing when building with Visual C++ Express Edition and inform the user to download it. * Scripts/webkitdirs.pm: 2010-03-15 Adam Barth Reviewed by Eric Seidel. Let commit-queue land rollout patches even when the tree is red https://bugs.webkit.org/show_bug.cgi?id=36155 Now the commit-queue will land patches whose name begins with "ROLLOUT " even if the tree is red. The patches still go through the usual build and test process, but they can be landed while the tree is on fire. * Scripts/webkitpy/bugzilla.py: * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/commands/queues_unittest.py: * Scripts/webkitpy/commands/queuestest.py: * Scripts/webkitpy/mock_bugzillatool.py: 2010-03-15 Adam Barth Reviewed by Eric Seidel. Add webkit-patch post-rollout to upload rollouts to bugs.webkit.org for easy committing https://bugs.webkit.org/show_bug.cgi?id=36154 This new command is a mashup of prepare-rollout and post. This command will be used by an experimental bot to post rollouts of patches that break things to bugs.webkit.org where they can be landed with the greatest of ease. * Scripts/webkitpy/commands/download.py: * Scripts/webkitpy/commands/download_unittest.py: * Scripts/webkitpy/steps/__init__.py: * Scripts/webkitpy/steps/postdiffforrevert.py: Added. 2010-03-15 Adam Barth Reviewed by Eric Seidel. webkit-patch rollout should error out on conflicts https://bugs.webkit.org/show_bug.cgi?id=36151 Instead of blindingly plowing ahead, we now throw an exception if there are conflicts after applying a reverse diff. * Scripts/webkitpy/scm.py: 2010-03-15 Chris Fleizach Unreviewed layout test fix. VO not able to perform a VO-spacebar on facebook links https://bugs.webkit.org/show_bug.cgi?id=36132 GTK needs to implement press for this test to work. * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::press): 2010-03-15 Chris Fleizach Unreviewed layout test fix. VO not able to perform a VO-spacebar on facebook links https://bugs.webkit.org/show_bug.cgi?id=36132 Windows needs to implement press in DRT. * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::press): 2010-03-15 Chris Fleizach Unreviewed. Fix break of layout tests on win and gtk. VO not able to perform a VO-spacebar on facebook links https://bugs.webkit.org/show_bug.cgi?id=36132 Attempting to implement press action for windows and gtk. * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::press): * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::press): 2010-03-15 Chris Fleizach Reviewed by Beth Dakin. VO not able to perform a VO-spacebar on facebook links https://bugs.webkit.org/show_bug.cgi?id=36132 * DumpRenderTree/AccessibilityUIElement.cpp: (pressCallback): (AccessibilityUIElement::getJSClass): * DumpRenderTree/AccessibilityUIElement.h: * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::press): * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::press): * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::press): 2010-03-15 Mark Rowe Add a new build slave to replace the existing SnowLeopard Leaks build slave which appears to be suffering a slow and painful death at the hands of its graphics hardware. * BuildSlaveSupport/build.webkit.org-config/config.json: 2010-03-15 Dirk Pranke Reviewed by Alexey Proskuryakov. Fix a minor case where we'd deference a null pointer if we tried to run new-run-webkit-tests on an unsupported platform (e.g. Cygwin's python version). https://bugs.webkit.org/show_bug.cgi?id=36076 * Scripts/webkitpy/layout_tests/port/factory.py: 2010-03-15 Darin Adler Tell Subversion about more directories that expect to have .pyc files. * Scripts/webkitpy/layout_tests: Added property svn:ignore. * Scripts/webkitpy/layout_tests/port: Added property svn:ignore. 2010-03-15 Adam Barth Reviewed by Darin Adler. Operational scripts from running the EWS https://bugs.webkit.org/show_bug.cgi?id=36097 These are the scripts I use to manage the EWS on EC2. If someone other than me wants to run the EWS, these scripts might be helpful. * EWSTools/boot.sh: Added. * EWSTools/create-webkit-git: Added. * EWSTools/screen-config: Added. * EWSTools/start-queue.sh: Added. 2010-03-14 Adam Barth Unreviewed. Fix the webkit-patch bots. Turns out they need the path of the main script to run properly. * Scripts/webkit-patch: * Scripts/webkitpy/patch/patcher.py: 2010-03-14 Darin Adler Tell Subversion about more directories that expect to have .pyc files. * Scripts/webkitpy/init: Added property svn:ignore. * Scripts/webkitpy/patch: Added property svn:ignore. * Scripts/webkitpy/thirdparty: Added property svn:ignore. * Scripts/webkitpy/thirdparty/autoinstalled: Added property svn:ignore. 2010-03-14 Antti Koivisto Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=35146 Support tiled backing store QtLauncher support and build flag in build-webkit. * QtLauncher/main.cpp: (LauncherWindow::applyPrefs): (LauncherWindow::toggleTiledBackingStore): (LauncherWindow::toggleResizesToContents): (LauncherWindow::createChrome): (LauncherApplication::handleUserOptions): * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewGraphicsBased::setResizesToContents): (WebViewGraphicsBased::resizeEvent): * QtLauncher/webview.h: * Scripts/build-webkit: 2010-03-13 Chris Jerdonek Reviewed by Adam Barth. The webkit-patch script now displays a warning if run using a version of Python less than 2.5. This will help users understand why webkit-patch is erroring out if they are using Python 2.4, for example. https://bugs.webkit.org/show_bug.cgi?id=31533 * Scripts/webkit-patch: - Moved most of the file contents to webkitpy/patch/patcher.py so the Python version can be checked before interpreting any code that can cause the script to error out. - Added a configure_logging() method to enable any version warnings to show up. - Added a main() method with calls to configure_logging(), check_version(), and the main webkit patch method. * Scripts/webkitpy/patch/__init__.py: Copied from WebKitTools/QueueStatusServer/filters/__init__.py. - This file is required to make a folder a package. * Scripts/webkitpy/patch/patcher.py: Added. - Moved code from Scripts/webkit-patch. 2010-03-13 Chris Jerdonek Reviewed by Adam Barth. Changed test-webkitpy so that messages logged as a side-effect of unit-testing code do not get displayed to the screen. These messages clutter up the unit test results if not filtered out. https://bugs.webkit.org/show_bug.cgi?id=35835 * Scripts/test-webkitpy: - Adjusted the configure_logging() method to filter out any log messages from webkitpy. - Also added an INFO message stating that most console logging is getting suppressed. * Scripts/webkitpy/init/versioning.py: - Added a log parameter to the check_version() method. * Scripts/webkitpy/init/versioning_unittest.py: - Qualified a call to check_version() with the parameter names. 2010-03-13 Chris Jerdonek Reviewed by Adam Barth. The test-webkitpy script now warns the user if the script is being run using a Python version different from the minimum version the webkitpy package was meant to support. https://bugs.webkit.org/show_bug.cgi?id=35788 Warning developers if their Python version is too low will help them understand why test-webkitpy is failing. Secondly, warning developers if their Python version is higher than the minimum will help them understand that their changes may not be okay for the minimum supported version, even if test-webkitpy is passing. * Scripts/test-webkitpy: - Moved the "from ..._unittest import *" lines to the new file Scripts/webkitpy/unittests.py. This will allow the version-check warning to be displayed even if an error occurs while interpreting (i.e. importing) the unit test code. - Added configure_logging() to configur logging for test-webkitpy. - Added an init() method to configure logging and check the current Python version. * Scripts/webkitpy/init/unittests.py: Added. - Added a file to import all unit test modules in the webkitpy.init package. * Scripts/webkitpy/init/versioning.py: Added. - Added a _MINIMUM_SUPPORTED_PYTHON_VERSION variable and set it equal to 2.5. - Added a compare_version() method to compare the current Python version against a target version. - Added a check_version() method to check the current Python version against the current minimum supported version, and to log a warning message if the check fails. * Scripts/webkitpy/init/versioning_unittest.py: Added. - Added unit tests for the functions in versioning.py. * Scripts/webkitpy/style/unittests.py: - Fixed/updated a code comment. * Scripts/webkitpy/unittests.py: Added. - Moved the "from ..._unittest import *" lines from test-webkitpy. 2010-03-13 Chris Jerdonek Reviewed by Adam Barth. Moved all code in webkitpy/__init__.py to another location. https://bugs.webkit.org/show_bug.cgi?id=35828 Keeping webkitpy/__init__.py free of non-trivial code allows calling code to import initialization code from webkitpy before any errors or log messages occur due to code in __init__.py. Such initialization code can include things like version checking code and logging configuration code. This also lets us move the autoinstall initialization code to a location where it only executes if it is needed -- something we have done in this patch. * Scripts/webkitpy/__init__.py: - Moved all executable code to the following location: webkitpy/thirdparty/autoinstalled/__init__.py - Added a code comment to keep this file free of non-trivial code. * Scripts/webkitpy/bugzilla.py: - Updated mechanize import statement. * Scripts/webkitpy/networktransaction.py: - Updated mechanize import statement. * Scripts/webkitpy/networktransaction_unittest.py: - Updated mechanize import statement. * Scripts/webkitpy/statusserver.py: - Updated mechanize import statement. * Scripts/webkitpy/thirdparty/autoinstalled/__init__.py: Added. - Copied the code from webkitpy/__init__.py and updated it as necessary. 2010-03-13 Chris Jerdonek Reviewed by Adam Barth. Moved webkitpy/mock.py into webkitpy/thirdparty since it is third-party code. https://bugs.webkit.org/show_bug.cgi?id=35499 Updated the import statement in all of the below except where noted. * Scripts/webkitpy/bugzilla_unittest.py: * Scripts/webkitpy/commands/commandtest.py: * Scripts/webkitpy/commands/download_unittest.py: * Scripts/webkitpy/commands/early_warning_system_unittest.py: * Scripts/webkitpy/commands/queries_unittest.py: * Scripts/webkitpy/commands/queues_unittest.py: * Scripts/webkitpy/commands/queuestest.py: * Scripts/webkitpy/commands/upload.py: * Scripts/webkitpy/commands/upload_unittest.py: * Scripts/webkitpy/commands_references.py: Added. - Added a file containing an absolute import of Mock so that the imports in the commands folder can import from this file (similar to style_references.py). This helps limit the number of affected files in future refactorings. * Scripts/webkitpy/credentials_unittest.py: * Scripts/webkitpy/mock.py: Removed. - Moved to Scripts/webkitpy/thirdparty. * Scripts/webkitpy/mock_bugzillatool.py: * Scripts/webkitpy/patchcollection_unittest.py: * Scripts/webkitpy/steps/closebugforlanddiff_unittest.py: * Scripts/webkitpy/steps/steps_unittest.py: * Scripts/webkitpy/steps/updatechangelogswithreview_unittests.py: * Scripts/webkitpy/steps_references.py: Added. - Added a file containing an absolute import of Mock so that the imports in the steps folder can import from this file (similar to style_references.py). This helps limit the number of affected files in future refactorings. * Scripts/webkitpy/thirdparty/mock.py: Copied from WebKitTools/Scripts/webkitpy/mock.py. - Also eliminated trailing white space and carriage returns. 2010-03-12 Robert Hogan Reviewed by Adam Barth. Amend incorrect typo patch for QtLauncher. https://bugs.webkit.org/show_bug.cgi?id=35877 * QtLauncher/webview.cpp: (WebViewGraphicsBased::setFrameRateMeasurementEnabled): 2010-03-13 Victor Wang Add appengine app to host and serve webkit layout test results. The app allows you post test result files (json) and serve them up. Chromium flakiness dashboard will first use this app to host results.json and expectations.json, but the files hosted by this app are not limited to chromium results or json files. It can be used to host other files if needed. https://bugs.webkit.org/show_bug.cgi?id=35944 * TestResultServer: Added. * TestResultServer/app.yaml: Added. * TestResultServer/handlers: Added. * TestResultServer/handlers/__init__.py: Added. * TestResultServer/handlers/menu.py: Added. * TestResultServer/handlers/testfilehandler.py: Added. * TestResultServer/index.yaml: Added. * TestResultServer/main.py: Added. * TestResultServer/model: Added. * TestResultServer/model/__init__.py: Added. * TestResultServer/model/testfile.py: Added. * TestResultServer/stylesheets: Added. * TestResultServer/stylesheets/form.css: Added. * TestResultServer/stylesheets/menu.css: Added. * TestResultServer/stylesheets/testfile.css: Added. * TestResultServer/templates: Added. * TestResultServer/templates/menu.html: Added. * TestResultServer/templates/showfilelist.html: Added. * TestResultServer/templates/uploadform.html: Added. 2010-03-13 Dimitri Glazkov Reviewed by David Levin. new-run-webkit-tests fails with --debug option. https://bugs.webkit.org/show_bug.cgi?id=36067 * Scripts/webkitpy/layout_tests/port/mac.py: 2010-03-13 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. Add "Show FPS" menu option to QtLauncher. [Qt] QtLauncher need a menu option to show/hide FPS https://bugs.webkit.org/show_bug.cgi?id=35794 * QtLauncher/main.cpp: (LauncherWindow::showFPS): (LauncherWindow::createChrome): 2010-03-13 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. Add a "Toggle FullScreen" option to QtLauncher Menu. [Qt] QtLauncher needs an option to toggle FullScreen Mode https://bugs.webkit.org/show_bug.cgi?id=35755 * QtLauncher/main.cpp: (LauncherWindow::init): (LauncherWindow::eventFilter): (LauncherWindow::initializeView): (LauncherWindow::toggleFullScreenMode): (LauncherWindow::createChrome): 2010-03-12 Dirk Pranke Reviewed by Dimitri Glazkov. Fix typo in websocket_server (path_from_base instead of path_from_chromium_base). https://bugs.webkit.org/show_bug.cgi?id=36074 * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-03-12 Dirk Pranke Reviewed by Adam Barth. new-run-webkit-tests --new-baseline doesn't work at all. It attempts to call a method that isn't defined. To fix it, I removed the unnecessary and unnecessarily confusing 'platform' argument to the test_type constructor and use the Port object that is passed in instead, since we are only ever generating a baseline from the port that is currently executing. https://bugs.webkit.org/show_bug.cgi?id=36046 * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: 2010-03-12 Dirk Pranke Reviewed by Adam Barth. Fix new-run-webkit-tests --run-singly This script option is currently broken - the script attempts to dereference methods and variables that don't exist, which causes the Chromium Linux valgrind bot to be quite unhappy. This has been broken since r54449 when I renamed Port.start_test_driver to Port.start_driver. https://bugs.webkit.org/show_bug.cgi?id=36042 * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: 2010-03-12 Gustavo Noronha Silva Fix critical being printed to stderr on every test. This is because the jar is only being created when soup hits the HTTP path. We should reconsider the time of its creation. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): 2010-03-12 Adam Roben Teach prepare-ChangeLog to find modified selectors in CSS files Reviewed by Tim Hatcher. Fixes prepare-ChangeLog should extract modified selectors from CSS files * Scripts/prepare-ChangeLog: (get_function_line_ranges): Call get_selector_line_ranges_for_css for .css files. (get_selector_line_ranges_for_css): Added. Finds selectors and their line ranges and returns them. 2010-03-12 Gustavo Noronha Silva Build fix (for EWS). Make sure the new code builds on older soup. Thanks to Dan Winship. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setAlwaysAcceptCookies): 2010-03-12 Gustavo Noronha Silva Reviewed by Eric Carlson. [GTK] DRT does not handle cookie policy setting https://bugs.webkit.org/show_bug.cgi?id=36056 Implement cookie accept policy setting for GTK+'s LayoutTestController. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setAlwaysAcceptCookies): 2010-03-12 Adam Langley Reviewed by Dimitri Glazkov. [chromium]: update Linux layout test scripts for RedHat like systems. (Tested on Fedora 12.) https://bugs.webkit.org/show_bug.cgi?id=35867 * Scripts/webkitpy/layout_tests/port/chromium_linux.py: 2010-03-12 Adam Roben Make svn-create-patch's diffs of ObjC header files more readable Fixes . Reviewed by John Sullivan. * Scripts/svn-create-patch: (diffOptionsForFile): Added. Returns the options that should be passed to diff for the given file. All the options are the same for all files, except for the option to specify which lines should be used as hunk headers. (generateDiff): Use diffOptionsForFile to get the options to pass to diff. (hunkHeaderLineRegExForFile): Added. Returns the regular expression that should be used by diff to identify lines that should be included after the "@@" in the hunk header lines of the diff. For ObjC[++] source files, we use any lines starting with -, +, or @implementation/@interface/@protocol. For ObjC[++] header files (which we assume to be any .h files in a mac/ or objc/ directory), we use any lines starting with @implementation/@interface/@protocol. 2010-03-12 Jochen Eisinger Reviewed by Jeremy Orlow. Introduce setWillSendRequestClearHeader to LayoutTestController to selectively remove headers in willSendRequest. Used in http/tests/security/no-referrer.html https://bugs.webkit.org/show_bug.cgi?id=35920 * DumpRenderTree/LayoutTestController.cpp: (setWillSendRequestClearHeaderCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: (LayoutTestController::willSendRequestClearHeaders): (LayoutTestController::setWillSendRequestClearHeader): * DumpRenderTree/mac/ResourceLoadDelegate.mm: (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]): * DumpRenderTree/win/ResourceLoadDelegate.cpp: (ResourceLoadDelegate::willSendRequest): 2010-03-11 Fumitoshi Ukai Unreviewed. Fix typo in websocket_server.py * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-03-11 Garret Kelly Reviewed by Darin Adler. Fixing minor typo in the commit queue status page. https://bugs.webkit.org/show_bug.cgi?id=35979 * Scripts/webkitpy/commands/queues.py: 2010-03-11 Fumitoshi Ukai Unreviewed. Fix for WebSocket layout test runner on chromium/win port. * Scripts/webkitpy/layout_tests/port/websocket_server.py: register_cygwin and set CYGWIN_PATH 2010-03-11 Mark Rowe Reviewed by David Kilzer. Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version Default to using the appropriate SDK if the target Mac OS X version is not the current Mac OS X version. * DumpRenderTree/mac/Configurations/Base.xcconfig: 2010-03-11 Victor Wang Reviewed by dglazkov@chromium.org. rebaseline_chromium_webkit_tests can generate new baselines for all platforms so it needs to know two ports in order to work correctly: the port that the script is running on and the port that it generates new baselines for. Update rebaselining tool to handle both port correctly. https://bugs.webkit.org/show_bug.cgi?id=36032 * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: 2010-03-11 Mark Rowe Reviewed by Tim Hatcher. Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version Introduce TARGET_MAC_OS_X_VERSION_MAJOR to represent the Mac OS X version that is being targeted. It defaults to the current Mac OS X version unless otherwise specified. Key off TARGET_MAC_OS_X_VERSION_MAJOR where we'd previously been keying off MAC_OS_X_VERSION_MAJOR. Explicitly map from the target Mac OS X version to the preferred compiler since Xcode's default compiler choice may not be usable when targetting a different Mac OS X version. Key off TARGET_GCC_VERSION rather than MAC_OS_X_VERSION_MAJOR in locations where we'd previously been keying off MAC_OS_X_VERSION_MAJOR but the decision is really related to the compiler version being used. * DumpRenderTree/mac/Configurations/Base.xcconfig: * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: * DumpRenderTree/mac/DumpRenderTree.mm: Wrap the include of mach-o/getsect.h in 'extern "C"' as some versions of the header in older SDKs do not do this inside the header. 2010-03-11 Alexey Proskuryakov Reviewed by Geoff Garen. https://bugs.webkit.org/show_bug.cgi?id=35965 Crash when passing an object returned from plug-in back to the plug-in Made rememberedObject a member of PluginObject. A plug-in must not use its references to browser NPObjects after being destroyed, but this wasn't the case with static variable. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginInvoke): (pluginInvalidate): (pluginAllocate): (pluginDeallocate): * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h: 2010-03-11 Simon Fraser Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=35905 REGRESSION(55699?): media/video-no-autoplay.html times out on Leopard Commit Bot Make sure we reset the WebGL preference, so that WebGL doesn't get left on after being enabled via layoutTestController.overridePreference(), which in turn causes accelerated compositing to be enabled on Leopard when we don't want it to be. * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): 2010-03-10 Dirk Pranke Reviewed by Dimitri Glazkov. rebaseline_chromium_webkit_tests doesn't handle other plaforms correctly (e.g., if you run on the Mac platform and try to rebaseline the WIN results, the result gets written into platform/mac instead of platform/chromium-win). Also, this script doesn't work on non-Chromium ports, so we need to fix that at some point. https://bugs.webkit.org/show_bug.cgi?id=35982 * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: 2010-03-10 Daniel Bates Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=35840 Updates the subroutine builtDylibPathForName() so that it adds the "d" suffix to the QtWebKit library name on Windows. This change makes run-launcher work again under Windows. Moreover, this change corresponds to the change made in change- set 53924 . * Scripts/webkitdirs.pm: 2010-03-10 Adam Roben Roll out the prepare-ChangeLog part of r55870 This change wasn't needed (prepare-ChangeLog calls svn-create-patch when it's asked to print out diffs for the user) and was screwing up its ability to find changed function names. * Scripts/prepare-ChangeLog: (diffCommand): Change the options we pass to svn-diff back to their pre-r55870 form. 2010-03-10 Robert Hogan Reviewed by Simon Hausmann. [Qt] Add Support for WebKitEnableCaretBrowsing to Qt DRT Unskip test fast/events/multiline-link-arrow-navigation.html https://bugs.webkit.org/show_bug.cgi?id=35593 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::overridePreference): (LayoutTestController::setCaretBrowsingEnabled): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-03-10 Robert Hogan Reviewed by Holger Freyther. QtLauncher: Fix typo in conditional statement in WebViewGraphicsBased::setFrameRateMeasurementEnabled. '=' should be '=='! https://bugs.webkit.org/show_bug.cgi?id=35877 * QtLauncher/webview.cpp: (WebViewGraphicsBased::setFrameRateMeasurementEnabled): 2010-03-10 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored and cleaned up the code for unit-testing logging. https://bugs.webkit.org/show_bug.cgi?id=35845 * Scripts/webkitpy/init/logtesting.py: - Added more information to the module docstring. - Added an assertMessages() method to the UnitTestLogStream class. This simplifies the calling code. - Renamed the UnitTestLog class to LogTesting, and reformulated it as follows: - Moved the logging configuration code from the __init__ method to a new static setUp() method. - Documented the __init__ method to be private. - Improved the code so that the root logger does not have its logging level changed. Instead we set the handler's level. This makes the unit testing more unintrusive. - Updated the assertMessages() method to call the UnitTestLogStream class's assertMessages() method. - More fully documented the class. * Scripts/webkitpy/style/checker.py: - Added a logger parameter to the configure_logging() method. This allows us to prevent test messages from being sent to the root logger during unit testing, which may be rendering to the screen, etc. - Simplified the code by removing the _LevelLoggingFilter class. - Replaced the _LevelLoggingFilter class with a one-line lambda expression in configure_logging(). * Scripts/webkitpy/style/checker_unittest.py: - Changed relative imports to absolute to comply more with PEP8. - In the ConfigureLoggingTest class: - Changed the setUp() method to prevent test messages from being propagated to the root logger. - Changed the _log() method to a data attribute. - Updated to accommodate changes to logtesting.py. * Scripts/webkitpy/style_references.py: - Updated an import statement. 2010-03-10 Evan Martin Reviewed by Darin Adler. Python code for GDB 7 to support native printing of some WebCore types. * gdb/webcore.py: Added. 2010-03-10 Adam Roben Make svn-create-patch and prepare-ChangeLog show better section headings for ObjC files This makes the text at the end of each "@@" line in a diff actually show the ObjC method or interface that contains the change, rather than whatever the most-recently-defined C function was. Fixes . Reviewed by John Sullivan. * Scripts/svn-create-patch: Pass -F'^[-+@]' to diff so that it will treat any lines starting with -, +, or @ as section heading lines. This works well for ObjC files, and shouldn't affect other types of files. * Scripts/prepare-ChangeLog: Changed the options passed to diff to match those used in svn-create-patch. 2010-03-10 Simon Hausmann Reviewed by Tor Arne Vestbø. Link QtLauncher against the WebKit library using a relative rpath. This makes the launcher and the lib relocatable. * QtLauncher/QtLauncher.pro: 2010-03-10 Holger Hans Peter Freyther Rubber-stamped by Simon Hausmann. [iExploder] Add new CSS Properties and HTML Attributes The update-iexploder-cssproperties script was used to update the various input files. The autobuffer HTML Attribute was removed from WebKit and I manually added it back to the htmlattrs.in like we have done it for other attributes in the past. * iExploder/htdocs/cssproperties.in: * iExploder/htdocs/htmlattrs.in: * iExploder/htdocs/htmltags.in: 2010-03-09 Fumitoshi Ukai Unreviewed. Obvious fix for --cgi-paths of pywebsocket. * Scripts/run-webkit-websocketserver: * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-03-09 Jakub Wieczorek Unreviewed. Adding myself to committers.py. * Scripts/webkitpy/committers.py: 2010-03-09 Dirk Pranke Reviewed by Nate Chapin. Fix --clobber-old-results in new-run-webkit-tests. https://bugs.webkit.org/show_bug.cgi?id=35778 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-03-09 Andy Estes Reviewed by Adele Peterson. Add the ability to dispatch scroll wheel events in DRT. This was necessary in order to write a test for https://bugs.webkit.org/show_bug.cgi?id=34700. * DumpRenderTree/mac/EventSendingController.mm: Add support for two new methods to EventSender: mouseScrollBy(x, y) and continuousMouseScrollBy(x, y). The API to generate scroll events on the mac was added in 10.5, so these methods are NOOPs on Tiger. (+[EventSendingController isSelectorExcludedFromWebScript:]): Regiester mouseScrollByX:andY: and continuousMouseScrollByX:andY: (+[EventSendingController webScriptNameForSelector:]): Map JavaScript method names to ObjC selectors. (-[EventSendingController mouseScrollByX:andY:continuously:]): Generate a scroll wheel event using CGEventCreateScrollWheelEvent() and dispatch it to WebKit. (-[EventSendingController continuousMouseScrollByX:andY:]): Generate a continuous scrolling event by x and y pixels. (-[EventSendingController mouseScrollByX:andY:]): Generate a notchy scrolling event by x and y lines. 2010-03-09 Chris Fleizach DRT build fix for Tiger. No review. AX: hit testing a list box doesn't work anymore https://bugs.webkit.org/show_bug.cgi?id=35893 * DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::elementAtPoint): 2010-03-09 Chris Fleizach Reviewed by Darin Adler. AX: hit testing a list box doesn't work anymore https://bugs.webkit.org/show_bug.cgi?id=35893 * DumpRenderTree/AccessibilityController.cpp: (getElementAtPointCallback): (AccessibilityController::getJSClass): * DumpRenderTree/AccessibilityController.h: * DumpRenderTree/gtk/AccessibilityControllerGtk.cpp: (AccessibilityController::elementAtPoint): * DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::elementAtPoint): * DumpRenderTree/win/AccessibilityControllerWin.cpp: (AccessibilityController::elementAtPoint): 2010-03-03 Fumitoshi Ukai Reviewed by Alexey Proskuryakov. pywebsocket should support html and cgi in the same directory. https://bugs.webkit.org/show_bug.cgi?id=34879 Import pywebsocket 0.4.9.2 Specify --server-host 127.0.0.1, so that it only binds listening socket to 127.0.0.1 to prevent access from non-localhost. Change --cgi-paths from /websocket/tests/cookies to /websocket/tests, because pywebsocket 0.4.9.2 supports html and cgi in the same directory and only executable (httponly-cookies.pl) will be handled as cgi script. * Scripts/run-webkit-tests: * Scripts/run-webkit-websocketserver: * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/thirdparty/pywebsocket/README.webkit: * Scripts/webkitpy/thirdparty/pywebsocket/example/echo_client.py: * Scripts/webkitpy/thirdparty/pywebsocket/example/handler_map.txt: Added. * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/standalone.py: * Scripts/webkitpy/thirdparty/pywebsocket/mod_pywebsocket/util.py: * Scripts/webkitpy/thirdparty/pywebsocket/setup.py: * Scripts/webkitpy/thirdparty/pywebsocket/test/test_util.py: * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/README: Added. * Scripts/webkitpy/thirdparty/pywebsocket/test/testdata/hello.pl: Added. 2010-03-09 Chris Jerdonek Reviewed by Shinichiro Hamaji. Simplified check-webkit-style's argument parsing code by removing support for the vestigial "extra flag values" parameter. https://bugs.webkit.org/show_bug.cgi?id=34677 The "extra flag values" parameter was needed before WebKit forked check-webkit-style from Google. It was used to pass through the option parser those command-line flags that WebKit required but that Google's parser did not support (the --git-commit flag in particular). We can remove the parameter now because it is no longer needed and unnecessarily clutters the argument-parsing code. * Scripts/webkitpy/style/optparser.py: - Removed the extra_flag_values parameter from the CommandOptionValues class's constructor. - Removed the extra_flags parameter from the ArgumentParser class's parse() method. * Scripts/webkitpy/style/optparser_unittest.py: - Removed from the unit tests all references to the extra_flag_values variable. 2010-03-08 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add EventSender https://bugs.webkit.org/show_bug.cgi?id=35859 Add EventSender classes, which are going to be used by DumpRenderTree Chromium port. These files are based on: - src/webkit/tools/test_shell/event_sending_controller.cc - src/webkit/tools/test_shell/event_sending_controller.h of Chromium rev.40492. * DumpRenderTree/chromium/EventSender.cpp: Added. * DumpRenderTree/chromium/EventSender.h: Added. 2010-03-08 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add PlainTextController and TextInputController https://bugs.webkit.org/show_bug.cgi?id=35852 Add PlainTextController and TextInputController classes, which are going to be used by DumpRenderTree Chromium port. These files are based on: - src/webkit/tools/test_shell/plain_text_controller.{cc,h} and - src/webkit/tools/test_shell/text_input_controller.{cc,h} of Chromium rev.40492. * DumpRenderTree/chromium/PlainTextController.cpp: Added. * DumpRenderTree/chromium/PlainTextController.h: Added. * DumpRenderTree/chromium/TextInputController.cpp: Added. * DumpRenderTree/chromium/TextInputController.h: Added. 2010-03-08 Dumitru Daniliuc Unreviewed, Chromium build fix. Reverting r55689. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-03-08 Fumitoshi Ukai Reviewed by Adam Barth. Fix webkit-patch post and land to work well with security bug https://bugs.webkit.org/show_bug.cgi?id=35733 Bugzilla requires authentication to access security bug page, so call authenticate() if it failed to fetch bug page. * Scripts/webkitpy/bugzilla.py: 2010-03-04 Dirk Pranke Reviewed by Dimitry Glazkov. Fix --clobber-old-results in new-run-webkit-tests. https://bugs.webkit.org/show_bug.cgi?id=35778 * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-03-08 Brady Eidson Reviewed by NOBODY (but suggested by Steve Falkenburg and fixing a boneheaded mistake on my part last week) Followup to https://bugs.webkit.org/show_bug.cgi?id=35532 * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::apiTestGoToCurrentBackForwardItem): Can't pass in a null BOOL to WebKit APIs. 2010-03-08 Chris Jerdonek Unreviewed. Fixed incorrect import statement in validate-committer-lists: webkitpy.BeautifulSoup -> webkitpy.thirdparty.BeautifulSoup. * Scripts/validate-committer-lists: 2010-03-08 Jian Li Reviewed by Dmitry Titov. Blob.slice support. https://bugs.webkit.org/show_bug.cgi?id=32993 Add ENABLE_BLOB_SLICE feature define and flag for build-webkit. It is currently only turned on for Mac. * Scripts/build-webkit: 2010-03-08 Gustavo Noronha Silva No review, rolling out r55662. http://trac.webkit.org/changeset/55662 https://bugs.webkit.org/show_bug.cgi?id=35863 Need to be coordinated with bots setup * Scripts/run-webkit-tests: 2010-03-08 Gustavo Noronha Silva Reviewed by Holger Freyther. [GTK] Tests fail when running with ipv6 addresses available, on Debian systems https://bugs.webkit.org/show_bug.cgi?id=35863 If running on a Debian-based system, also listen on the ipv6 address. * Scripts/run-webkit-tests: 2010-03-08 Holger Hans Peter Freyther Reviewed by Darin Adler. [iexploder] Automatically update htmltags.in and htmlattrs.in too https://bugs.webkit.org/show_bug.cgi?id=33755 Change the update-iexploder-cssproperites script to update the htmlattrs.in and htmltags.in of WebKitTools/iExploder/htdocs automatically as well. Change the reading and writing code to work with parameters and extend the method that is parsing the .in files to handle the HTMLTagNames.in and the HTMLAttributeNames.in files. Remove custom code to determine the revision of files with a utility of VCUtils.pm to determine the revision of the directory these files are located in. This will also work with git checkout. * Scripts/update-iexploder-cssproperties: 2010-03-07 Shinichiro Hamaji Reviewed by Eric Seidel. check-webkit-style: false positive for empty loop https://bugs.webkit.org/show_bug.cgi?id=35717 * Scripts/webkitpy/style/processors/cpp.py: * Scripts/webkitpy/style/processors/cpp_unittest.py: 2010-03-07 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add AccessibilityController and AccessibilityUIElement https://bugs.webkit.org/show_bug.cgi?id=35774 Add AccessibilityController and AccessibilityUIElement classes, which are going to be used by DumpRenderTree Chromium port. These files are based on: - src/webkit/tools/test_shell/accessibility_controller.{cc,h} and - src/webkit/tools/test_shell/accessibility_ui_element.{cc,h} of Chromium rev.40492. * DumpRenderTree/chromium/AccessibilityController.cpp: Added. * DumpRenderTree/chromium/AccessibilityController.h: Added. * DumpRenderTree/chromium/AccessibilityUIElement.cpp: Added. * DumpRenderTree/chromium/AccessibilityUIElement.h: Added. 2010-03-06 Hironori Bono Reviewed by Eric Seidel. [Chromium] Typing into Flash with wmode = opaque|transparent and non-latin language active outputs as if US keyboard layout active https://bugs.webkit.org/show_bug.cgi?id=34936 To test keyboard events on the test plugin, this change implements NPCocoaEventKeyDown and NPCocoaEventKeyUp handlers so the plugin can write log messages. * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (handleEventCocoa): Implemented the event handlers for NPCocoaKeyDown and NPCocoaEventKeyUp. 2010-03-05 Jesus Sanchez-Palencia Reviewed by Eric Seidel. Fix Print option on QtLauncher by calling print directly from QWebFrame. [Qt] QtLauncher Print option is not working on QGraphicsView mode https://bugs.webkit.org/show_bug.cgi?id=35769 * QtLauncher/main.cpp: (LauncherWindow::print): 2010-03-05 Chris Jerdonek Reviewed by Eric Seidel. Changed the logging code for new-run-webkit-tests to use module-specific loggers rather than the root logger. This is a standard practice that allows logging specific to a package to be configured independently of other modules. https://bugs.webkit.org/show_bug.cgi?id=35194 Added a line of the form "_log = logging.getLogger()" to each module below, where is the fully-qualified name of the module, and updated the log lines to use the new _log logger. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/port/apache_http_server.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/http_server_base.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-03-05 Dirk Pranke Reviewed by Eric Siedel. Split the command-line invocation of the Chromium/python LigHTTPd server implementation out into its own top level script to make it a more "public" interface and to resolve some awkward layering issues. This script will be called directly by other test scripts in the Chromium tree. At some point this script should be made to work with Apache-based implementations and on other ports. I have filed https://bugs.webkit.org/show_bug.cgi?id=35820 for this. Also fix a bug in port/factory where options.chromium could be dereferenced even if it wasn't set, raising an exception. https://bugs.webkit.org/show_bug.cgi?id=35812 * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/new-run-webkit-httpd: Added 2010-03-02 Antonio Gomes Reviewed by Holger Freyther Patch by Antonio Gomes [Gtk] Implement setSpatialNavigationEnabled in DRT. https://bugs.webkit.org/show_bug.cgi?id=35705 * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setSpatialNavigationEnabled): 2010-02-23 Antonio Gomes Reviewed by Kenneth Christiansen. Patch by Antonio Gomes Add toggle on/off stub methods for Spatial Navigation in win, gtk and mac LayoutTestController class implementations. https://bugs.webkit.org/show_bug.cgi?id=35699 * DumpRenderTree/LayoutTestController.cpp: (setSpatialNavigationEnabledCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/DumpRenderTree.cpp: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setSpatialNavigationEnabled): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setSpatialNavigationEnabled): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setSpatialNavigationEnabled): 2010-02-18 Antonio Gomes Reviewed by Kenneth Christiansen. Patch by Antonio Gomes Add toggle on/off mechanism for Spatial Navigation in QtLauncher. * QtLauncher/main.cpp: (LauncherWindow::toggleSpatialNavigation): (LauncherWindow::setupUI): 2010-03-02 Antonio Gomes Reviewed by Simon Hausmann. Patch by Antonio Gomes [Qt] Add setSpatialNavigationEnabled method DRT https://bugs.webkit.org/show_bug.cgi?id=33715 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::WebPage::resetSettings): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setSpatialNavigationEnabled): * DumpRenderTree/qt/LayoutTestControllerQt.h: Unskipped fast/events/spatialnavigation/ 2010-03-04 Mark Rowe Rubber-stamped by Alice Liu. Find the framework relative to TARGET_BUILD_DIR as that has a more obvious value during production builds. * Scripts/check-for-webkit-framework-include-consistency: 2010-03-04 Kent Tamura Reviewed by Dimitri Glazkov. [DRT/Chromium] Add CppVariant and CppBoundClass https://bugs.webkit.org/show_bug.cgi?id=35634 Add CppVariant and CppBoundClass classes, which are going to be used by DumpRenderTree Chromium port. These files are based on: - src/webkit/glue/cpp_variant.{cc,h} and - src/webkit/glue/cpp_bound_class.{cc,h} of Chromium rev.40492. * DumpRenderTree/chromium/CppBoundClass.cpp: Added. * DumpRenderTree/chromium/CppBoundClass.h: Added. * DumpRenderTree/chromium/CppVariant.cpp: Added. * DumpRenderTree/chromium/CppVariant.h: Added. 2010-03-04 Mark Rowe Build fix for older versions of Ruby. * Scripts/check-for-webkit-framework-include-consistency: 2010-03-04 Mark Rowe Reviewed by Sam Weinig. Add a script to verify that WebKit framework headers are internally consistent. This script detects the following problematic situations: * An exported WebKit header that includes a header from WebCore. * An exported WebKit header that includes a header that does not exist in the WebKit framework. * A public WebKit header that includes a private WebKit header. * Scripts/check-for-webkit-framework-include-consistency: Added. 2010-03-04 Dumitru Daniliuc Reviewed by Adam Roben. Making sure that the correct path is set before invoking DumpRenderTree on cygwin. https://bugs.webkit.org/show_bug.cgi?id=35768 * Scripts/run-webkit-tests: 2010-03-04 Simon Fraser Revert the exceptions I just added, and make the error clearer. * Scripts/check-for-global-initializers: 2010-03-04 Simon Fraser Build fix: add exceptions to the check-for-global-initializers script for FocusController and SpatialNavigation, and improve the script to actually print out the globals found. * Scripts/check-for-global-initializers: 2010-03-04 Dirk Pranke Reviewed by Dimitri Glazkov. Fix dangling reference to "port" instead of "self._port_obj" that was preventing the http_server from starting on Windows. * Scripts/webkitpy/layout_tests/port/http_server.py: 2010-03-04 Diego Gonzalez Reviewed by Simon Hausmann. Make Qt DumpRenderTree EventSender able to send double click events LayoutTests: fast/events/dblclick-addEventListener.html [Qt] DRT: Send double click event from EventSender https://bugs.webkit.org/show_bug.cgi?id=35255 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting): * DumpRenderTree/qt/EventSenderQt.cpp: (EventSender::EventSender): (EventSender::mouseDown): * DumpRenderTree/qt/EventSenderQt.h: (EventSender::resetClickCount): 2010-03-04 Jocelyn Turcotte Reviewed by Tor Arne Vestbø. [Qt] Make the OUTPUT_DIR variable in qmake projects independent of build-webkit's logic. This also allows shadow builds relying only on qmake to work properly. * DumpRenderTree/qt/DumpRenderTree.pro: * DumpRenderTree/qt/ImageDiff.pro: * DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro: * QtLauncher/QtLauncher.pro: 2010-03-04 Gabor Rapcsanyi Reviewed by Kenneth Rohde Christiansen. Enable to use built-product-archive on Qt platform. * BuildSlaveSupport/built-product-archive: 2010-03-03 Jesus Sanchez-Palencia Reviewed by Simon Hausmann. Add a missing 'm_' to class variables names. [Qt] QtLauncher is not respecting class variable names https://bugs.webkit.org/show_bug.cgi?id=35542 * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::init): (LauncherWindow::sendTouchEvent): (LauncherWindow::eventFilter): (LauncherWindow::zoomIn): (LauncherWindow::zoomOut): (LauncherWindow::resetZoom): (LauncherWindow::setEditable): (LauncherWindow::setTouchMocking): (LauncherWindow::initializeView): (LauncherWindow::createChrome): 2010-03-03 Alexey Proskuryakov Rubber-stamped by Mark Rowe. Exclude leaks in Java that build bot complains about. * Scripts/run-webkit-tests: 2010-03-03 Chris Marrin Reviewed by Simon Fraser. Additional change to separate Accelerated Compositing test from 3D Rendering test https://bugs.webkit.org/show_bug.cgi?id=35610 I am now using #if ENABLED(3D_RENDERING) to emit the 3DRendering string from DRT or not. This allows these flags to set independently. I also improved the code flow in run-webkit-tests a bit. * DumpRenderTree/win/DumpRenderTree.cpp: (main): * Scripts/run-webkit-tests: 2010-03-03 Chris Marrin Reviewed by Simon Fraser. Added ability to print supported features to console to DRT https://bugs.webkit.org/show_bug.cgi?id=35610 This currently only prints whether or not Accelerated Compositing and 3D Rendering are supported, which is the only way to tell if you can run the compositing LayoutTests on Windows. But it can be expanded to give more information as needed. Currently it prints that both AcceleratedCompositing and 3DRendering are available if accelerated compositing is enabled since both have to be turned on together. This allows me to maintain separate checks for them. * DumpRenderTree/win/DumpRenderTree.cpp:Added --print-supported-features flag (main): * Scripts/run-webkit-tests:Runs DRT and enabled compositing tests if HW comp is available on Windows 2010-03-03 Jesus Sanchez-Palencia Reviewed by Simon Hausmann. Refactor QtLauncher so it respects command line arguments and inherits settings when you clone or create a new window. Implemented with help of Kenneth Rohde Christiansen. [Qt] QtLauncher must be refactored to fix command line arguments usage https://bugs.webkit.org/show_bug.cgi?id=35536 * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::init): (LauncherWindow::isGraphicsBased): (applySetting): (LauncherWindow::applyPrefs): (LauncherWindow::initializeView): (LauncherWindow::newWindow): (LauncherWindow::cloneWindow): (LauncherWindow::createChrome): (main): * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewGraphicsBased::setFrameRateMeasurementEnabled): * QtLauncher/webview.h: (WebViewGraphicsBased::itemCacheMode): (WebViewGraphicsBased::frameRateMeasurementEnabled): 2010-03-02 Arno Renevier Reviewed by Gustavo Noronha Silva. [Gtk] implements ChromeClient::requestGeolocationPermissionForFrame https://bugs.webkit.org/show_bug.cgi?id=35210 * DumpRenderTree/gtk/DumpRenderTree.cpp: (geolocationPolicyDecisionRequested): (createWebView): 2010-03-02 Dirk Pranke Reviewed by David Levin. Revert r55339 - the Chromium codebase downstream had a temporary need for WebKitTools/pywebsocket to still exist after Chris Jerdonek had moved it (scripts still referenced the old location). Those scripts have been updated to the new location, so it should be safe to delete this now. https://bugs.webkit.org/show_bug.cgi?id=35614 * pywebsocket/mod_pywebsocket/standalone.py: Removed. 2010-03-02 Dirk Pranke Reviewed by Dimitri Glazkov. new-run-webkit-tests on chromium-linux tests to see if layout_test_helper exists, but we don't use layout_test_helper on linux. The test derefences a None object, and we crash. This fixes that. https://bugs.webkit.org/show_bug.cgi?id=35602 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-03-02 Dirk Pranke Reviewed by Dimitri Glazkov. r55388 (bug 35553) worked around a bug in Python's subprocess.Popen() that was causing DRT to hang on exit in new-run-webkit-tests. Unfortunately, that workaround doesn't work on chromium-win (and the script fails completely). The good news is that the check isn't actually necessary, and so this change makes it conditional. https://bugs.webkit.org/show_bug.cgi?id=35601 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-03-02 Mark Rowe Reviewed by Darin Adler. Bug 35576: WebKit should tell plug-in instances when private browsing state changes TestNetscapePlugin is another bit of plug-in code where copy-paste was heavily used when porting. Update the Windows and UNIX implementations of NPP_New and NPP_SetValue to provide the expected behavior related to NPNVprivateModeBool. Hopefully this code duplication can be cleaned up in the future. * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp: (webkit_test_plugin_new_instance): (webkit_test_plugin_set_value): * DumpRenderTree/win/TestNetscapePlugin/main.cpp: (NPP_New): (NPP_SetValue): 2010-03-02 Gustavo Noronha Silva Reviewed by Alexey Proskuryakov. Test plugin still has issues with releasing objects, and variants https://bugs.webkit.org/show_bug.cgi?id=35587 Fix the conditions for releasing the variants after calling invoke, and avoid having a number of objects leak. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (testDocumentOpen): (testWindowOpen): 2010-03-02 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored the StyleChecker class's file-processing method _process_file(). This will make it easier to add new file-processing capabilities to check-webkit-style. https://bugs.webkit.org/show_bug.cgi?id=35490 * Scripts/webkitpy/style/checker.py: - Added a _read_lines() method to the StyleChecker class that extracts the lines from a file. - Replaced part of _process_file() with a call to the new _read_lines() method. - Replaced another part of _process_file() with a call to the new CarriageReturnProcessor.process() method. * Scripts/webkitpy/style/processors/common.py: - Replaced the check_no_carriage_return() function with a new CarriageReturnProcessor class. * Scripts/webkitpy/style/processors/common_unittest.py: - Renamed the CarriageReturnTest class to CarriageReturnProcessorTest and updated it as necessary. 2010-03-02 Chris Jerdonek Reviewed by Shinichiro Hamaji. Started using the logging module in check-webkit-style. This provides more options for debugging and a more flexible, uniform way to report messages to the end-user. https://bugs.webkit.org/show_bug.cgi?id=35484 Also included classes in a central location to facilitate the unit testing of logging code (setUp and tearDown of unit test logging configurations, etc). * Scripts/check-webkit-style: - Added a call to configure_logging() in the beginning of main(). - Replaced two calls to sys.stderr.write() with appropriate logging calls. * Scripts/webkitpy/init/__init__.py: Copied from WebKitTools/QueueStatusServer/filters/__init__.py. * Scripts/webkitpy/init/logtesting.py: Added. - Added a UnitTestLogStream class to capture log output during unit tests. - Added a UnitTestLog class that provides convenience methods for unit-testing logging code. * Scripts/webkitpy/style/checker.py: - Added a configure_logging() method. - Added a _LevelLoggingFilter class to filter out log messages above a certain logging level. - Removed the _stderr_write() method from the StyleChecker class and replaced its use with appropriate logging calls. * Scripts/webkitpy/style/checker_unittest.py: - Added a ConfigureLoggingTest class to unit test the configure_logging() method. - Updated the StyleCheckerCheckFileTest class as necessary. * Scripts/webkitpy/style_references.py: - Added references to logtesting.UnitTestLog and logtesting.UnitTestLogStream. 2010-03-01 Chris Fleizach Fixing broken DRT on Leopard/Tiger. Second try. AX: changes to WAI-ARIA grid aren't perceived correctly by VoiceOver https://bugs.webkit.org/show_bug.cgi?id=35514 * DumpRenderTree/mac/AccessibilityUIElementMac.mm: 2010-03-01 Chris Fleizach Fixing broken DRT on Leopard/Tiger. AX: changes to WAI-ARIA grid aren't perceived correctly by VoiceOver https://bugs.webkit.org/show_bug.cgi?id=35514 * DumpRenderTree/mac/AccessibilityUIElementMac.mm: 2010-03-01 Gustavo Noronha Silva Reviewed by Eric Seidel. [GTK] plugins/setProperty.html fails on 64bit Release https://bugs.webkit.org/show_bug.cgi?id=35425 Check invoke's return code before releasing the variant, since there's a chance it won't be properly initialized, leading to memory corruption, in some cases. * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (testCallback): (testEnumerate): (testDocumentOpen): (testWindowOpen): (handleCallback): 2010-03-01 Dirk Pranke Reviewed by nobody. Build bustage :( Fix stupid typo that I committed even after David Levin pointed it out to me :( https://bugs.webkit.org/show_bug.cgi?id=35553 * Scripts/webkitpy/layout_tests/port/mac.py: 2010-03-01 Chris Fleizach Reviewed by Darin Adler. AX: changes to WAI-ARIA grid aren't perceived correctly by VoiceOver https://bugs.webkit.org/show_bug.cgi?id=35514 Add rowCount, columnCount for tables. * DumpRenderTree/AccessibilityUIElement.cpp: (rowCountCallback): (columnCountCallback): (AccessibilityUIElement::getJSClass): * DumpRenderTree/AccessibilityUIElement.h: * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::rowCount): (AccessibilityUIElement::columnCount): * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::rowCount): (AccessibilityUIElement::columnCount): * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::rowCount): (AccessibilityUIElement::columnCount): 2010-03-01 Dirk Pranke Reviewed by Eric Seidel. Work around a bug in Python's subprocess.Popen() that keeps us from cleaning up DumpRenderTree / test_shell properly when we finish the tests in new-run-webkit-tests. https://bugs.webkit.org/show_bug.cgi?id=35553 * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/mac.py: 2010-03-01 Arno Renevier Reviewed by Xan Lopez. webkit-build could pass unknown arguments to autogen.sh https://bugs.webkit.org/show_bug.cgi?id=35454 * Scripts/build-webkit: 2010-03-01 Dirk Pranke Rubber-stamped by Dimitri Glazkov. Fix breakage from r55372. https://bugs.webkit.org/show_bug.cgi?id=35549 * Scripts/webkitpy/layout_tests/port/chromium.py: 2010-03-01 Adam Barth Reviewed by Eric Seidel. EWS can hang for five hours when compile output is too big https://bugs.webkit.org/show_bug.cgi?id=35545 * Scripts/webkitpy/commands/queues.py: Limit uploads to 1MB instead of 5MB. AppEngine seems to not like 5MB uploads. I'm not sure what the limit is. Let's try 1MB for a while and see how it goes. * Scripts/webkitpy/networktransaction.py: Tune the default parameters to our exponential backoff. I'm not sure why I picked five hours as the retry limit. That seems way too large. 2010-03-01 Brady Eidson Reviewed by Sam Weinig. REGRESSION: Telling a WebView to go to its current WebHistoryItem is broken. and https://bugs.webkit.org/show_bug.cgi?id=35532 * DumpRenderTree/LayoutTestController.cpp: (apiTestGoToCurrentBackForwardItemCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::apiTestGoToCurrentBackForwardItem): Stubs for now: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::apiTestGoToCurrentBackForwardItem): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::apiTestGoToCurrentBackForwardItem): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::apiTestGoToCurrentBackForwardItem): 2010-03-01 Dirk Pranke Reviewed by David Levin. General cleanup of error handling in new-run-webkit-tests. Add Port.check_build() call that is separate from Port.check_sys_deps() (and add a --nocheck-build flag to skip). This breaks a circular dependency where you would start the layout test helper before checking sys deps, but checking sys deps was the thing that told you if your binaries where there. Also, made Port.check_sys_deps(), start_helper() and stop_helper() optional by providing default implementations in the base class rather than requiring ports to implement the routines regardless of whether or not they were needed. Lastly, tweak a bunch of log messages to be cleaner, including changing messages in thirdparty/autoinstall.py to be silent at the default log level. http://bugs.webkit.org/show_bug.cgi?id=35416 * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/passing.py: * Scripts/webkitpy/layout_tests/port/test.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: * Scripts/webkitpy/thirdparty/autoinstall.py 2010-03-01 Dirk Pranke Reviewed by David Levin. new-chromium-webkit-tests --platform=mac-leopard diffs are backwards https://bugs.webkit.org/show_bug.cgi?id=35265 Some parts of the code passed arguments as "actual, expected" and some passed as "expected, actual". As you might imagine, this lead to great confusion and wrongness. Standardize on "expected, actual" as that's the order which is passed to the underlying diff tool. Based on a patch by Eric Siedel . * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/test.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py 2010-03-01 Chris Jerdonek Unreviewed. Rolling out: http://trac.webkit.org/changeset/55348 https://bugs.webkit.org/show_bug.cgi?id=35163 Rolling out since the changes to autoinstall do not work with Python 2.4. In particular, ZipFile.extractall() was added in Python 2.6. * Scripts/webkitpy/__init__.py: * Scripts/webkitpy/bugzilla.py: * Scripts/webkitpy/init/__init__.py: Removed. * Scripts/webkitpy/init/autoinstall.py: Removed. * Scripts/webkitpy/networktransaction.py: * Scripts/webkitpy/networktransaction_unittest.py: * Scripts/webkitpy/statusserver.py: * Scripts/webkitpy/thirdparty/autoinstall.py: Added. 2010-03-01 Chris Jerdonek Unreviewed. Rolling out r55350: http://trac.webkit.org/changeset/55350 https://bugs.webkit.org/show_bug.cgi?id=33639 Need to roll out because this patch (pep8) depends on the newly rewritten autoinstall.py (r55348), which is breaking for people with Python 2.4: https://bugs.webkit.org/show_bug.cgi?id=35163#c21 That revision also needs to be rolled out and will be rolled out next. * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: * Scripts/webkitpy/style/processors/python.py: Removed. * Scripts/webkitpy/style/processors/python_unittest.py: Removed. * Scripts/webkitpy/style/processors/python_unittest_input.py: Removed. * Scripts/webkitpy/style/unittests.py: * Scripts/webkitpy/style_references.py: 2010-02-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. Exempted WebKitTools/Scripts/webkitpy/thirdparty from all style checks except for the whitespace/carriage_return check and the pep8 tab and trailing white space checks. https://bugs.webkit.org/show_bug.cgi?id=35497 * Scripts/webkitpy/style/checker.py: - Adjusted the _PATH_RULES_SPECIFIER configuration as necessary. - Added enough pep8 categories to _all_categories() for the unit tests to pass. * Scripts/webkitpy/style/checker_unittest.py: - Updated the test_path_rules_specifier() unit test. 2010-02-27 Chris Jerdonek Reviewed by David Levin. Added Python style checking to check-webkit-style using the third-party pep8 module (via autoinstall). https://bugs.webkit.org/show_bug.cgi?id=33639 * Scripts/webkitpy/style/checker.py: - Added PYTHON to FileType. - Updated ProcessorDispatcher to return a PythonProcessor for *.py files. * Scripts/webkitpy/style/checker_unittest.py: - Updated the ProcessorDispatcher unit tests for *.py files. * Scripts/webkitpy/style/processors/python.py: Added. - Added PythonProcessor class. * Scripts/webkitpy/style/processors/python_unittest.py: Added. - Added PythonProcessor unit tests. * Scripts/webkitpy/style/processors/python_unittest_input.py: Added. - Added a sample Python file to test the PythonProcessor.process() code path (since pep8 accepts a file path). * Scripts/webkitpy/style/unittests.py: - Updated the style unit test file to import python_unittest.py. * Scripts/webkitpy/style_references.py: - Adjusted style references to import pep8. 2010-02-26 Chris Jerdonek Reviewed by David Levin. Rewrote autoinstall.py to support unzipping *.zip files after download, unzipping and extracting *.tar.gz files after download, and copying installed files to a destination directory. https://bugs.webkit.org/show_bug.cgi?id=35163 These changes will allow us to autoinstall pep8.py from the web and to put our third-party autoinstalled code in an explicit directory like webkitpy/thirdparty/autoinstalled. They should also speed up imports from autoinstalled *.zip packages slightly since *.pyc files cannot be generated when importing from zipped packages. * Scripts/webkitpy/__init__.py: - Updated the autoinstall lines to use the new autoinstall methods. - Added pep8.py to the list of auto-installed packages. * Scripts/webkitpy/bugzilla.py: - Updated mechanize import path. * Scripts/webkitpy/init/__init__.py: Copied from WebKitTools/QueueStatusServer/filters/__init__.py. * Scripts/webkitpy/init/autoinstall.py: Added. - Added AutoInstaller class. - Added sample testing usage to __main__. * Scripts/webkitpy/networktransaction.py: - Updated mechanize import path. * Scripts/webkitpy/networktransaction_unittest.py: - Updated mechanize import path. * Scripts/webkitpy/statusserver.py: - Updated mechanize import path. * Scripts/webkitpy/thirdparty/autoinstall.py: Removed. - Replaced with rewritten autoinstall in init/autoinstall.py. 2010-02-26 Dirk Pranke Reviewed by Adam Barth. Change the default port for new-run-webkit-tests when running on a Mac from 'chromium-mac' to 'mac'. Add a '--chromium' switch to pick up the default platform-specific version of chromium instead. https://bugs.webkit.org/show_bug.cgi?id=35462 * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/run_webkit_tests.py: 2010-02-26 Dirk Pranke Unreviewed, build fix third time's the charm getting this path right? * pywebsocket/mod_pywebsocket/standalone.py: 2010-02-26 Dumitru Daniliuc Unreviewed, build fix. * pywebsocket/mod_pywebsocket/standalone.py: 2010-02-26 Dumitru Daniliuc Reviewed by Dimitri Glazkov. Moving the script to the right location. * pywebsocket/mod_pywebsocket: Added. * pywebsocket/mod_pywebsocket/standalone.py: Copied from WebKitTools/pywebsocket/standalone.py. * pywebsocket/standalone.py: Removed. 2010-02-26 Dumitru Daniliuc Unreviewed, fixing the license. * pywebsocket/standalone.py: 2010-02-26 Dumitru Daniliuc Reviewed by Adam Barth. Adding pywebsocket/standalone.py back to fix the Chromium webkit canaries. Once all layout tests pass, we can get in the patch that moves this directorty to WebKitTools/Scripts, update all Chromium scripts, and revert this patch. https://bugs.webkit.org/show_bug.cgi?id=35464 * pywebsocket: Added. * pywebsocket/standalone.py: Added. 2010-02-26 Gustavo Noronha Silva Reviewed by Xan Lopez. [GTK] Needs proper reporting of frame loader callbacks, in DRT https://bugs.webkit.org/show_bug.cgi?id=32170 Fix reporting of unload handlers, so that it is emitted where needed, not after it. * DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewLoadFinished): (webViewDocumentLoadFinished): (createWebView): 2010-02-26 Antonio Gomes Reviewed by Gustavo Noronha. Patch by Antonio Gomes [Gtk] Make DRT EventSender::keyDown to consider 'hardware_keycode' field when synthesizing an event. https://bugs.webkit.org/show_bug.cgi?id=35432 When a directional key-press event (arrow keys, End, Home, PageUp, PageDown, etc) is synthesized by DRT's EventSender and it targets an editor (e.g. , , etc), event is processed by WebCore::EventHandler. On the other hand, if event target is not an editor, event is bubbled up to Gtk+ for processing. In such cases, if 'hardware_keycode' is not provided at event synthesize time its processing fails (at some point in gtk_bindings_activate_event), and no scroll action is performed. Unskip fast/events/node-event-anchor-lock.html * DumpRenderTree/win/EventSender.cpp: (keyDownCallback): * platform/gtk/Skipped: 2010-02-26 Dimitri Glazkov Reviewed by David Levin. new-webkit-run-tests: Extraneous parenthesis in websocket_server.py https://bugs.webkit.org/show_bug.cgi?id=35436 * Scripts/webkitpy/layout_tests/port/websocket_server.py: Removed extra paren. 2010-02-26 Chris Jerdonek Reviewed by David Levin. Moved pywebsocket into the webkitpy/thirdparty directory and added an associated README.webkit file to the pywebsocket directory. This makes pywebsocket more consistent with the other third-party Python code in our repository. https://bugs.webkit.org/show_bug.cgi?id=35198 * Scripts/run-webkit-tests: - Updated paths to pywebsocket. * Scripts/run-webkit-websocketserver: - Updated paths to pywebsocket. * Scripts/webkitpy/layout_tests/port/websocket_server.py: - Updated paths to pywebsocket. * Scripts/webkitpy/thirdparty/pywebsocket: Copied from WebKitTools/pywebsocket. * Scripts/webkitpy/thirdparty/pywebsocket/README.webkit: Added. - Added a file containing information about the contents of the pywebsocket directory. This will make it easier to understand where the third-party code came from and what local changes have been made. * pywebsocket: Removed. * pywebsocket/COPYING: Removed. * pywebsocket/MANIFEST.in: Removed. * pywebsocket/README: Removed. * pywebsocket/example: Removed. * pywebsocket/example/echo_client.py: Removed. * pywebsocket/example/echo_wsh.py: Removed. * pywebsocket/mod_pywebsocket: Removed. * pywebsocket/mod_pywebsocket/__init__.py: Removed. * pywebsocket/mod_pywebsocket/dispatch.py: Removed. * pywebsocket/mod_pywebsocket/handshake.py: Removed. * pywebsocket/mod_pywebsocket/headerparserhandler.py: Removed. * pywebsocket/mod_pywebsocket/memorizingfile.py: Removed. * pywebsocket/mod_pywebsocket/msgutil.py: Removed. * pywebsocket/mod_pywebsocket/standalone.py: Removed. * pywebsocket/mod_pywebsocket/util.py: Removed. * pywebsocket/setup.py: Removed. * pywebsocket/test: Removed. * pywebsocket/test/config.py: Removed. * pywebsocket/test/mock.py: Removed. * pywebsocket/test/run_all.py: Removed. * pywebsocket/test/test_dispatch.py: Removed. * pywebsocket/test/test_handshake.py: Removed. * pywebsocket/test/test_memorizingfile.py: Removed. * pywebsocket/test/test_mock.py: Removed. * pywebsocket/test/test_msgutil.py: Removed. * pywebsocket/test/test_util.py: Removed. * pywebsocket/test/testdata: Removed. * pywebsocket/test/testdata/handlers: Removed. * pywebsocket/test/testdata/handlers/blank_wsh.py: Removed. * pywebsocket/test/testdata/handlers/origin_check_wsh.py: Removed. * pywebsocket/test/testdata/handlers/sub: Removed. * pywebsocket/test/testdata/handlers/sub/exception_in_transfer_wsh.py: Removed. * pywebsocket/test/testdata/handlers/sub/no_wsh_at_the_end.py: Removed. * pywebsocket/test/testdata/handlers/sub/non_callable_wsh.py: Removed. * pywebsocket/test/testdata/handlers/sub/plain_wsh.py: Removed. * pywebsocket/test/testdata/handlers/sub/wrong_handshake_sig_wsh.py: Removed. * pywebsocket/test/testdata/handlers/sub/wrong_transfer_sig_wsh.py: Removed. 2010-02-26 Chris Jerdonek Reviewed by Eric Seidel. Changed the diff_parser module to log to a module-specific logging.logger rather than the root logger. https://bugs.webkit.org/show_bug.cgi?id=35391 * Scripts/webkitpy/diff_parser.py: 2010-02-26 Csaba Osztrogonác Reviewed by Kenneth Rohde Christiansen. [Qt] LayoutTestController.numberOfPages() should have default parameters https://bugs.webkit.org/show_bug.cgi?id=35428 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: maxViewWidth and maxViewHeight moved to LayoutTestController to converge to platform independent implementation. (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::open): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: Initialization of maxViewWidth and maxViewHeight added. * DumpRenderTree/qt/LayoutTestControllerQt.h: - Default parameters for LayoutTestController.numberOfPages() added. - maxViewWidth and maxViewHeight members added. 2010-02-26 Jamey Hicks Reviewed by Laszlo Gombos. [Qt] added QWebSettings::setInspectorUrl() and QWebSettings::inspectorUrl() Enables the use of alternate Web Inspector frontends by changing the location of the frontend. The location is specified by providing -inspector-url url as an argument to QtLauncher. This is required so that the Web Inspector may be run from an external process or an external tool such as Eclipse or Aptana may be used instead of the in-process Web Inspector UI. https://bugs.webkit.org/show_bug.cgi?id=35340 * QtLauncher/main.cpp: (LauncherWindow::init): (LauncherApplication::handleUserOptions): 2010-02-25 Dirk Pranke Reviewed by Eric Seidel. Add a 'passing' port implementation to new-run-webkit-tests that acts as a wrapper around an existing implementation but stubs out the actual test invocations (instead, the expected results are echoed back to the harness). This is useful for coverage and perf testing of the harness (especially perf testing as it essentially provides a lower bound on how fast the harness can run). Also added a --nostart-helper flag to new-run-webkit-tests so that you can skip starting the layout_test_helper and actually run the harness even if you don't have a build of that port. Also fix a bug in the 'test' port implementation to actually create the results directory under /tmp instead of /. https://bugs.webkit.org/show_bug.cgi?id=35370 * Scripts/webkitpy/layout_tests/port/factory.py: Modified. * Scripts/webkitpy/layout_tests/port/passing.py: Added. * Scripts/webkitpy/layout_tests/port/test.py: Added. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: Modified. 2010-02-25 Eric Seidel Fix typo in my last change. No review. Rename run-chromium-webkit-tests to new-run-webkit-tests to stop confusion https://bugs.webkit.org/show_bug.cgi?id=35408 * Scripts/new-run-webkit-tests: 2010-02-25 Eric Seidel Reviewed by Adam Barth. Rename run-chromium-webkit-tests to new-run-webkit-tests to stop confusion https://bugs.webkit.org/show_bug.cgi?id=35408 * Scripts/new-run-webkit-tests: Added. * Scripts/run-chromium-webkit-tests: Removed. * Scripts/webkitpy/layout_tests/run_webkit_tests.py: Renamed from WebKitTools/Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py. 2010-02-25 Adam Barth Reviewed by David Levin. EWS leaks memory slowly https://bugs.webkit.org/show_bug.cgi?id=35395 The EWS bots leak memory very slowly. If you run them for about a month, each one will take up around 1 GB of virutal memory. If you run several of them on one machine, you'll eventually exhaust all available memory and grind the bots to a halt. This patch introduces a --exit-after-iteration option to the queues so that we run them for a finite amount of time. Once they exit and restart, they'll reclaim the leaked memory. I'm not sure how many iterations I'll end up running them for. I'll need to sort that out operationally, but my initial guess is around 1000. * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/commands/queues_unittest.py: 2010-02-25 Jarkko Sakkinen Reviewed by Kenneth Rohde Christiansen. Qt WebGL support Adds toggling of WebGL support to QtLauncher. https://bugs.webkit.org/show_bug.cgi?id=35153 * QtLauncher/main.cpp: (LauncherWindow::toggleWebGL): (LauncherWindow::setupUI): 2010-02-25 Ben Murdoch Reviewed by Kenneth Rohde Christiansen. The target element of a Touch should be the target where that touch originated, not where it is now. https://bugs.webkit.org/show_bug.cgi?id=34585 * DumpRenderTree/qt/EventSenderQt.cpp: (EventSender::addTouchPoint): Fix a bug where touch points were not being given unique ids. 2010-02-24 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. [Qt] QtLauncher has a border when running on QGraphicsView mode https://bugs.webkit.org/show_bug.cgi?id=35352 Fix 2-pixels frame on each border of QtLauncher when running on QGraphicsView mode. * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): 2010-02-23 Dirk Pranke Reviewed by David Levin. When the run-chromium-webkit-tests code was landed and the code was refactored into the 'port' package, I accidentally broke using http_server.py or websocket_server.py as command-line scripts (the constructors needed a port object they weren't getting). This change fixes them so that --server start|stop actually works. As a part of this, the two files need to be able to call port.get(), but doing that is awkward from a file inside the package, so I moved get() into factory.py and imported that into __init__.py so that http_server.py and websocket_server.py can just import factory. https://bugs.webkit.org/show_bug.cgi?id=35316 * Scripts/webkitpy/layout_tests/port/__init__.py: * Scripts/webkitpy/layout_tests/port/factory.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-02-24 Dirk Pranke Reviewed by David Levin. Fix the function signature for check_sys_deps on the mac port, and fix the ordering of port_obj.check_sys_deps() and port_obj.start_helper() (helper needs to be started before we check the system configuration). http://bugs.webkit.org/show_bug.cgi?id=35367 * Scripts/webkitpy/layout_tests/port/mac.py: * Scripts/webkitpy/layout_tests/port/test.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: 2010-02-24 James Robinson Reviewed by Eric Seidel. Provide default username parameter to SVN.commit_with_message(). * Scripts/webkitpy/scm.py: 2010-02-24 Dirk Pranke Reviewed by Eric Siedel. Check the proper directory for a WebKit SVN version (Chromium does not check out the entire WebKit tree directly, but rather pulls individual subdirectories. So, checking for the SVN version in WebKit/WebCore rather than just in WebKit works more reliably across different ports). http://bugs.webkit.org/show_bug.cgi?id=35321 * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: 2010-02-24 Alexey Proskuryakov Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=35357 Two editing tests fail after DumpRenderTree run loop changes AppKit decided that it wanted to group all editing commands for some reason (and thus undo reverted them all at once). * DumpRenderTree/mac/DumpRenderTree.mm: (dump): Reverted the change that made DumpRenderTree use -[NSApplication run]. (runTest): Ditto. (-[DumpRenderTreeApplication isRunning]): Override isRunning with a function that always returns YES. This is another way to make the Java plug-in work. 2010-02-23 Adam Roben Make commit-log-editor find just-added ChangeLog files Fixes commit-log-editor doesn't find just-added ChangeLog files Reviewed by Dave Levin. * Scripts/commit-log-editor: (top level): Modified the regular expression that's used to find modified ChangeLog files to also look for just-added ChangeLog files. 2010-02-24 Shinichiro Hamaji Reviewed by Darin Adler. check-webkit-style false positive for WebCore forwarding header https://bugs.webkit.org/show_bug.cgi?id=34604 * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: 2010-02-23 Alexey Proskuryakov Reviewed by Mark Rowe. https://bugs.webkit.org/show_bug.cgi?id=22602 Enable Java in DumpRenderTree (on Mac) * DumpRenderTree/mac/DumpRenderTree.mm: (exitApplicationRunLoop): (dump): (runTest): DumpRenderTree now runs an NSApplication, not just an event loop. This way, the Java plug-in can start without freezing. * Scripts/run-webkit-tests: Compile java sources in LayputTests/java. 2010-02-23 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. [Qt] Need a final integration between QtLauncher and QGVLauncher https://bugs.webkit.org/show_bug.cgi?id=35292 WebKit coding style fixes. * QtLauncher/main.cpp: (LauncherWindow::resetZoom): 2010-02-23 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. [Qt] Need a final integration between QtLauncher and QGVLauncher https://bugs.webkit.org/show_bug.cgi?id=35292 Add cloneWindow feature to QtLauncher, when running on QGraphicsView mode. * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::~LauncherWindow): (LauncherWindow::init): (LauncherWindow::cloneWindow): (LauncherWindow::setupUI): 2010-02-23 Dirk Pranke Reviewed by Dimitri Glazkov. Fix handling of check_wdiff_install when wdiff isn't installed. http://bugs.webkit.org/show_bug.cgi?id=35304 * Scripts/webkitpy/layout_tests/port/chromium_mac.py: 2010-02-23 Leandro Pereira Reviewed by NOBODY. Fix false positives for 'delete *pointer' statements. http://webkit.org/b/35235 * WebKitTools/Scripts/webkitpy/style/processors/cpp.py: 2010-02-23 Shinichiro Hamaji Reviewed by Eric Seidel. [Gtk] Implement layoutTestController.numberOfPages https://bugs.webkit.org/show_bug.cgi?id=35228 * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::numberOfPages): 2010-02-23 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] QtLauncher should not use internal JavaScriptCore and WebCore interfaces https://bugs.webkit.org/show_bug.cgi?id=35248 * QtLauncher/QtLauncher.pro: * QtLauncher/utils.h: 2010-02-23 Daniel Bates Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=34439 Prompts a person for their SVN username if not already cached (by Subversion). Currently, webkit-patch is unable to commit to the SVN repo. unless the WebKit SVN username is already cached (from of a prior commit by hand) because "svn commit" (called by webkit-patch) defaults to using the system login name unless the username is already cached or specified on the command line. * Scripts/webkitpy/scm.py: Added methods SVN.has_authorization_for_realm and modified SVN.commit_with_message to call it. Added optional username parameter to method SVN.commit_with_message. * Scripts/webkitpy/scm_unittest.py: Added unit test methods: SVNTest.test_commit_with_username, SVNTest.test_has_authorization_for_realm, and SVNTest.test_not_have_authorization_for_realm. 2010-02-22 Dirk Pranke Reviewed by Eric Siedel. Add more checking for missing binaries and packages to check_sys_deps() https://bugs.webkit.org/show_bug.cgi?id=35062 * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: 2010-02-22 Shinichiro Hamaji Reviewed by David Levin. [Gtk] check-webkit-style: GTK style should be allowed in WebKitTools/DumpRenderTree/gtk https://bugs.webkit.org/show_bug.cgi?id=35229 * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: 2010-02-22 James Robinson Unreviewed. Adding myself to committers list. * Scripts/webkitpy/committers.py: 2010-02-22 Simon Fraser Reviewed by Darin Adler. Remove DRT hack that turns off hardware acceleration with older QuickTimes https://bugs.webkit.org/show_bug.cgi?id=35275 Now that WebKit does a version check to avoid a QuickTime-related crash (r55100), DumpRenderTree does not need to. * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): 2010-02-22 Tor Arne Vestbø Reviewed by Kenneth Rohde Christiansen. [Qt] Build the DRT in debug on Mac OS X * DumpRenderTree/qt/DumpRenderTree.pro: 2010-02-22 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Add support for layout tests on Symbian https://bugs.webkit.org/show_bug.cgi?id=31589 * DumpRenderTree/qt/DumpRenderTree.pro: * DumpRenderTree/qt/DumpRenderTreeQt.cpp: * DumpRenderTree/qt/main.cpp: (main): 2010-02-20 Chris Jerdonek Reviewed by Adam Barth. Moved simplejson into webkitpy/thirdparty directory. https://bugs.webkit.org/show_bug.cgi?id=35196 * Scripts/run-chromium-webkit-tests: - Added webkitpy/thirdparty to the script's search path. * Scripts/webkitpy/thirdparty/simplejson: Copied from WebKitTools/simplejson. - Copied simplejson directory. * simplejson: Removed. * simplejson/LICENSE.txt: Removed. * simplejson/README.txt: Removed. * simplejson/__init__.py: Removed. * simplejson/_speedups.c: Removed. * simplejson/decoder.py: Removed. * simplejson/encoder.py: Removed. * simplejson/jsonfilter.py: Removed. * simplejson/scanner.py: Removed. 2010-02-20 Chris Jerdonek Reviewed by Adam Barth. Moved BeautifulSoup to webkitpy/thirdparty directory. https://bugs.webkit.org/show_bug.cgi?id=35195 * Scripts/webkitpy/BeautifulSoup.py: Removed. - Moved to webkitpy/thirdparty. * Scripts/webkitpy/bugzilla.py: - Updated import statement. * Scripts/webkitpy/bugzilla_unittest.py: - Updated import statement. * Scripts/webkitpy/buildbot.py: - Updated import statement. * Scripts/webkitpy/buildbot_unittest.py: - Updated import statement. * Scripts/webkitpy/statusserver.py: - Updated import statement. * Scripts/webkitpy/thirdparty/BeautifulSoup.py: Copied from WebKitTools/Scripts/webkitpy/BeautifulSoup.py. 2010-02-20 Chris Jerdonek Reviewed by Adam Barth. Created a directory for third-party Python code, and moved autoinstall.py into it. https://bugs.webkit.org/show_bug.cgi?id=34540 * Scripts/webkitpy/__init__.py: - Updated "import autoinstall" statement. * Scripts/webkitpy/autoinstall.py: Removed. - Moved to thirdparty/autoinstall.py. * Scripts/webkitpy/thirdparty: Added. * Scripts/webkitpy/thirdparty/__init__.py: Added. * Scripts/webkitpy/thirdparty/autoinstall.py: Copied from WebKitTools/Scripts/webkitpy/autoinstall.py. 2010-02-20 Gustavo Noronha Silva Unreviewed, obvious fix for the python failure in our new buildbot step: http://build.webkit.org/builders/GTK Linux 32-bit Release/builds/9075/steps/API tests/logs/err.text * BuildSlaveSupport/build.webkit.org-config/master.cfg: 2010-02-19 Maciej Stachowiak Reviewed by David Levin. Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases https://bugs.webkit.org/show_bug.cgi?id=35147 * Scripts/build-webkit: Handle new flag. 2010-02-19 Leandro Pereira Reviewed by Shinichiro Hamaji. [style-queue] should not complain about identifier names with underscores under WebKit/efl/ewk/ https://bugs.webkit.org/show_bug.cgi?id=35091 White list unix_hacker_style names in WebKit/efl/ewk because these are used in the EFL API. * Scripts/webkitpy/style/checker.py: - Filter out readability/naming on WebKit/efl/ewk. 2010-02-19 Eric Seidel Reviewed by Adam Barth. Split out "prepare-rollout" from "rollout" and make --complete-rollout default https://bugs.webkit.org/show_bug.cgi?id=33745 * Scripts/webkitpy/commands/download.py: - Add a new AbstractRolloutPrepCommand to share code between PrepareRollout and Rollout - Add PrepareRollout * Scripts/webkitpy/commands/download_unittest.py: Test PrepareRollout, remove CompleteRollout tests. * Scripts/webkitpy/steps/__init__.py: include ReopenBugAfterRollout step. * Scripts/webkitpy/steps/completerollout.py: Removed. * Scripts/webkitpy/steps/options.py: remove complete_rollout * Scripts/webkitpy/steps/reopenbugafterrollout.py: Added. 2010-02-19 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. [Qt] Need a final integration between QtLauncher and QGVLauncher https://bugs.webkit.org/show_bug.cgi?id=35161 Add animated flip support to QtLauncher when running on QGraphicsView mode. * QtLauncher/main.cpp: (LauncherWindow::initializeView): (LauncherWindow::setupUI): * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewGraphicsBased::animatedFlip): (WebViewGraphicsBased::animatedYFlip): * QtLauncher/webview.h: (WebViewGraphicsBased::setYRotation): (WebViewGraphicsBased::yRotation): 2010-02-19 Andras Becsi Reviewed by Kenneth Rohde Christiansen. [Qt] Implement textZoomIn() and textZoomOut() in DRT's EventSender, add results for passing new tests and unskip the passing ones from the Skipped list. https://bugs.webkit.org/show_bug.cgi?id=35159 * DumpRenderTree/qt/EventSenderQt.cpp: (EventSender::textZoomIn): (EventSender::textZoomOut): * DumpRenderTree/qt/EventSenderQt.h: 2010-02-19 Laszlo Gombos Reviewed by Eric Seidel. [Qt] Clean-up the handling of HTML5 persistent data for LayoutTests https://bugs.webkit.org/show_bug.cgi?id=35004 DumpRenderTreeQt.cpp calls QWebSettings::enablePersistentStorage which sets up and enables all HTML5 persistent data. All the other calls for setting the persistent path or enabling the persistent feature are redundant. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): No need to enable AppCache again. * DumpRenderTree/qt/main.cpp: (main): No need to setup and enable HTML5 LocalStorage again. 2010-02-19 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. Send the context menu event from contextClick() of EventSender and do not show context menu in DRT. LayoutTests: fast/events/contextmenu-scrolled-page-with-frame.html [Qt] DRT: Send context menu event from EventSender https://bugs.webkit.org/show_bug.cgi?id=35131 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): * DumpRenderTree/qt/EventSenderQt.cpp: (EventSender::contextClick): 2010-02-18 Chris Jerdonek Reviewed by Shinichiro Hamaji. Moved parsing-related code to a separate file. Also increased the unit test coverage in some affected areas. https://bugs.webkit.org/show_bug.cgi?id=34675 This revision contains no new functionality. * Scripts/check-webkit-style: - Adjusted to call check_webkit_style_parser(). * Scripts/webkitpy/style/checker.py: - Added check_webkit_style_parser() to pass checker.py configuration settings to optparser.py. - Moved _create_usage() and the CommandOptionValues, DefaultCommandOptionValues, ArgumentPrinter, and ArgumentParser classes to optparser.py. * Scripts/webkitpy/style/checker_unittest.py: - Moved the ProcessorOptionsTest, ArgumentPrinterTest, and ArgumentParserTest classes to optparser.py. - Added the CheckWebKitStyleFunctionTest class to check the check_webkit_style_configuration() and check_webkit_style_parser() code paths. * Scripts/webkitpy/style/optparser.py: Added. - From checker.py, added _create_usage() and the CommandOptionValues, DefaultCommandOptionValues, ArgumentPrinter, and ArgumentParser classes. - In the ArgumentParser constructor-- - Added all_categories as a required parameter. - Removed the default value from the default_options parameter. * Scripts/webkitpy/style/optparser_unittest.py: Added. - From checker_unittest.py, added the ProcessorOptionsTest, ArgumentPrinterTest, and ArgumentParserTest classes. - Added the CreateUsageTest class to test _create_usage(). * Scripts/webkitpy/style/unittests.py: - Added optparser_unittest import. 2010-02-18 Alexey Proskuryakov Reviewed by Dan Bernstein. https://bugs.webkit.org/show_bug.cgi?id=35134 Crash when a plugin calls NPN_SetStatus(0) * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (testSetStatus): (pluginInvoke): Added a setStatus() method. 2010-02-18 Brady Eidson Reviewed by Sam Weinig. Particularly constructed WebFrames can try to access a null HistoryItem and https://bugs.webkit.org/show_bug.cgi?id=35063 Add the specific ability to test this API pattern. For now only on Mac, perhaps on the main Windows port later, probably not relevant for other ports. * DumpRenderTree/LayoutTestController.cpp: (apiTestNewWindowDataLoadBaseURLCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/LayoutTestControllerMac.mm: (-[APITestDelegate initWithCompletionCondition:]): (-[APITestDelegate webView:didFailLoadWithError:forFrame:]): (-[APITestDelegate webView:didFailProvisionalLoadWithError:forFrame:]): (-[APITestDelegate webView:didFinishLoadForFrame:]): (LayoutTestController::apiTestNewWindowDataLoadBaseURL): Create a WebView, do a loadData: in its mainFrame, and synchronously wait for main load completion. * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::apiTestNewWindowDataLoadBaseURL): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::apiTestNewWindowDataLoadBaseURL): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::apiTestNewWindowDataLoadBaseURL): 2010-02-18 Tor Arne Vestbø Reviewed by Eric Seidel. Teach resolve-ChangeLogs to act as a merge-driver for Git https://bugs.webkit.org/show_bug.cgi?id=28721 To enable automatic merging of ChangeLog files, use the following command: git config merge.changelog.driver "resolve-ChangeLogs --merge-driver %O %A %B" The driver always works in "downstream" merge mode, meaning it will always put the user's changelog entries on top. * Scripts/resolve-ChangeLogs: 2009-12-05 Gustavo Noronha Silva Reviewed by Eric Seidel. Enable running of GTK+ API tests. * BuildSlaveSupport/build.webkit.org-config/master.cfg: * Scripts/run-gtk-tests: Added. 2010-02-18 Shinichiro Hamaji Reviewed by Adam Barth. debug-safari doesn't pass --debug option to gdb-safari on MacOSX https://bugs.webkit.org/show_bug.cgi?id=34411 * Scripts/webkitdirs.pm: 2010-02-18 Eric Seidel Reviewed by Adam Barth. run-chromium-webkit-tests --platform=mac-leopard needs to run build-dumprendertree https://bugs.webkit.org/show_bug.cgi?id=35053 * Scripts/webkitpy/layout_tests/port/base.py: Add script_path() function for finding scripts. * Scripts/webkitpy/layout_tests/port/chromium.py: Remove unused argument. * Scripts/webkitpy/layout_tests/port/mac.py: - Make sure that calling webkit-build-directory works even if Scripts/ is not in the user's path. - Call build-dumprendertree (and make sure it succeeds) before running the tests. 2010-02-16 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored check-webkit-style's ProcessorOptions class into two classes. This revision contains no new functionality. https://bugs.webkit.org/show_bug.cgi?id=34674 Divided the ProcessorOptions class into a CommandOptionValues class (the result of parsing the command-line options) and a StyleCheckerConfiguration class (which configures the main StyleChecker). * Scripts/check-webkit-style: - Updated main() to convert the parsed command option values to a StyleCheckConfiguration instance prior to constructing a StyleChecker. * Scripts/webkitpy/style/checker.py: - Added check_webkit_style_configuration() to convert a CommandOptionValues instance into a StyleCheckerConfiguration instance. - Renamed the ProcessorOptions class to CommandOptionValues. - In the CommandOptionValues class-- - Replaced the filter_configuration attribute with the simpler filter_rules attribute. - Removed the max_reports_per_error attribute. - Moved the is_reportable() method to the new StyleCheckerConfiguration class. - Removed the base_filter_rules attribute from the DefaultCommandOptionValues class. - In the ArgumentParser class-- - Added base_filter_rules to the constructor. - Changed the parse() method to return a CommandOptionValues instance instead of a ProcessorOptions instance. - Created a StyleCheckerConfiguration class. - Added the data attributes max_reports_per_category, stderr_write, and verbosity. - Added is_reportable() (moved from the ProcessorOptions class) and write_style_error() (moved from the DefaultStyleErrorHandler class). - In the StyleChecker class-- - Replaced the ProcessorOptions options attribute with the StyleCheckerConfiguration _configuration attribute. - Removed the _stderr_write attribute. * Scripts/webkitpy/style/checker_unittest.py: - Updated the existing unit test classes as necessary. - Added a StyleCheckerConfigurationTest class. * Scripts/webkitpy/style/error_handlers.py: - Updated the DefaultStyleErrorHandler class to accept a StyleCheckerConfiguration instance instead of a ProcessorOptions instance and an stderr_write method. * Scripts/webkitpy/style/error_handlers_unittest.py: - Updated the unit test classes as necessary. * Scripts/webkitpy/style/filter.py: - Addressed the FIXME in the FilterConfiguration class to change the user_rules attribute to _user_rules (since it is now accessed only internally). * Scripts/webkitpy/style/filter_unittest.py: - Updated to reflect the change from user_rules to _user_rules. 2010-02-17 Shinichiro Hamaji Reviewed by Eric Seidel. Share the DRT values maxViewWidth/Height among ports https://bugs.webkit.org/show_bug.cgi?id=34474 * DumpRenderTree/LayoutTestController.cpp: (pageNumberForElementByIdCallback): * DumpRenderTree/LayoutTestController.h: (LayoutTestController::maxViewWidth): (LayoutTestController::maxViewHeight): * DumpRenderTree/gtk/DumpRenderTree.cpp: (runTest): * DumpRenderTree/mac/DumpRenderTree.mm: (createWebViewAndOffscreenWindow): (sizeWebViewForCurrentTest): * DumpRenderTree/win/DumpRenderTree.cpp: (dump): (createWebViewAndOffscreenWindow): 2010-02-17 Shinichiro Hamaji Reviewed by Eric Seidel. [Win] Implement test functions for printing https://bugs.webkit.org/show_bug.cgi?id=34570 * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::pageNumberForElementById): (LayoutTestController::numberOfPages): 2010-02-17 Fumitoshi Ukai Reviewed by Eric Seidel. websocket/tests/cookies/httponly-cookie.pl fails every time under run-chromium-webkit-tests https://bugs.webkit.org/show_bug.cgi?id=35001 * Scripts/webkitpy/layout_tests/port/websocket_server.py: add -x flag to run pywebsocket. 2010-02-17 Shinichiro Hamaji Reviewed by Eric Seidel. check-webkit-style: Misses variables that contain underscores. https://bugs.webkit.org/show_bug.cgi?id=33724 - Check identifiers whose types are unsigned. - Check bitfields properly. * Scripts/webkitpy/style/processors/cpp.py: * Scripts/webkitpy/style/processors/cpp_unittest.py: 2010-02-17 Shinichiro Hamaji Reviewed by Eric Seidel. check-webkit-style should report the number of files checked https://bugs.webkit.org/show_bug.cgi?id=34971 * Scripts/check-webkit-style: * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: 2010-02-17 Diego Gonzalez Reviewed by Ariya Hidayat. Make possible Qt DRT to get total number of pages to be printed LayoutTests: printing/numberOfPages.html [Qt] DRT: Get total number of pages to be printed https://bugs.webkit.org/show_bug.cgi?id=34955 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::numberOfPages): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-02-17 Xan Lopez Reviewed by Gustavo Noronha. Update to use new property name. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): 2010-02-17 Julien Chaffraix Reviewed by Ariya Hidayat. Remove some warnings seen when building Qt https://bugs.webkit.org/show_bug.cgi?id=35017 Using a machine without the needed tools to build WebKit leads to several errors and warnings. * Scripts/webkitdirs.pm: Refactored the code testing the command's presence into a commandExists routine. While doing so removed, stderr output as it usually does not give anything more than our message. Also added a Qt check for qmake that was missing. 2010-02-17 Xan Lopez Rubber-stamped by Gustavo Noronha. Disable Java by default in DRT. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): 2010-02-15 Chris Jerdonek Reviewed by Shinichiro Hamaji. Some minor check-webkit-style code clean-ups. This revision contains no new functionality. https://bugs.webkit.org/show_bug.cgi?id=34932 * Scripts/check-webkit-style: - Replaced the call to webkit_argument_defaults() with a default parameter in the ArgumentParser constructor. * Scripts/webkitpy/style/checker.py: - Removed the WEBKIT prefix from the default global variables. - Prefixed several of the global variables with an underscore to reflect that they are used internally. - Renamed _DEFAULT_FILTER_RULES to _BASE_FILTER_RULES. - Addressed a FIXME by changing the _PATH_RULES_SPECIFIER configuration from list-tuple pairs to list-list pairs. - Renamed style_categories() to _all_categories(). - Renamed webkit_argument_defaults() to _check_webkit_style_defaults(). - Renamed the ArgumentDefaults class to DefaultCommandOptionValues. - In the ArgumentParser class-- - Renamed the doc_print attribute to stderr_write. - Other minor updates. * Scripts/webkitpy/style/checker_unittest.py: - Updated the import statements and unit test classes as necessary. - Added assertions to test _PATH_RULES_SPECIFIER more fully. * Scripts/webkitpy/style/error_handlers_unittest.py: - Updated the unit test classes as necessary. - Changed StyleErrorHandlerTestBase to store a list of error messages rather than just the last one. * Scripts/webkitpy/style/filter.py: - Altered FilterConfiguration._path_rules_from_path() to convert the path_rules list to a tuple. * Scripts/webkitpy/style/filter_unittest.py: - Updated the unit tests to reflect the change from tuples to lists in the _PATH_RULES_SPECIFIER configuration variable. 2010-02-16 Mark Rowe Let's not check garbage in to common build scripts and hose the world now eh guys? * Scripts/webkitdirs.pm: 2010-02-16 Eric Seidel Reviewed by Adam Barth. re-factor Skipped list parsing code into multiple functions and unit test it https://bugs.webkit.org/show_bug.cgi?id=34986 * Scripts/test-webkitpy: Add new unit test. * Scripts/webkitpy/layout_tests/__init__.py: Copied from WebKitTools/QueueStatusServer/filters/__init__.py. * Scripts/webkitpy/layout_tests/port/mac.py: Split parsing function into multiple functions for testing. * Scripts/webkitpy/layout_tests/port/mac_unittest.py: Added. 2010-02-16 Xan Lopez Reviewed by Gustavo Noronha. Enable 'auto-resize-window' in our DRT. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): 2010-02-15 Martin Robinson Reviewed by Darin Adler. check-webkit-style should not complain about NULL sentinel in calls to g_strconcat and g_strjoin https://bugs.webkit.org/show_bug.cgi?id=34834 * Scripts/webkitpy/style/processors/cpp.py: * Scripts/webkitpy/style/processors/cpp_unittest.py: 2010-02-12 Alexey Proskuryakov Reviewed by Kevin Decker. Browser objects identity is not preserved by Safari * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginInvoke): Added methods for checking object identity (via refcount). 2010-02-15 Robert Hogan Reviewed by Simon Hausmann. [Qt] DRT: Support evaluateInWebInspector(), setTimelineProfilingEnabled(). Support LayoutTestController.evaluateInWebInspector(), setTimelineProfilingEnabled() in Qt DRT. https://bugs.webkit.org/show_bug.cgi?id=33096 This allows the following tests to pass: inspector/console-format-collections.html inspector/styles-iframe.html inspector/syntax-highlight-css.html inspector/syntax-highlight-javascript.html inspector/timeline-enum-stability.html inspector/timeline-layout.html inspector/timeline-mark-timeline.html inspector/timeline-paint.html inspector/timeline-parse-html.html inspector/timeline-recalculate-styles.html inspector/timeline-script-tag-1.html inspector/timeline-script-tag-2.html inspector/timeline-trivial.html inspector/cookie-resource-match.html inspector/elements-img-tooltip.html inspector/elements-panel-selection-on-refresh.html inspector/inspected-objects-not-overriden.html inspector/timeline-event-dispatch.html inspector/timeline-network-resource.html inspector/elements-panel-rewrite-href.html inspector/console-dir.html inspector/console-dirxml.html inspector/console-format.html inspector/console-tests.html inspector/elements-panel-structure.html inspector/evaluate-in-frontend.html inspector/console-clear.html * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting): (WebCore::isWebInspectorTest): (WebCore::DumpRenderTree::open): * DumpRenderTree/qt/DumpRenderTreeQt.h: (WebCore::DumpRenderTree::display): * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::closeWebInspector): (LayoutTestController::showWebInspector): (LayoutTestController::evaluateInWebInspector): (LayoutTestController::setTimelineProfilingEnabled): (LayoutTestController::display): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-02-14 Dirk Pranke Reviewed by Eric Seidel. Update rebaseline-chromium-webkit-tests to work with the new code structure (port objects instead of path_utils and platform_utils). Added a path_to_test_expectations_file() to the Port interface. Fixed a bug in the chromium_* platform implementations where the 'target' option was assumed to be set. * Scripts/rebaseline-chromium-webkit-tests: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/test.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: 2010-02-14 Eric Seidel Reviewed by Darin Adler. webkit-build-directory misuses terms https://bugs.webkit.org/show_bug.cgi?id=34822 * Scripts/webkit-build-directory: - Add --top-level and --configuration options and make using one of them required. * Scripts/webkitpy/layout_tests/port/mac.py: - Use --top-level instead of --base. 2010-02-14 Chang Shu Reviewed by Laszlo Gombos. [Qt] Enable appcache feature. https://bugs.webkit.org/show_bug.cgi?id=34713 Re-land r54543 without the change in DumpRenderTree/qt/main.cpp. Persistent storage for AppCache is already initialized in DumpRenderTreeQt.cpp. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): 2010-02-12 Chang Shu Not Reviewed. Change case of my email address as a work-around for the following bug. https://bugs.webkit.org/show_bug.cgi?id=34717 * Scripts/webkitpy/committers.py: 2010-02-12 Darin Adler Ignore compiled Python in more of webkitpy. * Scripts/webkitpy/style/processors: Added property svn:ignore. 2010-02-12 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. Qt DRT now dump the frame loader callbacks when LayoutTestController() method is called. LayoutTests: http/tests/security/mixedContent/data-url-script-in-iframe.html http/tests/security/mixedContent/empty-url-plugin-in-frame.html http/tests/security/mixedContent/insecure-css-in-iframe.html http/tests/security/mixedContent/insecure-iframe-in-iframe.html http/tests/security/mixedContent/insecure-image-in-iframe.html http/tests/security/mixedContent/insecure-plugin-in-iframe.html http/tests/security/mixedContent/insecure-script-in-iframe.html http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe.html http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html [Qt] Make possible Qt DRT dump frame load callbacks https://bugs.webkit.org/show_bug.cgi?id=34702 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::dumpFrameLoadCallbacks): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-02-12 Simon Hausmann Reviewed by Antti Koivisto. Make QtLauncher somewhat useable on S60. Show the window fullscreen to make scrollbars appear, resize the toolbar buttons to 16x16 to give more screen space to web content and moved the location lineedit into a separate line. * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): * QtLauncher/mainwindow.cpp: (MainWindow::buildUI): 2010-02-12 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. Support frameset flattening https://bugs.webkit.org/show_bug.cgi?id=32717 Add FrameSet Flattening support to Mac DRT. * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setFrameSetFlatteningEnabled): * DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setXSSAuditorEnabled): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setFrameSetFlatteningEnabled): * DumpRenderTree/LayoutTestController.cpp: (setFrameSetFlatteningEnabledCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setFrameSetFlatteningEnabled): 2010-02-12 Dirk Pranke Reviewed by Eric Seidel. Fix typos in driver_test.py https://bugs.webkit.org/show_bug.cgi?id=34810 * Scripts/webkitpy/layout_tests/driver_test.py: 2010-02-12 Simon Hausmann Reviewed by Kenneth Rohde Christiansen. [Qt] Make it possible to toggle the use of QGraphicsView in QtLauncher at run-time https://bugs.webkit.org/show_bug.cgi?id=34844 * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::initializeView): (LauncherWindow::setupUI): * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): 2010-02-11 Fumitoshi Ukai Reviewed by Alexey Proskuryakov. WebSocket ignores HttpOnly cookies, but should use in Handshake. https://bugs.webkit.org/show_bug.cgi?id=34289 Update pywebsocket to 0.4.8, which supports cgi directories. run-webkit-tests and run-webkit-websocketserver will run pywebsocket, specifying /websocket/test/cookies as cgi directory. * Scripts/run-webkit-tests: * Scripts/run-webkit-websocketserver: * pywebsocket/mod_pywebsocket/standalone.py: * pywebsocket/setup.py: 2010-02-11 Jesus Sanchez-Palencia Reviewed by Dan Bernstein. [Mac] Duplicated setXSSAuditorEnabled preference at Mac DRT https://bugs.webkit.org/show_bug.cgi?id=34798 Remove duplicated setXSSAuditorEnabled preference at Mac DRT * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): 2010-02-11 Eric Seidel No review, build fix only. webkitdirs.pm has a crazy amount of duplicated feature detection code https://bugs.webkit.org/show_bug.cgi?id=34869 * Scripts/build-webkit: Fix typo which broke bots. 2010-02-11 Eric Seidel Reviewed by Adam Barth. webkitdirs.pm has a crazy amount of duplicated feature detection code https://bugs.webkit.org/show_bug.cgi?id=34869 * Scripts/build-webkit: Use the new hotness. * Scripts/run-webkit-tests: ditto * Scripts/webkitdirs.pm: Remove a bunch of bad duplicate code. * Scripts/webkitperl/features.pm: Added. - Simplified the 10 methods in webkitdirs.pm into 2 exported methods in this new file. 2010-02-11 Daniel Bates Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=34830 Makes method User.prompt static and adds the parameter repeat to prompt the user up to repeat times. * Scripts/test-webkitpy: * Scripts/webkitpy/bugzilla.py: Substituted method User.prompt for method raw_input. * Scripts/webkitpy/commands/upload.py: Ditto * Scripts/webkitpy/credentials.py: Ditto * Scripts/mock_bugzillatool.py: Updated prototype of MockUser.prompt to match User.prompt. * Scripts/webkitpy/user.py: Made method prompt static and added parameter repeat. * Scripts/webkitpy/user_unittest.py: Added. 2010-02-10 Yuzo Fujishima Reviewed by Darin Adler. Allow underscored identifiers in CSSParser.cpp Flex (http://flex.sourceforge.net/) uses identifiers named as yy_*. WebCore/css/CSSParser.cpp needs to handle some such identifiers. We should relax the style rule for the file to allow underscored identifiers. https://bugs.webkit.org/show_bug.cgi?id=34787 * Scripts/webkitpy/style/checker.py: 2010-02-11 Eric Seidel Rubber-stamped by Adam Barth. Remove DrawTest, the application I used when bringing up SVG support on the Mac. The code hasn't been touched (or used) in years. No sense in keeping it in trunk. * Scripts/build-drawtest: Removed. * Scripts/run-drawtest: Removed. * DrawTest: Removed. 2010-02-11 Eric Seidel Reviewed by Adam Barth. Need a command to clear r+ on obsolete patches in the pending-commit queue. https://bugs.webkit.org/show_bug.cgi?id=34863 Unfortunately our http://webkit.org/pending-commit bugzilla query is not smart enough to ignore obsolete patches, so bugs show up there which are still open, but do not have patches ready for landing on them. This new command "clean-pending-commit" will remove r+ from obsolete patches in the pending-commit list. * Scripts/test-webkitpy: Add grammar_unittest * Scripts/webkitpy/commands/upload.py: Add clean-pending-commit and make assign-to-committer ignore cq+'d patches. * Scripts/webkitpy/grammar.py: Add join_with_separators * Scripts/webkitpy/grammar_unittest.py: Added. 2010-02-11 Eric Seidel Reviewed by Adam Barth. run-chromium-webkit-tests fails random pixel tests on Mac https://bugs.webkit.org/show_bug.cgi?id=34862 This is due to the fact that the Mac port has an invalid path to the image diff tool. Currently it points to image_diff even though ImageDiff would be correct. We can't change it to the right path yet without causing the script to hang. ImageDiff expects to be long-running and be passed image data over stdin. image_diff (chromium's fork) expects to be passed command line arguments. This fix works around the random failures by disabling pixel tests on mac and logging if the user was trying to run with pixel tests enabled. * Scripts/webkitpy/layout_tests/port/mac.py: 2010-02-11 Nikolas Zimmermann Reviewed by Adam Roben. Try to fix build breakage from r54665. * Scripts/check-for-global-initializers: 2010-02-11 Simon Hausmann Reviewed by Tor Arne Vestbø. Make it possible to toggle accelerated compositing from the menu at run-time. * QtLauncher/main.cpp: (LauncherWindow::toggleAcceleratedCompositing): (LauncherWindow::setupUI): 2010-02-08 Maciej Stachowiak Reviewed by Cameron Zwarich. Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose. https://bugs.webkit.org/show_bug.cgi?id=34698 * Scripts/build-webkit: 2010-02-10 Dirk Pranke Reviewed by Eric Seidel. Fix various minor bugs keeping run-chromium-webkit-tests from actually working on the linux and win ports of Chromium. https://bugs.webkit.org/show_bug.cgi?id=34739 * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/port/__init__.py: * Scripts/webkitpy/layout_tests/port/base.py: * Scripts/webkitpy/layout_tests/port/chromium.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: 2010-02-10 Eric Seidel Reviewed by David Levin. run-chromium-webkit-tests --platform=mac-leopard crashes when using a custom build directory https://bugs.webkit.org/show_bug.cgi?id=34817 This doesn't fix the root cause of us not correctly failing when support binaries are missing. This only causes the DumpRenderTree binary not to be missing in the custom build directory case. Later patches will make us correctly fail fast when support binaries (like DumpRenderTree or ImageDiff) are missing. * Scripts/webkit-build-directory: Added. - Need a way to re-use the perl logic for finding build directories in non-perl scripts. * Scripts/webkitpy/layout_tests/port/base.py: Add a FIXME. * Scripts/webkitpy/layout_tests/port/mac.py: - Call webkit-build-directory to find the build directory instead of assuming "WebKitBuild" * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: Add FIXMEs. 2010-02-10 Kevin Watters Reviewed by Kevin Ollivier. [wx] Add Windows complex text support. https://bugs.webkit.org/show_bug.cgi?id=34759 * wx/build/settings.py: 2010-02-10 Kevin Ollivier [wx] Build fix. Add stub for new LayoutTestController method. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::numberOfPages): 2010-02-10 Csaba Osztrogonác Unreviewed. Roll out r54626, because it broke GTK and Win build. https://bugs.webkit.org/show_bug.cgi?id=32717 * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: 2010-02-10 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. Support frameset flattening https://bugs.webkit.org/show_bug.cgi?id=32717 Add FrameSet Flattening support to Mac DRT. * DumpRenderTree/LayoutTestController.cpp: (setFrameSetFlatteningEnabledCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setFrameSetFlatteningEnabled): 2010-02-08 Jon Honeycutt Crash in Flash when visiting http://www.cctv.com/default.shtml (WER ID 819298200) [watson 2502260] Reviewed by Darin Adler. * DumpRenderTree/win/TestNetscapePlugin/main.cpp: (executeScript): Moved to an earlier point in the file. (NPP_New): If the plug-in has an onDestroy attribute, store its value. (NPP_Destroy): If the plug-in has code to run on destruction, run it and free it. 2010-02-10 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. Implement pageNumberForElementById() method in Qt DRT LayoutTestController, to make Qt DRT able to get page number. LayoutTests: printing/page-break-always.html printing/pageNumerForElementById.html printing/css2.1/page-break-before-000.html printing/css2.1/page-break-after-000.html printing/css2.1/page-break-after-004.html printing/css2.1/page-break-before-001.html printing/css2.1/page-break-after-001.html printing/css2.1/page-break-after-002.html printing/css2.1/page-break-before-002.html printing/css2.1/page-break-inside-000.html [Qt] Make possible Qt DRT get a page number for element by ID https://bugs.webkit.org/show_bug.cgi?id=34777 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::pageNumberForElementById): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-02-10 Andras Becsi Reviewed by Adam Barth. Make run-iexploder-tests work on Linux. https://bugs.webkit.org/show_bug.cgi?id=34748 Extract the platform dependant Apache configuration checking code in httpd.pm to a separate function called getHTTPDConfigPathForTestDirectory and use run-launcher instead of run-safari if run on Linux. * Scripts/run-iexploder-tests: * Scripts/webkitperl/httpd.pm: 2010-02-09 Csaba Osztrogonác [Qt] Unreviewed. Roll-out r54543, because layout tests crash in debug mode. https://bugs.webkit.org/show_bug.cgi?id=34713 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): * DumpRenderTree/qt/main.cpp: (main): 2010-02-09 Alejandro G. Castro Unreviewed; added myself to committers * Scripts/webkitpy/committers.py: 2010-02-09 Yael Aharon Reviewed by Kenneth Rohde Christiansen. [Qt] Webkit in Qt does not have window.showModalDialog https://bugs.webkit.org/show_bug.cgi?id=25585 Set the modality flag when createWindow is called with window type WebWindowDialog. * QtLauncher/main.cpp: (WebPage::createWindow): 2010-02-09 Andras Becsi Unreviewed trivial warning fix. * Scripts/build-webkit: 2010-02-09 Gabor Rapcsanyi Reviewed by Tor Arne Vestbø. Add possibility of passing parameters to build-webkit by environment variable, because the buildbot slaves can't control the arguments. * Scripts/build-webkit: 2010-02-09 Chang Shu Reviewed by Laszlo Gombos. [Qt] Enable appcache feature. https://bugs.webkit.org/show_bug.cgi?id=34713 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): * DumpRenderTree/qt/main.cpp: (main): 2010-02-09 Shinichiro Hamaji Reviewed by Darin Adler. Provide a way to get total number of pages to be printed https://bugs.webkit.org/show_bug.cgi?id=34699 * DumpRenderTree/LayoutTestController.cpp: (parsePageParameters): (pageNumberForElementByIdCallback): (numberOfPagesCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::numberOfPages): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::numberOfPages): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::numberOfPages): 2010-02-08 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=34727 Assertion crashes and freezes when plug-in property access results in an exception * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginGetProperty): Raise an exception when accessing a particular property. (pluginSetProperty): Ditto. (pluginInvoke): Added methods to get and set host object properties. 2010-02-08 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] Backport No'am Rosenthal's frame rate measurement * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherApplication::handleUserOptions): * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewGraphicsBased::enableFrameRateMeasurement): (WebViewGraphicsBased::updateFrameRate): (WebViewGraphicsBased::paintEvent): * QtLauncher/webview.h: 2010-02-08 Kenneth Rohde Christiansen Reviewed by Tor Arne Vestbø. [Qt] Make overridePreference complain when it does not support the preference given. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::overridePreference): 2010-02-08 Tor Arne Vestbø Reviewed by Kenneth Rohde Christiansen. [Qt] Set stdout/stderr to binary mode for DRT on Windows This makes sure we don't end up with lots of CRLFs in the DRT output, which breaks tons of results. Matches what the Windows DRT does. * DumpRenderTree/qt/main.cpp: 2010-02-08 Tor Arne Vestbø Reviewed by Kenneth Rohde Christiansen. Build fix for Qt on Windows. Don't use noreturn directly since it's a gcc attribute. Instead use the NO_RETURN macro from AlwaysInline.h * QtLauncher/QtLauncher.pro: * QtLauncher/utils.h: 2010-02-05 Chris Jerdonek Reviewed by Shinichiro Hamaji. Suppressed check-webkit-style's underscore check in Qt's autotests. Also made the path-specific filter check case-insensitive. https://bugs.webkit.org/show_bug.cgi?id=34574 * Scripts/webkitpy/style/checker.py: - Added a list element to _PATH_RULES_SPECIFIER for directories that should be excluded from the "readability/naming" category (the category that relates to underscores in identifiers, for example). * Scripts/webkitpy/style/checker_unittest.py: - Added an "end-to-end" test for "WebKit/qt/tests/". * Scripts/webkitpy/style/filter.py: - Altered FilterConfiguration's should_check() method to check for path substring matches case-insensitively. * Scripts/webkitpy/style/filter_unittest.py: - Added a test to check case-insensitive path substring matching. * Scripts/webkitpy/style/processors/cpp.py: - Removed the hard-coded "WebKit/gtk/webkit/" path reference since this is now taken care of by the _PATH_RULES_SPECIFIER configuration variable. * Scripts/webkitpy/style/processors/cpp_unittest.py: - Removed the unit test for the GTK directory since this is now taken care of by the checker._PATH_RULES_SPECIFIER end-to-end tests. 2010-02-08 Leith Bade Reviewed by Darin Adler. Fixes: https://bugs.webkit.org/show_bug.cgi?id=34637 Corrects the newline inserted into WebKitOutputDir, and WebKitLibrariesDir Windows environemnt variables when there is a space in the user's /home path. * Scripts/webkitdirs.pm: - Added missing quotes around $sourceDir in argument list of cygpath in determineWindowsSourceDir(). 2010-02-05 Alexey Proskuryakov Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=34670 TestNetscapePlugin should work with Firefox * DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): Default to Carbon if browser doesn't tell what it supports. 2010-02-05 Shinichiro Hamaji Reviewed by Gustavo Noronha Silva. [Gtk] Implement layoutTestController.pageNumberForElementById https://bugs.webkit.org/show_bug.cgi?id=34572 * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::pageNumberForElementById): 2010-02-03 Dirk Pranke Reviewed by Eric Seidel. Add a simple test implementation and the WebKit Mac implementation for the layout_tests/port package. Also add a simple test driver of that interface. https://bugs.webkit.org/show_bug.cgi?id=34511 * Scripts/webkitpy/layout_tests/driver_test.py: Added. * Scripts/webkitpy/layout_tests/port/__init__.py: * Scripts/webkitpy/layout_tests/port/mac.py: Added. * Scripts/webkitpy/layout_tests/port/test.py: Added. 2010-02-03 Dirk Pranke Reviewed by Eric Siedel. Refactor the port package into an object-oriented style and merge path_utils into it. We add a 'base' and a 'chromium' object to the port package; this will allow us to easily add new ports (like WebKit Mac). https://bugs.webkit.org/show_bug.cgi?id=34511 * Scripts/rebaseline-chromium-webkit-tests: * Scripts/run-chromium-webkit-tests: * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/port/__init__.py: * Scripts/webkitpy/layout_tests/port/apache_http_server.py: * Scripts/webkitpy/layout_tests/port/base.py: Added. * Scripts/webkitpy/layout_tests/port/chromium.py: Added. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/http_server_base.py: * Scripts/webkitpy/layout_tests/port/path_utils.py: Removed. * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-01-19 Kenneth Rohde Christiansen Reviewed by Dave Hyatt. Implement flattening of framesets https://bugs.webkit.org/show_bug.cgi?id=32717 Add support for testing frame flattening with the Qt DRT * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setFrameSetFlatteningEnabled): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-02-03 Chris Jerdonek Reviewed by Shinichiro Hamaji. Provided a way in check-webkit-style to specify filter rules on a per file or folder basis, via a configuration variable. https://bugs.webkit.org/show_bug.cgi?id=33684 * Scripts/webkitpy/style/checker.py: - Added _PATH_RULES_SPECIFIER configuration variable. - In ProcessorOptions class-- - Changed the CategoryFilter attribute to FilterConfiguration. - Added path parameter to is_reportable(). - Renamed ArgumentDefaults filter_rules attribute to base_filter_rules. - Updated ArgumentPrinter class. - Added filter rule validation to ArgumentParser (instead of in CategoryFilter constructor). * Scripts/webkitpy/style/checker_unittest.py: - Updated unit tests as necessary. - Added unit tests for PATH_RULES_SPECIFIER. * Scripts/webkitpy/style/error_handlers.py: - Updated DefaultStyleErrorHandler to use file path when calling is_reportable(). * Scripts/webkitpy/style/error_handlers_unittest.py: - Updated unit tests as necessary. * Scripts/webkitpy/style/filter.py: - Marked CategoryFilter internal with an underscore. - Removed argument validation from CategoryFilter. - Added FilterConfiguration class. * Scripts/webkitpy/style/filter_unittest.py: - Updated CategoryFilterTest class. - Added FilterConfigurationTest unit tests. * Scripts/webkitpy/style/processors/cpp.py: - Removed _is_test_filename() code. - Removed hard-coded path checks from check_include_line(). * Scripts/webkitpy/style/processors/cpp_unittest.py: - Removed three unit tests related to exempted files. 2010-02-05 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] Apply the command line options as settings to the graphics system. * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (requiresGraphicsView): (LauncherApplication::handleUserOptions): * QtLauncher/webview.h: (WebViewGraphicsBased::setItemCacheMode): 2010-02-05 Tor Arne Vestbø Reviewed by Simon Hausmann. Notify user that run-webkit-tests has to be run under Cygwin The script will bail out if run under Windows shell or Msys. * Scripts/run-webkit-tests: * Scripts/webkitdirs.pm: 2010-02-05 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Generate convenience headers (QWebView, etc) using qmake In Qt this is done using syncqt, but we use a pro-file instead that generates makefile-rules for each of the extra headers. These extra headers are installed alongside the normal headers. * Scripts/webkitdirs.pm: Run qmake and make on new API-DerivedSources 2010-02-05 Andras Becsi Unreviewed typo fix. Fix wrong whitespace alignment introduced in r54342. * Scripts/run-webkit-tests: 2010-02-04 Mark Rowe Reviewed by Timothy Hatcher. Build fix. Remove a symbol corresponding to an inline function from the linker export file to prevent a weak external failure. * Scripts/check-for-weak-vtables-and-externals: Renamed from WebKitTools/Scripts/check-for-weak-vtables. Teach the script how to detect weak external symbols so that these errors can be caught immediately in the future. 2010-02-04 Kenneth Rohde Christiansen Rubberstamped by Oliver Hunt. [Qt] Make it possible to choose whether the launcher should use the traditional QWidget based QWebView or the newer QGraphics based QGraphicsWebView on a QGraphicsView. * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::eventFilter): (LauncherWindow::loadStarted): (LauncherWindow::print): (LauncherWindow::screenshot): (LauncherWindow::setEditable): (LauncherWindow::setupUI): (main): * QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewGraphicsBased::resizeEvent): (GraphicsWebView::mousePressEvent): (GraphicsWebView::contextMenuEvent): * QtLauncher/webview.h: (WebViewTraditional::WebViewTraditional): (GraphicsWebView::GraphicsWebView): (WebViewGraphicsBased::setPage): 2010-02-04 Kenneth Rohde Christiansen Rubberstamped by Oliver Hunt. [Qt] QtLauncher cleanup. Refactor option handling out in utility functions and make the arguments more Qt compatible. * QtLauncher/main.cpp: (requiresGraphicsView): (LauncherApplication::handleUserOptions): * QtLauncher/utils.cpp: (takeOptionValue): (formatKeys): (enumToKeys): (appQuit): * QtLauncher/utils.h: 2010-02-04 Andras Becsi Reviewed by Tor Arne Vestbø. Implement a locking and scheduling mechanism for http testing sessions to be able to run multiple instances of run-webkit-tests parallel on the same machine. If a test session wants to run http tests and this feature is enabled, the pending sessions create lockfiles with sequential lock numbers. These locks are used to schedule the running test sessions in first come first served order. An exclusive lock ensures that the lock numbers are sequential to avoid deadlocks and starvation. Because the buildbot master specifies the flags used by slaves we need an environment variable too to be able to use the feature per-slave. Exporting WEBKIT_WAIT_FOR_HTTPD=1 before testing or using the --wait-for-httpd flag enables this feature, otherwise this patch has no effect on the testing whatsoever. https://bugs.webkit.org/show_bug.cgi?id=33153 * Scripts/run-webkit-tests: * Scripts/webkitperl/httpd.pm: 2010-01-22 Tor Arne Vestbø Reviewed by Simon Hausmann. Make run-webkit-tests work under Cygwin for the Qt port setPathForRunningWebKitApp() is implemented for the Qt port by using qmake to query for the location of the Qt libraries. This requires the original environment (%ENV) to be untouched, so launchWithCurrentEnv() was refactored to launchWithEnv(), and the code in openDumpTool() to not use %ENV but a %CLEAN_ENV instead. This has the added benefit of getting rid of the temp variables used for storing the current env. openDumpTool() is also refactored a bit into platform-spesific, port-spesific, and generic environment variables. Checks for undef was added a few places to fix Perl concat warnings when run-webkit-tests is aborted. https://bugs.webkit.org/show_bug.cgi?id=33895 * Scripts/run-webkit-tests: * Scripts/webkitdirs.pm: 2010-02-04 Yuzo Fujishima Unreviewed. Add Yuzo to the committers list. * Scripts/webkitpy/committers.py: 2010-02-03 Dirk Pranke Rubber-stamped by Eric Seidel. Change "the Chromium name" to "the name of Google Inc." in the licenses https://bugs.webkit.org/show_bug.cgi?id=34511 * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/port/__init__.py: * Scripts/webkitpy/layout_tests/port/apache_http_server.py: * Scripts/webkitpy/layout_tests/port/chromium_linux.py: * Scripts/webkitpy/layout_tests/port/chromium_mac.py: * Scripts/webkitpy/layout_tests/port/chromium_win.py: * Scripts/webkitpy/layout_tests/port/http_server.py: * Scripts/webkitpy/layout_tests/port/http_server_base.py: * Scripts/webkitpy/layout_tests/port/path_utils.py: * Scripts/webkitpy/layout_tests/port/websocket_server.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-02-03 Dirk Pranke Rubber-stamped by Eric Siedel. Rename files as part of refactoring the layout_tests package. All the platform_utils* module, the path_utils.py module, and the http server and web socket server modules are moved into a new port/ package. https://bugs.webkit.org/show_bug.cgi?id=34511 * Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/http_server.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/http_server_base.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/httpd2.pem: Removed. * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/lighttpd.conf: Removed. * Scripts/webkitpy/layout_tests/layout_package/path_utils.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py: Removed. * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/layout_package/websocket_server.py: Removed. * Scripts/webkitpy/layout_tests/port: Added. * Scripts/webkitpy/layout_tests/port/__init__.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils.py. * Scripts/webkitpy/layout_tests/port/apache_http_server.py: Copied from Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py. * Scripts/webkitpy/layout_tests/port/chromium_linux.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py. * Scripts/webkitpy/layout_tests/port/chromium_mac.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py. * Scripts/webkitpy/layout_tests/port/chromium_win.py: Copied from Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py. * Scripts/webkitpy/layout_tests/port/http_server.py: Copied from Scripts/webkitpy/layout_tests/layout_package/http_server.py. * Scripts/webkitpy/layout_tests/port/http_server_base.py: Copied from Scripts/webkitpy/layout_tests/layout_package/http_server_base.py. * Scripts/webkitpy/layout_tests/port/httpd2.pem: Copied from Scripts/webkitpy/layout_tests/layout_package/httpd2.pem. * Scripts/webkitpy/layout_tests/port/lighttpd.conf: Copied from Scripts/webkitpy/layout_tests/layout_package/lighttpd.conf. * Scripts/webkitpy/layout_tests/port/path_utils.py: Copied from Scripts/webkitpy/layout_tests/layout_package/path_utils.py. * Scripts/webkitpy/layout_tests/port/websocket_server.py: Copied from Scripts/webkitpy/layout_tests/layout_package/websocket_server.py. * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-02-03 Csaba Osztrogonác Rubber-stamped by Eric Seidel. Roll back r53559 and r54084 again, because roll out didn't solve flakeyness on the Windows Test bots https://bugs.webkit.org/show_bug.cgi?id=34399 * Scripts/run-iexploder-tests: * Scripts/run-webkit-httpd: * Scripts/run-webkit-tests: * Scripts/webkitperl/httpd.pm: Added. 2010-02-03 Csaba Osztrogonác Rubber-stamped by Eric Seidel. Roll out r53559 and r54084, because it might caused flakeyness on the Windows Test bots * Scripts/run-iexploder-tests: * Scripts/run-webkit-httpd: * Scripts/run-webkit-tests: * Scripts/webkitperl/httpd.pm: Removed. 2010-02-03 Csaba Osztrogonác Rubber-stamped by Ariya Hidayat. Roll back r53889 again, because roll out didn't solve flakeyness on the Windows Test bots https://bugs.webkit.org/show_bug.cgi?id=34399 * DumpRenderTree/win/EventSender.cpp: (buildModifierFlags): (mouseDownCallback): (mouseUpCallback): (keyDownCallback): 2010-02-03 Eric Seidel No review, just fixing copyrights. Concerns were expressed about "The Chromium Authors" being a valid legal entity for copyright assignment in the WebKit repository, so this change removes all "The Chromium Authors". I looked at the svn logs in src.chromium.org and failed to find any non-google contributions to these files, so they are all now marked as copyright "Google Inc" as all Google contributers assign copyright to "Google Inc" as part of their employment agreement. * Scripts/rebaseline-chromium-webkit-tests: * Scripts/run-chromium-webkit-tests: * Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py: * Scripts/webkitpy/layout_tests/layout_package/http_server.py: * Scripts/webkitpy/layout_tests/layout_package/http_server_base.py: * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: * Scripts/webkitpy/layout_tests/layout_package/path_utils.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py: * Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py: * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: * Scripts/webkitpy/layout_tests/layout_package/test_files.py: * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: * Scripts/webkitpy/layout_tests/layout_package/websocket_server.py: * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: * Scripts/webkitpy/layout_tests/test_types/image_diff.py: * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: * Scripts/webkitpy/layout_tests/test_types/text_diff.py: 2010-02-03 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] QtLauncher, refactor argument handling in preparation of merge with QGVLauncher * QtLauncher/main.cpp: (LauncherApplication::urls): (LauncherApplication::isRobotized): (LauncherApplication::applyDefaultSettings): (LauncherApplication::LauncherApplication): (LauncherApplication::formatKeys): (LauncherApplication::enumToKeys): (fail): (LauncherApplication::handleUserOptions): (main): 2010-02-03 Csaba Osztrogonác Rubber-stamped by Ariya Hidayat. Rolling out r53889, because it might caused flakeyness on the Windows Test bots https://bugs.webkit.org/show_bug.cgi?id=34399 * DumpRenderTree/win/EventSender.cpp: (mouseDownCallback): (mouseUpCallback): (keyDownCallback): 2010-02-03 Csaba Osztrogonác Reviewed by Ariya Hidayat. [Qt] Fix pixel tests support. https://bugs.webkit.org/show_bug.cgi?id=27813 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::open): (WebCore::DumpRenderTree::processLine): - Hash processing mechanism moved from DumpRenderTree::open to DumpRenderTree::processLine. (WebCore::DumpRenderTree::dump): Fixed and renamed variables. 2010-02-03 Kevin Watters Reviewed by Kevin Ollivier. [wx] Enable JIT compilation for wx. https://bugs.webkit.org/show_bug.cgi?id=34536 * wx/build/settings.py: 2010-02-02 Kevin Ollivier [wx] Build fix after introduction of pageNumberForElementById. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::pageNumberForElementById): 2010-02-02 Shu Chang Unreviewed. Add myself to list of committers. * Scripts/webkitpy/committers.py: 2010-02-02 Chris Jerdonek Reviewed by Shinichiro Hamaji. Moved filter-related check-webkit-style code into a separate filter module. https://bugs.webkit.org/show_bug.cgi?id=34408 This is preparatory refactoring for Bug 33684, which will allow file and folder-specific filter rules. * Scripts/webkitpy/style/checker.py: - Removed CategoryFilter class (moved to filter.py). * Scripts/webkitpy/style/checker_unittest.py: - Removed CategoryFilter unit tests (moved to filter_unittest.py). * Scripts/webkitpy/style/filter.py: Added. - Added CategoryFilter class (moved from checker.py). * Scripts/webkitpy/style/filter_unittest.py: Added. - Added CategoryFilter unit tests (moved from checker_unittest.py). * Scripts/webkitpy/style/unittests.py: - Added reference to filter_unittest.py. 2010-02-01 Chris Jerdonek Reviewed by Shinichiro Hamaji. Addressed FIXME in check-webkit-style so that the carriage-return check will work for patches. https://bugs.webkit.org/show_bug.cgi?id=34260 Also added support for limiting the number of errors reported per category, per file. * Scripts/webkitpy/style/checker.py: - Added new "whitespace/carriage_return" category from common.py. - Added MAX_REPORTS_PER_CATEGORY dictionary. - Added max_reports_per_category attribute to ProcessorOptions class. - Refactored StyleChecker._process_file(). * Scripts/webkitpy/style/checker_unittest.py: - Updated ProcessorOptionsTest tests. - Added test to check MAX_REPORTS_PER_CATEGORY. * Scripts/webkitpy/style/error_handlers.py: - Added support for suppressing the display of errors after reaching a per-category maximum (from max_reports_per_category). * Scripts/webkitpy/style/error_handlers_unittest.py: - Added test for suppressing error display. * Scripts/webkitpy/style/processors/common.py: Added. - Moved carriage-return check to new file. * Scripts/webkitpy/style/processors/common_unittest.py: Added. - Added unit tests for carriage-return check. * Scripts/webkitpy/style/unittests.py: - Added reference to common_unittest.py. 2010-02-01 Shinichiro Hamaji Reviewed by Eric Seidel. Provide a way to get page number with layoutTestController https://bugs.webkit.org/show_bug.cgi?id=33840 * DumpRenderTree/LayoutTestController.cpp: (pageNumberForElementByIdCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::pageNumberForElementById): * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::pageNumberForElementById): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::pageNumberForElementById): 2010-02-01 Shinichiro Hamaji Unreviewed fix for an invalid function call. check-webkit-style: Remove filename parameter from all functions where no longer used https://bugs.webkit.org/show_bug.cgi?id=34249 * Scripts/webkitpy/style/checker.py: 2010-02-01 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] DRT Provide global flag ability https://bugs.webkit.org/show_bug.cgi?id=34418 Add the globalFlag property to the Qt LayoutTestController to allow cross-domain indications. * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): * DumpRenderTree/qt/LayoutTestControllerQt.h: (LayoutTestController::globalFlag): (LayoutTestController::setGlobalFlag): 2010-02-01 Brady Eidson Reviewed by Adele Peterson. Crash in Safari opening new tabs to "same page" and https://bugs.webkit.org/show_bug.cgi?id=34444 Add a mode (Mac-only for now) that exercises the WebView SPI _loadBackForwardListFromOtherView: * DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (setNewWindowsCopyBackForwardListCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: (LayoutTestController::newWindowsCopyBackForwardList): (LayoutTestController::setNewWindowsCopyBackForwardList): * DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webView:createWebViewWithRequest:]): 2010-02-01 Carol Szabo Unreviewed. Add myself to list of committers. * Scripts/webkitpy/committers.py: 2010-02-01 Nate Chapin Rubber-stamped by David Levin. Add myself to reviewer list. * Scripts/webkitpy/committers.py: 2010-01-31 Chris Jerdonek Reviewed by Shinichiro Hamaji. Moved style error handler code to their own classes, and related refactoring. Increased unit test code coverage of style error handling. https://bugs.webkit.org/show_bug.cgi?id=34379 * Scripts/check-webkit-style: - Minor change: added error_count variable. * Scripts/webkitpy/style/checker.py: - Renamed ProcessorOptions.should_report_error() to is_reportable(). - In the StyleChecker class-- - Removed _default_style_error_handler(). - Added _increment_error_count(). - Refactored to use DefaultStyleErrorHandler and PatchStyleErrorHandler constructors. * Scripts/webkitpy/style/checker_unittest.py: - In the StyleStyleCheckerTest class-- - Removed write_sample_error(). - Removed test_default_style_error_handler(). * Scripts/webkitpy/style/error_handlers.py: Added. - Added DefaultStyleErrorHandler class. - Added PatchStyleErrorHandler class. * Scripts/webkitpy/style/error_handlers_unittest.py: Added. - Added unit tests for DefaultStyleErrorHandler and PatchStyleErrorHandler. * Scripts/webkitpy/style/unittests.py: - Added error_handlers unit tests. 2010-01-29 Mark Rowe Rubber-stamped by Stephanie Lewis. Fix run-leaks with newer versions of the leaks tool. * Scripts/run-leaks: 2010-01-29 Dirk Pranke Reviewed by Eric Siedel. Top-level test drivers for running the Chromium port of run-webkit-tests and being able to rebaseline test results from the test bots. The files in the Scripts directory are simply wrappers around the files in webkitpy/layout_tests for convenience. https://bugs.webkit.org/show_bug.cgi?id=31498 * Scripts/rebaseline-chromium-webkit-tests: Added. * Scripts/run-chromium-webkit-tests: Added. * Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py: Added. * Scripts/webkitpy/layout_tests/run_chromium_webkit_tests.py: Added. 2010-01-29 Dirk Pranke Reviewed by Eric Siedel. Add in the second block of python code for the Chromium port of run-webkit-tests. These files execute different diffs to classify the various types of failures from a test. * Scripts/webkitpy/layout_tests/test_types: Added. * Scripts/webkitpy/layout_tests/test_types/__init__.py: Added. * Scripts/webkitpy/layout_tests/test_types/fuzzy_image_diff.py: Added. * Scripts/webkitpy/layout_tests/test_types/image_diff.py: Added. * Scripts/webkitpy/layout_tests/test_types/test_type_base.py: Added. * Scripts/webkitpy/layout_tests/test_types/text_diff.py: Added. 2010-01-29 Dirk Pranke Reviewed by Eric Siedel. Check in the first part of the Chromium Python port of the run-webkit-tests test driver. The files under layout_tests/layout_layout constitute most of the implementation; they can be roughly divided into code that parses the "test_expectations.txt" file that describes how we expect tests to pass or fail, platform-specific hooks for the different Chromium ports (in platform_utils*), code for parsing the output of the tests and generating results files and HTML and JSON for the dashboards, auxiliary scripts for starting and stopping HTTP and Web Socket servers, and then one of the actual driver files (test_shell_thread). Code for actually parsing test output for failures and the top-level driver scripts will follow shortly. https://bugs.webkit.org/show_bug.cgi?id=31498 * Scripts/webkitpy/layout_tests: Added. * Scripts/webkitpy/layout_tests/layout_package: Added. * Scripts/webkitpy/layout_tests/layout_package/__init__.py: Added. * Scripts/webkitpy/layout_tests/layout_package/apache_http_server.py: Added. * Scripts/webkitpy/layout_tests/layout_package/http_server.py: Added. * Scripts/webkitpy/layout_tests/layout_package/http_server_base.py: Added. * Scripts/webkitpy/layout_tests/layout_package/httpd2.pem: Added. - scripts to start and stop apache. Note that the apache file generates a conf file dynamically, and we should switch to using the same static conf file that the regular run-webkit-tests uses, and we can also use the same httpd2.pem file. * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: Added. * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: Added. - scripts to generate the JSON layout test dashboard and the flakiness dashboard * Scripts/webkitpy/layout_tests/layout_package/lighttpd.conf: Added. - default configuration for LigHTTPd (used on Windows) * Scripts/webkitpy/layout_tests/layout_package/metered_stream.py: Added. - utility class that implements progress bars on the console to be displayed while the tests are running * Scripts/webkitpy/layout_tests/layout_package/path_utils.py: Added. - various routines for manipulating paths and URIs * Scripts/webkitpy/layout_tests/layout_package/platform_utils.py: Added. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_linux.py: Added. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_mac.py: Added. * Scripts/webkitpy/layout_tests/layout_package/platform_utils_win.py: Added. - platform-specific aspects of the drivers (binary names, paths, process control, etc.) * Scripts/webkitpy/layout_tests/layout_package/test_expectations.py: Added. - code for parsing the 'test_expectations.txt' file to determine which tests are expected to fail (and how) on which platforms * Scripts/webkitpy/layout_tests/layout_package/test_failures.py: Added. - code for handling different kinds of failures (generating output in the results, etc.) * Scripts/webkitpy/layout_tests/layout_package/test_files.py: Added. - code to gather the lists of tests * Scripts/webkitpy/layout_tests/layout_package/test_shell_thread.py: Added. - code to actually execute tests via TestShell and process the output * Scripts/webkitpy/layout_tests/layout_package/websocket_server.py: Added. - scripts to start and stop the pywebsocket server 2010-01-29 Dirk Pranke Reviewed by Eric Seidel. Check in a copy of the simplejson library; it will be used by the Chromium port of run-webkit-tests. https://bugs.webkit.org/show_bug.cgi?id=31498 * simplejson: Added. * simplejson/LICENSE.txt: Added. * simplejson/README.txt: Added. * simplejson/__init__.py: Added. * simplejson/_speedups.c: Added. (ascii_escape_char): (ascii_escape_unicode): (ascii_escape_str): (py_encode_basestring_ascii): (init_speedups): * simplejson/decoder.py: Added. * simplejson/encoder.py: Added. * simplejson/jsonfilter.py: Added. * simplejson/scanner.py: Added. 2010-01-29 Dirk Pranke No review Add myself to the committers list * Scripts/webkitpy/committers.py: 2010-01-29 Jeremy Orlow Reviewed by Dimitri Glazkov. A first step towards the Indexed Database API https://bugs.webkit.org/show_bug.cgi?id=34342 Add indexed database API. * Scripts/build-webkit: 2010-01-29 Andras Becsi Reviewed by Alexey Proskuryakov. Correct openHTTPD() to print requests to stdout if run-webkit-httpd is used. This fixes a regression introduced in r53559. https://bugs.webkit.org/show_bug.cgi?id=34336 * Scripts/webkitperl/httpd.pm: 2010-01-28 Jon Honeycutt MSAA: Crash when posting a notification for a detached object https://bugs.webkit.org/show_bug.cgi?id=34309 Reviewed by Darin Adler. * DumpRenderTree/AccessibilityController.h: Declare new functions. Add new members to store the event hook and the mapping of accessibility elements to their JS callbacks. * DumpRenderTree/gtk/AccessibilityControllerGtk.cpp: (AccessibilityController::notificationReceived): Stubbed. (AccessibilityController::addNotificationListener): Stubbed. * DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::notificationReceived): Stubbed. (AccessibilityController::addNotificationListener): Stubbed. * DumpRenderTree/win/AccessibilityControllerWin.cpp: (AccessibilityController::AccessibilityController): Initialize the event hook. (AccessibilityController::~AccessibilityController): Remove the event hook. Unprotect all of the JS functions that are stored in the map. (logEventProc): Clean-up a variable. (stringEvent): Return a string description of the MSAA event code. (notificationListenerProc): Get the accessible object from the event, and query it for IAccessible. Call the AccessibilityController's notificationReceived(). (comparableObject): Use QueryService to obtain the IAccessibleComparable for the IServiceProvider. (AccessibilityController::notificationReceived): Iterate the map of objects that have registered for notification callbacks. Query each for IServiceProvider, then use comparableObject() to get an IAccessibleComparable. If we find an object matching the notified object, call its callback, passing the event that was received. (AccessibilityController::addNotificationListener): If we have not created the event hook, create it. Protect the JS callback function object, and add the object and its callback to our map. * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::addNotificationListener): Call through to the AccessibilityController's addNotificationListener(). * DumpRenderTree/win/DumpRenderTreeWin.h: Add an extern declaration for the shared FrameLoadDelegate extern, so we can access it from AccessibilityController. * DumpRenderTree/win/FrameLoadDelegate.h: (FrameLoadDelegate::accessibilityController): Return the AccessibilityController. 2010-01-29 Shinichiro Hamaji Reviewed by Darin Adler. prepare-ChangeLog outputs useless messages for a nonexistent bug ID https://bugs.webkit.org/show_bug.cgi?id=34313 * Scripts/prepare-ChangeLog: 2010-01-29 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] Separate implementation from class definition. * QtLauncher/main.cpp: (LauncherWindow::webView): (LauncherWindow::LauncherWindow): (LauncherWindow::~LauncherWindow): (LauncherWindow::keyPressEvent): (LauncherWindow::grabZoomKeys): (LauncherWindow::sendTouchEvent): (LauncherWindow::eventFilter): (LauncherWindow::loadStarted): (LauncherWindow::loadFinished): (LauncherWindow::showLinkHover): (LauncherWindow::zoomIn): (LauncherWindow::zoomOut): (LauncherWindow::resetZoom): (LauncherWindow::toggleZoomTextOnly): (LauncherWindow::print): (LauncherWindow::screenshot): (LauncherWindow::setEditable): (LauncherWindow::dumpHtml): (LauncherWindow::selectElements): (LauncherWindow::setTouchMocking): (LauncherWindow::newWindow): (LauncherWindow::setupUI): 2010-01-29 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] On Maemo5, a click/touch in the location bar (when unfocused) should result in all text selected. * QtLauncher/locationedit.cpp: (LocationEdit::focusInEvent): * QtLauncher/locationedit.h: 2010-01-29 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] Show progress reaching 100% for loads. * QtLauncher/locationedit.cpp: (LocationEdit::LocationEdit): (LocationEdit::setProgress): (LocationEdit::reset): (LocationEdit::paintEvent): * QtLauncher/locationedit.h: 2010-01-29 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] Disable the QtLauncher statusbar on Maemo https://bugs.webkit.org/show_bug.cgi?id=34330 * QtLauncher/main.cpp: (LauncherWindow::showLinkHover): (LauncherWindow::selectElements): 2010-01-29 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] Display page loading progress inside the QtLauncher location bar https://bugs.webkit.org/show_bug.cgi?id=34210 * QtLauncher/QtLauncher.pro: * QtLauncher/locationedit.cpp: Added. (LocationEdit::LocationEdit): (LocationEdit::setProgress): (LocationEdit::paintEvent): * QtLauncher/locationedit.h: Added. * QtLauncher/mainwindow.cpp: (MainWindow::buildUI): * QtLauncher/mainwindow.h: 2010-01-29 Andreas Kling Reviewed by Kenneth Rohde Christiansen. [Qt] Add support for Maemo zoom keys in QtLauncher https://bugs.webkit.org/show_bug.cgi?id=34160 * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::~LauncherWindow): (LauncherWindow::keyPressEvent): (LauncherWindow::grabZoomKeys): 2010-01-29 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] Implement the display() method of the layout test controller https://bugs.webkit.org/show_bug.cgi?id=34258 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::showPage): (WebCore::DumpRenderTree::hidePage): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::display): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-28 Kevin Ollivier [wx] Build fix for MSW, use ThreadingWin.cpp as the Windows pthreads implementation implements pthread_t in a way that makes it impossible to check its validity, which is needed by ThreadingPthreads.cpp. * DumpRenderTree/wscript: * wx/build/settings.py: 2010-01-28 Andras Becsi Adding myself to the committer list. No review needed. * Scripts/webkitpy/committers.py: 2010-01-28 Hayato Ito Reviewed by David Levin. Remove NULL char from input JS file because 'grep' fails if the file contains NULL char. https://bugs.webkit.org/show_bug.cgi?id=34252 * Scripts/make-script-test-wrappers: 2010-01-28 Kevin Ollivier [wx] Build fix after removal of the zlib image decoder. * wx/build/settings.py: 2010-01-28 Csaba Osztrogonác [Qt] Unreviewed, roll out r54000. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): * DumpRenderTree/qt/LayoutTestControllerQt.h: (LayoutTestController::display): 2010-01-28 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] Implement the display() method of the layout test controller https://bugs.webkit.org/show_bug.cgi?id=34258 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::showPage): (WebCore::DumpRenderTree::hidePage): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::display): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. Eliminated the filename parameter from functions in check-webkit-style's cpp.py where it is no longer used. https://bugs.webkit.org/show_bug.cgi?id=34249 * Scripts/webkitpy/style/processors/cpp.py: - Reduced number of occurrences of "filename" variable from approximately 200 to 120. * Scripts/webkitpy/style/processors/cpp_unittest.py: - Refactored unit tests as necessary to accommodate changes to cpp.py. - Fixed bug in CppStyleTestBase.perform_include_what_you_use() where the incorrect file extension was getting passed to cpp_style.check_language(). 2010-01-28 Chris Jerdonek Reviewed by Shinichiro Hamaji. In check-webkit-style, eliminated the dependency of processors/cpp_unittest.py on checker.py. https://bugs.webkit.org/show_bug.cgi?id=34205 * Scripts/webkitpy/style/checker.py: - Addressed FIXME by removing STYLE_CATEGORIES data. - Added style_categories(). * Scripts/webkitpy/style/checker_unittest.py: - Minor changes. * Scripts/webkitpy/style/processors/cpp.py: - Added categories attribute to CppProcessor class (data was originally checker.STYLE_CATEGORIES). * Scripts/webkitpy/style/processors/cpp_unittest.py: - Addressed FIXME by eliminating "import" from checker.py. 2010-01-28 Anton Muhin Reviewed by Shinichiro Hamaji. Improve treatment of conditions and rest of the line for if, else, switch and alikes https://bugs.webkit.org/show_bug.cgi?id=34173 * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-28 Joe Mason Reviewed by Adam Barth. Limit login retries to 5 https://bugs.webkit.org/show_bug.cgi?id=34193 * Scripts/webkitpy/bugzilla.py: 2010-01-27 Martin Robinson Adding myself to the committer list. No review necessary. * Scripts/webkitpy/committers.py: 2010-01-27 George Wright Reviewed by Adam Treat. https://bugs.webkit.org/show_bug.cgi?id=34216 Add missing include for wtf/Platform.h * DumpRenderTree/AccessibilityController.h: 2010-01-27 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] DRT Provide worker thread ability to track counters https://bugs.webkit.org/show_bug.cgi?id=34221 Implement workerThreadCount() in LayoutTestController of Qt DRT Tests: fast/workers/dedicated-worker-lifecycle.html fast/workers/shared-worker-frame-lifecycle.html fast/workers/shared-worker-lifecycle.html fast/workers/worker-lifecycle.html * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::workerThreadCount): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher refactoring: Make the LauncherWindow depend less on the view, so that more code can be shared in near future. * QtLauncher/main.cpp: (LauncherWindow::sendTouchEvent): (LauncherWindow::loadFinished): (LauncherWindow::zoomIn): (LauncherWindow::zoomOut): (LauncherWindow::resetZoom): (LauncherWindow::toggleZoomTextOnly): (LauncherWindow::dumpHtml): (LauncherWindow::selectElements): (LauncherWindow::setupUI): 2010-01-27 Kinuko Yasuda Reviewed by Eric Seidel. Correctly handle the KeyLocation argument that has been introduced recently to test location-dependent key events in EventSender.keyDown. http://bugs.webkit.org/show_bug.cgi?id=28247 Test: fast/events/keydown-numpad-keys.html * DumpRenderTree/gtk/EventSender.cpp: (keyDownCallback): 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher refactoring: Move out code from the MainWindow (renamed to LauncherWindow) that is not depending on the view, and add it to a new class called MainWindow. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::eventFilter): (LauncherWindow::loadStarted): (LauncherWindow::loadFinished): (LauncherWindow::newWindow): (LauncherWindow::setupUI): (WebPage::createWindow): (main): * QtLauncher/mainwindow.cpp: Added. (MainWindow::MainWindow): (MainWindow::buildUI): (MainWindow::page): (MainWindow::setAddressUrl): (MainWindow::addCompleterEntry): (MainWindow::load): (MainWindow::changeLocation): (MainWindow::openFile): * QtLauncher/mainwindow.h: Added. 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher, coding style fixes. * QtLauncher/main.cpp: (MainWindow::MainWindow): (MainWindow::sendTouchEvent): (MainWindow::eventFilter): (MainWindow::loadURL): (MainWindow::setupUI): (WebPage::createPlugin): 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] QtLauncher refactoring, separating the webview and adding a QGraphicsWebView based version. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: (MainWindow::MainWindow): * QtLauncher/webpage.h: * QtLauncher/webview.cpp: Added. (createContextMenu): (WebViewGraphicsBased::mousePressEvent): (WebViewTraditional::mousePressEvent): (WebViewGraphicsBased::contextMenuEvent): (WebViewTraditional::contextMenuEvent): * QtLauncher/webview.h: Added. (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewTraditional::WebViewTraditional): 2010-01-27 Alexander Pavlov Adding myself as committer. No review necessary. * Scripts/webkitpy/committers.py: 2010-01-27 Eric Seidel Reviewed by Darin Adler. webkit-patch needs an open-bugs command https://bugs.webkit.org/show_bug.cgi?id=30793 * Scripts/test-webkitpy: import OpenBugsTest * Scripts/webkit-patch: import OpenBugs * Scripts/webkitpy/commands/download_unittest.py: don't import unittest * Scripts/webkitpy/commands/early_warning_system_unittest.py: ditto * Scripts/webkitpy/commands/queries_unittest.py: ditto * Scripts/webkitpy/commands/queues_unittest.py: ditto * Scripts/webkitpy/commands/upload_unittest.py: ditto * Scripts/webkitpy/mock_bugzillatool.py: log when user.open_url is called. 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann [Qt] QtLauncher refactoring, separating utility methods. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: * QtLauncher/utils.cpp: Added. (urlFromUserInput): * QtLauncher/utils.h: Added. 2010-01-27 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann [Qt] Refactor the code in the QtLauncher dealing with HTTP proxy. * QtLauncher/main.cpp: (MainWindow::MainWindow): * QtLauncher/webpage.cpp: (WebPage::WebPage): (WebPage::applyProxy): * QtLauncher/webpage.h: 2010-01-26 Jocelyn Turcotte Reviewed by Tor Arne Vestbø. [Qt] Corrects debug build of DumpRenderTree on Windows. * DumpRenderTree/qt/DumpRenderTree.pro: 2010-01-26 Daniel Bates Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=34070 Moves the try/catch for OSError exceptions in Executive.run_command to Credentials.read_credentials() so that the unit test webkitpy.scm_unittest.SCMClassTests.test_error_handlers can assert that Executive.run_command throws an OSError exception. * Scripts/webkitpy/credentials.py: * Scripts/webkitpy/executive.py: Moved try/catch for OSError to method Credentials.read_credentials(). * Scripts/webkitpy/executive_unittest.py: Removed tests that no longer apply: test_run_command_with_bad_command_check_return_code and test_run_command_with_bad_command_check_calls_error_handler. Added new test to assert that run_command throws OSError exceptions. 2010-01-26 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] DRT WebHistory support https://bugs.webkit.org/show_bug.cgi?id=34167 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::webHistoryItemCount): (LayoutTestController::keepWebHistory): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-26 Kent Tamura Reviewed by Eric Seidel. [Win] Add modifiers parameter support to Windows DumpRenderTree https://bugs.webkit.org/show_bug.cgi?id=34068 Add support for functional name modifiers; "addSelectionKey" and "rangeSelectionKey", and modifiers parameter to eventSender.mouseDown() and eventSender.mouseUp(). This change is similar to r53498 for Mac. * DumpRenderTree/win/EventSender.cpp: (buildModifierFlags): New function to set MK_CONTROL or MK_SHIFT to WPARAM. (mouseDownCallback): Call buidlModifiersFlags(). (mouseUpCallback): ditto. (keyDownCallback): Add support for "addSelectionkey" and "rangeSelectionKey". 2010-01-26 Chris Jerdonek Reviewed by Eric Seidel. The Python autoinstall cache directory now only gets created in the directory containing autoinstall.py. https://bugs.webkit.org/show_bug.cgi?id=33365 * Scripts/webkitpy/autoinstall.py: - Also added a README file to the cache directory saying where it came from. 2010-01-26 Chris Jerdonek Reviewed by Eric Seidel. Moved the check-webkit-style processors into a new webkitpy/style/processors directory. https://bugs.webkit.org/show_bug.cgi?id=34060 * Scripts/webkitpy/style/checker.py: * Scripts/webkitpy/style/checker_unittest.py: * Scripts/webkitpy/style/cpp_style.py: Removed. * Scripts/webkitpy/style/cpp_style_unittest.py: Removed. * Scripts/webkitpy/style/processors: Added. * Scripts/webkitpy/style/processors/__init__.py: Added. * Scripts/webkitpy/style/processors/cpp.py: Copied from WebKitTools/Scripts/webkitpy/style/cpp_style.py. * Scripts/webkitpy/style/processors/cpp_unittest.py: Copied from WebKitTools/Scripts/webkitpy/style/cpp_style_unittest.py. * Scripts/webkitpy/style/processors/text.py: Copied from WebKitTools/Scripts/webkitpy/style/text_style.py. * Scripts/webkitpy/style/processors/text_unittest.py: Copied from WebKitTools/Scripts/webkitpy/style/text_style_unittest.py. * Scripts/webkitpy/style/text_style.py: Removed. * Scripts/webkitpy/style/text_style_unittest.py: Removed. * Scripts/webkitpy/style/unittests.py: 2010-01-26 Kevin Ollivier [wx] Build fix, make sure stub function returns a value. * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::counterValueForElementById): 2010-01-26 Steve Falkenburg Reviewed by Oliver Hunt. Windows build references non-existent include paths https://bugs.webkit.org/show_bug.cgi?id=34175 * DumpRenderTree/win/DumpRenderTree.vcproj: * DumpRenderTree/win/ImageDiff.vcproj: * DumpRenderTree/win/TestNetscapePlugin/TestNetscapePlugin.vcproj: 2010-01-26 Kenneth Rohde Christiansen Reviewed by Ariya Hidayat. [Qt] Separating out the UrlLoader from the QtLauncher in it's own implementation and header file. * QtLauncher/main.cpp: (main): * QtLauncher/urlloader.cpp: Added. (UrlLoader::UrlLoader): (UrlLoader::loadNext): (UrlLoader::init): (UrlLoader::getUrl): * QtLauncher/urlloader.h: Added. 2010-01-25 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored check-webkit-style by removing the file path parameter from the style error handler functions. https://bugs.webkit.org/show_bug.cgi?id=34031 * Scripts/webkitpy/style/checker.py: - Added _default_style_error_handler() to StyleChecker class. - Moved handle_style_error() to inside _default_style_error_handler(). * Scripts/webkitpy/style/checker_unittest.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/cpp_style.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/cpp_style_unittest.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/text_style.py: - Removed file path from calls to error handler. * Scripts/webkitpy/style/text_style_unittest.py: - Removed file path from calls to error handler. 2010-01-25 Jeremy Orlow Adding myself as reviewer. No review necessary. * Scripts/webkitpy/committers.py: 2010-01-25 Chris Jerdonek Reviewed by Adam Barth. Improved prepare-ChangeLog so that it preserves the relative indentation of a git commit message. https://bugs.webkit.org/show_bug.cgi?id=34058 * Scripts/prepare-ChangeLog: - Also adjusted the script so that it does not add white space characters to empty lines. 2010-01-24 Eric Seidel No review, rolling out r53763. http://trac.webkit.org/changeset/53763 https://bugs.webkit.org/show_bug.cgi?id=33895 Broke 20+ tests on Windows. * Scripts/run-webkit-tests: * Scripts/webkitdirs.pm: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. More pep8 compliance. * Scripts/webkitpy/mock_bugzillatool.py: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. More pep8 compliance. * Scripts/webkitpy/executive.py: * Scripts/webkitpy/grammar.py: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. More pep8 compliance. * Scripts/webkitpy/comments.py: * Scripts/webkitpy/committers.py: * Scripts/webkitpy/credentials.py: 2010-01-24 Adam Barth Rubber stamped by Eric Seidel. Make changelogs.py pass pep8. * Scripts/webkitpy/changelogs.py: 2010-01-23 Kenneth Rohde Christiansen [Qt] Unreviewed build fix * QtLauncher/QtLauncher.pro: * QtLauncher/webinspector.h: 2010-01-23 Kenneth Rohde Christiansen Rubberstamped by Simon Hausmann. [Qt] Move the WebInspector class to it's own header file. * QtLauncher/main.cpp: * QtLauncher/webinspector.h: Added. (WebInspector::WebInspector): (WebInspector::showEvent): (WebInspector::hideEvent): 2010-01-23 Robert Hogan Reviewed by Kenneth Rohde Christiansen. Qt DRT: respect window.close() and window.closed() Qt DRT needs to maintain a correct count of open windows for windowCount(). It also needs to delete windows that have been closed by window.close(). This fixes the following tests: plugins/destroy-during-npp-new.html fast/dom/Document/early-document-access.html fast/dom/Window/window-early-properties.html fast/events/open-window-from-another-frame.html fast/events/popup-blocking-click-in-iframe.html https://bugs.webkit.org/show_bug.cgi?id=32953 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::createWindow): (WebCore::DumpRenderTree::windowCloseRequested): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::maybeDump): 2010-01-23 Dan Bernstein Reviewed by Mark Rowe. Added a user default for specifying a fallback frameworks path in case the bundle does not contain frameworks for the current Mac OS X version. * WebKitLauncher/main.m: (fallbackMacOSXVersion): Added. Looks up the fallback version in a dictionary keyed by the FallbackSystemVersions user default and returns it. (main): If a frameworks directory for the current system version is not found, try the fallback. 2010-01-22 Tor Arne Vestbø Reviewed by Simon Hausmann. Make run-webkit-tests work under Cygwin for the Qt port setPathForRunningWebKitApp() is implemented for the Qt port by using qmake to query for the location of the Qt libraries. This requires the original environment (%ENV) to be untouched, so launchWithCurrentEnv() was refactored to launchWithEnv(), and the code in openDumpTool() to not use %ENV but a %CLEAN_ENV instead. This has the added benefit of getting rid of the temp variables used for storing the current env. openDumpTool() is also refactored a bit into platform-spesific, port-spesific, and generic environment variables. Checks for undef was added a few places to fix Perl concat warnings when run-webkit-tests is aborted. https://bugs.webkit.org/show_bug.cgi?id=33895 * Scripts/run-webkit-tests: * Scripts/webkitdirs.pm: 2010-01-22 Kevin Watters Reviewed by Kevin Ollivier. [wx] Remove the Bakefile build system, which is no longer being used. https://bugs.webkit.org/show_bug.cgi?id=34022 * DumpRenderTree/wx/DumpRenderTree.bkl: Removed. * wx/browser/browser.bkl: Removed. * wx/build-wxwebkit: Removed. 2010-01-22 Gustavo Noronha Silva Reviewed by Simon Fraser. Reset zoom level to 1.0 when resetting view state. This is causing many tests to fail after svg/custom/text-zoom.xhtml changes the zoom level. * DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): 2010-01-22 Steve Falkenburg Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=34025 Enable client-based Geolocation abstraction for Mac, Windows AppleWebKit targets. * Scripts/build-webkit: 2010-01-22 Adam Barth Unreviewed. Arg. Someone renamed limit to output_limit on me. * Scripts/webkitpy/commands/queues.py: 2010-01-22 Adam Barth Rubber stamped by Eric Seidel. Make __init__.py and buildbot.py pass pep8 style checker. * Scripts/webkitpy/__init__.py: * Scripts/webkitpy/buildbot.py: 2010-01-21 Joe Mason Reviewed by Adam Barth. webkit-patch should retry on invalid password https://bugs.webkit.org/show_bug.cgi?id=33955 Ask for bugs.webkit.org authentication in a loop. * Scripts/webkitpy/bugzilla.py: 2010-01-22 Adam Barth Unreviewed. Don't call seek on a NoneType. * Scripts/webkitpy/statusserver.py: 2010-01-22 Petri Latvala Reviewed by David Levin. check-webkit-style breaks on files with unknown types https://bugs.webkit.org/show_bug.cgi?id=34001 For files with type FileType.NONE, dispatch_processor returns None. * Scripts/webkitpy/style/checker.py: Don't call process_file with a processor of value None. 2010-01-22 Adam Barth Reviewed by Eric Seidel. Make bugzilla.py and webkitport.py conform to pep8 https://bugs.webkit.org/show_bug.cgi?id=34015 This patch makes webkitport.py and bugzilla.py mostly conform to PEP8 style as enforced by pep8.py. I wasn't able to get rid of all the errors because I'm not sure how to wrap some lines properly. Also, there are a few deprication errors that I couldn't resolve easily. However, this is a massive improvement in compliance. * Scripts/webkitpy/bugzilla.py: * Scripts/webkitpy/webkitport.py: 2010-01-22 Adam Barth Reviewed by Darin Adler. Limit length of EWS results to 5MB https://bugs.webkit.org/show_bug.cgi?id=34016 Hopefully this will fix the bug where the results link doesn't appear. Our current theory is that the results blob is too big and the server is rejecting the request with a 500 error. That causes us to re-try the post, but when we re-try the StringIO buffer has its seek pointer at the end. * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/statusserver.py: 2010-01-22 Chris Jerdonek Reviewed by Adam Barth. Made check-webkit-style able to check patches when script not run from source root. Also consolidated external references to a single file. https://bugs.webkit.org/show_bug.cgi?id=33791 * Scripts/check-webkit-style: - Changed to import style_references.py. * Scripts/webkitpy/style/__init__.py: - Removed __path__ hack that allowed searching Scripts/ directory. * Scripts/webkitpy/style/checker.py: - Changed to import style_references.py. * Scripts/webkitpy/style_references.py: Added. 2010-01-22 Dmitry Titov Reviewed by Maciej Stachowiak. Fix the leak of ThreadIdentifiers in threadMap across threads. https://bugs.webkit.org/show_bug.cgi?id=32689 Add a new test to verify the ThreadIdentifiers are not reused across threads. The test runs in the beginning of DumpRenderTree and spawns 2 non-WTF treads sequentially, waiting for the previous thread to terminate before starting the next. The treads use WTF::currentThread() in their thread function. Without a fix, this causes both threads to have the same ThreadIdentifier which triggers ASSERT in thread function. It also starts another thread using WTF. Without the fix, this finds pthread handle from previous threads in the WTF threadMap and asserts in WTF::establishIdentifierForPthreadHandle(). The test practically does not affect the DRT run time because the threads end immediately. * DumpRenderTree/mac/DumpRenderTree.mm: (runThread): Test thread function. (testThreadIdentifierMap): (dumpRenderTree): 2010-01-22 Kent Tamura Reviewed by Maciej Stachowiak. Fix a bug that mouseDown:withModifiers: is never called. https://bugs.webkit.org/show_bug.cgi?id=33989 * DumpRenderTree/mac/EventSendingController.mm: (+[EventSendingController isSelectorExcludedFromWebScript:]): (+[EventSendingController webScriptNameForSelector:]): 2010-01-22 Kenneth Rohde Christiansen Rubberstamped by Antti Koivisto. [Qt] Separate out the WebPage class into it's own cpp/header files. Also, removed the assumption that the view is a QWebView, in preparation of a merger of the two Qt WebKit launchers. * QtLauncher/QtLauncher.pro: * QtLauncher/main.cpp: (WebView::mousePressEvent): * QtLauncher/webpage.cpp: Added. (WebPage::supportsExtension): (WebPage::extension): (WebPage::acceptNavigationRequest): (WebPage::openUrlInDefaultBrowser): * QtLauncher/webpage.h: Added. (WebPage::WebPage): 2010-01-21 Chris Jerdonek Reviewed by Shinichiro Hamaji. Refactored to move file name and file-reading related code from cpp_style.py and text_style.py to checker.py. https://bugs.webkit.org/show_bug.cgi?id=33775 * Scripts/check-webkit-style: - Updates caused by changes to checker.py. * Scripts/webkitpy/style/checker.py: - Added SKIPPED_FILES_WITH_WARNING list. - Added SKIPPED_FILES_WITHOUT_WARNING list. - Added FileType class. - Added ProcessorDispatcher class. - In StyleChecker class: - Renamed process_patch() to check_patch(). - Renamed process_file() to check_file(). - Added _process_file(). - Related refactoring. - Addressed check_patch() FIXME to share code with process_file(). * Scripts/webkitpy/style/checker_unittest.py: - Added ProcessorDispatcherSkipTest class. - Added ProcessorDispatcherDispatchTest class. - Added StyleCheckerCheckFileTest class. * Scripts/webkitpy/style/cpp_style.py: - Renamed process_file_data() to _process_lines. - Removed process_file() (moved logic to checker.py). - Removed can_handle() (moved logic to checker.py). - Added CppProcessor class. - Removed is_exempt() (moved logic to checker.py). - Added process_file_data() back as a wrapper function. * Scripts/webkitpy/style/cpp_style_unittest.py: - Removed test_can_handle(). - Removed test_is_exempt(). - Added CppProcessorTest class. * Scripts/webkitpy/style/text_style.py: - Added TextProcessor class. - Removed process_file(). - Removed can_handle(). * Scripts/webkitpy/style/text_style_unittest.py: - Removed test_can_handle(). - Added TextProcessorTest class. 2010-01-21 Chris Jerdonek Reviewed by David Kilzer. Create a unit-tested subroutine to parse patch files created by svn-create-patch. https://bugs.webkit.org/show_bug.cgi?id=33475 * Scripts/VCSUtils.pm: - Added parseDiff(). - Added parsePatch(). * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl: Added. - Added unit tests for parseDiff(). * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl: - Total number of tests now computed dynamically. * Scripts/webkitperl/VCSUtils_unittest/parsePatch.pl: Added. - Added unit tests for parsePatch(). 2010-01-21 Kevin Ollivier [wx] Build fix, add new directory to dir list. * wx/build/settings.py: 2010-01-21 Adam Barth Reviewed by Eric Seidel. Make the EWS transactional https://bugs.webkit.org/show_bug.cgi?id=33978 Now if the EWS gets interrupted in the middle of processing a patch, the bots will re-process the patch. * Scripts/test-webkitpy: * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/commands/queues_unittest.py: * Scripts/webkitpy/patchcollection.py: * Scripts/webkitpy/patchcollection_unittest.py: Added. 2010-01-21 Adam Barth Unreviewed. Add missing "ago" for style in the status bubble. * QueueStatusServer/templates/statusbubble.html: 2010-01-21 Adam Barth Reviewed by David Levin. [style-queue] should not complain about identifier names with underscores under WebKit/gtk/webkit/ https://bugs.webkit.org/show_bug.cgi?id=33356 White list unix_hacker_style names in WebKit/gtk/webkit because these are used in the GTK+ API. * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-21 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] add setDomainRelaxationForbiddenForURLScheme in Qt DRT https://bugs.webkit.org/show_bug.cgi?id=33945 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setDomainRelaxationForbiddenForURLScheme): * DumpRenderTree/qt/LayoutTestControllerQt.h: 2010-01-21 Simon Hausmann No review, rolling out 53615 as it causes two crashes on the bot. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::createWindow): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::maybeDump): 2010-01-21 Robert Hogan Reviewed by Simon Hausmann. Qt DRT: respect window.close() and window.closed() Qt DRT needs to maintain a correct count of open windows for windowCount(). It also needs to delete windows that have been closed by window.close(). This fixes the following tests: plugins/destroy-during-npp-new.html fast/dom/Document/early-document-access.html fast/dom/Window/window-early-properties.html fast/events/open-window-from-another-frame.html fast/events/popup-blocking-click-in-iframe.html https://bugs.webkit.org/show_bug.cgi?id=32953 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree): (WebCore::DumpRenderTree::createWindow): (WebCore::DumpRenderTree::windowCloseRequested): * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::maybeDump): 2010-01-20 Eric Seidel No review, rolling out r53593. http://trac.webkit.org/changeset/53593 https://bugs.webkit.org/show_bug.cgi?id=33496 Re-rollout this patch, the commit-queue should not have landed it again, but it did due to land-diff and rollout both not clearing flags. * Scripts/webkitpy/commands/early_warning_system.py: * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/queueengine.py: * Scripts/webkitpy/scm.py: * Scripts/webkitpy/scm_unittest.py: 2010-01-20 Eric Seidel Reviewed by Adam Barth. webkit-commit-queue status page is confusing https://bugs.webkit.org/show_bug.cgi?id=33496 This should improve the status page by removing more Fail messages. To do this, I re-factored the CommitQueue and the AbstractReviewQueues to behave more like one another. This meant moving where the failure reporting was done. Previously the AbstractReviewQueue always used the parent process to report the error, while CommitQueue used the subprocess when possible, and the parent only reported errors that we didn't know how to handle (bugs in the commit-queue itself). Now the AbstractReviewQueue follow's the commit-queue's model. This got rid of a try-block in both implementations and required teaching handle_script_error in each to post Fail messages to the status server instead of calling exit(1). This will also make the style-queue share more bug posting logic with other queues: https://bugs.webkit.org/show_bug.cgi?id=33871 * Scripts/webkitpy/commands/early_warning_system.py: - Don't exit(1) as that will cause the calling queue to also report Fail to the status server. Implementors of handle_script_error are expected to update the status server if needed, but only exit if the error could not be handled. So we instead pass patch_has_failed_this_queue=True to _update_status_for_script_error in the case that this was a real failure. _update_status_for_script_error knows how to post the Fail message to the status server. - Teach _update_status_for_script_error how to post Fail messages to the status server. * Scripts/webkitpy/commands/queues.py: - Remove the try block from process_work_item since the caller already has one. - Only CC watchers on failure to cut down on commit-queue generated mail. - handle_unexpected_error needs to mark _did_fail now that the try block is gone from process_work_item. - Abstract _format_script_error_output_for_bug to share code between all queues. - The new _format_script_error_output_for_bug allows the style-queue to share the posting limit with other queues, as well as support linking to the full output. - Rename _can_build_and_test to _current_checkout_builds_and_passes_tests to better explain what revision it's testing. - Move logging out of _can_build_and_test and make the logs explain what revision we're testing. - handle_script_error now posts Fail instead of the try block in process_work_item handling it. * Scripts/webkitpy/queueengine.py: - QueueEngine is no longer used just by the commit-queue, update the logging to say "processing" instead of landing. * Scripts/webkitpy/scm.py: - Add new checkout_revision function. * Scripts/webkitpy/scm_unittest.py: - Test our new checkout_revision function. 2010-01-20 Fumitoshi Ukai Reviewed by Alexey Proskuryakov. WebSocket: Missing Request-URI, when no tralling slash in host https://bugs.webkit.org/show_bug.cgi?id=33689 Update pywebsocket to 0.4.7.1, which supports alias for resource name, so that we could test for ws://127.0.0.1:8880 * Scripts/run-webkit-tests: * Scripts/run-webkit-websocketserver: * pywebsocket/mod_pywebsocket/dispatch.py: * pywebsocket/mod_pywebsocket/handshake.py: * pywebsocket/mod_pywebsocket/standalone.py: * pywebsocket/setup.py: * pywebsocket/test/test_dispatch.py: * pywebsocket/test/test_handshake.py: 2010-01-20 Eric Seidel No review, rolling out r53537. http://trac.webkit.org/changeset/53537 https://bugs.webkit.org/show_bug.cgi?id=33496 Added a failure condition to the commit-queue and looks to have broken the EWS bots * Scripts/webkitpy/commands/early_warning_system.py: * Scripts/webkitpy/commands/queues.py: * Scripts/webkitpy/queueengine.py: * Scripts/webkitpy/scm.py: * Scripts/webkitpy/scm_unittest.py: 2010-01-20 Jon Honeycutt MSAA: accSelect() is not implemented https://bugs.webkit.org/show_bug.cgi?id=33918 Reviewed by Darin Adler. * DumpRenderTree/AccessibilityUIElement.cpp: (takeFocusCallback): Call the object's takeFocus() function. (takeSelectionCallback): Call its takeSelection() function. (addSelectionCallback): Call its addSelection() function. (removeSelectionCallback): Call its removeSelection() function. (AccessibilityUIElement::getJSClass): Add new functions to the JS class definition. * DumpRenderTree/AccessibilityUIElement.h: Declare new functions. * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp: (AccessibilityUIElement::takeFocus): Stubbed. (AccessibilityUIElement::takeSelection): Stubbed. (AccessibilityUIElement::addSelection): Stubbed. (AccessibilityUIElement::removeSelection): Stubbed. * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::takeFocus): Stubbed. (AccessibilityUIElement::takeSelection): Stubbed. (AccessibilityUIElement::addSelection): Stubbed. (AccessibilityUIElement::removeSelection): Stubbed. * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::takeFocus): Call the object's accSelect() function, passing the appropriate flag. (AccessibilityUIElement::takeSelection): Ditto. (AccessibilityUIElement::addSelection): Ditto. (AccessibilityUIElement::removeSelection): Ditto. 2010-01-20 Andras Becsi Reviewed by Alexey Proskuryakov. Extract Apache handling to httpd.pm module and use the provided functionality in scripts where Apache is needed. The module httpd.pm stores the PID of Apache in a variable and cleans up the PID directory after Apache properly shut down. Catching INT and TERM signals allows the scripts to close Apache and clean up its PID directory even if the testing was interrupted. https://bugs.webkit.org/show_bug.cgi?id=33153 * Scripts/webkitperl/httpd.pm: Added. * Scripts/run-iexploder-tests: * Scripts/run-webkit-httpd: * Scripts/run-webkit-tests: 2010-01-20 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Make DumpRenderTree build on Windows * DumpRenderTree/qt/DumpRenderTree.pro: * DumpRenderTree/qt/DumpRenderTreeQt.cpp: * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/main.cpp: 2010-01-20 Steve Block Reviewed by Eric Seidel. Fix commit bot to land patches in order of the bug last modification date. https://bugs.webkit.org/show_bug.cgi?id=33395 * Scripts/webkitpy/bugzilla.py: Modified. Added 'order=Last+Changed' to bugzilla commit queue URL. 2010-01-20 Adam Barth Reviewed by Eric Seidel. Teach check-webkit-style about WebKit/gtk/tests https://bugs.webkit.org/show_bug.cgi?id=33892 Removes false positives found in https://bugs.webkit.org/show_bug.cgi?id=30883 * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-20 Adam Barth Reviewed by Eric Seidel. Teach check-webkit-style about QGVLauncher https://bugs.webkit.org/show_bug.cgi?id=33890 Remove false positives found in https://bugs.webkit.org/show_bug.cgi?id=33708 * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-20 Eric Seidel Reviewed by Adam Barth. webkit-commit-queue status page is confusing https://bugs.webkit.org/show_bug.cgi?id=33496 This should improve the status page by removing more Fail messages. To do this, I re-factored the CommitQueue and the AbstractReviewQueues to behave more like one another. This meant moving where the failure reporting was done. Previously the AbstractReviewQueue always used the parent process to report the error, while CommitQueue used the subprocess when possible, and the parent only reported errors that we didn't know how to handle (bugs in the commit-queue itself). Now the AbstractReviewQueue follow's the commit-queue's model. This got rid of a try-block in both implementations and required teaching handle_script_error in each to post Fail messages to the status server instead of calling exit(1). This will also make the style-queue share more bug posting logic with other queues: https://bugs.webkit.org/show_bug.cgi?id=33871 * Scripts/webkitpy/commands/early_warning_system.py: - Don't exit(1) as that will cause the calling queue to also report Fail to the status server. Implementors of handle_script_error are expected to update the status server if needed, but only exit if the error could not be handled. So we instead pass patch_has_failed_this_queue=True to _update_status_for_script_error in the case that this was a real failure. _update_status_for_script_error knows how to post the Fail message to the status server. - Teach _update_status_for_script_error how to post Fail messages to the status server. * Scripts/webkitpy/commands/queues.py: - Remove the try block from process_work_item since the caller already has one. - Only CC watchers on failure to cut down on commit-queue generated mail. - handle_unexpected_error needs to mark _did_fail now that the try block is gone from process_work_item. - Abstract _format_script_error_output_for_bug to share code between all queues. - The new _format_script_error_output_for_bug allows the style-queue to share the posting limit with other queues, as well as support linking to the full output. - Rename _can_build_and_test to _current_checkout_builds_and_passes_tests to better explain what revision it's testing. - Move logging out of _can_build_and_test and make the logs explain what revision we're testing. - handle_script_error now posts Fail instead of the try block in process_work_item handling it. * Scripts/webkitpy/queueengine.py: - QueueEngine is no longer used just by the commit-queue, update the logging to say "processing" instead of landing. * Scripts/webkitpy/scm.py: - Add new checkout_revision function. * Scripts/webkitpy/scm_unittest.py: - Test our new checkout_revision function. 2010-01-20 Adam Barth Reviewed by Darin Adler. Exempt JavaScriptCore/qt/api from style checks https://bugs.webkit.org/show_bug.cgi?id=33879 Apparently there is a JavaScriptCore API for Qt as well as a WebKit API. * Scripts/webkitpy/style/cpp_style.py: * Scripts/webkitpy/style/cpp_style_unittest.py: 2010-01-19 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Don't use QSocketNotifier in the DRT for reading stdin QSocketNotifier is not available on Windows. Instead we read stdin synchronously after each test using signals and slots. * DumpRenderTree/qt/DumpRenderTreeQt.cpp: * DumpRenderTree/qt/DumpRenderTreeQt.h: * DumpRenderTree/qt/main.cpp: 2010-01-19 Adam Barth Rubber stamped by Eric Seidel. Move chromium-ews back to building release only to make the EWS faster. * Scripts/webkitpy/commands/early_warning_system.py: 2010-01-17 Jon Honeycutt MSAA: The child