280db663c7
Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2.0 KiB
2.0 KiB
type, status, owner, last_update
| type | status | owner | last_update |
|---|---|---|---|
| ADR | ACTIVE | Lead Architect | 2026-01-20 |
ADR-0013: Stabilisierung des Tech-Stacks (Januar 2026)
Status
Angenommen
Kontext
Das Projekt "Meldestelle" setzt auf einen sehr modernen Technologie-Stack (Java 25, Kotlin 2.3.21, Spring Boot 3.5.9). Eine Analyse im Januar 2026 hat jedoch kritische Versionskonflikte aufgedeckt, die die Stabilität des Builds und der Laufzeitumgebung gefährden.
- Spring Cloud Konflikt: Der Release Train
2025.1.0(Oakwood) ist für Spring Boot 4.0 konzipiert und inkompatibel mit Spring Boot 3.5.9 (führt zuNoSuchMethodError). - Compose Multiplatform: Version
1.9.3führt zu Compiler-Crashes in Verbindung mit Kotlin 2.3.21. - Exposed: Version
0.61.0ist veraltet und inkompatibel mit Kotlin 2.3.21.
Entscheidung
Wir führen folgende Korrekturen am Tech-Stack durch, um eine stabile "Best Compatibility List" zu etablieren:
- Spring Cloud Downgrade: Wechsel auf Release Train
2025.0.1(Northfields), der offiziell für Spring Boot 3.5.x freigegeben ist. - Compose Multiplatform Upgrade: Wechsel auf
1.10.0-rc02(oder stable), um volle Kotlin 2.3.21 Kompatibilität zu gewährleisten. - Exposed Upgrade: Wechsel auf
1.0.0-rc-4(oder neuer), um Bytecode-Inkompatibilitäten zu beheben. - Micrometer Upgrade: Explizites Setzen von Version
1.16.1für verbesserten Java 25 (Virtual Threads) Support.
Konsequenzen
Positiv
- Stabilität: Der Build und die Application Context Initialisierung sind wieder stabil.
- Zukunftssicherheit: Wir nutzen weiterhin die neuesten Features von Java 25 und Kotlin 2.3.21, aber in einer validierten Kombination.
- Wartbarkeit: Die
libs.versions.tomlspiegelt nun eine getestete Konfiguration wider.
Negativ
- Migrationsaufwand: Einmaliger Aufwand zur Anpassung der
libs.versions.tomlund ggf. kleinerer API-Änderungen in Exposed/Compose.
Compliance
Diese Entscheidung ist bindend für alle Module. Abweichungen müssen durch ein neues ADR genehmigt werden.