Skip to content

Spring Boot Upgrade to 3.0.0-M2 #163

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
7 tasks done
fabapp2 opened this issue Jun 13, 2022 · 0 comments
Closed
7 tasks done

Spring Boot Upgrade to 3.0.0-M2 #163

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-M2-Release-Notes

Spring Boot 3.0.0 M2 Release Notes

For changes in earlier milestones, please refer to:

Upgrading from Spring Boot 2.x

Minimum Requirements Changes

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

  • Groovy 4.0

RxJava Dependency Management

Dependency management for RxJava 1.x and 2.x has been removed and dependency management for RxJava 3 has been added in its place.

Image Banner Support Removed

Support for image-based application banners has been removed. banner.gif, banner.jpg, and banner.png files are now ignored and should be replaced with a text-based banner.txt file.

Micrometer binders

The Micrometer team moved the binders to a separate micrometer module named micrometer-binders. To prevent split packages, the imports have changed, too. If you are using the old binders, please adjust your imports from io.micrometer.core.instrument.binder to io.micrometer.binder.

@ConstructingBinding No Longer Needed at the Type Level

@ConstructorBinding is no longer needed at the type level on @ConfigurationProperties classes and should be removed. When a class or record has multiple constructors, it may still be used on a constructor to indicate which one should be used for property binding.

New and Noteworthy

Tip

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

Reinstated Support for EhCache 3

Support for EhCache 3 has been reinstated as it is now compatible with Jakarta EE 9.

Support has been added in a separate artifact. To use it your application, make sure to add the dependency with the jakarta classifier.

Reinstated Support for H2 Console

Support for H2?s Console has been reinstated as it is now compatible with Jakarta EE 9.

Improved @ConstructorBinding Detection

When using constructor bound @ConfigurationProperties the @ConstructorBinding annotation is no longer required if the class has a single parameterized constructor. If you have more than one constructor, you?ll still need to use @ConstructorBinding to tell Spring Boot which one to use.

For most users, this updated logic will allow for simpler @ConfigurationProperties classes. If, however, you have a @ConfigurationProperties and you want to inject beans into the constructor rather than binding it, you?ll now need to add an @Autowired annotation.

Dependency Upgrades

Spring Boot 3.0.0-M2 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:

  • Groovy 4.0

  • Thymeleaf Layout Dialect 3.1

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 the epic label Jul 13, 2022
@fabapp2 fabapp2 added 3.0.0 Spring Boot 3.0.0 and removed 3.0.0-M2 labels Jul 21, 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