If the resource chain is used, such as by using the
`"spring.resources.chain.strategy.content.enabled"` property,
resource chain caching can prevent the developer from seeing
changes made to resources, so that caching should be disabled
when DevTools is enabled.
This commit sets the `"spring.resources.chain.cache"` property
to `true` when devtools is enabled.
Previously, there were two problems with servlet context initializer
beans that are a scoped proxy:
1. When there's no explicit registration bean the target of the scoped
proxy is registered rather than the proxy. This meant that the
proxy had no effect as it was being bypassed.
2. When there is an explicit registration bean, the registration is
performed twice: the faulty implicit registration described above
and explicit registration.
A fix (SPR-14816) has been made in Spring Framework so that we can
correctly determine the type of bean that will be produced by a
scoped proxy's factory bean. That change, coupled with the change in
this commit that ignored beans that are the target of a scoped proxy
addresses both of the problems described above. A single registration
is now performed and its the scoped proxy, rather than its target,
that is registered.
Closes gh-7150
Update `DevToolsPropertyDefaultsPostProcessor` so that property defaults
are only added at development time. Properties are now added only when
`Restarter` is initialize or remote devtools is enabled.
Fixes gh-7014
Update `ApplicationPidFileWriter` to support `ApplicationReadyEvent` in
addition to the already supported `ApplicationEnvironmentPreparedEvent`
and `ApplicationPreparedEvent` events.
Closes gh-7066
Fixes gh-7027
Update JpaBaseConfiguration so that the persistenceUnitRootLocation is
no longer detected. The update to gh-7003 means that we can now rely on
the standard detection mechanism.
Fixes gh-6983
See gh-6635