From: Martin Sebor <msebor@gmail.com>
To: Jonathan Wakely <jwakely.gcc@gmail.com>
Cc: Marek Polacek <polacek@redhat.com>, gcc mailing list <gcc@gcc.gnu.org>
Subject: Re: where is PRnnnn required again?
Date: Wed, 7 Jul 2021 17:38:31 -0600 [thread overview]
Message-ID: <abce4b26-90e5-fd3e-77be-856831f457c5@gmail.com> (raw)
In-Reply-To: <CAH6eHdRsKJ=B7G=3=NntN5wzX=zRA4ktzyEmh2o7RtQ31LPkew@mail.gmail.com>
On 7/7/21 4:15 PM, Jonathan Wakely wrote:
>
>
> On Wed, 7 Jul 2021, 22:35 Martin Sebor, <msebor@gmail.com
> <mailto:msebor@gmail.com>> wrote:
>
> On 7/7/21 2:42 PM, Jonathan Wakely wrote:
> >
> >
> > On Wed, 7 Jul 2021, 17:39 Martin Sebor, <msebor@gmail.com
> <mailto:msebor@gmail.com>
> > <mailto:msebor@gmail.com <mailto:msebor@gmail.com>>> wrote:
> >
> > On 7/6/21 4:09 PM, Jonathan Wakely wrote:
> > >
> > >
> > > On Tue, 6 Jul 2021, 22:45 Martin Sebor via Gcc,
> <gcc@gcc.gnu.org <mailto:gcc@gcc.gnu.org>
> > <mailto:gcc@gcc.gnu.org <mailto:gcc@gcc.gnu.org>>
> > > <mailto:gcc@gcc.gnu.org <mailto:gcc@gcc.gnu.org>
> <mailto:gcc@gcc.gnu.org <mailto:gcc@gcc.gnu.org>>>> wrote:
> > >
> > > On 7/6/21 3:36 PM, Marek Polacek wrote:
> > > > On Tue, Jul 06, 2021 at 03:20:26PM -0600, Martin
> Sebor via
> > Gcc wrote:
> > > >> I came away from the recent discussion of ChangeLogs
> > requirements
> > > >> with the impression that the PRnnnn bit should be
> in the
> > subject
> > > >> (first) line and also above the ChangeLog part but
> > doesn't need
> > > >> to be repeated again in the ChangeLog entries.
> But my commit
> > > >> below was rejected last Friday with the subsequent
> > error. Adding
> > > >> PR middle-end/98871 to the ChangeLog entry let me push
> > the change:
> > > >>
> > > >>
> > https://gcc.gnu.org/g:6feb628a706e86eb3f303aff388c74bdb29e7381
> > > >>
> > > >> I just had the same error happen now, again with what
> > seems like
> > > >> a valid commit message. Did I misunderstand
> something or has
> > > >> something changed recently?
> > > >>
> > > >> Martin
> > > >>
> > > >> commit 8a6d08bb49c2b9585c2a2adbb3121f6d9347b780
> (HEAD ->
> > master)
> > > >> Author: Martin Sebor <msebor@redhat.com
> <mailto:msebor@redhat.com>
> > <mailto:msebor@redhat.com <mailto:msebor@redhat.com>>
> <mailto:msebor@redhat.com <mailto:msebor@redhat.com>
> > <mailto:msebor@redhat.com <mailto:msebor@redhat.com>>>>
> > > >> Date: Fri Jul 2 16:16:31 2021 -0600
> > > >>
> > > >> Improve warning suppression for inlined functions
> > [PR98512].
> > > >>
> > > >> Resolves:
> > > >> PR middle-end/98871 - Cannot silence
> > -Wmaybe-uninitialized at
> > > >> declaration si
> > > >> te
> > > >> PR middle-end/98512 - #pragma GCC diagnostic
> ignored
> > > ineffective in
> > > >> conjunct
> > > >> ion with alias attribute
> > > >
> > > > This should be just
> > > >
> > > > PR middle-end/98871
> > > > PR middle-end/98512
> > > >
> > > > , no?
> > >
> > > Does it matter if there's text after the PR ...?
> > >
> > >
> > >
> > > Yes. With extra text the whole line is just treated as
> arbitrary
> > text,
> > > not a "PR component/nnnn" string. So with the extra text
> it won't be
> > > added to the ChangeLog file, and won't match the PR in the
> > subject line.
> > >
> > > I managed to push
> > >
> > > https://gcc.gnu.org/pipermail/gcc-cvs/2021-July/350316.html
> > >
> > > that uses the same style earlier today
> > >
> > >
> > > But will it add the PR numbers to the ChangeLog? I think the
> > answer is
> > > no (in which case you could edit the ChangeLog tomorrow if you
> > want them
> > > to be in there).
> >
> > It updated Bugzilla but it didn't add the PR numbers to the
> ChangeLog
> > entries. I still don't (obviously) understand the rules the
> hook uses
> > for what to update or the rationale for them. It seems as though
> > the PR in the subject is used to update only Bugzilla but not
> also
> > update the ChangeLogs (why not?)
> >
> >
> > Because they are two completely separate processes. Verifying the
> commit
> > message format is done by a git hook, and you can run exactly the
> same
> > checks locally before pushing a commit.
> >
> > Updating bugzilla is done by a separate and different process,
> which has
> > been in place for years (decades?) before we switched to git.
>
> I don't mean to turn this into a contentious back and forth but
> "because this is how it works" or "because this is how it's been
> done for eons" aren't a rationale, at least not a satisfying one.
>
>
> You didn't ask for rationale, you asked about the rules used and why you
> got that result. The reason is that "find the PR for the ChangeLog" and
> "find the PR for bugzilla" are done separately by different rules.
>
> And that's for good reasons. We want to update bugzilla for any mention
> of a PR in the commit message, but we only want to list a PR in the
> ChangeLog if it's actually what the commit directly addresses.
>
> So we need to be able to distinguish "mentions it in some way, add a
> comment to bugzilla" from "really addresses this PR, use it in the
> ChangeLog".
That's fine, what I'm proposing wouldn't change that.
>
> For example, in a commit log I might say "as discussed in the comments
> of PR 5678, this does blah blah" and that deserves to add a comment to
> that PR, but not to use that PR in the ChangeLog file. So there can't be
> only one rule.
>
> Your discussion seems to all be centred around the "really addresses
> this PR" case. While improving that might be useful, you need to be
> conscious of the other case too. Two different use cases are hard to
> address with one rule.
No, my suggestion is to handle the three cases in this email:
https://gcc.gnu.org/pipermail/gcc/2021-July/236696.html
> Do you not agree that it would be better to be able to mention
> the PR or PRs just once and have all our scripts work with it?
>
>
> Is that possible though? Obviously "everything is simple and works
> perfectly" sounds good in theory. Can you do it?
Probably. But before I invest time and effort into it I want to
know that there isn't something fundamental that prevents it or
that one of you won't shoot it down.
> If you do then is something keeping us from making those changes?
>
>
> The usual. Somebody needs to patch the scripts and the docs. I'm happy
> enough with the way it works now to not change anything (and I'm not
> going to try to change those docs again).
>
>
>
>
> Martin
>
> PS To be clear, I'm suggesting that all these work the same and
> update Bugzilla as well as ChangeLogs, both with and without
> a space after PR and both with and without a component name after
> the PR.
>
>
> 1) PR only in title.
> Fix foobar [PR12345]
>
> gcc/ChangeLog:
> * foo.c (bar): Fix it.
>
> 2) PR (with or without additional text after it) after title and
> before ChageLogs.
> Fix foobar.
>
> PR12345 - foobar broken
>
> gcc/ChangeLog:
> * foo.c (bar): Fix it.
>
> 3) PR only in ChangeLogs.
> Fix foobar.
>
> gcc/ChangeLog:
> PR 12345
> * foo.c (bar): Fix it.
>
>
>
> Now add a descriptive commit message and consider how you want it to
> work if some sentence in the middle of that message mentions a PR in
> some context other than fixing that PR. e.g.
>
> Fix foobar.
>
> The fix for PR 9999 caused a bug, which was reported as PR 12345. The
> fix is similar to how PR 8888 was fixed.
Same as today. I'm not proposing to change that.
>
> gcc/ChangeLog:
> PR 12345
> * foo.c (bar): Fix it.
>
> This will (I believe) add a comment to three bugzilla reports, but only
> use 12345 in the ChangeLog file. And I think that's exactly what we want
> to happen.
That's fine with me.
>
> You need some rule for finding the important PR which is not the same as
> the rule used for bugzilla. By all means improve the rule, but I don't
> see how you can have one rule for all purposes.
>
> As I've previously suggested on this mailing list, and Jason suggested
> again today, we could allow this to update the ChangeLog:
>
> "\tPR12345 - foobar broken"
>
> which currently isn't matched, because there is text after the number.
> That does update bugzilla, because that rule doesn't care about text
> before or after the number.
Yes, that would be good. It would handle my case (2).
>
> This seems to be what's confusing you. You have used the wrong format
> for the ChangeLog pattern, and wondered why it can still update
> bugzilla. The answer is that the bugzilla update is less picky, for the
> reasons above.
Right.
Martin
next prev parent reply other threads:[~2021-07-07 23:38 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-06 21:20 Martin Sebor
2021-07-06 21:36 ` Marek Polacek
2021-07-06 21:44 ` Martin Sebor
2021-07-06 22:09 ` Jonathan Wakely
2021-07-07 16:39 ` Martin Sebor
2021-07-07 20:42 ` Jonathan Wakely
2021-07-07 21:35 ` Martin Sebor
2021-07-07 21:53 ` Marek Polacek
2021-07-07 22:18 ` Martin Sebor
2021-07-07 22:24 ` Jonathan Wakely
2021-07-07 22:58 ` Martin Sebor
2021-07-07 23:03 ` David Malcolm
2021-07-08 8:26 ` Jonathan Wakely
2021-07-08 18:58 ` Martin Sebor
2021-07-07 22:15 ` Jonathan Wakely
2021-07-07 23:38 ` Martin Sebor [this message]
2021-07-07 17:51 ` Jakub Jelinek
2021-07-07 19:01 ` Martin Sebor
2021-07-07 21:01 ` Jason Merrill
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=abce4b26-90e5-fd3e-77be-856831f457c5@gmail.com \
--to=msebor@gmail.com \
--cc=gcc@gcc.gnu.org \
--cc=jwakely.gcc@gmail.com \
--cc=polacek@redhat.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).