Skip to content

Commit bf82239

Browse files
committed
Merge branch 'main' into bump-palantir-java-format
2 parents ce7563c + 770a495 commit bf82239

File tree

11 files changed

+52
-25
lines changed

11 files changed

+52
-25
lines changed

gradle/java-setup.gradle

+2-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ tasks.withType(JavaCompile).configureEach {
1515
apply plugin: 'com.github.spotbugs'
1616
spotbugs {
1717
ignoreFailures = false // bug free or it doesn't ship!
18-
reportLevel = 'medium' // low|medium|high (low = sensitive to even minor mistakes)
18+
// LOW|MEDIUM|DEFAULT|HIGH (low = sensitive to even minor mistakes).
19+
reportLevel = com.github.spotbugs.snom.Confidence.valueOf('MEDIUM')
1920
omitVisitors = [
2021
// https://spotbugs.readthedocs.io/en/latest/detectors.html#constructorthrow
2122
'ConstructorThrow',

lib-extra/build.gradle

+4-1
Original file line numberDiff line numberDiff line change
@@ -91,5 +91,8 @@ p2deps {
9191
}
9292

9393
// we'll hold the core lib to a high standard
94-
spotbugs { reportLevel = 'low' } // low|medium|high (low = sensitive to even minor mistakes)
94+
spotbugs {
95+
// LOW|MEDIUM|DEFAULT|HIGH (low = sensitive to even minor mistakes).
96+
reportLevel = com.github.spotbugs.snom.Confidence.valueOf('LOW')
97+
}
9598

lib/build.gradle

+4-1
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,10 @@ dependencies {
126126
}
127127

128128
// we'll hold the core lib to a high standard
129-
spotbugs { reportLevel = 'low' } // low|medium|high (low = sensitive to even minor mistakes)
129+
spotbugs {
130+
// LOW|MEDIUM|DEFAULT|HIGH (low = sensitive to even minor mistakes).
131+
reportLevel = com.github.spotbugs.snom.Confidence.valueOf('LOW')
132+
}
130133

131134
apply from: rootProject.file('gradle/special-tests.gradle')
132135
tasks.withType(Test).configureEach {

plugin-gradle/CHANGES.md

+6-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@ We adhere to the [keepachangelog](https://keepachangelog.com/en/1.0.0/) format (
66
### Changes
77
* Use palantir-java-format 2.38.0 on Java 21. ([#1920](https://github.com/diffplug/spotless/pull/1920))
88
* Bump default `googleJavaFormat` version to latest `1.17.0` -> `1.18.1`. ([#1920](https://github.com/diffplug/spotless/pull/1920))
9+
### Fixed
10+
* Make `KtfmtConfig.ConfigurableStyle#configure` public. ([#1926](https://github.com/diffplug/spotless/pull/1926))
11+
* **BREAKING CHANGE** `6.23.0` made breaking changes to the ABI of the `KotlinExtension` and `GroovyExtension`. Those are reflected retroactively now.
12+
- Previously, we had done semver on the Gradle plugin based only on buildscript compatibility.
13+
- From now on, we will consider ABI for the benefit of convention-based plugins.
914

1015
## [6.23.2] - 2023-12-01
1116
### Fixed
@@ -27,7 +32,7 @@ We adhere to the [keepachangelog](https://keepachangelog.com/en/1.0.0/) format (
2732
* Add a Step to remove semicolons from Groovy files. ([#1881](https://github.com/diffplug/spotless/pull/1881))
2833
* **POSSIBLY BREAKING** `userData` method has been removed from Ktlint step in ([#1891](https://github.com/diffplug/spotless/pull/1891)), you may use `editorConfigOverride` instead.
2934
* **POSSIBLY BREAKING** Reuse configs for `KotlinExtension` and `KotlinGradleExtension` in ([#1890](https://github.com/diffplug/spotless/pull/1890)), this may break your integrations in Gradle Kotlin DSL, wait for Spotless 6.23.1 to fix this.
30-
* **POSSIBLY BREAKING** Reuse configs for `GroovyExtension` and `GroovyGradleExtension` in ([#1890](https://github.com/diffplug/spotless/pull/1890)), this may break your integrations in Gradle Kotlin DSL, wait for Spotless 6.23.1 to fix this.
35+
* **POSSIBLY BREAKING** Reuse configs for `GroovyExtension` and `GroovyGradleExtension` in ([#1892](https://github.com/diffplug/spotless/pull/1892)), this may break your integrations in Gradle Kotlin DSL, wait for Spotless 6.23.1 to fix this.
3136

3237
## [6.22.0] - 2023-09-28
3338
### Added

plugin-gradle/src/main/java/com/diffplug/gradle/spotless/BaseKotlinExtension.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ private FormatterStep createStep() {
136136
}
137137

138138
public class ConfigurableStyle {
139-
private void configure(Consumer<KtfmtStep.KtfmtFormattingOptions> optionsConfiguration) {
139+
public void configure(Consumer<KtfmtStep.KtfmtFormattingOptions> optionsConfiguration) {
140140
KtfmtStep.KtfmtFormattingOptions ktfmtFormattingOptions = new KtfmtStep.KtfmtFormattingOptions();
141141
optionsConfiguration.accept(ktfmtFormattingOptions);
142142
options = ktfmtFormattingOptions;

plugin-gradle/src/test/java/com/diffplug/gradle/spotless/KotlinExtensionTest.java

+11-6
Original file line numberDiff line numberDiff line change
@@ -45,21 +45,26 @@ void integrationDiktat() throws IOException {
4545
}
4646

4747
@Test
48-
void integrationKtfmt_dropboxStyle_0_19() throws IOException {
49-
setFile("build.gradle").toLines(
48+
void integrationKtfmtDropboxStyleWithPublicApi() throws IOException {
49+
setFile("build.gradle.kts").toLines(
5050
"plugins {",
51-
" id 'org.jetbrains.kotlin.jvm' version '1.6.21'",
52-
" id 'com.diffplug.spotless'",
51+
" id(\"org.jetbrains.kotlin.jvm\") version \"1.6.21\"",
52+
" id(\"com.diffplug.spotless\")",
5353
"}",
5454
"repositories { mavenCentral() }",
5555
"spotless {",
5656
" kotlin {",
57-
" ktfmt('0.19').dropboxStyle()",
57+
" ktfmt().dropboxStyle().configure {",
58+
" it.setMaxWidth(4)",
59+
" it.setBlockIndent(4)",
60+
" it.setContinuationIndent(4)",
61+
" it.setRemoveUnusedImport(false)",
62+
" }",
5863
" }",
5964
"}");
6065
setFile("src/main/kotlin/basic.kt").toResource("kotlin/ktfmt/basic.dirty");
6166
gradleRunner().withArguments("spotlessApply").build();
62-
assertFile("src/main/kotlin/basic.kt").sameAsResource("kotlin/ktfmt/basic-dropboxstyle.clean");
67+
assertFile("src/main/kotlin/basic.kt").sameAsResource("kotlin/ktfmt/basic-dropbox-style.clean");
6368
}
6469

6570
@Test

plugin-maven/CHANGES.md

+2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ We adhere to the [keepachangelog](https://keepachangelog.com/en/1.0.0/) format (
66
### Changes
77
* Use palantir-java-format 2.38.0 on Java 21. ([#1920](https://github.com/diffplug/spotless/pull/1920))
88
* Bump default `googleJavaFormat` version to latest `1.17.0` -> `1.18.1`. ([#1920](https://github.com/diffplug/spotless/pull/1920))
9+
### Fixed
10+
* Revert [#1846](https://github.com/diffplug/spotless/issues/1846) from 2.41.0 which causes the plugin to format generated sources in the `target` directory. ([#1928](https://github.com/diffplug/spotless/pull/1928))
911

1012
## [2.41.0] - 2023-11-27
1113
### Added

plugin-maven/src/main/java/com/diffplug/spotless/maven/java/Java.java

+2-11
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,8 @@
2020
import java.io.File;
2121
import java.nio.file.Path;
2222
import java.nio.file.Paths;
23-
import java.util.ArrayList;
24-
import java.util.List;
2523
import java.util.Set;
24+
import java.util.stream.Stream;
2625

2726
import org.apache.maven.model.Build;
2827
import org.apache.maven.project.MavenProject;
@@ -45,15 +44,7 @@ public class Java extends FormatterFactory {
4544
public Set<String> defaultIncludes(MavenProject project) {
4645
Path projectDir = project.getBasedir().toPath();
4746
Build build = project.getBuild();
48-
49-
List<String> includes = new ArrayList<>();
50-
includes.add(build.getSourceDirectory());
51-
includes.add(build.getTestSourceDirectory());
52-
includes.addAll(project.getCompileSourceRoots());
53-
includes.addAll(project.getTestCompileSourceRoots());
54-
55-
return includes.stream()
56-
.distinct()
47+
return Stream.of(build.getSourceDirectory(), build.getTestSourceDirectory())
5748
.map(Paths::get)
5849
.map(projectDir::relativize)
5950
.map(Java::fileMask)

settings.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ plugins {
1010
// https://plugins.gradle.org/plugin/com.gradle.plugin-publish
1111
id 'com.gradle.plugin-publish' version '1.2.1' apply false
1212
// https://github.com/gradle-nexus/publish-plugin/releases
13-
id 'io.github.gradle-nexus.publish-plugin' version '1.3.0' apply false
13+
id 'io.github.gradle-nexus.publish-plugin' version '2.0.0-rc-1' apply false
1414
// https://github.com/spotbugs/spotbugs-gradle-plugin/releases
15-
id 'com.github.spotbugs' version '5.2.3' apply false
15+
id 'com.github.spotbugs' version '6.0.1' apply false
1616
// https://github.com/diffplug/spotless-changelog/blob/main/CHANGELOG.md
1717
id 'com.diffplug.spotless-changelog' version '3.0.2' apply false
1818
// https://github.com/diffplug/goomph/blob/main/CHANGES.md

testlib/build.gradle

+4-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,10 @@ dependencies {
2121
}
2222

2323
// we'll hold the testlib to a low standard (prize brevity)
24-
spotbugs { reportLevel = 'high' } // low|medium|high (low = sensitive to even minor mistakes)
24+
spotbugs {
25+
// LOW|MEDIUM|DEFAULT|HIGH (low = sensitive to even minor mistakes).
26+
reportLevel = com.github.spotbugs.snom.Confidence.valueOf('HIGH')
27+
}
2528

2629
apply from: rootProject.file('gradle/special-tests.gradle')
2730
tasks.withType(Test).configureEach {
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import a.*
2+
import a.b
3+
import a.b.c.*
4+
import kotlinx.android.synthetic.main.layout_name.*
5+
6+
fun main() {
7+
fun name() {
8+
a()
9+
return b
10+
}
11+
println(
12+
";")
13+
println()
14+
}

0 commit comments

Comments
 (0)