commit 839cacd3d188ad696c6c43f4304662bf3c426c31
Author: Michal Srb <msrb(a)redhat.com>
Date: Wed Apr 8 10:58:00 2015 +0200
Maven ignores "optional" tag in dependencyManagement section, do the same
See:
http://jira.codehaus.org/browse/MNG-5632
http://jira.codehaus.org/browse/MNG-4600
python/javapackages/maven/artifact.py | 5 ++---
python/javapackages/maven/dependency.py | 6 ------
.../merge_sections/child/child/pom.xml | 5 +++++
.../data/mvn_artifact/merge_sections/child/pom.xml | 6 ++++++
test/data/mvn_artifact/merge_sections/pom.xml | 10 ++++++++++
.../data/mvn_artifact/test_merge_sections-want.xml | 16 +++++++++++++++-
6 files changed, 38 insertions(+), 10 deletions(-)
---
diff --git a/python/javapackages/maven/artifact.py
b/python/javapackages/maven/artifact.py
index 50264ba..1246cc6 100644
--- a/python/javapackages/maven/artifact.py
+++ b/python/javapackages/maven/artifact.py
@@ -32,7 +32,6 @@
# Authors: Stanislav Ochotnicky <sochotnicky(a)redhat.com>
# Michal Srb <msrb(a)redhat.com>
-import sys
import re
import six
@@ -147,7 +146,7 @@ class AbstractArtifact(object):
if self.compare_to(artifact):
for member in self.__dict__:
if not member.startswith('_'):
- # for "scope" and "optional":
+ # for "scope":
# copy value from parent artifact only if this object
# contains default/implicit value
if (hasattr(self, "_default_" + member) and
@@ -158,7 +157,7 @@ class AbstractArtifact(object):
# override it again
if not getattr(artifact, "_default_" + member):
setattr(self, "_default_" + member, False)
- # for fields other than "scope" and "optional":
+ # for fields other than "scope":
# copy value from parent artifact, if current value is empty
elif not getattr(self, member):
setattr(self, member, getattr(artifact, member))
diff --git a/python/javapackages/maven/dependency.py
b/python/javapackages/maven/dependency.py
index 0ab517d..d3c05a1 100644
--- a/python/javapackages/maven/dependency.py
+++ b/python/javapackages/maven/dependency.py
@@ -67,7 +67,6 @@ class Dependency(AbstractArtifact):
# raw values
# TODO: probably not needed anymore
self._raw_scope = scope
- self._raw_optional = optional
if extension:
self.extension = extension.strip()
@@ -80,7 +79,6 @@ class Dependency(AbstractArtifact):
self._default_scope = False
if optional is not None:
self.optional = optional.strip()
- self._default_optional = False
if exclusions:
self.exclusions = exclusions
@@ -89,10 +87,6 @@ class Dependency(AbstractArtifact):
return True
return False
- def get_raw_optional(self):
- """Return original value for 'optional'
element."""
- return self._raw_optional
-
def get_raw_scope(self):
"""Return original value for 'scope'
element."""
return self._raw_scope
diff --git a/test/data/mvn_artifact/merge_sections/child/child/pom.xml
b/test/data/mvn_artifact/merge_sections/child/child/pom.xml
index 068ae91..a0306b2 100644
--- a/test/data/mvn_artifact/merge_sections/child/child/pom.xml
+++ b/test/data/mvn_artifact/merge_sections/child/child/pom.xml
@@ -18,5 +18,10 @@
<groupId>gdep1</groupId>
<artifactId>adep1</artifactId>
</dependency>
+ <dependency>
+ <groupId>gdep2</groupId>
+ <artifactId>adep2</artifactId>
+ <scope>compile</scope>
+ </dependency>
</dependencies>
</project>
diff --git a/test/data/mvn_artifact/merge_sections/child/pom.xml
b/test/data/mvn_artifact/merge_sections/child/pom.xml
index e036faf..543d06b 100644
--- a/test/data/mvn_artifact/merge_sections/child/pom.xml
+++ b/test/data/mvn_artifact/merge_sections/child/pom.xml
@@ -21,6 +21,12 @@
<version>10</version>
<optional>true</optional>
</dependency>
+ <dependency>
+ <groupId>gdep2</groupId>
+ <artifactId>adep2</artifactId>
+ <version>20</version>
+ <scope>test</scope>
+ </dependency>
</dependencies>
</dependencyManagement>
</project>
diff --git a/test/data/mvn_artifact/merge_sections/pom.xml
b/test/data/mvn_artifact/merge_sections/pom.xml
index 1f1c9ff..52b8142 100644
--- a/test/data/mvn_artifact/merge_sections/pom.xml
+++ b/test/data/mvn_artifact/merge_sections/pom.xml
@@ -16,4 +16,14 @@
</dependency>
</dependencies>
</dependencyManagement>
+
+ <dependencies>
+ <dependency>
+ <groupId>gdep3</groupId>
+ <artifactId>adep3</artifactId>
+ <scope>compile</scope>
+ <version>30</version>
+ <optional>true</optional>
+ </dependency>
+ </dependencies>
</project>
diff --git a/test/data/mvn_artifact/test_merge_sections-want.xml
b/test/data/mvn_artifact/test_merge_sections-want.xml
index 0f15ed1..cd89a4f 100644
--- a/test/data/mvn_artifact/test_merge_sections-want.xml
+++ b/test/data/mvn_artifact/test_merge_sections-want.xml
@@ -11,9 +11,23 @@
<ns0:groupId>gdep1</ns0:groupId>
<ns0:artifactId>adep1</ns0:artifactId>
<ns0:extension>jar</ns0:extension>
- <ns0:optional>true</ns0:optional>
+ <ns0:optional>false</ns0:optional>
<ns0:requestedVersion>10</ns0:requestedVersion>
</ns0:dependency>
+ <ns0:dependency>
+ <ns0:groupId>gdep2</ns0:groupId>
+ <ns0:artifactId>adep2</ns0:artifactId>
+ <ns0:extension>jar</ns0:extension>
+ <ns0:optional>false</ns0:optional>
+ <ns0:requestedVersion>20</ns0:requestedVersion>
+ </ns0:dependency>
+ <ns0:dependency>
+ <ns0:groupId>gdep3</ns0:groupId>
+ <ns0:artifactId>adep3</ns0:artifactId>
+ <ns0:extension>jar</ns0:extension>
+ <ns0:optional>true</ns0:optional>
+ <ns0:requestedVersion>30</ns0:requestedVersion>
+ </ns0:dependency>
</ns0:dependencies>
</ns0:artifact>
</ns0:artifacts>