Description
While refactoring the Spring Framework build in #23282, we've found that the optional dependencies published with the POMs are misleading. As seen in #23234, some developers consider this information as:
- telling how a Spring application should consume Framework dependencies,
- recommendations about versions
- how to enable support for a particular library, etc.
As describe in #23234 (comment) we've found that many published optional dependencies are misleading in that sense. The Maven reference documentation states that optional
means:
In the shortest terms, optional lets other projects know that, when you use this project, you do not require this dependency in order to work correctly.
Instead of providing information that is misinterpreted by developers, the team decided to not publish that information. Note that the Spring Framework project not only still publishes a valid POM, but also that it's being built with Gradle and that mapping a custom Gradle configuration to a Maven optional scope was dubious in the first place.
The Spring Framework team will explore other ways to publish useful metadata for consumer projects.