Notes on the MyFaces Core 1.2.10 Release

Release manager: Leonardo Uribe

Timeline

  • Proposed release date: 2011-02-11

Issues

Testing

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 1.2.10 snapshots:

        <dependency>
            <groupId>org.apache.myfaces.core</groupId>
            <artifactId>myfaces-api</artifactId>
            <version>1.2.10-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>org.apache.myfaces.core</groupId>
            <artifactId>myfaces-impl</artifactId>
            <version>1.2.10-SNAPSHOT</version>
        </dependency>

Note: Maven 1.2.10 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.)

Tasks

Proposed Release Announcement

}}}

== Diary ==
<<Anchor(diary)>>

      Follow the guide on http://www.apache.org/dev/publishing-maven-artifacts.html

1. Preparing shared 3.0.9

  * Try -DdryRun=true SUCCESS

{{{
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/tags -DdryRun=true
  • Release it! FAIL
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
  • Stage the release for a vote
mvn release:perform -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/tags

2. Preparing core 1.2.10

  • Try -DdryRun=true SUCCESS
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
  • Release it! FAIL
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 -DprepareRelease=true -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/tags
  • Stage the release for a vote
mvn release:perform -DperformRelease=true -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/tags
  • Checkout generated tag mvn install -DperformRelease=true

4. JIRA Release Management

  • Create 1.2.10 and 1.2.11-SNAPSHOT versions
  • Find resolved issues and close them
  • Unresolved issues moved to 1.2.11-SNAPSHOT
  • Issues fixed on both 1.2.10, 1.2.10, 1.1.9 should be saved on a text file to add it later.

5. Next step is the TCK
TCK passed confirmed by Leonardo Uribe

6. Generate assembly

  • Try to do it automatically javadoc and other stuff SUCCESS. It generate myfaces-core-1.2.10-bin.tar.gz and zip,
cd 1_2_10
mvn install -Pgenerate-assembly
cd assembly
mvn package

  • Create myfaces-core-1.2.10-src.tar.gz and zip manually and create .asc .md5 .sha1 for bin and src
openssl md5 myfaces-core-1.2.10-src.tar.gz > myfaces-core-1.2.10-src.tar.gz.md5
openssl md5 myfaces-core-1.2.10-src.zip > myfaces-core-1.2.10-src.zip.md5
openssl sha1 myfaces-core-1.2.10-src.tar.gz > myfaces-core-1.2.10-src.tar.gz.sha1
openssl sha1 myfaces-core-1.2.10-src.zip > myfaces-core-1.2.10-src.zip.sha1
gpg --armor --output myfaces-core-1.2.10-src.tar.gz.asc --detach-sig myfaces-core-1.2.10-src.tar.gz
gpg --armor --output myfaces-core-1.2.10-src.zip.asc --detach-sig myfaces-core-1.2.10-src.zip

openssl md5 myfaces-core-1.2.10-bin.tar.gz > myfaces-core-1.2.10-bin.tar.gz.md5
openssl md5 myfaces-core-1.2.10-bin.zip > myfaces-core-1.2.10-bin.zip.md5
openssl sha1 myfaces-core-1.2.10-bin.tar.gz > myfaces-core-1.2.10-bin.tar.gz.sha1
openssl sha1 myfaces-core-1.2.10-bin.zip > myfaces-core-1.2.10-bin.zip.sha1
gpg --armor --output myfaces-core-1.2.10-bin.tar.gz.asc --detach-sig myfaces-core-1.2.10-bin.tar.gz
gpg --armor --output myfaces-core-1.2.10-bin.zip.asc --detach-sig myfaces-core-1.2.10-bin.zip

  • Copy to private account on people.apache.org
scp -p -r myfaces-core-1.2.10-bin* lu4242@people.apache.org:/home/lu4242/public_html/myfaces204binsrc/binaries
scp -p -r myfaces-core-1.2.10-src* lu4242@people.apache.org:/home/lu4242/public_html/myfaces204binsrc/sources
  • ALTERNATIVE: get it from nexus maven repository:
cd /home/lu4242/public_html/myfaces204binsrc/binaries

wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.tar.gz
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.tar.gz.asc
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.tar.gz.md5
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.tar.gz.sha1
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.zip
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.zip.asc
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.zip.md5
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-bin.zip.sha1

cd /home/lu4242/public_html/myfaces204binsrc/sources

wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.tar.gz
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.tar.gz.asc
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.tar.gz.md5
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.tar.gz.sha1
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.zip
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.zip.asc
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.zip.md5
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachemyfaces-045/org/apache/myfaces/core/myfaces-core-assembly/1.2.10/myfaces-core-assembly-1.2.10-src.zip.sha1

7. VOTE

Hi,

I was running the needed tasks to get the 1.2.10 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" v3.0.9  [1]
 2. Maven artifact group "org.apache.myfaces.core" v1.2.10  [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 "1.2.10" 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-045/org/apache/myfaces/
[2] http://www.apache.org/foundation/voting.html#ReleaseVotes
[3] http://people.apache.org/~lu4242/myfaces1210binsrc
[4] https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10600&version=12315978

8. Clirr report to check binary incompatibilities success

9. Vote closed, starting distribution

  • copy on /www/www.apache.org/dist/myfaces/source and /www/www.apache.org/dist/myfaces/binaries
cd /home/lu4242/public_html/myfaces204binsrc/sources
cp * /www/www.apache.org/dist/myfaces/source
cd /home/lu4242/public_html/myfaces204binsrc/binaries
cp * /www/www.apache.org/dist/myfaces/binaries
  • copy shared on /www/people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/myfaces/shared and test SUCCESS
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=???

  • copy core on /www/people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/myfaces/core SUCCESS
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 

  • Site deploy for shared and core (mvn site:site and mvn site:deploy)

10. Announce

  • Sent announcement mail
    • To: announce@apache.org, announce@myfaces.apache.org
    • Cc: dev@myfaces.apache.org, users@myfaces.apache.org
  • Sent announcement to jcp-open@apache.org (Necessary for TCK certified releases)
Subject: [ANNOUNCE] MyFaces Core v1.2.10 Release

The Apache MyFaces team is pleased to announce the release of MyFaces Core 1.2.10.

MyFaces Core is a JavaServer(tm) Faces 1.2 implementation as specified by JSR-252. MyFaces Core has passed Sun's JSR-252 TCK and is 100% compliant with the JSR-252 specification. 

MyFaces Core 1.2.10 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 1.2.10 

Bug

    * [MYFACES-1890] - Numberconverter has issue with bigdecimal
    * [MYFACES-2751] - escape attribute of h:outputLabel is not picked up by HtmlLabelRenderer
    * [MYFACES-2857] - Its not possible to change the summary/ detail message of a ParametrizableFacesMessage
    * [MYFACES-2928] - FacesConfigurator cast for ApplicationImpl directly to load converter configuration, instead use RuntimeConfig object
    * [MYFACES-2934] - Side-channel timing attack in StateUtils class may still allow padding oracle attack
    * [MYFACES-2969] - Example number used by f:convertNumber messages are not formatted taking into account locale and parameters.
    * [MYFACES-2970] - f:convertNumber conversion is not symmetric when currencyCode and currencySymbol are used
    * [MYFACES-2982] - Update localized javax.faces.Messages.properties
    * [MYFACES-3001] - Memory Leak in MyFaces 1.2 related to RuntimeConfig ThreadLocal
    * [MYFACES-3015] - CLONE -ExternalContext: setRequest(...) method does not reset cached request maps (1.2 branch)
    * [MYFACES-3057] - CLONE - MyFaces hangs when converting 2.2250738585072012e-308 (1.2.x fix)

Improvement

    * [MYFACES-2224] - Misleading hint in error message for NFE in BigDecimalConverter

Task

    * [MYFACES-2840] - Use a copied Iterator instead of the real Enumeration in AbstractAttributeMap.AbstractAttributeIterator

regards,

Leonardo Uribe

  • No labels