1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
Instructions for Apache-SizeLimit Release Manager
0. Ask the PMC to verify that you have the appropriate CPAN permissions
on dev@perl.
make sure your public key is in the KEYS file in the mod_perl docs.
you should only need to do this if this is your first time playing
Release Manager
$ cd mod_perl-docs
$ grep $USER src/dist/KEYS
note that the KEYS file itself contains all the instructions you
need on how to add your key. if you need further help on gpg
(like how to create a key in the first place) you can look here
http://people.apache.org/~geoff/gpghowto.html
Copy the KEYS file into place:
% scp KEYS www.apache.org:/www/www.apache.org/dist/perl/KEYS
If this is your first release, ask someone with APML karma on PAUSE
to verify you have the appropriate permissions. Likely someone on
the PMC can do this.
a. login into https://pause.perl.org
b. menu click: Select Mailinglist/Action
c. choose APML and share_perms and click go
d. click 3.6 Make somebody else co-maintainer
e. choose the modules to give the perms to
type the username of the new co-maintainer
f. if you happen to know that packages were added this release,
make sure you give the correct permissions to them.
TODO:
1/2. run pod2text to update the README and commit any changes if neccessary.
Decide what to do about having almost identical pod in Apache::SizeLimit
and Apache2::SizeLimit
3/4. Configure
% MAINTAINER_BUILDING_RELEASE=1 perl Makefile.PL
1. 'make dist' - to make sure nothing is missing from the manifest,
etc. Now test this generated package (not svn) with as many
configurations as possible on as many platforms as possible.
a. edit ./Changes:
- change -dev to -rc\d+ starting with -rc1
b. commit Changes
% svn ci -m "0.98 rc1" Changes
c. nuke any preinstalled Apache-SizeLimit libs and run 'make test'
d. test that you can 'make install' and then run 'make test' again
e. test whether we are still 100% OK on systems with no LWP:
% APACHE_TEST_PRETEND_NO_LWP=1 make test
2. once confident that the package is good, commit the release candidate
to https://dist.apache.org/repos/dist/dev/perl and post 24 hour-ish
candidate alert to the various lists
o dev/perl.apache.org
o modperl/perl.apache.org
(or maybe longer to give most people a chance to catch up). no need
to tag this package
Subject: [RELEASE CANDIDATE] Apache-SizeLimit 0.98 RC\d+
a. if problems are detected during stage 2, repeat stages 1 and 2.
3. when the package has been reported to be good, prepare a new
package to be released
a. edit ./Changes:
- remove -rc\d+
- add release date
b. rerun:
% perl Makefile.PL
make sure tag looks right
% make -n tag
c. commit Changes
% svn ci -m "0.98 release" Changes
d. tag
% make tag
e. create the final package
% make dist
f. test the final package again at least once
4. Upload the package to CPAN
5. Announce the package
a. post to the following list:
o modperl/perl.apache.org
Subject: [ANNOUNCE] Apache-SizeLimit 0.98
include:
- MD5 sig (as it comes from CPAN upload announce).
- the latest Changes
6. Prepare for the next cycle
a. increment version in lib/Apache/SizeLimit.pm, lib/Apache2/SizeLimit.pm and lib/Apache/SizeLimit/Core.pm
b. edit ./Changes:
- start a new item with incremented version + '-dev'
=item 0.99-dev
c. bump up version numbers in this file to make it easier to do the
next release.
% perl -pi.bak -e 's/(\d+)\.(\d+)/join(".", $1, $2+1)/eg' RELEASE
d. commit Changes
% svn ci -m "start 0.99-dev cycle" Changes RELEASE lib/Apache/SizeLimit.pm lib/Apache2/SizeLimit.pm lib/Apache/SizeLimit/Core.pm
|