From 2b3c3dc2969582eab50d0335822aa88b430b3e28 Mon Sep 17 00:00:00 2001 From: Tamas Cservenak Date: Mon, 17 Nov 2025 16:35:06 +0100 Subject: [PATCH 1/3] Cleanup prefix and others --- .../PrefixesRemoteRepositoryFilterSource.java | 4 ++-- .../impl/synccontext/named/GAVNameMapper.java | 16 ++++++---------- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/filter/PrefixesRemoteRepositoryFilterSource.java b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/filter/PrefixesRemoteRepositoryFilterSource.java index 34698d310..bd7786acf 100644 --- a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/filter/PrefixesRemoteRepositoryFilterSource.java +++ b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/filter/PrefixesRemoteRepositoryFilterSource.java @@ -83,7 +83,7 @@ public final class PrefixesRemoteRepositoryFilterSource extends RemoteRepository private static final String CONFIG_PROPS_PREFIX = RemoteRepositoryFilterSourceSupport.CONFIG_PROPS_PREFIX + NAME + "."; - private static final String PREFIX_FILE_PATH = ".meta/prefixes.txt"; + private static final String PREFIX_FILE_TYPE = ".meta/prefixes.txt"; /** * Configuration to enable the Prefixes filter (enabled by default). Can be fine-tuned per repository using @@ -289,7 +289,7 @@ private Path resolvePrefixesFromRemoteRepository( // supplier for path Supplier supplier = () -> { MetadataRequest request = - new MetadataRequest(new DefaultMetadata(PREFIX_FILE_PATH, Metadata.Nature.RELEASE_OR_SNAPSHOT)); + new MetadataRequest(new DefaultMetadata(PREFIX_FILE_TYPE, Metadata.Nature.RELEASE_OR_SNAPSHOT)); // use unique repository; this will result in prefix (repository metadata) cached under unique id request.setRepository(unique); request.setDeleteLocalCopyIfMissing(true); diff --git a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java index dc21b4438..f9edf57b7 100644 --- a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java +++ b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java @@ -87,8 +87,8 @@ public Collection nameLocks( if (metadatas != null) { for (Metadata metadata : metadatas) { keys.add(NamedLockKey.of( - getMetadataName(metadata, metadataPrefix, fieldSeparator, metadataSuffix), - getMetadataName(metadata, "", ":", ""))); + getMetadataName(metadata, fileSystemFriendly, metadataPrefix, fieldSeparator, metadataSuffix), + getMetadataName(metadata, false,"", ":", ""))); } } return keys; @@ -106,7 +106,7 @@ private static String getArtifactName(Artifact artifact, String prefix, String s private static final String MAVEN_METADATA = "maven-metadata.xml"; - private static String getMetadataName(Metadata metadata, String prefix, String separator, String suffix) { + private static String getMetadataName(Metadata metadata, boolean fileSystemFriendly, String prefix, String separator, String suffix) { String name = prefix; if (!metadata.getGroupId().isEmpty()) { name += metadata.getGroupId(); @@ -116,13 +116,9 @@ private static String getMetadataName(Metadata metadata, String prefix, String s name += separator + metadata.getVersion(); } } - if (!MAVEN_METADATA.equals(metadata.getType())) { - name += separator + PathUtils.stringToPathSegment(metadata.getType()); - } - } else { - if (!MAVEN_METADATA.equals(metadata.getType())) { - name += PathUtils.stringToPathSegment(metadata.getType()); - } + } + if (!MAVEN_METADATA.equals(metadata.getType())) { + name += separator + (fileSystemFriendly ? PathUtils.stringToPathSegment(metadata.getType()) : metadata.getType()); } return name + suffix; } From 627c940788e57cd0bdad770516eeeb011e1aaca1 Mon Sep 17 00:00:00 2001 From: Tamas Cservenak Date: Mon, 17 Nov 2025 16:56:08 +0100 Subject: [PATCH 2/3] Reformat --- .../internal/impl/synccontext/named/GAVNameMapper.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java index f9edf57b7..536049b57 100644 --- a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java +++ b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java @@ -88,7 +88,7 @@ public Collection nameLocks( for (Metadata metadata : metadatas) { keys.add(NamedLockKey.of( getMetadataName(metadata, fileSystemFriendly, metadataPrefix, fieldSeparator, metadataSuffix), - getMetadataName(metadata, false,"", ":", ""))); + getMetadataName(metadata, false, "", ":", ""))); } } return keys; @@ -106,7 +106,8 @@ private static String getArtifactName(Artifact artifact, String prefix, String s private static final String MAVEN_METADATA = "maven-metadata.xml"; - private static String getMetadataName(Metadata metadata, boolean fileSystemFriendly, String prefix, String separator, String suffix) { + private static String getMetadataName( + Metadata metadata, boolean fileSystemFriendly, String prefix, String separator, String suffix) { String name = prefix; if (!metadata.getGroupId().isEmpty()) { name += metadata.getGroupId(); @@ -118,7 +119,8 @@ private static String getMetadataName(Metadata metadata, boolean fileSystemFrien } } if (!MAVEN_METADATA.equals(metadata.getType())) { - name += separator + (fileSystemFriendly ? PathUtils.stringToPathSegment(metadata.getType()) : metadata.getType()); + name += separator + + (fileSystemFriendly ? PathUtils.stringToPathSegment(metadata.getType()) : metadata.getType()); } return name + suffix; } From b19ad9c0b60cf716f9c0d6294817faa117aac063 Mon Sep 17 00:00:00 2001 From: Tamas Cservenak Date: Mon, 17 Nov 2025 17:13:00 +0100 Subject: [PATCH 3/3] Fixes Now the UT changed, as mapper was always emit "fs friendly" type, which is in fact unneeded if not asked for. --- .../impl/synccontext/named/GAVNameMapper.java | 12 ++++++++---- .../named/BasedirHashingNameMapperTest.java | 2 +- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java index 536049b57..4f26137e4 100644 --- a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java +++ b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/synccontext/named/GAVNameMapper.java @@ -117,10 +117,14 @@ private static String getMetadataName( name += separator + metadata.getVersion(); } } - } - if (!MAVEN_METADATA.equals(metadata.getType())) { - name += separator - + (fileSystemFriendly ? PathUtils.stringToPathSegment(metadata.getType()) : metadata.getType()); + if (!MAVEN_METADATA.equals(metadata.getType())) { + name += separator + + (fileSystemFriendly ? PathUtils.stringToPathSegment(metadata.getType()) : metadata.getType()); + } + } else { + if (!MAVEN_METADATA.equals(metadata.getType())) { + name += (fileSystemFriendly ? PathUtils.stringToPathSegment(metadata.getType()) : metadata.getType()); + } } return name + suffix; } diff --git a/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/synccontext/named/BasedirHashingNameMapperTest.java b/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/synccontext/named/BasedirHashingNameMapperTest.java index feea3b1ea..226cc0f36 100644 --- a/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/synccontext/named/BasedirHashingNameMapperTest.java +++ b/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/synccontext/named/BasedirHashingNameMapperTest.java @@ -129,7 +129,7 @@ void prefixMetadata() { assertEquals(1, names.size()); assertEquals( names.iterator().next().name(), - basedir.toUri() + PS + ".locks" + PS + "520e2ba3a365db8cd804bcc40df38e1a52987e0f"); + basedir.toUri() + PS + ".locks" + PS + "d7e4ca43a23278042698fe526287af16b18f8791"); } @Test