Skip to content

Commit 335c4a9

Browse files
authored
Merge pull request #46578 from gsmet/reduce-DefaultArtifactVersion-exposure
Reduce our exposure to DefaultArtifactVersion
2 parents f875e4b + d2f53ad commit 335c4a9

File tree

3 files changed

+24
-12
lines changed

3 files changed

+24
-12
lines changed

independent-projects/extension-maven-plugin/src/main/java/io/quarkus/maven/ExtensionDescriptorMojo.java

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,18 @@
88
import java.nio.file.FileSystem;
99
import java.nio.file.Files;
1010
import java.nio.file.Path;
11-
import java.util.*;
11+
import java.util.ArrayList;
12+
import java.util.Collection;
13+
import java.util.HashMap;
14+
import java.util.HashSet;
15+
import java.util.Iterator;
16+
import java.util.List;
17+
import java.util.Map;
18+
import java.util.Properties;
19+
import java.util.Set;
1220
import java.util.concurrent.atomic.AtomicReference;
1321

1422
import org.apache.maven.artifact.Artifact;
15-
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
1623
import org.apache.maven.execution.MavenSession;
1724
import org.apache.maven.model.Scm;
1825
import org.apache.maven.plugin.AbstractMojo;
@@ -550,8 +557,13 @@ private static String toVersionRange(String version) {
550557
if (version == null) {
551558
return null;
552559
}
553-
DefaultArtifactVersion dav = new DefaultArtifactVersion(version);
554-
return "[" + dav.getMajorVersion() + "." + dav.getMinorVersion() + ",)";
560+
561+
// we don't use DefaultArtifactVersion here as it doesn't support 4 dotted number parts
562+
// we might get rid of this version scheme but let's make sure we support it just in case
563+
String[] versionItems = version.split("-");
564+
versionItems = versionItems[0].split("\\.");
565+
566+
return "[" + versionItems[0] + "." + (versionItems.length > 1 ? versionItems[1] : "0") + ",)";
555567
}
556568

557569
private void ensureArtifactCoords(ObjectNode extObject) {

independent-projects/tools/devtools-common/src/main/java/io/quarkus/devtools/commands/CreateExtension.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
import javax.lang.model.SourceVersion;
4949

5050
import org.apache.commons.lang3.StringUtils;
51-
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
51+
import org.apache.maven.artifact.versioning.ComparableVersion;
5252
import org.apache.maven.model.Model;
5353

5454
import io.quarkus.devtools.codestarts.extension.QuarkusExtensionCodestartCatalog;
@@ -355,7 +355,7 @@ public CreateExtensionCommandHandler prepare() throws QuarkusCommandException {
355355
final Optional<String> quarkusVersion = data.getStringValue(QUARKUS_VERSION);
356356
// in 2.10.0.CR1 quarkus-bootstrap-maven-plugin was deprecated in favor of quarkus-extension-maven-plugin
357357
if (quarkusVersion.isPresent() &&
358-
new DefaultArtifactVersion("2.10.0.CR1").compareTo(new DefaultArtifactVersion(quarkusVersion.get())) > 0) {
358+
new ComparableVersion("2.10.0.CR1").compareTo(new ComparableVersion(quarkusVersion.get())) > 0) {
359359
// the legacy bootstrap plugin, if MAVEN_QUARKUS_EXTENSION_PLUGIN isn't set, it will default to the quarkus-extension-maven-plugin
360360
data.putIfAbsent(MAVEN_QUARKUS_EXTENSION_PLUGIN, "quarkus-bootstrap-maven-plugin");
361361
}

independent-projects/tools/devtools-common/src/main/java/io/quarkus/devtools/project/update/rewrite/QuarkusUpdatesRepository.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import java.util.stream.Collectors;
2121
import java.util.stream.Stream;
2222

23-
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
23+
import org.apache.maven.artifact.versioning.ComparableVersion;
2424
import org.eclipse.aether.artifact.Artifact;
2525

2626
import io.quarkus.bootstrap.resolver.maven.BootstrapMavenException;
@@ -173,9 +173,9 @@ public String getRewritePluginVersion() {
173173

174174
static boolean shouldApplyRecipe(String recipeFileName, String currentVersion, String targetVersion) {
175175
String recipeVersion = VERSION_EXTRACTION_PATTERN.matcher(recipeFileName).replaceFirst("");
176-
final DefaultArtifactVersion recipeAVersion = new DefaultArtifactVersion(recipeVersion);
177-
final DefaultArtifactVersion currentAVersion = new DefaultArtifactVersion(currentVersion);
178-
final DefaultArtifactVersion targetAVersion = new DefaultArtifactVersion(targetVersion);
176+
final ComparableVersion recipeAVersion = new ComparableVersion(recipeVersion);
177+
final ComparableVersion currentAVersion = new ComparableVersion(currentVersion);
178+
final ComparableVersion targetAVersion = new ComparableVersion(targetVersion);
179179
return currentAVersion.compareTo(recipeAVersion) < 0 && targetAVersion.compareTo(recipeAVersion) >= 0;
180180
}
181181

@@ -276,9 +276,9 @@ private static class RecipeVersionComparator implements Comparator<Path> {
276276

277277
@Override
278278
public int compare(Path recipePath1, Path recipePath2) {
279-
DefaultArtifactVersion recipeVersion1 = new DefaultArtifactVersion(
279+
ComparableVersion recipeVersion1 = new ComparableVersion(
280280
VERSION_EXTRACTION_PATTERN.matcher(recipePath1.getFileName().toString()).replaceFirst(""));
281-
DefaultArtifactVersion recipeVersion2 = new DefaultArtifactVersion(
281+
ComparableVersion recipeVersion2 = new ComparableVersion(
282282
VERSION_EXTRACTION_PATTERN.matcher(recipePath2.getFileName().toString()).replaceFirst(""));
283283

284284
return recipeVersion1.compareTo(recipeVersion2);

0 commit comments

Comments
 (0)