Vincent Massol wrote:
  On Nov 6, 2008, at 2:43 PM, Sergiu Dumitriu wrote:
  Vincent Massol wrote:
  Hi Sergiu,
 On Nov 6, 2008, at 7:22 AM, sdumitriu (SVN) wrote:
  Author: sdumitriu
 Date: 2008-11-06 07:22:48 +0100 (Thu, 06 Nov 2008)
 New Revision: 13997
 Modified:
  platform/pom/trunk/pom.xml
 Log:
 [misc]
 Lock down another maven plugin version
 Declare a default version for the shared test dependency
 Modified: platform/pom/trunk/pom.xml
 ===================================================================
 --- platform/pom/trunk/pom.xml 2008-11-06 06:08:51 UTC (rev 13996)
 +++ platform/pom/trunk/pom.xml 2008-11-06 06:22:48 UTC (rev 13997)
 @@ -171,6 +171,7 @@
            <dependency>
              <groupId>com.xpn.xwiki.platform.tools</groupId>
              <artifactId>xwiki-verification-resources</artifactId>
 +              <version>${platform.tool.verification.version}</
 version> 
 I don't think this is right. There should be no version specified
IMO
 since this parent POM can be used by any module and some modules will
 want to use a different version.
 
 Individual modules can override this dependency. This is about letting
 the majority of the modules have a smaller configuration file, since
 most of them depend on the latest core anyway. 
 I don't remember the exact situations but I had done since in cargo's
 pom a long time and it caused some trouble. I can't remember the exact
 problems though.
 In any case I don't like it. I don't think there should be a default
 and each module inheriting the top level pom should set it's dep
 versions IMO. 
This was not the case before, either. Instead of having it defined in
the parent pom, it was in the platform parent pom, tools parent pom and
in two plugins. This means that four places had to be changed whenever
the verification resources was released.
  It's also not logical to set only this dep version
and not others. The
 last problem is that we don't want to re-release the top level pom
 whenever a dep changes its version.
 Thanks 
I disagree. It is not the only dependency version in the parent pom.
- xwiki-license-resouces has a version
- everything in pluginManagement has a version, although it is a
constant, and not a variable
- everything in dependencyManagement has a version, and it has one
especially because we don't want to repeat the version in each module.
The idea was to simplify the way we use the checkstyle plugin. Instead
of copying a complex pom setting over and over again, it should be
enough to just use the group and artifact IDs, the rest should be
inherited. And since this rarely changes (I don't think we will change
very often the checkstyle rules), it is OK to do this in one place, and
the only common place for all modules is the parent pom.
>>>            </dependency>
>>>          </dependencies>
>>>          <configuration>
>>> @@ -271,6 +272,12 @@
>>>        </plugin>
>>>        <plugin>
>>>          <groupId>org.apache.maven.plugins</groupId>
>>> +          <artifactId>maven-plugin-plugin</artifactId>
>>> +          <!-- Lock down plugin version for build reproducibility
>>> -->
>>> +          <version>2.3</version>
>>> +        </plugin>
>>> +        <plugin>
>>> +          <groupId>org.apache.maven.plugins</groupId>
>>>          <artifactId>maven-site-plugin</artifactId>
>>>          <!-- Lock down plugin version for build reproducibility -->
>>>          <version>2.0-beta-6</version>
>>> @@ -396,6 +403,7 @@
>>>  <properties>
>>>    <!-- Only disable checkstyle in the clover profile. by default
>>> it's on. -->
>>>    <xwiki.checkstyle.skip>false</xwiki.checkstyle.skip>
>>> +    <platform.tool.verification.version>1.12-SNAPSHOT</
>>> platform.tool.verification.version>
>>>  </properties>
>>>  <profiles>
>>>    <profile> 
--
Sergiu Dumitriu
http://purl.org/net/sergiu/