aboutsummaryrefslogtreecommitdiffstats
path: root/admin/notes
diff options
context:
space:
mode:
Diffstat (limited to 'admin/notes')
-rw-r--r--admin/notes/bzr78
-rw-r--r--admin/notes/changelogs9
-rw-r--r--admin/notes/commits9
-rw-r--r--admin/notes/copyright14
-rw-r--r--admin/notes/font-backend2
-rw-r--r--admin/notes/hydra2
-rw-r--r--admin/notes/lel-TODO2
-rw-r--r--admin/notes/multi-tty65
-rw-r--r--admin/notes/unicode9
-rw-r--r--admin/notes/www2
-rw-r--r--admin/notes/years6
11 files changed, 91 insertions, 107 deletions
diff --git a/admin/notes/bzr b/admin/notes/bzr
index d3886abfd69..13a3beb4ca8 100644
--- a/admin/notes/bzr
+++ b/admin/notes/bzr
@@ -3,9 +3,9 @@ NOTES ON COMMITTING TO EMACS'S BAZAAR REPO -*- outline -*-
3* Install changes only on one branch, let them get merged elsewhere if needed. 3* Install changes only on one branch, let them get merged elsewhere if needed.
4In particular, install bug-fixes only on the release branch (if there 4In particular, install bug-fixes only on the release branch (if there
5is one) and let them get synced to the trunk; do not install them by 5is one) and let them get synced to the trunk; do not install them by
6hand on the trunk as well. E.g. if there is an active "emacs-23" branch 6hand on the trunk as well. E.g. if there is an active "emacs-24" branch
7and you have a bug-fix appropriate for the next Emacs-23.x release, 7and you have a bug-fix appropriate for the next emacs-24.x release,
8install it only on the emacs-23 branch, not on the trunk as well. 8install it only on the emacs-24 branch, not on the trunk as well.
9 9
10Installing things manually into more than one branch makes merges more 10Installing things manually into more than one branch makes merges more
11difficult. 11difficult.
@@ -18,7 +18,7 @@ In that case, it's helpful if you can apply the change to both trunk
18and branch yourself (when committing the branch change, indicate 18and branch yourself (when committing the branch change, indicate
19in the commit log that it should not be merged to the trunk; see below). 19in the commit log that it should not be merged to the trunk; see below).
20 20
21* Backporting a bug-fix from the trunk to a branch (e.g. "emacs-23"). 21* Backporting a bug-fix from the trunk to a branch (e.g. "emacs-24").
22Indicate in the commit log that there is no need to merge the commit 22Indicate in the commit log that there is no need to merge the commit
23to the trunk. Anything that matches `bzrmerge-skip-regexp' will do; 23to the trunk. Anything that matches `bzrmerge-skip-regexp' will do;
24eg start the commit message with "Backport:". This is helpful for the 24eg start the commit message with "Backport:". This is helpful for the
@@ -49,7 +49,7 @@ http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00086.html
49* Installing changes from gnulib 49* Installing changes from gnulib
50Some of the files in Emacs are copied from gnulib. To synchronize 50Some of the files in Emacs are copied from gnulib. To synchronize
51these files from the version of gnulib that you have checked out into 51these files from the version of gnulib that you have checked out into
52a sibling directory of your branch, type "make sync-from-gnulib"; this 52a sibling directory of your branch, type "admin/merge-gnulib"; this
53will check out the latest version of gnulib if there is no sibling 53will check out the latest version of gnulib if there is no sibling
54directory already. It is a good idea to run "bzr status" afterwards, 54directory already. It is a good idea to run "bzr status" afterwards,
55so that if a gnulib module added a file, you can record the new file 55so that if a gnulib module added a file, you can record the new file
@@ -57,17 +57,12 @@ using "bzr add". After synchronizing from gnulib, do a "make" in the
57usual way. 57usual way.
58 58
59To change the set of gnulib modules, change the GNULIB_MODULES 59To change the set of gnulib modules, change the GNULIB_MODULES
60variable in the top-level Makefile.in, and then run: 60variable in admin/merge-gnulib before running it.
61 61
62 ./config.status 62If you remove a gnulib module, or if a gnulib module
63 make sync-from-gnulib
64 bzr status
65
66The last command will mention files that may need to be added using
67"bzr add". If you remove a gnulib module, or if a gnulib module
68removes a file, then remove the corresponding files by hand. 63removes a file, then remove the corresponding files by hand.
69 64
70* How to merge changes from emacs-23 to trunk 65* How to merge changes from emacs-24 to trunk
71 66
72The following description uses bound branches, presumably it works in 67The following description uses bound branches, presumably it works in
73a similar way with unbound ones. 68a similar way with unbound ones.
@@ -90,7 +85,7 @@ copy in ~/.bazaar if you upgrade bzr.
90Maybe the default Emacs behavior without this plugin is better, 85Maybe the default Emacs behavior without this plugin is better,
91though, it's not clear yet. 86though, it's not clear yet.
92 87
931) Get clean, up-to-date copies of the emacs-23 and trunk branches. 881) Get clean, up-to-date copies of the emacs-24 and trunk branches.
94Check for any uncommitted changes with bzr status. 89Check for any uncommitted changes with bzr status.
95 90
962) M-x cd /path/to/trunk 912) M-x cd /path/to/trunk
@@ -102,7 +97,7 @@ changelog_merge_files = ChangeLog
102 97
1033) load admin/bzrmerge.el 983) load admin/bzrmerge.el
104 99
1054) M-x bzrmerge RET /path/to/emacs-23 RET 1004) M-x bzrmerge RET /path/to/emacs-24 RET
106 101
107It will prompt about revisions that should be skipped, based on the 102It will prompt about revisions that should be skipped, based on the
108regexp in bzrmerge-missing. If there are more revisions that you know 103regexp in bzrmerge-missing. If there are more revisions that you know
@@ -119,7 +114,7 @@ Do not commit (or exit Emacs) until you have run bzrmerge to completion.
119 114
120Before committing, check bzr status and bzr diff output. 115Before committing, check bzr status and bzr diff output.
121If you have run bzrmerge enough times, the "pending merge tip" in bzr 116If you have run bzrmerge enough times, the "pending merge tip" in bzr
122status should be the last revision from the emacs-23 branch, and 117status should be the last revision from the emacs-24 branch, and
123bzr status -v should show all the revisions you expect to merge. 118bzr status -v should show all the revisions you expect to merge.
124 119
125(Note that it will also show "skipped" revisions. This is expected, 120(Note that it will also show "skipped" revisions. This is expected,
@@ -141,18 +136,13 @@ authors, don't break the logical ordering in doing this.
141 136
142Notes: 137Notes:
143 138
1441) A lot that was in tramp.el in emacs-23 has moved to tramp-sh.el in 1391) If a file is modified in emacs-24, and deleted in the trunk, you
145the trunk. If you end up with a conflict in tramp.el, the changes may
146need to go to tramp-sh.el instead. Remember to update the file name in
147the ChangeLog.
148
1492) If a file is modified in emacs-23, and deleted in the trunk, you
150get a "contents conflict". Assuming the changes don't need to be in 140get a "contents conflict". Assuming the changes don't need to be in
151the trunk at all, use `bzr resolve path/to/file --take-this' to keep the 141the trunk at all, use `bzr resolve path/to/file --take-this' to keep the
152trunk version. Prior to bzr 2.2.3, this may fail. You can just 142trunk version. Prior to bzr 2.2.3, this may fail. You can just
153delete the .OTHER etc files by hand and use bzr resolve path/to/file. 143delete the .OTHER etc files by hand and use bzr resolve path/to/file.
154 144
1553) Conflicts in autoload md5sums in comments. Strictly speaking, the 1452) Conflicts in autoload md5sums in comments. Strictly speaking, the
156right thing to do is merge everything else, resolve the conflict by 146right thing to do is merge everything else, resolve the conflict by
157choosing either the trunk or branch version, then run `make -C lisp 147choosing either the trunk or branch version, then run `make -C lisp
158autoloads' to update the md5sums to the correct trunk value before 148autoloads' to update the md5sums to the correct trunk value before
@@ -364,3 +354,45 @@ works), or by adding an entry to ~/.bazaar/locations.conf:
364 354
365You have to use locations.conf rather than bazaar.conf because the 355You have to use locations.conf rather than bazaar.conf because the
366latter has a lower priority than branch.conf. 356latter has a lower priority than branch.conf.
357
358* Using git-bzr
359
360** initially
361
362You can use Git locally to talk to the Bazaar repo as a "remote" repo
363via git-bzr (aka git-remote-bzr). Initial clone:
364
365 git clone bzr::bzr+ssh://USER@bzr.sv.gnu.org/emacs/trunk e
366
367This creates the working dir e/ (with subdir .git, etc). Disk usage
368is 13G (as of early 2014), so you will probably want to repack:
369
370 git repack -a -d -f --window=250 --depth=250 --window-memory=N
371
372where N is chosen to avoid swapping. E.g., given 512MB RAM, N="200m"
373results in "du -sh .git" => 559M, about double the smallest reported
374value (obtained with "deprecated" command "git gc --aggressive").
375
376** steady-state
377
378Use "fetch", "pull" and other remote-to-local commands as usual.
379
380For "push", the Emacs Bazaar repo is configured with
381
382 append_revisions_only = True
383
384so some versions of git-remote-bzr may raise AppendRevisionsOnlyViolation
385(in func do_export) instead of displaying a "non fast-forward" message
386and skipping the branch. See:
387
388 http://lists.gnu.org/archive/html/emacs-devel/2014-01/msg00436.html
389
390which includes a provisional patch to git-remote-bzr to do that.
391
392** remote name
393
394Although Git itself is agnostic about what names you choose for
395the remote repo, it seems git-bzr is more likely to get confused.
396After the clone as described above, the remote name is "origin";
397changing it is Not Recommended. [Insert 9-hour high-entropy then
398mysterious bug w/ JSON parsing errors anecdote here. --ttn]
diff --git a/admin/notes/changelogs b/admin/notes/changelogs
index 1025cfc217f..e8158060e70 100644
--- a/admin/notes/changelogs
+++ b/admin/notes/changelogs
@@ -1,3 +1,12 @@
1Emacs generally follows the GNU coding standards when it comes to ChangeLogs:
2http://www.gnu.org/prep/standards/html_node/Change-Logs.html
3
4One exception is that we still sometimes quote `like-this' (as the
5standards used to recommend) rather than 'like-this' (as they do now),
6because `...' is so widely used elsewhere in Emacs.
7http://lists.gnu.org/archive/html/emacs-devel/2014-05/msg00514.html
8
9
1If installing changes written by someone else, make the ChangeLog 10If installing changes written by someone else, make the ChangeLog
2entry in their name, not yours. 11entry in their name, not yours.
3 12
diff --git a/admin/notes/commits b/admin/notes/commits
index 2c6f80c56f0..f33c6905d4c 100644
--- a/admin/notes/commits
+++ b/admin/notes/commits
@@ -45,6 +45,15 @@ Date: Tue, 31 Mar 2009 12:21:20 +0900
45 for modern source-control systems with a global log, it's better to 45 for modern source-control systems with a global log, it's better to
46 have something like "Regenerate configure". 46 have something like "Regenerate configure".
47 47
48(4) (Added in 2014) In commit comments, and ChangeLog files, it is best
49 to use ways of identifying revisions that are not dependent on a
50 particular version control system. (At time of writing Emacs is
51 about to move to its fourth VCS and another move in the future is
52 not impossible.) An excellent way to identify commits is by
53 quoting their summary line. Another is with an action stamp - an
54 RFC3339 date followed by ! followed by the committer's email - for
55 example, "2014-01-16T05:43:35Z!esr@thyrsus.com". Often, "my
56 previous commit" will suffice.
48 57
49Followup discussion: 58Followup discussion:
50http://lists.gnu.org/archive/html/emacs-devel/2010-01/msg00897.html 59http://lists.gnu.org/archive/html/emacs-devel/2010-01/msg00897.html
diff --git a/admin/notes/copyright b/admin/notes/copyright
index 3a404b69678..ebef0633032 100644
--- a/admin/notes/copyright
+++ b/admin/notes/copyright
@@ -1,4 +1,4 @@
1Copyright (C) 2007-2013 Free Software Foundation, Inc. 1Copyright (C) 2007-2014 Free Software Foundation, Inc.
2See the end of the file for license conditions. 2See the end of the file for license conditions.
3 3
4 4
@@ -137,7 +137,10 @@ GNUstep/Emacs.base/Resources/Info-gnustep.plist
137aclocal.m4 137aclocal.m4
138configure 138configure
139m4/*.m4 139m4/*.m4
140 - copyright FSF, with unlimited permission to copy, distribute and modify 140 - These files are copyright FSF, with unlimited permission to copy,
141 distribute and modify, so long as the copyright notice is preserved.
142 Exception: m4/pkg.m4 is copyright Scott James Remnant; it is
143 distributed under the same terms as for the rest of Emacs.
141 144
142lib/Makefile.in 145lib/Makefile.in
143 - copyright FSF, with MIT-like license 146 - copyright FSF, with MIT-like license
@@ -161,13 +164,6 @@ etc/letter.pbm,letter.xpm
161etc/FTP, ORDERS 164etc/FTP, ORDERS
162 - trivial (at time of writing), no license needed 165 - trivial (at time of writing), no license needed
163 166
164etc/GNU, INTERVIEW, LINUX-GNU, MOTIVATION, SERVICE, THE-GNU-PROJECT,
165WHY-FREE
166 rms: "These are statements of opinion or testimony. Their licenses
167 should permit verbatim copying only. Please don't change the
168 licenses that they have. They are distributed with Emacs but they
169 are not part of Emacs."
170
171etc/HELLO 167etc/HELLO
172 standard notices. Just a note that although the file itself is not 168 standard notices. Just a note that although the file itself is not
173 really copyrightable, in the wider context of it being part of 169 really copyrightable, in the wider context of it being part of
diff --git a/admin/notes/font-backend b/admin/notes/font-backend
index cdf2001580d..5c36cf08c62 100644
--- a/admin/notes/font-backend
+++ b/admin/notes/font-backend
@@ -1,4 +1,4 @@
1Copyright (C) 2002-2013 Free Software Foundation, Inc. 1Copyright (C) 2002-2014 Free Software Foundation, Inc.
2See the end of the file for license conditions. 2See the end of the file for license conditions.
3 3
4 4
diff --git a/admin/notes/hydra b/admin/notes/hydra
index 71e35d092c8..3b6bc87a2f6 100644
--- a/admin/notes/hydra
+++ b/admin/notes/hydra
@@ -1,6 +1,6 @@
1-*- outline -*- 1-*- outline -*-
2 2
3Copyright (C) 2013 Free Software Foundation, Inc. 3Copyright (C) 2013-2014 Free Software Foundation, Inc.
4See the end of the file for license conditions. 4See the end of the file for license conditions.
5 5
6NOTES FOR EMACS CONTINUOUS BUILD ON HYDRA 6NOTES FOR EMACS CONTINUOUS BUILD ON HYDRA
diff --git a/admin/notes/lel-TODO b/admin/notes/lel-TODO
index 2c6d86a4ffd..4a4ccb5e6e8 100644
--- a/admin/notes/lel-TODO
+++ b/admin/notes/lel-TODO
@@ -1,6 +1,6 @@
1Some lisp/emacs-lisp/ Features and Where They Are Documented 1Some lisp/emacs-lisp/ Features and Where They Are Documented
2 2
3Copyright (C) 2007-2013 Free Software Foundation, Inc. 3Copyright (C) 2007-2014 Free Software Foundation, Inc.
4See the end of the file for license conditions. 4See the end of the file for license conditions.
5 5
6 6
diff --git a/admin/notes/multi-tty b/admin/notes/multi-tty
index c4edd3abc93..f67911d0ff4 100644
--- a/admin/notes/multi-tty
+++ b/admin/notes/multi-tty
@@ -1,6 +1,6 @@
1-*- coding: utf-8; mode: text; -*- 1-*- coding: utf-8; mode: text; -*-
2 2
3Copyright (C) 2007-2013 Free Software Foundation, Inc. 3Copyright (C) 2007-2014 Free Software Foundation, Inc.
4See the end of the file for license conditions. 4See the end of the file for license conditions.
5 5
6From README.multi-tty in the multi-tty branch. 6From README.multi-tty in the multi-tty branch.
@@ -101,16 +101,6 @@ Known problems:
101 I plan to implement better user notification and support for 101 I plan to implement better user notification and support for
102 breaking out of single-kboard mode from locked displays. 102 breaking out of single-kboard mode from locked displays.
103 103
104 * Mac and DOS support is broken, doesn't even
105 compile. Multiple display support will probably not provide
106 new Emacs features on these systems, but the multi-tty
107 branch changed a few low-level interfaces, and the
108 system-dependent source files need to be adapted
109 accordingly. The changes are mostly trivial, so almost
110 anyone can help, if only by compiling the branch and
111 reporting the compiler errors.
112
113
114TESTING 104TESTING
115------- 105-------
116 106
@@ -504,17 +494,6 @@ THINGS TO DO
504 494
505 (This is likely an error in the CVS trunk.) 495 (This is likely an error in the CVS trunk.)
506 496
507** Dan Nicolaescu suggests that -nw should be added as an alias for -t
508 in emacsclient. Good idea. (Alas, implementing this is not
509 trivial, getopt_long does not seem to support two-letter ``short''
510 options. Patches are welcome.)
511
512** Mark Plaksin suggests that emacsclient should accept the same
513 X-related command-line arguments as Emacs. Most of the X-related
514 argument-handling is done in Lisp, so this should be quite easy to
515 implement. (For example, Samium Gromoff wants emacsclient to
516 support --geometry; implementing this would add that support.)
517
518** Gergely Nagy suggests that C-x # should only kill the current 497** Gergely Nagy suggests that C-x # should only kill the current
519 frame, not any other emacsclient frame that may have the same file 498 frame, not any other emacsclient frame that may have the same file
520 opened for editing. I think I agree with him. 499 opened for editing. I think I agree with him.
@@ -532,21 +511,9 @@ THINGS TO DO
532 an initial frame. (The user would connect to it and open frames 511 an initial frame. (The user would connect to it and open frames
533 later, with emacsclient.) 512 later, with emacsclient.)
534 513
535** Fix Mac support (I can't do this entirely myself). Note that the 514** Implement Mac/Windows/DOS support. Many XXX comments mark things
536 current state of Mac-specific source files in the multi-tty tree 515 that probably need updating, ChangeLogs will help in spotting
537 are not useful; before starting work on Mac support, revert to 516 changes to X specific files that may need porting.
538 pristine, pre-multi-tty versions.
539
540** Fix DOS support (I can't do this entirely myself). Note that the
541 current state of DOS-specific source files in the multi-tty tree
542 are not useful; before starting work on DOS support, revert to
543 pristine, pre-multi-tty versions.
544
545** Fix Windows support. Currently bootstrapping works on w32, but Emacs
546 crashes on startup and none of the multi-tty features are
547 implemented. Many XXX comments mark things that probably need
548 updating, ChangeLogs will help in spotting changes to X specific
549 files that may need porting.
550 517
551** Do a grep on XXX and ?? for more issues. 518** Do a grep on XXX and ?? for more issues.
552 519
@@ -1085,18 +1052,6 @@ DIARY OF CHANGES
1085 1052
1086 (Done.) 1053 (Done.)
1087 1054
1088-- Miles Bader suggests that C-x C-c on an emacsclient frame should
1089 only close the frame, not exit the entire Emacs session. Update:
1090 see above for a function that does this. Maybe this should be the
1091 new default?
1092
1093 (Done. This is the new default. No complaints so far.)
1094
1095-- Clean up the frame-local variable system. I think it's ugly and
1096 error-prone. But maybe I just haven't yet fully understood it.
1097
1098 (Nothing to do. It doesn't seem ugly any more. It's rather clever.)
1099
1100-- Support multiple character locales. A version of 1055-- Support multiple character locales. A version of
1101 `set-locale-environment' needs to be written for setting up 1056 `set-locale-environment' needs to be written for setting up
1102 display-local settings on ttys. I think calling 1057 display-local settings on ttys. I think calling
@@ -1114,18 +1069,6 @@ DIARY OF CHANGES
1114 (Done, by making `function-key-map' terminal-local (i.e., part of 1069 (Done, by making `function-key-map' terminal-local (i.e., part of
1115 struct kboard). This has probably covered all the remaining problems.) 1070 struct kboard). This has probably covered all the remaining problems.)
1116 1071
1117-- Make `function-key-map' and `key-translation-map' terminal-local.
1118
1119 (Done.)
1120
1121-- Implement `terminal-local-value' and `set-terminal-local-value' to
1122 allow deterministic access to terminal local bindings. The
1123 encode-kb package can not set up `key-translation-map' without
1124 these. The terminal-local bindings seem to be independent of what
1125 frame is selected.
1126
1127 (Done.)
1128
1129-- xt-mouse.el needs to be adapted for multi-tty. It currently 1072-- xt-mouse.el needs to be adapted for multi-tty. It currently
1130 signals an error on kill-emacs under X, which prevents the user 1073 signals an error on kill-emacs under X, which prevents the user
1131 from exiting Emacs. (Reported by Mnemonikk on freenode.) 1074 from exiting Emacs. (Reported by Mnemonikk on freenode.)
diff --git a/admin/notes/unicode b/admin/notes/unicode
index 6db5bb7d05c..841b7ebd5e4 100644
--- a/admin/notes/unicode
+++ b/admin/notes/unicode
@@ -1,6 +1,6 @@
1 -*-mode: text; coding: utf-8;-*- 1 -*-mode: text; coding: utf-8;-*-
2 2
3Copyright (C) 2002-2013 Free Software Foundation, Inc. 3Copyright (C) 2002-2014 Free Software Foundation, Inc.
4See the end of the file for license conditions. 4See the end of the file for license conditions.
5 5
6Problems, fixmes and other unicode-related issues 6Problems, fixmes and other unicode-related issues
@@ -181,13 +181,6 @@ nontrivial changes to the build process.
181 181
182 admin/charsets/mapfiles/cns2ucsdkw.txt 182 admin/charsets/mapfiles/cns2ucsdkw.txt
183 183
184 * no-conversion
185
186 This file purposely contains arbitrary bytes interspersed within text,
187 to test whether the Emacs distribution is corrupted.
188
189 lib-src/testfile
190
191 * iso-2022-7bit 184 * iso-2022-7bit
192 185
193 This file switches between CJK charsets, which is not encoded in UTF-8. 186 This file switches between CJK charsets, which is not encoded in UTF-8.
diff --git a/admin/notes/www b/admin/notes/www
index 0bb0850af0d..4d092ca7fa0 100644
--- a/admin/notes/www
+++ b/admin/notes/www
@@ -1,6 +1,6 @@
1-*- outline -*- 1-*- outline -*-
2 2
3Copyright (C) 2013 Free Software Foundation, Inc. 3Copyright (C) 2013-2014 Free Software Foundation, Inc.
4See the end of the file for license conditions. 4See the end of the file for license conditions.
5 5
6NOTES FOR EMACS WWW PAGES 6NOTES FOR EMACS WWW PAGES
diff --git a/admin/notes/years b/admin/notes/years
index e6b38c5aefd..342fe9e2307 100644
--- a/admin/notes/years
+++ b/admin/notes/years
@@ -2,6 +2,8 @@ HOW TO MAINTAIN COPYRIGHT YEARS FOR GNU EMACS
2 2
3Maintaining copyright years is now very simple: every time a new year 3Maintaining copyright years is now very simple: every time a new year
4rolls around, add that year to every FSF (and AIST) copyright notice. 4rolls around, add that year to every FSF (and AIST) copyright notice.
5Do this by running the 'admin/update-copyright' script on a fresh bzr
6checkout. Inspect the results for plausibility, then commit them.
5 7
6There's no need to worry about whether an individual file has changed 8There's no need to worry about whether an individual file has changed
7in a given year - it's sufficient that Emacs as a whole has changed. 9in a given year - it's sufficient that Emacs as a whole has changed.
@@ -28,10 +30,10 @@ but should keep the full list in a comment in the source.
28 since Emacs 21 came out in 2001, all the subsequent years[1]. We don't 30 since Emacs 21 came out in 2001, all the subsequent years[1]. We don't
29 need to check whether *that file* was changed in those years. 31 need to check whether *that file* was changed in those years.
30 It's sufficient that *Emacs* was changed in those years (and it was!). 32 It's sufficient that *Emacs* was changed in those years (and it was!).
31 33
32 For those files that have been added since then, we should add 34 For those files that have been added since then, we should add
33 the year it was added to Emacs, and all subsequent years." 35 the year it was added to Emacs, and all subsequent years."
34 36
35 --RMS, 2005-07-13 37 --RMS, 2005-07-13
36 38
37[1] Note that this includes 2001 - see 39[1] Note that this includes 2001 - see