Maven 2.1.0 Release Plan
Conditions for Milestone Releases:
- Introduced code should be reasonably well tested (~75% or so)
- No other Maven features should be adversely affected by its introduction
- All existing integration tests MUST pass
2.1.0-M1: Implementation Updates
Contains reimplementation of interpolation and model-cloning logic for performance reasons.
Along with these, new functionality has been introduced that propagates changes in the project state out to areas of the POM build section that were originally specified as expressions, to keep references to project information such as build paths up to date with any changes to those values made by plugins. This new functionality is termed build dynamism for now.
- JIRA Issue(s):
- Design Document(s): Dynamic POM Build Sections
2.1.0-M2: Backport changes from trunk
Add prepare-package phase
- JIRA Issue:
CLI -D precedence
- JIRA Issue:
Make-Like Reactor Mode
This new feature is meant to allow building only the projects inside the current multimodule directory structure that the current project depends on, rather than forcing the user to rebuild the entire project tree. Of course, ordering of this subset of projects should be calculated as if it were part of the full reactor build, with dependency modules being built ahead of those modules that use them.
Further review for feasible changes
Review the other changes made for those that can be incorporated with sufficient testing not to impact the release schedule for 2.1.0.
Having scanned JIRA I didn't find any others (@since and implementation in plugins have been backported already), but will look at the commit history – Brett
2.1.0-M3: Doxia Upgrade
Doxia Upgrade to 1.1
This should be implemented, but needs some soak time to ensure all the kinks are worked out. It should be straightforward to include this and spin a new milestone release. I'm separating it from M1 mainly so we have an absolutely stable base in M1 from which to build. Other than fixing any issues that may come from this, it should be a zero-cost move from the perspective of resource planning for the 2.1.0 final release.
2.1.0-M4: Merge Feature Branches
Parallel Artifact Resolution
This new feature will simply streamline the resolution of artifacts - plugins, dependencies, etc. - to allow parallel download for artifacts that don't share the same groupId. The groupId distinction is important here, since it is the highest level at which Maven currently keeps metadata. Therefore, to avoid contention for access to these metadata files, all downloads within a groupId are managed serially as before.
- JIRA Issue(s): MNG-3379
- Design Document(s): pending
This release will contain any stabilizing bugfixes for the features and other modifications introduced during the milestone releases.
Conditions for Final Release:
- All milestone introductions are documented
- All milestone introductions are thoroughly tested to avoid regression