# HG changeset patch # User timeless <timel...@mozdev.org> # Date 1472058828 0 # Wed Aug 24 17:13:48 2016 +0000 # Node ID 7b0afc5eacdc0662ed0fcde8eb58c8e599a7f695 # Parent b1809f5d7630a3fff0fa715bbd30dba0f07672a8 # Available At https://bitbucket.org/timeless/mercurial-crew # hg pull https://bitbucket.org/timeless/mercurial-crew -r 7b0afc5eacdc histedit: report progress from verifyactions (issue5341)
With this change, I get progress like this: checking [==> ] 39/726 5m01s And sadly, those time estimates are accurate. The verifyactions step is *much* slower than the editing stage: editing [===> ] 49/726 1m47s diff -r b1809f5d7630 -r 7b0afc5eacdc hgext/histedit.py --- a/hgext/histedit.py Mon Aug 15 20:39:33 2016 -0700 +++ b/hgext/histedit.py Wed Aug 24 17:13:48 2016 +0000 @@ -1382,14 +1382,14 @@ def warnverifyactions(ui, repo, actions, state, ctxs): try: - verifyactions(actions, state, ctxs) + verifyactions(ui, actions, state, ctxs) except error.ParseError: if repo.vfs.exists('histedit-last-edit.txt'): ui.warn(_('warning: histedit rules saved ' 'to: .hg/histedit-last-edit.txt\n')) raise -def verifyactions(actions, state, ctxs): +def verifyactions(ui, actions, state, ctxs): """Verify that there exists exactly one action per given changeset and other constraints. @@ -1399,7 +1399,12 @@ expected = set(c.hex() for c in ctxs) seen = set() prev = None + rulelen = len(actions) + i = 0 for action in actions: + i += 1 + ui.progress(_("checking"), i, 'task', + _('changes'), rulelen) action.verify(prev) prev = action constraints = action.constraints() @@ -1426,6 +1431,7 @@ 'duplicated command for changeset %s') % ha[:12]) seen.add(ha) + ui.progress(_("checking"), None) missing = sorted(expected - seen) # sort to stabilize output if state.repo.ui.configbool('histedit', 'dropmissing'): _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel