Skip to content

Spring Boot Upgrade to 3.0.0-M1 #157

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
8 tasks done
fabapp2 opened this issue Jun 13, 2022 · 0 comments
Closed
8 tasks done

Spring Boot Upgrade to 3.0.0-M1 #157

fabapp2 opened this issue Jun 13, 2022 · 0 comments
Labels
3.0.0 Spring Boot 3.0.0 archived

Comments

@fabapp2
Copy link
Contributor

fabapp2 commented Jun 13, 2022

labels: ["upgrade:boot-recipe","3.0.0","epic"]

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0.0-M1-Release-Notes

Spring Boot 3.0.0 M1 Release Notes

Upgrading from Spring Boot 2.x

Deprecations from Spring Boot 2.x

Classes, methods and properties that were deprecated in Spring Boot 2.x have been removed in this release. Please ensure that you aren?t calling deprecated methods before upgrading.

Minimum Requirements Changes

Spring Boot 3.0 makes the following changes to its minimum supported versions:

  • Gradle 7.3

  • Jakarta EE 9

  • Java 17

  • Kotlin 1.6

  • Spring Framework 6

Jakarta EE 9

Where Spring Boot depends upon a Jakarta EE specification, 3.0 has upgraded to the version that is included in Jakarta EE 9. For example, Spring Boot 3.0 uses the Servlet 5.0 and JPA 3.0 specifications.

To differentiate between modules that support Jakarta EE 8 and modules that support Jakarta EE 9, some projects have published their Jakarta EE 9-compatible modules with different artifact IDs. For example, Undertow uses a -jakartaee9 suffix and Hibernate uses -jakarta. Generally speaking, Spring Boot?s starter modules should handle this change for you. If you are declaring dependencies on third-party modules directly, you may need to update your dependency declarations to use the EE 9-compatible artifact IDs.

As part of this upgrade to Jakarta EE 9, support for some dependencies has been reduced or removed where support was not available. We hope to reinstate support as the ecosystem gradually adapts to the new package names in Jakarta EE 9. In the meantime, support for the following has been removed:

Jersey

Support for Jersey has been temporarily removed as it does not yet support Spring Framework 6.

Removed Support

Support for the following dependencies has been removed in Spring Boot 3.0:

JSON-B

Dependency management for Apache Johnzon has been removed in favor of Eclipse Yasson. A Jakarta EE 9-compatible version of Apache Johnzon can be used with Spring Boot 3, but you will now have to specify a version in your dependency declaration.

New and Noteworthy

Tip

Check the configuration changelog for a complete overview of the changes in configuration.

Dependency Upgrades

Spring Boot 3.0.0-M1 moves to new versions of several Spring projects:

Numerous third-party dependencies have also been updated, some of the more noteworthy of which are the following:

  • Artemis 2.20.0

  • Hazelcast 5.0

  • Hibernate Validator 7.0

  • Jakarta Activation 2.0

  • Jakarta Annotation 2.0

  • Jakarta JMS 3.0

  • Jakarta JSON 2.0

  • Jakarta JSON Bind 3.0

  • Jakarta Mail 2.0

  • Jakarta Persistence 3.0

  • Jakarta Servlet 5.0

  • Jakarta Servlet JSP JSTL 2.0

  • Jakarta Transaction 2.0

  • Jakarta Validation 3.0

  • Jakarta WebSocket 2.0

  • Jakarta WS RS 3.0

  • Jakarta XML Bind 3.0

  • Jakarta XML Soap 2.0

  • Jetty 11

  • jOOQ 3.16

  • Tomcat 10

  • 3.0.0-M1 Dependency Upgrades #161

Miscellaneous

Apart from the changes listed above, there have also been some minor tweaks and improvements including:

  • Support for Java?s SecurityManager has been removed following its deprecation in the JDK

  • Support for Spring Framework?s CommonsMultipartResolver has been removed following its removal in Spring Framework 6

  • 3.0.0-M1 Removals #162

Deprecations in Spring Boot 3.0

  • None
@fabapp2 fabapp2 added this to the Spring Boot Upgrade 3.0 (M3) milestone Jun 13, 2022
@fabapp2 fabapp2 added 3.0.0 Spring Boot 3.0.0 3.0.0-M2 labels Jun 13, 2022
@fabapp2 fabapp2 changed the title Spring Boot Upgrade to 3.0.0-M3 Spring Boot Upgrade to 3.0.0-M1 Jun 13, 2022
@fabapp2 fabapp2 added epic and removed 3.0.0-M2 labels Jun 13, 2022
@fabapp2 fabapp2 closed this as not planned Won't fix, can't repro, duplicate, stale Aug 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3.0.0 Spring Boot 3.0.0 archived
Projects
None yet
Development

No branches or pull requests

1 participant