Skip to content
Snippets Groups Projects
Commit b54d93fc authored by Augie Fackler's avatar Augie Fackler
Browse files

simplemerge: port to Python 3

Differential Revision: https://phab.mercurial-scm.org/D5081
parent 5519697b
No related branches found
No related tags found
No related merge requests found
......@@ -41,8 +41,8 @@
"""Exception raised on errors in parsing the command line."""
def showhelp():
sys.stdout.write(usage)
sys.stdout.write(b'\noptions:\n')
pycompat.stdout.write(usage.encode('utf8'))
pycompat.stdout.write(b'\noptions:\n')
out_opts = []
for shortopt, longopt, default, desc in options:
......@@ -51,6 +51,6 @@
b'%s' % desc))
opts_len = max([len(opt[0]) for opt in out_opts])
for first, second in out_opts:
sys.stdout.write(b' %-*s %s\n' % (opts_len, first, second))
pycompat.stdout.write(b' %-*s %s\n' % (opts_len, first, second))
try:
......@@ -55,7 +55,7 @@
try:
for fp in (sys.stdin, sys.stdout, sys.stderr):
for fp in (sys.stdin, pycompat.stdout, sys.stderr):
procutil.setbinary(fp)
opts = {}
try:
......@@ -58,11 +58,12 @@
procutil.setbinary(fp)
opts = {}
try:
args = fancyopts.fancyopts(sys.argv[1:], options, opts)
bargv = [a.encode('utf8') for a in sys.argv[1:]]
args = fancyopts.fancyopts(bargv, options, opts)
except getopt.GetoptError as e:
raise ParseError(e)
if opts[b'help']:
showhelp()
sys.exit(0)
if len(args) != 3:
......@@ -63,10 +64,10 @@
except getopt.GetoptError as e:
raise ParseError(e)
if opts[b'help']:
showhelp()
sys.exit(0)
if len(args) != 3:
raise ParseError(_(b'wrong number of arguments'))
raise ParseError(_(b'wrong number of arguments').decode('utf8'))
local, base, other = args
sys.exit(simplemerge.simplemerge(uimod.ui.load(),
context.arbitraryfilectx(local),
......@@ -74,7 +75,9 @@
context.arbitraryfilectx(other),
**pycompat.strkwargs(opts)))
except ParseError as e:
sys.stdout.write(b"%s: %s\n" % (sys.argv[0], e))
if pycompat.ispy3:
e = str(e).encode('utf8')
pycompat.stdout.write(b"%s: %s\n" % (sys.argv[0].encode('utf8'), e))
showhelp()
sys.exit(1)
except error.Abort as e:
......@@ -78,7 +81,7 @@
showhelp()
sys.exit(1)
except error.Abort as e:
sys.stderr.write(b"abort: %s\n" % e)
pycompat.stderr.write(b"abort: %s\n" % e)
sys.exit(255)
except KeyboardInterrupt:
sys.exit(255)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment