From cddbe3b639c1851bb5e1baefa6f76a664a234d6c Mon Sep 17 00:00:00 2001 From: Joseph Petersen Date: Tue, 19 Jul 2022 23:06:38 +0200 Subject: [PATCH 1/2] avoid trailing underscore as it is not considered a canonical release --- .../git_changelist_maven_extension/Main.java | 3 ++- .../git_changelist_maven_extension/MainTest.java | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java b/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java index e01b2de..8f1097a 100644 --- a/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java +++ b/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java @@ -36,6 +36,7 @@ import java.util.Properties; import java.util.Set; import java.util.TreeSet; +import org.apache.commons.lang3.StringUtils; import org.apache.maven.AbstractMavenLifecycleParticipant; import org.apache.maven.MavenExecutionException; import org.apache.maven.execution.MavenSession; @@ -173,7 +174,7 @@ public void afterSessionStart(MavenSession session) throws MavenExecutionExcepti } static String sanitize(String hash) { - return hash.replaceAll("[ab]", "$0_"); + return hash.replaceAll("[ab]", "$0_").replaceAll("_$", ""); } private static String summarize(RevCommit c) { diff --git a/git-changelist-maven-extension/src/test/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/MainTest.java b/git-changelist-maven-extension/src/test/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/MainTest.java index c3646f7..1b97642 100644 --- a/git-changelist-maven-extension/src/test/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/MainTest.java +++ b/git-changelist-maven-extension/src/test/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/MainTest.java @@ -42,6 +42,7 @@ public class MainTest { // Nonstandard ones in Dependabot? https://github.com/dependabot/dependabot-core/blob/f146743aa400c7913b5e953e1b93c8b40345aaf4/maven/lib/dependabot/maven/version.rb#L24-L25 "pr", "dev", }; + @Test public void alphaBeta() { String hash = "852b473a2b8c"; String sanitized = Main.sanitize(hash); @@ -52,4 +53,13 @@ public class MainTest { } } + @Test public void alphaBetaTrailing() { + String hash = "852b473a2bcb"; + String sanitized = Main.sanitize(hash); + assertThat(hash + " has been sanitized to the expected format", sanitized, is("852b_473a_2b_cb")); + String canonical = new ComparableVersion(sanitized).getCanonical(); + for (String prerelease : PRERELEASE) { + assertThat(sanitized + " treated as a prerelease", canonical, not(containsString(prerelease))); + } + } } From d98aac75108a42e3469365396c5e738d6eacb9f7 Mon Sep 17 00:00:00 2001 From: Joseph Petersen Date: Tue, 19 Jul 2022 23:08:56 +0200 Subject: [PATCH 2/2] snip --- .../tools/incrementals/git_changelist_maven_extension/Main.java | 1 - 1 file changed, 1 deletion(-) diff --git a/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java b/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java index 8f1097a..ed59155 100644 --- a/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java +++ b/git-changelist-maven-extension/src/main/java/io/jenkins/tools/incrementals/git_changelist_maven_extension/Main.java @@ -36,7 +36,6 @@ import java.util.Properties; import java.util.Set; import java.util.TreeSet; -import org.apache.commons.lang3.StringUtils; import org.apache.maven.AbstractMavenLifecycleParticipant; import org.apache.maven.MavenExecutionException; import org.apache.maven.execution.MavenSession;