github openrewrite/rewrite v8.97.1
8.97.1

3 hours ago

What's Changed

  • Share scanning recipe state with RPC edit visitors by @jkschneider in #9552
  • C#: template parenthesization follow-ups for conditionals, null-forgiving ! and capture ids by @jkschneider in #9553
  • C#: format a file that leaves its namespace's members flush as the file indents by @jkschneider in #9554
  • JavaScript: visit type positions as Java does, type template parameters fully, and read a child's own slot by @jkschneider in #9555
  • Python: rewrite_run reports output that doesn't parse as such, not as added markers by @jkschneider in #9556
  • Python: indent formatted code as the file does when no style says how by @jkschneider in #9557
  • Python: a parameter's default value takes spaces only after an annotation by @jkschneider in #9558
  • Go: AutoFormat follow-ups toward gofmt by @jkschneider in #9559
  • Kotlin: templates parenthesize with Kotlin's precedence by @jkschneider in #9560
  • Groovy: a template parenthesizes a cast operand as Groovy reads it by @jkschneider in #9561
  • Scala: templates parenthesize with Scala's precedence by @jkschneider in #9562
  • Python: a template replacement keeps the blank lines before the code it replaces by @jkschneider in #9563
  • JavaScript: preserve semicolon of labeled statement used as control flow body by @greg-at-moderne in #9514
  • Python: empty after to match only empty output by @greg-at-moderne in #9564
  • Scala: Making Java's RemoveImport not crash on member imports in Scala code by @greg-at-moderne in #9567
  • JavaScript: preserve directive prologues when adding imports by @myhau in #9566
  • Name the hbase-shaded-client fixture configuration as a test configuration by @timtebeek in #9570
  • JavaScript: allow string literal module export names in JS.Alias by @greg-at-moderne in #9568
  • Retain versions no longer managed through a BOM imported by spring-boot-dependencies by @timtebeek in #9581
  • Test on the Java 25 parser in modules whose tests now run on JDK 25 by @timtebeek in #9585
  • Default the Tooling API to Gradle 9.8.2 by @timtebeek in #9587
  • Groovy: parse comment-only lines before static star imports by @jkschneider in #9549
  • Groovy: preserve lazy closures in GString interpolation by @jkschneider in #9551
  • Migrate project source-set dependencies safely for Gradle 9 by @jkschneider in #9576
  • Groovy: consume spread-map entry values once by @jkschneider in #9550
  • Gradle 9: merge Manifest attributes through the supported API by @jkschneider in #9569
  • Fix RemoveImport trailing comma loss and module-to-script breakage by @steve-aom-elliott in #9577
  • JavaScript: share the host's @openrewrite/rewrite with symlinked recipe packages by @knutwannheden in #9595
  • Migrate Shadow plugin declarations for Gradle 9 by @jkschneider in #9592
  • Honor explicit overrides of inherited managed plugin versions by @jkschneider in #9593
  • Handle Kotlin DSL when changing Gradle dependency configurations by @jkschneider in #9594
  • JavaScript: decode escapes in JSON keys from getMemberKeyName by @knutwannheden in #9597
  • JavaScript: add onlyIfDeclaring to AddDependency by @knutwannheden in #9601
  • JavaScript: record GetObject metrics when the RPC server serves from its worker by @knutwannheden in #9603
  • JavaScript: ChangeMethodTargetToImport takes the import style by @knutwannheden in #9604
  • JavaScript: stop the RPC worker transport from leaving a GetObject unanswered by @knutwannheden in #9606
  • Decode escapes in JSON string literal values by @knutwannheden in #9605
  • HCL: lex unicode escapes and decode escapes in literal values by @knutwannheden in #9607
  • TOML: decode escapes in quoted key names by @knutwannheden in #9608
  • Keep a method's type parameters in JavaReflectionTypeMapping on JDK 25 by @timtebeek in #9598
  • JavaScript: match and rebind string-literal import names in maybeRebind and maybeBind by @greg-at-moderne in #9612
  • RemoveRedundantProperties: keep a module's override of a property only local POMs define by @timtebeek in #9600
  • ChangeMethodName: don't rename a declaration when the class already declares the new method by @timtebeek in #9599
  • Keep a line comment added by the Comments trait from swallowing an element that shares its line by @timtebeek in #9611
  • Gradle UpgradeDependencyVersion: don't declare a plugin's own tooling dependencies by @timtebeek in #9602
  • JavaScript: resolve an installed recipe package's shared dependencies from the host by @knutwannheden in #9609
  • Python: name a poetry.lock written before Poetry 2.0 by its lock-version by @timtebeek in #9575

Full Changelog: v8.97.0...v8.97.1

Don't miss a new rewrite release

NewReleases is sending notifications on new releases.