Chromium Code Reviews| Index: Tools/Scripts/ensure-valid-python |
| diff --git a/Tools/Scripts/ensure-valid-python b/Tools/Scripts/ensure-valid-python |
| index b3ba9ba726d3e3408249186b7a5614f9726cb1dd..70cd7fc5a55dc8ca179073d1ddc01062fa84975e 100755 |
| --- a/Tools/Scripts/ensure-valid-python |
| +++ b/Tools/Scripts/ensure-valid-python |
| @@ -1,69 +1,25 @@ |
| -#!/usr/bin/perl -w |
| -# Copyright (C) 2010 Google Inc. All rights reserved. |
| -# |
| -# Redistribution and use in source and binary forms, with or without |
| -# modification, are permitted provided that the following conditions |
| -# are met: |
| -# |
| -# 1. Redistributions of source code must retain the above copyright |
| -# notice, this list of conditions and the following disclaimer. |
| -# 2. Redistributions in binary form must reproduce the above copyright |
| -# notice, this list of conditions and the following disclaimer in the |
| -# documentation and/or other materials provided with the distribution. |
| -# 3. Neither the name of Apple Inc. ("Apple") nor the names of |
| -# its contributors may be used to endorse or promote products derived |
| -# from this software without specific prior written permission. |
| -# |
| -# THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY |
| -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| -# DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY |
| -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
| -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
| -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
| -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
| -# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| - |
| -use strict; |
| - |
| -use FindBin; |
| -use Getopt::Long; |
| - |
| -use lib $FindBin::Bin; |
| -use VCSUtils; |
| - |
| -sub checkPythonVersion() |
| -{ |
| - # Will exit 0 if Python is 2.5 or greater, non-zero otherwise. |
| - `python -c "import sys;sys.exit(sys.version_info[:2] < (2,5))"`; |
| - return exitStatus($?) == 0; |
| -} |
| - |
| -sub main() |
| -{ |
| - my $checkOnly = 0; |
| - my $showHelp = 0; |
| - my $getOptionsResult = GetOptions( |
| - 'check-only!' => \$checkOnly, |
| - 'help|h' => \$showHelp, |
| - ); |
| - if (!$getOptionsResult || $showHelp) { |
| - print STDERR <<HELP; |
| -Usage: $0 [options] |
| - --check-only Check python version only. |
| - -h|--help Show this help message. |
| -HELP |
| - return 1; |
| - } |
| - # Congrats, your Python is fine. |
| - return 0 if checkPythonVersion(); |
| - |
| - return 1 if $checkOnly; |
| - |
| - print "Your Python version is insufficient to run WebKit's Python code. Please update.\n"; |
| - print "See http://trac.webkit.org/wiki/PythonGuidelines for more info.\n"; |
| - return 1; |
| -} |
| - |
| -exit(main()); |
| +#!/usr/bin/python |
| +# Copyright 2014 The Chromium Authors. All rights reserved. |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +# The script is designed to run on both Python2.x and Python3.x |
| +# thus the usage of sys.stderr. |
| + |
| +import sys |
| + |
| +if "-h" in sys.argv or "--help" in sys.argv: |
| + sys.stderr.write(""" |
| +Usage: ensure-valid-python [options] |
| + --check-only Check python version only |
| + -h|--help Show this help message. |
| +""") |
| + sys.exit(1) |
| + |
| +if "--check-only" in sys.argv: |
| + class stderr: |
| + def write(*args): |
| + pass |
| + sys.stderr = stderr() |
|
Dirk Pranke
2014/09/10 19:59:39
Why have this? For testing the version check?
Als
|
| + |
| +import webkitpy.common.version_check |