[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: git history tracking across renames (and emacs support) (Was: The na
From: |
Paul Eggert |
Subject: |
Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el) |
Date: |
Sun, 7 Jan 2018 20:22:28 -0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 |
Richard Stallman wrote:
> What would be most helpful (and I realize I'm asking for a lot) would be
> ChangeLog entries or commit messages (it doesn't matter which) that
explain the
> *motivation* for each change.
Our current practice is to put the explanation into comments in the
code.
Although that may be what the guidelines say, it's not done that often and it's
often not worth doing. This is because code comments should explain the code,
and not waste time explaining the code's history -- unless knowing the history
is helpful for understanding the code's current state, which it's often not.
For example, I'm attaching a small Emacs patch I installed last month. If the
guidelines really required us to put change descriptions into code commentary,
the patch should have changed the declaration in src/sysdep.c to look something
like this:
/* This variable used to be extern, but is static now. */
static pthread_t main_thread_id;
But such a comment would have been silly, as it would record a fact that is
irrelevant to how Emacs works today, and this historical footnote would take up
valuable real estate on the screens of today's maintainers for no good reason.
But if there is no natural place for the explanation in the source
code, you should put it in the history.
That's too weak, as the example comment above should not be added to the code
even though it is in the natural place for the explanation.
======================================================================
For changes to code, there's no need to describe the full purpose of
the changes or how they work together. If you think that a change
calls for explanation, you're probably right. Please do explain
it---but please put the full explanation in comments in the code,
This is too strong. That last sentence should begin like this instead:
"Please do explain it---but please put the full explanation of the new code in
comments in the code,"
where people will see it whenever they see the code. For example,
and here, after "see the code", insert:
", and please limit the ChangeLog entry to non-obvious change-related aspects
that do not appear in the new code's comments"
``New function'' is enough for the change log when you add a function,
because there should be a comment before the function definition to
explain what it does, how to call it, and so on.
0001-Make-main_thread_id-private.patch
Description: Text Data
- Re: git history tracking across renames (and emacs support), (continued)
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Eli Zaretskii, 2018/01/03
- Re: git history tracking across renames (and emacs support), Stefan Monnier, 2018/01/03
- Re: git history tracking across renames (and emacs support), Stephen Leake, 2018/01/03
- Re: git history tracking across renames (and emacs support), Richard Stallman, 2018/01/04
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Richard Stallman, 2018/01/02
- Re: git history tracking across renames (and emacs support), Stefan Monnier, 2018/01/02
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Richard Stallman, 2018/01/07
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el),
Paul Eggert <=
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Eli Zaretskii, 2018/01/08
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Paul Eggert, 2018/01/08
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Eli Zaretskii, 2018/01/08
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Paul Eggert, 2018/01/08
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Eli Zaretskii, 2018/01/08
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Richard Stallman, 2018/01/08
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Paul Eggert, 2018/01/09
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Richard Stallman, 2018/01/09
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Paul Eggert, 2018/01/10
- Re: git history tracking across renames (and emacs support) (Was: The name gnus-cloud.el), Eli Zaretskii, 2018/01/10