Archived several outdated reports (`Ping-Service_Impl_01-2026.md`, `Frontend_Integration_Status.md`, etc.) and added archival notes and references to updated documents. Introduced a centralized reference structure for tech stack documentation, consolidating files under `01_Architecture/Reference/Tech_Stack`. Added new resources (`Gradle_Kotlin_DSL_Primer`, `Kotlin_2-3-0_ReleaseNotes`) for improved project organization and clarity.
3.7 KiB
| type | status | owner | tags | |||
|---|---|---|---|---|---|---|
| Reference | ACTIVE | Lead Architect |
|
What's new in Kotlin 2.3.0
Quelle: Original Kotlin Documentation Datum des Dokuments: 16. Dezember 2025 Kontext: Dieses Dokument dient als Referenz für die im Projekt verwendete Kotlin-Version.
The Kotlin 2.3.0 release is out! Here are the main highlights:
- Language: More stable and default features, unused return value checker, explicit backing fields, and changes to context-sensitive resolution.
- Kotlin/JVM: Support for Java 25.
- Kotlin/Native: Improved interop through Swift export, faster build time for release tasks, C and Objective-C library import in Beta.
- Kotlin/Wasm: Fully qualified names and new exception handling proposal enabled by default, as well as new compact storage for Latin-1 characters.
- Kotlin/JS: New experimental suspend function export,
LongArrayrepresentation, unified companion object access, and more. - Gradle: Compatibility with Gradle 9.0 and a new API for registering generated sources.
- Compose compiler: Stack traces for minified Android applications.
- Standard library: Stable time tracking functionality and improved UUID generation and parsing.
Language
Kotlin 2.3.0 focuses on feature stabilization, introduces a new mechanism for detecting unused return values, and improves context-sensitive resolution.
Stable features
The following features have now graduated to Stable:
- Support for nested type aliases
- Data-flow-based exhaustiveness checks for
whenexpressions
Features enabled by default
- Support for
returnstatements in expression bodies with explicit return types is now enabled by default.
Experimental: Unused return value checker
Kotlin 2.3.0 introduces the unused return value checker to help prevent ignored results.
Experimental: Explicit backing fields
A new syntax for explicitly declaring the underlying field that holds a property's value, simplifying the common backing properties pattern.
Kotlin/JVM: Support for Java 25
Starting with Kotlin 2.3.0, the compiler can generate classes containing Java 25 bytecode.
Kotlin/Native
- Improved Swift Export: Direct mapping for native enum classes and variadic function parameters.
- C and Objective-C Library Import is in Beta: Better diagnostics for binary compatibility issues.
- Faster Build Time: Up to 40% faster release builds, especially for iOS targets.
Kotlin/Wasm
- Fully Qualified Names Enabled by Default:
KClass.qualifiedNameis now available at runtime without extra configuration. - Compact Storage for Latin-1 Characters: Reduces metadata and binary size.
- New Exception Handling for
wasmWasi: Enabled by default for better compatibility with modern WebAssembly runtimes.
Kotlin/JS
- Experimental Suspend Function Export: Export suspend functions directly to JavaScript using
@JsExport. BigInt64ArrayforLongArray: Simplifies interop with JavaScript APIs that use typed arrays.- Unified Companion Object Access: Consistent access to companion objects in interfaces across all JS module systems.
Gradle
- Fully compatible with Gradle 7.6.3 through 9.0.0.
- New experimental API for registering generated sources.
Standard library
- Stable Time Tracking:
kotlin.time.Clockandkotlin.time.Instantare now stable. - Improved UUID Generation: New functions like
Uuid.parseOrNull(),Uuid.generateV4(), andUuid.generateV7().
Compose compiler
- Stack Traces for Minified Android Apps: The compiler now outputs ProGuard mappings for Compose stack traces when applications are minified by R8.