diff options
| author | Paul Eggert | 2014-11-19 11:29:40 -0800 |
|---|---|---|
| committer | Paul Eggert | 2014-11-19 11:37:56 -0800 |
| commit | cd2e816cd3ebf562c680ed15b53cf2a88a01f14f (patch) | |
| tree | 40bb4e3db8a0cc25ca29a80a984bcb6b37d49699 | |
| parent | ff953bc93bb41ef573cd6962424ece340ad5a394 (diff) | |
| download | emacs-cd2e816cd3ebf562c680ed15b53cf2a88a01f14f.tar.gz emacs-cd2e816cd3ebf562c680ed15b53cf2a88a01f14f.zip | |
Lessen focus on ChangeLog files, as opposed to change log entries.
This is in preparation for generating the former automatically
from the latter.
* admin/notes/bugtracker, admin/notes/copyright, admin/notes/newfile:
ChangeLog -> change log
* admin/notes/changelogs: Remove, merging old contents to ...
* admin/notes/repo: ... here.
* doc/emacs/maintaining.texi (Change Log): Mention that ChangeLog files may
be copied to or from a version control system.
* doc/emacs/trouble.texi (Sending Patches): Point to the commit messages.
* doc/lispref/intro.texi (Acknowledgments): ChangeLog file -> change log entries.
* doc/lispref/tips.texi (Library Headers): Emacs uses a version control system.
* etc/CONTRIBUTE: Give advice about git commit messages and how
to generate proposed patches containing them.
| -rw-r--r-- | admin/ChangeLog | 10 | ||||
| -rw-r--r-- | admin/notes/bugtracker | 6 | ||||
| -rw-r--r-- | admin/notes/changelogs | 23 | ||||
| -rw-r--r-- | admin/notes/copyright | 6 | ||||
| -rw-r--r-- | admin/notes/newfile | 2 | ||||
| -rw-r--r-- | admin/notes/repo | 33 | ||||
| -rw-r--r-- | doc/emacs/ChangeLog | 7 | ||||
| -rw-r--r-- | doc/emacs/maintaining.texi | 8 | ||||
| -rw-r--r-- | doc/emacs/trouble.texi | 6 | ||||
| -rw-r--r-- | doc/lispref/ChangeLog | 6 | ||||
| -rw-r--r-- | doc/lispref/intro.texi | 2 | ||||
| -rw-r--r-- | doc/lispref/tips.texi | 6 | ||||
| -rw-r--r-- | etc/CONTRIBUTE | 16 | ||||
| -rw-r--r-- | etc/ChangeLog | 6 |
14 files changed, 88 insertions, 49 deletions
diff --git a/admin/ChangeLog b/admin/ChangeLog index 0ec6d920ad0..82974dc846f 100644 --- a/admin/ChangeLog +++ b/admin/ChangeLog | |||
| @@ -1,3 +1,13 @@ | |||
| 1 | 2014-11-19 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | Lessen focus on ChangeLog files, as opposed to change log entries. | ||
| 4 | This is in preparation for generating the former automatically | ||
| 5 | from the latter. | ||
| 6 | * notes/bugtracker, notes/copyright, notes/newfile: | ||
| 7 | ChangeLog -> change log | ||
| 8 | * notes/changelogs: Remove, merging old contents to ... | ||
| 9 | * notes/repo: ... here. | ||
| 10 | |||
| 1 | 2014-11-17 Oscar Fuentes <ofv@wanadoo.es> | 11 | 2014-11-17 Oscar Fuentes <ofv@wanadoo.es> |
| 2 | 12 | ||
| 3 | * admin/CPP-DEFINES: Mention MINGW_W64. | 13 | * admin/CPP-DEFINES: Mention MINGW_W64. |
diff --git a/admin/notes/bugtracker b/admin/notes/bugtracker index 3d9df200f44..fd7bd08091a 100644 --- a/admin/notes/bugtracker +++ b/admin/notes/bugtracker | |||
| @@ -463,10 +463,10 @@ time, rather than by increasing bug number | |||
| 463 | 463 | ||
| 464 | "raw" = ? | 464 | "raw" = ? |
| 465 | 465 | ||
| 466 | ** ChangeLog issues | 466 | ** Change log issues |
| 467 | 467 | ||
| 468 | *** When you fix a bug, it can be helpful to put the bug number in the | 468 | *** When you fix a bug, it can be helpful to put the bug number in the |
| 469 | ChangeLog entry, for example: | 469 | change log entry, for example: |
| 470 | 470 | ||
| 471 | * foo.el (foofunc): Fix the `foo' case. (Bug#123) | 471 | * foo.el (foofunc): Fix the `foo' case. (Bug#123) |
| 472 | 472 | ||
| @@ -475,7 +475,7 @@ obvious fix (e.g. a typo), there's no need to clutter the log with the | |||
| 475 | bug number. | 475 | bug number. |
| 476 | 476 | ||
| 477 | Similarly, when you close a bug, it can be helpful to include the | 477 | Similarly, when you close a bug, it can be helpful to include the |
| 478 | relevant ChangeLog entry in the message to the bug tracker, so people | 478 | relevant change log entry in the message to the bug tracker, so people |
| 479 | can see exactly what the fix was. | 479 | can see exactly what the fix was. |
| 480 | 480 | ||
| 481 | *** bug-reference-mode | 481 | *** bug-reference-mode |
diff --git a/admin/notes/changelogs b/admin/notes/changelogs deleted file mode 100644 index 1025cfc217f..00000000000 --- a/admin/notes/changelogs +++ /dev/null | |||
| @@ -1,23 +0,0 @@ | |||
| 1 | If installing changes written by someone else, make the ChangeLog | ||
| 2 | entry in their name, not yours. | ||
| 3 | |||
| 4 | |||
| 5 | http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg00793.html | ||
| 6 | There is no need to make change log entries for files such as NEWS, | ||
| 7 | MAINTAINERS, and FOR-RELEASE. | ||
| 8 | "There is no need" means you don't have to, but you can if you want to. | ||
| 9 | |||
| 10 | |||
| 11 | http://lists.gnu.org/archive/html/emacs-devel/2006-12/msg01135.html | ||
| 12 | There is no need to indicate regeneration of files such as configure | ||
| 13 | in ChangeLog. | ||
| 14 | |||
| 15 | |||
| 16 | http://lists.gnu.org/archive/html/emacs-devel/2008-11/msg00940.html | ||
| 17 | Preferred form for several entries with the same content: | ||
| 18 | |||
| 19 | * help.el (view-lossage): | ||
| 20 | * kmacro.el (kmacro-edit-lossage): | ||
| 21 | * edmacro.el (edit-kbd-macro): Fix docstring, lossage is now 300 keys. | ||
| 22 | |||
| 23 | (Rather than anything involving "ditto" and suchlike.) | ||
diff --git a/admin/notes/copyright b/admin/notes/copyright index 74aa73b0394..c5452c38037 100644 --- a/admin/notes/copyright +++ b/admin/notes/copyright | |||
| @@ -22,7 +22,7 @@ author to make a non-trivial total. If so, make sure they have an | |||
| 22 | assignment. If adding a whole file adjust the copyright statements in | 22 | assignment. If adding a whole file adjust the copyright statements in |
| 23 | the file. | 23 | the file. |
| 24 | 24 | ||
| 25 | 2. When installing code written by someone else, the ChangeLog entry | 25 | 2. When installing code written by someone else, the commit |
| 26 | should be in the name of the author of the code, not the person who | 26 | should be in the name of the author of the code, not the person who |
| 27 | installs it. Also use commit's "--author" option. | 27 | installs it. Also use commit's "--author" option. |
| 28 | Do not install any of your own changes in the same commit. | 28 | Do not install any of your own changes in the same commit. |
| @@ -115,8 +115,8 @@ else it is possible the file should not be in Emacs at all (please | |||
| 115 | report!). | 115 | report!). |
| 116 | 116 | ||
| 117 | Note that it seems painfully clear that one cannot rely on commit logs, | 117 | Note that it seems painfully clear that one cannot rely on commit logs, |
| 118 | or even ChangeLogs, for older changes. People often installed changes | 118 | or even change log entries, for older changes. People often installed |
| 119 | from others, without recording the true authorship. | 119 | changes from others, without recording the true authorship. |
| 120 | 120 | ||
| 121 | [For reference, most of these points were established via email with | 121 | [For reference, most of these points were established via email with |
| 122 | rms, 2007/1, "Copyright years". | 122 | rms, 2007/1, "Copyright years". |
diff --git a/admin/notes/newfile b/admin/notes/newfile index 0b66b8054bb..a682fec72d5 100644 --- a/admin/notes/newfile +++ b/admin/notes/newfile | |||
| @@ -15,7 +15,7 @@ output under the headings "The following files are not valid DOS file | |||
| 15 | names:" and "The following resolve to the same DOS file names:" should | 15 | names:" and "The following resolve to the same DOS file names:" should |
| 16 | not include any files that end up in the release tarball. | 16 | not include any files that end up in the release tarball. |
| 17 | 17 | ||
| 18 | ** Make the ChangeLog entry in the name of the author(s), not your own name. | 18 | ** Commit in the name of the author(s), not your own name. |
| 19 | 19 | ||
| 20 | ** If appropriate, check that the file compiles OK and that Emacs | 20 | ** If appropriate, check that the file compiles OK and that Emacs |
| 21 | builds fine with it. Address any compilation warnings. | 21 | builds fine with it. Address any compilation warnings. |
diff --git a/admin/notes/repo b/admin/notes/repo index ded10324f63..46a9e08c698 100644 --- a/admin/notes/repo +++ b/admin/notes/repo | |||
| @@ -1,9 +1,16 @@ | |||
| 1 | NOTES ON COMMITTING TO EMACS'S REPOSITORY -*- outline -*- | 1 | NOTES ON COMMITTING TO EMACS'S REPOSITORY -*- outline -*- |
| 2 | 2 | ||
| 3 | * Use DVCS commenting conventions | 3 | * Commit metainformation |
| 4 | 4 | ||
| 5 | Commits should follow the conventions used in all modern distributed | 5 | ** Commit in the author's name |
| 6 | version-control systems. That is, they should consist of | 6 | |
| 7 | If installing changes written by someone else, commit them in their | ||
| 8 | name, not yours. | ||
| 9 | |||
| 10 | ** Commit message format | ||
| 11 | |||
| 12 | Commit messages should follow the conventions used in all modern | ||
| 13 | distributed version-control systems. That is, they should consist of | ||
| 7 | 14 | ||
| 8 | - A self-contained topic line, preferably no more than 75 chars long. | 15 | - A self-contained topic line, preferably no more than 75 chars long. |
| 9 | 16 | ||
| @@ -15,6 +22,21 @@ version-control systems. That is, they should consist of | |||
| 15 | files, just copy the entries you made in them to the commit message | 22 | files, just copy the entries you made in them to the commit message |
| 16 | after the blank line.) | 23 | after the blank line.) |
| 17 | 24 | ||
| 25 | - Preferred form for several entries with the same content: | ||
| 26 | |||
| 27 | * help.el (view-lossage): | ||
| 28 | * kmacro.el (kmacro-edit-lossage): | ||
| 29 | * edmacro.el (edit-kbd-macro): Fix docstring, lossage is now 300 keys. | ||
| 30 | |||
| 31 | (Rather than anything involving "ditto" and suchlike.) | ||
| 32 | |||
| 33 | ** Unnecessary metainformation | ||
| 34 | |||
| 35 | There is no need to make separate change log entries for files such as | ||
| 36 | NEWS, MAINTAINERS, and FOR-RELEASE, or to indicate regeneration of | ||
| 37 | files such as 'configure'. "There is no need" means you don't have | ||
| 38 | to, but you can if you want to. | ||
| 39 | |||
| 18 | * Commit to the right branch | 40 | * Commit to the right branch |
| 19 | 41 | ||
| 20 | Development normally takes places on the trunk. | 42 | Development normally takes places on the trunk. |
| @@ -112,9 +134,9 @@ http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00262.html | |||
| 112 | 134 | ||
| 113 | [The section on git merge procedure has not yet been written] | 135 | [The section on git merge procedure has not yet been written] |
| 114 | 136 | ||
| 115 | Inspect the ChangeLog entries (e.g. in case too many entries have been | 137 | Inspect the change log entries (e.g. in case too many entries have been |
| 116 | included or whitespace between entries needs fixing). If someone made | 138 | included or whitespace between entries needs fixing). If someone made |
| 117 | multiple ChangeLog entries on different days in the branch, you may | 139 | multiple change log entries on different days in the branch, you may |
| 118 | wish to collapse them all to a single entry for that author in the | 140 | wish to collapse them all to a single entry for that author in the |
| 119 | trunk (because in the trunk they all appear under the same date). | 141 | trunk (because in the trunk they all appear under the same date). |
| 120 | Obviously, if there are multiple changes to the same file by different | 142 | Obviously, if there are multiple changes to the same file by different |
| @@ -166,4 +188,3 @@ again. | |||
| 166 | 188 | ||
| 167 | This is a semi-automated way to find the revision that introduced a bug. | 189 | This is a semi-automated way to find the revision that introduced a bug. |
| 168 | Browse `git help bisect' for technical instructions. | 190 | Browse `git help bisect' for technical instructions. |
| 169 | |||
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog index a72c2a8915c..e307ff3bd3a 100644 --- a/doc/emacs/ChangeLog +++ b/doc/emacs/ChangeLog | |||
| @@ -1,3 +1,10 @@ | |||
| 1 | 2014-11-19 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | Lessen focus on ChangeLog files, as opposed to change log entries. | ||
| 4 | * maintaining.texi (Change Log): Mention that ChangeLog files may | ||
| 5 | be copied to or from a version control system. | ||
| 6 | * trouble.texi (Sending Patches): Point to the commit messages. | ||
| 7 | |||
| 1 | 2014-11-19 Eli Zaretskii <eliz@gnu.org> | 8 | 2014-11-19 Eli Zaretskii <eliz@gnu.org> |
| 2 | 9 | ||
| 3 | * maintaining.texi (Switching Branches): Mention "C-x v r". | 10 | * maintaining.texi (Switching Branches): Mention "C-x v r". |
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi index fef3cdea529..dd1c8269096 100644 --- a/doc/emacs/maintaining.texi +++ b/doc/emacs/maintaining.texi | |||
| @@ -1474,9 +1474,11 @@ different revision with @kbd{C-u C-x v v}. | |||
| 1474 | @cindex change log | 1474 | @cindex change log |
| 1475 | Many software projects keep a @dfn{change log}. This is a file, | 1475 | Many software projects keep a @dfn{change log}. This is a file, |
| 1476 | normally named @file{ChangeLog}, containing a chronological record of | 1476 | normally named @file{ChangeLog}, containing a chronological record of |
| 1477 | when and how the program was changed. Sometimes, there are several | 1477 | when and how the program was changed. Sometimes, these files are |
| 1478 | change log files, each recording the changes in one directory or | 1478 | automatically generated from the change log entries stored in version |
| 1479 | directory tree. | 1479 | control systems, or are used to generate these change log entries. |
| 1480 | Sometimes, there are several change log files, each recording the | ||
| 1481 | changes in one directory or directory tree. | ||
| 1480 | 1482 | ||
| 1481 | @menu | 1483 | @menu |
| 1482 | * Change Log Commands:: Commands for editing change log files. | 1484 | * Change Log Commands:: Commands for editing change log files. |
diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi index 09260a1e5a9..5f3cf9223eb 100644 --- a/doc/emacs/trouble.texi +++ b/doc/emacs/trouble.texi | |||
| @@ -1137,9 +1137,9 @@ new function, all you need to say about it is that it is new. If you | |||
| 1137 | feel that the purpose needs explaining, it probably does---but put the | 1137 | feel that the purpose needs explaining, it probably does---but put the |
| 1138 | explanation in comments in the code. It will be more useful there. | 1138 | explanation in comments in the code. It will be more useful there. |
| 1139 | 1139 | ||
| 1140 | Please read the @file{ChangeLog} files in the @file{src} and | 1140 | Please look at the change log entries of recent commits to see what |
| 1141 | @file{lisp} directories to see what sorts of information to put in, | 1141 | sorts of information to put in, and to learn the style that we use. |
| 1142 | and to learn the style that we use. @xref{Change Log}. | 1142 | @xref{Change Log}. |
| 1143 | 1143 | ||
| 1144 | @item | 1144 | @item |
| 1145 | When you write the fix, keep in mind that we can't install a change that | 1145 | When you write the fix, keep in mind that we can't install a change that |
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 9123194d7eb..363e7aecd33 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2014-11-19 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | Lessen focus on ChangeLog files, as opposed to change log entries. | ||
| 4 | * intro.texi (Acknowledgments): ChangeLog file -> change log entries. | ||
| 5 | * tips.texi (Library Headers): Emacs uses a version control system. | ||
| 6 | |||
| 1 | 2014-11-09 Glenn Morris <rgm@gnu.org> | 7 | 2014-11-09 Glenn Morris <rgm@gnu.org> |
| 2 | 8 | ||
| 3 | * Makefile.in (version): Remove variable. | 9 | * Makefile.in (version): Remove variable. |
diff --git a/doc/lispref/intro.texi b/doc/lispref/intro.texi index 0c5346fbb63..1cd79bb2265 100644 --- a/doc/lispref/intro.texi +++ b/doc/lispref/intro.texi | |||
| @@ -552,4 +552,4 @@ Trost, Rickard Westman, Jean White, Eduard Wiebe, Matthew Wilding, | |||
| 552 | Carl Witty, Dale Worley, Rusty Wright, and David D. Zuhn. | 552 | Carl Witty, Dale Worley, Rusty Wright, and David D. Zuhn. |
| 553 | 553 | ||
| 554 | For a more complete list of contributors, please see the relevant | 554 | For a more complete list of contributors, please see the relevant |
| 555 | ChangeLog file in the Emacs sources. | 555 | change log entries in the Emacs source repository. |
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi index d8b906d3bfe..f7f07e8fb74 100644 --- a/doc/lispref/tips.texi +++ b/doc/lispref/tips.texi | |||
| @@ -1062,9 +1062,9 @@ context. | |||
| 1062 | @item ;;; Change Log: | 1062 | @item ;;; Change Log: |
| 1063 | This begins an optional log of changes to the file over time. Don't | 1063 | This begins an optional log of changes to the file over time. Don't |
| 1064 | put too much information in this section---it is better to keep the | 1064 | put too much information in this section---it is better to keep the |
| 1065 | detailed logs in a separate @file{ChangeLog} file (as Emacs does), | 1065 | detailed logs in a version control system (as Emacs does) or in a |
| 1066 | and/or to use a version control system. @samp{History} is an | 1066 | separate @file{ChangeLog} file. @samp{History} is an alternative to |
| 1067 | alternative to @samp{Change Log}. | 1067 | @samp{Change Log}. |
| 1068 | 1068 | ||
| 1069 | @item ;;; Code: | 1069 | @item ;;; Code: |
| 1070 | This begins the actual code of the program. | 1070 | This begins the actual code of the program. |
diff --git a/etc/CONTRIBUTE b/etc/CONTRIBUTE index d1ee9f4690c..b07b6c66afe 100644 --- a/etc/CONTRIBUTE +++ b/etc/CONTRIBUTE | |||
| @@ -118,13 +118,23 @@ documentation, i.e. Texinfo files. | |||
| 118 | Ref: "Change Log Concepts" node of the GNU Coding Standards Info | 118 | Ref: "Change Log Concepts" node of the GNU Coding Standards Info |
| 119 | Manual, for how to write good log entries. | 119 | Manual, for how to write good log entries. |
| 120 | 120 | ||
| 121 | When using git, commit messages should use ChangeLog format, with a | ||
| 122 | single short line explaining the change, then an empty line, then | ||
| 123 | unindented ChangeLog entries. (Essentially, a commit message should | ||
| 124 | be a duplicate of what the patch adds to the ChangeLog files. We are | ||
| 125 | planning to automate this better, to avoid the duplication.) | ||
| 126 | |||
| 121 | ** The patch itself. | 127 | ** The patch itself. |
| 122 | 128 | ||
| 123 | If you are accessing the Emacs repository, make sure your copy is | 129 | If you are accessing the Emacs repository, make sure your copy is |
| 124 | up-to-date (e.g. with `git pull'), then use | 130 | up-to-date (e.g. with 'git pull'). You can commit your changes |
| 131 | to a private branch and generate a patch from the master version | ||
| 132 | by using | ||
| 133 | git format-patch master | ||
| 134 | Or you can leave your changes uncommitted and use | ||
| 125 | git diff | 135 | git diff |
| 126 | Else, use | 136 | With no repository, you can use |
| 127 | diff -cp OLD NEW | 137 | diff -u OLD NEW |
| 128 | 138 | ||
| 129 | ** Mail format. | 139 | ** Mail format. |
| 130 | 140 | ||
diff --git a/etc/ChangeLog b/etc/ChangeLog index 851af7f2735..9f66788d282 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2014-11-19 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | Lessen focus on ChangeLog files, as opposed to change log entries. | ||
| 4 | * CONTRIBUTE: Give advice about git commit messages and how | ||
| 5 | to generate proposed patches containing them. | ||
| 6 | |||
| 1 | 2014-11-13 Paul Eggert <eggert@cs.ucla.edu> | 7 | 2014-11-13 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 8 | ||
| 3 | Backport fix for minor Bazaar leftovers. | 9 | Backport fix for minor Bazaar leftovers. |