Release checklist for Tux Paint Last updated 2020-12-27 -bjk Preparing --------- Do these things _prior_ to cutting a release -- that is, prior to tagging in the source code repository, running "make release" to roll a .tar.gz source tarball, and making the tarball available for download. * Update version # and release dates Places to make sure version # and release date gets updated, * Makefile * Build description files: * tuxpaint.spec (Linux RPM package) * macos/Info.plist (macOS build) * win32/resources.rc (Windows mingw/msys build) * Documentation (For HTML variants, be sure to run "make" in "docs/", to produce plaintext alternatives!) * docs/CHANGES.txt * docs/en/html/README.html * docs/en/html/FAQ.html * docs/en/html/OPTIONS.html * docs/en/html/EXTENDING.html * docs/en/html/ADVANCED-STAMPS-HOWTO.html * Manual page (manpage) * src/manpage/tuxpaint.1 * Tidy the HTML documentation (Be sure to run "make" in "docs/", to produce plaintext alternatives!) tidy -i --markup yes --vertical-space yes --indent yes --indent-attributes yes INFILE.html > OUTFILE.html Make certain it looks okay, and stil renders properly in a browser. If not, correct the issues! Then replace the original with the new version 'tidy' created. * Don't forget to commit the changes! (git add ... / git commit / git push) Time to release: ---------------- * Tag & roll a release tarball (example here was from 0.9.25): $ git pull $ make clean $ git tag tuxpaint-0_9_25-2020-12-27 $ git push origin tuxpaint-0_9_25-2020-12-27 # or --tags $ make release * Upload each project's ".tar.gz" file from their "build/" subdirs to ftp.tuxpaint.org. * Place them in the appropriate subdirectories (source/, config/, and stamps/) under "unix/x/tuxpaint/". * Copy "docs/CHANGES.txt" from each project onto the FTP site (Tux Paint's goes in the toplevel, the others go in config/ and stamps/). * Create a new PAD file (e.g. `pads/tuxpaint-0.9.25.xml`) on the FTP site. * Replace the "pads/tuxpaint-LATEST.xml" symlink on the FTP site with a new one that points to the new PAD file. * At SourceForge, go to "Files" and use "Add Folder" under each project to create new release file subdirectories. (e.g., "0.9.25" under https://sourceforge.net/projects/tuxpaint/files/tuxpaint/) * Upload the files! Either from local copies, via a web browser, or by SCP, Rsync, or SFTP (see https://sourceforge.net/p/forge/documentation/Release%20Files%20for%20Download/#scp) e.g.: $ sftp wkendrick@frs.sourceforge.net sftp> cd /home/frs/project/tuxpaint/ sftp> cd tuxpaint/0.9.25/ sftp> lcd source sftp> put tuxpaint-0.9.25.tar.gz sftp> cd ../.. sftp> lcd .. [repeat for tuxpaint-config and tuxpaint-stamps]