From: David Mitchell Date: Sun, 23 Aug 2009 16:41:42 +0000 (+0100) Subject: release_managers_guide: lots of tweaks to post-release tasks X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=75a012fe81458190a6875571a0732fe9233952cf;p=p5sagit%2Fp5-mst-13.2.git release_managers_guide: lots of tweaks to post-release tasks --- diff --git a/Porting/release_managers_guide.pod b/Porting/release_managers_guide.pod index 4b33165..090e4ca 100644 --- a/Porting/release_managers_guide.pod +++ b/Porting/release_managers_guide.pod @@ -575,7 +575,6 @@ Push all your recent commits: $ git push origin .... - =item * Create a tarball. Use the C<-s> option to specify a suitable suffix for @@ -583,7 +582,8 @@ the tarball and directory name: $ cd root/of/perl/tree $ make distclean - $ git clean -xdf # make sure perl and git agree on files + $ git clean -xdf # make sure perl and git agree on files + $ git status # and there's nothing lying around $ perl Porting/makerel -b -s `git describe` # for a snapshot $ perl Porting/makerel -b -s RC1 # for a release candidate @@ -666,7 +666,7 @@ previous is 5.10.0: Bootstrap the CPAN client on the clean install: - $ ./bin/perl -MCPAN -e'shell' + $ bin/perl -MCPAN -e'shell' =item * @@ -678,7 +678,7 @@ has dependencies; for example: Check that your perl can run this: - $ ./bin/perl -lwe 'use Inline C => "int f() { return 42;} "; print f' + $ bin/perl -lwe 'use Inline C => "int f() { return 42;} "; print f' 42 $ @@ -686,7 +686,7 @@ Check that your perl can run this: Bootstrap the CPANPLUS client on the clean install: - $ ./bin/cpanp + $ bin/cpanp =item * @@ -695,7 +695,7 @@ Install an XS module, for example: CPAN Terminal> i DBI CPAN Terminal> quit $ bin/perl -MDBI -e 1 - + $ =item * @@ -718,8 +718,8 @@ Check that the C utility works. Try the following: and carefully examine the output (in F), especially the "Locally applied patches" section. If everything appears okay, then -try it again, this time actually submitting the bug report. Check that it -shows up, then remember to close it! +delete the file, and try it again, this time actually submitting the bug +report. Check that it shows up, then remember to close it! =item * @@ -753,7 +753,7 @@ I Create a tag for the exact git revision you built the release from. C below is the commit corresponding to the tarball. It can be omitted if there have been no further commits since the tarball was -created. +created, for example: $ git tag perl-5.10.1-RC1 -m'Release Candidate 1 of Perl 5.10.1' $ git push origin tag perl-5.10.1-RC1 @@ -805,41 +805,70 @@ http://dev.perl.org/perl5/ I -Create a new empty perlNNNdelta.pod file for the current release + 1; -see F. -[ XXX Perhaps we should have an empty template file we can copy in. ] +Remind the current maintainer of C to push a new release +to CPAN. -In addition, edit F, adding the new entry as 'D', and unmark previous -entry as 'D', +=item * -Change perlNNNdelta references to the new version in these files +I - INSTALL - win32/Makefile.mk - win32/Makefile - Makefile.SH - README +Bump the perlXYZ version number. -Also, edit the previous delta file to change the C from C -to C. +First, create a new empty perlNNNdelta.pod file for the current release + 1; +see F. -These two lists of files probably aren't exhaustive; do a recursive grep -on the previous filename to look for suitable candidates. +You should be able to do this by just copying in a skeleton template and +then doing a quick fix up of the version numbers, e.g. -(see 16410843ea for an example). + $ cp -i Porting/perldelta_template pod/perl5102delta.pod + $ (edit it) + $ git add pod/perl5102delta.pod -=item * +Edit F: add the new entry, flagged as 'D', and unflag the previous +entry from being 'D'; for example: + + -D perl5101delta Perl changes in version 5.10.1 + +D perl5102delta Perl changes in version 5.10.2 + + perl5101delta Perl changes in version 5.10.1 -Run C to update the following files: +Run C to update the F version in +the following files: MANIFEST + Makefile.SH + pod.lst pod/perl.pod - win32/pod.mak vms/descrip_mms.template + win32/Makefile + win32/makefile.mk + win32/pod.mak + +Then manually edit (F to bump the version +in the following entry: -If you modified perldelta.pod, (F will -needs a manual edit to bump the C entry - it would -be good for someone to figure out the fix.) + [.pod]perldelta.pod : [.pod]perl5101delta.pod + +XXX this previous step needs to fixed to automate it in pod/buildtoc. + +Manually update references to the perlNNNdelta version in these files: + + INSTALL + README + +Edit the previous delta file to change the C from C +to C. + +These two lists of files probably aren't exhaustive; do a recursive grep +on the previous filename to look for suitable candidates that may have +been missed. + +Finally, commit: + + $ git commit -a -m 'create perlXXXdelta' + +At this point you may want to compare the commit with a previous bump to +see if they look similar. See commit ca8de22071 for an example of a +previous version bump. =item * @@ -865,16 +894,23 @@ XXX need a git recipe I -Copy the perlNNNdelta.pod for this release into the other branches, and -remember to update these files on those branches too: +Copy the perlNNNdelta.pod for this release into the other branches; for +example: - MANIFEST - pod.lst - pod/perl.pod - vms/descrip_mms.template - win32/pod.mak + $ cp -i ../5.10.x/pod/perl5101delta.pod pod/ # for example + $ git add pod/perl5101delta.pod + +Edit F to add an entry for the file, e.g.: + + perl5101delta Perl changes in version 5.10.1 + +Then rebuild various files: -(see fc5be80860 for an example). + $ perl pod/buildtoc --build-all + +Finally, commit: + + $ git commit -a -m 'add perlXXXdelta' =item * @@ -890,13 +926,6 @@ e.g. =item * -I - -Remind the current maintainer of C to push a new release -to CPAN. - -=item * - I.