Commit Graph
100 Commits
Author SHA1 Message Date
Yanming Zhou 7522f679fd Inject Customizers as ObjectProvider to keep consistency
See gh-50909

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-07-14 11:23:34 +02:00
Yanming Zhou f96808edfa Apply GraphQL customizers in order
See gh-50908

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-07-03 12:17:18 +02:00
Yanming Zhou 9824f25998 Remove unnecessary @Nullables from local array variable declarations
See gh-50881

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-06-29 10:28:32 +01:00
Yanming Zhou dff33aec55 Remove unnecessary @Nullables from local variable declarations
See gh-50866

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-06-28 10:39:07 +01:00
Yanming Zhou 9d5c98b7e9 Replace isAssignableFrom() with isInstance() where feasible
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-50750
2026-06-24 19:11:59 +01:00
Yanming Zhou 59d457f705 Remove unnecessary null check
See gh-50504

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-05-27 10:10:50 +02:00
Yanming Zhou 9520eb9622 Do not use String#replaceAll() with a non-regex pattern
See gh-49816

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-03-27 11:40:28 +01:00
Yanming Zhou 664467563b Remove empty package "org.springframework.boot.actuate.data"
See gh-49741

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-03-24 19:02:20 -07:00
Yanming Zhou 147d3d763b Members declared in final classes should not be protected
See gh-49031

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-02-23 16:28:44 +01:00
Yanming Zhou 42e55c0cf7 Polish lambda expression and method reference
See gh-49023

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2026-01-30 18:46:24 +01:00
Yanming Zhou 5733ee723e Remove unnecessary @ConfigurationPropertiesSource
Remove @ConfigurationPropertiesSource from classes that reside in
the same module as all referencing @ConfigurationProperties classes.

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-48934
2026-01-23 10:33:35 +00:00
Yanming Zhou 97e7753cdb Configure devtools to set trace probability to 100% by default
See gh-47721

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-10-23 11:28:38 +02:00
Yanming Zhou 001230c389 Introduce a shared abstraction for database initialization
Add a new shared abstraction used by Spring Batch,
Spring Integration, Spring Session and Quartz.

See gh-46213

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-10-22 13:36:39 -07:00
Yanming Zhou 609b0b444e Use JsonMapper instead of ObjectMapper where feasible
See gh-47503

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-10-20 13:16:52 +02:00
Yanming Zhou aa09c8583d Fix wrong variable name
See gh-47478

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-10-10 17:37:16 +02:00
Yanming Zhou 95305691ab Add support for SimpleTaskExecutor#cancel-remaining-tasks-on-close
See https://github.com/spring-projects/spring-framework/issues/35372
See gh-47244

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-09-17 16:04:03 +02:00
Yanming Zhou 612714f35e Fix typo
See gh-47234

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-09-17 09:10:26 +02:00
Yanming Zhou c8d29fd3fe Create service connections for image with registry host and without project
See gh-46974

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-09-02 14:30:01 +02:00
Yanming Zhou f547bc27a5 Fix typo
See gh-46973

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-08-28 16:56:46 +02:00
Yanming Zhou d4bd053030 Fix wrong "public-key-location" configuration key
See gh-46627

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-07-31 11:42:13 +01:00
Yanming Zhou af8558a84a Polish usage of @ConditionalOnWebApplication for consistency
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-45880
2025-07-07 11:29:58 +01:00
Yanming Zhou a42ba82fea Introduce TestSliceTestContextBootstrapper for test slices
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-44354
2025-07-02 13:24:59 +01:00
Yanming Zhou 01ffdc8a02 Polishing Javadoc of QuartzDataSourceScriptDatabaseInitializer
Align with other `DataSourceScriptDatabaseInitializer`s

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-46249
2025-07-02 13:12:16 +01:00
Yanming Zhou 520f7abb9f Replace fully qualified class to import
See gh-46234

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-07-01 11:10:51 +02:00
Yanming Zhou 0ebe00a1d6 Inner class 'SpringBootWebFluxSecurityConfiguration' should be static
See gh-45882

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-06-12 11:32:06 +02:00
Yanming Zhou 8fd71f9142 Remove unused SslBundles from RedisConnectionConfiguration
See gh-45644

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-06-02 16:27:36 +02:00
Yanming Zhou 9ccd1f0726 Prevent that only org.springframework.core.ResolvableType is used
See gh-45635

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-06-02 16:19:03 +02:00
Yanming Zhou 43d2abbcc6 Harmonize Otlp*Configurations
See gh-45643

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-25 09:45:07 +02:00
Yanming Zhou 0fea1a00e0 Reuse properties from field
See gh-45642

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-23 15:46:54 +01:00
Yanming Zhou 0d153dd91a Remove unused imports in sample
See gh-45554

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-15 08:27:01 +02:00
Yanming Zhou e723dffb97 Remove FILE_LOG_PATTERN property from console-only log4j2.xml
See gh-45509

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-14 11:48:21 +02:00
Yanming Zhou 658764bfd8 Polish MetricsAutoConfiguration
Align `meterRegistryPostProcessor` with `meterRegistryCloser`, the
`@Bean` method shouldn't be public if the return type is not public.

