Skip to content

Releases: pinterest/ktlint

1.5.0

04 Dec 19:38
b44a53f
Compare
Choose a tag to compare

The release of Kotlin 2.1 is the primary reason for publishing this release earlier than planned. Because of the removal of some language elements in Kotlin 2.1, the embedded Kotlin compiler in KtLint blocked Kotlinter users from upgrading to Kotlin 2.1.

🆕 Features

  • Add missing space between fun keyword and identifier when latter is wrapped between backticks - #2890, by @paul-dingemans

  • Add configuration setting for constant names in property-naming rule - #2893, by @paul-dingemans

  • Allow backing property to be defined in the companion object (backing-property-naming) - #2895, by @paul-dingemans

🔧 Fixes

  • Ignore multi dollar string interpolation prefix in string-template-indent rule - #2888, by @paul-dingemans

  • Wrap the expression body in case .editorconfig property ktlint_function_signature_body_expression_wrapping is set to always - #2873, by @paul-dingemans

  • Fix false positive when empty parameter list is in between trailing lambda's of a nested call expression - #2891, by @paul-dingemans

  • Do not wrap a context receiver in a function parameter type reference - #2892, by @paul-dingemans

  • Allow comment before parameter list in function literal (function-literal) - #2894, by @paul-dingemans

📦 Dependencies

  • chore(deps): update plugin com.gradle.develocity to v3.18.2 - #2865, by @renovate[bot]

  • chore(deps): update dependency gradle to v8.11.1 - #2875, by @renovate[bot]

  • fix(deps): update dependency io.github.hakky54:logcaptor to v2.10.0 - #2874, by @renovate[bot]

  • fix(deps): update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.1.0-rc2 - #2871, by @renovate[bot]

  • fix(deps): update dependency io.github.oshai:kotlin-logging-jvm to v7.0.3 - #2883, by @renovate[bot]

  • fix(deps): update kotlin monorepo to v2.1.0 - #2880, by @renovate[bot]

  • fix(deps): update dependency com.github.ajalt.clikt:clikt to v5.0.2 - #2886, by @renovate[bot]

  • chore(deps): update plugin org.gradle.toolchains.foojay-resolver-convention to v0.9.0 - #2887, by @renovate[bot]

  • fix(deps): update dependency dev.drewhamilton.poko:poko-gradle-plugin to v0.18.0 - #2889, by @renovate[bot]

1.4.1

05 Nov 16:45
aa6cb58
Compare
Choose a tag to compare

🔧 Fixes

  • Catch java.lang.NoSuchFieldError when looking for WHEN_ENTRY_GUARD in kotlin version 2.0.1 - #2857, by @paul-dingemans

📦 Dependencies

  • chore(deps): update plugin shadow to v8.3.5 - #2851, by @renovate[bot]
  • fix(deps): update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.1.0-rc - #2853, by @renovate[bot]

1.4.0

24 Oct 14:59
Compare
Choose a tag to compare

🆕 Features

🔧 Fixes

  • Prevent line separators to be changed from CRLF to LF - #2752, by @paul-dingemans

  • fix: don't remove arrow from lambdas that are when/if leaf nodes - #2758, by @tKe

  • Fix false positive in no-semi rule for enum class without enum entries - #2774, by @paul-dingemans

  • Prevent conflict between multiline-expression-wrapping and function-signature - #2775, by @paul-dingemans

  • Ignore max_line_length property unless max-line-length rule is enabled - #2783, by @paul-dingemans

  • Fix false positive in class-signature when EOL comment is between a class annotation and other class modifier - #2786, by @paul-dingemans

  • Fix globs ending with ** - #2787, by @paul-dingemans

  • Return exit code 1 in case violations have been found but file is unchanged - #2803, by @paul-dingemans

  • Ignore missing whitespace after trailing comma in single line parameter value list - #2806, by @paul-dingemans

  • Remove HEADER_KEYWORD & IMPL_KEYWORD - #2810, by @3flex

  • Function signature rule ignores context receiver when on separate line - #2814, by @paul-dingemans

  • Do not remove imports for which the fully qualified path is identical to the package name - #2822, by @paul-dingemans

  • Fix indentation of a multiline parameter list inside a function literal for code style ktlint_official - #2823, by @paul-dingemans

  • Do not insert a trailing comma in a multiline when-entry containing a guard - #2825, by @paul-dingemans

  • Fix wrapping of expression body when max_line_length not set - #2833, by @paul-dingemans

