All Versions
95
Latest Version
Avg Release Cycle
79 days
Latest Release
213 days ago

Changelog History
Page 4

  • v0.37.0 Changes

    June 02, 2020

    ๐Ÿš€ 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 and SpacingBetweenDeclarationsWithAnnotationsRule. 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
  • v0.36.0 Changes

    December 03, 2019

    โž• Added

    • ๐Ÿ‘• HTML reporter (#641)
    • ๐Ÿ‘• Experimental rule to lint enum entry names (#638)
    • ๐Ÿ‘• @Suppress("RemoveCurlyBracesFromTemplate") now respected (#263)

    โฌ†๏ธ Upgraded

    • ๐Ÿ‘• Gradle version to 5.6.2 (#616)
    • ๐Ÿ‘• Kotlin to 1.3.60 (#658)

    ๐Ÿ›  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)
  • v0.35.0 Changes

    October 12, 2019

    โž• 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; use applyToIDEA subcommand instead (#554)
    • ๐Ÿ‘• --apply-to-idea-project flag; use applyToIDEAProject 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.

    โœ‚ Removed

    • ๐Ÿ‘Œ Support for loading 3rd party rulesets via Maven (#566)

    โฌ†๏ธ Upgraded

    • ๐Ÿ‘• Kotlin version to 1.3.50 (#565) (#611)

    ๐Ÿ›  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)
  • v0.34.2 Changes

    July 23, 2019

    ๐Ÿ›  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

    • ๐Ÿ‘• Regression with --stdin flag for printAST command (#528)
    • ๐Ÿ‘• Regressions with NoUnusedImports rule (#531, #526)
      • Note: this re-introduces #405
    • ๐Ÿ‘• Indentation for enums with multi-line initializers (#518)
  • v0.34.1

    July 17, 2019
  • v0.34.0 Changes

    July 15, 2019

    โž• 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; use installGitPreCommitHook subcommand instead (#487)
    • ๐Ÿ‘• --print-ast flag; use printAST subcommand instead (#500)

    โœ‚ Removed

    • ๐Ÿ‘Œ Support for --ruleset-repository and --ruleset-update flags

    ๐Ÿ›  Fixed

    • ๐Ÿ‘• import-ordering will now refuse to format import lists that contain top-level comments (#408)
    • ๐Ÿ‘• no-unused-imports reporting false negatives or false positives in some cases (#405) and (#506)
    • ๐Ÿ‘• experimental:indent incorrectly formatting a lambda's closing brace (#479)
  • v0.33.0 Changes

    May 28, 2019

    โž• 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.

    ๐Ÿ›  Fixed

    • ๐Ÿ‘• Spec file parsing is now platform-agnostic (#365)
    • ๐Ÿ‘• Unnecessary newline after -> in some cases (#403)
    • ๐Ÿšš SpacingAroundCommaRule will no longer move code into comments
    • ๐Ÿ‘• Made newlines after = less aggressive (#368) (#380)
    • ๐Ÿ‘• Erroneous newline when parameter comments are used (#433)
  • v0.32.0 Changes

    April 22, 2019

    ๐Ÿš€ Note: This release will not be updated in the homebrew-ktlint tap; we will be opening a PR to make ktlint part of the core Homebrew formulae.

    โž• Added

    • ๐Ÿ‘• experimental/import-ordering rule (#189).
      ๐Ÿ‘• Use ktlint --experimental to enabled.
    • ๐Ÿ‘Œ Support for Kotlin 1.3.30
    • ๐Ÿ— Build now compatible with jitpack

    ๐Ÿ›  Fixed

    • ๐Ÿ‘• Incorrectly flagging a missing newline for functions with no parameters (#327).
    • ๐Ÿ‘• Semicolons now allowed in KDocs (#362).
    • ๐Ÿ‘• Spaces now disallowed after super (#369).
    • ๐Ÿ‘• Annotations in function parameters now checked for indentation (#374]

    ๐Ÿ”„ Changed

    • ๐Ÿ“ฆ Code now lives in com.pinterest package
    • groupId now com.pinterest
    • ๐Ÿ‘• Custom ruleset META-INF.services file must be renamed to com.pinterest.ktlint.core.RuleSetProvider
  • v0.31.0 Changes

    April 16, 2019

    โž• Added

    • ๐Ÿ‘• dot-spacing rule (#293).
    • ๐Ÿ‘• experimental/indent rule (#338).
      Use ktlint --experimental to enable.

    ๐Ÿ›  Fixed

    • Spacing check around < & > operators.

    ๐Ÿ”„ Changed

    • ๐Ÿ‘• no-multi-spaces rule (horizontal alignment of comments is no longer allowed) (#269).
    • colon-spacing rule (: must not appear at the beginning of the line).
    • ๐Ÿ‘• package-name rule (disabled until #208 is resolved).
    • ๐Ÿ‘• --print-ast to output com.pinterest.ktlint.core.ast.ElementType.* as node.elementType, e.g. ``` $ echo 'fun f() {}' | ./ktlint/target/ktlint --print-ast --color --stdin 1: ~.psi.KtFile (FILE) 1: ~.psi.KtPackageDirective (PACKAGE_DIRECTIVE) "" 1: ~.psi.KtImportList (IMPORT_LIST) "" 1: ~.psi.KtScript (SCRIPT) 1: ~.psi.KtBlockExpression (BLOCK) 1: ~.psi.KtNamedFunction (FUN) 1: ~.c.i.p.impl.source.tree.LeafPsiElement (FUN_KEYWORD) "fun" 1: ~.c.i.p.impl.source.tree.PsiWhiteSpaceImpl (WHITE_SPACE) " " 1: ~.c.i.p.impl.source.tree.LeafPsiElement (IDENTIFIER) "f" 1: ~.psi.KtParameterList (VALUE_PARAMETER_LIST) 1: ~.c.i.p.impl.source.tree.LeafPsiElement (LPAR) "(" 1: ~.c.i.p.impl.source.tree.LeafPsiElement (RPAR) ")" 1: ~.c.i.p.impl.source.tree.PsiWhiteSpaceImpl (WHITE_SPACE) " " 1: ~.psi.KtBlockExpression (BLOCK) 1: ~.c.i.p.impl.source.tree.LeafPsiElement (LBRACE) "{" 1: ~.c.i.p.impl.source.tree.LeafPsiElement (RBRACE) "}" 1: ~.c.i.p.impl.source.tree.PsiWhiteSpaceImpl (WHITE_SPACE) "\n"

    format: <node.psi::class> () "" legend: ~ = org.jetbrains.kotlin, c.i.p = com.intellij.psi

    
    - `kotlin-compiler` version to 1.3.21 (from 1.3.20).
    
    ### โœ‚ Removed 
    - ๐Ÿ‘• Dependency on JCenter ([#349](https://github.com/shyiko/ktlint/issues/349)).
    
  • v0.31.0-SNAPSHOT Changes

    April 16, 2019

    ๐Ÿš€ Snapshot release which includes Kotlin 1.3.30 support.