public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Segher Boessenkool <segher@kernel.crashing.org>
To: Jeff Law <law@redhat.com>, "H.J. Lu" <hjl.tools@gmail.com>,
	       paul@mad-scientist.net, GCC Development <gcc@gcc.gnu.org>,
	       richard.sandiford@arm.com
Subject: Re: Git ChangeLog policy for GCC Testsuite inquiry
Date: Thu, 06 Feb 2020 13:37:00 -0000	[thread overview]
Message-ID: <20200206133706.GX22482@gate.crashing.org> (raw)
In-Reply-To: <mpt7e10yu75.fsf@arm.com>

On Thu, Feb 06, 2020 at 08:51:42AM +0000, Richard Sandiford wrote:
> Segher Boessenkool <segher@kernel.crashing.org> writes:
> > On Mon, Feb 03, 2020 at 01:24:04PM -0700, Jeff Law wrote:
> >> ANd yes, even though I have been a regular ChangeLog user, I rely more
> >> and more on the git log these days.
> >
> > As a reviewer, the changelog is priceless still.  We shouldn't drop the
> > changelog before people write *good* commit messages (and we are still
> > quite far from that goal).
> 
> But that was the point of what others said upthread: now that the patch
> description is part of the commit message, we should review them for
> whether they're a good description.  The patch description should be
> as much a part of the review as the patch itself.
> 
> So IMO the right response to poor patch descriptions is to ask for
> a better one.

Certainly.  But I don't think we should drop changelogs until we are
there, or have confidence we'll get there very soon.

> The goal should be "have good patch descriptions" not
> "make all patch descriptions use format X".

If you read the "subject" discussion, you know I *very* much agree with
that.

> The traditional changelog
> format should be one acceptable way of writing good patch descriptions,
> but not the only acceptable way.

A changelog is not an acceptable patch description (except in very
trivial cases, fixing a typo in docs for example).  It says only *what*
changed, nothing more.  We *do* need that info, but we need more of
course.

> Sometimes the traditional changelog is better than a plain English
> description (the SVE PCS work being one recent example from my POV).
> But for modern VCSes there's IMO no benefit to a changelog like:
> 
> 2017-09-05  Richard Sandiford  <richard.sandiford@linaro.org>
> 
> 	* builtins.c (expand_builtin_powi): Use int_mode_for_size.

"Use"?  For what?  What does it do with it, or is it used instead of
seomething else, is that what this patch does?  The changelog should
say, but doesn't.

> 	(get_builtin_sync_mode): Likewise.
> 	(expand_ifn_atomic_compare_exchange): Likewise.
> 	(expand_builtin_atomic_clear): Likewise.
> 	(expand_builtin_atomic_test_and_set): Likewise.
> 	(fold_builtin_atomic_always_lock_free): Likewise.

You don't need to point out every function you did the same change in.
It's helpful when it is just a handful, or ten or so, but no one will
read a list of eighty.  And it is not required.

> (choosing one of mine to avoid picking on someone else).  I find
> reviewing changelogs like this an extra burden rather than a help,

Yes.  It's just something more to delete in the reply.  The tiresome
part is scanning it to see if there is something else in there.

> since reviewers are expected to make sure that every affected function
> is listed,

No, that is not required.  Every change should be noted, but you can
just say

	* builtins.c: Use int_mode_for_size instead of mode_for_size.
	* combine.c: Likewise.

etc.

> every sentence ends with a ".", the correct amount of spacing
> is used, etc.

Your editor can do that for you, but it is automatic as well: things
just look wrong if they are formatted differently.  In that sense,
consistent formatting is a great help to any reader of the code,
reviewer or not.

This is not specific to changelogs at all, of course.

> So I hope eventually we can be flexible and just use the changelog
> format as one optional way of achieving a goal, rather than being
> mandatory for every non-testsuite patch.

Yes.  Eventually.  People first need to learn to write commit messages
that are not even less helpful than the changelogs they write.

Writing a commit message should not be seen as a burden.  It's your
sales pitch!  You can (and should!) tell what is changed and why, maybe
why not in some other way, etc., so that people in the future can figure
out why this change was made, and what it intended to do.  A good commit
message makes life much easier for reviewers, too, since not many
questions will remain.

