Releases: pinterest/ktlint
Releases · pinterest/ktlint
0.39.0
Added
- Add new applyToIDEA location for IDEA 2020.1.x and above on MacOs
- Debug output: print loaded .editorconfig content
- Extract
argument-list-wrapping
rule into experimental ruleset - Split
annotation-spacing
into separate experimental rule
Fixed
- Do not enforce raw strings opening quote to be on a separate line (#711)
- False negative with multiline type parameter list in function signature for
parameter-list-wrapping
(#680) - Alternative
.editorconfig
path is ignored on stdin input (#869) - False positive with semicolons before annotations/comments/kdoc (#825)
- Do not report when string-template expression is a keyword (#883)
- False positive for subclass imports in
no-unused-imports
(#845) - False positive for static java function imports in
no-unused-imports
(#872) - Missing signature for KtLint CLI artifact published to Github release (#895)
- Crash in annotation rule (#868)
- False-positive unused import violation (#902)
Changed
Ktlint
object internal code cleanup- Deprecate some of public methods in
Ktlint
object that should not be exposed as public api - Update Kotlin to 1.4.10 version
- Make
RuleSet
class open so it can be inherited
0.38.1
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)