mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
Move Python version checking to a separate module
Add a new module with methods for checking the Python version. Instead of handling Python3 imports with try...except blocks, first check the python version and then import the relevant modules. This makes the code a bit cleaner and will result in less diff when/if we remove support for Python < 3 later. Use the same mechanism to handle `input` vs. `raw_input` and add suppression of pylint warnings caused by redefinition of the built-in method `input`. Change-Id: Ia403e525b88d77640a741ac50382146e7d635924 Also-by: Chirayu Desai <cdesai@cyanogenmod.org> Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
This commit is contained in:
parent
da45e5d884
commit
59bbb580e3
@ -25,14 +25,13 @@ try:
|
||||
except ImportError:
|
||||
import dummy_threading as _threading
|
||||
import time
|
||||
try:
|
||||
import urllib2
|
||||
except ImportError:
|
||||
# For python3
|
||||
|
||||
from pyversion import is_python3
|
||||
if is_python3():
|
||||
import urllib.request
|
||||
import urllib.error
|
||||
else:
|
||||
# For python2
|
||||
import urllib2
|
||||
import imp
|
||||
urllib = imp.new_module('urllib')
|
||||
urllib.request = urllib2
|
||||
|
15
main.py
15
main.py
@ -22,13 +22,12 @@ import optparse
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
try:
|
||||
import urllib2
|
||||
except ImportError:
|
||||
# For python3
|
||||
|
||||
from pyversion import is_python3
|
||||
if is_python3():
|
||||
import urllib.request
|
||||
else:
|
||||
# For python2
|
||||
import urllib2
|
||||
urllib = imp.new_module('urllib')
|
||||
urllib.request = urllib2
|
||||
|
||||
@ -50,10 +49,10 @@ from pager import RunPager
|
||||
|
||||
from subcmds import all_commands
|
||||
|
||||
try:
|
||||
if not is_python3():
|
||||
# pylint:disable=W0622
|
||||
input = raw_input
|
||||
except NameError:
|
||||
pass
|
||||
# pylint:enable=W0622
|
||||
|
||||
global_options = optparse.OptionParser(
|
||||
usage="repo [-p|--paginate|--no-pager] COMMAND [ARGS]"
|
||||
|
@ -18,16 +18,16 @@ import itertools
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
try:
|
||||
# For python3
|
||||
import xml.dom.minidom
|
||||
|
||||
from pyversion import is_python3
|
||||
if is_python3():
|
||||
import urllib.parse
|
||||
except ImportError:
|
||||
# For python2
|
||||
else:
|
||||
import imp
|
||||
import urlparse
|
||||
urllib = imp.new_module('urllib')
|
||||
urllib.parse = urlparse
|
||||
import xml.dom.minidom
|
||||
|
||||
from git_config import GitConfig
|
||||
from git_refs import R_HEADS, HEAD
|
||||
|
@ -36,10 +36,11 @@ from trace import IsTrace, Trace
|
||||
|
||||
from git_refs import GitRefs, HEAD, R_HEADS, R_TAGS, R_PUB, R_M
|
||||
|
||||
try:
|
||||
from pyversion import is_python3
|
||||
if not is_python3():
|
||||
# pylint:disable=W0622
|
||||
input = raw_input
|
||||
except NameError:
|
||||
pass
|
||||
# pylint:enable=W0622
|
||||
|
||||
def _lwrite(path, content):
|
||||
lock = '%s.lock' % path
|
||||
|
19
pyversion.py
Normal file
19
pyversion.py
Normal file
@ -0,0 +1,19 @@
|
||||
#
|
||||
# Copyright (C) 2013 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import sys
|
||||
|
||||
def is_python3():
|
||||
return sys.version_info[0] == 3
|
8
repo
8
repo
@ -117,15 +117,13 @@ import re
|
||||
import stat
|
||||
import subprocess
|
||||
import sys
|
||||
try:
|
||||
import urllib2
|
||||
except ImportError:
|
||||
# For python3
|
||||
|
||||
if sys.version_info[0] == 3:
|
||||
import urllib.request
|
||||
import urllib.error
|
||||
else:
|
||||
# For python2
|
||||
import imp
|
||||
import urllib2
|
||||
urllib = imp.new_module('urllib')
|
||||
urllib.request = urllib2
|
||||
urllib.error = urllib2
|
||||
|
@ -19,11 +19,11 @@ import platform
|
||||
import re
|
||||
import shutil
|
||||
import sys
|
||||
try:
|
||||
# For python3
|
||||
|
||||
from pyversion import is_python3
|
||||
if is_python3():
|
||||
import urllib.parse
|
||||
except ImportError:
|
||||
# For python2
|
||||
else:
|
||||
import imp
|
||||
import urlparse
|
||||
urllib = imp.new_module('urllib')
|
||||
|
@ -21,12 +21,13 @@ except ImportError:
|
||||
import dummy_threading as _threading
|
||||
|
||||
import glob
|
||||
try:
|
||||
# For python2
|
||||
import StringIO as io
|
||||
except ImportError:
|
||||
# For python3
|
||||
|
||||
from pyversion import is_python3
|
||||
if is_python3():
|
||||
import io
|
||||
else:
|
||||
import StringIO as io
|
||||
|
||||
import itertools
|
||||
import os
|
||||
import sys
|
||||
|
@ -24,22 +24,17 @@ import socket
|
||||
import subprocess
|
||||
import sys
|
||||
import time
|
||||
try:
|
||||
# For python3
|
||||
|
||||
from pyversion import is_python3
|
||||
if is_python3():
|
||||
import urllib.parse
|
||||
except ImportError:
|
||||
# For python2
|
||||
import xmlrpc.client
|
||||
else:
|
||||
import imp
|
||||
import urlparse
|
||||
import xmlrpclib
|
||||
urllib = imp.new_module('urllib')
|
||||
urllib.parse = urlparse
|
||||
try:
|
||||
# For python3
|
||||
import xmlrpc.client
|
||||
except ImportError:
|
||||
# For python2
|
||||
import imp
|
||||
import xmlrpclib
|
||||
xmlrpc = imp.new_module('xmlrpc')
|
||||
xmlrpc.client = xmlrpclib
|
||||
|
||||
|
@ -23,10 +23,11 @@ from editor import Editor
|
||||
from error import HookError, UploadError
|
||||
from project import RepoHook
|
||||
|
||||
try:
|
||||
from pyversion import is_python3
|
||||
if not is_python3():
|
||||
# pylint:disable=W0622
|
||||
input = raw_input
|
||||
except NameError:
|
||||
pass
|
||||
# pylint:enable=W0622
|
||||
|
||||
UNUSUAL_COMMIT_THRESHOLD = 5
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user