Release manager: Leonardo Uribe
Here's how you can help us test the distribution.
Download a nightly build of the distribution assemblies:
Configure a <repository> for Maven 2:
<repository> <id>apache.snapshots</id> <name>Apache Snapshot Repository</name> <url>http://people.apache.org/repo/m2-snapshot-repository</url> </repository> |
And declare a dependency on the 2.0.12 snapshots:
<dependency> <groupId>org.apache.myfaces.core</groupId> <artifactId>myfaces-api</artifactId> <version>2.0.12-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.myfaces.core</groupId> <artifactId>myfaces-impl</artifactId> <version>2.0.12-SNAPSHOT</version> </dependency> |
Note: Maven 2.0.12 will not download a new version if one is already present in your local repository. You will need to delete $M2_REPO/org/apache/myfaces/core to force Maven to download the new version. (Usually, $M2_REPO is <your home directory>/.m2/repository .)
Test your application, then, let us know the results (good or bad!) on dev at myfaces.apache.org. (You must be subscribed to post. See: http://myfaces.apache.org/mail-lists.html.)
}}} == Diary == <<Anchor(diary)>> Follow the guide on http://www.apache.org/dev/publishing-maven-artifacts.html 1. Preparing shared 4.0.12 * Try -DdryRun=true SUCCESS {{{ mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/tags -DdryRun=true |
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/tags -Dresume=false mvn install mvn release:rollback mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/tags -Dresume=false |
Note: Preparing the release will create the new tag in SVN, automatically checking in on your behalf.
Note: If you're located in Europe then release:prepare may fail with 'Unable to tag SCM' and 'svn: No such revision X'. Wait 10 seconds and run mvn release:prepare again.
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/tags |
mvn release:perform -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/tags |
2. Preparing core 2.0.12
mvn clean install mvn install -Pgenerate-assembly -Papache-release mvn release:prepare -DprepareRelease=true -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/tags -DdryRun=true |
mvn release:prepare -DprepareRelease=true -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/tags -Dresume=false mvn install mvn install -Pgenerate-assembly -Papache-release mvn release:rollback -DprepareRelease=true mvn release:prepare -DprepareRelease=true -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/tags -Dresume=false |
Note: Preparing the release will create the new tag in SVN, automatically checking in on your behalf.
Note: If you're located in Europe then release:prepare may fail with 'Unable to tag SCM' and 'svn: No such revision X'. Wait 10 seconds and run mvn release:prepare again.
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/tags -DprepareRelease=true |
mvn release:perform -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/tags -DperformRelease=true |
4. JIRA Release Management
5. Next step is the TCK
TCK passed confirmed by Leonardo Uribe
6. Generate assembly
mvn install -Pgenerate-assembly cd assembly mvn package |
openssl md5 myfaces-core-2.0.12-src.tar.gz > myfaces-core-2.0.12-src.tar.gz.md5 openssl md5 myfaces-core-2.0.12-src.zip > myfaces-core-2.0.12-src.zip.md5 openssl sha1 myfaces-core-2.0.12-src.tar.gz > myfaces-core-2.0.12-src.tar.gz.sha1 openssl sha1 myfaces-core-2.0.12-src.zip > myfaces-core-2.0.12-src.zip.sha1 gpg --armor --output myfaces-core-2.0.12-src.tar.gz.asc --detach-sig myfaces-core-2.0.12-src.tar.gz gpg --armor --output myfaces-core-2.0.12-src.zip.asc --detach-sig myfaces-core-2.0.12-src.zip openssl md5 myfaces-core-2.0.12-bin.tar.gz > myfaces-core-2.0.12-bin.tar.gz.md5 openssl md5 myfaces-core-2.0.12-bin.zip > myfaces-core-2.0.12-bin.zip.md5 openssl sha1 myfaces-core-2.0.12-bin.tar.gz > myfaces-core-2.0.12-bin.tar.gz.sha1 openssl sha1 myfaces-core-2.0.12-bin.zip > myfaces-core-2.0.12-bin.zip.sha1 gpg --armor --output myfaces-core-2.0.12-bin.tar.gz.asc --detach-sig myfaces-core-2.0.12-bin.tar.gz gpg --armor --output myfaces-core-2.0.12-bin.zip.asc --detach-sig myfaces-core-2.0.12-bin.zip |
scp -p -r myfaces-core-2.0.12-bin* lu4242@people.apache.org:/home/lu4242/public_html/myfaces2012binsrc/binaries scp -p -r myfaces-core-2.0.12-src* lu4242@people.apache.org:/home/lu4242/public_html/myfaces2012binsrc/sources |
cd /home/lu4242/public_html/myfaces2012binsrc/binaries wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.tar.gz wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.tar.gz.asc wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.tar.gz.md5 wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.tar.gz.sha1 wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.zip wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.zip.asc wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.zip.md5 wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-bin.zip.sha1 cd /home/lu4242/public_html/myfaces2012binsrc/sources wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.tar.gz wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.tar.gz.asc wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.tar.gz.md5 wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.tar.gz.sha1 wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.zip wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.zip.asc wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.zip.md5 wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/core/myfaces-core-assembly/2.0.12/myfaces-core-assembly-2.0.12-src.zip.sha1 |
7. VOTE
Hi, I was running the needed tasks to get the 2.0.12 release of Apache MyFaces core out. The artifacts passed all TCK tests. Please note that this vote concerns all of the following parts: 1. Maven artifact group "org.apache.myfaces.shared" v4.0.12 [1] 2. Maven artifact group "org.apache.myfaces.core" v2.0.12 [1] The artifacts were deployed on nexus repo [1] and to my private Apache account [3] for binary and source packages. The release notes could be found at [4]. Also the clirr test does not show binary incompatibilities with myfaces-api. Please take a look at the "2.0.12" artifacts and vote! Please note: This vote is "majority approval" with a minimum of three +1 votes (see [3]). ------------------------------------------------ [ ] +1 for community members who have reviewed the bits [ ] +0 [ ] -1 for fatal flaws that should cause these bits not to be released, and why.............. ------------------------------------------------ Thanks, Leonardo Uribe [1] https://repository.apache.org/content/repositories/orgapachemyfaces-181/org/apache/myfaces/ [2] http://www.apache.org/foundation/voting.html#ReleaseVotes [3] http://people.apache.org/~lu4242/myfaces2012binsrc [4] https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10600&version=12319175 |
8. Clirr report to check binary incompatibilities success
9. Vote closed, starting distribution
cd /home/lu4242/public_html/myfaces2012binsrc/sources cp * /www/www.apache.org/dist/myfaces/source cd /home/lu4242/public_html/myfaces2012binsrc/binaries cp * /www/www.apache.org/dist/myfaces/binaries |
Alternative for manual copy: mvn clean deploy -DaltDeploymentRepository=myfaces-staging::default::scpexe://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository -Psign-artifacts -DperformRelease=true -Dpassphrase=??? |
Alternative for manual copy: mvn clean deploy -DaltDeploymentRepository=myfaces-staging::default::scpexe://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository -Psign-artifacts -DperformRelease=true -Dpassphrase=??? -Pgenerate-assembly |
10. Announce
Subject: [ANNOUNCE] MyFaces Core v2.0.12 Release The Apache MyFaces team is pleased to announce the release of MyFaces Core 2.0.12. MyFaces Core is a JavaServer(tm) Faces 2.0 implementation as specified by JSR-314. MyFaces Core has passed Sun's JSR-314 TCK and is 100% compliant with the JSR-314 specification. MyFaces Core 2.0.12 is available in both binary and source distributions. * http://myfaces.apache.org/download.html MyFaces Core is also available in the central Maven repository under Group ID "org.apache.myfaces.core". Release Notes - MyFaces Core - Version 2.0.12 Sub-task [MYFACES-3437] - [PERF] Use index-based loop where possible Bug [MYFACES-3401] - Issue with RichFaces fileUpload component using MyFaces 2.0 [MYFACES-3414] - MyFaces ResourceImpl$ValueExpressionFilterInputStream does not handle resolving long URLs [MYFACES-3416] - Default ValidatorFactory is not stored on application map [MYFACES-3429] - ArrayIndexOutOfBoundsException in CompositeELResolver under load [MYFACES-3430] - org.apache.myfaces.shared.resource. ResourceImpl: PushbackInputStream delegate is not closed [MYFACES-3431] - jsf.js: minor spec implementation bug, success is sent at the wrong location of the code [MYFACES-3433] - PhaseListenerManager throws NPE if pre-phase action was unsuccessful [MYFACES-3442] - Infinite loop when calling ApplicationImpl._handleListenerForAnnotations under heavy load [MYFACES-3444] - js-error: _mfInternal is null [MYFACES-3454] - composite component is not rendered anymore with 2.1.6-SNAPSHOT [MYFACES-3455] - [myfaces-2.1.6-SNAPSHOT] Using f:ajax within h:commandButton to dynamic switch ui:include works not correct anymore [MYFACES-3456] - jsf.jsf: Small refactoring bug in the eval code [MYFACES-3457] - Implicit Object Resolver for JSP does not resolve "resource" object Improvement [MYFACES-3266] - [perf] [concurrency] check correct logger creation [MYFACES-3420] - jsf.js: Another round of small bugfixes and improvements [MYFACES-3423] - [perf] Use ArrayList instead LinkedList in UIComponent.pushComponentToEL / popComponentFromEL [MYFACES-3424] - call popComponentFromEL from right instance when broadcast [MYFACES-3425] - [perf] enhance code applying best practices [MYFACES-3426] - [perf] do not call default VariableResolver / PropertyResolver when no custom instance is set [MYFACES-3427] - [perf] Use only one StringBuilder for generate unique facelets identifiers [MYFACES-3428] - [perf] optimize UILeaf [MYFACES-3432] - [perf] [mem] UIViewRoot.saveState(FacesContext) unnecessary saves empty view scope [MYFACES-3438] - jsf.js: error handling output improvement [MYFACES-3439] - [perf] ApplicationImpl: use cached info about ResourceDependecies for behaviors, converters and validators [MYFACES-3441] - [perf] use shared StringBuilder instance [MYFACES-3443] - [perf] cache Method and Field instances when PostConstruct processing is done and default LifecycleProvider is set [MYFACES-3445] - [perf] reduce HtmlResponseWriterImpl overhead [MYFACES-3446] - [perf] Improve html Renderers [MYFACES-3449] - [perf] replace buffer in PartialResponseWriter implementation with a fast filter [MYFACES-3450] - [perf] use grails StreamCharBuffer instead FastWriter in HtmlResponseWriterImpl [MYFACES-3451] - [core] Improve PSS algorithm when a dynamic view (use of c:if or ui:include src=#{...}) is used [MYFACES-3452] - Log managed bean creation in LifecycleProvider instances with finest level New Feature [MYFACES-3418] - [perf] do not check for duplicate ids when saving view on production stage regards, Leonardo Uribe |