📦 Dependencies

  • Update dependency io.github.oshai:kotlin-logging-jvm to v7 - #2701, by @renovate[bot]

  • Update dependency org.assertj:assertj-core to v3.26.3 - #2738, by @renovate[bot]

  • Update mikepenz/release-changelog-builder-action action to v5 - #2756, by @renovate[bot]

  • chore(deps): update plugin kotlinx-binary-compatibiltiy-validator to v0.16.3 - #2759, by @renovate[bot]

  • fix(deps): update dependency org.slf4j:slf4j-simple to v2.0.16 - #2764, by @renovate[bot]

  • Migrate to com.gradleup.shadow - #2763, by @Goooler

  • chore(deps): update gradle/actions action to v4 - #2760, by @renovate[bot]

  • chore(deps): update plugin com.gradle.develocity to v3.18.1 - #2792, by @renovate[bot]

  • chore(deps): update dependency gradle to v8.10.2 - #2812, by @renovate[bot]

  • chore(deps): update plugin shadow to v8.3.3 - #2820, by @renovate[bot]

  • fix(deps): update dependency com.github.ajalt.clikt:clikt to v5.0.1 - #2828, by @renovate[bot]

  • chore(deps): update kotlin monorepo to v2.0.21 - #2831, by @renovate[bot]

  • fix(deps): update dependency org.ec4j.core:ec4j-core to v1.1.0 - #2832, by @renovate[bot]

  • fix(deps): update dependency org.jetbrains.kotlin:kotlin-gradle-plugin to v2.1.0-beta2 - #2834, by @renovate[bot]

  • fix(deps): update dependency dev.drewhamilton.poko:poko-gradle-plugin to v0.17.2 - #2837, by @renovate[bot]

  • fix(deps): update dependency org.junit.jupiter:junit-jupiter to v5.11.3 - #2840, by @renovate[bot]

  • chore(deps): update actions/checkout digest to 11bd719 - #2841, by @renovate[bot]

1.3.1

02 Jul 15:46
49f376b
Compare
Choose a tag to compare

🔧 Fixes

  • Add link for backing-property-naming, correct binary-expression-wrapping - #2704, by @rsmith20
  • Do not insert a whitespace element as first or last child inside a composite element - #2715, by @paul-dingemans
  • Do not rewrite a class to a single line signature in case it contains an EOL comment - #2716, by @paul-dingemans
  • Fix false positive when anonymous function is used as value argument - #2718, by @paul-dingemans
  • Fix suppression handling when 'formatter:on' not properly specified - #2719, by @paul-dingemans
  • Fix false positive when primary constructor has no arguments and a secondary constructor exists - #2717, by @paul-dingemans
  • Ignore suppressions for no-unused-imports rule - #2720, by @paul-dingemans
  • Ignore suppressions in rule no-unused-imports - #2725, by @paul-dingemans
  • Fix false alert Format was not able to resolve all violations which (theoretically) can be autocorrected - #2727, by @paul-dingemans
  • Fix "unset" value for property ktlint_chain_method_rule_force_multiline_when_chain_operator_count_greater_or_equal_than - #2728, by @paul-dingemans

