Skip to main content

8.74.1 release (2026-02-25)

Total recipe count: 4795

info

This changelog only shows what recipes have been added, removed, or changed. OpenRewrite may do releases that do not include these types of changes. To see these changes, please go to the releases page.

Corresponding CLI version

  • Stable CLI version v3.57.6
  • Staging CLI version: v3.57.11

New Artifacts

  • rewrite-cobol

New Recipes

Removed Recipes

  • io.moderne.prethink.ComprehendCode: Use an LLM to generate descriptions for classes and methods in the codebase. Descriptions are cached based on source code checksums to avoid regenerating descriptions for unchanged code.
  • io.moderne.prethink.ComprehendCodeTokenCounter: Estimate the input token counts that would be sent to an LLM for method comprehension, without actually calling a model. Uses OpenAI's tokenizer locally. Outputs to the MethodDescriptions table with blank descriptions.
  • io.moderne.prethink.ExtractCodingConventions: Analyze the codebase to extract coding conventions including naming patterns, import organization, and documentation patterns.
  • io.moderne.prethink.ExtractDependencyUsage: Analyze the codebase to extract dependency usage patterns by examining which types from external libraries are actually used in the code.
  • io.moderne.prethink.ExtractErrorPatterns: Analyze the codebase to extract error handling patterns including exception types, handling strategies, and logging frameworks used.
  • io.moderne.prethink.FindTestCoverage: Map test methods to their corresponding implementation methods. Uses JavaType.Method matching to determine coverage relationships. Optionally generates AI summaries of what each test is verifying when LLM provider is configured.
  • io.moderne.prethink.UpdatePrethinkContextNoAiStarter: Generate Moderne Prethink context files with architectural discovery, test coverage mapping, dependency inventory, and FINOS CALM architecture diagrams. This recipe does not require an LLM provider - use UpdatePrethinkContextStarter if you want AI-generated code comprehension and test summaries.
  • io.moderne.prethink.UpdatePrethinkContextStarter: Generate Moderne Prethink context files with AI-generated code comprehension, test coverage mapping, dependency inventory, and FINOS CALM architecture diagrams. Maps tests to implementation methods and optionally generates AI summaries of what each test verifies when LLM provider is configured.
  • io.moderne.prethink.calm.FindCalmRelationships: Discover method call relationships within the repository for building interaction diagrams. Captures all method-to-method calls between in-repo classes. Entity IDs are resolved by GenerateCalmArchitecture when building CALM relationships.
  • io.moderne.prethink.calm.FindDataAssets: Identify data assets including JPA entities, MongoDB documents, Java records, and DTOs in the application.
  • io.moderne.prethink.calm.FindDatabaseConnections: Identify database connections and data access patterns in the application. Detects JPA entities, Spring Data repositories, JDBC templates, and MyBatis mappers.
  • io.moderne.prethink.calm.FindDeploymentArtifacts: Identify deployment artifacts including Dockerfiles, docker-compose files, and Kubernetes manifests.
  • io.moderne.prethink.calm.FindExternalServiceCalls: Identify outbound HTTP calls to external services. Detects RestTemplate, WebClient, Feign clients, Apache HttpClient, OkHttp, and JAX-RS clients.
  • io.moderne.prethink.calm.FindMessagingConnections: Identify message queue producers and consumers. Detects Kafka, RabbitMQ, JMS, Spring Cloud Stream, and AWS SQS messaging.
  • io.moderne.prethink.calm.FindProjectMetadata: Extract project metadata (artifact ID, group ID, name, description) from Maven pom.xml files.
  • io.moderne.prethink.calm.FindSecurityConfiguration: Identify security configurations including Spring Security, OAuth2, and CORS settings.
  • io.moderne.prethink.calm.FindServerConfiguration: Extract server configuration (port, SSL, context path) from application.properties and application.yml files.
  • io.moderne.prethink.calm.FindServiceComponents: Identify service layer components (@Service, @Component, @Named) in the application. Excludes controllers and repositories which are handled by dedicated recipes.
  • io.moderne.prethink.calm.FindServiceEndpoints: Identify all REST/HTTP service endpoints exposed by the application. Supports Spring MVC, JAX-RS, Micronaut, and Quarkus REST endpoints.
  • io.moderne.prethink.calm.GenerateCalmMermaidDiagram: Generate a markdown file with a mermaid architecture diagram from discovered service endpoints, database connections, external service calls, and messaging connections.
  • org.openrewrite.java.joda.time.JodaTimeRecipe: Prefer the Java standard library over third-party usage of Joda Time.
  • org.openrewrite.java.logging.slf4j.JulGetLoggerToLoggerFactoryRecipes: Replace calls to Logger.getLogger with LoggerFactory.getLogger.
  • org.openrewrite.java.logging.slf4j.JulGetLoggerToLoggerFactoryRecipes$GetLoggerClassCanonicalNameToLoggerFactoryRecipe: Replace calls to java.util.logging.Logger.getLogger(Some.class.getCanonicalName()) with org.slf4j.LoggerFactory.getLogger(Some.class).
  • org.openrewrite.java.logging.slf4j.JulGetLoggerToLoggerFactoryRecipes$GetLoggerClassNameToLoggerFactoryRecipe: Replace calls to java.util.logging.Logger.getLogger(Some.class.getName()) with org.slf4j.LoggerFactory.getLogger(Some.class).
  • org.openrewrite.staticanalysis.CustomImportOrder: Updates and reorders Java import declarations according to group and order settings compatible with the Checkstyle 'CustomImportOrder' check.

Changed Recipes