ReleaseChecklist - MLton Standard ML Compiler (SML Compiler)

MLton MLTONWIKIVERSION | ReleaseChecklist |
Home Index

## Advance preparation for release

- Catch up on `doc/changelog` documentation.

- Write summary of changes from previous release.

- Update `doc/README` with relevant changes.

- Update `man/{mlton,mlprof}.1` with relevant changes and set dates.

- Wiki

- Check OrphanedPages and WantedPages.

- Features page should by synchronized with `doc/README`.

- Catch up on Credits acknowledgements.

- Create ReleaseYYYYMM?? (i.e., forthcoming release) based on ReleaseXXXXLLCC (i.e., previous release).

- Update summary from `doc/changelog`.

- Update attachment, SVN, and Wiki links to estimated release date.

- Comment out lists and attachment links under `YYYYMM?? binary packages` and `YYYYMM?? sources`.

- Ensure page has `#acl All:`

- Create BugsYYYYMM?? based on BugsXXXXLLCC.

- Update SVN and Wiki links to estimated release date.

- Spell check pages.

## Prepare Wiki for tagging

This ensures that the guide distributed with the release looks updated for the release.

- Rename ReleaseYYYYMM?? to ReleaseYYYYMMDD with proper release date.

- Update attachment, SVN, and Wiki links to proper release date.

- Rename BugsYYYYMM?? to BugsYYYYMMDD with proper release date.

- Update SVN and Wiki links to proper release date.

- Update ReleaseXXXXLLCC.

- Change intro to "`This is an archived public release of MLton, version XXXXLLCC.`"

- Update Download.

- Change `Include(ReleaseXXXXLLCC, "Release XXXXLLCC")` to `Include(ReleaseYYYYMMDD,"Release YYYYMMDD")`.

- Update Home with note of new release.

- Change `What's new?` text to `Please try out our new release, [:ReleaseYYYYMMDD:MLton YYYYMMDD]`.

- Clear Experimental.

- Clear TemporaryUpload

## Prepare sources for tagging

- Run `bin/grab-wiki` to update `doc/guide`.

- Check that `doc/guide/MLTONWIKIVERSION` has proper release date.

- Make sure that ReleaseYYYYMMDD and BugsYYYYMMDD are added to the repository.

- Make sure that ReleaseYYYYMM?? and BugsYYYYMM?? are removed from the repository (if they were added during the advanced preparation).

- Commit changes to `doc/guide`.

- Check that `doc/changelog` has proper date.

## Tag sources

- Shell commands:

      svn copy -m "Tagging YYYYMMDD release" svn+ssh://mlton.org/svnroot/mlton/trunk svn+ssh://mlton.org/svnroot/mlton/tags/on-YYYYMMDD-release

## Packaging

### Source release

- Shell commands:

      svn checkout svn+ssh://mlton.org/svnroot/mlton/tags/on-YYYYMMDD-release mlton-YYYYMMDD
      cd mlton-YYYYMMDD
      make clean clean-svn version VERSION=YYYYMMDD RELEASE=1
      cd ..
      tar -czpvf mlton-YYYYMMDD-1.src.tgz mlton-YYYYMMDD

- Update ReleaseYYYYMMDD with `mlton-YYYYMMDD-1.src.tgz` attachment.

### Binary releases

- Download source release (`mlton-YYYYMMDD-1.src.tgz` from Download).

- Shell commands:

      tar -xzpvf mlton-YYYYMMDD-1.src.tgz
      cd mlton-YYYYMMDD
      make

- If your platform doesn't have `htmldoc`, please build or get `mlton-guide.pdf` and copy to `doc/guide`.

- Shell commands:

      make install
      cd install
      tar -czpvf ../mlton-YYYYMMDD-1.ARCH-OS.tgz *

- Update ReleaseYYYYMMDD with `mlton-YYYYMMDD-1.ARCH-OS.tgz` attachment.

### Package releases

- Debian: ???

## Website

- `basis` gets a snapshot of http://standardml.org/Basis (if any relevant changes).

- `changelog` gets a copy of `doc/changelog`.

- `guide/YYYYMMDD` gets a copy of `doc/guide`.

- Need to run `sed` to replace `MLTONWIKIVERSION` with `YYYYMMDD`.

- Copy `guide/YYYYMMDD/Home` to `guide/YYYYMMDD/index.html`.

- Upload `guide/guide-YYYYMMDD.tgz` and unpack.

- Add `<Directory /var/www/html/mlton.org/guide/YYYYMMDD> DefaultType text/html </Directory>` to `/etc/apache2/sites-available/mlton.org`

- Restart `apache2` service.

## Announce release

- Send mail to

- MLton@mlton.org

- MLton-user@mlton.org

- sml-list@cs.cmu.edu (aka news:comp.lang.ml)

- lwn@lwn.net (linux weekly news)

- Post to

- news:comp.lang.functional

- Update OtherSites that have MLton pages.

## Misc.

- `dupload` Debian package.

- Generate new Performance numbers.

Last edited on 2010-06-08 14:25:52 by MatthewFluet.