Skip to content

Commit 1a3ce30

Browse files
author
Vincent Potucek
committed
Add SanityCheck#EqualityRulesRecipes spring-projects#48630
Signed-off-by: Vincent Potucek <vpotucek@me.com> ``` Changes have been made to build-plugin/spring-boot-maven-plugin/src/main/java/org/springframework/boot/maven/ClassPath.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$PathOfUriRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/main/java/org/springframework/boot/buildpack/platform/io/InspectedContent.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$FilesCreateTempFileToFileRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/main/java/org/springframework/boot/buildpack/platform/build/Cache.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/main/java/org/springframework/boot/buildpack/platform/build/BuildpackReference.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$PathOfUriRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/docker/configuration/DockerConfigurationMetadataTests.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$PathOfUriRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/docker/configuration/ResolvedDockerHostTests.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$PathOfUriRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/build/EphemeralBuilderTests.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$UtcConstantRecipe tech.picnic.errorprone.refasterrules.TimeRulesRecipes$InstantAtOffsetRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/build/BuildRequestTests.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$UtcConstantRecipe Changes have been made to buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/build/ImageBuildpackTests.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$FilesCreateTempFileToFileRecipe Changes have been made to cli/spring-boot-cli/src/test/resources/commands/command.groovy by: org.openrewrite.java.format.RemoveTrailingWhitespace Changes have been made to cli/spring-boot-cli/src/test/resources/dir-sample/code/app.groovy by: org.openrewrite.java.format.RemoveTrailingWhitespace Changes have been made to cli/spring-boot-cli/src/test/resources/scripts/closure.groovy by: org.openrewrite.java.format.RemoveTrailingWhitespace Changes have been made to cli/spring-boot-cli/src/test/resources/scripts/command.groovy by: org.openrewrite.java.format.RemoveTrailingWhitespace Changes have been made to core/spring-boot/src/test/java/org/springframework/boot/info/SslInfoTests.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$UtcConstantRecipe Changes have been made to core/spring-boot/src/test/java/org/springframework/boot/logging/AbstractLoggingSystemTests.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$FilesCreateTempFileToFileRecipe Changes have been made to core/spring-boot/src/test/java/org/springframework/boot/convert/PeriodToStringConverterTests.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$ZeroPeriodRecipe Changes have been made to core/spring-boot/src/test/java/org/springframework/boot/convert/PeriodStyleTests.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$ZeroPeriodRecipe Changes have been made to core/spring-boot-test/src/main/java/org/springframework/boot/test/util/TestPropertyValues.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe Changes have been made to core/spring-boot-test/src/main/java/org/springframework/boot/test/system/OutputCapture.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityLambdaRecipe Changes have been made to loader/spring-boot-loader/src/main/java/org/springframework/boot/loader/net/protocol/nested/NestedUrlConnection.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$UtcConstantRecipe Changes have been made to loader/spring-boot-loader-tools/src/main/java/org/springframework/boot/loader/tools/SizeCalculatingEntryWriter.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$FilesCreateTempFileToFileRecipe Changes have been made to module/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/web/exchanges/HttpExchange.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$ClockInstantRecipe Changes have been made to module/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/management/HeapDumpWebEndpoint.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$FilesCreateTempFileToFileRecipe Changes have been made to module/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/info/InfoPropertiesInfoContributor.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe Changes have been made to module/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/invoker/cache/CachingOperationInvoker.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe Changes have been made to module/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/filewatch/ChangedFile.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe Changes have been made to module/spring-boot-devtools/src/test/java/org/springframework/boot/devtools/restart/MainMethodTests.java by: org.openrewrite.staticanalysis.ReplaceLambdaWithMethodReference Changes have been made to module/spring-boot-jetty/src/main/java/org/springframework/boot/jetty/autoconfigure/JettyWebServerFactoryCustomizer.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe Changes have been made to module/spring-boot-jetty/src/test/java/org/springframework/boot/jetty/autoconfigure/JettyWebServerFactoryCustomizerTests.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$FilesCreateTempFileToFileRecipe Changes have been made to module/spring-boot-kafka/src/main/java/org/springframework/boot/kafka/autoconfigure/ConcurrentKafkaListenerContainerFactoryConfigurer.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe Changes have been made to module/spring-boot-micrometer-metrics/src/main/java/org/springframework/boot/micrometer/metrics/autoconfigure/ssl/SslMeterBinder.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$ClockInstantRecipe Changes have been made to module/spring-boot-micrometer-metrics/src/test/java/org/springframework/boot/micrometer/metrics/autoconfigure/ssl/SslMeterBinderTests.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$UtcConstantRecipe Changes have been made to module/spring-boot-security/src/test/java/org/springframework/boot/security/autoconfigure/UserDetailsServiceAutoConfigurationTests.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityLambdaRecipe Changes have been made to module/spring-boot-sql/src/main/java/org/springframework/boot/sql/autoconfigure/init/OnDatabaseInitializationCondition.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityRecipe tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$NegationRecipe Changes have been made to module/spring-boot-tomcat/src/test/java/org/springframework/boot/tomcat/servlet/TomcatServletWebServerFactoryTests.java by: org.openrewrite.staticanalysis.ReplaceLambdaWithMethodReference Changes have been made to module/spring-boot-webflux/src/test/java/org/springframework/boot/webflux/observation/autoconfigure/WebFluxObservationAutoConfigurationTests.java by: tech.picnic.errorprone.refasterrules.TimeRulesRecipes tech.picnic.errorprone.refasterrules.TimeRulesRecipes$DurationOfSecondsRecipe Changes have been made to module/spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/autoconfigure/ZipkinHttpClientSender.java by: org.openrewrite.staticanalysis.ReplaceLambdaWithMethodReference Changes have been made to test-support/spring-boot-test-support/src/main/java/org/springframework/boot/testsupport/classpath/resources/Resources.java by: tech.picnic.errorprone.refasterrules.FileRulesRecipes tech.picnic.errorprone.refasterrules.FileRulesRecipes$PathOfUriRecipe Changes have been made to test-support/spring-boot-test-support/src/main/java/org/springframework/boot/testsupport/system/OutputCapture.java by: tech.picnic.errorprone.refasterrules.EqualityRulesRecipes tech.picnic.errorprone.refasterrules.EqualityRulesRecipes$EnumReferenceEqualityLambdaRecipe Please review and commit the results. Estimate time saved: 3h 6m BUILD SUCCESSFUL in 18m 9s ```
1 parent 927b2ee commit 1a3ce30

