Skip to content

v2.0.0 (pmd7-release)

Latest
Compare
Choose a tag to compare
@jborgers jborgers released this 20 Feb 12:44
89f71f4

What's Changed

  • All Java rules have been migrated to PMD 7, the pmd7 branch is now the default branch;
  • Five new Java rules are added;
  • Many Java rules have been improved.

New rules

PR's in this release

  • AvoidXPathAPIUsage Kotlin rule by @jborgers in #311
  • Pmd7 upgrade 7.2.0 by @jborgers in #317
  • Migrate java rules to pmd 7.x.x #309: by @jborgers in #327
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 1: Avoid… by @stokpop in #329
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 4: Avoid… by @stokpop in #332
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 5: Limit… by @stokpop in #333
  • Migrate java rules to pmd 7.x.x #309: common, AvoidExposingMutableRec… by @jborgers in #339
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 3: AvoidConcatInAppend by @stokpop in #331
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 6: LetFieldsMeetSerializable by @stokpop in #334
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 7: LimitStatementsInLambdas by @stokpop in #335
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 8: LimitNestingInLambdas by @stokpop in #336
  • Migrate java rules to pmd 7.x.x #309: common_std rule number 9: AvoidForEachInStreams by @stokpop in #337
  • Migrate java rules to pmd 7.x.x #309: common, ImproperVariableName. A… by @jborgers in #338
  • Pmd7 upgrade 7.2.0 avoid calendar date creation by @stokpop in #342
  • Pmd7 upgrade 7.2.0 common from 34 by @jborgers in #343
  • Pmd7 upgrade 7.2.0 concurrent rules set 01 by @stokpop in #344
  • Pmd7 upgrade 7.2.0 common set2 by @jborgers in #345
  • Migrate java rules to pmd 7.x.x #309: DefineConcurrencyForJavaEESingl… by @jborgers in #346
  • Pmd7 upgrade 7.2.0 remoting set1 by @jborgers in #347
  • Pmd7 upgrade 7.2.0 concurrent rules set 02 by @stokpop in #350
  • Pmd7 upgrade 7.2.0 remoting set2 by @jborgers in #351
  • Migrate java rules to pmd 7.x.x #309: remoting - fixed issues from PR… by @jborgers in #354
  • Pmd7 upgrade 7.2.0 concurrent rules set 03 by @stokpop in #355
  • Pmd7 upgrade 7.2.0 concurrent rules set 03 by @stokpop in #359
  • Pmd7 upgrade 7.2.0 remoting set2 by @jborgers in #358
  • Pmd7 upgrade 7.2.0 concurrent rules set 04 by @stokpop in #360
  • Pmd7 upgrade 7.2.0 concurrent rules set 05 by @stokpop in #361
  • Pmd7 upgrade 7.2.0 remoting set3 by @jborgers in #365
  • Migrate java rules to pmd 7.x.x #309: remoting - AvoidHttpHostOneArgu… by @jborgers in #368
  • Pmd7 upgrade 7.2.0 spring set 01 by @stokpop in #371
  • Pmd7 upgrade 7.2.0 spring set 02 by @stokpop in #374
  • Pmd7 upgrade 7.2.0 sql set 1 by @jborgers in #376
  • Pmd7 upgrade 7.2.0 sql set 2 by @jborgers in #379
  • Pmd7 upgrade 7.2.0 by @jborgers in #380
  • merged all tags from main (pmd6) to pmd7 by @stokpop in #382
  • Pmd7 changes from master set 1 by @jborgers in #381
  • Fix for pmd7 AvoidConcatInLoop false positive #383 by @jborgers in #384
  • pmd7 fix request #385 AvoidUnguardedAssignmentToNonFinalFieldsInObjectsUsingSynchronized by @stokpop in #386
  • Fix for pmd7 OptimizeMapOrSetForEnum false positive and missed case #387 by @jborgers in #388
  • Fix for pmd7 AvoidUnguardedMutableInheritedFieldsInSharedObjects fals… by @jborgers in #394
  • pmd7 fix request #389 fix + added unit test to check combination of @ConfigurationProperties and Lombok @Setter by @stokpop in #390
  • Fix for pmd7 AvoidHardcodedConnectionConfig false positive #398 by @jborgers in #399
  • Fix request for pmd7 AvoidUserDataInSharedObjects false positive #396 by @jborgers in #397
  • Fix for pmd7 AvoidModifyingObjectMapper false positive #400 by @jborgers in #401
  • Fix: pmd7 HttpClientBuilderWithoutTimeouts false positive #402 by @jborgers in #403
  • Fix: pmd7 AvoidMutableStaticFields false positive #405 by @jborgers in #406
  • Pmd7 fix request for issue #395 *LogArgument(s) rules do not work with @slf4j tag by @stokpop in #404
  • Fix: pmd7 AvoidForEachInStreams false positives #407, and #341 and #410 by @jborgers in #409
  • pmd7 fix request #411 LetFieldsMeetSerializable double hits by @stokpop in #412
  • Fix Request for UnconditionalOperationOnLogArgument: Spurious violations on chained operations #415 by @jborgers in #416
  • Fix variable matching in constructor assignment expressions by @jborgers in #418
  • Fix for MissingEqualsAndHashCodeWithGetterSetter: spurious violations #419 by @jborgers in #420
  • Fix for NonComparableMapKeys: false positives for boxed primitives #421 by @jborgers in #422
  • Change in the description of the ruleset from 'performance' to 'responsible' by @jborgers in #423
  • Fix for AvoidDiscardingHttpClientConfig - false positive #425 by @jborgers in #426
  • Fix for AvoidUnnecessaryStringBuilderCreation: false positive for no… by @jborgers in #428
  • Update AvoidParallelStreamWithCommonPool description and tags sustainability-low to medium by @jborgers in #429
  • Fix: false positive in AvoidUnconditionalBuiltLogStrings #430 by @jborgers in #431
  • Fix: AvoidUnnecessaryStringBuilderCreation spurious violations #433 by @jborgers in #435
  • Fix: AvoidMultipleConcatStatements spurious violations and missing cases #434 by @jborgers in #436
  • Fix: overlap between ImplementEqualsHashCodeOnValueObjects and MissingEqualsHashCodeWithGetterSetter #432 by @jborgers in #437
  • Fix: ImplementEqualsHashCodeOnValueObjects has false positives #438 by @jborgers in #443
  • New Rule: AvoidMutableCollectionInParallelStreamForEach #408 by @jborgers in #439
  • Fix : false positive in HashCodeOnlyCallsSuper #440 by @jborgers in #441
  • Fix Request: false positive in UseClearKeyGeneratorName #446 by @jborgers in #448
  • Fix: false positive in NotProperlySynchronizedOnFieldWhileUsingGuardedBy #442 by @jborgers in #449
  • Fix: false positive in BufferFilesNewStream #456 by @jborgers in #457
  • readme update by @jborgers in #453
  • Fix: correction of false positive in BufferFilesNewStream #456 by @jborgers in #458
  • False positive in AvoidObjectMapperAsField #370 by @jborgers in #459
  • pmd7 fix request #450 - avoid abundant hits AvoidXMLGregorianCalendar by @stokpop in #460
  • New rule: AvoidUnclearHttpRouteSecurity #364 by @jborgers in #464
  • Fix: UnconditionalOperationOnLogArgument (and 2 other log rules) false positive #455 - exclude private logXX method which are only called conditionally by @jborgers in #465
  • New Rule: AvoidSideEffectsInStreams #461 by @jborgers in #466
  • Fix Request: Documentation links point to master, should be pmd7 branch #471 by @jborgers in #472
  • pmd7 fix request #470 - TreeSet or TreeMap with Comparator constructor are fine by @stokpop in #477
  • Fix Request: false positive in MDCPutWithoutRemove - doFinally #326 - put in a called method #473 by @jborgers in #479
  • New Rule: AvoidInfiniteRecursion #478 by @jborgers in #481
  • Pmd7 Fix request: false postive UnconditionalOperationOnLogArgument #468 by @stokpop in #482
  • Fix : false positive for HashCodeOnlyCallsSuper -- not when equals also calls only super #483 by @jborgers in #486
  • pmd7: fix example formatting (spacing) by @stokpop in #487
  • Fix : false positives for AvoidInfiniteRecursion #484 by @jborgers in #485
  • Additional false positive fixed : false positives for AvoidInfiniteRecursion #484 #485 by @jborgers in #488
  • issue #484 additional false positive on this.attribute by @jborgers in #489
  • Fix: AvoidInfiniteRecursion false positives, call with same number of parameters #490 by @jborgers in #491
  • pmd7 fix request #413 added tests, is already fixed by checking for append in code block by @stokpop in #495
  • Fix: AvoidUnguardedAssignmentToNonFinalFieldsInSharedObjects - static inner class of @component #492 by @jborgers in #494
  • Fix: AvoidUnguardedMutableInheritedFieldsInSharedObjects false positive for lambda #496 by @jborgers in #497
  • Fix: AvoidInfiniteRecursion false positive for same number of params, other types #498 by @jborgers in #504
  • Fix: AvoidInfiniteRecursion - this.field false positive #506 by @jborgers in #508
  • Fix: AvoidUnguardedMutableInheretedFieldsInSharedObjects for for-each-loop variable #509 by @jborgers in #510
  • Fix: FieldOfHashCodeMissingInEquals false positive cached hash code #503 by @jborgers in #511
  • Fix request: AvoidInfiniteRecursion false positive other types in method call #507 by @jborgers in #512
  • Fix: AvoidUnguardedMutableInheritedFieldsInSharedObjects false positive in for/switch/... blocks #502 by @jborgers in #513
  • Fix: AvoidIncrementOrDecrementForVolatileField false positive on "not" #500 by @jborgers in #514
  • Fix: AvoidParallelFlux missed case #516 by @jborgers in #517
  • Fix: MDCPutWithoutRemove false positive #518 by @jborgers in #519
  • Bump org.springframework:spring-webmvc from 6.1.13 to 6.1.14 by @dependabot in #499
  • Fix: AvoidInfiniteRecursion false positive and undetected List.of #521 by @jborgers in #524
  • Fix: false positive of UnconditionalOperationOnLogArgument #522 by @jborgers in #523
  • Fix: false positives with MissingEqualsAndHashCodeWithGetterSetter #528 by @jborgers in #529
  • Fix: False positive in AvoidForEachInStream #530 by @jborgers in #531
  • pmd7-Issue532 false positives with LimitStatementsInLambda by @jborgers in #533
  • Fix: Missed cases for AvoidMutableLists and no dealing with Lombok #525 by @jborgers in #526
  • Fix: AvoidUnguardedAssignmentToNonFinalFieldsInSharedObjects false positive with static class #520 by @jborgers in #536
  • Fix: AvoidSpringMVCMemoryLeaks false positive on non MVC code #501 by @jborgers in #535
  • Fix : BufferFilesNewStream rule support for BufferedReader and BufferedWriter, and false positives with methods using buffers #539 by @jborgers in #541
  • Rule request: UnresolvedDependencies by @jborgers in #543
  • pmd7-Issue544 by @jborgers in #545
  • Fix 8th step: false pos: @slf4j on enum and record. False positives and missed cases in UnresolvedType #544 by @jborgers in #546

Full Changelog: v1.9.0...v2.0.0