[PATCH V2] cmdutil: show diffs in commit message with ui.verbosecommit option

Matt Mackall mpm at selenic.com
Mon Jul 22 17:50:50 CDT 2013


On Tue, 2013-07-23 at 01:08 +0400, Alexander Plavin wrote:
> 2013/7/23 Matt Mackall <mpm at selenic.com>:
> > On Mon, 2013-07-22 at 03:51 +0400, Alexander Plavin wrote:
> >> 2013/7/17 Jordi Gutiérrez Hermoso <jordigh at octave.org>:
> >> > # HG changeset patch
> >> > # User Jordi Gutiérrez Hermoso <jordigh at octave.org>
> >> > # Date 1373469596 14400
> >> > #      Wed Jul 10 11:19:56 2013 -0400
> >> > # Node ID ef066d1bb2a746832648e03c021233d0a58b4b5d
> >> > # Parent  8667e65a39e117b7b6d9dbaf6f922be97314ee80
> >> > cmdutil: show diffs in commit message with ui.verbosecommit option
> >> >
> >> > The following adds an option, ui.verbosecommit, which displays the
> >> > entire diff about to be committed in the text editor window, prefixed
> >> > with "HG:". This is useful as a final reminder of what's about to be
> >> > committed once the commit message is written.
> >> >
> >> > diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
> >> > --- a/mercurial/cmdutil.py
> >> > +++ b/mercurial/cmdutil.py
> >> > @@ -1838,6 +1838,11 @@
> >> >      edittext.extend([_("HG: added %s") % f for f in added])
> >> >      edittext.extend([_("HG: changed %s") % f for f in modified])
> >> >      edittext.extend([_("HG: removed %s") % f for f in removed])
> >> > +    if repo.ui.config("ui","verbosecommit"):
> >> > +        edittext.append("HG: ")
> >> > +        diff = ctx.diff()
> >> > +        edittext.extend([_("HG: %s") % l
> >> > +                         for f in diff for l in f.split("\n")])
> >>
> >> This shows full diff when only some changes are selected with crecord.
> >
> > Does it affect any extensions distributed with hg? If not, you're
> > reporting this to the wrong people. We reserve the right to break our
> > internals at our whim.
> 
> Okay, for extensions bundled with hg it affects 'record' same way as I
> wrote about crecord. Also, at least for me, running 'hg ci --amend'
> when this config option is enabled gives "AttributeError: 'memctx'
> object has no attribute 'diff'".
> 
> >
> > If so, it'll probably want a BTS report.
> 
> Why? This is not in official hg yet.

<rhetorical>
Is it more acceptable to lose track of an issue in soon-to-be-released
code than in already-released code?
</rhetorical>

If it breaks commit --amend, it needs to be marked urgent.

-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial-devel mailing list