44 files changed

Lines changed: 160 additions & 61 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/actions/build/action.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,16 @@ runs:
6969
COMMERCIAL_REPO_USERNAME: ${{ inputs.commercial-repository-username }}
7070
COMMERCIAL_SNAPSHOT_REPO_URL: ${{ inputs.commercial-snapshot-repository-url }}
7171
run: ./gradlew build
72+
- name: Sanity Check
73+
id: sanity
74+
if: ${{ inputs.publish == 'false' }}
75+
shell: bash
76+
env:
77+
COMMERCIAL_RELEASE_REPO_URL: ${{ inputs.commercial-release-repository-url }}
78+
COMMERCIAL_REPO_PASSWORD: ${{ inputs.commercial-repository-password }}
79+
COMMERCIAL_REPO_USERNAME: ${{ inputs.commercial-repository-username }}
80+
COMMERCIAL_SNAPSHOT_REPO_URL: ${{ inputs.commercial-snapshot-repository-url }}
81+
run: ./gradlew rewriteDryRun -Dorg.gradle.jvmargs=-Xmx12G
7282
- name: Publish
7383
id: publish
7484
if: ${{ inputs.publish == 'true' }}

.github/workflows/build-pull-request.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ jobs:
1313
- name: Build
1414
id: build
1515
uses: ./.github/actions/build
16+
- name: Sanity
17+
id: sanity
18+
uses: ./.github/actions/build
1619
- name: Print JVM Thread Dumps When Cancelled
1720
if: cancelled()
1821
uses: ./.github/actions/print-jvm-thread-dumps

