diff options
Diffstat (limited to 'Tools/Scripts/webkitpy/tool')
17 files changed, 34 insertions, 42 deletions
diff --git a/Tools/Scripts/webkitpy/tool/bot/queueengine.py b/Tools/Scripts/webkitpy/tool/bot/queueengine.py index 2f087bfcd..752ef748a 100644 --- a/Tools/Scripts/webkitpy/tool/bot/queueengine.py +++ b/Tools/Scripts/webkitpy/tool/bot/queueengine.py @@ -28,6 +28,7 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os +import sys import time import traceback @@ -86,7 +87,7 @@ class QueueEngine: @classmethod def exit_after_handled_error(cls, error): log(error) - exit(cls.handled_error_code) + sys.exit(cls.handled_error_code) def run(self): self._begin_logging() diff --git a/Tools/Scripts/webkitpy/tool/commands/abstractsequencedcommand.py b/Tools/Scripts/webkitpy/tool/commands/abstractsequencedcommand.py index fd1089056..5eaf249c5 100644 --- a/Tools/Scripts/webkitpy/tool/commands/abstractsequencedcommand.py +++ b/Tools/Scripts/webkitpy/tool/commands/abstractsequencedcommand.py @@ -46,6 +46,6 @@ class AbstractSequencedCommand(AbstractDeclarativeCommand): state = self._prepare_state(options, args, tool) except ScriptError, e: log(e.message_with_output()) - exit(e.exit_code or 2) + self._exit(e.exit_code or 2) self._sequence.run_and_handle_errors(tool, options, state) diff --git a/Tools/Scripts/webkitpy/tool/commands/analyzechangelog.py b/Tools/Scripts/webkitpy/tool/commands/analyzechangelog.py index 2fe34ade5..b88b61f55 100644 --- a/Tools/Scripts/webkitpy/tool/commands/analyzechangelog.py +++ b/Tools/Scripts/webkitpy/tool/commands/analyzechangelog.py @@ -26,8 +26,6 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -from __future__ import with_statement - import json import re import time diff --git a/Tools/Scripts/webkitpy/tool/commands/download.py b/Tools/Scripts/webkitpy/tool/commands/download.py index 82a570a25..f18bf31a5 100644 --- a/Tools/Scripts/webkitpy/tool/commands/download.py +++ b/Tools/Scripts/webkitpy/tool/commands/download.py @@ -187,6 +187,12 @@ class ProcessBugsMixin(object): patches = tool.bugs.fetch_bug(bug_id).reviewed_patches() log("%s found on bug %s." % (pluralize("reviewed patch", len(patches)), bug_id)) all_patches += patches + if not all_patches: + log("No reviewed patches found, looking for unreviewed patches.") + for bug_id in args: + patches = tool.bugs.fetch_bug(bug_id).patches() + log("%s found on bug %s." % (pluralize("patch", len(patches)), bug_id)) + all_patches += patches return all_patches diff --git a/Tools/Scripts/webkitpy/tool/commands/download_unittest.py b/Tools/Scripts/webkitpy/tool/commands/download_unittest.py index 55a22869e..eab8461b9 100644 --- a/Tools/Scripts/webkitpy/tool/commands/download_unittest.py +++ b/Tools/Scripts/webkitpy/tool/commands/download_unittest.py @@ -104,10 +104,14 @@ class DownloadCommandsTest(CommandsTest): expected_stderr = "Updating working directory\nProcessing 1 patch from 1 bug.\nProcessing patch 10000 from bug 50000.\n" self.assert_execute_outputs(ApplyAttachment(), [10000], options=options, expected_stderr=expected_stderr) - def test_apply_patches(self): + def test_apply_from_bug(self): options = self._default_options() options.update = True options.local_commit = True + + expected_stderr = "Updating working directory\n0 reviewed patches found on bug 50001.\nNo reviewed patches found, looking for unreviewed patches.\n1 patch found on bug 50001.\nProcessing 1 patch from 1 bug.\nProcessing patch 10002 from bug 50001.\n" + self.assert_execute_outputs(ApplyFromBug(), [50001], options=options, expected_stderr=expected_stderr) + expected_stderr = "Updating working directory\n2 reviewed patches found on bug 50000.\nProcessing 2 patches from 1 bug.\nProcessing patch 10000 from bug 50000.\nProcessing patch 10001 from bug 50000.\n" self.assert_execute_outputs(ApplyFromBug(), [50000], options=options, expected_stderr=expected_stderr) diff --git a/Tools/Scripts/webkitpy/tool/commands/queues.py b/Tools/Scripts/webkitpy/tool/commands/queues.py index f61a63991..ed851781c 100644 --- a/Tools/Scripts/webkitpy/tool/commands/queues.py +++ b/Tools/Scripts/webkitpy/tool/commands/queues.py @@ -27,12 +27,11 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -from __future__ import with_statement - import codecs +import os +import sys import time import traceback -import os from datetime import datetime from optparse import make_option @@ -440,4 +439,4 @@ class StyleQueue(AbstractReviewQueue): QueueEngine.exit_after_handled_error(script_error) message = "Attachment %s did not pass %s:\n\n%s\n\nIf any of these errors are false positives, please file a bug against check-webkit-style." % (state["patch"].id(), cls.name, script_error.message_with_output(output_limit=3*1024)) tool.bugs.post_comment_to_bug(state["patch"].bug_id(), message, cc=cls.watchers) - exit(1) + sys.exit(1) diff --git a/Tools/Scripts/webkitpy/tool/commands/queues_unittest.py b/Tools/Scripts/webkitpy/tool/commands/queues_unittest.py index eea8e56a4..8f8f19835 100644 --- a/Tools/Scripts/webkitpy/tool/commands/queues_unittest.py +++ b/Tools/Scripts/webkitpy/tool/commands/queues_unittest.py @@ -118,12 +118,6 @@ class AbstractQueueTest(CommandsTest): def test_log_from_script_error_for_upload(self): self._assert_log_message(ScriptError("test"), "test") - # In python 2.5 unicode(Exception) is busted. See: - # http://bugs.python.org/issue2517 - # With no good workaround, we just ignore these tests. - if not hasattr(Exception, "__unicode__"): - return - unicode_tor = u"WebKit \u2661 Tor Arne Vestb\u00F8!" utf8_tor = unicode_tor.encode("utf-8") self._assert_log_message(ScriptError(unicode_tor), utf8_tor) diff --git a/Tools/Scripts/webkitpy/tool/commands/upload.py b/Tools/Scripts/webkitpy/tool/commands/upload.py index 1436a9378..ff6d22eae 100644 --- a/Tools/Scripts/webkitpy/tool/commands/upload.py +++ b/Tools/Scripts/webkitpy/tool/commands/upload.py @@ -410,7 +410,7 @@ class MarkBugFixed(AbstractDeclarativeCommand): if needs_prompt: if not tool.user.confirm("Is this correct?"): - exit(1) + self._exit(1) bug_comment = bug_comment_from_svn_revision(svn_revision) if options.comment: diff --git a/Tools/Scripts/webkitpy/tool/multicommandtool.py b/Tools/Scripts/webkitpy/tool/multicommandtool.py index 4848ae532..38c410cf8 100644 --- a/Tools/Scripts/webkitpy/tool/multicommandtool.py +++ b/Tools/Scripts/webkitpy/tool/multicommandtool.py @@ -58,6 +58,9 @@ class Command(object): # This default parser will be used for standalone_help printing. self.option_parser = HelpPrintingOptionParser(usage=SUPPRESS_USAGE, add_help_option=False, option_list=self.options) + def _exit(self, code): + sys.exit(code) + # This design is slightly awkward, but we need the # the tool to be able to create and modify the option_parser # before it knows what Command to run. diff --git a/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py b/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py index 34486a378..9d99835f1 100644 --- a/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py +++ b/Tools/Scripts/webkitpy/tool/servers/gardeningserver_unittest.py @@ -26,12 +26,7 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -try: - import json -except ImportError: - # python 2.5 compatibility - import webkitpy.thirdparty.simplejson as json - +import json import unittest from webkitpy.common.system.outputcapture import OutputCapture diff --git a/Tools/Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py b/Tools/Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py index 0b9bc43af..ae4a05eb0 100644 --- a/Tools/Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py +++ b/Tools/Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py @@ -26,15 +26,9 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +import json import unittest -try: - import json -except ImportError: - # python 2.5 compatibility - import webkitpy.thirdparty.simplejson as json - - from webkitpy.common.net import resultsjsonparser_unittest from webkitpy.common.host_mock import MockHost from webkitpy.layout_tests.layout_package.json_results_generator import strip_json_wrapper diff --git a/Tools/Scripts/webkitpy/tool/servers/reflectionhandler.py b/Tools/Scripts/webkitpy/tool/servers/reflectionhandler.py index db118afa6..9b73c4efe 100644 --- a/Tools/Scripts/webkitpy/tool/servers/reflectionhandler.py +++ b/Tools/Scripts/webkitpy/tool/servers/reflectionhandler.py @@ -26,20 +26,13 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -from __future__ import with_statement - -try: - import json -except ImportError: - # python 2.5 compatibility - import webkitpy.thirdparty.simplejson as json - import BaseHTTPServer import cgi import codecs import datetime import fnmatch +import json import mimetypes import os import os.path diff --git a/Tools/Scripts/webkitpy/tool/steps/abstractstep.py b/Tools/Scripts/webkitpy/tool/steps/abstractstep.py index 5ac976f9e..db0c0d5a8 100644 --- a/Tools/Scripts/webkitpy/tool/steps/abstractstep.py +++ b/Tools/Scripts/webkitpy/tool/steps/abstractstep.py @@ -26,6 +26,8 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +import sys + from webkitpy.common.system.executive import ScriptError from webkitpy.common.config.ports import WebKitPort from webkitpy.tool.steps.options import Options @@ -36,6 +38,9 @@ class AbstractStep(object): self._tool = tool self._options = options + def _exit(self, code): + sys.exit(code) + def _changed_files(self, state): return self.cached_lookup(state, "changed_files") diff --git a/Tools/Scripts/webkitpy/tool/steps/checkstyle.py b/Tools/Scripts/webkitpy/tool/steps/checkstyle.py index a1a318134..f600d17d0 100644 --- a/Tools/Scripts/webkitpy/tool/steps/checkstyle.py +++ b/Tools/Scripts/webkitpy/tool/steps/checkstyle.py @@ -67,4 +67,4 @@ class CheckStyle(AbstractStep): # style-queue do the right thing. raise e if not self._tool.user.confirm("Are you sure you want to continue?"): - exit(1) + self._exit(1) diff --git a/Tools/Scripts/webkitpy/tool/steps/commit.py b/Tools/Scripts/webkitpy/tool/steps/commit.py index e8fc392ba..9e69e7980 100644 --- a/Tools/Scripts/webkitpy/tool/steps/commit.py +++ b/Tools/Scripts/webkitpy/tool/steps/commit.py @@ -26,6 +26,8 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +import sys + from webkitpy.common.checkout.scm import AuthenticationError, AmbiguousCommitError from webkitpy.common.config import urls from webkitpy.common.system.deprecated_logging import log @@ -65,7 +67,7 @@ class Commit(AbstractStep): self._tool.executive.run_and_throw_if_fail(self._tool.port().check_webkit_style_command() + args, cwd=self._tool.scm().checkout_root) except ScriptError, e: if not self._tool.user.confirm("Are you sure you want to continue?", default="n"): - exit(1) + self._exit(1) def run(self, state): self._commit_message = self._tool.checkout().commit_message_for_this_commit(self._options.git_commit).message() diff --git a/Tools/Scripts/webkitpy/tool/steps/confirmdiff.py b/Tools/Scripts/webkitpy/tool/steps/confirmdiff.py index 7e8e34898..86c8a2c8d 100644 --- a/Tools/Scripts/webkitpy/tool/steps/confirmdiff.py +++ b/Tools/Scripts/webkitpy/tool/steps/confirmdiff.py @@ -74,4 +74,4 @@ class ConfirmDiff(AbstractStep): if pretty_diff_file: pretty_diff_file.close() if not diff_correct: - exit(1) + self._exit(1) diff --git a/Tools/Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py b/Tools/Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py index aa9d5e981..b5f2d1b4f 100644 --- a/Tools/Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py +++ b/Tools/Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py @@ -26,8 +26,6 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -from __future__ import with_statement - import codecs import os import tempfile |