Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Luis Machado via Gdb-patches <gdb-patches@sourceware.org>
To: Andrew Burgess <andrew.burgess@embecosm.com>,
	gdb-patches@sourceware.org,  Mike Frysinger <vapier@gentoo.org>
Subject: Re: [PATCH] sim: switch to autogenerated ChangeLog files
Date: Wed, 17 Mar 2021 11:22:50 -0300	[thread overview]
Message-ID: <436cbb74-ac5b-315e-1e94-8e82ed9a5160@linaro.org> (raw)
In-Reply-To: <20210309094214.GN1720904@embecosm.com>

On 3/9/21 6:42 AM, Andrew Burgess wrote:
> * Mike Frysinger <vapier@gentoo.org> [2021-03-09 00:51:15 -0500]:
> 
>> On 12 Jan 2021 10:47, Andrew Burgess wrote:
>>> Mike Frysinger <vapier@gentoo.org> [2021-01-11 14:38:30 -0500]:
>>>> On 11 Jan 2021 12:00, Simon Marchi wrote:
>>>>> On 2021-01-11 6:05 a.m., Andrew Burgess wrote:
>>>>>> I think sim/ should follow the same policy as gdb/ for now.  Do feel
>>>>>> free to raise this as a suggestion for gdb/ in general though, it
>>>>>> would be an interesting conversation to observe.
>>>>>
>>>>> Last time I tried the gitlog-to-changelog script on GDB, it produced
>>>>> horrible results.  Probably because it was not designed for C++.
>>>>>
>>>>> Making a script to produce ChangeLogs for C code is already very
>>>>> difficult, making it work with good results for C++ would be even
>>>>> worst.  And most importantly, I think it would be wasted development
>>>>> time.
>>>>
>>>> to be clear, it isn't generating entries exactly like we write.  it's
>>>> using the git commit logs with formatted dates.  so i don't think this
>>>> applies exactly anymore.  so it's inline with the GNU's VCS principles:
>>>> https://www.gnu.org/prep/standards/html_node/Change-Logs.html
>>>> (and that also recommends just using gitlog-to-changelog).
>>>
>>> I read this page, and especially the part that talks about using
>>> gitlog-to-changelog, and I don't find their argument compelling.
>>>
>>> Early in the page they list some uses for ChangeLogs, which basically
>>> boils down to performing "software forensics".  Their benefits are all
>>> good, but IMHO are all covered (and covered better) by what the VCS
>>> provide.
>>>
>>> At the end of the page they say if you don't maintain a ChangeLog then
>>> use a script to generate one in case people want to look at the
>>> ChangeLog.  But they fail to explain what use a ChangeLog is in a
>>> release tree.  The same argument could just as easily be used to
>>> justify including a poem in the release; it should be there in case
>>> someone wants to look at it.
>>>
>>> For me the question is what benefit does a ChangeLog offer in a
>>> release tree?  When I look through the 7 points (in favour of
>>> ChangeLogs) raised on the above page I don't see what value any of
>>> those things have given only a release tree.
>>>
>>> If we really wanted to include something informative inside each
>>> release then I'd be most tempted to just do something like:
>>>
>>>     git log --stat last-release-tag...new-release-tag > GIT-LOG
>>>
>>> That would give people a far more detailed understanding of what has
>>> changed.
>>>
>>> But honestly, I don't think it's unreasonable to say that if someone
>>> wants to dig into the source history, just clone the repo.... and let
>>> ChangeLogs burn!
>>
>> so how are we feeling now ?  i think we agree that we don't want to hand
>> maintain ChangeLog files.
>>
>> then we need to decide on whether we want to include ChangeLog files for
>> sim/ at all in releases.  i'd be fine with just dropping them entirely if
>> we don't want to bikeshed it anymore.  we can create a sim/ChangeLog that
>> just reads:
>>    Please see the git log online at:
>>    https://sourceware.org/git/?p=binutils-gdb.git;a=history;f=sim
>>
>> if we do include them, i think it's reasonable to expect they take a form
>> similar to the other ChangeLog files in the tree.  that would mean using
>> gitlog-to-changelog, or some other gnu tool that i've missed.  the upside
>> to that over a raw `git log` is that, for old commits, it wil extract any
>> ChangeLog entries and inline them in the log.  this would be an easy way
>> to bridge the old & new ways of writing log entries.
> 
> My general position is that sim/ is really a sub-component of gdb, as
> it is only ever released as part of gdb, and as such should follow GDB
> policies and coding standards, just for consistency.
> 
> That said, ChangeLogs suck so much, so maybe we could use this as an
> opportunity to drop them, and maybe set some precedent for changing
> gdb/ one day (hey, I can dream!).
> 
> I think the one thing I would say is that auto-generated ChangeLogs
> are worse than what we currently have, so can we please agree to take
> them off the table.  I've not yet seen a tool that can 100% accurately
> figure out the names for changed entities, nor does an auto-generated
> script ever say anything useful about what changed.  So you're left
> with a list of things that _might_ have changed, with no information
> about _what_ changed in them.  Just a complete waste of time.
> 
> I guess the one thing that has surprised me is that nobody has jumped
> in to really defend ChangeLogs.  Maybe there really is hope that we
> could drop these for gdb/...