See gh-45521

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-13 16:18:25 +02:00
Yanming Zhou 1325429e5e Polish PrometheusProperties
See gh-45503

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-13 16:14:52 +02:00
Yanming Zhou ef5031fd0e Stop considering "spring.batch.initialize-schema"
See gh-45380

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-12 16:33:56 +02:00
Yanming Zhou 91715a8c7d Test that source information is resolved from super class
See gh-45382

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-05-07 10:36:41 +02:00
Yanming Zhou fc387e7b8d Polish variable name
See gh-45308

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-04-29 13:13:55 +02:00
Yanming Zhou 6eae09ba68 Document the semantic of using multiple profile expressions
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>
2025-04-17 14:24:03 +02:00
Yanming Zhou 0a1c9060c5 Polish ternary operator
See gh-45156

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-04-11 09:19:01 -07:00
Yanming Zhou 597c58f43d Add support for SimpleTaskExecutor#reject-tasks-when-limit-reached
See gh-45155

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-04-11 11:51:37 +02:00
Yanming Zhou 89fb48691a Polish AutoConfigurationMetadataLoader
Align to other final classes, the protected modifier is meaningless.

See gh-45020

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-04-07 14:30:02 +02:00
Yanming Zhou 4e1fa66420 Add 'spring.kafka.consumer.max-poll-interval' configuration property
See gh-44901

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-26 12:04:57 +01:00
Yanming Zhou 509a790721 Polish
See gh-44814

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-21 08:32:34 +01:00
Yanming Zhou 81db52063a Polishing BatchAutoConfigurationTests
1. Rename `TestConfiguration` to `TestJpaConfiguration` and remove unnecessary reference.
2. Use `withBean` instead of `withUserConfiguration` to avoid new configuration class.
3. Use kebab-case for configuration key

See gh-44800

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-21 08:12:45 +01:00
Yanming Zhou 7af7820a64 Auto-configu Batch to use JobsParametersConverter bean when available
See gh-44799

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-20 12:27:14 +00:00
Yanming Zhou f4a9236e01 Allow to configure validateTransactionState for Spring Batch
See gh-44803

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-20 12:07:57 +00:00
Yanming Zhou aa72f4d553 Remove workaround for Java Records in tests
See gh-44747

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-18 09:48:42 +01:00
Yanming Zhou fa9c1f0c41 Polish usage of @ConfigurationProperties
See gh-44725

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-17 09:01:08 +01:00
Yanming Zhou 81048b42ca Introduce PollerMetadataCustomizer for Spring Integration
See gh-44637

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-14 13:58:21 +01:00
Yanming Zhou baa89c5ce8 Add additional configuration properties for JdbcTemplate.
This commit adds configuration properties for additional settings of
the auto-configured JdbcTemplate:

* ignore-warnings
* skip-results-processing
* skip-undeclared-results
* results-map-case-insensitive

See gh-44470

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-03-07 10:33:59 +01:00
Yanming Zhou 8d27f4ee7c Include non-default DataSource candidates
This commit updates H2ConsoleAutoConfiguration to consider non-default
data sources when logging connection URLs.

See gh-44293

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-02-18 11:18:26 +01:00
Yanming Zhou 437fc028a0 Include non-default HikariDataSource candidates in metrics
See https://github.com/spring-projects/spring-boot/issues/43481#issuecomment-2655527313

