What's Changed
- JavaScript: AddImport
onlyIfReferencedignores a name the file already binds by @greg-at-moderne in #9480 - Go: in tests run AfterRecipe on the recipe result instead of the parsed tree by @greg-at-moderne in #9481
- JavaScript: fail
rewriteRunon generated files no spec describes by @greg-at-moderne in #9482 - Go: bump klauspost/compress past the zstd two-block-frame advisory by @knutwannheden in #9484
- Kotlin: merge formatted whitespace into expression statements by @timtebeek in #9487
- KotlinTemplate: wrap substituted expressions placed as statements by @timtebeek in #9488
- JavaTemplate: keep the comments of a substituted parameter by @knutwannheden in #9492
- Do not downgrade Java versions referenced through compiler properties by @timtebeek in #9493
- Groovy: parse unary plus and minus as J.Unary by @timtebeek in #9499
- Groovy: keep quotes before a triple-quoted string's closing delimiter by @timtebeek in #9501
- Groovy: map stray semicolons in blocks and scripts to J.Empty by @timtebeek in #9500
- Python: rewriteRun test framework to run the recipe at least twice to ensure idempotency by @greg-at-moderne in #9477
- Go: remove unused WithJavaRecipe test hook and Java RPC test client by @greg-at-moderne in #9485
- Go: declare Java sources and test data as
goTestinputs by @greg-at-moderne in #9503 - Go: fix cursor assertion failures in rewrite-go integTests by @greg-at-moderne in #9504
- JavaScript: reset the RPC factory after tests that point it at a @tempdir by @greg-at-moderne in #9505
- Don't let AddPluginDependency downgrade an existing plugin dependency by @knutwannheden in #9461
- Python: add data_table assertions to tests by @greg-at-moderne in #9508
- JavaTemplate: keep a replaced tree's comments once when it is passed back in by @timtebeek in #9494
- KotlinTemplate: support replaceParameters() and replaceTypeParameters() by @timtebeek in #9495
- Kotlin: keep comments before an expression body on the expression by @timtebeek in #9497
- Keep a trailing closure in GradleDependency edits by @knutwannheden in #9458
- Keep a POM's own inherited=false plugins in its resolved model by @knutwannheden in #9460
- Update only the version when AddPluginDependency upgrades a plugin dependency by @knutwannheden in #9506
- C#: rewriteRun test framework to run the recipe at least twice to ensure idempotency by @greg-at-moderne in #9509
Full Changelog: v8.96.2...v8.96.3