Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Notes on the MyFaces Core 2.0.0 Release

Release manager: Leonardo Uribe

Timeline

  • Proposed release date: 2010-04-17

Issues

Testing

Anchor
testing
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:

No Format
        <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.0 snapshots:

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

Note: Maven 2.0.4 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

Anchor
tasks
tasks

Proposed Release Announcement

Anchor
releasenotes
releasenotes

No Format
}}}

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

1.1 Preparing test 1.0.0-beta-3

    * Trying to prepare SUCCESS!.
{{{
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/test/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_0_0_beta_3 -DdryRun=true
  • Release it! FAIL.
No Format
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/test/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_0_0_beta_3 -Dresume=false
  • mvn install, mvn release:rollback and try again SUCCESS!
No Format
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/test/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_0_0_beta_3 -Dresume=false

1.2 Preparing shared 4.0.1

  • Trying to prepare SUCCESS!.
No Format
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=4_0_1 -DdryRun=true
  • Release it! FAIL.
No Format
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=4_0_1 -Dresume=false
  • mvn install, mvn release:rollback and try again SUCCESS!
No Format
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=4_0_1 -Dresume=false

2. Preparing core 2.0.0

  • copied trunk to temporary work branch core/branches/2_0_0prepare
  • Set all dependencies to org.apache.myfaces.shared artifacts to version "4.0.1" instead 4.0.1-SNAPSHOT
  • -DdryRun=true SUCCESS!
No Format
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=2_0_0 -DdryRun=true
  • Do it! -Dresume=false FAIL!
No Format
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=2_0_0 -Dresume=false
  • mvn install, mvn release:rollback and again SUCCESS!
  • Checkout 2_0_0 branch mvn install -DperformRelease=true

3. Deploy on local repo

  • shared 4.0.1 and myfaces-test 1.0.0-beta-3
No Format
mvn clean deploy -DperformRelease=true -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo200 -Psign-artifacts -Dpassphrase=??? 
  • core 2.0.0
No Format
mvn clean deploy -DperformRelease=true -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo200 -Psign-artifacts -Dpassphrase=??? -Pgenerate-assembly 

Wiki Markup
   *copy manually using scp to the account on people.apache.org. Due to a bug on linux \[WWW\] http://jira.codehaus.org/browse/MDEPLOY-62 deploy not work on linux. SUCCESS

No Format
   cd home/lu4242/stage/repo200
   scp -p -r org lu4242@people.apache.org:/home/lu4242/public_html/myfaces200

4. JIRA Release Management

  • Create 2.0.0 and 2.0.0-SNAPSHOT versions
  • Find resolved issues and close them
  • Unresolved issues moved to 2.0.0-SNAPSHOT
  • Issues fixed on both 2.0.0 and 1.1.7 should be saved on a text file to add it later on release of 1.1.7

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-2.0.0-bin.tar.gz and zip,
No Format

cd 2_0_0
mvn install -Pgenerate-assembly
cd assembly
mvn package

  • Create myfaces-core-2.0.0-src.tar.gz and zip manually and create .asc .md5 .sha1 for bin and src
No Format

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

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

  • Copy to private account on people.apache.org
No Format
scp -p -r myfaces-core-2.0.0-bin* lu4242@people.apache.org:/home/lu4242/public_html/myfaces200binsrc/binaries
scp -p -r myfaces-core-2.0.0-src* lu4242@people.apache.org:/home/lu4242/public_html/myfaces200binsrc/sources

7. VOTE

No Format
Hi,

I was running the needed tasks to get the 2.0.0 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.1  [1]
 2. Maven artifact group "org.apache.myfaces.core" v2.0.0  [1]
 3. Maven artifact group "org.apache.myfaces.test" v1.0.0-beta-3 [1]

The artifacts are deployed to my private Apache account ([1] and [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.0" 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] http://people.apache.org/~lu4242/myfaces200
[2] http://www.apache.org/foundation/voting.html#ReleaseVotes
[3] http://people.apache.org/~lu4242/myfaces200binsrc
[4] https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10600&styleName=Html&version=12314890

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
No Format
cd /home/lu4242/public_html/myfaces200binsrc/sources
cp * /www/www.apache.org/dist/myfaces/source
cd /home/lu4242/public_html/myfaces200binsrc/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
No Format
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
No Format
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

  • 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)
No Format
Subject: [ANNOUNCE] MyFaces Core v2.0.0 Release

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

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.0 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.0

Bug

    * [MYFACES-2361] - Add missing component system event dispatches
    * [MYFACES-2554] - myfaces's facelettaglibrary XSD incomplete
    * [MYFACES-2615] - Conversion errors should add a FacesMessage instead of throwing a FacesException
    * [MYFACES-2621] - BeanValidation does not work with Unified EL 2.2
    * [MYFACES-2622] - BeanValidator has to handle CompositeComponentExpressionHolder when resolving the ValueExpression
    * [MYFACES-2623] - validation-api and el-api 2.2 should be optional dependencies with scope compile in myfaces-api
    * [MYFACES-2624] - Automatically add h:messages if ProjectStage is Development
    * [MYFACES-2625] - TagLibrary using custom namespace fails to load composite component
    * [MYFACES-2626] - Application.createResource does not trip extension from resource name when try to resolve composite component class automatically
    * [MYFACES-2630] - HtmlBody 'onload' attribute encoding issues
    * [MYFACES-2631] - javax.faces.Messages.zh lacks two properties.
    * [MYFACES-2633] - Cannot set properties on custom composite component class when are implemented on getter/setter
    * [MYFACES-2636] - Need to check for null ValueExpression in _BeanValidatorUELUtils.getUELValueReferenceWrapper()
    * [MYFACES-2637] - Serious Bug! ajax cant work using multiple forms.
    * [MYFACES-2639] - Make org.apache.myfaces.REFRESH_TRANSIENT_BUILD_ON_PSS param = auto the default
    * [MYFACES-2641] - Use the application's ViewHandler to create the view in FaceletViewMetadata
    * [MYFACES-2643] - Update Google App Engine APT Doc
    * [MYFACES-2645] - The view state is saved before encodeAll() is called on every UIViewParameter in an AJAX request
    * [MYFACES-2646] - Missing unit test for application.createComponent(FacesContext context, Resource componentResource)
    * [MYFACES-2647] - MyFacesContainerInitializer doesn't check for null class name
    * [MYFACES-2649] - Ajax chokes on script triggered onchange if input has onchange=""
    * [MYFACES-2650] - chaining ajax onchange with existing onchange creates syntax error
    * [MYFACES-2654] - Trinidad ajax-branch does not work with MyFaces2
    * [MYFACES-2656] - Use UINamingContainer.getSeparatorChar instead NamingContainer.SEPARATOR_CHAR
    * [MYFACES-2657] - Already escaped apostrophes are double-escaped while building the ClientBehavior JavaScript
    * [MYFACES-2659] - TagDecorator in IMPL and API ...
    * [MYFACES-2661] - h:link render conversationContext param multiple times

Improvement

    * [MYFACES-2546] - Conversion rules for obtaing renderable String from the "value" property of SelectItem
    * [MYFACES-2658] - Indicate a better error when using Facelet TAGs on JSP(X) pages

New Feature

    * [MYFACES-2116] - TODO 65: Partial View Lifecycle
    * [MYFACES-2644] - IDE Tutorials for Myfaces 2 Google App Engine support

Task

    * [MYFACES-2124] - Enforce new API on UIViewRoot
    * [MYFACES-2183] - Integrate Facelets
    * [MYFACES-2323] - Implement <f:ajax> tag handler
    * [MYFACES-2329] - Add Facelet taglib 2.0 schema
    * [MYFACES-2619] - FacesContext.validationFailed() must be called on validation errors in validate()
    * [MYFACES-2648] - AbstractMyFacesListener is not needed anymore
    * [MYFACES-2653] - Fix implee6 include on code and clean myfaces impl pom.xml
    * [MYFACES-2660] - Review Facelets api usage

regards

Leonardo Uribe