github pinterest/ktlint 1.7.0

latest release: 1.7.1
one month ago

🆕 Features

Context receiver / parameters

With upgrade to Kotlin 2.2.0, Ktlint 1.7.0 supports context parameters.

Other rule changes

  • Do not run no-unused-imports rule by default - #3039, by @paul-dingemans
    The no-unused-import rule is no longer run by default as it keeps causing problems. It will be removed in Ktlint 2.0. Until then, the rule can still be run, when enabled explicitly in .editorconfig.

  • Add experimental rule expression-operand-wrapping - #3056, by @paul-dingemans
    This rule aligns wrapping of arithmetic and logical multiline expressions. The condition-wrapping rule which did something similar for logical multiline expressions only no longer reports and fixes violations. It will be removed in Ktlint 2.0.

Other features

  • Deprecate functions in ASTNodeExtensions, and where applicable provide property accessors - #3026, by @paul-dingemans
    When using ASTNodeExtensions please replace function calls with the new (temporary) property accessors. The temporary property accessors are needed to maintain backwards compatability with Java integration. In Ktlint 2.0 the functions will be removed, and the temporary property accessors will be replaced with final names.

  • Suppress warning "sun.misc.Unsafe::objectFieldOffset" in Ktlint CLI (Java24+) - #3040, by @paul-dingemans

  • Suppress error "A restricted method in java.lang.System has been called" on Java 24 in KtLint CLI only - #3043, by @paul-dingemans

  • Remove unneeded "--add-opens=java.base/java.lang=ALL-UNNAMED" - #3044, by @paul-dingemans

🔧 Fixes

📦 Dependencies

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

  • chore(deps): update plugin com.gradle.develocity to v4.0.2 - #2996, by @renovate[bot]

  • fix(deps): update junit5 monorepo - #3005, by @renovate[bot]

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

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

  • fix(deps): update dependency org.junit.platform:junit-platform-launcher to v1.13.2 - #3021, by @renovate[bot]

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

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

  • fix(deps): update junit-framework monorepo - #3037, by @renovate[bot]

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

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

  • fix(deps): update dependency com.google.jimfs:jimfs to v1.3.1 - #3054, by @renovate[bot]

  • chore(deps): update dependency gradle to v9.0.0-rc-2 - #3055, by @renovate[bot]

💬 Other

Don't miss a new ktlint release

NewReleases is sending notifications on new releases.