diff -r 22f1994fb669 -r 6e3875a80533 hgext/mq.py --- a/hgext/mq.py Wed Aug 18 23:34:28 2010 +0200 +++ b/hgext/mq.py Wed Aug 18 23:37:19 2010 +0200 @@ -47,7 +47,7 @@ from mercurial.lock import release from mercurial import commands, cmdutil, hg, patch, util from mercurial import repair, extensions, url, error -import os, sys, re, errno +import os, sys, re, errno, shutil commands.norepo += " qclone" @@ -2762,6 +2762,12 @@ _setactivenocheck(name) elif opts.get('delete'): _delete(name) + elif opts.get('purge'): + if name in existing: + _delete(name) + qdir = _queuedir(name) + if os.path.exists(qdir): + shutil.rmtree(qdir) else: if name not in existing: raise util.Abort(_('use --create to create a new queue')) @@ -3089,6 +3095,7 @@ ('c', 'create', False, _('create new queue')), ('', 'rename', False, _('rename active queue')), ('', 'delete', False, _('delete reference to queue')), + ('', 'purge', False, _('delete queue, and remove patch dir')), ], _('[OPTION] [QUEUE]')), }