Revamping the Spring Boot Migrator (SBM) Project #859
fabapp2
announced in
Announcements
Replies: 1 comment
-
is [spring-rewrite-commons] to revamping? |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello,
We'd like to share the latest news on the Spring Boot Migrator (SBM) project. We've fallen behind in integrating recent OpenRewrite versions and we apologize if this has affected you. Our team has gone through some changes and the workload has increased, leading to these delays.
During this time, the OpenRewrite engineering team launched a major update, now working on an 8.x baseline. Meanwhile, the current SBM version, 0.14.0, is still operating on the outdated OpenRewrite version 7.35.0.
Integrating the new release and addressing previously delayed features like scoped beans are demanding tasks we're tackling.
OpenRewrite Parser
We've seen other teams create their custom parsers for OpenRewrite recipes. Therefore, we decided to collaborate and create a shared parser component compatible with the latest Boot and OpenRewrite versions. You can find more details about this in this Issue and the shared component is located under
/sbm-support-rewrite
.This parser simplifies:
Parse, discover, and run OpenRewrite recipes:
Introducing the Parser
The upcoming release 0.15.0 will be the last on the 7.35.0 OpenRewrite version and the last version before we integrate the new parser.
This update will affect all dependent modules, so we'll decouple all modules from the root pom and upgrade each one separately.
Replace
sbm-core
ParserThe first step is updating
sbm-core
to use the new parser, replacing theRewriteMavenProjectParser
. The progress is tracked in this issue.The new
sbm-core
will apply OpenRewrite recipes, handle changes efficiently, sync seamlessly with the filesystem, and optionally support GIT.Run OpenRewrite recipes through ProjectContext:
Enhance
ProjectContext
After updating
sbm-core
, we aim to improveProjectContext
by introducing a method to run existing or new OpenRewrite recipes.Recipes can then be executed like this:
This makes creating custom tools for OpenRewrite recipes easier.
Upgrade Select SBM Recipes
Finally, we plan to make selected SBM recipes compatible with OpenRewrite 8.x, which will involve migrating modules hosting these recipes, like
sbm-recipes-jee-to-boot
orsbm-recipes-boot-upgrade
.SBM Shell and Boot Upgrade
This transition lets us improve several components. We plan to simplify the Spring Boot Upgrade Report and find the best execution strategy.
We'll discontinue the SBM shell application under
applications/spring-shell
and incorporate important components into SpringCLI. This will provide a convenient platform for executing SBM, OpenRewrite, and other recipes.Thanks for your support during these updates. We look forward to your continued feedback. Feel free to reach out if you have any questions or comments!
Beta Was this translation helpful? Give feedback.
All reactions