Bumped to SpringBoot4, SpringFramework7 and JDK17 - same as #705, but with signed-ff commits#729
Bumped to SpringBoot4, SpringFramework7 and JDK17 - same as #705, but with signed-ff commits#729jacekbilski wants to merge 21 commits into
Conversation
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: David Strömner <david.stromner@stralfors.se>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
…on)" OpenRewrite recipe. Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
…ttps://github.com/spring-cloud/spring-cloud-function/tree/main/spring-cloud-function-samples/function-sample-cloudevent. Signed-off-by: Jacek Bilski <jacek@bilski.tech>
Signed-off-by: Jacek Bilski <jacek@bilski.tech>
|
Hey guys, are you planning to merge this soon? It's blocking Spring Boot upgrades because of Jackson 3 breaking changes. |
|
I wish I could say more. I believe that @stromner-stralfors and I have made all the necessary changes, the code works for me™. Anything beyond that is in the hands of the maintainers. |
|
@duglin Can you answer if this is something you (the maintainers, not specifically you) will be working on? |
|
@lbenedetto let me poke some folks |
|
Seems reasonable to me, however, with such a large number of files changed (and some being more than just a version number change), let's wait for @Cali0707 to verify that nothing seems off. |
|
yes currently taking a look here (started yesterday, but lots of changes...) |
There was a problem hiding this comment.
Hey @jacekbilski thanks for all the much needed hard work to modernize this SDK!
I think to make these changes more releasable we need to split this up into a couple more incremental PRs/releases:
- Let's mark
http/restful-ws's public classes as@Deprecated(forRemoval = true). As part of this, we should copy the code intohttp/restful-ws-jakartaand permanently switch thejavaxtojakartanamespacing. We do not want to remove therestful-ws-jakartasupport in 5.0 (and can't remove either currently as neither module is actually marked as deprecated, despite the commit comment saying they are). - Make a 4.1.0 release after step 1 is merged
- Bump to Java 17 baseline and apply the language modernization changes (version bump to 5.0.0-SNAPSHOT)
- Drop the
restful-wsmodule and updaterestful-ws-jakartato Jakarta REST 4.0 - Apply the
HttpHeadersdefensive copy fix and the@Nullableannotation switch (these are both needed for Spring Boot 4 forward compatibility), but keep compiling and testing against Spring Boot 3.x. This way users on both 3.x and 4.x can use the module. I thinking moving from the current 2.x all the way to 4.x in one go is too aggressive and will make it so some users can not use this.
I don't think we need to bump to Jackson 3 currently, as there is still a large portion of projects on Jackson 2. Additionally, let's stick with JUnit 5 for now to help keep the scope of changes smaller.
If you are able to start working on pieces of this in separate PRs, ping me and I'm happy to try to quickly merge them and move this process along!
|
Hello @Cali0707, I'll start working on those things soon. One note, current 4.x version is working perfectly with Spring Boot 3, I'm using it that way since over a year. So the jump to Spring Boot 4 is not that big. |
|
Hey @Cali0707, Spring Boot 4 upgrades Jackson which renames packages to |
|
@jacekbilski @lehphyro I appreciate the points you are raising. My strong preference for not bumping these all now is because we have lots of different usages in different projects with different sets of dependencies. Let's:
|
|
@Cali0707 As we're anyway providing Jackson support in the form of |
|
@jacekbilski we could definitely do a dual package approach for jackson 2/3 (and IMO deprecate the jackson 2 package to indicate to people to move off it). I think this is a great approach As with everything else here I'm fully on board with modernizing the dependencies/packages in this SDK, I just want to make sure that we are upgrading in a way where it is easy for all the SDK consumers to incrementally update, and where we are communicating what is being deprecated in releases before we remove support. |
|
@jacekbilski are you okay with the plan we've discussed here? Mind opening issues for the different steps so that we can close out this PR and start tackling/releasing bits of this incrementally? |
|
@Cali0707 Fine by me. I'll open new issues and close this PR once I'll start working on it. |
The content is the same as in #705, see the discussion there. The only two changes are: the commits are now properly signed-off and I've rebased it onto main.