git-p4: don't print shell commands as python lists
Previously the git-p4 script would log commands as stringified representations of the command parameter, leading to output such as this: Reading pipe: ['git', 'config', '--bool', 'git-p4.useclientspec'] Now that all commands are list objects, this patch instead joins the elements of the list into a single string so the output now looks more readable: Reading pipe: git config --bool git-p4.useclientspec Signed-off-by: Joel Holdsworth <jholdsworth@nvidia.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
parent
8a470599f3
commit
727e6ea350
17
git-p4.py
17
git-p4.py
|
@ -275,14 +275,14 @@ def run_hook_command(cmd, param):
|
|||
|
||||
def write_pipe(c, stdin, *k, **kw):
|
||||
if verbose:
|
||||
sys.stderr.write('Writing pipe: %s\n' % str(c))
|
||||
sys.stderr.write('Writing pipe: {}\n'.format(' '.join(c)))
|
||||
|
||||
p = subprocess.Popen(c, stdin=subprocess.PIPE, *k, **kw)
|
||||
pipe = p.stdin
|
||||
val = pipe.write(stdin)
|
||||
pipe.close()
|
||||
if p.wait():
|
||||
die('Command failed: %s' % str(c))
|
||||
die('Command failed: {}'.format(' '.join(c)))
|
||||
|
||||
return val
|
||||
|
||||
|
@ -298,7 +298,7 @@ def read_pipe_full(c, *k, **kw):
|
|||
text.
|
||||
"""
|
||||
if verbose:
|
||||
sys.stderr.write('Reading pipe: %s\n' % str(c))
|
||||
sys.stderr.write('Reading pipe: {}\n'.format(' '.join(c)))
|
||||
|
||||
p = subprocess.Popen(
|
||||
c, stdout=subprocess.PIPE, stderr=subprocess.PIPE, *k, **kw)
|
||||
|
@ -317,7 +317,7 @@ def read_pipe(c, ignore_error=False, raw=False, *k, **kw):
|
|||
if ignore_error:
|
||||
out = ""
|
||||
else:
|
||||
die('Command failed: %s\nError: %s' % (str(c), err))
|
||||
die('Command failed: {}\nError: {}'.format(' '.join(c), err))
|
||||
if not raw:
|
||||
out = decode_text_stream(out)
|
||||
return out
|
||||
|
@ -338,7 +338,7 @@ def p4_read_pipe(c, ignore_error=False, raw=False, *k, **kw):
|
|||
|
||||
def read_pipe_lines(c, raw=False, *k, **kw):
|
||||
if verbose:
|
||||
sys.stderr.write('Reading pipe: %s\n' % str(c))
|
||||
sys.stderr.write('Reading pipe: {}\n'.format(' '.join(c)))
|
||||
|
||||
p = subprocess.Popen(c, stdout=subprocess.PIPE, *k, **kw)
|
||||
pipe = p.stdout
|
||||
|
@ -346,7 +346,7 @@ def read_pipe_lines(c, raw=False, *k, **kw):
|
|||
if not raw:
|
||||
lines = [decode_text_stream(line) for line in lines]
|
||||
if pipe.close() or p.wait():
|
||||
die('Command failed: %s' % str(c))
|
||||
die('Command failed: {}'.format(' '.join(c)))
|
||||
return lines
|
||||
|
||||
def p4_read_pipe_lines(c, *k, **kw):
|
||||
|
@ -385,7 +385,8 @@ def p4_has_move_command():
|
|||
|
||||
def system(cmd, ignore_error=False, *k, **kw):
|
||||
if verbose:
|
||||
sys.stderr.write("executing %s\n" % str(cmd))
|
||||
sys.stderr.write("executing {}\n".format(
|
||||
' '.join(cmd) if isinstance(cmd, list) else cmd))
|
||||
retcode = subprocess.call(cmd, *k, **kw)
|
||||
if retcode and not ignore_error:
|
||||
raise CalledProcessError(retcode, cmd)
|
||||
|
@ -720,7 +721,7 @@ def p4CmdList(cmd, stdin=None, stdin_mode='w+b', cb=None, skip_info=False,
|
|||
|
||||
cmd = p4_build_cmd(["-G"] + cmd)
|
||||
if verbose:
|
||||
sys.stderr.write("Opening pipe: %s\n" % str(cmd))
|
||||
sys.stderr.write("Opening pipe: {}\n".format(' '.join(cmd)))
|
||||
|
||||
# Use a temporary file to avoid deadlocks without
|
||||
# subprocess.communicate(), which would put another copy
|
||||
|
|
Loading…
Reference in New Issue