My guess is that there are only a few active developers in the GDB 
community that care about ChangeLog files. Most of us suffer in silence 
wasting valuable time writing less-than-useful ChangeLog entries, hoping 
one day there will be a discussion on their usefulness right now.

It has gotten worse with C++, because now the names tend to be longer 
and we start hitting the 80 columns limit as well. So sometimes we need 
to solve puzzles and fit things properly into the given limits.

Isn't this something we can discuss more broadly in the context of the 
GDB community/development roadmap as a whole?

I'm not sure what group of people decides that there's been enough 
discussion and bikeshedding to make a decision. FSF maintainers? Global 
maintainers? Or will a consensus-based decision (like glibc) suffice?

> 
> I think you should create a new top-level post, with a subject line
> that makes it clear you're planning to drop ChangeLogs for sim/.  If
> nobody complains to that then go with your plan, just point folk to
> the online history.
> 
> 
> Thanks,
> Andrew
> 

  reply	other threads:[~2021-03-17 14:22 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-10  3:37 [PATCH 1/3] src-release: fix indentation Mike Frysinger via Gdb-patches
2021-01-10  3:37 ` [PATCH 2/3] gnulib: import gitlog-to-changelog Mike Frysinger via Gdb-patches
2021-01-11 11:06   ` Andrew Burgess
2021-01-10  3:42 ` [PATCH] sim: switch to autogenerated ChangeLog files Mike Frysinger via Gdb-patches
2021-01-11 11:05   ` Andrew Burgess
2021-01-11 17:00     ` Simon Marchi via Gdb-patches
2021-01-11 17:10       ` Luis Machado via Gdb-patches
2021-01-11 17:31         ` Christian Biesinger via Gdb-patches
2021-01-11 19:38       ` Mike Frysinger via Gdb-patches
2021-01-11 19:54         ` Simon Marchi via Gdb-patches
2021-01-11 20:35           ` Mike Frysinger via Gdb-patches
2021-01-12 10:47         ` Andrew Burgess
2021-01-12 18:14           ` Joseph Myers
2021-01-12 18:27             ` Eli Zaretskii via Gdb-patches
2021-01-12 18:40               ` Eli Zaretskii via Gdb-patches
2021-01-12 21:27             ` Mike Frysinger via Gdb-patches
2021-01-12 21:22           ` Mike Frysinger via Gdb-patches
2021-03-09  5:51           ` Mike Frysinger via Gdb-patches
2021-03-09  9:42             ` Andrew Burgess
2021-03-17 14:22               ` Luis Machado via Gdb-patches [this message]
2021-01-12 23:20 ` [PATCH 1/3] src-release: fix indentation Mike Frysinger via Gdb-patches

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=436cbb74-ac5b-315e-1e94-8e82ed9a5160@linaro.org \
    --to=gdb-patches@sourceware.org \
    --cc=andrew.burgess@embecosm.com \
    --cc=luis.machado@linaro.org \
    --cc=vapier@gentoo.org \
    /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