Mercurial > evolve
changeset 2757:2878c8a686ab
rewriteutil: move disallowednewunstable in the new module
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 23 Jul 2017 04:46:33 +0200 |
parents | f4dd6e6d4c73 |
children | 684feae20be5 |
files | hgext3rd/evolve/__init__.py hgext3rd/evolve/rewriteutil.py |
diffstat | 2 files changed, 18 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext3rd/evolve/__init__.py Sat Jul 22 23:40:28 2017 +0200 +++ b/hgext3rd/evolve/__init__.py Sun Jul 23 04:46:33 2017 +0200 @@ -2325,7 +2325,7 @@ if not precs: raise error.Abort('nothing to prune') - if _disallowednewunstable(repo, revs): + if rewriteutil.disallowednewunstable(repo, revs): raise error.Abort(_("cannot prune in the middle of a stack"), hint=_("new unstable changesets are not allowed")) @@ -2850,7 +2850,7 @@ if repo.revs("%ld and public()", revs): raise error.Abort(_('cannot edit commit information for public ' 'revisions')) - newunstable = _disallowednewunstable(repo, revs) + newunstable = rewriteutil.disallowednewunstable(repo, revs) if newunstable: msg = _('cannot edit commit information in the middle' ' of a stack') @@ -2919,18 +2919,12 @@ raise error.Abort(_("cannot fold non-linear revisions " "(multiple heads given)")) head = repo[heads.first()] - if _disallowednewunstable(repo, revs): + if rewriteutil.disallowednewunstable(repo, revs): msg = _("cannot fold chain not ending with a head or with branching") hint = _("new unstable changesets are not allowed") raise error.Abort(msg, hint=hint) return root, head -def _disallowednewunstable(repo, revs): - allowunstable = obsolete.isenabled(repo, obsolete.allowunstableopt) - if allowunstable: - return revset.baseset() - return repo.revs("(%ld::) - %ld", revs, revs) - @eh.wrapcommand('graft') def graftwrapper(orig, ui, repo, *revs, **kwargs): kwargs = dict(kwargs)
--- a/hgext3rd/evolve/rewriteutil.py Sat Jul 22 23:40:28 2017 +0200 +++ b/hgext3rd/evolve/rewriteutil.py Sun Jul 23 04:46:33 2017 +0200 @@ -11,6 +11,11 @@ # happy one piece of it (and hopefully, able to reuse it in other core # commands). +from mercurial import ( + obsolete, + revset, +) + from . import ( compat, ) @@ -25,3 +30,13 @@ if bmchanges: compat.bookmarkapplychanges(repo, tr, bmchanges) return updatebookmarks + +def disallowednewunstable(repo, revs): + """Check that editing <revs> will not create disallowed unstable + + (unstable creation is controled by some special config). + """ + allowunstable = obsolete.isenabled(repo, obsolete.allowunstableopt) + if allowunstable: + return revset.baseset() + return repo.revs("(%ld::) - %ld", revs, revs)