Advance preparation for release
- 
Update ./CHANGELOG.adoc.
- 
Write entries for missing notable commits.
 - 
Write summary of changes from previous release.
 - 
Update with estimated release date.
 
 - 
 - 
Update ./README.adoc.
- 
Check features and description.
 
 - 
 - 
Update man/{mlton,mlprof}.1.
- 
Check compile-time and run-time options in man/mlton.1.
 - 
Check options in man/mlprof.1.
 - 
Update with estimated release date.
 
 - 
 - 
Update doc/guide.
- 
Synchronize Features page with ./README.adoc.
 - 
Update Credits page with acknowledgements.
 - 
Create ReleaseYYYYMM?? page (i.e., forthcoming release) based on ReleaseXXXXLLCC (i.e., previous release).
- 
Update summary from ./CHANGELOG.adoc.
 - 
Update links to estimated release date.
 
 - 
 - 
Create BugsYYYYMM?? page based on BugsXXXXLLCC.
- 
Update links to estimated release date.
 
 - 
 - 
Spell check pages.
 
 - 
 - 
Ensure that all updates are pushed to master branch of mlton.
 
Prepare sources for tagging
- 
Update ./CHANGELOG.adoc.
- 
Update with proper release date.
 
 - 
 - 
Update man/{mlton,mlprof}.1.
- 
Update with proper release date.
 
 - 
 - 
Update doc/guide.
- 
Rename ReleaseYYYYMM?? to ReleaseYYYYMMDD with proper release date.
- 
Update links with proper release date.
 
 - 
 - 
Rename BugsYYYYMM?? to BugsYYYYMMDD with proper release date.
- 
Update links with proper release date.
 
 - 
 - 
Update ReleaseXXXXLLCC.
- 
Change intro to "This is an archived public release of MLton, version XXXXLLCC."
 
 - 
 - 
Update Home with note of new release.
- 
Change What's new? text to Please try out our new release, <:ReleaseYYYYMMDD:MLton YYYYMMDD>.
 - 
Update Download link with proper release date.
 
 - 
 - 
Update Releases with new release.
 
 - 
 - 
Ensure that all updates are pushed to master branch of mlton.
 
Tag sources
- 
Shell commands:
git clone http://github.com/MLton/mlton mlton.git cd mlton.git git checkout master git tag -a -m "Tagging ${YYYYMMDD} release" on-${YYYYMMDD}-release master git push origin on-${YYYYMMDD}-release 
Packaging
SourceForge FRS
- 
Create YYYYMMDD directory:
sftp user@frs.sourceforge.net:/home/frs/project/mlton/mlton sftp> mkdir YYYYMMDD sftp> quit
 
Source release
- 
Create mlton-YYYYMMDD.src.tgz:
git clone http://github.com/MLton/mlton mlton cd mlton git checkout on-${YYYYMMDD}-release make MLTON_VERSION=${YYYYMMDD} source-release cd ..or
wget https://github.com/MLton/mlton/archive/on-${YYYYMMDD}-release.tar.gz tar xzvf on-${YYYYMMDD}-release.tar.gz cd mlton-on-${YYYYMMDD}-release make MLTON_VERSION=${YYYYMMDD} source-release cd .. - 
Upload mlton-YYYYMMDD.src.tgz:
scp mlton-${YYYYMMDD}.src.tgz user@frs.sourceforge.net:/home/frs/project/mlton/mlton/${YYYYMMDD}/ - 
Update ReleaseYYYYMMDD with mlton-YYYYMMDD.src.tgz link.
 
Binary releases
- 
Build and create mlton-YYYYMMDD-1.ARCH-OS.tgz:
wget http://sourceforge.net/projects/mlton/files/mlton/${YYYYMMDD}/mlton-${YYYYMMDD}.src.tgz tar xzvf mlton-${YYYYMMDD}.src.tgz cd mlton-${YYYYMMDD} make binary-release - 
Upload mlton-YYYYMMDD-1.ARCH-OS.tgz:
scp mlton-${YYYYMMDD}-1.ARCH-OS.tgz user@frs.sourceforge.net:/home/frs/project/mlton/mlton/${YYYYMMDD}/ - 
Update ReleaseYYYYMMDD with mlton-YYYYMMDD-1.ARCH-OS.tgz link.
 
Website
- 
guide/YYYYMMDD gets a copy of doc/guide/localhost.
 - 
Shell commands:
wget http://sourceforge.net/projects/mlton/files/mlton/${YYYYMMDD}/mlton-${YYYYMMDD}.src.tgz tar xzvf mlton-${YYYYMMDD}.src.tgz cd mlton-${YYYYMMDD} cd doc/guide cp -prf localhost ${YYYYMMDD} tar czvf guide-${YYYYMMDD}.tgz ${YYYYMMDD} rsync -avzP --delete -e ssh ${YYYYMMDD} user@web.sourceforge.net:/home/project-web/mlton/htdocs/guide/ rsync -avzP --delete -e ssh guide-${YYYYMMDD}.tgz user@web.sourceforge.net:/home/project-web/mlton/htdocs/guide/ 
Announce release
- 
Mail announcement to:
 
Misc.
- 
Generate new Performance numbers.