On 2/6/07, Paul Spencer <[EMAIL PROTECTED]> wrote:
Should the versions of maven-project be set to 1.0.5 for all projects,
not 1.0.6-SNAPSHOT?

That won't work because as long as the release process is not
finished, the maven-project 1.0.5 only exists on the (inofficial)
staging repo under
http://people.apache.org/builds/myfaces/m2-staging-repository/

So, a developer build of the trunk would fail, because the staging
repo is no standard repo and the artifact could not be found. So the
correct "intra-project" dependency linking on the trunk is always
"*-SNAPSHOT".
Leaving it at 1.0.5-SNAPSHOT is also no good idea, because new
additions and changes on the trunk would go into the nightly snapshot
builds, that would still be versioned "1.0.5-SNAPSHOT" but differ more
and more to the branched 1.0.5 version.


I have a similar same question for all dependent projects.

IMHO we should not add a SNAPSHOT dependency until their their is a
change from the released version of the dependency.  This will minimize
the number of projects to released.  Thus at the end of the release
process, only the following SNAPSHOT dependencies should exist:

See above. There are no officially available non-SNAPSHOT releases for
"maven-project" or "shared" or "core" yet.


In addition the snapshot dependency should not be add until AFTER the
release is cut.

Same problem and additional danger here:
Imagine a developer changes something and forgets to increase the
version number of the artifact from "x.y.z" to "x.y.z-SNAPSHOT". If he
does a mvn install (or a mvn deploy!!!) he will have a total version
chaos in his local repo: He will have local artifacts with version
x.y.z that differ to the official released artifacts with the same
version number!

See description of the maven release plugin [1] for best practice and
to learn how others are doing.

--Manfred

[1] http://maven.apache.org/plugins/maven-release-plugin/

Reply via email to