Notes on the MyFaces Core 2.3.0-beta Release

Release manager: Leonardo Uribe

Timeline

  • Proposed release date: 2017-06-08

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 2.3.0-beta snapshots:

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

Note: Maven 2.3.0-beta 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

2. Preparing core 2.3.0-beta


  * Try -DdryRun=true SUCCESS

{{{
mvn clean install
mvn install -Pgenerate-assembly -Papache-release
mvn release:prepare -DprepareRelease=true -DdryRun=true
  • Release it! FAIL
mvn release:prepare -DprepareRelease=true -Dresume=false
mvn install
mvn install -Pgenerate-assembly -Papache-release
mvn release:rollback -DprepareRelease=true 
mvn release:prepare -DprepareRelease=true -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
  • Stage the release for a vote
mvn release:perform -DperformRelease=true
  • Checkout generated tag mvn install -DperformRelease=true

4. JIRA Release Management

  • Create 2.3.0-beta and 2.3.0-SNAPSHOT versions
  • Find resolved issues and close them
  • Unresolved issues moved to 2.3.0-SNAPSHOT

6. Generate assembly

  • Automatically done by maven

7. VOTE

Hi,

I was running the needed tasks to get the 2.3.0-beta release of Apache
MyFaces core out.


Please note that this vote concerns all of the following parts:
 1. Maven artifact group "org.apache.myfaces.core" v2.3.0-beta  [1]

The artifacts were deployed on nexus repo [1] 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.3.0-beta" 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-1109/org/apache/myfaces/
[2] http://www.apache.org/foundation/voting.html#ReleaseVotes
[3] https://repository.apache.org/content/repositories/orgapachemyfaces-1109/org/apache/myfaces/core/myfaces-core-assembly/
[4] https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=10600&version=12340857

8. Clirr report to check binary incompatibilities success

9. Vote closed, starting distribution

  • copy on svn apache dist repo.
  • 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 v2.3.0-beta Release

The Apache MyFaces team is pleased to announce the release of MyFaces Core 2.3.0-beta.

MyFaces Core is a JavaServer(tm) Faces 2.3 implementation as specified by JSR-372.

MyFaces Core 2.3.0-beta 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.3.0-beta 

Sub-task

    [MYFACES-4092] - Implement CDI extension for @FacesDataModel
    [MYFACES-4093] - Implement CDI extension for @FacesConverter
    [MYFACES-4094] - Implement CDI extension for @FacesValidator
    [MYFACES-4095] - Implement CDI extension for @FacesBehavior
    [MYFACES-4096] - Implement CDI extension for @ManagedProperty
    [MYFACES-4097] - Implement CDI changes for @FacesConfig

Bug

    [MYFACES-3644] - cleanup ViewState handling
    [MYFACES-4104] - Update plugins to compile java 8 code in JSF 2.3 branch
    [MYFACES-4105] - Implement extensionless mapping of views
    [MYFACES-4107] - StringIndexOutOfBoundsException in getResourceVersion
    [MYFACES-4117] - No default name for @FacesComponent with createTag=true and no tagName
    [MYFACES-4119] - Disposal method from PushContextFactoryBean is missing @Push annotation

Improvement

    [MYFACES-4099] - Allow resolve #{cc} inside templates called from a composite component
    [MYFACES-4102] - Check improvements in FlowHandler for JSF 2.3

New Feature

    [MYFACES-4069] - Implement f:websocket and related api
    [MYFACES-4070] - Implement h:commandScript and related api
    [MYFACES-4071] - Implement dynamic resource loading in ajax requests
    [MYFACES-4075] - SearchExpression API
    [MYFACES-4078] - Expose StateCacheFactory/StateCache as a SPI service
    [MYFACES-4079] - Implement CDI changes for JSF 2.3
    [MYFACES-4083] - Add copy constructor to wrappers
    [MYFACES-4084] - Implement f:importConstants
    [MYFACES-4085] - Constants for "jsf.js", "javax.faces" and postback parameters
    [MYFACES-4086] - Deprecate native managed beans annotations
    [MYFACES-4087] - Add PostRenderViewEvent
    [MYFACES-4088] - Add constructor with facesContext to event classes
    [MYFACES-4089] - Add Iterable support in UIData and UIRepeat
    [MYFACES-4090] - Add Map support in UIData and UIRepeat
    [MYFACES-4091] - Add custom type support in UIData and UIRepeat
    [MYFACES-4098] - Implement ResourceHandler.getViewResources(...)
    [MYFACES-4101] - Implement f:importConstants
    [MYFACES-4103] - Implement ViewHandler.getViews(...)
    [MYFACES-4106] - Implement ResourceHandler.markResourceRendered(...) and ResourceHandler.isResourceRendered(...)
    [MYFACES-4108] - Implement FaceletCache.setCacheFactories(...)
    [MYFACES-4109] - Implement f:validateWholeBean
    [MYFACES-4110] - Implement javax.faces.model.IterableDataModel
    [MYFACES-4111] - Implement h:column styleClass property
    [MYFACES-4112] - Implement h:dataTable rowClass
    [MYFACES-4113] - Implement h:panelGrid rowClass
    [MYFACES-4115] - Implement h:selectOneRadio "group" (distributed radio button)
    [MYFACES-4116] - Implement JDK 8 time support in f:convertDateTime
    [MYFACES-4118] - Implement new changes of javax.faces.ViewState update on ajax for multiple forms

Task

    [MYFACES-4121] - Fix javadoc for 2.3 branch and update maven-javadoc-plugin

regards,

Leonardo Uribe

  • No labels