]> code.delx.au - gnu-emacs/commitdiff
Backport: Document the release process
authorXue Fuqiao <xfq.free@gmail.com>
Sun, 15 Nov 2015 01:35:50 +0000 (09:35 +0800)
committerXue Fuqiao <xfq.free@gmail.com>
Wed, 18 Nov 2015 00:42:02 +0000 (08:42 +0800)
* admin/notes/versioning: Add information about RC releases.
* admin/release-process: Document the release process.
* admin/authors.el (authors-ignored-files):
* admin/README: Change FOR-RELEASE to release-process.
* CONTRIBUTE:
* admin/notes/bugtracker: Don't mention FOR-RELEASE.

(cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)

CONTRIBUTE
admin/README
admin/authors.el
admin/notes/bugtracker
admin/notes/versioning
admin/release-process

index 8c87df8941e7cb946bdc3fcbed6a59dd388d9f3b..0bce3fa0c25d2d885eabc26f8afe4d75f1657cc0 100644 (file)
@@ -144,10 +144,10 @@ messages:
   "2014-01-16T05:43:35Z!esr@thyrsus.com".  Often, "my previous commit"
   will suffice.
 
-- There is no need to mention files such as NEWS, MAINTAINERS, and
-  FOR-RELEASE, or to indicate regeneration of files such as
-  'configure', in the ChangeLog entry.  "There is no need" means you
-  don't have to, but you can if you want to.
+- There is no need to mention files such as NEWS and MAINTAINERS, or
+  to indicate regeneration of files such as 'configure', in the
+  ChangeLog entry.  "There is no need" means you don't have to, but
+  you can if you want to.
 
 ** Generating ChangeLog entries
 
index 2286e354ac6a452226fc2d28a920747cd710a500..b7621ffb62a300210a79b53452a99aaa7ec79ae9 100644 (file)
@@ -12,9 +12,9 @@ what you do when using them.
 
 * Instructions and scripts used to prepare an Emacs release.
 
-** FOR-RELEASE
+** release-process
 
-Living list of activities that must be completed before the next release.
+The release process used by GNU Emacs.
 
 ** make-tarball.txt
 
index 3d7850af57da37430ad40ca4ef6f18c677583227..9903218e2bacd15e37485e694d483fcbb6e5dd7a 100644 (file)
@@ -267,7 +267,7 @@ Changes to files matching one of the regexps in this list are not listed.")
   '("external-lisp"
     "lock" "share-lib" "local-lisp"
     "noleim-Makefile.in"
-    "NEWS" "ORDERS" "PROBLEMS" "FAQ" "AUTHORS" "FOR-RELEASE" "TODO" "todo"
+    "NEWS" "ORDERS" "PROBLEMS" "FAQ" "AUTHORS" "release-process" "TODO" "todo"
     "MACHINES" "SERVICE"
     "README.unicode" "README.multi-tty" "TUTORIAL.translators"
     "NEWS.unicode" "COPYING.DJ" "Makefile.old" "Makefile.am"
index fb65bbe4330383eafc4f66862a671c49a79d1377..3d6df03d5e717148faf54fbb97e7d004a8732388 100644 (file)
@@ -140,8 +140,7 @@ you can add an element to gnus-posting-styles to do this automatically, eg:
 
 ** To record a bug in the tracker without sending mail to the bug list.
 This can be useful to make a note of something discussed on
-emacs-devel that needs fixing.  In other words, this can be the
-equivalent of adding something to FOR-RELEASE.
+emacs-devel that needs fixing.
 
 To: quiet@debbugs.gnu.org
 [headers end]
index e422b22e4322e7cd782b616755751cb10987b39f..ef11335de54731009b7a6990568119d45ce1265a 100644 (file)
@@ -9,16 +9,20 @@ Emacs version numbers have the form
 "build" increments each time Emacs is built in the same location
 (without cleaning) and isn't really part of the version.
 
-bugfix releases increase "minor" by 1.
-non-bugfix releases increase "major" by 1, and reset "minor" to 1.
+Bugfix releases increase "minor" by 1.
+Non-bugfix releases increase "major" by 1, and reset "minor" to 1.
 (The division between bugfix and non-bugfix has not always been clear
 historically.)
 
 Unreleased (development) versions have an extra "devel" component.
 This is a fairly meaningless number that may be unchanged for a long time.
 It is normally 50.
-When the release process starts, it changes to 90, 91, ...
-When the actual release is made, this component is removed.
+
+After we cut the release branch, we’ll make pretest and release
+candidate (RC) releases.  For pretest releases, the "devel" component
+changes to 90, 91, ...  When the first RC release is made, this
+component is removed.  Normally, there is one RC release, unless an
+unexpected last-minute problem occurs.
 
 The development version for a new major release has "minor" = 0.
 The development version for a new minor release has "minor" = that of
index 286b90ea5282cfb239a3ddd49f55b36f8ff4ccf9..4a0890f3e4b96b095f4a98dea696d12b7176844a 100644 (file)
@@ -1,7 +1,51 @@
-Tasks needed before the next release.
+This document describes the release process used by GNU Emacs.
+
+* RELEASE CYCLE
+
+Each release cycle will be split into two periods.
+
+** Phase one: development
+
+The first phase of the release schedule is the "heads-down" working
+period for new features, on the `master' branch and several feature
+branches.
+
+** Phase two: bugfixes
+
+Shortly before this phase, Emacs developers will be devoted to
+figuring out what features to include in the next release and what
+features to defer to a later release.
+
+At the beginning of this phase, a release branch called "emacs-NN"
+("NN" represents the major version number of the new Emacs release)
+will be cut from `master'.
+
+This phase is spent fixing bugs and eliminating undocumented new
+features on the "emacs-NN" branch.
+
+In parallel to this phase, `master' can receive new features, to be
+released in the next release cycle.  From time to time, the master
+branches merges bugfix commits from the "emacs-NN" branch.
+
+* RELEASE-CRITICAL BUGS
+
+Emacs uses the "blocking bug(s)" feature of Debbugs for bugs need to
+be addressed in the next release.
+
+Currently, bug#19759 is the tracking bug for release of 25.1.  Say
+bug#123 needs to be fixed for Emacs 25.1.  Send a message to
+control@debbugs.gnu.org that says:
+
+   block 19759 by 123
+
+Change "block" to "unblock" to unblock the bug.
 
 * TO BE DONE SHORTLY BEFORE RELEASE
 
+** Make sure the Copyright date reflects the current year in the source
+files.  See `admin/notes/years' for information about maintaining
+copyright years for GNU Emacs.
+
 ** Make sure the necessary sources and scripts for any generated files
 are included in the source tarfile.  (They don't need to be installed,
 so eg admin/ is fine.)
@@ -275,6 +319,13 @@ tips.texi
 variables.texi
 windows.texi
 
+* OTHER INFORMATION
+
+For Emacs's versioning scheme, see `admin/notes/versioning'.
+
+For instructions to create pretest or release tarballs, announcements,
+etc., see `admin/make-tarball.txt'.
+
 \f
 Local variables:
 mode: outline