detekt v1.9.0 Release Notes
Release Date: 2020-05-12 // about 5 years ago-
🔄 Changelog
- 📚 Extra documentation added to pitfalls section - #2675
- 🔧 Use configuration avoidance for withType usages - #2672
- GuardClause also matches if-with-body that contains a return - #2671
- Simplify patterns - #2668
- ✅ Include Kotlin multiplatform test folders to default exclude config - #2667
- ✂ Remove duplicate MandatoryBracesLoops rule tests - #2665
- ✂ Remove print statement in MandatoryBracesLoops - #2664
- ✂ Remove $ as a valid char in class and method names - #2662
- 🏗 Build detekt executable before publishing it - detekt#2654 - #2659
- ➕ Add style rule for mandatory braces in for loop bodies - #2658
- 🚀 Asset in release 1.8.0 is not up-to-date - #2654
- Rule: Mandatory braces for single-line for loop bodies - #2652
- 🔧 Use task configuration avoidance for detekt plugin - #2651
- ➕ Add detekt GitHub action to readme - #2650
- Don't report unused private properties in expect class - #2646
- UnusedPrivateMember: don't report parameters in expect/actual functions - #2643
- UnusedPrivateMembers on expect class - #2636
- 🔧 Include Kotlin multiplatform test folders to default exclude configuration - #2608
👀 See all issues at: 1.9.0
Previous changes from v1.8.0
-
Notable Changes
- 👍 Most rule properties now support yaml lists next to string's with comma-separated-entries.
- 🚀 Standalone
detekt
executable on GitHub release pages - 🆕 New rules:
UnnecessaryNotNullOperator
andUnnecessarySafeCall
Migration
- Formatting rules get reported now on the correct lines. The baseline file may need to be adjusted/regenerated.
- Issues concerning classes and objects are not reported at the identifier. The baseline file may need to be adjusted/regenerated.
🔄 Changelog
- 🔧 Use yaml lists in our own configuration and tests - #2623
- ⚙ Run code coverage as an own action - #2622
- 🏗 Modularize build script by introducing buildSrc module - #2621
- *>excludes allow yaml list - #2620
- Kotlin to 1.3.72 - #2619
- 🔀 Set failfast to false for pre-merge - #2618
- 📚 Update documentation - #2617
- ThrowingExceptionsWithoutMessageOrCause>exceptions allow yaml list - #2616
- SwallowedException>ignoredExceptionTypes allow yaml list - #2615
- 📦 ForbiddenPublicDataClass>ignorePackages allow yaml list - #2614
- LabeledExpression>ignoredLabels allow yaml list - #2613
- ForbiddenMethodCall>methods allow yaml list - #2612
- Generate the cli as a stand alone executable - #2607
- Report class and object violations at the identifier - #2606
- 🛠 Fix formatting line reporting - #2604
- 📚 Correct documentation/recommendation of EmptyCatchBlock rule - #2603
- Incorrect (or unclear) EmptyCatchBlock rule - #2602
- 👕 Use more lintAndCompile - #2601
- MagicNumber>ignoredNumbers allow yaml list - #2600
- ✂ Remove unnecesary symbolic link - #2598
- WildcardImport>excludeImports allow yaml list - #2596
- ForbiddenClassName>forbiddenName allow yaml list - #2595
- 🛠 Fix false positives in UndocumentedPublicProperty - #2591
- 🛠 Fix false positive in UndocumentedPublicClass - #2588
- *>Annotated allow yaml lists - #2587
- ForbiddenComment>values allow yaml list - #2585
- ExceptionRaisedInUnexpectedLocation>methodNames allow yaml list - #2584
- ComplexMethod>nestingFunctions allow yaml list - #2583
- UndocumentedPublicClass false positive for inner types - #2580
- 🆕 New Rule: UnnecessaryNotNullOperator - #2578
- 🆕 New Rule: UnnecessarySafeCall - #2574
- 🆕 New Rule: UnnecessarySafeCall - #2572
- ➕ Add ignoreAnnotated option to LongParameterList - #2570
- 🔧 Rule configuration request: Ignore based on annotations - #2563
- ✅ codecov test coverage report doesn't work correctly - #2558
- 👌 Support yaml lists in the configuration values - #2498
- Baseline ignoring MaxLineLength: on 1.0.1 - #1906
- Formatting rules are reported at wrong line (e.g. MaximumLineLength) - #1843
👀 See all issues at: 1.8.0