Releases: pinterest/ktlint
Releases · pinterest/ktlint
0.38.0
New release with Kotlin 1.4.0 support and several enhancements and bugfixes.
Added
- Experimental SpacingAroundAngleBracketsRule (#769)
- Checksum generation for executable Jar (#695)
- Enable Gradle dependency verification
parameter-list-wrapping
rule now also considers function arguments while wrapping (#620)- Publish snapshots built against kotlin development versions
- Initial support for tab-based indentation (#128)
Fixed
- Safe-called wrapped trailing lambdas indented correctly (#776)
provideDelegate
imports are not marked as unused anymore (#669)- Set continuation indent to 4 in IDE integration codestyle (#775)
- No empty lines between annotation and annotated target (#688)
- Unused imports reported correctly (#526) (#405)
- No false empty lines inserted in multiline if-else block (#793)
- No-wildcard-imports properly handles custom infix function with asterisk (#799)
- Do not require else to be in the same line of a right brace if the right brace is not part of the if statement (#756)
- Brace-less if-else bodies starting with parens indented correctly (#829)
- If-condition with multiline call expression inside indented correctly (#796)
Changed
- Update Gradle to 6.6 version
- Update ec4j to 0.2.2 version. Now it should report path to
.editorconfig
file on failed parsing
and allow empty.editorconfig
files. - Update Kotlin to 1.4.0 version (#830)
0.38.0 Alpha 1
Alpha release built against Kotlin 1.4.
0.37.2
0.37.1
0.37.0
Thank you to Tapchicoma and romtsn for all their hard work on this release!
Added
- Gradle wrapper validation (#684)
- Experimental
SpacingAroundDoubleColon
rule (#722) - Experimental
SpacingBetweenDeclarationsWithCommentsRule
andSpacingBetweenDeclarationsWithAnnotationsRule
. Fixes (#721) kotlin_imports_layout
config for.editorconfig
file so that import ordering is configurable. Fixes (#527)
Changed
- Kotlin was updated to 1.3.70 version
- Loading properties from
.editorconfig
was fully delegated to ec4j library. This fixes ability to override
properties for specific files/directories (#742) - Promote experimental "indent" rule to standard one, old standard "indent" rule is removed
- Functions to calculate line/column are now public so they can be used by 3rd party tools (#725)
AnnotationRule
now handles file annotations as well (#714)
Fixed
- Ignore keywords in KDoc comments (#671)
- Allow multiple spaces in KDoc comments (#706)
- Trailing comment no longer reported as incorrect indentation (#710)
- Annotated function types no longer reported as an error (#737)
FinalNewlineRule
no longer reports error for empty files (#723)- EOL comments will no longer cause
AnnotationRule
to report an error (#736) - Formatter will no longer break class declaration with trailing comment (#728)
- Formatting for single line if/else statements (#174)
- Exception in
NoLineBreakBeforeAssignmentRule
(#693)
Removed
- Removed Maven; builds all run under Gradle (#445)
- Old standard
IndentRule
0.36.0
Added
- HTML reporter (#641)
- Experimental rule to lint enum entry names (#638)
@Suppress("RemoveCurlyBracesFromTemplate")
now respected (#263)
Upgraded
Fixed
.git
directory now discovered instead of hardcoded (#623)- Several bugs with the experimental annotation rule (#628) (#642) (#654) (#624)
- Allow newline after lambda return type (#643)
- Allow empty first line in a function that returns an anonymous object (#655)
- Indentation with lambda argument (#627)
- ktlint can now lint UTF-8 files with BOM (#630
- Indentation with newline before return type (#663)
- Build/tests on Windows (#640)
- Allow whitespace after
(
followed by a comment (#664)
0.35.0
Added
- Support for specifying color for output via
--color-name
command line flag. (#585) - Support for custom rulesets and providers on Java 9+ (#573)
Deprecated
--apply-to-idea
flag; useapplyToIDEA
subcommand instead (#554)--apply-to-idea-project
flag; useapplyToIDEAProject
subcommand instead (#593)0.0.0-SNAPSHOT
builds; snapshot builds are now versioned, e.g. 0.35.0-SNAPSHOT (#588)- Note: When using the new snapshot builds, you may need to add an explicit dependency on
kotlin-compiler-embeddable
to your ruleset project.
- Note: When using the new snapshot builds, you may need to add an explicit dependency on
Removed
- Support for loading 3rd party rulesets via Maven (#566)
Upgraded
Fixed
- Bugs with spacing in experimental
AnnotationRule
(#552) (#601 - Brackets would be removed from empty companion object (#600)
- Bugs with experimental
IndentationRule
(#597) (#599) - Erroneous space between
}
and]
(#596) - Spacing around multiplication sign in lambdas (#598)
--version
output with gradle-built JAR (#613)
0.34.2
Minor bugfix release for 0.34.0. (Note: 0.34.1 deprecated/deleted due to regression in disabled_flags .editorconfig support.)
Added
- Support for globally disabling rules via
--disabled_rules
command line flag. (#534)
Fixed
0.34.0
Added
- Support for Kotlin 1.3.41
- Support for globally disabling rules via custom
disabled_rules
property in.editorconfig
(#503) experimental:no-empty-first-line-in-method-block
(#474)- Unit tests for ruleset providers
Upgraded
- AssertJ from 3.9.0 to 3.12.2 (#520)
Enabled
- Final newline by default (#446)
no-wildcard-import
(Re-enabled after temporarily disabling in 0.33.0)experimental:annotation
(#509)experimental:multiline-if-else
(no autocorrection)experimental:package-name
(currently only disallows underscores in package names)
Deprecated
MavenDependencyResolver
. Scheduled to be removed in 0.35.0 ([#468])(#468)--install-git-pre-commit-hook
flag; useinstallGitPreCommitHook
subcommand instead (#487)--print-ast
flag; useprintAST
subcommand instead (#500)
Removed
- Support for
--ruleset-repository
and--ruleset-update
flags
Fixed
0.33.0
Added
- Support for Kotlin 1.3.31
Disabled
- No wildcard imports rule (#48). Developers wishing to still enforce this rule should add the code into a custom ruleset.