Update `SslMeterBinder` to the status tag is no longer included in the
reported metrics. Instead the expiry date should be used directly by
the monitoring system.
Closes gh-45602
Improve constructor binding documentation for Kotlin and add a test
to prove a no-param primary constructor disables constructor binding.
Closes gh-44849
Previously, if a ConfigurationProperties had a nested type or was
extending from a type located outside the compilation unit, no
metadata discovered on the source code was available (documentation and
explicit default value, if any). This typically happens when such a type
resides in another module.
This commit introduces `@ConfigurationPropertiesSource` as a way to
annotate such type and have metadata generated for them in their own
module.
Type-metadata is generated as one file per type and is reused
transparently whenever that type is used. As for module metadata, an
additional file can be crafted manually and will be merged when the
metadata for the type is generated.
The following is an example structure with two types where one has
an additional metadata:
META-iNF/
spring/
configuration-properties/
additional/
com.example.SourceOne.json
com.example.SourceOne.json
com.example.SourceTwo.json
Those files are used only by the annotation processor and are not meant
to be public API.
See gh-18366
This commit upgrades to Kotlin 2.1.0. Two related dependencies have been
updated as well: Kotlin Coroutines to 1.10, and Kotlin Serialization to
1.8.
As of Kotlin 2, it is no longer possible to have a Java type and a
Kotlin type with the same name. As our code samples follow that
unfortunate pattern, this commit makes sure that the Kotlin sample code
does not depend on any of the Java counterpart and configure the kotlin
compilation plugin to ignore Java sources.
The minimum version of Gradle is 7.6.4. It bundles a version of Kotlin
that cannot compile a Kotlin build script when spring-core, compiled
with Kotlin 2.1, is on the classpath. Using Gradle 8.12 to run the DSL
tests avoids the problem.
Closes gh-45486
Co-authored-by: Andy Wilkinson <andy.wilkinson@broadcom.com>
Update the reference documentation to provide more details about the
three supported methods of starting Testcontainer containers.
See gh-44187
Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>
Document that `applicationTaskExecutor` as a bootstrap executor for the
context if no `bootstrapExecutor` bean is defined.
See gh-45232
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 adds support for the standard 'optional:' prefix in Log4j2
override file locations, ensuring missing files are ignored without
throwing exceptions.
See gh-44488
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Update `OtlpMetricsExportAutoConfiguration` to use the new
`OtlpMetricsSender`interface that allows users to customize the
sending of OTLP metrics using the `OtlpMeterRegistry`.
See gh-45204
Update `ElasticCommonSchemaStructuredLogFormatter` implementations so
that nested JSON is used for entries that previous has a '.' in the
name. This format follows the ECS specification and should be compatible
with more backends.
Fixes gh-45063
Show the use of token properties in authorization server clients
configuration example
See gh-45019
Signed-off-by: Tran Ngoc Nhan <ngocnhan.tran1996@gmail.com>