diff --git a/src/main/java/org/perlonjava/core/Configuration.java b/src/main/java/org/perlonjava/core/Configuration.java index 260a4dcf0..f3ec8ca8a 100644 --- a/src/main/java/org/perlonjava/core/Configuration.java +++ b/src/main/java/org/perlonjava/core/Configuration.java @@ -33,7 +33,7 @@ public final class Configuration { * Automatically populated by Gradle/Maven during build. * DO NOT EDIT MANUALLY - this value is replaced at build time. */ - public static final String gitCommitId = "435af2ae7"; + public static final String gitCommitId = "f7bbbc40b"; /** * Git commit date of the build (ISO format: YYYY-MM-DD). @@ -48,7 +48,7 @@ public final class Configuration { * Parsed by App::perlbrew and other tools via: perl -V | grep "Compiled at" * DO NOT EDIT MANUALLY - this value is replaced at build time. */ - public static final String buildTimestamp = "Apr 28 2026 14:34:02"; + public static final String buildTimestamp = "Apr 28 2026 14:48:58"; // Prevent instantiation private Configuration() { diff --git a/src/main/java/org/perlonjava/runtime/perlmodule/FileSpec.java b/src/main/java/org/perlonjava/runtime/perlmodule/FileSpec.java index 82863be92..58e380112 100644 --- a/src/main/java/org/perlonjava/runtime/perlmodule/FileSpec.java +++ b/src/main/java/org/perlonjava/runtime/perlmodule/FileSpec.java @@ -528,6 +528,11 @@ public static RuntimeList abs2rel(RuntimeArray args, int ctx) { } String relPath = baseObj.relativize(pathObj).toString(); + // Perl's File::Spec->abs2rel returns "." (curdir) when path equals base, + // but Java's Path.relativize returns an empty string in that case. + if (relPath.isEmpty()) { + relPath = "."; + } return new RuntimeScalar(relPath).getList(); }