Skip to content

[ISSUE #7310] Remove legacy Spring Boot starter metadata - #7398

Open
sunnysabor wants to merge 1 commit into
apache:masterfrom
sunnysabor:feature/7310-remove-legacy-boot-metadata
Open

sunnysabor wants to merge 1 commit into
apache:masterfrom
sunnysabor:feature/7310-remove-legacy-boot-metadata

Conversation

@sunnysabor

@sunnysabor sunnysabor commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Closes #7310.

The main reactor requires Java 17 and pins Spring Boot 3.3.1 (spring-boot.version in the root POM); it declares no older Spring Boot compatibility line for non-client starters. The client starter subtree is excluded from this change so its separate compatibility policy remains intact.

Before removing the legacy files, I compared the 66 non-client spring.factories files (67 registrations) with each module's modern AutoConfiguration.imports; all classes matched exactly and no other factory keys were present. The repeatable check is:

python3 script/verify_spring_boot_auto_configuration.py 08e87ee7a5a80e70edd3a81dcd5ddf2207fef497

It reads the legacy metadata from that migration-base revision and fails if the current imports differ.

This removes the verified non-client spring.factories and spring.provides files, keeps every AutoConfiguration.imports file, and narrows RAT exclusions to the retained client and examples metadata.

Validation

  • Gateway, WAF plugin, and Nacos sync-data reactor tests: passed.
  • SDK, SDK Feign, registry, and Kubernetes reactor package builds: passed.
  • make build-admin build-bootstrap: passed; both binary distributions assembled.
  • Started the packaged Admin with local H2 and a temporary JWT key; /actuator/health returned 200 and UP.
  • Started the packaged gateway; /actuator/health returned 200 and UP.
  • JAR inspection for seven representative starter modules: modern imports present; legacy metadata absent.
  • ./mvnw checkstyle:check: passed.
  • ./mvnw apache-rat:check: passed.
  • Parity script: verified 66 files and 67 registrations.

The checks use the project's configured Spring Boot 3.3.1 baseline; client starters and their metadata were not changed.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Task] Remove legacy Spring Boot auto-configuration metadata from Boot 3 modules

1 participant