See gh-44253

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-02-13 10:35:08 +00:00
Yanming Zhou c1d97ffe16 Refactor @ConfigurationProperties that only use prefix
See gh-43917

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-24 14:58:36 -08:00
Yanming Zhou 7bcdb7d3ee Enforce @ConfigurationProperties don't use only prefix
See gh-43917

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-24 14:57:32 -08:00
Yanming Zhou 964abef6b3 Use isXxx() instead of getXxx() for boolean properties
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-43934
2025-01-24 14:27:47 -08:00
Yanming Zhou aa5d8ecbea Add support for multiple StructuredLoggingJsonMembersCustomizers
Update `StructuredLoggingJsonProperties` and related class so that
multiple `StructuredLoggingJsonMembersCustomizer` classes can be
used.

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-43368
2025-01-24 13:51:20 -08:00
Yanming Zhou 7391cd876e Rename configuration class for consistency
See gh-43866

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-24 13:49:35 +01:00
Yanming Zhou fcc6655c06 Parse Redis database from url if present
See gh-43813

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-23 11:30:31 +00:00
Yanming Zhou 0e7d480545 Add spring.validation.method.adapt-constraint-violations property
See gh-43886

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-22 14:35:47 +00:00
Yanming Zhou 24d1b3ca94 Parse redis database from url if present
See gh-43813

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-21 17:02:25 +00:00
Yanming Zhou 960c8825e0 Replace @ConditionalOnProperty with …BooleanProperty where feasible
See gh-43868

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-21 15:08:26 +00:00
Yanming Zhou 54c4716972 Improve ConditionalOnSingleCandidate's Javadoc
See gh-43826

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-15 13:41:03 +01:00
Yanming Zhou 555b0a6ea4 Mention @ConditionalOnBooleanProperty in reference document
See gh-43827

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-15 13:11:33 +01:00
Yanming Zhou a18c2f8f7e Polish PropertiesRedisConnectionDetails
See gh-43825

Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
2025-01-15 11:55:48 +00:00
Yanming Zhou d85a93b60b Deprecate ConditionOutcome.inverse()
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>

See gh-43739
2025-01-13 14:45:13 -08:00
Yanming Zhou 0d3e0245a2 Add support for configuring Tomcat connector's max parameter count
See gh-43286
2025-01-07 14:35:31 +01:00
Yanming Zhou 1ecf1f3c74 Remove unnecessary creation of DataSourceProperties
This commit removes the creation of DataSourceProperties in
DataSourceTransactionManagerAutoConfiguration as the latter does not
use the former.

See gh-43603
2025-01-07 12:38:24 +01:00
Yanming Zhou 44e7dd3653 Make application main class explicit in usage help
See gh-43614
2025-01-07 12:33:59 +01:00
Yanming Zhou 6366511b59 Fix typo
See gh-43557
2024-12-18 09:53:53 +01:00
Yanming Zhou a964bbd8cb Polish variable name for consistency
See gh-43483
2024-12-11 14:25:19 +01:00
Yanming Zhou dd14158ad7 Document how to use structured logging with custom log configuration
See gh-43301
2024-12-05 10:13:02 +01:00
Yanming Zhou f450b28a7c Add redirects(...) method to RestTemplateBuilder
Add `redirects(...)` method to `RestTemplateBuilder` to allow redirect
customization. This new method is required in 3.4 since the default
redirect strategy for some clients has changed and users need a way
to restore the old behavior.

See gh-43258
2024-12-04 15:09:33 -08:00
Yanming Zhou 3f17e42b38 Polish formatting of log configuration file
1. Remove space before `/>` to keep consistency.
2. Capitalize `filters` for Log4j2.
3. Uppercase log level to keep consistency.

See gh-43322
2024-12-04 10:28:28 +01:00
Yanming Zhou d81678016e Restore System property in Logging section of the reference documentation
Before this commit, it is rendered as an unexpected link with simple class
name, it should be full qualified class name.

See gh-43341
2024-12-02 09:42:08 +01:00
Yanming Zhou aaaeddcd7d Update javadoc to describe registration through spring.factories
See gh-43313
2024-11-29 09:22:49 +00:00
Yanming Zhou 34ac045073 Document StructuredLoggingJsonMembersCustomizer constructor params
See gh-43314
2024-11-28 13:38:05 +00:00
Yanming Zhou 7fdc9742af Prohibit unnecessary value on @EnumSource
See gh-43214
2024-11-18 21:50:35 -08:00
Yanming Zhou 03841b1229 Use constants for well-known scope names
See gh-43065
2024-11-08 10:01:19 +00:00
Yanming Zhou 88d7a1e74a Remove unnecessary values from @ConditionalOnMissingBean
See gh-42933
2024-10-30 10:00:11 +00:00
Yanming Zhou 46c40b4ddc Polish
See gh-42912
2024-10-29 13:45:40 +09:00
Yanming Zhou 4952fc7417 Remove unnecessary call of superclass constructor
See gh-42876
2024-10-25 18:20:44 -07:00
Yanming Zhou 906ebb612f Polish tests
Replace lambdas with method references

