* [PATCH] [RFC] Allow amendments when generating ChangeLog
@ 2018-06-21 10:33 Robert Pluim
2018-06-21 20:40 ` Paul Eggert
0 siblings, 1 reply; 5+ messages in thread
From: Robert Pluim @ 2018-06-21 10:33 UTC (permalink / raw)
To: emacs-devel
[-- Attachment #1: Type: text/plain, Size: 311 bytes --]
In theory the way ChangeLogs are now generated itʼs possible to amend
them after the fact, but nobody every implemented support for
that. Attached a patch to allow specifying specific amendments to the
ChangeLog entries for specific commits, plus a totally randomly chosen
example.
Regards
Robert
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Allow-amendments-when-generating-ChangeLog.patch --]
[-- Type: text/x-diff, Size: 2924 bytes --]
From 6347165027e78d9ac792dc407c60c550bb83046d Mon Sep 17 00:00:00 2001
From: Robert Pluim <rpluim@gmail.com>
Date: Thu, 21 Jun 2018 12:06:49 +0200
Subject: [PATCH] Allow amendments when generating ChangeLog
To: emacs-devel@gnu.org
* Makefile.in (AMEND_FILE): New variable to specify file used
for ChangeLog amendments.
(ChangeLog): Pass AMEND_FILE to ChangeLog generation script.
* build-aux/amend-emacs-26.txt: New file. Contains commands to
perform ChangeLog amendments.
* build-aux/gitlog-to-emacslog: Add --amend argument parsing.
Pass the result to gitlog-to-changelog.
---
Makefile.in | 4 +++-
build-aux/amend-emacs-26.txt | 3 +++
build-aux/gitlog-to-emacslog | 11 +++++++++++
3 files changed, 17 insertions(+), 1 deletion(-)
create mode 100644 build-aux/amend-emacs-26.txt
diff --git a/Makefile.in b/Makefile.in
index 238df40ded..fd279477ae 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1113,9 +1113,11 @@ CHANGELOG_N =
# Convert git commit log to ChangeLog file. make-dist uses this.
# I guess this is PHONY so it always updates?
+AMEND_FILE = build-aux/amend-emacs-`echo ${version} | sed 's/\..*//'`.txt
ChangeLog:
$(AM_V_GEN)cd $(srcdir) && \
- ./$(emacslog) -o $(CHANGELOG) -n $(CHANGELOG_HISTORY_INDEX_MAX)
+ ./$(emacslog) -o $(CHANGELOG) -n $(CHANGELOG_HISTORY_INDEX_MAX) \
+ --amend $(AMEND_FILE)
# Check that we are in a good state for changing history.
PREFERRED_BRANCH = emacs-26
diff --git a/build-aux/amend-emacs-26.txt b/build-aux/amend-emacs-26.txt
new file mode 100644
index 0000000000..8ca0d85819
--- /dev/null
+++ b/build-aux/amend-emacs-26.txt
@@ -0,0 +1,3 @@
+40e1db8ccd1239fc7da5ccd3f5f79017b2b44afc
+# satisfy Robert's grammatical peeves
+s/reflect it's/reflect its/
diff --git a/build-aux/gitlog-to-emacslog b/build-aux/gitlog-to-emacslog
index bdf45360aa..77b3c6d59d 100755
--- a/build-aux/gitlog-to-emacslog
+++ b/build-aux/gitlog-to-emacslog
@@ -35,6 +35,7 @@ nmax=
-f|--force) force=1 ;;
-n|--nmax) nmax="$2"; shift ;;
-o|--output) output="$2" ; shift ;;
+ -a|--amend) amend_file="$2" ; shift ;;
*) printf '%s\n' "Unrecognized argument: $1" >&2; exit 1 ;;
esac
shift
@@ -67,6 +68,15 @@ new_origin=
rm -f "$output" || exit 1
fi
+if [ "$amend_file" ]; then
+ if [ ! -f $amend_file ]; then
+ printf '%s\n' "Can't find amend file $amend_file" >&2
+ exit 1
+ else
+ amend_args="--amend=$amend_file"
+ fi
+fi
+
# If this is not a Git repository, just generate an empty ChangeLog.
test -r .git || {
>"$output"
@@ -79,6 +89,7 @@ new_origin=
./build-aux/gitlog-to-changelog \
--ignore-matching="^; |^Merge branch '[^']*' of git\.(savannah|sv)\.gnu\.org:/srv/git/emacs|^Merge remote-tracking branch '.*'$" \
--ignore-line='^; ' --format='%B' \
+ $amend_args \
"$gen_origin..$new_origin" >"ChangeLog.tmp" || exit
if test -r "ChangeLog.tmp"; then
--
2.18.0.rc1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] [RFC] Allow amendments when generating ChangeLog
2018-06-21 10:33 [PATCH] [RFC] Allow amendments when generating ChangeLog Robert Pluim
@ 2018-06-21 20:40 ` Paul Eggert
2018-06-22 8:21 ` Robert Pluim
0 siblings, 1 reply; 5+ messages in thread
From: Paul Eggert @ 2018-06-21 20:40 UTC (permalink / raw)
To: emacs-devel
In Emacs we just edit the ChangeLog.N output files directly, as it was
judged too much of a pain to maintain a separate amendments file the way
it's done in Coreutils etc. So if you have a peeve please just edit the
corresponding ChangeLog.N file.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] [RFC] Allow amendments when generating ChangeLog
2018-06-21 20:40 ` Paul Eggert
@ 2018-06-22 8:21 ` Robert Pluim
2018-06-22 18:28 ` Paul Eggert
0 siblings, 1 reply; 5+ messages in thread
From: Robert Pluim @ 2018-06-22 8:21 UTC (permalink / raw)
To: Paul Eggert; +Cc: emacs-devel
Paul Eggert <eggert@cs.ucla.edu> writes:
> In Emacs we just edit the ChangeLog.N output files directly, as it was
> judged too much of a pain to maintain a separate amendments file the
> way it's done in Coreutils etc. So if you have a peeve please just
> edit the corresponding ChangeLog.N file.
Thatʼs a shame. Editing the file once itʼs generated is something I
have to remember to do at some unspecified point in the future,
whereas modifying an amendments file is something I can do right now.
I donʼt see how maintaining the file would be a pain in any case:
nobody is forced to use it, and it only applies to new commits since
the last time the ChangeLog.N file was generated.
Regards
Robert
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] [RFC] Allow amendments when generating ChangeLog
2018-06-22 8:21 ` Robert Pluim
@ 2018-06-22 18:28 ` Paul Eggert
2018-06-25 14:34 ` Robert Pluim
0 siblings, 1 reply; 5+ messages in thread
From: Paul Eggert @ 2018-06-22 18:28 UTC (permalink / raw)
To: emacs-devel
On 06/22/2018 01:21 AM, Robert Pluim wrote:
> Thatʼs a shame. Editing the file once itʼs generated is something I
> have to remember to do at some unspecified point in the future,
> whereas modifying an amendments file is something I can do right now.
You should be able to edit the generated file right now. Just generate
it, commit the generated file, then edit the generated file and commit that.
> I donʼt see how maintaining the file would be a pain in any case:
> nobody is forced to use it
It would be a pain because there would typically be two different
records of the edit in the committed files, and these records could
easily go out of sync. Changing history is plenty confusing enough
already; having dueling histories would make it even more confusing.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] [RFC] Allow amendments when generating ChangeLog
2018-06-22 18:28 ` Paul Eggert
@ 2018-06-25 14:34 ` Robert Pluim
0 siblings, 0 replies; 5+ messages in thread
From: Robert Pluim @ 2018-06-25 14:34 UTC (permalink / raw)
To: Paul Eggert; +Cc: emacs-devel
Paul Eggert <eggert@cs.ucla.edu> writes:
> On 06/22/2018 01:21 AM, Robert Pluim wrote:
>> Thatʼs a shame. Editing the file once itʼs generated is something I
>> have to remember to do at some unspecified point in the future,
>> whereas modifying an amendments file is something I can do right now.
>
> You should be able to edit the generated file right now. Just generate
> it, commit the generated file, then edit the generated file and commit
> that.
>
Ah, I thought that would be part of the release process, not something
I could do right away.
Thanks
Robert
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-06-25 14:34 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-21 10:33 [PATCH] [RFC] Allow amendments when generating ChangeLog Robert Pluim
2018-06-21 20:40 ` Paul Eggert
2018-06-22 8:21 ` Robert Pluim
2018-06-22 18:28 ` Paul Eggert
2018-06-25 14:34 ` Robert Pluim
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
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).