update pmd.bat, designer.bat, bgastviewer.*, cygwin-run.sh, cpd.jnlp, cpdgui.bat, build.xml to point to pmd-3.9.jar
update PMD.java, xdocs/running.xml, compiling.xml, integrations.xml, installing.xml to reflect pmd-3.9
update the release date in the changelog
update rulesets/rulesets.properties - add any new ruleset file names
update release number and tag name in project.xml

ensure all the new rules are listed in a rulesets/releases/39.xml file

ant clean test
Check in everything

ant dist test
Do all the JUnit tests run?  OK, then:
ant dist                

TESTS: Can you
1) run 1 file and get a report
./pmd.sh ~/tmp/Test.java xml unusedcode
./pmd.sh ~/tmp/Test.java html rulesets/unusedcode.xml
2) run the Ant 'pmd' task and get a report
ant pmd

cd ..
./docs.sh all
cd etc

Prepare binary release:
rm -rf ~/tmp/pmd-3.9
mkdir -p ~/tmp/pmd-3.9/etc
mkdir ~/tmp/pmd-3.9/bin
mkdir ~/tmp/pmd-3.9/lib
cp ../LICENSE.txt changelog.txt ~/tmp/pmd-3.9/etc
cd ../bin/
cp pmd.* cygwin-run.sh build.xml cpd.sh cpdgui.bat designer.* ~/tmp/pmd-3.9/bin
cd ../etc/
cp ../lib/pmd-3.9.jar ../lib/asm-3.0.jar ../lib/backport-util-concurrent.jar ../lib/jaxen-1.1-beta-10.jar ~/tmp/pmd-3.9/lib/
mkdir ~/tmp/pmd-3.9/etc/xslt
cp xslt/*.xslt xslt/*.js xslt/*.gif xslt/*.css ~/tmp/pmd-3.9/etc/xslt/
cp -R ../target/docs ~/tmp/pmd-3.9
cd ~/tmp
zip -q -r pmd-bin-3.9.zip pmd-3.9/
cd -

Time to tag:

CVSROOT=:ext:tomcopeland@pmd.cvs.sourceforge.net:/cvsroot/pmd && export CVSROOT
cd ../../
cvs -q tag -D tomorrow "pmd_release_3_9" pmd

Prepare source release:
rm -rf ~/tmp/pmd-3.9
rm -rf ~/tmp/pmd-src-3.9.zip
cd pmd/bin/
ant jarsrc
cd ../../
rm -rf tmp/
mkdir tmp
cd tmp
cvs -q export -r pmd_release_3_9 pmd
mv pmd/ pmd-3.9
cd ..
cp pmd/lib/pmd-src-3.9.jar tmp/pmd-3.9/lib/
mv tmp/pmd-3.9/ ~/tmp/
cp pmd/lib/pmd-3.9.jar ~/tmp/pmd-3.9/lib
cp -R pmd/target/docs ~/tmp/pmd-3.9/
cd ~/tmp/
zip -q -r pmd-src-3.9.zip pmd-3.9/

if you see a bug and fix it, you can delete the release using:
cvs rtag -d pmd_release_3_9 pmd
and then retag everything

ncftpput upload.sourceforge.net incoming/ pmd-src-3.9.zip pmd-bin-3.9.zip

Go to Admin, File Releases, Add release
Paste stuff into the changelog/readme boxes
Add the pmd-bin-3.9.zip file
Add the pmd-src-3.9.zip file
Classify the file
Click File Releases, Edit Release, set previous version to 'hidden'.

Redo the web site
cd ~/pmd/pmd
update the "what's new" link in navigation.xml
./docs.sh upload

Submit news to SF
Go to http://freshmeat.net/
Submit news to java.net
Do a blog entry
