rewrite-spring icon indicating copy to clipboard operation
rewrite-spring copied to clipboard

SpringBootProperties_3_4_EnabledToAccess not changing the property value

Open jjank opened this issue 4 weeks ago • 1 comments

What version of OpenRewrite are you using?

I am using

  • OpenRewrite ?
  • Maven/Gradle plugin: 6.27.1
  • rewrite-spring: 6.22.0

How are you running OpenRewrite?

mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-spring:6.22.0 -Drewrite.activeRecipes=org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_5 -Drewrite.exportDatatables=false 

What is the smallest, simplest way to reproduce the problem?

  1. Check out the Spring Petclinic project
  2. Checkout commit https://github.com/spring-projects/spring-petclinic/commit/66747e344ec6d4ec5fce2c603c1b61eeeadda8ff via git checkout 66747e344ec6d4ec
  3. Run the Upgrade Spring Boot 3.5 recipe with the maven command described above

What did you expect to see?

management.endpoints.access.default=none within the @SpringBootTest Annotation of CrashControllerIntegrationTests (Just like in HEAD of the repo):

@SpringBootTest(webEnvironment = RANDOM_PORT,
		properties = { "spring.web.error.include-message=ALWAYS", "management.endpoints.access.default=none" })
@AutoConfigureTestRestTemplate
class CrashControllerIntegrationTests {

What did you see instead?

@SpringBootTest(webEnvironment = RANDOM_PORT,
		properties = { "server.error.include-message=ALWAYS", "management.endpoints.access.default=false" })
class CrashControllerIntegrationTests {
  • The key was migrated correctly from the old management.endpoints.enabled-by-default
  • However the change of value was not applied from false to none (see https://github.com/openrewrite/rewrite-spring/blob/main/src/main/resources/META-INF/rewrite/spring-boot-34-properties.yml#L68)

What is the full stack trace of any errors you encountered?

No errors, but this was the ouput of the maven plugin:

[INFO] --- rewrite:6.27.1:run (default-cli) @ spring-petclinic ---
[INFO] Using active recipe(s) [org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_5]
[INFO] Using active styles(s) []
Downloading from spring-snapshots: https://repo.spring.io/snapshot/org/openrewrite/recipe/rewrite-spring/maven-metadata.xml
Downloading from spring-milestones: https://repo.spring.io/milestone/org/openrewrite/recipe/rewrite-spring/maven-metadata.xml
Downloading from central: https://repo.maven.apache.org/maven2/org/openrewrite/recipe/rewrite-spring/maven-metadata.xml
Downloaded from central: https://repo.maven.apache.org/maven2/org/openrewrite/recipe/rewrite-spring/maven-metadata.xml (4.7 kB at 74 kB/s)
[INFO] Validating active recipes...
[INFO] Project [petclinic] Resolving Poms...
[INFO] Project [petclinic] Parsing source files
[INFO] Running recipe(s)...
[WARNING] Changes have been made to pom.xml by:
[WARNING]     org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_4
[WARNING]         org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_3
[WARNING]             org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_2
[WARNING]                 org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_1
[WARNING]                     org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_0
[WARNING]                         org.openrewrite.java.migrate.UpgradeToJava17
[WARNING]                             org.openrewrite.java.migrate.Java8toJava11
[WARNING]                                 org.openrewrite.java.migrate.UpgradeToJava8
[WARNING]                                     org.openrewrite.java.migrate.UpgradeToJava7
[WARNING]                                         org.openrewrite.java.migrate.UpgradeToJava6
[WARNING]                                             org.openrewrite.java.migrate.jacoco.UpgradeJaCoCo
[WARNING]                                                 org.openrewrite.maven.UpgradePluginVersion: {groupId=org.jacoco, artifactId=jacoco-maven-plugin, newVersion=0.8.x}
[WARNING]         org.openrewrite.maven.UpgradeParentVersion: {groupId=org.springframework.boot, artifactId=spring-boot-starter-parent, newVersion=3.5.x}
[WARNING] Changes have been made to src/test/java/org/springframework/samples/petclinic/system/I18nPropertiesSyncTest.java by:
[WARNING]     org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_4
[WARNING]         org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_3
[WARNING]             org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_2
[WARNING]                 org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_1
[WARNING]                     org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_0
[WARNING]                         org.openrewrite.java.migrate.UpgradeToJava17
[WARNING]                             org.openrewrite.java.migrate.Java8toJava11
[WARNING]                                 org.openrewrite.java.migrate.nio.file.PathsGetToPathOf
[WARNING]                                     org.openrewrite.java.ChangeMethodTargetToStatic: {methodPattern=java.nio.file.Paths get(..), fullyQualifiedTargetTypeName=java.nio.file.Path}
[WARNING]                                     org.openrewrite.java.ChangeMethodName: {methodPattern=java.nio.file.Path get(..), newMethodName=of}
[WARNING] Changes have been made to src/test/java/org/springframework/samples/petclinic/system/CrashControllerIntegrationTests.java by:
[WARNING]     org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_4
[WARNING]         org.openrewrite.java.spring.boot3.SpringBootProperties_3_4
[WARNING]             org.openrewrite.java.spring.boot3.SpringBootProperties_3_4_EnabledToAccess
[WARNING]                 org.openrewrite.java.spring.ChangeSpringPropertyKey: {oldPropertyKey=management.endpoints.enabled-by-default, newPropertyKey=management.endpoints.access.default}

Are you interested in contributing a fix to OpenRewrite?

Yes :)

jjank avatar Jan 16 '26 09:01 jjank