Issue #14053: Fix "make patchcheck" to work with MQ.

Patch by Francisco Martín Brugué
This commit is contained in:
Nadeem Vawda 2012-02-22 11:46:41 +02:00
parent 7ef825fdab
commit 9f64f73193
2 changed files with 15 additions and 0 deletions

View File

@ -483,6 +483,9 @@ Build
Tools/Demos Tools/Demos
----------- -----------
- Issue #14053: patchcheck.py ("make patchcheck") now works with MQ patches.
Patch by Francisco Martín Brugué.
- Issue #13930: 2to3 is now able to write its converted output files to another - Issue #13930: 2to3 is now able to write its converted output files to another
directory tree as well as copying unchanged files and altering the file directory tree as well as copying unchanged files and altering the file
suffix. See its new -o, -W and --add-suffix options. This makes it more suffix. See its new -o, -W and --add-suffix options. This makes it more

View File

@ -36,6 +36,16 @@ def status(message, modal=False, info=None):
return decorated_fxn 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", @status("Getting the list of files that have been added/changed",
info=lambda x: n_files_str(len(x))) info=lambda x: n_files_str(len(x)))
def changed_files(): def changed_files():
@ -43,6 +53,8 @@ def changed_files():
if os.path.isdir(os.path.join(SRCDIR, '.hg')): if os.path.isdir(os.path.join(SRCDIR, '.hg')):
vcs = 'hg' vcs = 'hg'
cmd = 'hg status --added --modified --no-status' cmd = 'hg status --added --modified --no-status'
if mq_patches_applied():
cmd += ' --rev qparent'
elif os.path.isdir('.svn'): elif os.path.isdir('.svn'):
vcs = 'svn' vcs = 'svn'
cmd = 'svn status --quiet --non-interactive --ignore-externals' cmd = 'svn status --quiet --non-interactive --ignore-externals'