Browse Source

Document properties that were removed without a deprecation period

This commit documents properties that are removed without being
deprecated first. Previously those properties were undocumented.

Closes gh-47762
pull/47784/head
Stéphane Nicoll 2 months ago
parent
commit
85f330586a
  1. 5
      configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/main/java/org/springframework/boot/configurationmetadata/changelog/Difference.java
  2. 5
      configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/java/org/springframework/boot/configurationmetadata/changelog/ChangelogTests.java
  3. 6
      configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/resources/sample-1.0.json
  4. 10
      configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/resources/sample-2.0.json
  5. 12
      configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/resources/sample.adoc

5
configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/main/java/org/springframework/boot/configurationmetadata/changelog/Difference.java

@ -40,7 +40,10 @@ record Difference(DifferenceType type, ConfigurationMetadataProperty oldProperty @@ -40,7 +40,10 @@ record Difference(DifferenceType type, ConfigurationMetadataProperty oldProperty
return null;
}
if (newProperty.isDeprecated() && !oldProperty.isDeprecated()) {
return new Difference(DifferenceType.DEPRECATED, oldProperty, newProperty);
Level level = newProperty.getDeprecation().getLevel();
DifferenceType differenceType = (level == Level.WARNING) ? DifferenceType.DEPRECATED
: DifferenceType.DELETED;
return new Difference(differenceType, oldProperty, newProperty);
}
if (oldProperty.isDeprecated() && oldProperty.getDeprecation().getLevel() == Level.WARNING
&& newProperty.isDeprecated() && newProperty.getDeprecation().getLevel() == Level.ERROR) {

5
configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/java/org/springframework/boot/configurationmetadata/changelog/ChangelogTests.java

@ -39,7 +39,7 @@ class ChangelogTests { @@ -39,7 +39,7 @@ class ChangelogTests {
assertThat(differences).isNotNull();
assertThat(differences.oldVersionNumber()).isEqualTo("1.0");
assertThat(differences.newVersionNumber()).isEqualTo("2.0");
assertThat(differences.differences()).hasSize(6);
assertThat(differences.differences()).hasSize(7);
List<Difference> added = differences.differences()
.stream()
.filter((difference) -> difference.type() == DifferenceType.ADDED)
@ -51,7 +51,8 @@ class ChangelogTests { @@ -51,7 +51,8 @@ class ChangelogTests {
.stream()
.filter((difference) -> difference.type() == DifferenceType.DELETED)
.toList();
assertThat(deleted).hasSize(3)
assertThat(deleted).hasSize(4)
.anySatisfy((entry) -> assertProperty(entry.oldProperty(), "test.replace", String.class, "replace"))
.anySatisfy((entry) -> assertProperty(entry.oldProperty(), "test.delete", String.class, "delete"))
.anySatisfy(
(entry) -> assertProperty(entry.newProperty(), "test.delete.deprecated", String.class, "delete"))

6
configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/resources/sample-1.0.json

@ -6,6 +6,12 @@ @@ -6,6 +6,12 @@
"description": "Test equality.",
"defaultValue": "test"
},
{
"name": "test.replace",
"type": "java.lang.String",
"description": "Test Replace.",
"defaultValue": "replace"
},
{
"name": "test.deprecate",
"type": "java.lang.String",

10
configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/resources/sample-2.0.json

@ -6,6 +6,14 @@ @@ -6,6 +6,14 @@
"description": "Test add.",
"defaultValue": "new"
},
{
"name": "test.replace",
"type": "java.lang.String",
"deprecation": {
"level": "error",
"replacement": "test.add"
}
},
{
"name": "test.add.deprecated",
"type": "java.lang.String",
@ -28,7 +36,7 @@ @@ -28,7 +36,7 @@
"description": "Test deprecate.",
"defaultValue": "wrong",
"deprecation": {
"level": "error"
"level": "warn"
}
},
{

12
configuration-metadata/spring-boot-configuration-metadata-changelog-generator/src/test/resources/sample.adoc

@ -4,7 +4,13 @@ Configuration property changes between `1.0` and `2.0` @@ -4,7 +4,13 @@ Configuration property changes between `1.0` and `2.0`
== Deprecated in 2.0
_None_.
|======================
| Key | Replacement | Reason
| `test.deprecate`
|
|
|======================
@ -40,4 +46,8 @@ _None_. @@ -40,4 +46,8 @@ _None_.
| `test.removed.directly`
| `test.new.property`
| removed in third-party library without deprecation
| `test.replace`
| `test.add`
|
|======================

Loading…
Cancel
Save