You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by cs...@apache.org on 2022/04/22 09:16:46 UTC
[maven-indexer] branch MINDEXER-144-ioobex-metadata created (now f683f2a)
This is an automated email from the ASF dual-hosted git repository.
cstamas pushed a change to branch MINDEXER-144-ioobex-metadata
in repository https://gitbox.apache.org/repos/asf/maven-indexer.git
at f683f2a [MINDEXER-144] IOOBEx on GAV local metadata
This branch includes the following new commits:
new f683f2a [MINDEXER-144] IOOBEx on GAV local metadata
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
[maven-indexer] 01/01: [MINDEXER-144] IOOBEx on GAV local metadata
Posted by cs...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
cstamas pushed a commit to branch MINDEXER-144-ioobex-metadata
in repository https://gitbox.apache.org/repos/asf/maven-indexer.git
commit f683f2aec7fc33b277f1cde88cc80bfe48a18398
Author: Tamas Cservenak <ta...@cservenak.net>
AuthorDate: Fri Apr 22 11:15:27 2022 +0200
[MINDEXER-144] IOOBEx on GAV local metadata
Scanner throws IOOBEx when scanning local repository
due GAV level locally installed metadata. Filter it
out better (m2gav calculator and context producer).
Added UT that initially reproduced the issue, and now
passes OK.
---
.../maven/index/DefaultArtifactContextProducer.java | 1 +
.../apache/maven/index/artifact/M2GavCalculator.java | 3 ++-
.../maven/index/artifact/M2GavCalculatorTest.java | 20 ++++++++++++++++++++
3 files changed, 23 insertions(+), 1 deletion(-)
diff --git a/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java b/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java
index 88e6fa7..f7b8c3d 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultArtifactContextProducer.java
@@ -144,6 +144,7 @@ public class DefaultArtifactContextProducer
String filename = file.getName();
return !filename.equals( "maven-metadata.xml" )
+ && !( filename.startsWith( "maven-metadata-" ) && filename.endsWith( ".xml" ) )
// || filename.endsWith( "-javadoc.jar" )
// || filename.endsWith( "-javadocs.jar" )
// || filename.endsWith( "-sources.jar" )
diff --git a/indexer-core/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java b/indexer-core/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java
index e432749..72b1da0 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/artifact/M2GavCalculator.java
@@ -91,7 +91,8 @@ public class M2GavCalculator
s = s.substring( 0, s.length() - 4 );
}
- if ( s.endsWith( "maven-metadata.xml" ) )
+ if ( s.endsWith( "maven-metadata.xml" )
+ || ( fileName.startsWith( "maven-metadata-" ) && fileName.contains( ".xml" ) ) )
{
return null;
}
diff --git a/indexer-core/src/test/java/org/apache/maven/index/artifact/M2GavCalculatorTest.java b/indexer-core/src/test/java/org/apache/maven/index/artifact/M2GavCalculatorTest.java
index 7fbda14..a5f6201 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/artifact/M2GavCalculatorTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/artifact/M2GavCalculatorTest.java
@@ -565,6 +565,26 @@ public class M2GavCalculatorTest
path = gavCalculator.gavToPath( gav );
assertEquals( "/foo/artifact/SNAPSHOT/artifact-20080623.175436-1.jar", path );
+
+ gav = gavCalculator.pathToGav( "/dev/mbien/hintmod/1.0-SNAPSHOT/hintmod-1.0-SNAPSHOT.pom" );
+ assertEquals( "dev.mbien", gav.getGroupId() );
+ assertEquals( "hintmod", gav.getArtifactId() );
+ assertEquals( "1.0-SNAPSHOT", gav.getVersion() );
+ assertEquals( "1.0-SNAPSHOT", gav.getBaseVersion() );
+ assertEquals( null, gav.getClassifier() );
+ assertEquals( "pom", gav.getExtension() );
+ assertEquals( "hintmod-1.0-SNAPSHOT.pom", gav.getName() );
+ assertEquals( true, gav.isSnapshot() );
+ assertEquals( false, gav.isHash() );
+ assertEquals( null, gav.getHashType() );
+
+ path = gavCalculator.gavToPath( gav );
+ assertEquals( "/dev/mbien/hintmod/1.0-SNAPSHOT/hintmod-1.0-SNAPSHOT.pom", path );
+
+ gav = gavCalculator.pathToGav( "/dev/mbien/hintmod/1.0-SNAPSHOT/maven-metadata-local.xml" ); // causes MINDEXER-144
+ assertNull( gav );
+ gav = gavCalculator.pathToGav( "/dev/mbien/hintmod/maven-metadata-local.xml" );
+ assertNull( gav );
}
public void testNegGav()