| Instructions for the apreq Release Manager (RM) |
| |
| FreeBSD/Solaris note: use gmake! |
| |
| 1. Create a realease branch: |
| |
| svn cp -m "Prepare for v2.18 release." \ |
| https://svn.apache.org/repos/asf/httpd/apreq/trunk \ |
| https://svn.apache.org/repos/asf/httpd/apreq/branches/v2.18 |
| |
| 2. On the BRANCH |
| Edit STATUS, marking the release date |
| |
| /** @page STATUS |
| |
| 2.18 released on <one week from today's date>. |
| |
| Also add the release date to the top @section in CHANGES: |
| |
| /** @page CHANGES |
| |
| @section v2.18 Changes with libapreq2-2.12 (released ...). |
| |
| And #undef the APREQ_VERSION_IS_DEV macro definition |
| in include/apreq_version.h: |
| |
| * This symbol will be #undef'd for releases. |
| */ |
| #undef APREQ_IS_DEV_VERSION |
| |
| % svn commit -m "2.18 release started" STATUS CHANGES include/apreq_version.h |
| |
| 3. On TRUNK: |
| Update CHANGES and STATUS to reflect the start of a new develoment cycle, |
| and run this to update the package version numbers throughout the tree: |
| |
| % build/update_version.pl 2.18 |
| |
| % svn commit -m "2.18 cycle" |
| |
| 4. On the BRANCH |
| Prep the package for CPAN by running: |
| |
| % ./buildconf && ./configure && make release |
| |
| This will generate a libapreq2-2.18.tar.gz candidate in the |
| current directory. You should keep this source tree |
| intact to tag the final release. |
| |
| |
| 5. Test the generated file with |
| |
| % make release_test |
| |
| Make sure all perl tests pass. |
| |
| 6. Sign it via gpg: |
| |
| % gpg --detach-sign --armor libapreq2-2.18.tar.gz |
| |
| or pgp: |
| |
| % pgp -sba libapreq2-2.18.tar.gz |
| |
| 7. Make release candidate files available for testing: |
| |
| $ svn co https://dist.apache.org/repos/dist/dev/httpd/libapreq/ apreq-dev-site |
| $ cp libapreq2-2.18.tar.gz* apreq-dev-site |
| $ svn commit -m "libapreq2 2.18 release artifacts" apreq-dev-site |
| |
| and post a candidate announcement to dev@httpd.apache.org. Also, it |
| is strongly recommended that the RM crosspost the candidate |
| announcement to the dev@perl list, to solicit feedback from a much |
| larger audience. |
| |
| Subject: [RELEASE CANDIDATE] libapreq2 2.18 RC\d+ |
| |
| 8. Give the mailing list participants 48-72 hours to comment and |
| vote on the candidate. If there is a "majority consensus" |
| (three +1 and more +1s than -1s) among the httpd pmc members, the RM |
| may proceed with the release. |
| |
| 9. Tag the Release -- from the BRANCH |
| |
| svn mv https://svn.apache.org/repos/asf/httpd/apreq/branches/v2.18 \ |
| https://svn.apache.org/repos/asf/httpd/apreq/tags/v2.18 |
| |
| 10. Upload the package, signature and SHA* hash files to dist.apache.org: |
| |
| $ svn co https://dist.apache.org/repos/dist/release/httpd/libapreq/ apreq-dist-site |
| $ cp libapreq2-2.18.tar.gz* apreq-dist-site |
| $ svn commit -m "libapreq2 2.18 release artifacts" |
| |
| Ask another developer to confirm the uploaded signature is ok. |
| |
| % gpg --verify libapreq2-2.18.tar.gz.asc |
| % pgp libapreq2-2.18.tar.gz.asc |
| |
| Check that your public key is among those listed in the |
| /www/www.apache.org/dist/httpd/KEYS file. If not, you |
| need to commit the necessary change to KEYS the httpd-dist repos. |
| Then update the website's copy using "cvs co KEYS" in the |
| /www/www.apache.org/dist/httpd/ directory. |
| |
| 11. Wait at least 1 hour for the ASF CDN to pick up the new files. |
| check https://downloads.apache.org/httpd/libapreq/ to see that |
| they have appeared. Then modify the public web site as follows: |
| |
| git clone git@github.com:apache/httpd-site.git httpd-site |
| |
| modify the version numbers in apreq/download.md and push to |
| complete. |
| |
| 12. Mail the announcement from your people.apache.org using build/announcement.pl: |
| |
| % build/announcement.pl $USER@apache.org | sendmail -oi -t -f $USER@apache.org |
| |
| 13. Ask a kind soul on dev@perl.apache.org to handle the CPAN upload. |
| |
| 14. Drink Beer! [Now optional] |