You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/08/14 12:06:10 UTC
svn commit: r1804983 - in /sling/trunk/tooling/release/launchpad-comparator:
./ src/main/java/org/apache/sling/tooling/lc/
src/main/java/org/apache/sling/tooling/lc/aether/
src/main/java/org/apache/sling/tooling/lc/jira/
Author: rombert
Date: Mon Aug 14 12:06:10 2017
New Revision: 1804983
URL: http://svn.apache.org/viewvc?rev=1804983&view=rev
Log:
LaunchpadComparer update for more recent Sling versions
- use latest provisioning model
- consider both versions as using the provisioning model
Modified:
sling/trunk/tooling/release/launchpad-comparator/pom.xml
sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/LaunchpadComparer.java
sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/Main.java
sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/ArtifactKey.java
sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/Artifacts.java
sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/jira/Issue.java
Modified: sling/trunk/tooling/release/launchpad-comparator/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/release/launchpad-comparator/pom.xml?rev=1804983&r1=1804982&r2=1804983&view=diff
==============================================================================
--- sling/trunk/tooling/release/launchpad-comparator/pom.xml (original)
+++ sling/trunk/tooling/release/launchpad-comparator/pom.xml Mon Aug 14 12:06:10 2017
@@ -89,21 +89,7 @@
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.provisioning.model</artifactId>
- <version>1.3.0</version>
- </dependency>
-
- <!-- Launchpad plugin, used to read bundle lists -->
- <dependency>
- <groupId>org.apache.sling</groupId>
- <artifactId>maven-launchpad-plugin</artifactId>
- <version>2.3.2</version>
- </dependency>
-
- <!-- Force usable version of plexus-utils, needed by launchpad plugin -->
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-utils</artifactId>
- <version>3.0.15</version>
+ <version>1.8.2</version>
</dependency>
<!-- Retrieve changelog data from SVN -->
@@ -119,6 +105,13 @@
<artifactId>gson</artifactId>
<version>2.2.4</version>
</dependency>
+
+ <!-- Testing -->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
Modified: sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/LaunchpadComparer.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/LaunchpadComparer.java?rev=1804983&r1=1804982&r2=1804983&view=diff
==============================================================================
--- sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/LaunchpadComparer.java (original)
+++ sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/LaunchpadComparer.java Mon Aug 14 12:06:10 2017
@@ -30,9 +30,6 @@ import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.StreamSupport;
-import org.apache.sling.maven.projectsupport.BundleListUtils;
-import org.apache.sling.maven.projectsupport.bundlelist.v1_0_0.Bundle;
-import org.apache.sling.maven.projectsupport.bundlelist.v1_0_0.BundleList;
import org.apache.sling.provisioning.model.Artifact;
import org.apache.sling.provisioning.model.Model;
import org.apache.sling.provisioning.model.ModelUtility;
@@ -71,23 +68,10 @@ public class LaunchpadComparer {
File toFile = aether.download(Artifacts.launchpadCoordinates(secondVersion));
// 2. parse artifact definitions
- Model model;
- try (BufferedReader reader = Files.newBufferedReader(toFile.toPath())) {
- model = ModelUtility.getEffectiveModel(ModelReader.read(reader, null));
- }
-
- Map<ArtifactKey, Artifact> to = model.getFeatures().stream()
- .flatMap( f -> f.getRunModes().stream())
- .flatMap( r -> r.getArtifactGroups().stream())
- .flatMap( g -> StreamSupport.stream(g.spliterator(), false))
- .collect(Collectors.toMap( a -> new ArtifactKey(a), Function.identity()));
+ Map<ArtifactKey, Artifact> from = readArtifactsFromModel(fromFile);
+ Map<ArtifactKey, Artifact> to = readArtifactsFromModel(toFile);
- BundleList readBundleList = BundleListUtils.readBundleList(fromFile);
- Map<ArtifactKey, Artifact> from = readBundleList.getStartLevels().stream()
- .flatMap( sl -> sl.getBundles().stream() )
- .collect(Collectors.toMap( b -> new ArtifactKey(b), LaunchpadComparer::newArtifact));
-
// 3. generate added / removed / changed
Set<Artifact> removed = Sets.difference(from.keySet(), to.keySet()).stream()
.map( k -> from.get(k))
@@ -117,10 +101,19 @@ public class LaunchpadComparer {
.forEach(LaunchpadComparer::outputFormatted);
}
-
- private static Artifact newArtifact(Bundle bundle) {
+
+ private Map<ArtifactKey, Artifact> readArtifactsFromModel(File toFile) throws IOException {
+ Model fromModel;
+ try (BufferedReader reader = Files.newBufferedReader(toFile.toPath())) {
+ fromModel = ModelUtility.getEffectiveModel(ModelReader.read(reader, null));
+ }
- return new Artifact(bundle.getGroupId(), bundle.getArtifactId(), bundle.getVersion(), bundle.getClassifier(), bundle.getType());
+ Map<ArtifactKey, Artifact> to = fromModel.getFeatures().stream()
+ .flatMap( f -> f.getRunModes().stream())
+ .flatMap( r -> r.getArtifactGroups().stream())
+ .flatMap( g -> StreamSupport.stream(g.spliterator(), false))
+ .collect(Collectors.toMap( a -> new ArtifactKey(a), Function.identity()));
+ return to;
}
private static void outputFormatted(Artifact a) {
Modified: sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/Main.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/Main.java?rev=1804983&r1=1804982&r2=1804983&view=diff
==============================================================================
--- sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/Main.java (original)
+++ sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/Main.java Mon Aug 14 12:06:10 2017
@@ -20,17 +20,13 @@ public class Main {
public static void main(String[] args) throws Exception {
- // 0. read CLI arguments
- String firstVersion = "7";
- String secondVersion = "8";
+ String firstVersion = "8";
+ String secondVersion = "9";
if ( args.length == 2) {
firstVersion = args[0];
secondVersion = args[1];
}
- LaunchpadComparer comparer = new LaunchpadComparer(firstVersion, secondVersion);
- comparer.run();
-
-
+ new LaunchpadComparer(firstVersion, secondVersion).run();
}
}
Modified: sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/ArtifactKey.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/ArtifactKey.java?rev=1804983&r1=1804982&r2=1804983&view=diff
==============================================================================
--- sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/ArtifactKey.java (original)
+++ sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/ArtifactKey.java Mon Aug 14 12:06:10 2017
@@ -18,7 +18,6 @@ package org.apache.sling.tooling.lc.aeth
import java.util.Objects;
-import org.apache.sling.maven.projectsupport.bundlelist.v1_0_0.Bundle;
import org.apache.sling.provisioning.model.Artifact;
public class ArtifactKey implements Comparable<ArtifactKey> {
@@ -28,11 +27,6 @@ public class ArtifactKey implements Comp
private String classifier;
private String type;
- public ArtifactKey(Bundle bundle) {
-
- this(bundle.getGroupId(), bundle.getArtifactId(), bundle.getClassifier(), bundle.getType());
- }
-
public ArtifactKey(Artifact artifact) {
this(artifact.getGroupId(), artifact.getArtifactId(), artifact.getClassifier(), artifact.getType());
Modified: sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/Artifacts.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/Artifacts.java?rev=1804983&r1=1804982&r2=1804983&view=diff
==============================================================================
--- sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/Artifacts.java (original)
+++ sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/aether/Artifacts.java Mon Aug 14 12:06:10 2017
@@ -33,7 +33,6 @@ public class Artifacts {
int versionNumber = Integer.parseInt(versionMatcher.group(1));
-
// versions 6 and 7 used an XML bundle list
if ( versionNumber < 8 ) {
return "org.apache.sling:org.apache.sling.launchpad:xml:bundlelist:" + version;
Modified: sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/jira/Issue.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/jira/Issue.java?rev=1804983&r1=1804982&r2=1804983&view=diff
==============================================================================
--- sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/jira/Issue.java (original)
+++ sling/trunk/tooling/release/launchpad-comparator/src/main/java/org/apache/sling/tooling/lc/jira/Issue.java Mon Aug 14 12:06:10 2017
@@ -16,10 +16,10 @@
*/
package org.apache.sling.tooling.lc.jira;
+import java.util.Objects;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import com.google.inject.internal.util.Objects;
public class Issue implements Comparable<Issue> {
@@ -67,7 +67,8 @@ public class Issue implements Comparable
String ourProject = ourMatcher.group(1);
String theirProject = theirMatcher.group(1);
- if ( !Objects.equal(ourProject, theirProject)) {
+
+ if ( !Objects.equals(ourProject, theirProject)) {
return ourProject.compareTo(theirProject);
}