build-plugin/spring-boot-maven-plugin/src/main/java/org/springframework/boot/maven/ClassPath.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import java.nio.charset.UnsupportedCharsetException;
2525
import java.nio.file.Files;
2626
import java.nio.file.Path;
27-
import java.nio.file.Paths;
2827
import java.util.Arrays;
2928
import java.util.Collections;
3029
import java.util.List;
@@ -139,7 +138,7 @@ private static boolean isWindows(UnaryOperator<@Nullable String> getSystemProper
139138

140139
private static String toPathString(URL url) {
141140
try {
142-
return Paths.get(url.toURI()).toString();
141+
return Path.of(url.toURI()).toString();
143142
}
144143
catch (URISyntaxException ex) {
145144
throw new IllegalArgumentException(ex);

build.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
plugins {
1818
id "base"
19+
id "org.openrewrite.rewrite" version "7.23.0" apply false
1920
}
2021

2122
description = "Spring Boot Build"
@@ -46,3 +47,5 @@ subprojects {
4647
resolutionStrategy.cacheChangingModulesFor 0, "minutes"
4748
}
4849
}
50+
51+
apply from: rootProject.file("gradle/plugins/config/sanity.gradle")

buildpack/spring-boot-buildpack-platform/src/main/java/org/springframework/boot/buildpack/platform/build/BuildpackReference.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ boolean hasPrefix(String prefix) {
5454
try {
5555
URL url = new URL(this.value);
5656
if (url.getProtocol().equals("file")) {
57-
return Paths.get(url.toURI());
57+
return Path.of(url.toURI());
5858
}
5959
return null;
6060
}

buildpack/spring-boot-buildpack-platform/src/main/java/org/springframework/boot/buildpack/platform/build/Cache.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,15 @@ public String getDescription() {
7070
* @return the cache, or {@code null} if it is not a volume cache
7171
*/
7272
public @Nullable Volume getVolume() {
73-
return (this.format.equals(Format.VOLUME)) ? (Volume) this : null;
73+
return (this.format == Format.VOLUME) ? (Volume) this : null;
7474
}
7575

7676
/**
7777
* Return the details of the cache if it is a bind cache.
7878
* @return the cache, or {@code null} if it is not a bind cache
7979
*/
8080
public @Nullable Bind getBind() {
81-
return (this.format.equals(Format.BIND)) ? (Bind) this : null;
81+
return (this.format == Format.BIND) ? (Bind) this : null;
8282
}
8383

8484
/**
@@ -120,7 +120,7 @@ public boolean equals(@Nullable Object obj) {
120120
return false;
121121
}
122122
Cache other = (Cache) obj;
123-
return Objects.equals(this.format, other.format);
123+
return this.format == other.format;
124124
}
125125

126126
@Override

buildpack/spring-boot-buildpack-platform/src/main/java/org/springframework/boot/buildpack/platform/io/InspectedContent.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import java.io.IOException;
2424
import java.io.InputStream;
2525
import java.io.OutputStream;
26+
import java.nio.file.Files;
2627

2728
import org.jspecify.annotations.Nullable;
2829

@@ -168,7 +169,7 @@ public void write(byte[] b, int off, int len) throws IOException {
168169
}
169170

170171
private void convertToTempFile() throws IOException {
171-
this.tempFile = File.createTempFile("buildpack", ".tmp");
172+
this.tempFile = Files.createTempFile("buildpack", ".tmp").toFile();
172173
byte[] bytes = ((ByteArrayOutputStream) this.delegate).toByteArray();
173174
this.delegate = new FileOutputStream(this.tempFile);
174175
StreamUtils.copy(bytes, this.delegate);

buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/build/BuildRequestTests.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import java.time.Instant;
2525
import java.time.OffsetDateTime;
2626
import java.time.ZoneId;
27+
import java.time.ZoneOffset;
2728
import java.util.LinkedHashMap;
2829
import java.util.List;
2930
import java.util.Map;
@@ -58,7 +59,7 @@
5859
*/
5960
class BuildRequestTests {
6061

61-
private static final ZoneId UTC = ZoneId.of("UTC");
62+
private static final ZoneId UTC = ZoneOffset.UTC;
6263

6364
@TempDir
6465
@SuppressWarnings("NullAway.Init")

buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/build/EphemeralBuilderTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import java.nio.charset.StandardCharsets;
2828
import java.time.Instant;
2929
import java.time.OffsetDateTime;
30-
import java.time.ZoneId;
30+
import java.time.ZoneOffset;
3131
import java.util.ArrayList;
3232
import java.util.HashMap;
3333
import java.util.List;
@@ -123,7 +123,7 @@ void getArchiveHasFixedCreatedDate() throws Exception {
123123
EphemeralBuilder builder = new EphemeralBuilder(this.owner, this.image, this.targetImage, this.metadata,
124124
this.creator, this.env, this.buildpacks);
125125
Instant createInstant = builder.getArchive(null).getCreateDate();
126-
OffsetDateTime createDateTime = OffsetDateTime.ofInstant(createInstant, ZoneId.of("UTC"));
126+
OffsetDateTime createDateTime = createInstant.atOffset(ZoneOffset.UTC);
127127
assertThat(createDateTime.getYear()).isEqualTo(1980);
128128
assertThat(createDateTime.getMonthValue()).isOne();
129129
assertThat(createDateTime.getDayOfMonth()).isOne();

buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/build/ImageBuildpackTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ void resolveWhenUnqualifiedReferenceWithInvalidImageReferenceReturnsNull() {
186186
private @Nullable Object withMockLayers(InvocationOnMock invocation) {
187187
try {
188188
IOBiConsumer<String, TarArchive> consumer = invocation.getArgument(1);
189-
File tarFile = File.createTempFile("create-builder-test-", null);
189+
File tarFile = Files.createTempFile("create-builder-test-", null).toFile();
190190
try (TarArchiveOutputStream tarOut = new TarArchiveOutputStream(new FileOutputStream(tarFile))) {
191191
tarOut.setLongFileMode(TarArchiveOutputStream.LONGFILE_POSIX);
192192
writeTarEntry(tarOut, "/cnb/");

0 commit comments

Comments
 (0)