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/