How to make a new release of GNU Stow ===================================== - Ensure NEWS contains the latest changes. - Ensure configure.ac contains the new version number. - Check CPAN distribution will work via Module::Build: - Generate stow, chkstow, and lib/Stow.pm via: eval `perl -V:siteprefix` ./configure --prefix=$siteprefix && make (N.B. the CPAN distribution will contain these files, whereas the GNU distribution will not.) - Make sure bin/stow does not contain a "use lib" line. This should only happen if the installation directory for Perl modules (--with-pmdir's default value) is not in Perl's built-in @INC, which would be caused by ./configure's default prefix (/usr/local) not matching your Perl's siteprefix, but the above --prefix should prevent that, as would: ./configure --with-pmdir=`perl -le 'print $INC[0]'` - Make sure all the following commands all run successfully: perl Build.PL ./Build test ./Build install ./Build distcheck ./Build distmeta - Check META.yaml and META.json have the new version number. - Ensure all changes are committed to git. - Run make distcheck and ensure that everything looks good. It should generate the distribution files for you. - Tag the current git HEAD with the new version number: git tag v7.8.9 - Push HEAD and tag to savannah git push git push --tags - Regenerate the documentation for the website: # First check out texinfo CVS repository via: # cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/texinfo co texinfo # and stow-web CVS repository via the instructions here: # https://savannah.gnu.org/cvs/?group=stow # Set paths: stow_repo=/path/to/stow/git/repo stow_web_repo=/path/to/stow-web/CVS/working/dir texinfo_repo=/path/to/texinfo/git/repo cd $stow_repo export GENDOCS_TEMPLATE_DIR=$texinfo_repo/util $texinfo_repo/util/gendocs.sh \ -s doc/stow.texi \ -o $stow_web_repo/manual \ --email bug-stow@gnu.org \ stow "GNU Stow manual" cd $stow_web_repo # Check that the changes look OK cvs diff # Then commit cvs commit - Run ./Build dist - Upload the resulting Stow-v7.8.9.tar.gz to CPAN via https://pause.perl.org/ - Upload to ftp.gnu.org. This is easiest using gnupload: - git clone git://git.savannah.gnu.org/gnulib.git - Copy gnulib/build-aux/gnupload to somewhere on your $PATH - Run gnupload --to ftp.gnu.org:stow --symlink-regex stow-7.8.9.tar.* - Send release announcements to - info-stow@gnu.org - stow-devel@gnu.org - info-gnu@gnu.org - https://savannah.gnu.org/news/?group=stow See http://www.gnu.org/prep/maintain/html_node/Announcements.html for more on making release announcements.