github openrewrite/rewrite v7.20.0
7.20.0

latest releases: v8.62.1, v8.62.0, v8.61.3...
3 years ago

Enhancements

  • New Recipe: Add managed dependency #1286 #1436
  • New Recipe: Find literals matching a pattern. #1449
  • New Recipe: Extract interface #1460
  • New Recipe: List potentially dead code by declared method #1471
  • Added condition to filter by the provided scope in DependencyInsight #1435
  • Add method declaration sorting block coordinate #1424
  • SetDefaultEstimatedEffortPerOccurrence #1425
  • Alter XML attribute #1426
  • Expand ChangeType to support wildcard matches on subpackage types #1431
  • FindAnnotations support for wildcard matching on annotation type name #1446
  • TreeObserver to provide an event-driven model for responding to AST mutations #1464
  • Expand FindTypes to support subpackage wildcard matching. #1466
  • Better support for generics in Groovy parsing 3d0bd45
  • GroovyParser support for parsing inner classes 68b54b1
  • Beginning of dataflow analysis edges LastRead, LastWrite, GuardedBy #1472
  • Better Protobuf support de3ff63
  • Support ChangePackage recursive sub-packages visit #1476
  • Improved XML autoformat #1477
  • Consider dependency management when removing exclusions #1490

Fixes

  • Fix for new lines without '*' ending with CRLF in Javadoc Visitors #1413
  • Add trailing whitespace to the body in JavaDocVisitor #1415
  • Add whitespace before equals of attributes in JavaDoc #1416
  • Prevent infinite recursion in JsonPathMatcher #1428
  • Rename ChangeXmlAttribute to ChangeTagAttribute bcf6abc
  • Wildcard matching on inner classes for UsesType, FindTypes, and MethodMatcher 518f104
  • Bumped Gradle wrapper from 7.3.3 to 7.4 #1433
  • Empty XML tags can trip up XML deserialization #1427
  • Correctly interpret layered managed dependencies #1422 74e86bf
  • Updated MethodSignatureParserBaseVisitor#visitClassNameOrInterface to work with wildcard matching in StringUtils.aspectjNameToPattern 74e86bf
  • Updated DependencyInsight to use findDependency(tag, scope) #1435 #1418
  • Fix generation of inner class MethodMatcher from method declaration c7db34b
  • Prevent infinite recursion on generic recursive intersections in JavaReflectionTypeSignatureBuilder #1439
  • AddDependency adds dependency if it already exists transitively #1443
  • Updated Hcl Space to add hash style comments #1441
  • Only compare the Xml.Tags in InsertDependencyComparator #1444
  • Update ResolvedPom to handle null property values. #1450
  • Pin com.puppycrawl.tools:checkstyle to 9.+ #1452
  • Resolve property placeholders in classifier and type #1454
  • Removed redundant maybeUpdateModel in ChangeParentPom. maybeUpdateModel will be called in visitDocument. 4444886
  • Update ManageDependencies to use isManagedDependencyTag(..) vs isDependencyTag(..) when checking managed-dependency tags. f9ae7bc
  • Fix javac and java reflection type mapping for constructors and super-type of enums #1453
  • ExplicitLambdaArgumentTypes handles unknown type #1459
  • Implementation of getEstimatedEffortPerOccurrence on CompositeRecipe #1461
  • Fix profile activation logic when using jdk #1462 #1463
  • UpgradeDependencyVersion should also update managed-dependency versions when the version is not a property #1468
  • DeimplementInterface and JavaType.Method#isInheritedFrom(fqn) #1470
  • Prevent NPE and IOB exceptions when merging YAML into empty documents. #1469
  • Use comparator to find the best location for XML tag #1473 #1474
  • Pin okhttp3:okhttp to 4.9.3 while waiting on 5.x #1479
  • Skip proto3 files #1480
  • Prevent local variables initialized in J.WhileLoop from being marked as final by narrowing the scope to only local variables having a non-null initializer #1478
  • Allow an empty profile activation element #1487
  • Updated JsonPathParser and JsonPathLexer. #1485
  • Rework UpdateDependencyVersion to do no harm. #634 #1489
  • Determine branch when repository is in detached head state c121497

Thank You to Our Contributors

Full Changelog: v7.19.0...v7.20.0

Don't miss a new rewrite release

NewReleases is sending notifications on new releases.