📦 Dependencies

  • Update dependency gradle to v8.8 - #2680, by @renovate[bot]
  • Update plugin com.gradle.develocity to v3.17.5 - #2697, by @renovate[bot]
  • Update actions/checkout digest to 692973e - #2699, by @renovate[bot]
  • Update dependency io.github.hakky54:logcaptor to v2.9.3 - #2707, by @renovate[bot]
  • Update dependency org.junit.jupiter:junit-jupiter to v5.10.3 - #2721, by @renovate[bot]

💬 Other

1.3.0

04 Jun 18:19
e61cbbc
Compare
Choose a tag to compare

🆕 Features

🔧 Fixes

📦 Dependencies

  • Update dependency org.jetbrains.dokka:dokka-gradle-plugin to v1.9.20 - #2590, by @renovate[bot]

  • Update softprops/action-gh-release action to v2 - #2600, by @renovate[bot]

  • Update dependency io.github.detekt.sarif4k:sarif4k to v0.6.0 - #2605, by @renovate[bot]

  • Update dependency gradle to v8.7 - #2616, by @renovate[bot]

  • Migrate to develocity plugin - #2625, by @Goooler

  • Update dependency org.slf4j:slf4j-simple to v2.0.13 - #2632, by @renovate[bot]

  • Update gradle/wrapper-validation-action action to v3 - #2633, by @renovate[bot]

  • Update dependency io.github.oshai:kotlin-logging-jvm to v6.0.9 - #2634, by @renovate[bot]

  • Update dependency com.github.ajalt.clikt:clikt to v4.4.0 - #2647, by @renovate[bot]

  • Update kotlin monorepo to v1.9.24 - #2649, by @renovate[bot]

  • Update plugin com.gradle.develocity to v3.17.4 - #2660, by @renovate[bot]

  • Update dependency dev.drewhamilton.poko:poko-gradle-plugin to v0.15.3 - #2662, by @renovate[bot]

  • Update actions/checkout digest to a5ac7e5 - #2664, by @renovate[bot]

  • Update dependency org.assertj:assertj-core to v3.26.0 - #2669, by @renovate[bot]

1.2.1

29 Feb 20:38
25924fa
Compare
Choose a tag to compare

🆕 Features

None

🔧 Fixes

1.2.0

28 Feb 17:58
ab287d9
Compare
Choose a tag to compare

🆕 Features

WARNING: The new rules have accidentally not been marked as experimental. This will be fixed in a bugfix!

  • Break dependency between string-template-indent and multiline-expression-wrapping - #2505, by @paul-dingemans

  • Allow string template to exceed max line length when it is the only element on a line - #2480, by @paul-dingemans

  • Add configuration setting for ignoring argument-list-wrapping above treshold of argument - #2481, by @paul-dingemans
    NOTE: In code style ktlint_official this threshold is unset so that arguments are always wrapped. If this impacts your code too much, you can make it backward compatible by setting .editorconfig property ktlint_argument_list_wrapping_ignore_when_parameter_count_greater_or_equal_than to value 8. For other code styles this property is initialized with value 8 and as of that backward compatible by default.

  • Ignore EOL comment that causes max_line_length to be exceeded, except in max-line-length rule - #2516, by @paul-dingemans

  • Add new rule for disallowing KDoc at non-whitelisted locations - #2548, by @paul-dingemans

  • Improve insert of suppression - #2546, by @paul-dingemans

  • Ignore modifier of backing property in android_studio code style - #2552, by @paul-dingemans

  • Add rule to check spacing around square brackets 'square-brackets-spacing' - #2555, by @paul-dingemans

  • Add rule blank-line-between-when-conditions - #2564, by @paul-dingemans

🔧 Fixes

