Skip to content

Conversation

@bedrin
Copy link

@bedrin bedrin commented Oct 31, 2025

This PR adds compatibility with Spring Framework 7 to enable early adoption

  • Use only Spring Framework APIs available both in 6.x and 7.x branches
  • Add constructors without logic to *Api classes in models modules to simplify extensibility; effective final fields are marked as final
  • Kotlin 2.x support; use kotlin compiler version 2.2.21
  • Update MCP SDK to 0.15.0
  • Update MCP Annotations to 0.6.0

NOTE: this PR doesn't add support of Spring Boot 4 - it requires a separate and much bigger change and will be carried over in separate PR. This PR doesn't break existing Spring Boot 3.5 / Spring Framework 6 compatibility and can be merged into Spring AI 1.1.x release

- Use only Spring Framework APIs available both in 6.x and 7.x branches
- Add constructors without logic to ``*Api` classes in `models` modules to simplify extensibility; effective final fields are marked as final
- Kotlin 2.x support; use kotlin compiler version 2.2.21
- Update MCP SDK to 0.15.0
- Update MCP Annotations to 0.6.0

Signed-off-by: Dmitry Bedrin <[email protected]>
bedrin added a commit to OncoSteps/spring-ai that referenced this pull request Oct 31, 2025
- Updated Spring Boot dependency to 4.0.0.RC1
- Spring Framework 7 API compatibility (see below)
- Migration to Spring Boot 4.x as per https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-4.0-Migration-Guide :
  * Adopt new modular design of starters
  * Use new Jackson 3.x API
  * Support Property Mapper API changes around null handling
- Updated Swagger codegen templates used by huggingface model to align with latest Spring Framework APIs
- Update elasticsearch test container to 9.2.0
- Added `FailureDetectingExternalResource` from old versions of `testcontainers` library to support `gemfire-testcontainers`
- Other related dependencies updates:
  * Spring Retry to 2.0.12
  * TestContainers to 2.0.1
  * GemFire testcontainers to 2.3.3
  * opensearch-testcontainers to 4.0.0
  * Rest Assured to 5.5.6
  * swagger-codegen-maven-plugin to 3.0.75

Fixes spring-projectsGH-3379 (spring-projects#3379)

Built on-top of spring-projects#4771
- Use only Spring Framework APIs available both in 6.x and 7.x branches
- Add constructors without logic to `*Api` classes in `models` modules to simplify extensibility; effective final fields are marked as final
- Kotlin 2.x support; use kotlin compiler version 2.2.21
- Update MCP SDK to 0.15.0
- Update MCP Annotations to 0.6.0

Future tasks:
- Raise issue to migrate from Spring Retry to Spring Framework 7 built-in retry functionality
- Raise issue with `swagger-codegen-maven-plugin` to support Spring Framework 7
- Raise issue with GemFire to support testcontainers 2.x

Signed-off-by: Dmitry Bedrin <[email protected]>
bedrin added a commit to OncoSteps/spring-ai that referenced this pull request Oct 31, 2025
- Updated Spring Boot dependency to 4.0.0.RC1
- Spring Framework 7 API compatibility (see below)
- Migration to Spring Boot 4.x as per https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-4.0-Migration-Guide :
  * Adopt new modular design of starters
  * Use new Jackson 3.x API
  * Support Property Mapper API changes around null handling
  * Migrated from Spring Retry to Spring Framework Retry functionality
- Updated Swagger codegen templates used by huggingface model to align with latest Spring Framework APIs
- Update elasticsearch test container to 9.2.0
- Added `FailureDetectingExternalResource` from old versions of `testcontainers` library to support `gemfire-testcontainers`
- Other related dependencies updates:
  * TestContainers to 2.0.1
  * GemFire testcontainers to 2.3.3
  * opensearch-testcontainers to 4.0.0
  * Rest Assured to 5.5.6
  * swagger-codegen-maven-plugin to 3.0.75

Fixes spring-projectsGH-3379 (spring-projects#3379)

Includes changes by @paulbakker from spring-projects#4681

Built on-top of spring-projects#4771
- Use only Spring Framework APIs available both in 6.x and 7.x branches
- Add constructors without logic to `*Api` classes in `models` modules to simplify extensibility; effective final fields are marked as final
- Kotlin 2.x support; use kotlin compiler version 2.2.21
- Update MCP SDK to 0.15.0
- Update MCP Annotations to 0.6.0

Future tasks:
- [x] Raise issue to migrate from Spring Retry to Spring Framework 7 built-in retry functionality: spring-projects#4681
- [ ] Raise issue with `swagger-codegen-maven-plugin` to support Spring Framework 7
- [x] Raise issue with GemFire to support testcontainers 2.x: gemfire/gemfire-testcontainers#7

Signed-off-by: Dmitry Bedrin <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant