Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0
  • Struts 2.0.0 is preparing a "early adopter" build.
  • Codebase seems feature-complete.
  • Documentation issues remain.
  • Example issues remain.
  • Assembly/distribution issues remain.

(tick) For resolved issues, see Struts 2.0.0 DONE in the issue tracker.

(lightbulb) For pending issues (if any) see See also Struts 2.0.0 TODO in the issue tracker.

(warning) For known issues, see Struts 2.0.1 TODO

Overall Status

Initial rename of packages and configuration files

Complete

(tick)

Pass Web``Work2 codebase through the Incubator

Complete

(tick)

Setup Nightly Builds

Pending

(lightbulb)

Update WW2 documentation for Struts 2

Complete

(tick) Step 3 of 4

Utilize Cookbook format for Showcase and add Struts-Examples use cases

 

(grey lightbulb)

Remove deprecated members (IoC components)

Complete

(tick)

Deprecate selected legacy API members (e.g. Around``Interceptor, "do" clause)

Complete

(tick)

Update Javadoc to match new package and configuration naming

Complete

(tick)

Implement selected new features and Struts 1 features (infra)

Complete

(tick)

Add Struts 1 and WW2 Migration Guides

Initial draft added

(lightbulb)

Develop routine for exporting wiki to HTML/PDF

Complete

(tick) Pending

Develop Maven assembly to create distribution

Complete

(tick) Pending

Second documentation review

Complete

 (tick)

Complete standard release plan

Complete

(tick)

Struts 2.0.0 is intended as a "development" distribution only

 

 

Documentation Status

Step 1 - Setup new Confluence instance

Complete

(tick)

Step 2 - Initial pass to update nomenclature and remove obsolete material

Complete

(tick)

Step 3 - Update "snippets" to reference ASF repository

Complete

Pending (tick)

Step 4 - Complete tutorials and other "TODO" sections

Pending Complete

Resources

Release Manager

The release manager is Ted Husted.

See Also

(tick)

Additional Background

Release Manager

The release manager is Ted Husted.

Special Issues

Struts 2.0 is based on the WebWork 2 codebase. Essentially, Struts 2.0 will be the technical equivalent of WebWork 2.3. (The WebWork 2 codebase was accepted into the Struts project through the Apache Incubator.)

...

  • Deprecate or remove the AroundInterceptor. (See #7.)
  • Eliminate "do" clause for Action alias lookups. Scan Actions at load time for known aliases, and fail fast.
  • Eliminate "default" alias (which relied on "doAlais").

Architecture

  • Address the confusing issue of the validation/workflow lifecycle and different methods. (See Patrick #4.)

...

  • Wildcard Action Mappings (Done in XWork 2)
  • DynaForm as Model Object (including LazyDynaForms)
  • Extends for action mappings (See Tim, NTH #2.)
  • Change the default submit method for the form tag from GET to POST (See Ted, #2.)
  • Set field focus

Outstanding Issue Review

Struts 2.0.0 Issues

Preparation Checklist

#

Description

Status

1.

${DESCRIPTION}

${STATUS}

The Commons Preparation Guide is a helpful preparation backgrounder, but Commons uses the "beta/release-candidate/final" process. Likewise, the 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}

...

...

${STATUS}

Testing Checklist

Testing Summary

#

Description

Completed

1.

Run Unit Test targets

${STATUS} (tick) Done

2.

Play test bundled applications

${STATUS}

TODO: A Silenium test suite for the applications would be great!

Test Build Distribution Checklist (A)

See also Commons Step-by-Step Guide Creating and Signing Releases

#

Description

Completed

A1.

Setup new JIRA version level or update release on Roadmap

(tick) Done

A2.

Tag release in svn: ${STRUTS_x2_x0_x0}

${STATUS}

A2.

Run Distribution Target

${STATUS}

(tick) Done (r447072)

A3.

Update POM version level and run Distribution Target

(tick) Done

A4.

Create Sums and Sign Distributions

(tick) Done

A5 A3.

Upload Distribution to svnpeople.apache.org:/builds/wwwstruts/svn2.apache0.org/dist/struts/x.x.x

${STATUS}

0/

(tick) Done

A6.

Deploy JAR to Apache Java-Repository

(tick) Done

 

$ mvn deploy -P pre-assembly

 

A7 A4.

Post release-quality vote on dev@ lists

${STATUS}

Vote (A)

${PMC_MEMBER}

${GRADE}

  • If release vote fails, including for a lack of quorum (3 binding +1s), remove from dist builds folder.
  • If a release vote passes (Alpha, Beta or GA), the release may be announced and mirrored, at the PMC's discretion.
  • If vote is GA, goto Checklist (C).

Point Release Distribution Checklist (B)

...

B1.

Create Sums and Sign Distributions [2]

${STATUS}

]]></ac:plain-text-body></ac:structured-macro>

B2.

Setup new JIRA version level or update release on Roadmap

${STATUS}

B3.

Update "AcquiringDownooads" page on website and Test Downloads

${STATUS}

...

If initial vote is Alpha or Beta, voting can continue until a GA or "withdraw" vote passes, or there is a subsequent release.

${PMC_MEMBER}

${GRADE}

General Availability Distribution Checklist (C)

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="0aaba4a7-a549-48eb-a547-e1e59211a759"><ac:plain-text-body><![CDATA[]]></ac:plain-text-body></ac:structured-macro>

    Description

    Completed

    C1.

    Copy Distribution to Mirrored Directories [3]

    ${STATUS}

    C2.

    Deploy JAR to Apache Java-Repository

    ${STATUS}

    C3.

    After 24 hours, update "AcquiringDownloads" page on website

    ${STATUS}

    C4 C3.

    Post an announcement to lists and website

    ${STATUS}