See gh-42725
2024-10-18 15:45:51 +01:00
Yanming Zhou 4135622bd5 Polish javadoc for Binder#bindOrCreate(String, Class)
See gh-42777
2024-10-18 08:55:45 +01:00
Yanming Zhou 87cc2efb64 Strengthen package-like assertions
See gh-42682
2024-10-16 16:52:13 -07:00
Yanming Zhou 7427304b3d Use RootBeanDefinition if possible
This commit adapts code that was using GenericBeanDefinition to use
RootBeanDefinition instead. Spring Framework recommend to use
RootBeanDefinition if it's pre-determined as root bean.

See gh-42611
2024-10-15 09:35:56 +02:00
Yanming Zhou 62d78d2367 Remove deprecated method call on AuthorityAuthorizationManager
See gh-42679
2024-10-15 09:02:41 +02:00
Yanming Zhou a80d7d6aff Polish ConfigurationPropertiesBinder
See gh-42610
2024-10-14 10:52:23 +02:00
Yanming Zhou 0871feb0d9 Polish javadoc of TestImage for consistency
See gh-42426
2024-09-25 13:59:35 +02:00
Yanming Zhou 72d68a2cb8 Remove duplicated dependency
See gh-42442
2024-09-25 13:56:01 +02:00
Yanming Zhou 7c8a6740c1 Remove redundant @Test annotation
See gh-42393
2024-09-20 10:22:47 +02:00
Yanming Zhou 44be2e11d9 Add common definition annotations support for ConfigurationProperties
Update `` to ensure that common bean definition annotations, such as
`@Lazy`, `@Primary` and `@Fallback`, are applied.

See gh-42289
2024-09-13 10:18:13 -07:00
Yanming Zhou ee10425b6d Add tests to ensure private constructor is not used for binding
See gh-42277
2024-09-12 18:54:30 -07:00
Yanming Zhou 81c903cde7 Add config prop for Spring Data Web's serialization mode
See gh-39797
2024-09-06 09:41:15 +01:00
Yanming Zhou 737a1ed711 Remove unnecessary null check
See gh-41917
2024-08-19 09:36:08 +02:00
Yanming Zhou 5cfd079c55 Remove unnecessary null check
See gh-40963
2024-06-04 08:39:26 +02:00
Yanming Zhou 0e450d602d Use CollectionUtils.isEmpty() and StringUtils.hasLength()
See gh-40645
2024-05-13 11:26:56 +02:00
Yanming Zhou 20e9ff9f3d Consider HandlerMethodValidationException in DefaultErrorAttributes
See gh-39865
2024-04-22 15:38:47 +01:00
Yanming Zhou 6226faa9cd Polishing RabbitAutoConfigurationTests to use kebab-case keys
See gh-40422
2024-04-18 12:51:35 -07:00
Yanming Zhou c329c5fe5b Add spring.rabbitmq.template.allowed-list-patterns property
Update `RabbitProperties` and `RabbitTemplateConfigurer` to support a
`spring.rabbitmq.template.allowed-list-patterns` property.

The can be used to prevent errors of the form:

	java.lang.SecurityException: Attempt to deserialize unauthorized
	class com.example.domain.Message; add allowed class name patterns
	to the message converter or, if you trust the message orginiator,
	set environment variable 'SPRING_AMQP_DESERIALIZATION_TRUST_ALL'
	or system property 'spring.amqp.deserialization.trust.all' to true

See gh-40421
2024-04-18 12:46:38 -07:00
Yanming Zhou a52ab774de Configure JpaBaseConfiguration with custom ManagedClassNameFilter
Update `JpaBaseConfiguration` to configure a `ManagedClassNameFilter`
if one is available.

See gh-39813
2024-04-18 12:08:06 -07:00
Yanming Zhou 0e53c0098f Add configuration property "spring.task.execution.pool.shutdown.accept-tasks-after-context-close"
ExecutorConfigurationSupport::setAcceptTasksAfterContextClose is
introduced since Spring Framework 6.1

See gh-38968
2024-01-10 10:37:15 +01:00