This wiki page is meant to document the action items when a component changes state.
Commons Component Lifecycle States
As far as the Jakarta Commons repository is concerned, a Commons component can be in one and only one of the following states:
proper ([http://svn.apache.org/repos/asf/jakarta/commons/proper/ current list])
sandbox ([http://svn.apache.org/repos/asf/jakarta/commons/sandbox/ current list])
dormant ([http://svn.apache.org/repos/asf/jakarta/commons/dormant/ current list])
Pre-requisites
- Any transition where the origin or destination is Commons Proper, requires a VOTE.
Revival from dormancy requires a VOTE (as documented in the "Revival" section of the [http://jakarta.apache.org/commons/dormant/index.html dormant components web page]).
Thus effectively the only move that can occur by lazy consensus is the periodic [http://wiki.apache.org/jakarta-commons/ProposalSandboxPruning sandbox pruning] for dormant components.
So, make sure you have called a VOTE and it has passed.
You will need jakarta-commons karma.
Sandbox graduations
Transitions from sandbox to proper are particularly significant, and have a number of additional tasks associated with them. The appropriate wiki page to consult for sandbox graduations is [:MovingFromSandboxToProperSVN].
SVN move
For a component that changes state from <origin> to <destination>:
- Remove component from svn:externals from the trunks-<origin>
- Move component
- Add component to svn:externals in the trunks-<destination>
The above sequence makes sure that component is always available when listed in the particular svn:externals. The actual SVN commands can be looked up either from the [:MovingFromSandboxToProperSVN] or ProposalSandboxPruning wiki pages.
Tagging
Tag the component once it has been moved to its new location in SVN. The recommended tag name is:
<component>_<origin>_mm_yyyy
Example: A component foo that has been moved out of sandbox in January 2006 chooses a tag FOO_SANDBOX_01_2006 after the move.
POM update
Update the POM to reflect the correct website URL for the new component state.
Website changes
- Publish the component website at its new location
- Make changes to the Commons website (look in commons-build/menus and commons-build/parts) before re-publishing. This bit will change when we move to a Maven2 site.
- Optionally, remove old website and/or permanently redirect from the old website location to new one
The sequence is important to avoid potential 404s.