← All recipes
Moderne licensed

Verify compilation of changes made earlier in the same run

Recipe IDio.moderne.compiled.verification.VerifyCompilationArtifactorg.openrewrite.recipe:rewrite-compiled-analysis

Recompile the source files that **earlier recipes in this same recipe run** changed, and mark the elements that no longer compile. This recipe examines only files carrying a RecipesThatMadeChanges marker, so running it on its own reports nothing at all, no matter how badly broken the code in the repository is. It is a verification step for a migration, not a standalone compiler. Compose it after the recipe whose output you want to verify: ``yaml type: specs.openrewrite.org/v1beta/recipe name: com.yourorg.MigrateAndVerify displayName: Migrate and verify description: Rename a method and verify that the result still compiles. recipeList: - org.openrewrite.java.ChangeMethodName: methodPattern: java.util.List add(..) newMethodName: plus - io.moderne.compiled.verification.VerifyCompilation `` Failures appear as inline warnings on the offending elements, so a run that produces no warnings either verified everything successfully or had nothing to verify.

Single recipeProprietary

Usage

This recipe has no required configuration options. You’ll need the Moderne CLI configured before running the command below.

mod run . --recipe io.moderne.compiled.verification.VerifyCompilation

If the recipe isn’t available locally, install it with:

mod config recipes jar install org.openrewrite.recipe:rewrite-compiled-analysis:RELEASE

Options

NameTypeDescription
traceBooleanTrace the ABIs of dependencies of files being verified.

Data tables

Structured output this recipe can produce.

  • ABI tracesASM trace of the ABI of types needed to perform compile verification.io.moderne.compiled.table.ABITraces
  • Compilation failuresElements that no longer compile after a preceding recipe made changes to the file.io.moderne.compiled.table.CompilationFailures
  • Source files that had resultsSource files that were modified by the recipe run.org.openrewrite.table.SourcesFileResults
  • Source files that had search resultsSearch results that were found during the recipe run.org.openrewrite.table.SearchResults
  • Source files that errored on a recipeThe details of all errors produced by a recipe run.org.openrewrite.table.SourcesFileErrors
  • Recipe performanceStatistics used in analyzing the performance of recipes.org.openrewrite.table.RecipeRunStats