Skip to content
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

Fix categorization for Moderne recipes #167

Open
mike-solomon opened this issue Feb 18, 2025 · 8 comments
Open

Fix categorization for Moderne recipes #167

mike-solomon opened this issue Feb 18, 2025 · 8 comments
Labels
enhancement New feature or request

Comments

@mike-solomon
Copy link
Contributor

mike-solomon commented Feb 18, 2025

Right now Moderne recipes are going into strange categories because we've named the recipes weirdly.

For example, our Spring Boot 3.4 recipe - https://docs.openrewrite.org/recipes/recipe/spring/boot3/upgradespringboot_3_4 has a recipe id of: io.moderne.recipe.spring.boot3.UpgradeSpringBoot_3_4 - which means that it's under the page: recipe -> spring -> boot3.

This is problematic as it should be Moderne -> Java -> Spring -> Boot3.

This applies to many recipes such as Hibernate. Similarly, https://docs.openrewrite.org/recipes/compiled/verification/changelistmethodandverify - this should have a category of compiled verification and not compiled -> verification.

We need to either rename all of the recipes to have the correct path - or we need to write code to map these recipe ids to categories.

Related thread: https://moderneinc.slack.com/archives/C01VADFPJQZ/p1739899709537709

@okundzich
Copy link
Member

I think we just rename them to have this path Moderne -> Java -> Spring -> Boot3. it's just two modules and 10s of customers that we can communicate this to. I'm not sure what we did to advertise available recipes to them in the SaaS (new modules). I remember we discussed this. We would also need to delete the old jars.

In any case if we have such categories for Moderne proprietary recipes, than we can strip Moderne from the path and put them in the regular catalog under Moderne Proprietary heading

So this
Image

becomes

Image

Then we don't have to figure out how to link them across different trees. We just need to follow a convention that Moderne recipes need to have the same path hierarchy as OS ones, just with io.moderne not org.openrewrite.

@okundzich
Copy link
Member

if we do this then issues #168 and #169 can be closed.

As a follow up, we also have some recipes with org.openrewrite path that are proprietary, and we know what license they have since we display it. This also can be sorted into Moderne Proprietary Categories/Recipes and Categories/Recipes.

Then we have a single category catalog that specifies recipes OSS and Moderne for different migrations/tasks.

@okundzich
Copy link
Member

Image

This is how it can look if paths are the same only prefix is different. It will help people see at a glance the benefits of moderne recipes.

@okundzich
Copy link
Member

Also this category Recipes needs to be renamed. I think still ok to rename in path?

Image

@timtebeek
Copy link
Contributor

Linking this issue here as well as it might clear out some of the discrepancies between OSS docs & Moderne Platform:

@kmccarp
Copy link
Contributor

kmccarp commented Feb 19, 2025

Can we just rename the recipes? Literally run change package name recipe on all these packages in the recipe jars? We're well within the timeframe to be able to rename them. I would rather do that than build something custom for this case.

@timtebeek
Copy link
Contributor

We've now renamed the packages, but there's further work to do still:

Waiting to hear if this might help, as I've not wrestled with our categories handling much before:

@sambsnyd
Copy link
Member

I merged the PR Tim had open to mark io.moderne as a root category. I believe that will help

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: No status
Development

No branches or pull requests

5 participants