This commit removes the auto-configuration of the
`ServerHttpObservationFilter` bean for WebFlux applications as it's been
deprecated by Spring Framework.
The Observability instrumentation is now handled at the
`WebHttpHandlerBuilder` in Framework directly and doesn't need any
auto-configuration from Spring Boot.
Closes gh-37344
This commit adapts to API changes in Spring Framework, see
spring-projects/spring-framework#31117
Previously, the "autowired" executable to use for a bean was always
resolved, even if a custom code fragment didn't really need it. This
is key for binding of immutable configuration properties as we use an
instance supplier for it.
This changes means that the workaround added in maintenance releases
can be removed.
See gh-37337
Previously, AOT processing failed on processing an immutable
configuration properties that declare several constructors as the core
framework infrastructure tries to resolve the "autowired" constructor
to use, even if the custom code fragments are never going to use it.
This commit workarounds the problem in maintenance releases until a
proper fix is provided in the core framework. When AOT runs, a
SmartInstantiationAwareBeanPostProcessor is added to the bean factory
to provide the constructor to use. This implementation relies on the
same algorithm that the binder uses at runtime.
Closes gh-37283
This commit documents the relative ordering of `HandlerMapping` support
in Spring MVC and WebFlux applications.
As of Spring Framework 6.1.0, the Welcome Page support acts as a
fallback in case no index route has been defined by the application as a
`RouterFunction` or within an annotated `@Controller`.
Closes gh-34846
This commit fixes build issues, as the recent changes surfaced an
existing problem: QueryDsl auto-configurations were not guarded by
classpath conditions for QueryDsl Core.
See gh-34974