From c67fdb94f2818b494b1624bc9596d420fe7b336e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20Kr=C3=BChlmann?= Date: Tue, 6 Jan 2026 03:40:05 +0100 Subject: [PATCH] Fail fast and include pakcage.json --- pom.xml | 11 ++++++++ .../imgfloat/service/VersionService.java | 27 ++++++++----------- 2 files changed, 22 insertions(+), 16 deletions(-) diff --git a/pom.xml b/pom.xml index 4a3f8ad..5b073f8 100644 --- a/pom.xml +++ b/pom.xml @@ -128,6 +128,17 @@ + + + src/main/resources + + + ${project.basedir} + + package.json + + + org.springframework.boot diff --git a/src/main/java/dev/kruhlmann/imgfloat/service/VersionService.java b/src/main/java/dev/kruhlmann/imgfloat/service/VersionService.java index 9880306..d9c5c7e 100644 --- a/src/main/java/dev/kruhlmann/imgfloat/service/VersionService.java +++ b/src/main/java/dev/kruhlmann/imgfloat/service/VersionService.java @@ -62,12 +62,11 @@ public class VersionService { } private String resolveClientVersion() { - String packageJsonVersion = getPackageJsonVersion(); - if (packageJsonVersion != null && !packageJsonVersion.isBlank()) { - return packageJsonVersion; + try { + return getPackageJsonVersion(); + } catch (IOException e) { + throw new IllegalStateException("Client manifest is missing", e); } - - return serverVersion; } private String normalizeReleaseVersion(String baseVersion) { @@ -159,23 +158,19 @@ public class VersionService { return null; } - private String getPackageJsonVersion() { + private String getPackageJsonVersion() throws IOException { Path packageJsonPath = Paths.get("package.json"); if (!Files.exists(packageJsonPath) || !Files.isRegularFile(packageJsonPath)) { return null; } - try { - String packageJson = Files.readString(packageJsonPath, StandardCharsets.UTF_8); - Matcher matcher = PACKAGE_VERSION_PATTERN.matcher(packageJson); - if (matcher.find()) { - String version = matcher.group(1); - if (version != null && !version.isBlank()) { - return version.trim(); - } + String packageJson = Files.readString(packageJsonPath, StandardCharsets.UTF_8); + Matcher matcher = PACKAGE_VERSION_PATTERN.matcher(packageJson); + if (matcher.find()) { + String version = matcher.group(1); + if (version != null && !version.isBlank()) { + return version.trim(); } - } catch (IOException e) { - LOG.warn("Unable to read version from package.json", e); } return null;