Skip to content

Commit 49080a7

Browse files
authored
Merge pull request #2980 from adobe/copilot/update-documentation-compatibility
docs: clarify Kotlin 2.3+/API 2.2 and Java 25/target-17 versioning per Spring Boot 4.x guidance
2 parents a179438 + bc5c644 commit 49080a7

File tree

4 files changed

+17
-7
lines changed

4 files changed

+17
-7
lines changed

.github/CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ All third-party contributions to this project must be accompanied by a signed co
1515
## Development Setup
1616

1717
**Prerequisites:**
18-
- Java 25 (compile version; targets JVM 17)
18+
- Java 25 (compile/run; JVM target 17 with Kotlin language/api 2.2, per Spring Boot 4.x guidance)
1919
- Maven 3.9+ (use the included `./mvnw` wrapper)
2020
- Docker (for Docker build and integration tests)
2121

@@ -56,7 +56,7 @@ S3Mock uses three test levels:
5656
2. **Spring Boot tests** - component-level coverage with Spring context
5757
3. **Integration tests** (`*IT.kt`) - end-to-end tests against the Docker container using real AWS SDK v2 clients, in `integration-tests/src/test/`
5858

59-
Please ensure that your code is covered by at least one of these test types.
59+
Ensure your code has coverage from at least one of these test types.
6060

6161
## Submitting Changes
6262

AGENTS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Lightweight S3 API mock server for local integration testing.
88
> no restating of rules from the root.
99
1010
## Tech Stack
11-
- **Kotlin 2.3** (target JVM 17; build/compile requires JDK 25), Spring Boot 4.0.x, Maven 3.9+
11+
- **Kotlin 2.3+** (language/API compatibility: 2.2; JVM target: 17; build toolchain: JDK 25 — per Spring Boot 4.x guidance), Spring Boot 4.0.x, Maven 3.9+
1212
- **Testing**: JUnit 5, Mockito, AssertJ, Testcontainers
1313
- **Container**: Docker/Alpine
1414

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -480,7 +480,7 @@ graph LR
480480

481481
## Build & Run
482482

483-
**Requirements**: Java 17+, Maven 3.9+, Docker (for Docker build and integration tests)
483+
**Requirements**: Java 25, Maven 3.9+, Docker (for Docker build and integration tests)
484484

485485
**Build:**
486486
```shell
@@ -503,9 +503,9 @@ make integration-tests
503503
```
504504

505505
**Technology:**
506-
- Built with Kotlin 2.3.0 and Spring Boot 4.0
507-
- Tests written in Kotlin
508-
- Target JVM: 17
506+
- S3Mock uses Kotlin 2.3+ (language/API compatibility: 2.2) and Spring Boot 4.0
507+
- Tests use Kotlin
508+
- JVM bytecode target: 17; building and running from source requires JDK 25 (per Spring Boot 4.x guidance), while the packaged artifacts run on Java 17+.
509509

510510
## Contributing
511511

docs/KOTLIN.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,16 @@
22

33
Canonical reference for Kotlin idioms, naming conventions, and code quality standards used across this project.
44

5+
## Compiler Settings
6+
7+
S3Mock uses Kotlin 2.3+ with language and API compatibility set to **2.2**, following Spring Boot 4.x guidance:
8+
9+
- **Kotlin compiler**: 2.3+
10+
- **Language/API version**: 2.2 (`-language-version 2.2`, `-api-version 2.2`)
11+
- **JVM target**: 17 (build requires JDK 25; bytecode/JVM target 17)
12+
13+
This means you can use any syntax and standard library APIs available in Kotlin 2.2. Kotlin 2.3+ compiler improvements (performance, diagnostics) apply automatically.
14+
515
## Idioms
616

717
### Null Safety

0 commit comments

Comments
 (0)