Tags: diffplug/spotless
Tags
### Added - Add support for custom string format for license header copyright year via `yearStringFormat()`. ([#2965](#2965)) ### Fixed - `<expandWildcardImports>` no longer triggers a full transitive dependency resolution on every build. Dependency resolution is now deferred until the step actually runs, so projects that do not use `<expandWildcardImports>` (or that use version ranges) are no longer penalized. ([#2983](#2983))
### Fixed - Parse standard git year output in LicenseHeaderStep. ([#2940](#2940)) - `<toggleOffOn>` no longer disables lint-only steps such as `<forbidWildcardImports>`. ([#2962](#2962)) - Fix `StringIndexOutOfBoundsException` in scenarios where copyright year is surrounded by whitespace. ([#2973](#2973)) ### Added - Add support for AsciiDoc formatting via `adocfmt`. ([#2960](#2960)) - `<flexmark>` step now supports arbitrary formatter options via `<formatterOptions>`. ([#2968](#2968))
### Added - Add support for AsciiDoc formatting via `adocfmt`. ([#2960](#2960)) - `flexmark` step now supports arbitrary formatter options via a `formatterOptions` map. ([#2968](#2968)) ### Fixed - `FenceStep.preserveWithin` now forwards lints from nested steps while still suppressing lints inside preserved blocks. ([#2962](#2962)) - Support `ktfmt` 0.63 and use its new builder API for formatting options to better avoid future breaking changes. - Parse standard git year output in LicenseHeaderStep. ([#2940](#2940)) - Fix `StringIndexOutOfBoundsException` in scenarios where copyright year is surrounded by whitespace. ([#2973](#2973)) ### Changes - Bump default `greclipse` version to latest `4.35` -> `4.39`. ([#2924](#2924))
### Added - Add support for AsciiDoc formatting via `adocfmt`. ([#2960](#2960)) - `flexmark()` step now supports arbitrary formatter options via the `formatterOptions` map. ([#2968](#2968)) ### Fixed - `toggleOffOn` no longer disables lint-only steps such as `forbidWildcardImports`. ([#2962](#2962)) - Prevent build caches from interfering when executing under the `-PspotlessIdeHook` mode. ([#2365](#2365)) - Parse standard git year output in LicenseHeaderStep. ([#2940](#2940)) - Fix `StringIndexOutOfBoundsException` in scenarios where copyright year is surrounded by whitespace. ([#2973](#2973)) ### Changes - Bump default `greclipse` version to latest `4.35` -> `4.39`. ([#2924](#2924))
### Added - Add `<cacheDirectory>` to `<eclipse>`, `<greclipse>`, and `<eclipseCdt>` for the Equo/Solstice P2 cache. ([#2944](#2944)) - `EclipseJdtFormtterStep` now can conditionally set compiler source/compliance options. Allows for better parsing of AST Node for newer language features and more correct sorting; e.g. records or seal classes. ([#2942](#2942)) ### Fixed - `<versionCatalog>` no longer splits long inline tables across multiple lines — Gradle's TOML 1.0 parser cannot read multi-line inline tables. The `maxLineLength` option has been removed. ([#2948](#2948)) - `spotless:apply` no longer aborts on the first file with lints; it now formats all files and reports a single aggregated lint failure across every file, matching the Gradle plugin's behavior. ([#2937](#2937)) - `<greclipse>` and `<eclipseCdt>` now default P2 data to the Maven local repository. ([#2944](#2944)) - `forbidWildcardImports` and `forbidModuleImports` now detect imports that have leading whitespace (indentation/tabs). ([#2939](#2939)) ### Changes - Improved formatting performance by eliminating redundant per-step line-ending normalization in the core formatter loop. ([#2934](#2934))
### Fixed - `P2Provisioner` now passes cache directory overrides directly to Solstice. ([#2944](#2944)) - `forbidWildcardImports` and `forbidModuleImports` now detect imports that have leading whitespace (indentation/tabs). ([#2939](#2939)) - `versionCatalog` step no longer splits long inline tables across multiple lines — Gradle's TOML 1.0 parser cannot read multi-line inline tables. The `maxLineLength` option has been removed. ([#2948](#2948)) ### Changes - `EclipseJdtFormtterStep` now can conditionally set compiler source/compliance options. Allows for better parsing of AST Node for newer language features and more correct sorting; e.g. records or seal classes. ([#2942](#2942)) - `Formatter` no longer recomputes line-ending normalization (`LineEnding.toUnix`) a second time for every formatter step that changes content, removing redundant O(n) work from the core formatting loop. ([#2934](#2934)) - expandWildcardImports support pom type dependency. ([#2839](#2839))
### Added - Add `cacheDirectory(...)` to `eclipse()`, `eclipseCdt()`, and `greclipse()`; the default P2 cache is `$GRADLE_USER_HOME/caches/p2-data`. ([#2944](#2944)) ### Fixed - `forbidWildcardImports` and `forbidModuleImports` now detect imports that have leading whitespace (indentation/tabs). ([#2939](#2939)) - `versionCatalog()` no longer splits long inline tables across multiple lines — Gradle's TOML 1.0 parser cannot read multi-line inline tables. The `maxLineLength` option has been removed. ([#2948](#2948)) - `EclipseJdtFormtterStep` now can conditionally set compiler source/compliance options. Allows for better parsing of AST Node for newer language features and more correct sorting; e.g. records or seal classes. ([#2942](#2942)) ### Changes - Improved formatting performance by eliminating redundant per-step line-ending normalization in the core formatter loop. ([#2934](#2934))
### Fixed - `<licenseHeader>` with `<yearMode>SET_FROM_GIT</yearMode>` no longer runs `git log` through a shell, eliminating a shell-injection vector when formatting files whose names contain shell metacharacters. - Bump transitive `plexus-utils` `4.0.2` -> `4.0.3` to address [CVE-2025-67030](GHSA-6fmv-xxpf-w3cw). ([#2919](#2919))
PreviousNext