Hi,
The current fix for this issue makes me feel a little uneasy. As is, the
code in the 2.2.x branch applies profiles from the settings in full
extent to POMs of dependencies. In particular, properties defined by
profiles from the user's settings override properties in dependency POMs.
For example, a POM of some dependency with
<properties>
<junitVersion>3.8.2</junitVersion>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junitVersion}</version>
</dependency>
</dependencies>
becomes out of a sudden subject to the user's settings. A profile from
the user's settings that defines the property junitVersion will,
intentionally or unintentionally, change the dependency resolution for
all projects that depend on the above POM.
Ignoring that such a significant change might not be suitable for a
bugfix release like 2.2.2, the question that we should review is how
much influence do we want to allow on the dependency POMs by the user's
settings.
Personally, I believe the only element from the POM that can be safely
subjected to interpolation using properties from the user's settings is
<dependency>/<systemPath> because this element is by its nature
environment-specific.
WDYT?
Benjamin
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org