summaryrefslogtreecommitdiff
path: root/RELEASE
blob: 7aa0a2a38645aa8b63be3e905ea2ff3e0d38280c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
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.
- make SCHEME_LOAD_PATH generate a warning.
- Perry Metzger <perry@piermont.com> is willing to do beta-testing
  for NetBSD.

In release 1.4:
- remove #/ syntax
- Remove SCHEME_LOAD_PATH.

Platforms for test builds:
SunOS (gcc and pcc) --- galapas.ai.mit.edu
Solaris (gcc and SUN cc) --- saturn.ai.mit.edu
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
   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:
   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
   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
    <hag@ai.mit.edu> has been generous about helping with that.
12) 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) Notify freshmeat.net, although they're probably watching anyway.
14) 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".
15) Start a new section of the NEWS file.
16) Send mail to majordomo-owner@cygnus.com updating the message you get
    when you ask majordomo for "info guile".