Mesquite Package Release Protocol - MesquiteProject/MesquiteCore GitHub Wiki
Mesquite Package Release Protocol
Wiki or Manual
update version numbers and dates, including on banner and on home page. (Current Version, template, required version of Mesquite, etc.)
update citation page
update links on download page (if needed)
update page showing release dates (if needed)
update files
update notices.xml and install.xml if in docs folder
Code
set build number, version number, release dates, prerelease flag in aPackageIntro subclass. Also change values in the two getMinimumMesquiteVersionRequired methods.
check prerelease modules (use Help>List of prerelease modules): check code and switch those deemed safe to isPrerelease = false;
search code for Debugg. (should be no instances in release)
(no longer needed?) check that no class files are old (this is symptom of remnants or something not getting compiled); may not be needed with new system
for new modules modify getVersionOfFirstRelease, returning negative integer value of package version; replace constant NEXTRELEASE if that had been used.
make sure updates.xml, notices.xml are updated. For download URL, make sure that the tag and file name are correct (the URL should end in /[tag]/[zip file name]
Make sure docs folder is in package folder in Mesquite_Folder/package, not just in Source
GitHub
push final changes, including new updates.xml and notices.xml, to GitHub
copy package directory and remove .DS_Store files using find . -name ".*" -exec rm -rf {} \;
.zip cleaned directory using NOT the standard MacOS X Compress File feature, but instead something like YemuZip that removes the extraneous files etc. made by the Mac. (If you use YemuZip, ask to save the zip file with the "PC" option.). Name the files like this:
zephyr.v4.01.zip
chromaseq.v1.71.zip
cartographer.v1.71.zip
also tar produce .tgz file, e.g.:
COPYFILE_DISABLE=1 tar -czf zephyr.v4.01.tgz zephyr
COPYFILE_DISABLE=1 tar -czf chromaseq.v1.71.tgz chromaseq
COPYFILE_DISABLE=1 tar -czf cartographer.v1.71.tgz cartographer
if the development fork is not the master, then go to the main repository and create a pull request (it should have the master as the base fork)
do formal release.
** Use the form "v3.01" for the tag (and make sure this matches the tag embedded in the download URL in the installing and updating XML files).
** for Release title use a form like "Zephyr version 4.02"
Server Files
update notices.xml and install.xml if they are housed on a server other than GitHub
if needed, update manual pages in mesquiteproject.org/packages/ or elsewhere