Refactor `ApplicationResourceLoader` so that `preferFileResolution`
is supported using a new `ResourceFilePathResolver` strategy interface.
This update allows us to locate `ResourceFilePathResolver`
implementations in more suitable packages that are closer to the
code that they support.
See gh-44535
Update `ApplicationResourceLoader` so that the `preferFileResolution`
flag now also supports `FilteredReactiveWebContextResource`.
See gh-44535
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Add validation for the maximum JSON nesting depth in the JsonValueWriter.
This helps prevent a StackOverflowError that can potentially occur due
to excessive recursion when dealing with deeply nested JSON structures.
See gh-44627
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Update `EphemeralBuilder` so that it adds an additional layer that
containing an empty application (aka workspace) directory owned by
the build user.
Prior to this commit, the directory was only bound. This could cause
issues on Podman where, unlike Docker, the bound directory is owned
by `root`.
Fixes gh-45233
This commit updates the conditions in Neo4jReactiveDataAutoConfiguration
so that it gracefully backs off if certain beans are not present, rather
than assuming its sibling Neo4jDataAutoConfiguration has run.
Closes gh-44930
Prior to this commit, certain rules, like BeanPostProcessor,
did not work with external classes. This commit ensures that
ArchRules are executed within a context ClassLoader that includes
all classes from the compile classpath.
See gh-45202
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
This commit clarifies the semantic of declaring multiple profile
expression with the "spring.config.activate.on-profile" property.
See gh-44866
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
This commit updates jOOQ's DefaultExceptionTranslatorExecuteListener to
fallback on Spring Framework's default if no dbName is available.
See gh-44954
Signed-off-by: Dennis Melzer <dennis.melzer@de.bosch.com>
This commit addresses an issue where placeholders like {foo}
remain as {foo} if the message is the same as its code.
See gh-45212
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Prior to this commit, serializing `java.nio.file.Path` caused
a StackOverflowError because `Path.iterator()` always returns itself
as the first element of the iterator, which results in a
StackOverflowError.
This commit serializes `java.nio.file.Path` as JSON String.
See gh-44507
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Update auto-configured `IntegrationMBeanExporter` to be created from
a static method since it's a post-processor. Relevant injection now
occurs by overriding the `afterSingletonsInstantiated()` method.
Closes gh-45186