Dear Wiki user, You have subscribed to a wiki page or wiki category on "Jakarta-httpclient Wiki" for change notification.
The following page has been changed by OlegKalnichevski: http://wiki.apache.org/jakarta-httpclient/HttpComponentsCoreReleaseProcess New page: ##language:en #pragma section-numbers off = HttpComponents Core Release Process = == Release preparation == * Make sure there are no open Jira issues targeted for this release https://issues.apache.org/jira/browse/HTTPCORE * Review RELEASE_NOTES.txt and make sure all important issues closed since the previous release are included in the release notes * Generate pre-release JARs by running {{{ mvn package }}} * Download the latest JARDIFF (version 0.2 as of writing; requires Commons CLI 1.x and ASM 2.2.x) http://www.osjava.org/jardiff/ * Create jardiff.sh shell script or its Windows equivalent {{{ #!/bin/sh java -cp commons-cli.jar:asm.jar:jardiff.jar org.osjava.jardiff.Main $* }}} * Run the following command for all components that have been previously released {{{ jardiff -f <previous-release>.jar -t <prerelease>-SNAPSHOT.jar -o text }}} * Collect output (by redirecting it to a file) and add it to the 'API changes' of the release notes {{{ HttpCore API changes (generated by JarDiff 0.2) -------------------------------------- ... HttpCore NIO API changes (generated by JarDiff 0.2) -------------------------------------- ... HttpCore NIOSSL API changes (generated by JarDiff 0.2) -------------------------------------- ... }}} * Remove 'API changes' section of the previous release to keep release notes file short * Write an opening statement for the release highlighting the most changes, bug fixed and improvements * Review the following pages {{{ src/site/apt/download.apt src/site/apt/index.apt }}} and make adjustments that are necessary * Generate clover reports {{{ mvn clean clover:instrument clover:clover }}} * Deploy the site to a staging directory and review the resultant site before committing the changes {{{ mvn site:site site:stage -DstagingDirectory=/home/oleg/stage }}} You may need to re-build the site several times until fully satisfied with its content and appearance Remark: stagingDirectory MUST be an absolute path * Package the content of the staging directory * Generate release packages {{{ mvn assembly:assembly }}} * Rename pre-release packages packages {{{ httpcomponents-core-<version>-SNAPSHOT-bin-win.zip -> httpcomponents-core-<version>-SNAPSHOT-bin.zip httpcomponents-core-<version>-SNAPSHOT-src-win.zip -> httpcomponents-core-<version>-SNAPSHOT-src.zip httpcomponents-core-<version>-SNAPSHOT-bin-unix.tar.gz -> httpcomponents-core-<version>-SNAPSHOT-bin.tar.gz httpcomponents-core-<version>-SNAPSHOT-src-unix.tar.gz -> httpcomponents-core-<version>-SNAPSHOT-src.tar.gz }}} * Use this script to sign release packages The script assumes presence of a functional gpg setup on the local system {{{ #!/usr/bin/perl -w # signs and checksums all files given as command line args foreach my $file (@ARGV) { print $file."\n"; my $md5 = `md5sum $file`; `echo "$md5" > $file.md5`; $md5 =~ /(\w+)\s+/; $md5 = $1; # verify md5 my $testMd5 = `openssl md5 < $file`; chomp($testMd5); if ($testMd5 ne $md5) { die 'md5 does not equal'; } `gpg --armor --output $file.asc --detach-sig $file`; # verify signature `gpg --verify $file.asc $file` } }}} * Upload the content of the staging directory, RELEASE_NOTES.txt, release packages and corresponding MD5 and signature files to a publicly accessible web space such as people.apache.org * Deploy pre-release snapshots to the Apache Maven snapshot repository {{{ mvn deploy -P release }}} The 'release' profile parameter will cause release artifacts to be signed prior to deployment to the remote repository The command assumes presence of a functional gpg setup on the local system * Invite people on the [email protected] list to review the site, release notes, release packages and report problems --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
