diffplug/spotless (com.diffplug.spotless:spotless-maven-plugin)
### [`v2.40.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2400---2023-07-17)
##### Added
- Added support for Protobuf formatting based on [Buf](https://buf.build/). ([#1208](https://togithub.com/diffplug/spotless/issues/1208))
- `enum OnMatch { INCLUDE, EXCLUDE }` so that `FormatterStep.filterByContent` can not only include based on the pattern but also exclude. ([#1749](https://togithub.com/diffplug/spotless/pull/1749))
##### Fixed
- Update documented default `semanticSort` to `false`. ([#1728](https://togithub.com/diffplug/spotless/pull/1728))
##### Changes
- Bump default `cleanthat` version to latest `2.13` -> `2.17`. ([#1734](https://togithub.com/diffplug/spotless/pull/1734))
- Bump default `ktlint` version to latest `0.49.1` -> `0.50.0`. ([#1741](https://togithub.com/diffplug/spotless/issues/1741))
- Dropped support for `ktlint 0.47.x` following our policy of supporting two breaking changes at a time.
- Dropped support for deprecated `useExperimental` parameter in favor of the `ktlint_experimental` property.
### [`v2.39.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2390---2023-05-24)
##### Added
- `Jvm.Support` now accepts `-SNAPSHOT` versions, treated as the non`-SNAPSHOT`. ([#1583](https://togithub.com/diffplug/spotless/issues/1583))
- Support Rome as a formatter for JavaScript and TypeScript code. Adds a new `rome` step to `javascript` and `typescript` formatter configurations. ([#1663](https://togithub.com/diffplug/spotless/pull/1663))
- Add semantics-aware Java import ordering (i.e. sort by package, then class, then member). ([#522](https://togithub.com/diffplug/spotless/issues/522))
##### Fixed
- Fixed a regression which changed the import sorting order in `googleJavaFormat` introduced in `2.38.0`. ([#1680](https://togithub.com/diffplug/spotless/pull/1680))
- Equo-based formatters now work on platforms unsupported by Eclipse such as PowerPC (fixes [durian-swt#20](https://togithub.com/diffplug/durian-swt/issues/20))
- When P2 download fails, indicate the responsible formatter. ([#1698](https://togithub.com/diffplug/spotless/issues/1698))
##### Changes
- Equo-based formatters now download metadata to `~/.m2/repository/dev/equo/p2-data` rather than `~/.equo`, and for CI machines without a home directory the p2 data goes to `$GRADLE_USER_HOME/caches/p2-data`. ([#1714](https://togithub.com/diffplug/spotless/pull/1714))
- Bump default `googleJavaFormat` version to latest `1.16.0` -> `1.17.0`. ([#1710](https://togithub.com/diffplug/spotless/pull/1710))
- Bump default `ktfmt` version to latest `0.43` -> `0.44`. ([#1691](https://togithub.com/diffplug/spotless/pull/1691))
- Bump default `ktlint` version to latest `0.48.2` -> `0.49.1`. ([#1696](https://togithub.com/diffplug/spotless/issues/1696))
- Dropped support for `ktlint 0.46.x` following our policy of supporting two breaking changes at a time.
- Bump default `sortpom` version to latest `3.0.0` -> `3.2.1`. ([#1675](https://togithub.com/diffplug/spotless/pull/1675))
### [`v2.38.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2380---2023-04-06)
##### Added
- Support configuration of mirrors for P2 repositories in `EquoBasedStepBuilder` ([#1629](https://togithub.com/diffplug/spotless/issues/1629)).
- The `style` option in Palantir Java Format ([#1654](https://togithub.com/diffplug/spotless/pull/1654)).
- Added formatter for Gherkin feature files ([#1649](https://togithub.com/diffplug/spotless/issues/1649)).
##### Changes
- **POTENTIALLY BREAKING** Converted `googleJavaFormat` to a compile-only dependency and drop support for versions < `1.8`. ([#1630](https://togithub.com/diffplug/spotless/pull/1630))
- Bump default `cleanthat` version to latest `2.6` -> `2.13`. ([#1589](https://togithub.com/diffplug/spotless/pull/1589) and [#1661](https://togithub.com/diffplug/spotless/pull/1661))
- Bump default `diktat` version `1.2.4.2` -> `1.2.5`. ([#1631](https://togithub.com/diffplug/spotless/pull/1631))
- Bump default `flexmark` version `0.62.2` -> `0.64.0`. ([#1302](https://togithub.com/diffplug/spotless/pull/1302))
- Bump default `googleJavaFormat` version `1.15.0` -> `1.16.0`. ([#1630](https://togithub.com/diffplug/spotless/pull/1630))
- Bump default `scalafmt` version `3.7.1` -> `3.7.3`. ([#1584](https://togithub.com/diffplug/spotless/pull/1584))
- Bump default Eclipse formatters for the 2023-03 release. ([#1662](https://togithub.com/diffplug/spotless/pull/1662))
- JDT and GrEclipse `4.26` -> `4.27`
- Improve GrEclipse error reporting. ([#1660](https://togithub.com/diffplug/spotless/pull/1660))
- CDT `11.0` -> `11.1`
### [`v2.37.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2370---2023-03-13)
##### Added
- You can now put the filename into a license header template with `$FILE`. ([#1605](https://togithub.com/diffplug/spotless/pull/1605) fixes [#1147](https://togithub.com/diffplug/spotless/issues/1147))
##### Changes
- We are now opting in to Gradle's new stable configuration cache. ([#1591](https://togithub.com/diffplug/spotless/pull/1591))
- Adopt [Equo Solstice OSGi and p2 shim](https://togithub.com/equodev/equo-ide/tree/main/solstice) to update all Eclipse-based plugins. ([#1524](https://togithub.com/diffplug/spotless/pull/1524))
- Eclipse JDT now supports `4.9` through `4.26`. Also we now recommend dropping the last `.0`, e.g. `4.26` instead of `4.26.0`, you'll get warnings to help you switch.
- Eclipse Groovy now supports `4.18` through `4.26`. Also we now recommend dropping the last `.0`, e.g. `4.26` instead of `4.26.0`, you'll get warnings to help you switch.
- Eclipse CDT now supports `10.6` through `11.0`.
- Eclipse WTP is still WIP at [#1622](https://togithub.com/diffplug/spotless/pull/1622).
### [`v2.36.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2360---2023-02-27)
##### Added
- `gradlew equoIde` opens a repeatable clean Spotless dev environment. ([#1523](https://togithub.com/diffplug/spotless/pull/1523))
- `cleanthat` added `includeDraft` option, to include draft mutators from composite mutators. ([#1574](https://togithub.com/diffplug/spotless/pull/1574))
- `npm`-based formatters now support caching of `node_modules` directory ([#1590](https://togithub.com/diffplug/spotless/pull/1590))
##### Fixed
- `JacksonJsonFormatterFunc` handles json files with an Array as root. ([#1585](https://togithub.com/diffplug/spotless/pull/1585))
##### Changes
- Bump default `cleanthat` version to latest `2.1` -> `2.6` ([#1569](https://togithub.com/diffplug/spotless/pull/1569) and [#1574](https://togithub.com/diffplug/spotless/pull/1574))
- Reduce logging-noise created by `npm`-based formatters ([#1590](https://togithub.com/diffplug/spotless/pull/1590) fixes [#1582](https://togithub.com/diffplug/spotless/issues/1582))
### [`v2.35.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2350---2023-02-10)
##### Added
- CleanThat Java Refactorer. ([#1560](https://togithub.com/diffplug/spotless/pull/1560))
- Introduce `LazyArgLogger` to allow for lazy evaluation of log messages in slf4j logging. ([#1565](https://togithub.com/diffplug/spotless/pull/1565))
##### Fixed
- Allow multiple instances of the same npm-based formatter to be used by separating their `node_modules` directories. ([#1565](https://togithub.com/diffplug/spotless/pull/1565))
- `ktfmt` default style uses correct continuation indent. ([#1562](https://togithub.com/diffplug/spotless/pull/1562))
##### Changes
- Bump default `ktfmt` version to latest `0.42` -> `0.43` ([#1561](https://togithub.com/diffplug/spotless/pull/1561))
- Bump default `jackson` version to latest `2.14.1` -> `2.14.2` ([#1536](https://togithub.com/diffplug/spotless/pull/1536))
### [`v2.34.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2340---2023-01-26)
##### Added
- `Formatter` now has a field `public static final File NO_FILE_SENTINEL` which can be used to pass string content to a Formatter or FormatterStep when there is no actual File to format. ([#1525](https://togithub.com/diffplug/spotless/pull/1525))
### [`v2.33.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2330---2023-01-26)
##### Added
- `ProcessRunner` has added some convenience methods so it can be used for maven testing. ([#1496](https://togithub.com/diffplug/spotless/pull/1496))
- `ProcessRunner` allows to limit captured output to a certain number of bytes. ([#1511](https://togithub.com/diffplug/spotless/pull/1511))
- `ProcessRunner` is now capable of handling long-running tasks where waiting for exit is delegated to the caller. ([#1511](https://togithub.com/diffplug/spotless/pull/1511))
- Allow to specify node executable for node-based formatters using `nodeExecutable` parameter ([#1500](https://togithub.com/diffplug/spotless/pull/1500))
##### Fixed
- The default list of type annotations used by `formatAnnotations` has had 8 more annotations from the Checker Framework added [#1494](https://togithub.com/diffplug/spotless/pull/1494)
##### Changes
- **POTENTIALLY BREAKING** Bump minimum JRE from 8 to 11, next release likely to bump bytecode to Java 11 ([#1514](https://togithub.com/diffplug/spotless/pull/1514) part 1 of [#1337](https://togithub.com/diffplug/spotless/issues/1337))
- Rename `YamlJacksonStep` into `JacksonYamlStep` while normalizing Jackson usage ([#1492](https://togithub.com/diffplug/spotless/pull/1492))
- Convert `gson` integration to use a compile-only source set ([#1510](https://togithub.com/diffplug/spotless/pull/1510)).
- \*\* POTENTIALLY BREAKING\*\* Removed support for KtLint 0.3x and 0.45.2 ([#1475](https://togithub.com/diffplug/spotless/pull/1475))
- `KtLint` does not maintain a stable API - before this PR, we supported every breaking change in the API since 2019.
- From now on, we will support no more than 2 breaking changes at a time.
- NpmFormatterStepStateBase delays `npm install` call until the formatter is first used. This enables better integration
with `gradle-node-plugin`. ([#1522](https://togithub.com/diffplug/spotless/pull/1522))
- Bump default `ktlint` version to latest `0.48.1` -> `0.48.2` ([#1529](https://togithub.com/diffplug/spotless/pull/1529))
- Bump default `scalafmt` version to latest `3.6.1` -> `3.7.1` ([#1529](https://togithub.com/diffplug/spotless/pull/1529))
### [`v2.32.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2320---2023-01-13)
##### Added
- Add option `editorConfigFile` for `ktLint` [#142](https://togithub.com/diffplug/spotless/issues/142)
- **POTENTIALLY BREAKING** `ktlint` step now modifies license headers. Make sure to put `licenseHeader` *after* `ktlint`.
- Added `skipLinesMatching` option to `licenseHeader` to support formats where license header cannot be immediately added to the top of the file (e.g. xml, sh). ([#1441](https://togithub.com/diffplug/spotless/pull/1441)).
- Add YAML support through Jackson ([#1478](https://togithub.com/diffplug/spotless/pull/1478))
- Added support for npm-based [ESLint](https://eslint.org/)-formatter for javascript and typescript ([#1453](https://togithub.com/diffplug/spotless/pull/1453))
- Better suggested messages when user's default is set by JVM limitation. ([#995](https://togithub.com/diffplug/spotless/pull/995))
##### Fixed
- Support `ktlint` 0.48+ new rule disabling syntax ([#1456](https://togithub.com/diffplug/spotless/pull/1456)) fixes ([#1444](https://togithub.com/diffplug/spotless/issues/1444))
- Fix subgroups leading catch all matcher.
##### Changes
- Bump default version for `prettier` from `2.0.5` to `2.8.1` ([#1453](https://togithub.com/diffplug/spotless/pull/1453))
- Bump the dev version of Gradle from `7.5.1` to `7.6` ([#1409](https://togithub.com/diffplug/spotless/pull/1409))
- We also removed the no-longer-required dependency `org.codehaus.groovy:groovy-xml`
- Breaking changes to Spotless' internal testing infrastructure `testlib` ([#1443](https://togithub.com/diffplug/spotless/pull/1443))
- `ResourceHarness` no longer has any duplicated functionality which was also present in `StepHarness`
- `StepHarness` now operates on `Formatter` rather than a `FormatterStep`
- `StepHarnessWithFile` now takes a `ResourceHarness` in its constructor to handle the file manipulation parts
- Standardized that we test exception *messages*, not types, which will ease the transition to linting later on
- Bump default `ktlint` version to latest `0.47.1` -> `0.48.1` ([#1456](https://togithub.com/diffplug/spotless/pull/1456))
- Switch our publishing infrastructure from CircleCI to GitHub Actions ([#1462](https://togithub.com/diffplug/spotless/pull/1462)).
- Help wanted for moving our tests too ([#1472](https://togithub.com/diffplug/spotless/issues/1472))
### [`v2.31.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2310---2022-11-24)
##### Added
- `importOrder` now support groups of imports without blank lines ([#1401](https://togithub.com/diffplug/spotless/pull/1401))
##### Fixed
- Don't treat `@Value` as a type annotation [#1367](https://togithub.com/diffplug/spotless/pull/1367)
- Support `ktlint_disabled_rules` in `ktlint` 0.47.x [#1378](https://togithub.com/diffplug/spotless/pull/1378)
- Share git repositories across projects when using ratchet ([#1426](https://togithub.com/diffplug/spotless/pull/1426))
##### Changes
- Bump default `ktfmt` version to latest `0.40` -> `0.41` ([#1340](https://togithub.com/diffplug/spotless/pull/1340))
- Bump default `scalafmt` version to latest `3.5.9` -> `3.6.1` ([#1373](https://togithub.com/diffplug/spotless/pull/1373))
- Bump default `diktat` version to latest `1.2.3` -> `1.2.4.2` ([#1393](https://togithub.com/diffplug/spotless/pull/1393))
- Bump default `palantir-java-format` version to latest `2.10` -> `2.28` ([#1393](https://togithub.com/diffplug/spotless/pull/1393))
### [`v2.30.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2300---2022-09-14)
##### Added
- `formatAnnotations()` step to correct formatting of Java type annotations. It puts type annotations on the same line as the type that they qualify. Run it after a Java formatting step, such as `googleJavaFormat()`. ([#1275](https://togithub.com/diffplug/spotless/pull/1275))
##### Changes
- Bump default `ktfmt` version to latest `0.39` -> `0.40` ([#1312](https://togithub.com/diffplug/spotless/pull/1312))
- Bump default `ktlint` version to latest `0.46.1` -> `0.47.1` ([#1303](https://togithub.com/diffplug/spotless/pull/1303))
- Also restored support for older versions of ktlint back to `0.31.0`
### [`v2.29.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2290---2022-08-23)
##### Added
- `scalafmt` integration now has a configuration option `majorScalaVersion` that allows you to configure the Scala version that gets resolved from the maven artifact ([#1283](https://togithub.com/diffplug/spotless/pull/1283))
- Converted `scalafmt` integration to use a compile-only source set (fixes [#524](https://togithub.com/diffplug/spotless/issues/524))
##### Changes
- Add the `ktlint` rule in error messages when `ktlint` fails to apply a fix ([#1279](https://togithub.com/diffplug/spotless/pull/1279))
- Bump default `scalafmt` to latest `3.0.8` -> `3.5.9` (removed support for pre-`3.0.0`) ([#1283](https://togithub.com/diffplug/spotless/pull/1283))
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
2.28.0
->2.40.0
Release Notes
diffplug/spotless (com.diffplug.spotless:spotless-maven-plugin)
### [`v2.40.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2400---2023-07-17) ##### Added - Added support for Protobuf formatting based on [Buf](https://buf.build/). ([#1208](https://togithub.com/diffplug/spotless/issues/1208)) - `enum OnMatch { INCLUDE, EXCLUDE }` so that `FormatterStep.filterByContent` can not only include based on the pattern but also exclude. ([#1749](https://togithub.com/diffplug/spotless/pull/1749)) ##### Fixed - Update documented default `semanticSort` to `false`. ([#1728](https://togithub.com/diffplug/spotless/pull/1728)) ##### Changes - Bump default `cleanthat` version to latest `2.13` -> `2.17`. ([#1734](https://togithub.com/diffplug/spotless/pull/1734)) - Bump default `ktlint` version to latest `0.49.1` -> `0.50.0`. ([#1741](https://togithub.com/diffplug/spotless/issues/1741)) - Dropped support for `ktlint 0.47.x` following our policy of supporting two breaking changes at a time. - Dropped support for deprecated `useExperimental` parameter in favor of the `ktlint_experimental` property. ### [`v2.39.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2390---2023-05-24) ##### Added - `Jvm.Support` now accepts `-SNAPSHOT` versions, treated as the non`-SNAPSHOT`. ([#1583](https://togithub.com/diffplug/spotless/issues/1583)) - Support Rome as a formatter for JavaScript and TypeScript code. Adds a new `rome` step to `javascript` and `typescript` formatter configurations. ([#1663](https://togithub.com/diffplug/spotless/pull/1663)) - Add semantics-aware Java import ordering (i.e. sort by package, then class, then member). ([#522](https://togithub.com/diffplug/spotless/issues/522)) ##### Fixed - Fixed a regression which changed the import sorting order in `googleJavaFormat` introduced in `2.38.0`. ([#1680](https://togithub.com/diffplug/spotless/pull/1680)) - Equo-based formatters now work on platforms unsupported by Eclipse such as PowerPC (fixes [durian-swt#20](https://togithub.com/diffplug/durian-swt/issues/20)) - When P2 download fails, indicate the responsible formatter. ([#1698](https://togithub.com/diffplug/spotless/issues/1698)) ##### Changes - Equo-based formatters now download metadata to `~/.m2/repository/dev/equo/p2-data` rather than `~/.equo`, and for CI machines without a home directory the p2 data goes to `$GRADLE_USER_HOME/caches/p2-data`. ([#1714](https://togithub.com/diffplug/spotless/pull/1714)) - Bump default `googleJavaFormat` version to latest `1.16.0` -> `1.17.0`. ([#1710](https://togithub.com/diffplug/spotless/pull/1710)) - Bump default `ktfmt` version to latest `0.43` -> `0.44`. ([#1691](https://togithub.com/diffplug/spotless/pull/1691)) - Bump default `ktlint` version to latest `0.48.2` -> `0.49.1`. ([#1696](https://togithub.com/diffplug/spotless/issues/1696)) - Dropped support for `ktlint 0.46.x` following our policy of supporting two breaking changes at a time. - Bump default `sortpom` version to latest `3.0.0` -> `3.2.1`. ([#1675](https://togithub.com/diffplug/spotless/pull/1675)) ### [`v2.38.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2380---2023-04-06) ##### Added - Support configuration of mirrors for P2 repositories in `EquoBasedStepBuilder` ([#1629](https://togithub.com/diffplug/spotless/issues/1629)). - The `style` option in Palantir Java Format ([#1654](https://togithub.com/diffplug/spotless/pull/1654)). - Added formatter for Gherkin feature files ([#1649](https://togithub.com/diffplug/spotless/issues/1649)). ##### Changes - **POTENTIALLY BREAKING** Converted `googleJavaFormat` to a compile-only dependency and drop support for versions < `1.8`. ([#1630](https://togithub.com/diffplug/spotless/pull/1630)) - Bump default `cleanthat` version to latest `2.6` -> `2.13`. ([#1589](https://togithub.com/diffplug/spotless/pull/1589) and [#1661](https://togithub.com/diffplug/spotless/pull/1661)) - Bump default `diktat` version `1.2.4.2` -> `1.2.5`. ([#1631](https://togithub.com/diffplug/spotless/pull/1631)) - Bump default `flexmark` version `0.62.2` -> `0.64.0`. ([#1302](https://togithub.com/diffplug/spotless/pull/1302)) - Bump default `googleJavaFormat` version `1.15.0` -> `1.16.0`. ([#1630](https://togithub.com/diffplug/spotless/pull/1630)) - Bump default `scalafmt` version `3.7.1` -> `3.7.3`. ([#1584](https://togithub.com/diffplug/spotless/pull/1584)) - Bump default Eclipse formatters for the 2023-03 release. ([#1662](https://togithub.com/diffplug/spotless/pull/1662)) - JDT and GrEclipse `4.26` -> `4.27` - Improve GrEclipse error reporting. ([#1660](https://togithub.com/diffplug/spotless/pull/1660)) - CDT `11.0` -> `11.1` ### [`v2.37.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2370---2023-03-13) ##### Added - You can now put the filename into a license header template with `$FILE`. ([#1605](https://togithub.com/diffplug/spotless/pull/1605) fixes [#1147](https://togithub.com/diffplug/spotless/issues/1147)) ##### Changes - We are now opting in to Gradle's new stable configuration cache. ([#1591](https://togithub.com/diffplug/spotless/pull/1591)) - Adopt [Equo Solstice OSGi and p2 shim](https://togithub.com/equodev/equo-ide/tree/main/solstice) to update all Eclipse-based plugins. ([#1524](https://togithub.com/diffplug/spotless/pull/1524)) - Eclipse JDT now supports `4.9` through `4.26`. Also we now recommend dropping the last `.0`, e.g. `4.26` instead of `4.26.0`, you'll get warnings to help you switch. - Eclipse Groovy now supports `4.18` through `4.26`. Also we now recommend dropping the last `.0`, e.g. `4.26` instead of `4.26.0`, you'll get warnings to help you switch. - Eclipse CDT now supports `10.6` through `11.0`. - Eclipse WTP is still WIP at [#1622](https://togithub.com/diffplug/spotless/pull/1622). ### [`v2.36.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2360---2023-02-27) ##### Added - `gradlew equoIde` opens a repeatable clean Spotless dev environment. ([#1523](https://togithub.com/diffplug/spotless/pull/1523)) - `cleanthat` added `includeDraft` option, to include draft mutators from composite mutators. ([#1574](https://togithub.com/diffplug/spotless/pull/1574)) - `npm`-based formatters now support caching of `node_modules` directory ([#1590](https://togithub.com/diffplug/spotless/pull/1590)) ##### Fixed - `JacksonJsonFormatterFunc` handles json files with an Array as root. ([#1585](https://togithub.com/diffplug/spotless/pull/1585)) ##### Changes - Bump default `cleanthat` version to latest `2.1` -> `2.6` ([#1569](https://togithub.com/diffplug/spotless/pull/1569) and [#1574](https://togithub.com/diffplug/spotless/pull/1574)) - Reduce logging-noise created by `npm`-based formatters ([#1590](https://togithub.com/diffplug/spotless/pull/1590) fixes [#1582](https://togithub.com/diffplug/spotless/issues/1582)) ### [`v2.35.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2350---2023-02-10) ##### Added - CleanThat Java Refactorer. ([#1560](https://togithub.com/diffplug/spotless/pull/1560)) - Introduce `LazyArgLogger` to allow for lazy evaluation of log messages in slf4j logging. ([#1565](https://togithub.com/diffplug/spotless/pull/1565)) ##### Fixed - Allow multiple instances of the same npm-based formatter to be used by separating their `node_modules` directories. ([#1565](https://togithub.com/diffplug/spotless/pull/1565)) - `ktfmt` default style uses correct continuation indent. ([#1562](https://togithub.com/diffplug/spotless/pull/1562)) ##### Changes - Bump default `ktfmt` version to latest `0.42` -> `0.43` ([#1561](https://togithub.com/diffplug/spotless/pull/1561)) - Bump default `jackson` version to latest `2.14.1` -> `2.14.2` ([#1536](https://togithub.com/diffplug/spotless/pull/1536)) ### [`v2.34.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2340---2023-01-26) ##### Added - `Formatter` now has a field `public static final File NO_FILE_SENTINEL` which can be used to pass string content to a Formatter or FormatterStep when there is no actual File to format. ([#1525](https://togithub.com/diffplug/spotless/pull/1525)) ### [`v2.33.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2330---2023-01-26) ##### Added - `ProcessRunner` has added some convenience methods so it can be used for maven testing. ([#1496](https://togithub.com/diffplug/spotless/pull/1496)) - `ProcessRunner` allows to limit captured output to a certain number of bytes. ([#1511](https://togithub.com/diffplug/spotless/pull/1511)) - `ProcessRunner` is now capable of handling long-running tasks where waiting for exit is delegated to the caller. ([#1511](https://togithub.com/diffplug/spotless/pull/1511)) - Allow to specify node executable for node-based formatters using `nodeExecutable` parameter ([#1500](https://togithub.com/diffplug/spotless/pull/1500)) ##### Fixed - The default list of type annotations used by `formatAnnotations` has had 8 more annotations from the Checker Framework added [#1494](https://togithub.com/diffplug/spotless/pull/1494) ##### Changes - **POTENTIALLY BREAKING** Bump minimum JRE from 8 to 11, next release likely to bump bytecode to Java 11 ([#1514](https://togithub.com/diffplug/spotless/pull/1514) part 1 of [#1337](https://togithub.com/diffplug/spotless/issues/1337)) - Rename `YamlJacksonStep` into `JacksonYamlStep` while normalizing Jackson usage ([#1492](https://togithub.com/diffplug/spotless/pull/1492)) - Convert `gson` integration to use a compile-only source set ([#1510](https://togithub.com/diffplug/spotless/pull/1510)). - \*\* POTENTIALLY BREAKING\*\* Removed support for KtLint 0.3x and 0.45.2 ([#1475](https://togithub.com/diffplug/spotless/pull/1475)) - `KtLint` does not maintain a stable API - before this PR, we supported every breaking change in the API since 2019. - From now on, we will support no more than 2 breaking changes at a time. - NpmFormatterStepStateBase delays `npm install` call until the formatter is first used. This enables better integration with `gradle-node-plugin`. ([#1522](https://togithub.com/diffplug/spotless/pull/1522)) - Bump default `ktlint` version to latest `0.48.1` -> `0.48.2` ([#1529](https://togithub.com/diffplug/spotless/pull/1529)) - Bump default `scalafmt` version to latest `3.6.1` -> `3.7.1` ([#1529](https://togithub.com/diffplug/spotless/pull/1529)) ### [`v2.32.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2320---2023-01-13) ##### Added - Add option `editorConfigFile` for `ktLint` [#142](https://togithub.com/diffplug/spotless/issues/142) - **POTENTIALLY BREAKING** `ktlint` step now modifies license headers. Make sure to put `licenseHeader` *after* `ktlint`. - Added `skipLinesMatching` option to `licenseHeader` to support formats where license header cannot be immediately added to the top of the file (e.g. xml, sh). ([#1441](https://togithub.com/diffplug/spotless/pull/1441)). - Add YAML support through Jackson ([#1478](https://togithub.com/diffplug/spotless/pull/1478)) - Added support for npm-based [ESLint](https://eslint.org/)-formatter for javascript and typescript ([#1453](https://togithub.com/diffplug/spotless/pull/1453)) - Better suggested messages when user's default is set by JVM limitation. ([#995](https://togithub.com/diffplug/spotless/pull/995)) ##### Fixed - Support `ktlint` 0.48+ new rule disabling syntax ([#1456](https://togithub.com/diffplug/spotless/pull/1456)) fixes ([#1444](https://togithub.com/diffplug/spotless/issues/1444)) - Fix subgroups leading catch all matcher. ##### Changes - Bump default version for `prettier` from `2.0.5` to `2.8.1` ([#1453](https://togithub.com/diffplug/spotless/pull/1453)) - Bump the dev version of Gradle from `7.5.1` to `7.6` ([#1409](https://togithub.com/diffplug/spotless/pull/1409)) - We also removed the no-longer-required dependency `org.codehaus.groovy:groovy-xml` - Breaking changes to Spotless' internal testing infrastructure `testlib` ([#1443](https://togithub.com/diffplug/spotless/pull/1443)) - `ResourceHarness` no longer has any duplicated functionality which was also present in `StepHarness` - `StepHarness` now operates on `Formatter` rather than a `FormatterStep` - `StepHarnessWithFile` now takes a `ResourceHarness` in its constructor to handle the file manipulation parts - Standardized that we test exception *messages*, not types, which will ease the transition to linting later on - Bump default `ktlint` version to latest `0.47.1` -> `0.48.1` ([#1456](https://togithub.com/diffplug/spotless/pull/1456)) - Switch our publishing infrastructure from CircleCI to GitHub Actions ([#1462](https://togithub.com/diffplug/spotless/pull/1462)). - Help wanted for moving our tests too ([#1472](https://togithub.com/diffplug/spotless/issues/1472)) ### [`v2.31.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2310---2022-11-24) ##### Added - `importOrder` now support groups of imports without blank lines ([#1401](https://togithub.com/diffplug/spotless/pull/1401)) ##### Fixed - Don't treat `@Value` as a type annotation [#1367](https://togithub.com/diffplug/spotless/pull/1367) - Support `ktlint_disabled_rules` in `ktlint` 0.47.x [#1378](https://togithub.com/diffplug/spotless/pull/1378) - Share git repositories across projects when using ratchet ([#1426](https://togithub.com/diffplug/spotless/pull/1426)) ##### Changes - Bump default `ktfmt` version to latest `0.40` -> `0.41` ([#1340](https://togithub.com/diffplug/spotless/pull/1340)) - Bump default `scalafmt` version to latest `3.5.9` -> `3.6.1` ([#1373](https://togithub.com/diffplug/spotless/pull/1373)) - Bump default `diktat` version to latest `1.2.3` -> `1.2.4.2` ([#1393](https://togithub.com/diffplug/spotless/pull/1393)) - Bump default `palantir-java-format` version to latest `2.10` -> `2.28` ([#1393](https://togithub.com/diffplug/spotless/pull/1393)) ### [`v2.30.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2300---2022-09-14) ##### Added - `formatAnnotations()` step to correct formatting of Java type annotations. It puts type annotations on the same line as the type that they qualify. Run it after a Java formatting step, such as `googleJavaFormat()`. ([#1275](https://togithub.com/diffplug/spotless/pull/1275)) ##### Changes - Bump default `ktfmt` version to latest `0.39` -> `0.40` ([#1312](https://togithub.com/diffplug/spotless/pull/1312)) - Bump default `ktlint` version to latest `0.46.1` -> `0.47.1` ([#1303](https://togithub.com/diffplug/spotless/pull/1303)) - Also restored support for older versions of ktlint back to `0.31.0` ### [`v2.29.0`](https://togithub.com/diffplug/spotless/blob/HEAD/CHANGES.md#2290---2022-08-23) ##### Added - `scalafmt` integration now has a configuration option `majorScalaVersion` that allows you to configure the Scala version that gets resolved from the maven artifact ([#1283](https://togithub.com/diffplug/spotless/pull/1283)) - Converted `scalafmt` integration to use a compile-only source set (fixes [#524](https://togithub.com/diffplug/spotless/issues/524)) ##### Changes - Add the `ktlint` rule in error messages when `ktlint` fails to apply a fix ([#1279](https://togithub.com/diffplug/spotless/pull/1279)) - Bump default `scalafmt` to latest `3.0.8` -> `3.5.9` (removed support for pre-`3.0.0`) ([#1283](https://togithub.com/diffplug/spotless/pull/1283))Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.