|
|
|
@ -36,6 +36,16 @@ def status(message, modal=False, info=None): |
|
|
|
return decorated_fxn |
|
|
|
|
|
|
|
|
|
|
|
def mq_patches_applied(): |
|
|
|
"""Check if there are any applied MQ patches.""" |
|
|
|
cmd = 'hg qapplied' |
|
|
|
with subprocess.Popen(cmd.split(), |
|
|
|
stdout=subprocess.PIPE, |
|
|
|
stderr=subprocess.PIPE) as st: |
|
|
|
bstdout, _ = st.communicate() |
|
|
|
return st.returncode == 0 and bstdout |
|
|
|
|
|
|
|
|
|
|
|
@status("Getting the list of files that have been added/changed", |
|
|
|
info=lambda x: n_files_str(len(x))) |
|
|
|
def changed_files(): |
|
|
|
@ -44,6 +54,8 @@ def changed_files(): |
|
|
|
sys.exit('need a checkout to get modified files') |
|
|
|
|
|
|
|
cmd = 'hg status --added --modified --no-status' |
|
|
|
if mq_patches_applied(): |
|
|
|
cmd += ' --rev qparent' |
|
|
|
with subprocess.Popen(cmd.split(), stdout=subprocess.PIPE) as st: |
|
|
|
return [x.decode().rstrip() for x in st.stdout] |
|
|
|
|
|
|
|
|