Accepting request 1115402 from Java:packages
Some more fixes of variable interpolation + tests OBS-URL: https://build.opensuse.org/request/show/1115402 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/javapackages-tools?expand=0&rev=40
This commit is contained in:
commit
9675eaf4b5
@ -0,0 +1,62 @@
|
|||||||
|
From d458bce49270bccfa40e9c4e288b3c9550aff741 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||||
|
Date: Wed, 4 Oct 2023 04:07:58 +0200
|
||||||
|
Subject: [PATCH 5/5] Interpolate properties also in the current artifact
|
||||||
|
|
||||||
|
---
|
||||||
|
java-utils/install_pom.py | 15 +++++++++------
|
||||||
|
1 file changed, 9 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/java-utils/install_pom.py b/java-utils/install_pom.py
|
||||||
|
index e0282773..5f9fd741 100644
|
||||||
|
--- a/java-utils/install_pom.py
|
||||||
|
+++ b/java-utils/install_pom.py
|
||||||
|
@@ -31,6 +31,7 @@
|
||||||
|
# Authors: Michal Srb <msrb@redhat.com>
|
||||||
|
|
||||||
|
from javapackages.maven.pom import POM, PomLoadingException
|
||||||
|
+from javapackages.maven.artifact import Artifact
|
||||||
|
|
||||||
|
from javapackages.xmvn.xmvn_resolve import (XMvnResolve, ResolutionRequest,
|
||||||
|
XMvnResolveException)
|
||||||
|
@@ -164,7 +165,7 @@ def gather_dependencies(pom_path):
|
||||||
|
# only deps with scope "compile" or "runtime" are interesting
|
||||||
|
deps = [x for x in deps if x.scope in ["", "compile", "runtime"]]
|
||||||
|
|
||||||
|
- return deps
|
||||||
|
+ return deps, props
|
||||||
|
|
||||||
|
|
||||||
|
def _get_dependencies(pom):
|
||||||
|
@@ -215,21 +216,23 @@ def _main():
|
||||||
|
if uart.packaging and uart.packaging.lower() == 'pom':
|
||||||
|
tree = ElementTree.parse(args[0])
|
||||||
|
else:
|
||||||
|
+ mvn_deps, props = gather_dependencies(pom_path)
|
||||||
|
+ mvn_art = Artifact.from_mvn_str(str(uart))
|
||||||
|
+ mvn_art.interpolate(props)
|
||||||
|
result_pom = "<?xml version='1.0' encoding='UTF-8'?>\n"
|
||||||
|
result_pom += "<project xmlns=\"http://maven.apache.org/POM/4.0.0\">\n"
|
||||||
|
result_pom += " <modelVersion>4.0.0</modelVersion>\n"
|
||||||
|
- result_pom += (" <groupId>{0}</groupId>\n" ).format(uart.groupId)
|
||||||
|
- result_pom += (" <artifactId>{0}</artifactId>\n" ).format(uart.artifactId)
|
||||||
|
- result_pom += (" <version>{0}</version>\n").format(uart.version)
|
||||||
|
+ result_pom += (" <groupId>{0}</groupId>\n" ).format(mvn_art.groupId)
|
||||||
|
+ result_pom += (" <artifactId>{0}</artifactId>\n" ).format(mvn_art.artifactId)
|
||||||
|
+ result_pom += (" <version>{0}</version>\n").format(mvn_art.version)
|
||||||
|
|
||||||
|
if hasattr(uart, "packaging") and uart.packaging != 'jar':
|
||||||
|
result_pom += (" <packaging>{0}</packaging>\n").format(uart.packaging)
|
||||||
|
if hasattr(uart, "extension") and uart.extension != 'jar':
|
||||||
|
result_pom += (" <extension>{0}</extension>\n").format(uart.extension)
|
||||||
|
- if hasattr(uart, "classifier") and uart.classifiler != '':
|
||||||
|
+ if hasattr(uart, "classifier") and uart.classifier != '':
|
||||||
|
result_pom += (" <classifier>{0}</classifier>\n").format(uart.classifier)
|
||||||
|
|
||||||
|
- mvn_deps = gather_dependencies(pom_path)
|
||||||
|
if mvn_deps:
|
||||||
|
result_pom += " <dependencies>\n"
|
||||||
|
for d in mvn_deps:
|
||||||
|
--
|
||||||
|
2.42.0
|
||||||
|
|
713
0006-Test-variable-expansion-in-artifactId.patch
Normal file
713
0006-Test-variable-expansion-in-artifactId.patch
Normal file
@ -0,0 +1,713 @@
|
|||||||
|
From ce0929d03ba33ff98727fbd527f4ec94412f78bd Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||||
|
Date: Wed, 4 Oct 2023 08:26:00 +0200
|
||||||
|
Subject: [PATCH 6/7] Test variable expansion in artifactId
|
||||||
|
|
||||||
|
---
|
||||||
|
.../test_artifactid_expansion-want.xml | 34 ++
|
||||||
|
test/data/install_pom/xgboost/pom.xml | 499 ++++++++++++++++++
|
||||||
|
.../install_pom/xgboost/xgboost4j/pom.xml | 125 +++++
|
||||||
|
test/install_pom_test.py | 7 +
|
||||||
|
4 files changed, 665 insertions(+)
|
||||||
|
create mode 100644 test/data/install_pom/test_artifactid_expansion-want.xml
|
||||||
|
create mode 100644 test/data/install_pom/xgboost/pom.xml
|
||||||
|
create mode 100644 test/data/install_pom/xgboost/xgboost4j/pom.xml
|
||||||
|
|
||||||
|
diff --git a/test/data/install_pom/test_artifactid_expansion-want.xml b/test/data/install_pom/test_artifactid_expansion-want.xml
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..ce5fdcf8
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/data/install_pom/test_artifactid_expansion-want.xml
|
||||||
|
@@ -0,0 +1,34 @@
|
||||||
|
+<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
+<project xmlns="http://maven.apache.org/POM/4.0.0">
|
||||||
|
+ <modelVersion>4.0.0</modelVersion>
|
||||||
|
+ <groupId>ml.dmlc</groupId>
|
||||||
|
+ <artifactId>xgboost4j_2.12</artifactId>
|
||||||
|
+ <version>2.0.0</version>
|
||||||
|
+ <dependencies>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scala-lang</groupId>
|
||||||
|
+ <artifactId>scala-compiler</artifactId>
|
||||||
|
+ <version>2.12.18</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scala-lang</groupId>
|
||||||
|
+ <artifactId>scala-library</artifactId>
|
||||||
|
+ <version>2.12.18</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scala-lang.modules</groupId>
|
||||||
|
+ <artifactId>scala-collection-compat_2.12</artifactId>
|
||||||
|
+ <version>2.10.0</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>com.esotericsoftware</groupId>
|
||||||
|
+ <artifactId>kryo</artifactId>
|
||||||
|
+ <version>5.5.0</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>commons-logging</groupId>
|
||||||
|
+ <artifactId>commons-logging</artifactId>
|
||||||
|
+ <version>1.2</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ </dependencies>
|
||||||
|
+</project>
|
||||||
|
\ No newline at end of file
|
||||||
|
diff --git a/test/data/install_pom/xgboost/pom.xml b/test/data/install_pom/xgboost/pom.xml
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..80caa132
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/data/install_pom/xgboost/pom.xml
|
||||||
|
@@ -0,0 +1,499 @@
|
||||||
|
+<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
+<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
+ <modelVersion>4.0.0</modelVersion>
|
||||||
|
+
|
||||||
|
+ <groupId>ml.dmlc</groupId>
|
||||||
|
+ <artifactId>xgboost-jvm</artifactId>
|
||||||
|
+ <version>2.0.0</version>
|
||||||
|
+ <packaging>pom</packaging>
|
||||||
|
+ <name>XGBoost JVM Package</name>
|
||||||
|
+ <description>JVM Package for XGBoost</description>
|
||||||
|
+ <url>https://github.com/dmlc/xgboost/tree/master/jvm-packages</url>
|
||||||
|
+ <licenses>
|
||||||
|
+ <license>
|
||||||
|
+ <name>The Apache License, Version 2.0</name>
|
||||||
|
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||||
|
+ </license>
|
||||||
|
+ </licenses>
|
||||||
|
+ <developers>
|
||||||
|
+ <developer>
|
||||||
|
+ <name>CodingCat</name>
|
||||||
|
+ <email>codingcat@apache.org</email>
|
||||||
|
+ </developer>
|
||||||
|
+ </developers>
|
||||||
|
+ <scm>
|
||||||
|
+ <connection>scm:git:git:/github.com/dmlc/xgboost.git</connection>
|
||||||
|
+ <developerConnection>scm:git:ssh://github.com/dmlc/xgboost.git</developerConnection>
|
||||||
|
+ <url>https://github.com/dmlc/xgboost</url>
|
||||||
|
+ </scm>
|
||||||
|
+ <properties>
|
||||||
|
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||||
|
+ <maven.compiler.source>1.8</maven.compiler.source>
|
||||||
|
+ <maven.compiler.target>1.8</maven.compiler.target>
|
||||||
|
+ <flink.version>1.17.1</flink.version>
|
||||||
|
+ <junit.version>4.13.2</junit.version>
|
||||||
|
+ <spark.version>3.4.0</spark.version>
|
||||||
|
+ <spark.version.gpu>3.3.2</spark.version.gpu>
|
||||||
|
+ <scala.version>2.12.18</scala.version>
|
||||||
|
+ <scala.binary.version>2.12</scala.binary.version>
|
||||||
|
+ <hadoop.version>3.3.5</hadoop.version>
|
||||||
|
+ <maven.wagon.http.retryHandler.count>5</maven.wagon.http.retryHandler.count>
|
||||||
|
+ <log.capi.invocation>OFF</log.capi.invocation>
|
||||||
|
+ <use.cuda>OFF</use.cuda>
|
||||||
|
+ <cudf.version>23.08.0</cudf.version>
|
||||||
|
+ <spark.rapids.version>23.08.0</spark.rapids.version>
|
||||||
|
+ <cudf.classifier>cuda11</cudf.classifier>
|
||||||
|
+ <scalatest.version>3.2.16</scalatest.version>
|
||||||
|
+ <scala-collection-compat.version>2.10.0</scala-collection-compat.version>
|
||||||
|
+ </properties>
|
||||||
|
+ <repositories>
|
||||||
|
+ <repository>
|
||||||
|
+ <id>central_maven</id>
|
||||||
|
+ <name>central maven</name>
|
||||||
|
+ <url>https://repo1.maven.org/maven2</url>
|
||||||
|
+ </repository>
|
||||||
|
+ </repositories>
|
||||||
|
+ <modules>
|
||||||
|
+ </modules>
|
||||||
|
+
|
||||||
|
+ <profiles>
|
||||||
|
+ <profile>
|
||||||
|
+ <!-- default active profile excluding gpu related test suites -->
|
||||||
|
+ <id>default</id>
|
||||||
|
+ <activation>
|
||||||
|
+ <activeByDefault>true</activeByDefault>
|
||||||
|
+ </activation>
|
||||||
|
+ <modules>
|
||||||
|
+ <module>xgboost4j</module>
|
||||||
|
+ <module>xgboost4j-example</module>
|
||||||
|
+ <module>xgboost4j-spark</module>
|
||||||
|
+ <module>xgboost4j-flink</module>
|
||||||
|
+ </modules>
|
||||||
|
+ </profile>
|
||||||
|
+
|
||||||
|
+ <profile>
|
||||||
|
+ <id>scala-2.13</id>
|
||||||
|
+ <properties>
|
||||||
|
+ <scala.binary.version>2.13</scala.binary.version>
|
||||||
|
+ <scala.version>2.13.11</scala.version>
|
||||||
|
+ </properties>
|
||||||
|
+ </profile>
|
||||||
|
+
|
||||||
|
+ <!-- gpu profile with both cpu and gpu test suites -->
|
||||||
|
+ <profile>
|
||||||
|
+ <id>gpu</id>
|
||||||
|
+ <activation>
|
||||||
|
+ <property>
|
||||||
|
+ <name>use.cuda</name>
|
||||||
|
+ <value>ON</value>
|
||||||
|
+ </property>
|
||||||
|
+ </activation>
|
||||||
|
+ <properties>
|
||||||
|
+ <use.cuda>ON</use.cuda>
|
||||||
|
+ </properties>
|
||||||
|
+ <modules>
|
||||||
|
+ <module>xgboost4j-gpu</module>
|
||||||
|
+ <module>xgboost4j-spark-gpu</module>
|
||||||
|
+ </modules>
|
||||||
|
+ </profile>
|
||||||
|
+
|
||||||
|
+ <profile>
|
||||||
|
+ <id>release</id>
|
||||||
|
+ <modules>
|
||||||
|
+ <module>xgboost4j</module>
|
||||||
|
+ <module>xgboost4j-example</module>
|
||||||
|
+ <module>xgboost4j-spark</module>
|
||||||
|
+ <module>xgboost4j-flink</module>
|
||||||
|
+ <module>xgboost4j-gpu</module>
|
||||||
|
+ <module>xgboost4j-spark-gpu</module>
|
||||||
|
+ </modules>
|
||||||
|
+ <build>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-jar-plugin</artifactId>
|
||||||
|
+ <version>3.3.0</version>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>empty-javadoc-jar</id>
|
||||||
|
+ <phase>package</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>jar</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ <configuration>
|
||||||
|
+ <classifier>javadoc</classifier>
|
||||||
|
+ <classesDirectory>${basedir}/javadoc</classesDirectory>
|
||||||
|
+ </configuration>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-release-plugin</artifactId>
|
||||||
|
+ <version>3.0.1</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <autoVersionSubmodules>true</autoVersionSubmodules>
|
||||||
|
+ <useReleaseProfile>false</useReleaseProfile>
|
||||||
|
+ <releaseProfiles>release</releaseProfiles>
|
||||||
|
+ <goals>deploy</goals>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-gpg-plugin</artifactId>
|
||||||
|
+ <version>3.1.0</version>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>sign-artifacts</id>
|
||||||
|
+ <phase>verify</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>sign</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-source-plugin</artifactId>
|
||||||
|
+ <version>3.3.0</version>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>attach-sources</id>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>jar-no-fork</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.sonatype.plugins</groupId>
|
||||||
|
+ <artifactId>nexus-staging-maven-plugin</artifactId>
|
||||||
|
+ <version>1.6.13</version>
|
||||||
|
+ <extensions>true</extensions>
|
||||||
|
+ <configuration>
|
||||||
|
+ <serverId>ossrh</serverId>
|
||||||
|
+ <nexusUrl>https://oss.sonatype.org/</nexusUrl>
|
||||||
|
+ <autoReleaseAfterClose>false</autoReleaseAfterClose>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
+ <configuration>
|
||||||
|
+ <skipTests>true</skipTests>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </build>
|
||||||
|
+ </profile>
|
||||||
|
+ <profile>
|
||||||
|
+ <id>assembly</id>
|
||||||
|
+ <build>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
+ <version>3.6.0</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <descriptorRefs>
|
||||||
|
+ <descriptorRef>jar-with-dependencies</descriptorRef>
|
||||||
|
+ </descriptorRefs>
|
||||||
|
+ <skipAssembly>true</skipAssembly>
|
||||||
|
+ </configuration>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>make-assembly</id>
|
||||||
|
+ <phase>package</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>single</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </build>
|
||||||
|
+ </profile>
|
||||||
|
+ <profile>
|
||||||
|
+ <id>release-to-github</id>
|
||||||
|
+ <distributionManagement>
|
||||||
|
+ <repository>
|
||||||
|
+ <id>github.repo</id>
|
||||||
|
+ <name>Temporary Staging Repository</name>
|
||||||
|
+ <url>file://${project.build.directory}/mvn-repo</url>
|
||||||
|
+ </repository>
|
||||||
|
+ </distributionManagement>
|
||||||
|
+ <properties>
|
||||||
|
+ <github.global.server>github</github.global.server>
|
||||||
|
+ </properties>
|
||||||
|
+ <modules>
|
||||||
|
+ <module>xgboost4j</module>
|
||||||
|
+ <module>xgboost4j-example</module>
|
||||||
|
+ <module>xgboost4j-spark</module>
|
||||||
|
+ <module>xgboost4j-flink</module>
|
||||||
|
+ <module>xgboost4j-gpu</module>
|
||||||
|
+ <module>xgboost4j-spark-gpu</module>
|
||||||
|
+ </modules>
|
||||||
|
+ <build>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>com.github.github</groupId>
|
||||||
|
+ <artifactId>site-maven-plugin</artifactId>
|
||||||
|
+ <version>0.12</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <message>Maven artifacts for ${project.version}</message>
|
||||||
|
+ <noJekyll>true</noJekyll>
|
||||||
|
+ <outputDirectory>${project.build.directory}/mvn-repo</outputDirectory>
|
||||||
|
+ <branch>refs/heads/maven-repo</branch>
|
||||||
|
+ <excludes>
|
||||||
|
+ <exclude>*-with-dependencies.jar</exclude>
|
||||||
|
+ </excludes>
|
||||||
|
+ <repositoryName>xgboost</repositoryName>
|
||||||
|
+ <repositoryOwner>CodingCat</repositoryOwner>
|
||||||
|
+ <merge>true</merge>
|
||||||
|
+ </configuration>
|
||||||
|
+ <executions>
|
||||||
|
+ <!-- run site-maven-plugin's 'site' target as part of the build's normal 'deploy' phase -->
|
||||||
|
+ <execution>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>site</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ <phase>deploy</phase>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-deploy-plugin</artifactId>
|
||||||
|
+ <version>3.1.1</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <altDeploymentRepository>internal.repo::default::file://${project.build.directory}/mvn-repo</altDeploymentRepository>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
+ <configuration>
|
||||||
|
+ <skipTests>true</skipTests>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </build>
|
||||||
|
+ </profile>
|
||||||
|
+ <profile>
|
||||||
|
+ <id>release-to-s3</id>
|
||||||
|
+ <distributionManagement>
|
||||||
|
+ <snapshotRepository>
|
||||||
|
+ <id>maven-s3-snapshot-repo</id>
|
||||||
|
+ <url>s3://xgboost-maven-repo/snapshot</url>
|
||||||
|
+ </snapshotRepository>
|
||||||
|
+ <repository>
|
||||||
|
+ <id>maven-s3-release-repo</id>
|
||||||
|
+ <url>s3://xgboost-maven-repo/release</url>
|
||||||
|
+ </repository>
|
||||||
|
+ </distributionManagement>
|
||||||
|
+ <repositories>
|
||||||
|
+ <repository>
|
||||||
|
+ <id>maven-s3-snapshot-repo</id>
|
||||||
|
+ <url>https://s3.amazonaws.com/xgboost-maven-repo/snapshot</url>
|
||||||
|
+ </repository>
|
||||||
|
+ <repository>
|
||||||
|
+ <id>maven-s3-release-repo</id>
|
||||||
|
+ <url>https://s3.amazonaws.com/xgboost-maven-repo/release</url>
|
||||||
|
+ </repository>
|
||||||
|
+ </repositories>
|
||||||
|
+ <build>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
+ <configuration>
|
||||||
|
+ <skipTests>true</skipTests>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </build>
|
||||||
|
+ </profile>
|
||||||
|
+ </profiles>
|
||||||
|
+ <distributionManagement>
|
||||||
|
+ <snapshotRepository>
|
||||||
|
+ <id>ossrh</id>
|
||||||
|
+ <url>https://oss.sonatype.org/content/repositories/snapshots</url>
|
||||||
|
+ </snapshotRepository>
|
||||||
|
+ </distributionManagement>
|
||||||
|
+ <build>
|
||||||
|
+ <resources>
|
||||||
|
+ <resource>
|
||||||
|
+ <directory>src/main/resources</directory>
|
||||||
|
+ <filtering>true</filtering>
|
||||||
|
+ </resource>
|
||||||
|
+ </resources>
|
||||||
|
+
|
||||||
|
+ <pluginManagement>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.scalatest</groupId>
|
||||||
|
+ <artifactId>scalatest-maven-plugin</artifactId>
|
||||||
|
+ <version>2.2.0</version>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>test</id>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>test</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </pluginManagement>
|
||||||
|
+
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.scalastyle</groupId>
|
||||||
|
+ <artifactId>scalastyle-maven-plugin</artifactId>
|
||||||
|
+ <version>1.0.0</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <verbose>false</verbose>
|
||||||
|
+ <failOnViolation>true</failOnViolation>
|
||||||
|
+ <includeTestSourceDirectory>true</includeTestSourceDirectory>
|
||||||
|
+ <sourceDirectory>${basedir}/src/main/scala</sourceDirectory>
|
||||||
|
+ <testSourceDirectory>${basedir}/src/test/scala</testSourceDirectory>
|
||||||
|
+ <configLocation>scalastyle-config.xml</configLocation>
|
||||||
|
+ <outputEncoding>UTF-8</outputEncoding>
|
||||||
|
+ </configuration>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>checkstyle</id>
|
||||||
|
+ <phase>validate</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>check</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-site-plugin</artifactId>
|
||||||
|
+ <version>3.12.1</version>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-checkstyle-plugin</artifactId>
|
||||||
|
+ <version>3.3.0</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <configLocation>checkstyle.xml</configLocation>
|
||||||
|
+ <failOnViolation>true</failOnViolation>
|
||||||
|
+ </configuration>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>checkstyle</id>
|
||||||
|
+ <phase>validate</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>check</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>net.alchim31.maven</groupId>
|
||||||
|
+ <artifactId>scala-maven-plugin</artifactId>
|
||||||
|
+ <version>4.8.1</version>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>compile</id>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>compile</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ <phase>compile</phase>
|
||||||
|
+ </execution>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>test-compile</id>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>testCompile</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ <phase>test-compile</phase>
|
||||||
|
+ </execution>
|
||||||
|
+ <execution>
|
||||||
|
+ <phase>process-resources</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>compile</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>scala-compile-first</id>
|
||||||
|
+ <phase>process-resources</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>compile</goal>
|
||||||
|
+ <goal>add-source</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
+ <version>3.1.2</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <skipTests>false</skipTests>
|
||||||
|
+ <useSystemClassLoader>false</useSystemClassLoader>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.scalatest</groupId>
|
||||||
|
+ <artifactId>scalatest-maven-plugin</artifactId>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ <extensions>
|
||||||
|
+ <extension>
|
||||||
|
+ <groupId>com.github.seahen</groupId>
|
||||||
|
+ <artifactId>maven-s3-wagon</artifactId>
|
||||||
|
+ <version>1.3.3</version>
|
||||||
|
+ </extension>
|
||||||
|
+ </extensions>
|
||||||
|
+ </build>
|
||||||
|
+ <reporting>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <artifactId>maven-project-info-reports-plugin</artifactId>
|
||||||
|
+ <version>3.4.5</version>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>net.alchim31.maven</groupId>
|
||||||
|
+ <artifactId>scala-maven-plugin</artifactId>
|
||||||
|
+ <version>4.8.1</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <jvmArgs>
|
||||||
|
+ <jvmArg>-Xms64m</jvmArg>
|
||||||
|
+ <jvmArg>-Xmx1024m</jvmArg>
|
||||||
|
+ </jvmArgs>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </reporting>
|
||||||
|
+ <dependencies>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>com.esotericsoftware</groupId>
|
||||||
|
+ <artifactId>kryo</artifactId>
|
||||||
|
+ <version>5.5.0</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>commons-logging</groupId>
|
||||||
|
+ <artifactId>commons-logging</artifactId>
|
||||||
|
+ <version>1.2</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scalatest</groupId>
|
||||||
|
+ <artifactId>scalatest_${scala.binary.version}</artifactId>
|
||||||
|
+ <version>${scalatest.version}</version>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scalactic</groupId>
|
||||||
|
+ <artifactId>scalactic_${scala.binary.version}</artifactId>
|
||||||
|
+ <version>${scalatest.version}</version>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ </dependencies>
|
||||||
|
+</project>
|
||||||
|
diff --git a/test/data/install_pom/xgboost/xgboost4j/pom.xml b/test/data/install_pom/xgboost/xgboost4j/pom.xml
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..8d4f2c05
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/data/install_pom/xgboost/xgboost4j/pom.xml
|
||||||
|
@@ -0,0 +1,125 @@
|
||||||
|
+<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
+<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
+ <modelVersion>4.0.0</modelVersion>
|
||||||
|
+ <parent>
|
||||||
|
+ <groupId>ml.dmlc</groupId>
|
||||||
|
+ <artifactId>xgboost-jvm</artifactId>
|
||||||
|
+ <version>2.0.0</version>
|
||||||
|
+ </parent>
|
||||||
|
+ <name>xgboost4j</name>
|
||||||
|
+ <artifactId>xgboost4j_${scala.binary.version}</artifactId>
|
||||||
|
+ <version>2.0.0</version>
|
||||||
|
+ <packaging>jar</packaging>
|
||||||
|
+
|
||||||
|
+ <dependencies>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scala-lang</groupId>
|
||||||
|
+ <artifactId>scala-compiler</artifactId>
|
||||||
|
+ <version>${scala.version}</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scala-lang</groupId>
|
||||||
|
+ <artifactId>scala-library</artifactId>
|
||||||
|
+ <version>${scala.version}</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scala-lang.modules</groupId>
|
||||||
|
+ <artifactId>scala-collection-compat_${scala.binary.version}</artifactId>
|
||||||
|
+ <version>${scala-collection-compat.version}</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.apache.hadoop</groupId>
|
||||||
|
+ <artifactId>hadoop-hdfs</artifactId>
|
||||||
|
+ <version>${hadoop.version}</version>
|
||||||
|
+ <scope>provided</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.apache.hadoop</groupId>
|
||||||
|
+ <artifactId>hadoop-common</artifactId>
|
||||||
|
+ <version>${hadoop.version}</version>
|
||||||
|
+ <scope>provided</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>junit</groupId>
|
||||||
|
+ <artifactId>junit</artifactId>
|
||||||
|
+ <version>${junit.version}</version>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.scalatest</groupId>
|
||||||
|
+ <artifactId>scalatest_${scala.binary.version}</artifactId>
|
||||||
|
+ <version>${scalatest.version}</version>
|
||||||
|
+ <scope>provided</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ </dependencies>
|
||||||
|
+
|
||||||
|
+ <build>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-javadoc-plugin</artifactId>
|
||||||
|
+ <version>3.5.0</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <show>protected</show>
|
||||||
|
+ <nohelp>true</nohelp>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
+ <configuration>
|
||||||
|
+ <skipAssembly>false</skipAssembly>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <artifactId>exec-maven-plugin</artifactId>
|
||||||
|
+ <groupId>org.codehaus.mojo</groupId>
|
||||||
|
+ <version>3.1.0</version>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <id>native</id>
|
||||||
|
+ <phase>generate-sources</phase>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>exec</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ <configuration>
|
||||||
|
+ <executable>python</executable>
|
||||||
|
+ <arguments>
|
||||||
|
+ <argument>create_jni.py</argument>
|
||||||
|
+ <argument>--log-capi-invocation</argument>
|
||||||
|
+ <argument>${log.capi.invocation}</argument>
|
||||||
|
+ </arguments>
|
||||||
|
+ <workingDirectory>${user.dir}</workingDirectory>
|
||||||
|
+ </configuration>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-jar-plugin</artifactId>
|
||||||
|
+ <version>3.3.0</version>
|
||||||
|
+ <executions>
|
||||||
|
+ <execution>
|
||||||
|
+ <goals>
|
||||||
|
+ <goal>test-jar</goal>
|
||||||
|
+ </goals>
|
||||||
|
+ </execution>
|
||||||
|
+ </executions>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.maven.plugins</groupId>
|
||||||
|
+ <artifactId>maven-resources-plugin</artifactId>
|
||||||
|
+ <version>3.3.1</version>
|
||||||
|
+ <configuration>
|
||||||
|
+ <nonFilteredFileExtensions>
|
||||||
|
+ <nonFilteredFileExtension>dll</nonFilteredFileExtension>
|
||||||
|
+ <nonFilteredFileExtension>dylib</nonFilteredFileExtension>
|
||||||
|
+ <nonFilteredFileExtension>so</nonFilteredFileExtension>
|
||||||
|
+ </nonFilteredFileExtensions>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </build>
|
||||||
|
+</project>
|
||||||
|
diff --git a/test/install_pom_test.py b/test/install_pom_test.py
|
||||||
|
index c6acc644..db79c001 100644
|
||||||
|
--- a/test/install_pom_test.py
|
||||||
|
+++ b/test/install_pom_test.py
|
||||||
|
@@ -131,6 +131,13 @@ class TestInstallPom(unittest.TestCase):
|
||||||
|
result)
|
||||||
|
self.assertEqual(report, '', report)
|
||||||
|
|
||||||
|
+ @install_pom(os.path.join('xgboost', 'xgboost4j', 'pom.xml'))
|
||||||
|
+ def test_artifactid_expansion(self, stdout, stderr, return_value, result):
|
||||||
|
+ self.assertEqual(return_value, 0, stderr)
|
||||||
|
+ report = self.check_result(inspect.currentframe().f_code.co_name,
|
||||||
|
+ result)
|
||||||
|
+ self.assertEqual(report, '', report)
|
||||||
|
+
|
||||||
|
@install_pom('a_binary_file.pom')
|
||||||
|
def test_not_pom(self, stdout, stderr, return_value, result):
|
||||||
|
self.assertNotEqual(return_value, 0)
|
||||||
|
--
|
||||||
|
2.42.0
|
||||||
|
|
268
0007-Test-that-we-don-t-bomb-on-relativePath.patch
Normal file
268
0007-Test-that-we-don-t-bomb-on-relativePath.patch
Normal file
@ -0,0 +1,268 @@
|
|||||||
|
From 3a32ce8695f891d8051cccd5273758d3cd9ce54c Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||||
|
Date: Wed, 4 Oct 2023 08:32:33 +0200
|
||||||
|
Subject: [PATCH 7/7] Test that we don't bomb on <relativePath/>
|
||||||
|
|
||||||
|
---
|
||||||
|
test/data/install_pom/empty_relpath.pom | 182 ++++++++++++++++++
|
||||||
|
.../install_pom/test_empty_relpath-want.xml | 39 ++++
|
||||||
|
test/install_pom_test.py | 7 +
|
||||||
|
3 files changed, 228 insertions(+)
|
||||||
|
create mode 100644 test/data/install_pom/empty_relpath.pom
|
||||||
|
create mode 100644 test/data/install_pom/test_empty_relpath-want.xml
|
||||||
|
|
||||||
|
diff --git a/test/data/install_pom/empty_relpath.pom b/test/data/install_pom/empty_relpath.pom
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..785b9710
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/data/install_pom/empty_relpath.pom
|
||||||
|
@@ -0,0 +1,182 @@
|
||||||
|
+<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
+<!--
|
||||||
|
+ Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
+ or more contributor license agreements. See the NOTICE file
|
||||||
|
+ distributed with this work for additional information
|
||||||
|
+ regarding copyright ownership. The ASF licenses this file
|
||||||
|
+ to you under the Apache License, Version 2.0 (the
|
||||||
|
+ "License"); you may not use this file except in compliance
|
||||||
|
+ with the License. You may obtain a copy of the License at
|
||||||
|
+
|
||||||
|
+ http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
+
|
||||||
|
+ Unless required by applicable law or agreed to in writing,
|
||||||
|
+ software distributed under the License is distributed on an
|
||||||
|
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
+ KIND, either express or implied. See the License for the
|
||||||
|
+ specific language governing permissions and limitations
|
||||||
|
+ under the License.
|
||||||
|
+-->
|
||||||
|
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
+ <modelVersion>4.0.0</modelVersion>
|
||||||
|
+
|
||||||
|
+ <parent>
|
||||||
|
+ <groupId>org.apache.maven.shared</groupId>
|
||||||
|
+ <artifactId>maven-shared-components</artifactId>
|
||||||
|
+ <version>39</version>
|
||||||
|
+ <relativePath />
|
||||||
|
+ </parent>
|
||||||
|
+
|
||||||
|
+ <artifactId>maven-filtering</artifactId>
|
||||||
|
+ <version>3.3.1</version>
|
||||||
|
+
|
||||||
|
+ <name>Apache Maven Filtering</name>
|
||||||
|
+ <description>A component to assist in filtering of resource files with properties from a Maven project.</description>
|
||||||
|
+
|
||||||
|
+ <contributors>
|
||||||
|
+ <contributor>
|
||||||
|
+ <name>Graham Leggett</name>
|
||||||
|
+ </contributor>
|
||||||
|
+ </contributors>
|
||||||
|
+
|
||||||
|
+ <scm>
|
||||||
|
+ <connection>scm:git:https://gitbox.apache.org/repos/asf/maven-filtering.git</connection>
|
||||||
|
+ <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/maven-filtering.git</developerConnection>
|
||||||
|
+ <tag>maven-filtering-3.3.1</tag>
|
||||||
|
+ <url>https://github.com/apache/maven-filtering/tree/${project.scm.tag}</url>
|
||||||
|
+ </scm>
|
||||||
|
+ <issueManagement>
|
||||||
|
+ <system>JIRA</system>
|
||||||
|
+ <url>https://issues.apache.org/jira/issues/?jql=project%20%3D%20MSHARED%20AND%20component%20%3D%20maven-filtering</url>
|
||||||
|
+ </issueManagement>
|
||||||
|
+ <ciManagement>
|
||||||
|
+ <system>Jenkins</system>
|
||||||
|
+ <url>https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-filtering/</url>
|
||||||
|
+ </ciManagement>
|
||||||
|
+ <distributionManagement>
|
||||||
|
+ <site>
|
||||||
|
+ <id>apache.website</id>
|
||||||
|
+ <url>scm:svn:https://svn.apache.org/repos/asf/maven/website/components/${maven.site.path}</url>
|
||||||
|
+ </site>
|
||||||
|
+ </distributionManagement>
|
||||||
|
+
|
||||||
|
+ <properties>
|
||||||
|
+ <javaVersion>8</javaVersion>
|
||||||
|
+ <mavenVersion>3.2.5</mavenVersion>
|
||||||
|
+ <slf4jVersion>1.7.36</slf4jVersion>
|
||||||
|
+ <plexusBuildApiVersion>0.0.7</plexusBuildApiVersion>
|
||||||
|
+ <project.build.outputTimestamp>2023-03-21T10:53:39Z</project.build.outputTimestamp>
|
||||||
|
+ </properties>
|
||||||
|
+
|
||||||
|
+ <dependencies>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>javax.inject</groupId>
|
||||||
|
+ <artifactId>javax.inject</artifactId>
|
||||||
|
+ <version>1</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.slf4j</groupId>
|
||||||
|
+ <artifactId>slf4j-api</artifactId>
|
||||||
|
+ <version>${slf4jVersion}</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.sonatype.plexus</groupId>
|
||||||
|
+ <artifactId>plexus-build-api</artifactId>
|
||||||
|
+ <version>${plexusBuildApiVersion}</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.apache.maven</groupId>
|
||||||
|
+ <artifactId>maven-core</artifactId>
|
||||||
|
+ <version>${mavenVersion}</version>
|
||||||
|
+ <scope>provided</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.apache.maven</groupId>
|
||||||
|
+ <artifactId>maven-model</artifactId>
|
||||||
|
+ <version>${mavenVersion}</version>
|
||||||
|
+ <scope>provided</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.apache.maven</groupId>
|
||||||
|
+ <artifactId>maven-settings</artifactId>
|
||||||
|
+ <version>${mavenVersion}</version>
|
||||||
|
+ <scope>provided</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.codehaus.plexus</groupId>
|
||||||
|
+ <artifactId>plexus-utils</artifactId>
|
||||||
|
+ <version>3.5.1</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.codehaus.plexus</groupId>
|
||||||
|
+ <artifactId>plexus-interpolation</artifactId>
|
||||||
|
+ <version>1.26</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>commons-io</groupId>
|
||||||
|
+ <artifactId>commons-io</artifactId>
|
||||||
|
+ <version>2.11.0</version>
|
||||||
|
+ </dependency>
|
||||||
|
+
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.mockito</groupId>
|
||||||
|
+ <artifactId>mockito-core</artifactId>
|
||||||
|
+ <version>4.7.0</version>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>junit</groupId>
|
||||||
|
+ <artifactId>junit</artifactId>
|
||||||
|
+ <version>4.13.2</version>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.hamcrest</groupId>
|
||||||
|
+ <artifactId>hamcrest-core</artifactId>
|
||||||
|
+ <version>2.2</version>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.slf4j</groupId>
|
||||||
|
+ <artifactId>slf4j-simple</artifactId>
|
||||||
|
+ <version>${slf4jVersion}</version>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.sonatype.plexus</groupId>
|
||||||
|
+ <artifactId>plexus-build-api</artifactId>
|
||||||
|
+ <version>${plexusBuildApiVersion}</version>
|
||||||
|
+ <classifier>tests</classifier>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.eclipse.sisu</groupId>
|
||||||
|
+ <artifactId>org.eclipse.sisu.plexus</artifactId>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.eclipse.sisu</groupId>
|
||||||
|
+ <artifactId>org.eclipse.sisu.inject</artifactId>
|
||||||
|
+ <scope>test</scope>
|
||||||
|
+ </dependency>
|
||||||
|
+
|
||||||
|
+ </dependencies>
|
||||||
|
+
|
||||||
|
+ <build>
|
||||||
|
+ <plugins>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.apache.rat</groupId>
|
||||||
|
+ <artifactId>apache-rat-plugin</artifactId>
|
||||||
|
+ <configuration>
|
||||||
|
+ <excludes combine.children="append">
|
||||||
|
+ <exclude>src/test/units-files/**</exclude>
|
||||||
|
+ </excludes>
|
||||||
|
+ </configuration>
|
||||||
|
+ </plugin>
|
||||||
|
+ <plugin>
|
||||||
|
+ <groupId>org.eclipse.sisu</groupId>
|
||||||
|
+ <artifactId>sisu-maven-plugin</artifactId>
|
||||||
|
+ </plugin>
|
||||||
|
+ </plugins>
|
||||||
|
+ </build>
|
||||||
|
+</project>
|
||||||
|
diff --git a/test/data/install_pom/test_empty_relpath-want.xml b/test/data/install_pom/test_empty_relpath-want.xml
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..03bd1115
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/data/install_pom/test_empty_relpath-want.xml
|
||||||
|
@@ -0,0 +1,39 @@
|
||||||
|
+<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
+<project xmlns="http://maven.apache.org/POM/4.0.0">
|
||||||
|
+ <modelVersion>4.0.0</modelVersion>
|
||||||
|
+ <groupId>org.apache.maven.shared</groupId>
|
||||||
|
+ <artifactId>maven-filtering</artifactId>
|
||||||
|
+ <version>3.3.1</version>
|
||||||
|
+ <dependencies>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>javax.inject</groupId>
|
||||||
|
+ <artifactId>javax.inject</artifactId>
|
||||||
|
+ <version>1</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.slf4j</groupId>
|
||||||
|
+ <artifactId>slf4j-api</artifactId>
|
||||||
|
+ <version>1.7.36</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.sonatype.plexus</groupId>
|
||||||
|
+ <artifactId>plexus-build-api</artifactId>
|
||||||
|
+ <version>0.0.7</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.codehaus.plexus</groupId>
|
||||||
|
+ <artifactId>plexus-utils</artifactId>
|
||||||
|
+ <version>3.5.1</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>org.codehaus.plexus</groupId>
|
||||||
|
+ <artifactId>plexus-interpolation</artifactId>
|
||||||
|
+ <version>1.26</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ <dependency>
|
||||||
|
+ <groupId>commons-io</groupId>
|
||||||
|
+ <artifactId>commons-io</artifactId>
|
||||||
|
+ <version>2.11.0</version>
|
||||||
|
+ </dependency>
|
||||||
|
+ </dependencies>
|
||||||
|
+</project>
|
||||||
|
\ No newline at end of file
|
||||||
|
diff --git a/test/install_pom_test.py b/test/install_pom_test.py
|
||||||
|
index db79c001..a39f3aa4 100644
|
||||||
|
--- a/test/install_pom_test.py
|
||||||
|
+++ b/test/install_pom_test.py
|
||||||
|
@@ -103,6 +103,13 @@ class TestInstallPom(unittest.TestCase):
|
||||||
|
result)
|
||||||
|
self.assertEqual(report, '', report)
|
||||||
|
|
||||||
|
+ @install_pom('empty_relpath.pom')
|
||||||
|
+ def test_empty_relpath(self, stdout, stderr, return_value, result):
|
||||||
|
+ self.assertEqual(return_value, 0, stderr)
|
||||||
|
+ report = self.check_result(inspect.currentframe().f_code.co_name,
|
||||||
|
+ result)
|
||||||
|
+ self.assertEqual(report, '', report)
|
||||||
|
+
|
||||||
|
@install_pom(os.path.join('xmvn', 'xmvn-tools', 'xmvn-install', 'pom.xml'))
|
||||||
|
def test_parent_chain(self, stdout, stderr, return_value, result):
|
||||||
|
self.assertEqual(return_value, 0, stderr)
|
||||||
|
--
|
||||||
|
2.42.0
|
||||||
|
|
@ -1,3 +1,16 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 4 07:18:58 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Added patches:
|
||||||
|
* 0005-Interpolate-properties-also-in-the-current-artifact.patch
|
||||||
|
+ interpolate variables also in current artifactId, groupId and
|
||||||
|
version
|
||||||
|
* 0006-Test-variable-expansion-in-artifactId.patch
|
||||||
|
+ test previous changes
|
||||||
|
* 0007-Test-that-we-don-t-bomb-on-relativePath.patch
|
||||||
|
+ test gracious handling of empty <relativePath/> in parent
|
||||||
|
reference of a pom file
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Sep 13 13:52:00 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
Wed Sep 13 13:52:00 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
@ -53,6 +53,12 @@ Patch4: 0002-Do-not-bomb-on-relativePath-construct.patch
|
|||||||
Patch5: 0003-Reproducible-exclusions-order-in-maven-metadata.patch
|
Patch5: 0003-Reproducible-exclusions-order-in-maven-metadata.patch
|
||||||
#PATCH-FIX-UPSTREAM: make the aliases and dependencies lists so that the order is kept
|
#PATCH-FIX-UPSTREAM: make the aliases and dependencies lists so that the order is kept
|
||||||
Patch6: 0004-Reproducible-builds-keep-order-of-aliases-and-depend.patch
|
Patch6: 0004-Reproducible-builds-keep-order-of-aliases-and-depend.patch
|
||||||
|
#PATCH-FIX-UPSTREAM: substitute variables like _${scala.binary.version} in artifact coordinates
|
||||||
|
Patch7: 0005-Interpolate-properties-also-in-the-current-artifact.patch
|
||||||
|
#PATCH-FIX-UPSTREAM: test changes from previous patch
|
||||||
|
Patch8: 0006-Test-variable-expansion-in-artifactId.patch
|
||||||
|
#PATCH-FIX-UPSTREAM: test gracious handling of <relativePath/> construct
|
||||||
|
Patch9: 0007-Test-that-we-don-t-bomb-on-relativePath.patch
|
||||||
BuildRequires: asciidoc
|
BuildRequires: asciidoc
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: perl
|
BuildRequires: perl
|
||||||
|
Loading…
Reference in New Issue
Block a user