-
Hi, As a test, I'm trying to run a simple recipe, the removal of unnecessary semicolons. The code base is large and has many modules, which in turn have many dependencies. Several of the modules are not in the default build profile, and have to be included using profiles.
As you can see, I'm trying to minimize the files inspected by OpenRewrite, trying to parallelize as much of the work as possible, as a full build is 200+ modules (which I did with some success with an upstream project I'm also working on, GeoTools). Now, the build is either stuck, or just waiting for too many HTTP timeouts, during the "Resolving Poms" phase... which seems to be downloading poms from maven repositories, recursively. This starts returning a number of error messages that are somewhat baffling:
Surprising bits:
I've also noticed another surprising behavior. If I remove the |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 6 replies
-
hi @aaime ; For large OSS projects we recommend the Moderne CLI; that saves the LST model to disk, such that you only need to build up the model once as opposed to once per recipe run. That should save you considerable time as you iterate through modernizing your project. We make the Moderne CLI available for free to OSS projects. That is likely your best path forward for larger projects, and I hope that's helpful to you there! :) |
Beta Was this translation helpful? Give feedback.
-
Yes, I've noticed, and indeed I've spent the morning trying to use the moderne CLI: I don't think I'm going to get anywhere close to it anytime soon. The CLI took a lot longer to initially load the project, because it's not parallelizing anything. On GeoTools I get to apply two rewrites in a row (with full LTS computation, 3 minutes each) before the CLI is even done computing the LTS (over 6 minutes). Since with GeoServer I'm hitting a wall with the maven plugin too, I've now tried Moderne CLI again. I give it a try anyways, again, I'm running the RemoveExtraSemicolons recipe. Is there some magic command? Ah yes, "mod clean"... tried cleaning both builds and runs. "mod build" and "mod run" again, and ... nope, no changes to speak of. Again, I give up. What can I do to get the maven plugin work, please? |
Beta Was this translation helpful? Give feedback.
As long as there's no conflicts, or new files you want to target you can reuse the same LST as before. We typically see folks rebuild their LSTs nightly for instance, or after large sweeping changes. The goal is to considerably speed up your recipe runs, which typically do not overlap much in terms of changes. I hope that helps you there! There's a ton of best practices recipes you should now be able to run in seconds and see their proposed changes.