Some fixes for supporting python3
* Fix imports. * Use python3 syntax. * Wrap map() calls with list(). * Use list() only wherever needed. (Thanks Conley!) * Fix dictionary iteration methods (s/iteritems/items/). * Make use of sorted() in appropriate places * Use iterators directly in the loop. * Don't use .keys() wherever it isn't needed. * Use sys.maxsize instead of sys.maxint TODO: * Make repo work fully with python3. :) Some of this was done by the '2to3' tool [1], by applying the needed fixes in a way that doesn't break compatibility with python2. Links: [1]: http://docs.python.org/2/library/2to3.html Change-Id: Ibdf3bf9a530d716db905733cb9bfef83a48820f7 Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
This commit is contained in:
parent
fef4ae74e2
commit
217ea7d274
14 changed files with 130 additions and 90 deletions
|
@ -24,8 +24,24 @@ import socket
|
|||
import subprocess
|
||||
import sys
|
||||
import time
|
||||
import urlparse
|
||||
import xmlrpclib
|
||||
try:
|
||||
# For python3
|
||||
import urllib.parse
|
||||
except ImportError:
|
||||
# For python2
|
||||
import imp
|
||||
import urlparse
|
||||
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
|
||||
|
||||
try:
|
||||
import threading as _threading
|
||||
|
@ -498,7 +514,7 @@ later is required to fix a server side protocol bug.
|
|||
file=sys.stderr)
|
||||
else:
|
||||
try:
|
||||
parse_result = urlparse.urlparse(manifest_server)
|
||||
parse_result = urllib.parse(manifest_server)
|
||||
if parse_result.hostname:
|
||||
username, _account, password = \
|
||||
info.authenticators(parse_result.hostname)
|
||||
|
@ -516,7 +532,7 @@ later is required to fix a server side protocol bug.
|
|||
1)
|
||||
|
||||
try:
|
||||
server = xmlrpclib.Server(manifest_server)
|
||||
server = xmlrpc.client.Server(manifest_server)
|
||||
if opt.smart_sync:
|
||||
p = self.manifest.manifestProject
|
||||
b = p.GetBranch(p.CurrentBranch)
|
||||
|
@ -525,8 +541,7 @@ later is required to fix a server side protocol bug.
|
|||
branch = branch[len(R_HEADS):]
|
||||
|
||||
env = os.environ.copy()
|
||||
if (env.has_key('TARGET_PRODUCT') and
|
||||
env.has_key('TARGET_BUILD_VARIANT')):
|
||||
if 'TARGET_PRODUCT' in env and 'TARGET_BUILD_VARIANT' in env:
|
||||
target = '%s-%s' % (env['TARGET_PRODUCT'],
|
||||
env['TARGET_BUILD_VARIANT'])
|
||||
[success, manifest_str] = server.GetApprovedManifest(branch, target)
|
||||
|
@ -554,11 +569,11 @@ later is required to fix a server side protocol bug.
|
|||
else:
|
||||
print('error: %s' % manifest_str, file=sys.stderr)
|
||||
sys.exit(1)
|
||||
except (socket.error, IOError, xmlrpclib.Fault) as e:
|
||||
except (socket.error, IOError, xmlrpc.client.Fault) as e:
|
||||
print('error: cannot connect to manifest server %s:\n%s'
|
||||
% (self.manifest.manifest_server, e), file=sys.stderr)
|
||||
sys.exit(1)
|
||||
except xmlrpclib.ProtocolError as e:
|
||||
except xmlrpc.client.ProtocolError as e:
|
||||
print('error: cannot connect to manifest server %s:\n%d %s'
|
||||
% (self.manifest.manifest_server, e.errcode, e.errmsg),
|
||||
file=sys.stderr)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue