D6027: mq: make unshelve to apply on modified mq patch (issue4318)

Yuya Nishihara yuya at tcha.org
Mon Mar 25 18:24:08 EDT 2019


> --- a/hgext/mq.py
> +++ b/hgext/mq.py
> @@ -3518,7 +3518,10 @@
>                  delattr(self.unfiltered(), r'mq')
>  
>          def abortifwdirpatched(self, errmsg, force=False):
> -            if self.mq.applied and self.mq.checkapplied and not force:
> +            shelveinprogress = any('shelvedstate' in state
> +                                    for state in cmdutil.unfinishedstates)
> +            if (self.mq.applied and self.mq.checkapplied and not force and
> +                not shelveinprogress):

It doesn't make sense to check the existence of 'shelvedstate' in a static
table.

Can't we somehow get around the mq in a similar way to shelve.getcommitfunc()?
I don't think it's good idea to rely on state files saved on disk.


More information about the Mercurial-devel mailing list