# HG changeset patch # User timeless # Date 2015-12-18 06:19:22 # Node ID f209c85183a72873a9428e2f68b617e56bd09d7f # Parent 467338e690f82e418d252c0ea09e169483dac8b7 histedit: add progress support diff --git a/hgext/histedit.py b/hgext/histedit.py --- a/hgext/histedit.py +++ b/hgext/histedit.py @@ -1082,15 +1082,21 @@ def _histedit(ui, repo, state, *freeargs if action.verb == 'fold' and nextact and nextact.verb == 'fold': state.actions[idx].__class__ = _multifold + total = len(state.actions) + pos = 0 while state.actions: state.write() actobj = state.actions.pop(0) + pos += 1 + ui.progress(_("editing"), pos, actobj.torule(), + _('changes'), total) ui.debug('histedit: processing %s %s\n' % (actobj.verb,\ actobj.torule())) parentctx, replacement_ = actobj.run() state.parentctxnode = parentctx.node() state.replacements.extend(replacement_) state.write() + ui.progress(_("editing"), None) hg.update(repo, state.parentctxnode, quietempty=True) diff --git a/tests/test-histedit-fold.t b/tests/test-histedit-fold.t --- a/tests/test-histedit-fold.t +++ b/tests/test-histedit-fold.t @@ -234,10 +234,14 @@ tip before edit summary: f - $ hg histedit e860deea161a --commands - 2>&1 < histedit e860deea161a --commands - 2>&1 < egrep 'editing|unresolved' > pick e860deea161a e > fold a00ad806cb55 f > EOF + editing: pick e860deea161a 4 e 1/2 changes (50.00%) + editing: fold a00ad806cb55 5 f 2/2 changes (100.00%) 0 files updated, 0 files merged, 1 files removed, 0 files unresolved 0 files updated, 0 files merged, 2 files removed, 0 files unresolved 2 files updated, 0 files merged, 0 files removed, 0 files unresolved