You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by Apache Wiki <wi...@apache.org> on 2006/05/15 02:16:17 UTC

[Struts Wiki] Update of "StrutsActionRelease200" by TedHusted

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Struts Wiki" for change notification.

The following page has been changed by TedHusted:
http://wiki.apache.org/struts/StrutsActionRelease200

The comment on the change is:
Add release plan for SAF 2.0.0

New page:
= Struts 2.0.0 Release =

== Info ==

1. Struts [http://struts.apache.org/releases.html#Releases Release Guidelines]

2. [http://wiki.apache.org/incubator/SigningReleases Signing Releases]

3. Apache [http://apache.org/dev/mirrors.html Mirroring Guidelines]

== Release Manager ==

The release manager is '''Ted Husted'''

== Special Issues ==

The Struts Action 2 framework is based on the Web``Work 2.2 codebase. Essentially, Struts Action 2.0  will be the technical equivalent of Web``Work 2.3. (The Web``Work2 codebase was accepted into the Struts project through the [http://incubator.apache.org/projects/webwork2.html Apache Incubator].) 

For SAF 2.0, the core goals are to repackaging the codebase as an Apache Struts product, and to provide migration resources for SAF 1 and WW 2 developers. A few legacy API elements will be removed, and a few new features will be added. 

The SAF 2.0 release is following the [http://wiki.apache.org/struts/StrutsTi Struts Ti Proposal]. SAF 2.0 is phase 1 of the proposal. A subsequent SAF release series (either SAF 2.1 or SAF 3.0) will address Phase 2 of the proposal.

SAF 2.0.0 is targeting August 2006 as a relaxed release date.

See also StrutsAction2.

== Overall Status ==

|| Initial rename of packages and configuration files || Complete ||
|| Pass Web``Work2 codebase through the Incubator || Complete ||
|| Update WW2 documentation for SAF2 || Step 2 of 5 ||
|| Finalize configuration file names || [http://mail-archive.com/dev%40struts.apache.org/msg21757.html thread]||
|| Remove selected legacy API members || - ||
|| Implement selected new features || - ||
|| Resolve other outstanding issues || - ||
|| Complete standard release plan || - ||
|| - || - ||

== Documentation Status ==

[http://confluence.twdata.org/display/WW/Home Confluence Space]

|| Step 1 - Setup new Confluence instance || Complete ||
|| Step 2 - Initial pass to update nomenclature and remove obsolete material || Pending ||
|| Step 3 - Update "snippets" to reference ASF repository || - ||
|| Step 4 - Update JavaDoc to match new package and configuration naming || - ||
|| Step 5 - Complete tutorials and other "TODO" sections || - ||

== New Features Under Consideration ==

This initial list of new features is taken from the [http://wiki.apache.org/struts/RoughSpot Rough Spots page].

 * Distinguish between the published public versus private APIs. (See Rough Spot #4.)
 * Deprecate or remove the Around``Interceptor. (See #7.) 
 * Simplify Text``Provider. (See #15.)
 * On the OGNL value stack, rename #request for request parameters and #requestAttributes for request attributes. (See #17.)
 * Eliminate "do" clause for Action alias lookups. Scan Actions at load time for known aliases, and fail fast. 
 * Review exception handling. Some are still being swallowed rather than rethrown. (See #20.)
 * Reduce or eliminate need to use fully-qualified class names, over and over. (See #23.)
 * Work with OGNL to add Java 5 support. (See #31.)
 * Address the confusing issue of the validation/workflow lifecycle and different methods. (See Patrick #4.)
 * Work with OGNL to make it a clear superset of JSTL. (See Gabe #4.)
 * Use the strategy pattern to swap in different implementations of interfaces like Validation``Aware. (See Tim, NTH #1.)

== Outstanding Bug Review ==

[http://issues.apache.org/struts/browse/WW Issue Tracker]

|| '''ID''' || '''Summary''' || '''Component''' || '''Status''' ||
|| ${ID} || ${SUMMARY} || $COMPONENT} || ${STATUS} ||

== Preparation Checklist ==

|| '''#''' || '''Description''' || '''Status''' ||
|| 1. || ${DESCRIPTION} || ${STATUS} ||

The Commons [http://jakarta.apache.org/commons/releases/prepare.html Preparation Guide] is a helpful preparation backgrounder, but Commons uses the "beta/release-candidate/final" process.

Likewise, the [http://httpd.apache.org/dev/release.html HTTPD Release Guidelines] is a helpful "overall process" backgrounder, but HTTPD does not use a test-build stage.

Dependency versions for this release:

|| '''Dependency''' || '''Version''' || '''Status''' ||
|| ${DEPENDENCY} || ${VERSION} || ${STATUS} ||

== Testing Checklist ==

=== Testing Summary ===

|| '''#''' || '''Description''' || '''Completed''' ||
|| 1. || Run Unit Test targets || ${STATUS} ||
|| 2. || Play test bundled applications (TC 4.x) || ${STATUS} ||

TODO: A Canoo WebTest for the applications would be great!

=== Cactus Tests ===

|| '''#''' || '''J2SE Version''' || '''Tomcat Version''' ||'''Status''' ||
|| 1. || J2SE 1.4.x || Tomcat 5.0 || ${STATUS} ||
|| 2. || J2SE 1.5.x || Tomcat 5.1 || ${STATUS} ||

== Test Build Checklist (A) ==

See also Commons [http://jakarta.apache.org/commons/releases/release.html Step-by-Step Guide]

|| '''#''' || '''Description''' || '''Completed''' ||
|| A1. || Tag release in cvs: ${STRUTS_x_x_x} || ${STATUS} ||
|| A2. || Run Distribution Target || ${STATUS} ||
|| A3. || Upload Distribution to cvs.apache.org:/www/cvs.apache.org/dist/struts/x.x.x || ${STATUS} ||
|| A4. || Post release-quality vote on dev@ and user@ lists || ${STATUS ||

== Vote (A) ==

|| ${PMC_MEMBER} || ${GRADE} ||

If release vote fails, including for a lack of quorum, remove from dist folder.

== Point Release Checklist (B) ==

|| B1. || Create Sums and Sign Distributions [2] || ${STATUS} ||
|| B2. || Request new Bugzilla version level (x.x.x) || ${STATUS} ||
|| B3. || Update "Acquiring" page on website and Test Downloads || ${STATUS} ||

== Vote (B) ==

|| ${PMC_MEMBER} || ${GRADE} ||

Voting continues until a GA or "withdraw" vote passes, or there is a subsequent release.

== General Availability Checklist (C) ==

|| '''#''' || '''Description''' || '''Completed''' ||
|| C1. || Copy Distribution to Mirrored Directories [3] || ${STATUS} ||
|| C2. || Deploy JAR to Apache Java-Repository || ${STATUS} ||
|| C3. || After 24 hours, update "Acquiring" page on website || ${STATUS} ||
|| C4. || Post an announcement to lists and website || ${STATUS} ||

----