# HG changeset patch # User Patrick Mezard # Date 1195566107 -3600 # Node ID 00b812ad67cbd31d7f4309d8a96f61e31b33f473 # Parent 954e68e54dea619486f53d19b6c2a4b14a1289d9# Parent 61c230f8106855cf76a38a78ed1c2e958c429a32 Merge with crew-stable diff -r 954e68e54dea -r 00b812ad67cb hgext/mq.py --- a/hgext/mq.py Sun Nov 18 17:25:28 2007 +0100 +++ b/hgext/mq.py Tue Nov 20 14:41:47 2007 +0100 @@ -610,15 +610,14 @@ m, a, r, d = repo.status(files=fns, match=match)[:4] else: m, a, r, d = self.check_localchanges(repo, force) + fns, match, anypats = cmdutil.matchpats(repo, m + a + r) commitfiles = m + a + r self.check_toppatch(repo) wlock = repo.wlock() try: insert = self.full_series_end() - if msg: - n = repo.commit(commitfiles, msg, force=True) - else: - n = repo.commit(commitfiles, "[mq]: %s" % patch, force=True) + commitmsg = msg and msg or ("[mq]: %s" % patch) + n = repo.commit(commitfiles, commitmsg, match=match, force=True) if n == None: raise util.Abort(_("repo commit failed")) self.full_series[insert:insert] = [patch] diff -r 954e68e54dea -r 00b812ad67cb tests/test-mq --- a/tests/test-mq Sun Nov 18 17:25:28 2007 +0100 +++ b/tests/test-mq Tue Nov 20 14:41:47 2007 +0100 @@ -84,6 +84,27 @@ cd a +echo a > somefile +hg add somefile + +echo % qnew with uncommitted changes + +hg qnew uncommitted.patch +hg st +hg qseries + +echo '% qnew with uncommitted changes and missing file (issue 803)' + +hg qnew issue803.patch someotherfile 2>&1 | \ + sed -e 's/someotherfile:.*/someotherfile: No such file or directory/' +hg st +hg qseries +hg qpop -f +hg qdel issue803.patch + +hg revert --no-backup somefile +rm somefile + echo % qnew -m hg qnew -m 'foo bar' test.patch diff -r 954e68e54dea -r 00b812ad67cb tests/test-mq.out --- a/tests/test-mq.out Sun Nov 18 17:25:28 2007 +0100 +++ b/tests/test-mq.out Tue Nov 20 14:41:47 2007 +0100 @@ -83,6 +83,14 @@ series: A B +% qnew with uncommitted changes +abort: local changes found, refresh first +A somefile +% qnew with uncommitted changes and missing file (issue 803) +someotherfile: No such file or directory +A somefile +issue803.patch +Patch queue now empty % qnew -m foo bar % qrefresh