maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Hohwiller (JIRA) <j...@codehaus.org>
Subject [jira] Created: (MRELEASE-145) release:prepare requires all modules to be SNAPSHOTS
Date Thu, 03 Aug 2006 11:14:01 GMT
release:prepare requires all modules to be SNAPSHOTS
----------------------------------------------------

                 Key: MRELEASE-145
                 URL: http://jira.codehaus.org/browse/MRELEASE-145
             Project: Maven 2.x Release Plugin
          Issue Type: Improvement
            Reporter: Jörg Hohwiller
             Fix For: 2.0-beta-4


The biggest need for the maven-release-plugin is in complex projects with a lot of modules
(that may again have modules). If I do not get it wrong, the current released version forces
all modules to be snapshots and releases them individually. This is completely useless in
my situation because in the end this forces me to release alle modules together for every
change that is to be released and more or less causes that all modules have the same version
number. When I call mvn replease:prepare on my toplevel project this is no snapshot, it fails
with this error:
The project <groupId>:<artifactId> isn't a snapshot (<version>).

I would expect release:prepare to leave non SNAPSHOT modules untouched (and only verify that
they do not have SNAPSHOT dependencies, what should never be the case if the version is no
snapshot).
All reactor projects that have a "-SNAPHSOT" version should be released and theier project-internal
dependencies should also be set to the acording released version (and later be set to the
new SNAPSHOT).
Additionally I want to have the complete project to be tagged as a whole instead of each module.
This could potentially be configureable (especially which directory is actually tagged, e.g.
if the toplevel project is not in trunk/ but somewhere deeper say trunk/develop because other
directories in trunk are huge but do not need to be checked out by every developer but need
to be tagged).

I personally think that the best flexibility and final freedom would be to split off the release:prepare
goal into 3 goals:
-create release version(s)
-create tag(s)
-update to snapshot version(s)

These goals could be used individually and one could add some custom steps or replace one
with something else.

For creating the snapshot versions there is also the problem, that you do not know right away
which project will be modified when in the future. The coolest thing would be if this would
happen automatically when the first change is commited to the module. But this is of cause
not praticable in reality (maybe if all commits would be done with maven).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

Mime
View raw message