Releases: openrewrite/rewrite
Releases · openrewrite/rewrite
8.79.2
What's Changed
- C#: Fix PointerDereference type propagation crash by @macsux in #7325
- RequirementsTxtParser: surface resolution failures as ParseExceptionResult by @Jenson3210 in #7326
- Fix AddKeyValue logging parser errors for trailing dot in keyPath by @timtebeek in #7327
- ChangeDependency skips dependencies whose new coordinates don't resolve by @steve-aom-elliott in #7321
- Move rewrite-go Go module up one directory by @jkschneider in #7329
- Reuse C# RPC process across CSharpRecipeTest methods by @steve-aom-elliott in #7332
- Fix IndexOutOfBoundsException in JavaTemplateParser.parseExpression for local class types by @knutwannheden in #7335
- Fix RemoveUnusedImports keeping import only referenced in type attribution by @timtebeek in #7336
- Skip plugins block in UsePropertyAssignmentSyntax by @timtebeek in #7337
- Fix UnsupportedOperationException in Py.ExpressionTypeTree.withType() by @knutwannheden in #7314
- Fix
BlankLinesVisitor.visitImport()IndexOutOfBoundsExceptionon Python files by @knutwannheden in #7340 - Fixed an issue with lingering Tempdirs and missing marker descriptions. by @Jenson3210 in #7330
- Fix
GroovyTemplatefailure when method invocation hasvoidreturn type by @knutwannheden in #7341 - RPC: explicitly fail if RPC receives a message it has no codec for by @greg-at-moderne in #7342
- Fix duplicate marketplace categories from case-sensitive displayName matching by @pdelagrave in #7334
- C#: Expose csproj visitor classes for reuse in custom recipes by @macsux in #7324
- Add FindStyles diagnostic recipe and test Kotlin style detection behavior by @Jenson3210 in #6634
- JavaScript: register existing
RemoveDependencyrecipe by @greg-at-moderne in #7343 - Expand star imports in ChangePackage and related recipes when they would create ambiguity by @steve-aom-elliott in #7202
- Fix file handle leak from ProcessBuilder.redirectError() on Windows by @shanman190 in #7346
- C#: Add Preconditions.Not, And, and recipe-based Check support by @macsux in #7348
- Work around dotnet tool exec auth failure on private NuGet feeds by @macsux in #7347
Full Changelog: v8.79.1...v8.79.2
v8.79.1
What's Changed
- C#: Improve csproj manipulation and add reattestation by @macsux in #7316
- XmlParser: case-insensitive accept for nuget.config by @steve-aom-elliott in #7317
- C#: Remove REWRITE_SOURCE_PATH env var from RPC launcher by @macsux in #7322
- Treat all packages listed in requirements.txt as direct dependencies by @Jenson3210 in #7320
- Parse all requirements files in requirements-only Python projects by @Jenson3210 in #7323
Full Changelog: v8.79.0...v8.79.1
8.79.0
What's Changed
- Go: Fix how generics (parametrized types) are parsed by @greg-at-moderne in #7294
- Fix DTD ENTITY parsing when quoted values contain angle brackets by @timtebeek in #7280
- Scala:
ExpressionStatements by @greg-at-moderne in #7296 - C#: Fix RPC serialization of XmlDoc comments by @greg-at-moderne in #7297
- Fix NPE in UpgradeDependencyVersion ext property upgrade by @Jenson3210 in #7299
- Scala: fix parsing of pattern matching with case conditions by @greg-at-moderne in #7298
- Go: fix parsing of multi-parameter generics by @greg-at-moderne in #7300
- Add UsePropertyAssignmentSyntax recipe for Gradle (#5828) by @timtebeek in #7286
- Scala: parsing to support multiline case blocks with no
{}braces by @greg-at-moderne in #7301 - Support META-INF/services files in ChangePackage and ChangeType by @timtebeek in #7282
- Preserve whitespace in DTD internal subset markup declarations by @Jenson3210 in #7302
- Fix Groovy as-style type casts losing space around
askeyword by @timtebeek in #7303 - Python: fix for not crashing with empty files by @greg-at-moderne in #7304
- Scala: fix whitespace parsing of type casts by @greg-at-moderne in #7306
- Fix MavenDependency#findNewerVersion ExactVersion edge cases by @timtebeek in #7305
- Fix
IndexOutOfBoundsExceptioninJavaTemplateParser.parseExpressionby @knutwannheden in #7295 - Fix Docker line continuation with CRLF line endings by @steve-aom-elliott in #7309
- Fix UpdateMavenModel using stale projectPoms for child module resolution by @timtebeek in #7310
- Fix MergeYaml Document.End fallback inserting extra blank lines by @timtebeek in #7311
- Fix URISyntaxException in MavenPomDownloader for unresolved version placeholders by @timtebeek in #7313
- Add PythonDependencyFile trait for polymorphic dependency management by @Jenson3210 in #7274
Full Changelog: v8.78.6...v8.79.0
v8.78.6
What's Changed
- Fix ChangePackage not rewriting fully qualified javadoc references by @timtebeek in #7284
- Prevent UpgradeDependencyVersion from downgrading ext property versions by @steve-aom-elliott in #7290
- Only add SCM to root POM in UpdateScmFromGitOrigin by @timtebeek in #7287
- Fix parsing of type-use annotations on qualified types in array declarations by @steve-aom-elliott in #7289
- Fix MergeYaml wildcard, flow-style sequence, and comment handling by @timtebeek in #7291
- Extend MethodMatcher's ability to make structural matches when partial type information is available by @sambsnyd in #7292
- Fix CsvDataTableStore failing to read rows with cells larger than 4096 characters. by @sambsnyd in #7293
Full Changelog: v8.78.5...v8.78.6
8.78.5
What's Changed
- AddProperty add options for controlling where new properties get inserted by @sambsnyd in #7275
- When the
CachingMavenRecipeBundleResolveris closed, ensure that all cachedMavenRecipeBundleResolverinstances are closed as well by @shanman190 in #7277 - Fix CsvDataTableStore.getRows() returning String[] where other implementation returned typed objects by @sambsnyd in #7279
- Roll back localRefs on failed GetObject exchange by @kmccarp in #6932
- Support changing from a constructor to a factory method in ChangeMethodTargetToStatic by @timtebeek in #7281
- Fix ChangePropertyKey whitespace quirks when moving subproperties by @timtebeek in #7283
Full Changelog: v8.78.4...v8.78.5
8.78.4
What's Changed
- Fix Javadoc @see field reference resolution by @timtebeek in #7257
- Go: load recipe modules as plugins for real execution by @jkschneider in #7263
- Go: automatically visit tree nodes in RPC queues with no onChange callback by @greg-at-moderne in #7264
- Go:
StatementExpressionregistered as a type by @greg-at-moderne in #7265 - Go: Fix parsing of comments in empty argument list by @greg-at-moderne in #7267
- Exclude the version txt file from the build cache by @greg-at-moderne in #7266
- Go: Fix type cast in RPC, literals are not always primitive in Go by @greg-at-moderne in #7268
- Go: Run go native tests as part of the build by @greg-at-moderne in #7270
- Go: fix more cases of comments parsing in empty enumerations by @greg-at-moderne in #7269
- Declare Gradle inputs to tasks for rewrite-csharp and rewrite-python by @greg-at-moderne in #7272
- Go: Fix RPC serialization for varargs by @greg-at-moderne in #7271
- Go: Fix parsing of a trailing comma in argument list by @greg-at-moderne in #7273
Full Changelog: v8.78.3...v8.78.4
v8.78.3
What's Changed
- Fix StackOverflowError from self-referential supertype in Python type mapping by @knutwannheden in #7240
- Go: Fix parsing of multi-value initialization by @greg-at-moderne in #7244
- Limit name-based repo duplicate check to URL-less repositories by @pstreef in #7245
- Go: add
PointerTypeby @greg-at-moderne in #7246 - Scala parser: map def declarations to J.MethodDeclaration by @jkschneider in #7248
- Fix
ChangeTypeUnsupportedOperationExceptionon JSFunctionCallnodes by @knutwannheden in #7239 - Go: fix functions type mapping by @greg-at-moderne in #7247
- Go: Fixing how comments are parsed by @greg-at-moderne in #7249
- Scala parser: add try/catch/finally and match expression support by @jkschneider in #7252
- Fix Go RPC protocol and recipe installer for CLI integration by @jkschneider in #7254
- Defer .NET SDK validation to execution phase by @bmuschko in #7253
- Update rewrite-scala to target Java 17 bytecode for main source by @shanman190 in #7255
- Go: override Java receiver visitors for Go-specific type mismatches by @jkschneider in #7258
- Scala parser: add try/catch/finally, match, and fix complex parameter types by @jkschneider in #7260
- Go: add StatementExpression, fix variadic params, remove receiver overrides by @jkschneider in #7261
- Implement CsvDataTableStore.getRows() so that it can read back data it has written by @sambsnyd in #7256
Full Changelog: v8.78.2...v8.78.3
8.78.2
What's Changed
- Surface actual parse error in MergeYaml via Validated API by @timtebeek in #6818
- JS: Populate declaring type on standalone function declarations by @timtebeek in #7222
- Fix RPC recipes errors being swallowed when in batch by @greg-at-moderne in #7226
- JavaScript:
upgrade-dependency-versionrecipe to fail whennpm installfails by @greg-at-moderne in #7227 - Fix duplicate gradlePluginPortal() in settings.gradle.kts by @pstreef in #7230
- Go: add GoTemplate, GoPattern, MethodMatcher, TypeUtils, and rename module by @jkschneider in #7235
- Gracefully handle malformed Maven version strings by @timtebeek in #7234
- Suppress vulnerabilities by @Jenson3210 in #7236
- Fix StackOverflow in RELEASE_PATTERN by reducing regex branch nodes by @Jenson3210 in #7231
Full Changelog: v8.78.1...v8.78.2
8.78.1
What's Changed
- Fix NumberFormatException in version comparison for versions with 6+ numeric parts by @Jenson3210 in #7207
- Scala parser: enum support, wildcard import preservation, intersection types by @jkschneider in #7203
- Fix build cache determinism for reproducible builds by @ribafish in #7173
- Fix build cache determinism for rewrite-go goBuild task by @timtebeek in #7214
- C#: Add
MSBuildProject/DotNetProjectRPC codecs andParsehandler by @knutwannheden in #7156 - Add GitIgnore utility for gitignored-and-untracked checks by @pdelagrave in #7215
- Allow null Properties to skip YAML placeholder resolution by @timtebeek in #7200
- C#: Exclude git-ignored files from SolutionParser results by @knutwannheden in #7181
- Support changing properties in Maven profiles by @MBoegers in #7031
- Add SyncGradleExtPropertiesWithBom recipe by @Jenson3210 in #6958
- C#: Add documentation comment LST infrastructure by @jkschneider in #7015
- Skip redundant property override in child when parent declares same dependency by @MBoegers in #6955
- Add recipes which sort dependency declarations in Gradle and Maven by @sambsnyd in #7217
- Fix AddProperty skipping property when child POM has relativePath by @MBoegers in #6943
- Add ParseError support to rewrite-go parser and RPC by @jkschneider in #7218
- Handle directory-style relativePath in getParentWithinProject by @kmccarp in #7223
- Python: Populate declaring type on function declarations by @timtebeek in #7221
- Rewrite encoding detection as inverted UTF-8 validator by @pstreef in #7213
- Fix parsing of dockerfiles which contain $ and escaped " characters by @sambsnyd in #7224
- Replace
ThreadLocalwith cursor-based accumulator inDeclarativeRecipeby @knutwannheden in #7225 - Use
JavaTemplate.apply()static method by @timtebeek in #7219
New Contributors
Full Changelog: v8.78.0...v8.78.1
8.78.0
What's Changed
- Support Checkstyle ImportOrder option="inflow" for mixed static/non-static imports by @timtebeek in #7180
- Improve Scala parser for Scala 2 and 3 compatibility by @jkschneider in #7197
- Support same-column sequence indentation in YAML by @Jenson3210 in #7135
- JavaScript: setting RPC metrics file in debugging mode too by @greg-at-moderne in #7201
- Add Go language support module (rewrite-go) by @jkschneider in #7116
- Fix slow Lombok initialization caused by ShadowClassLoader scanning entire classpath by @knutwannheden in #7205
- C#: Fix
InvalidCastExceptioninCSharpPrinterfor expression-bodied methods by @knutwannheden in #7206 - Fix AddProperty duplicating self-closing XML property tags by @timtebeek in #7209
- Fix multi-line Dockerfile COPY with line continuations by @timtebeek in #7210
- Fix context-sensitive template replacement for standalone expression statements by @timtebeek in #7211
Full Changelog: v8.77.2...v8.78.0