📦 Dependencies

  • chore(deps): update plugin org.gradle.toolchains.foojay-resolver-convention to v0.8.0 - #2503, by @renovate[bot]

  • fix(deps): update dependency io.github.oshai:kotlin-logging-jvm to v6 - #2440, by @renovate[bot]

  • Replace gradle/gradle-build-action@v3 with gradle/actions/setup-gradle@v3 - #2518, by @paul-dingemans

  • chore(deps): update plugin kotlinx-binary-compatibiltiy-validator to v0.14.0 - #2522, by @renovate[bot]

  • chore(deps): update gradle/wrapper-validation-action action to v2 - #2523, by @renovate[bot]

  • chore(deps): update ffurrer2/extract-release-notes action to v2 - #2515, by @renovate[bot]

  • chore(deps): update dependency gradle to v8.6 - #2531, by @renovate[bot]

  • fix(deps): update dependency org.assertj:assertj-core to v3.25.3 - #2536, by @renovate[bot]

  • fix(deps): update dependency org.junit.jupiter:junit-jupiter to v5.10.2 - #2534, by @renovate[bot]

  • fix(deps): update dependency org.slf4j:slf4j-simple to v2.0.12 - #2538, by @renovate[bot]

  • fix(deps): update dependency org.codehaus.janino:janino to v3.1.12 - #2559, by @renovate[bot]

💬 Other

1.1.1

08 Jan 18:08
0b4193e
Compare
Choose a tag to compare

🆕 Features

None

🔧 Fixes

📦 Dependencies

  • fix(deps): update kotlin monorepo to v1.9.22 - #2456, by @renovate[bot]

  • chore(deps): update actions/setup-python action to v5 - #2417, by @renovate[bot]

  • fix(deps): update dependency org.slf4j:slf4j-simple to v2.0.10 - #2470, by @renovate[bot]

  • fix(deps): update dependency dev.drewhamilton.poko:poko-gradle-plugin to v0.15.2 - #2485, by @renovate[bot]

  • fix(deps): update dependency org.assertj:assertj-core to v3.25.1 - #2486, by @renovate[bot]

1.1.0

19 Dec 12:03
ebfe2d0
Compare
Choose a tag to compare

🆕 Features

🔧 Fixes

📦 Dependencies

  • fix(deps): update dependency org.jetbrains.dokka:dokka-gradle-plugin to v1.9.10 - #2323, by @renovate[bot]

  • fix(deps): update dependency org.junit.jupiter:junit-jupiter to v5.10.1 - #2342, by @renovate[bot]

  • fix(deps): update kotlin monorepo to v1.9.21 - #2374, by @renovate[bot]

  • fix(deps): update dependency org.codehaus.janino:janino to v3.1.11 - #2387, by @renovate[bot]

  • fix(deps): update dependency dev.drewhamilton.poko:poko-gradle-plugin to v0.15.1 - #2389, by @renovate[bot]

  • chore(deps): update dependency gradle to v8.5 - #2392, by @renovate[bot]

  • chore(deps): update actions/checkout digest to b4ffde6 - #2329, by @renovate[bot]

  • chore(deps): update actions/setup-java action to v4 - #2393, by @renovate[bot]

  • fix(deps): update dependency ch.qos.logback:logback-classic to v1.3.14 - #2406, by @renovate[bot]

  • fix(deps): update dependency io.github.hakky54:logcaptor to v2.9.2 - #2409, by @renovate[bot]

  • fix(deps): update dependency io.github.oshai:kotlin-logging-jvm to v5.1.4 - #2439, by @renovate[bot]

1.0.1

13 Oct 12:25
3e55920
Compare
Choose a tag to compare

🆕 Features

  • Add .editorconfig property ktlint_function_naming_ignore_when_annotated_with so that rule function-naming can be ignored based on annotations on that rule. See function-naming.

🔧 Fixes

📦 Dependencies

  • Update dependency io.github.detekt.sarif4k:sarif4k to v0.5.0 - #2277, by @renovate[bot]

  • Update dependency gradle to v8.4 - #2294, by @renovate[bot]

  • Update actions/checkout action to v4 - #2225, by @renovate[bot]

  • Update actions/checkout digest to 8ade135 - #2295, by @renovate[bot]

💬 Other