Skip to content

Releases: diffplug/spotless

Maven Plugin v3.2.0

22 Jan 21:02

Choose a tag to compare

Added

  • Add the ability to specify a wildcard version (*) for external formatter executables. (#2757)

Changes

  • Dramatic (~100x) performance improvement when using git ratchetFrom. (#2805)

Fixed

  • [fix] NPE due to workingTreeIterator being null for git ignored files. #911 (#2771)
  • Prevent race conditions when multiple npm-based formatters launch the server process simultaneously while sharing the same node_modules directory. (#2786)

Changes

  • Bump default ktfmt version to latest 0.59 -> 0.61. (2804)
  • Bump default ktlint version to latest 1.7.1 -> 1.8.0. (2763)
  • Bump default gherkin-utils version to latest 9.2.0 -> 10.0.0. (#2619)

Lib v4.2.0

22 Jan 20:49

Choose a tag to compare

Added

  • Add a expandWildcardImports API for java (#2679)
  • Add the ability to specify a wildcard version (*) for external formatter executables. (#2757)

Fixed

  • Prevent race conditions when multiple npm-based formatters launch the server process simultaneously while sharing the same node_modules directory. (#2786)
  • Git ratchet no longer throws an error with Git worktrees. (#2779)

Changes

  • Bump default ktfmt version to latest 0.59 -> 0.61. (2804)
  • Bump default ktlint version to latest 1.7.1 -> 1.8.0. (2763)
  • Bump default gherkin-utils version to latest 9.2.0 -> 10.0.0. (#2619)

Gradle Plugin v8.2.0

22 Jan 21:06

Choose a tag to compare

Added

  • Add a expandWildcardImports API for java (#2679)
  • Add the ability to specify a wildcard version (*) for external formatter executables. (#2757)
  • Add support for passing multiple file paths using the -PspotlessIdeHook option. (#2774)

Fixed

  • configuration cache for groovy. (#2797)
  • [fix] NPE due to workingTreeIterator being null for git ignored files. #911 (#2771)
  • Prevent race conditions when multiple npm-based formatters launch the server process simultaneously while sharing the same node_modules directory. (#2786)

Changes

  • Bump default ktfmt version to latest 0.59 -> 0.61. (2804)
  • Bump default ktlint version to latest 1.7.1 -> 1.8.0. (2763)
  • Bump default gherkin-utils version to latest 9.2.0 -> 10.0.0. (#2619)

Maven Plugin v3.1.0

18 Nov 23:33

Choose a tag to compare

Changes

  • Bump default ktfmt version to latest 0.58 -> 0.59. (#2681
  • Bump default jackson version to latest 2.20.0 -> 2.20.1. (#2730)
  • Bump default cleanthat version to latest 2.23 -> 2.24. (#2620)
  • POTENTIALLY BREAKING Removed support for ktlint versions below 1.0. (#2711)

Fixed

  • Use absolute path in the git pre push hook
  • palantirJavaFormat is no longer arbitrarily set to outdated versions on Java 17, latest available version is always used (#2686 fixes #2685)

Added

  • <forbidModuleImports> API for java (#2679)

Lib v4.1.0

18 Nov 23:30

Choose a tag to compare

Changes

  • Bump default ktfmt version to latest 0.58 -> 0.59. (#2681
  • Bump default jackson version to latest 2.20.0 -> 2.20.1. (#2730)
  • Bump default cleanthat version to latest 2.23 -> 2.24. (#2620)
  • POTENTIALLY BREAKING Removed support for ktlint versions below 1.0. (#2711)

Fixed

  • palantirJavaFormat is no longer arbitrarily set to outdated versions on Java 17, latest available version is always used (#2686 fixes #2685)

Added

  • Add a forbidModuleImports API for java (#2679)
  • new options to customize Flexmark, e.g. to allow YAML front matter (#2616)

Gradle Plugin v8.1.0

18 Nov 23:31

Choose a tag to compare

Changes

  • Bump default ktfmt version to latest 0.58 -> 0.59. (#2681
  • Bump default jackson version to latest 2.20.0 -> 2.20.1. (#2730)
  • Bump default cleanthat version to latest 2.23 -> 2.24. (#2620)
  • POTENTIALLY BREAKING Removed support for ktlint versions below 1.0. (#2711)

Fixed

  • Tasks were being eagerly instantiated, now avoided using TaskProviders. #2719
    • POTENTIALLY BREAKING Bump minimum supported Gradle version from 7.3 to 8.1. #2719
  • Use absolute path in the git pre push hook.
  • palantirJavaFormat is no longer arbitrarily set to outdated versions on Java 17, latest available version is always used (#2686 fixes #2685)

Added

  • forbidModuleImports() API for java (#2679)
  • new options to customize Flexmark, e.g. to allow YAML front matter (#2616)

Maven Plugin v3.0.0

24 Sep 17:18

Choose a tag to compare

Changes

  • BREAKING Bump the required Java to 17. (#2375, #2540)
  • BREAKING Renamed removeWildcardImports to forbidWildcardImports. (#2633)
  • BREAKING spotless:install-git-pre-push-hook task is now always installed in the root .git/hooks directory by resolving the top-level project base directory. (#2570)
  • Bump JGit from 6.10.1 to 7.3.0 (#2257)
    • Adds support for worktrees (fixes #1765)
  • Bump default google-java-format version to latest 1.24.0 -> 1.28.0. (#2345)
  • Bump default gson version to latest 2.13.1 -> 2.13.2. (#2615)
  • Bump default jackson version to latest 2.19.2 -> 2.20.0. (#2606)
  • Bump default ktfmt version to latest 0.53 -> 0.58 (#2613)
    • BREAKING use TrailingCommaManagementStrategy enum instead of manageTrailingCommas boolean configuration option
  • Bump default ktlint version to latest 1.5.0 -> 1.7.1. (#2555)
  • Bump default palantir-java-format version to latest 2.57.0 -> 2.71.0.

Fixed

  • Fix spaceBeforeSeparator in Jackson formatter. (#2103)

Added

  • <lintSupressions> API (#2309)
  • There is now a forbidRegex(String name, String searchRegex, String lintDetail) which throws a lint anytime the regex matches. (#2633)

Gradle Plugin v8.0.0

24 Sep 17:15

Choose a tag to compare

Changed

  • BREAKING Bump the required Gradle to 7.3 and required Java to 17. (#2375, #2540)
  • BREAKING Renamed removeWildcardImports to forbidWildcardImports. (#2633)
  • BREAKING spotlessInstallGitPrePushHook task is now installed only on the root project. (#2570)
  • BREAKING LintSuppression now enforces unix-style paths in its setPath method. (#2629)
  • Running spotlessCheck with violations unilaterally produces the error message Run './gradlew spotlessApply' to fix these violations. (#2592)
  • Bump JGit from 6.10.1 to 7.3.0 (#2257)
    • Adds support for worktrees (fixes #1765)
  • Bump default google-java-format version to latest 1.24.0 -> 1.28.0. (#2345)
  • Bump default gson version to latest 2.13.1 -> 2.13.2. (#2615)
  • Bump default jackson version to latest 2.19.2 -> 2.20.0. (#2606)
  • Bump default ktfmt version to latest 0.53 -> 0.58 (#2613)
    • BREAKING use TrailingCommaManagementStrategy enum instead of manageTrailingCommas boolean configuration option
  • Bump default ktlint version to latest 1.5.0 -> 1.7.1. (#2555)
  • Bump default palantir-java-format version to latest 2.57.0 -> 2.71.0.

Fixed

  • Respect system gitconfig when performing git operations (#2404)
  • Fix spaceBeforeSeparator in Jackson formatter. (#2103)
  • spotlessInstallGitPrePushHook is now compatible with configuration cache. (#2570)

Added

  • There is now a forbidRegex(String name, String regex, String lintDetail) which throws a lint anytime the regex matches. (#2633)

Maven Plugin v2.46.1

21 Jul 19:18

Choose a tag to compare

Fixed

  • spotless:install-git-pre-push-hook didn't work on windows, now fixed. (#2562)

Lib v3.3.1

21 Jul 19:15

Choose a tag to compare

Fixed

  • GitPrePushHookInstaller didn't work on windows, now fixed. (#2562)