From b65e54f2dd9cd4e385a452e66c3d80c15e0df743 Mon Sep 17 00:00:00 2001 From: Matthias Andreas Benkard Date: Tue, 1 Sep 2026 06:43:52 +0200 Subject: Der Bausatz setzt fortan die Sprachfassung 25 voraus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Die selbsttätige Prüfung baut seit ihrer Einführung auf einem JDK 25, der Quellstand blieb mit „release 21“ jedoch hinter dieser Grundlage zurück. Beides fällt nunmehr zusammen: Die Eigenschaft „maven.compiler.release“ lautet „25“, und im Profil „wasm“ folgen ihr „source“ und „target“ samt dem erläuternden Vermerk. Die dortige Abkehr von „release“ bleibt bestehen, denn die Web-Image-API des GraalVM liegt außerhalb der dokumentierten JDK-API. Damit ein zu alter Bausatz nicht erst den Übersetzer zu einer schwer deutbaren Meldung nötigt, tritt der Regel „requireMavenVersion“ die Regel „requireJavaVersion“ zur Seite, gespeist aus der neuen Eigenschaft „enforced.java-version“. Das Handbuch setzt in § 5 Absatz 3 fortan die Fassung 25 voraus; § 14 Absatz 3 bleibt unberührt, denn der Wasm-Bau verlangt weiterhin Oracle GraalVM 25.1 oder neuer. Geprüft auf einem Oracle GraalVM 25.0.4: „./mvnw verify“ meldet BUILD SUCCESS mit 456 von 456 Tests, Spotless beanstandet nichts, der Enforcer lässt die neue Regel durchgehen, und auch das Profil „wasm“ übersetzt („target 25“). Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01GuVaax1nzPPH9Xk73JugUw Change-Id: Ib4b4015e3b4d6660f41231bd965c617078de8838 --- FASSUNGEN.txt | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 2 +- pom.xml | 12 ++++++++---- 3 files changed, 63 insertions(+), 5 deletions(-) diff --git a/FASSUNGEN.txt b/FASSUNGEN.txt index 9f17e99..5e8327c 100644 --- a/FASSUNGEN.txt +++ b/FASSUNGEN.txt @@ -20,6 +20,60 @@ Vorbemerkung zur Führung dieses Verzeichnisses gelegte Ausdrucksweise entsprechend. +════════════════════════════════════════════════════════════════════════════════ + Fassung vom 1. September 2026, + zuletzt geändert durch die am 1. September 2026 vorgenommenen Änderungen +════════════════════════════════════════════════════════════════════════════════ + +Die Sprachfassung des Bausatzes wird von 21 auf 25 angehoben (Artikel 1); der +Wasm-Zweig folgt (Artikel 2). Der Enforcer wacht fortan über die vorausgesetzte +Fassung (Artikel 3). Das Handbuch weist dies aus (Artikel 4). + + +Artikel 1 +Anhebung der Sprachfassung + +In „pom.xml“ wird die Eigenschaft „maven.compiler.release“ von „21“ auf „25“ +geändert. Die selbsttätige Prüfung baute schon bisher auf einem JDK 25; der +Quellstand blieb hinter dieser Grundlage zurück. Fortan stehen die Sprachmittel +der Fassungen 22 bis 25 zur Verfügung. + + +Artikel 2 +Wasm-Zweig + +Im Profil „wasm“ werden „maven.compiler.source“ und „maven.compiler.target“ +gleichfalls auf „25“ gesetzt; der erläuternde Vermerk spricht entsprechend von +der Option „release 25“. An der dortigen Abkehr von „release“ zugunsten von +„source“/„target“ ändert sich nichts: Sie beruht darauf, dass die Web-Image-API +des GraalVM außerhalb der dokumentierten JDK-API liegt. + + +Artikel 3 +Überwachung der vorausgesetzten Fassung + +Der Regel „requireMavenVersion“ wird „requireJavaVersion“ zur Seite gestellt, +gespeist aus der neuen Eigenschaft „enforced.java-version“ (Wert „25“). Ein zu +alter Bausatz wird damit beim Enforcer benannt und nicht erst durch eine +schwerer deutbare Meldung des Übersetzers. + + +Artikel 4 +Handbuch + +§ 5 Absatz 3 des Handbuchs (README.md) setzt fortan einen Java-Entwicklungs- +bausatz der Fassung 25 oder neuer voraus. § 14 Absatz 3 bleibt unberührt: Für +den Wasm-Bau ist weiterhin Oracle GraalVM 25.1 oder neuer erforderlich. + + +Artikel 5 +Prüfung + +Der Bau geht auf einem Oracle GraalVM 25.0.4 auf: „./mvnw verify“ meldet BUILD +SUCCESS mit 456 von 456 Tests, Spotless beanstandet nichts, und der Enforcer +lässt die neue Regel durchgehen. Auch das Profil „wasm“ übersetzt („target 25“). + + ════════════════════════════════════════════════════════════════════════════════ Fassung vom 31. August 2026, zuletzt geändert durch die am 31. August 2026 vorgenommenen Änderungen diff --git a/README.md b/README.md index 6248c61..0a1fbea 100644 --- a/README.md +++ b/README.md @@ -173,7 +173,7 @@ Fassungen (`FASSUNGEN.txt`) geführt. `0.1.0-SNAPSHOT`, soweit sie nicht durch Übergabe des Schalters `-Drevision` an `mvnw` abweichend bestimmt wird. -(3) Vorausgesetzt wird ein Java-Entwicklungsbausatz der Fassung 21 oder neuer. +(3) Vorausgesetzt wird ein Java-Entwicklungsbausatz der Fassung 25 oder neuer. Für die Herstellung der Browserfassung gilt abweichend § 14 Absatz 5. ## § 5 Zulässige Eingaben diff --git a/pom.xml b/pom.xml index 5511f72..53f5e9c 100644 --- a/pom.xml +++ b/pom.xml @@ -23,12 +23,13 @@ true - 21 + 25 UTF-8 UTF-8 3.9.0 + 25 3.6.0 3.3.2 @@ -254,6 +255,9 @@ ${enforced.maven-version} + + ${enforced.java-version} + @@ -347,13 +351,13 @@ ${java.home}/bin/native-image ${project.build.directory}/web - 21 - 21 + 25 + 25 -- cgit v1.2.1