X-Git-Url: http://git.hcoop.net/bpt/guile.git/blobdiff_plain/c484bf7fb0a151dbdcd47d6e822071c269002ed7..9061286382971dfdab8b7b638dc34d1533df50c5:/RELEASE diff --git a/RELEASE b/RELEASE index cb802e46f..d3f4bbb96 100644 --- a/RELEASE +++ b/RELEASE @@ -2,11 +2,26 @@ This is a checklist for making Guile releases. It's specific to the FSF's development environment; please don't put it in the distribution. -In release 1.3: -- make #/ generate a warning. +Maybe we should name Guile releases after entertaining poisons. +However, the first release containing the module system should be +called Godot: "This is the one you've been waiting for." -In release 1.4: +In release 1.3.2: +- Release is titled ``wormwood'' release. - remove #/ syntax +- Remove SCHEME_LOAD_PATH. +- remove hook support from boot-9.scm + (only provided for backward compatibility) + +In release 1.3.4: +- remove names evalext.c: serial-map, + ramap.c: serial-array-copy!, serial-array-map! +- remove module (ice-9 getopt-gnu-style) +- remove kw.h, scm_tc16_kw + +Modules sort.c and random.c should be factored out into separate +modules (but still be distributed with guile-core) when we get a new +module system. Platforms for test builds: SunOS (gcc and pcc) --- galapas.ai.mit.edu @@ -15,47 +30,66 @@ NetBSD (gcc) --- repo-man.ai.mit.edu (use /home/repo/jimb) HP/UX (gcc, HP cc) --- nutrimat.gnu.ai.mit.edu -1) Verify that Guile builds and runs in your working directory. I +1) Check that the versions of aclocal, automake, autoconf, and autoheader + in your PATH match those given in README. Note that the `make + dist' process always invokes these tools, even when all the + generated files are up to date. +2) Verify that Guile builds and runs in your working directory. I hope that we'll eventually have a test suite to make this more concrete, but for the moment, just make sure things seem sane. -2) Make sure NEWS and the docs are up to date: +3) Make sure NEWS, INSTALL and the docs are up to date: a) Scan the ChangeLogs for user-visible changes, marked with an asterisk at the left margin. b) Update NEWS and the Texinfo documentation as appropriate. c) Remove the user-visible markers from the log entries once they're documented. d) Check for any [[incomplete]] sections of NEWS. -3) Scan output from `cvs log' to find files that have changed a lot, but + e) Fact-check INSTALL. +4) Scan output from `cvs diff' to find files that have changed a lot, but do not have up-to-date copyright notices. -4) Update the version numbers in GUILE-VERSION, and README, to remove the - "unreleased" indications. They should be straight numbers, of the form - "N.M", not alpha numbers, of the form "N.Ma". -5) Set up README appropriately for the release. -6) Choose new interface numbers for shared libraries. -7) Do a `cvs update -A', to get rid of any sticky tags. -8) Commit all changes to the CVS repository. -9) Verify that the disty works, too: - a) Make a disty, using 'make dist'. - b) Unpack it somewhere else. - c) Remove automake and autoconf from your path, or turn off their - execute bits, or something. (Users should be able to build disty - without installing those tools.) - d) Configure, make, and install. - e) Test the installed version; don't forget to unset SCHEME_LOAD_PATH. - f) If you made any fixes, commit them, and start from a) again -10) Tag the entire source tree with a tag of the form "release_N_M". -11) Copy the tar file over to the GNU machines, and ask the appropriate - person to put it on prep. At the time of this writing, Daniel Hagerty - has been generous about helping with that. -12) Send an announcement message to gnu-announce@prep.ai.mit.edu. Put +5) Update the version numbers in GUILE-VERSION, and README. The Guile + version number should be of the form N.M for a major release, and + N.M.L for snapshots and beta releases; L should be even for beta + releases, and odd for snapshots. +6) Set up README appropriately for the release; check name spellings + in THANKS, and reformat. +7) Choose new interface numbers for shared libraries. +8) Do a `cvs update -A', to get rid of any sticky tags. +9) Rebuild all generated files in the source tree: + a) Install the .m4 files where aclocal will find them. + b) Run aclocal. + c) Run automake. + d) Run autoconf. + e) Run autoheader. +10) Commit all changes to the CVS repository. +11) Verify that the disty works, too: + a) Make a disty, using 'make dist'. + b) Unpack it somewhere else. + c) Remove automake and autoconf from your path, or turn off their + execute bits, or something. (Users should be able to build disty + without installing those tools.) + d) Configure, make, and install. + e) Test the installed version; don't forget to unset GUILE_LOAD_PATH. + f) Test the example code in the doc directory. + g) If you made any fixes, commit them, and start from a) again +11a) Add "Guile N.M released." entry to ChangeLog, and commit it. +12) Tag the entire source tree with a tag of the form "release_N_M". +13) Copy the tar file over to the GNU machines, and send mail to + ftp-upload@gnu.org, asking them to put it on prep. +14) Send an announcement message to gnu-announce@gnu.org. Put "Obtaining Guile" first, then a brief summary of the changes in this release, then "Thanks," "About This Distribution," and "Nightly Snapshots." If I remember correctly, the moderator will delay it until the tar file appears on prep. The announcement text should be mostly taken from Guile's README file. -13) Tweak the version numbers in GUILE-VERSION, and README to indicate that +15) Notify freshmeat.net, although they're probably watching anyway. + (They got the 1.3 release just fine.) I have no idea if + www.bowerbird.com.au will be something anyone refers to, but Guile + does have an entry there. +16) Tweak the version numbers in GUILE-VERSION, and README to indicate that the sources are snapshot again. Snapshots should have version numbers - of the form "N.Ma", where the "a" means "alpha". -14) Start a new section of the NEWS file. -15) Send mail to majordomo-owner@cygnus.com updating the message you get + of the form "N.M.L", where L is odd. +17) Start a new section of the NEWS file. +18) Start a new THANKS file. +19) Send mail to majordomo-owner@cygnus.com updating the message you get when you ask majordomo for "info guile".