1 Review "cvs log" to see whether there's anything missing in NEWS or
4 Check .sbclrc and /etc/sbclrc and any other relevant local machinery
5 like it (e.g. ~/lib/lisp/sbcl-patches.lisp for WHN) to make sure that
6 any local mutations you've been experimenting with locally are either
7 integrated into the system already or commented out while you build
8 and test it. (Or alternatively, set up your scripts to build and test
9 SBCL in a way which instructs it to ignore .sbclrc.)
11 Do basic tests on the system. Some useful tests are:
12 * built-in tests, o' course
13 ** cd tests && sh ./run-tests.sh
15 * Build and run your apps and their test suites under the system.
16 * similarly on any other computers I have handy
18 Bump version number up to a release version number, so that
19 e.g. 1.2.3.45 becomes 1.2.4.
21 Check again: "cvs diff" to make sure this isn't some mutant...
23 Check that things are up to date:
25 * man page and user manual (e.g. in referring to bugs)
27 Create the distribution files:
28 * Move customize-target-features.lisp out of the way (and
29 anything else nuked by distclean.sh).
31 * Run make.sh to build the system with the final version number.
32 * (Install on my system. Do final tests.)
33 * Run make-doc.sh to format the documentation.
34 -- fundamental hack to make things work on my old Debian
35 system with newer texinfo in /usr/local/bin:
36 $ (cd doc/manual/ ; PATH=/usr/local/bin:$PATH make html)
38 $ (cd doc/ ; PATH=/usr/local/bin:$PATH sh make-doc.sh)
39 * Now that it's been verified to build itself,
40 ** Commit the system to CVS
43 "release, will be tagged as sbcl_0_7_8"
44 ** Tag the system in CVS, e.g.
46 * Copy sbcl/ to sbcl-x.y.z/. (on OpenBSD "cp -pR ...", on
49 *** Restore my customize-target-features.lisp.
51 *** Run "ln -s sbcl-x.y.z sbcl-x.y.z-<arch>-<os>"
52 *** Run "sh sbcl-x.y.z/binary-distribution.sh sbcl-x.y.z-<arch>-<os>".
53 *** Run "sh sbcl-x.y.z/html-distribution.sh sbcl-x.y.z".
54 *** (In sbcl-x.y.z/, run clean.sh and/or distclean.sh to
56 *** Run "sh sbcl-x.y.z/source-distribution.sh sbcl-x.y.z".
57 ** copy the change descriptions in NEWS for this release to
58 sbcl-x.y.z-release.notes.txt
59 * Run "md5sum > sbcl-x.y.z-$sfuserid" on the renamed tar files.
60 (On *BSD, it's "md5" instead of "md5sum".)
61 * Edit the digest file to add
62 "The MD5 checksums of the following distribution files are:"
63 (or "The MD5 checksum of the source distribution tarball is")
64 (or "The MD5 checksum of the following distribution file is:")
65 * Run bzip2 on the renamed tar files.
66 * Run "pgp -sta sbcl-x.y.z-$sfuserid" with appropriate numeric
67 values for x, y, and z.
69 * sbcl-0.7.0-source.tar.bz2
70 * sbcl-0.7.0-x86-openbsd-binary.tar.bz2
71 * sbcl-0.7.0-html.tar.bz2
72 * sbcl-0.7.0-wnewman.asc
75 # no longer possible now that sf doesn't provide anonftp:
77 # scp sbcl-x.y.z-* shell1.sourceforge.net:/home/groups/ftp/pub/sbcl/
79 # for stem in NEWS README INSTALL; do
80 # scp $stem shell1.sourceforge.net:/home/groups/ftp/pub/sbcl/$stem-x.y.z
82 for sf 'module release' system:
83 # no longer possible now that sf doesn't have upload.sourceforge.net
84 # * Upload the distribution files via anonymous ftp to
85 # upload.sourceforge.net in the /incoming directory.
87 # no longer possible in the new (as of July 2009) file management system
88 # * Upload the distribution files via sftp to the uploads/ directory at
89 # $sfuser@frs.sourceforge.net
90 # <https://sourceforge.net/project/admin/editpackages.php?group_id=1373>
91 # <https://sourceforge.net/project/admin/newrelease.php?package_id=1354&group_id=1373>
92 * upload the distribution files via sftp to
93 $sfuser,sbcl@frs.sourceforge.net to the directory
94 /home/frs/project/s/sb/sbcl/sbcl/<version> (creating the directory
97 <https://sourceforge.net/project/admin/?group_id=1373>
98 sftp $sfuser,sbcl@frs.sourceforge.net
99 # * Do the misbegotten^Wunscriptable HTTPforms thing on the sourceforge
100 # project home to make the distribution files visible.
101 # ** (from "Admin", then "File Releases")
102 # ** "Add release" for package "sbcl", "release name"="x.y.z". (not
103 # "release name"="sbcl-x.y.z")
104 # ** boilerplate for "Release Notes":
105 # For information about this release, see the NEWS file
106 # in the distribution. The information is also available
107 # in the "Change Log"/"Changes" section of the SourceForge
108 # webbed description of this release.
109 * Do the misbegotten^Wunscriptable AJAX thing on the sourceforge File
110 Manager site to make the release notes associated with the file releases
111 ** In the File Manager interface, click on the release notes file,
112 tick the release notes box.
114 For a new port (e.g. OpenBSD in sbcl-0.6.7) it's particularly good to
115 upload the appropriate binary distribution.
117 Make an announcement to sbcl-announce@lists.sourceforge.net (including
118 going to the sbcl-announce admin page to let it through the antispam
121 It's often a good idea to make a copy for me, too. (sbcl-x.y.z.tar.bz2)
123 Review the SourceForge web page.