<snip>
>> <parent>
>>    <artifactId>foo</artifactId>
>>    <version>LATEST</version>
>> </parent>
>And that prevents your build from being reproducible...

Not If you combine dynamic version ranges with replacement during deploy
and release the builds remain reproducable. They are in
fact even more reproducable than now.

Example: You trunk would contain:
<parent>
  <version>latest<version>
</parent>

a tag in svn or a resolved pom within a jar/war/ whatever should
automatically have the used version written in:
<parent>
  <version>1.2.3</version>
</parent>

If you then stop using SNAPSHOT versions an have your CI Server produces a
new version for every Build each single build becomes
reproducable which is even more than you have now.
In my opinion that is what on should aim for. The only difference between a
CI build and a release is that a release has been tested and marked as
"good". So each CI build is a potential release and as such should be
reproducable.


> <parent>
>  <version>[1.0,2.0-!)</version>
> </parent>

I've tried that and it doesn't work. Theres even an ticket for that one:
http://jira.codehaus.org/browse/MNG-2199
There are in fact more tickets about using latest version and dynamic
version replacement (or replacing properties)

Reply via email to