[PATCH] histedit: limit updated and merging output to important updates
Augie Fackler
raf at durin42.com
Fri Feb 5 16:53:02 EST 2016
On Wed, Feb 03, 2016 at 07:36:01PM -0600, timeless wrote:
> # HG changeset patch
> # User timeless <timeless at mozdev.org>
> # Date 1454507524 0
> # Wed Feb 03 13:52:04 2016 +0000
> # Node ID 1d73d1bc3e54439429d43d5cab052fce474c580d
> # Parent 01a5143cd25f285f8c745a92986cd7186bb32c90
> histedit: limit updated and merging output to important updates
Queued this, thanks.
>
> Output is retained when:
> * There's a conflict
> * User asked to edit
> * User aborts
>
> otherwise, output is suppressed
>
> diff --git a/hgext/histedit.py b/hgext/histedit.py
> --- a/hgext/histedit.py
> +++ b/hgext/histedit.py
> @@ -447,13 +447,18 @@
> parentctx, but does not commit them."""
> repo = self.repo
> rulectx = repo[self.node]
> + repo.ui.pushbuffer(error=True, labeled=True)
> hg.update(repo, self.state.parentctxnode, quietempty=True)
> stats = applychanges(repo.ui, repo, rulectx, {})
> if stats and stats[3] > 0:
> + buf = repo.ui.popbuffer()
> + repo.ui.write(*buf)
> raise error.InterventionRequired(
> _('Fix up the change (%s %s)') %
> (self.verb, node.short(self.node)),
> hint=_('hg histedit --continue to resume'))
> + else:
> + repo.ui.popbuffer()
>
> def continuedirty(self):
> """Continues the action when changes have been applied to the working
> @@ -733,7 +738,9 @@
>
> def finishfold(self, ui, repo, ctx, oldctx, newnode, internalchanges):
> parent = ctx.parents()[0].node()
> + repo.ui.pushbuffer()
> hg.update(repo, parent)
> + repo.ui.popbuffer()
> ### prepare new commit data
> commitopts = {}
> commitopts['user'] = ctx.user()
> @@ -764,7 +771,9 @@
> repo.ui.restoreconfig(phasebackup)
> if n is None:
> return ctx, []
> + repo.ui.pushbuffer()
> hg.update(repo, n)
> + repo.ui.popbuffer()
> replacements = [(oldctx.node(), (newnode,)),
> (ctx.node(), (n,)),
> (newnode, (n,)),
> @@ -1167,7 +1176,9 @@
> state.write()
> ui.progress(_("editing"), None)
>
> + repo.ui.pushbuffer()
> hg.update(repo, state.parentctxnode, quietempty=True)
> + repo.ui.popbuffer()
>
> mapping, tmpnodes, created, ntm = processreplacement(state)
> if mapping:
> diff --git a/tests/test-histedit-arguments.t b/tests/test-histedit-arguments.t
> --- a/tests/test-histedit-arguments.t
> +++ b/tests/test-histedit-arguments.t
> @@ -243,9 +243,6 @@
> > p c8e68270e35a 3 four
> > f 08d98a8350f3 4 five
> > EOF
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> - reverting alpha
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> four
> ***
> five
> @@ -258,7 +255,6 @@
> HG: user: test
> HG: branch 'default'
> HG: changed alpha
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> saved backup bundle to $TESTTMP/foo/.hg/strip-backup/*-backup.hg (glob)
> saved backup bundle to $TESTTMP/foo/.hg/strip-backup/*-backup.hg (glob)
>
> diff --git a/tests/test-histedit-commute.t b/tests/test-histedit-commute.t
> --- a/tests/test-histedit-commute.t
> +++ b/tests/test-histedit-commute.t
> @@ -104,7 +104,6 @@
> > pick 055a42cdd887 d
> > EOF
> $ HGEDITOR="cat \"$EDITED\" > " hg histedit 177f92b77385 2>&1 | fixbundle
> - 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
>
> log after edit
> $ hg log --graph
> @@ -148,7 +147,6 @@
> > pick d8249471110a e
> > pick 8ade9693061e f
> > EOF
> - 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
>
> $ hg log --graph
> @ changeset: 5:7eca9b5b1148
> @@ -191,7 +189,6 @@
> > pick 915da888f2de e
> > pick 177f92b77385 c
> > EOF
> - 0 files updated, 0 files merged, 4 files removed, 0 files unresolved
> $ hg log --graph
> @ changeset: 5:38b92f448761
> | tag: tip
> @@ -232,7 +229,6 @@
> > pick 38b92f448761 c
> > pick de71b079d9ce e
> > EOF
> - 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
> $ hg log --graph
> @ changeset: 7:803ef1c6fcfd
> | tag: tip
> @@ -417,11 +413,6 @@
> > EOF
>
> $ HGEDITOR="sh ./editor.sh" hg histedit 0
> - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
> - adding another-dir/initial-file (glob)
> - removing initial-dir/initial-file (glob)
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> saved backup bundle to $TESTTMP/issue4251/.hg/strip-backup/*-backup.hg (glob)
> saved backup bundle to $TESTTMP/issue4251/.hg/strip-backup/*-backup.hg (glob)
>
> diff --git a/tests/test-histedit-drop.t b/tests/test-histedit-drop.t
> --- a/tests/test-histedit-drop.t
> +++ b/tests/test-histedit-drop.t
> @@ -59,7 +59,6 @@
> > pick 652413bf663e f
> > pick 055a42cdd887 d
> > EOF
> - 0 files updated, 0 files merged, 4 files removed, 0 files unresolved
>
> log after edit
> $ hg log --graph
> @@ -124,7 +123,6 @@
> > pick a4f7421b80f7 f
> > drop f518305ce889 d
> > EOF
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> $ hg log --graph
> @ changeset: 3:a4f7421b80f7
> | tag: tip
> @@ -158,7 +156,6 @@
> > pick cb9a9f314b8b a
> > pick ee283cb5f2d5 e
> > EOF
> - 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
> $ hg log --graph
> @ changeset: 1:e99c679bf03e
> | tag: tip
> diff --git a/tests/test-histedit-edit.t b/tests/test-histedit-edit.t
> --- a/tests/test-histedit-edit.t
> +++ b/tests/test-histedit-edit.t
> @@ -286,7 +286,6 @@
> > mv tmp "\$1"
> > EOF
> $ HGEDITOR="sh ../edit.sh" hg histedit tip 2>&1 | fixbundle
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> $ hg status
> $ hg log --limit 1
> changeset: 6:1fd3b2fe7754
> @@ -327,7 +326,6 @@
> $ HGEDITOR="sh $TESTTMP/editor.sh" hg histedit tip --commands - 2>&1 << EOF | fixbundle
> > mess 1fd3b2fe7754 f
> > EOF
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> abort: emulating unexpected abort
> $ test -f .hg/last-message.txt
> [1]
> @@ -354,8 +352,6 @@
> $ HGEDITOR="sh $TESTTMP/editor.sh" hg histedit tip --commands - 2>&1 << EOF
> > mess 1fd3b2fe7754 f
> > EOF
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> - adding f
> ==== before editing
> f
>
> @@ -408,7 +404,6 @@
> $ hg histedit tip --commands - 2>&1 << EOF | fixbundle
> > mess 1fd3b2fe7754 f
> > EOF
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> $ hg status
> $ hg log --limit 1
> changeset: 6:62feedb1200e
> diff --git a/tests/test-histedit-fold-non-commute.t b/tests/test-histedit-fold-non-commute.t
> --- a/tests/test-histedit-fold-non-commute.t
> +++ b/tests/test-histedit-fold-non-commute.t
> @@ -104,7 +104,6 @@
> > print
> > EOF
> $ HGEDITOR="python cat.py" hg histedit --continue 2>&1 | fixbundle | grep -v '2 files removed'
> - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
> d
> ***
> does not commute with e
> @@ -121,7 +120,6 @@
>
>
>
> - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
> merging e
> warning: conflicts while merging e! (edit, then use 'hg resolve --mark')
> Fix up the change (pick 7b4e2f4b7bcd)
> @@ -262,8 +260,6 @@
> (no more unresolved files)
> continue: hg histedit --continue
> $ hg histedit --continue 2>&1 | fixbundle | grep -v '2 files removed'
> - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
> - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
> merging e
> warning: conflicts while merging e! (edit, then use 'hg resolve --mark')
> Fix up the change (pick 7b4e2f4b7bcd)
> 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
> @@ -54,9 +54,6 @@
> > fold 177f92b77385 c
> > pick 055a42cdd887 d
> > EOF
> - 0 files updated, 0 files merged, 4 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
>
> log after edit
> $ hg logt --graph
> @@ -111,9 +108,6 @@
> > pick 6de59d13424a f
> > pick 9c277da72c9b d
> > EOF
> - 0 files updated, 0 files merged, 4 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
>
> $ HGEDITOR=$OLDHGEDITOR
>
> @@ -177,10 +171,7 @@
> > pick 8e03a72b6f83 f
> > fold c4a9eb7989fc d
> > EOF
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> - adding d
> allow non-folding commit
> - 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
> ==== before editing
> f
> ***
> @@ -242,9 +233,6 @@
> > 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
>
> tip after edit
> $ hg log --rev .
> @@ -372,7 +360,6 @@
> created new head
> $ echo 6 >> file
> $ HGEDITOR=cat hg histedit --continue
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> +4
> ***
> +5.2
> @@ -387,7 +374,6 @@
> HG: user: test
> HG: branch 'default'
> HG: changed file
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> saved backup bundle to $TESTTMP/fold-with-dropped/.hg/strip-backup/55c8d8dc79ce-4066cd98-backup.hg (glob)
> saved backup bundle to $TESTTMP/fold-with-dropped/.hg/strip-backup/617f94f13c0f-a35700fc-backup.hg (glob)
> $ hg logt -G
> @@ -443,10 +429,6 @@
> > pick 1c4f440a8085 rename
> > fold e0371e0426bc b
> > EOF
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> - reverting b.txt
> - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
> - 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
>
> $ hg logt --follow b.txt
> 1:cf858d235c76 rename
> @@ -489,9 +471,6 @@
> > fold a1a953ffb4b0 c
> > pick 6c795aa153cb a
> > EOF
> - 0 files updated, 0 files merged, 3 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
> commit 9599899f62c05f4377548c32bf1c9f1a39634b0c
>
> $ hg logt
> @@ -530,13 +509,6 @@
> > fold b7389cc4d66e 3 foo2
> > fold 21679ff7675c 4 foo3
> > EOF
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> - reverting foo
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> - merging foo
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> $ hg logt
> 2:e8bedbda72c1 merged foos
> 1:578c7455730c a
> diff --git a/tests/test-histedit-non-commute-abort.t b/tests/test-histedit-non-commute-abort.t
> --- a/tests/test-histedit-non-commute-abort.t
> +++ b/tests/test-histedit-non-commute-abort.t
> @@ -69,7 +69,6 @@
> > pick e860deea161a e
> > pick 652413bf663e f
> > EOF
> - 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
> merging e
> warning: conflicts while merging e! (edit, then use 'hg resolve --mark')
> Fix up the change (pick e860deea161a)
> diff --git a/tests/test-histedit-obsolete.t b/tests/test-histedit-obsolete.t
> --- a/tests/test-histedit-obsolete.t
> +++ b/tests/test-histedit-obsolete.t
> @@ -108,7 +108,6 @@
> > drop 59d9f330561f 7 d
> > pick cacdfd884a93 8 f
> > EOF
> - 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
> $ hg log --graph
> @ 11:c13eb81022ca f
> |
> @@ -167,7 +166,6 @@
> > pick 40db8afa467b 10 c
> > drop b449568bf7fc 11 f
> > EOF
> - 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> $ hg log -G
> @ 12:40db8afa467b c
> |
> @@ -187,7 +185,6 @@
> > pick 40db8afa467b 10 c
> > drop 1b3b05f35ff0 13 h
> > EOF
> - 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
> $ hg log -G
> @ 17:ee6544123ab8 c
> |
> @@ -357,7 +354,6 @@
> > pick 7395e1ff83bd 13 h
> > pick ee118ab9fa44 16 k
> > EOF
> - 0 files updated, 0 files merged, 5 files removed, 0 files unresolved
> $ hg log -G
> @ 23:558246857888 (secret) k
> |
> @@ -399,13 +395,6 @@
> > pick b605fb7503f2 14 i
> > fold ee118ab9fa44 16 k
> > EOF
> - 0 files updated, 0 files merged, 6 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
> - 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
> - 2 files updated, 0 files merged, 0 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
> $ hg log -G
> @ 27:f9daec13fb98 (secret) i
> |
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list