Also.  If you find it hard to write a good commit message (or a good
changelog), chances are that your patch series is not so well structured;
simply chopping one patch in two or three often helps.

Anyway, you know all that.  I just don't want a year of GCC commits
without useful history, I hope I managed to explain my view.


Segher

  reply	other threads:[~2020-02-06 13:37 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAGWvnyktjKVp-T9jrGUt_rmzgaoS0Z5N1OPP9oaOvk0Xehrb_Q@mail.gmail.com>
     [not found] ` <28d80650-26ec-04eb-65af-76151da4e411@redhat.com>
     [not found]   ` <CAGWvny=RM5cPi9VoJOKMoPNvgcybavT0CCcKSowxRNZwfrBqNw@mail.gmail.com>
     [not found]     ` <CADzB+2nLasW5mdFBWFd7xxXRLx8+UMnfXTwOYzU_x4c8=WcQRQ@mail.gmail.com>
2020-01-24 21:36       ` David Edelsohn
2020-01-24 21:45         ` Jeff Law
2020-01-24 22:38           ` Eric Botcazou
2020-01-24 22:39             ` Florian Weimer
2020-01-24 22:56             ` Jeff Law
2020-01-25  9:31               ` Jakub Jelinek
2020-01-25 10:53                 ` Paul Smith
2020-01-25 14:07                   ` H.J. Lu
2020-02-03 18:55                     ` Richard Sandiford
2020-02-03 20:24                       ` Jeff Law
2020-02-05 21:18                         ` Segher Boessenkool
2020-02-06  8:51                           ` Richard Sandiford
2020-02-06 13:37                             ` Segher Boessenkool [this message]
2020-02-06 13:01                           ` Jeff Law
2020-02-06 13:51                             ` Segher Boessenkool
2020-02-06 14:01                               ` Richard Biener
2020-02-06 14:40                                 ` Jonathan Wakely
2020-02-07 18:37                                   ` Tom Tromey
2020-02-07 21:41                                     ` Jason Merrill
2020-02-07 22:34                                       ` Tom Tromey
2020-02-08 16:50                                         ` Segher Boessenkool
2020-02-08 23:55                                           ` Andrew Pinski
2020-02-09 10:08                                             ` Segher Boessenkool
2020-02-10 17:51                                           ` Matthew Malcomson
2020-02-11  0:37                                             ` Segher Boessenkool
2020-02-06 22:25                                 ` Segher Boessenkool
2020-02-07  9:20                                   ` Richard Biener
2020-02-07 10:08                                     ` Jonathan Wakely
2020-02-07 23:17                                       ` Alan Modra
2020-02-08 19:58                                         ` Segher Boessenkool
2020-02-09 10:46                                           ` Jonathan Wakely
2020-02-09 17:49                                             ` Segher Boessenkool
2020-02-07 13:48                                     ` Segher Boessenkool
2020-02-07 13:56                                       ` Richard Earnshaw (lists)
2020-02-07 15:33                                         ` Segher Boessenkool
2020-02-07 15:43                                           ` Richard Earnshaw (lists)
2020-02-07 16:00                                             ` Segher Boessenkool
2020-02-10 13:09                                             ` Richard Biener
2020-02-10 17:27                                   ` Hans-Peter Nilsson
2020-02-06 14:56                             ` Jakub Jelinek
2020-02-06 16:18                               ` Segher Boessenkool
2020-02-06 16:25                                 ` Jakub Jelinek
2020-02-06 18:58                                 ` Jason Merrill
2020-02-06 23:10                                   ` Segher Boessenkool
2020-01-25 22:40               ` Nathan Sidwell
2020-01-26 14:59                 ` Jeff Law
2020-02-03 10:15                   ` Richard Earnshaw (lists)
2020-02-03 13:01                     ` Nathan Sidwell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200206133706.GX22482@gate.crashing.org \
    --to=segher@kernel.crashing.org \
    --cc=gcc@gcc.gnu.org \
    --cc=hjl.tools@gmail.com \
    --cc=law@redhat.com \
    --cc=paul@mad-scientist.net \
    --cc=richard.sandiford@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).