Juergen Hoeller
6561490fd9
Expose isClosed() method on AbstractApplicationContext
...
Closes gh-33058
2024-06-17 21:08:28 +02:00
Juergen Hoeller
5c68f3f4ef
Reject @Bean method with method-level @Autowired declaration
...
Closes gh-33051
2024-06-17 21:08:21 +02:00
Juergen Hoeller
6d5c312027
Merge branch '6.1.x'
2024-06-17 18:44:50 +02:00
Juergen Hoeller
9a56a8877f
Polishing
2024-06-17 18:42:37 +02:00
Juergen Hoeller
e79a9a5bff
Correct and consistent event class names in constructor javadoc
...
Closes gh-33032
2024-06-17 18:42:30 +02:00
Juergen Hoeller
2c3c3831c1
Consistently ignore bridge method on generated subclass for visibility purposes
...
Closes gh-33030
2024-06-17 18:42:20 +02:00
Stéphane Nicoll
e9d5d68628
Merge branch '6.1.x'
2024-06-16 09:59:21 +02:00
Stéphane Nicoll
f140df881d
Polish "Fix typo in comment"
...
See gh-33036
2024-06-16 09:57:24 +02:00
tafjwr
12cf654c98
Fix typo in comment
...
See gh-33036
2024-06-16 09:56:58 +02:00
Juergen Hoeller
4b58626fa4
Merge branch '6.1.x'
2024-06-14 22:09:31 +02:00
Juergen Hoeller
089e4e69f1
Do not attempt to load pre-enhanced class for reloadable classes
...
Closes gh-33024
2024-06-14 22:07:46 +02:00
Johnny Lim
f3d390a95f
Fix package description for org.springframework.validation.annotation
...
See gh-32532
2024-06-12 17:45:32 +02:00
Juergen Hoeller
b196167f19
Merge branch '6.1.x'
...
# Conflicts:
# framework-platform/framework-platform.gradle
2024-06-12 14:28:53 +02:00
Juergen Hoeller
24c8dfea1f
Remove duplicated javadoc paragraph
2024-06-12 14:23:26 +02:00
Juergen Hoeller
8b8604db73
Align after merge from 6.1.x
2024-06-12 13:34:53 +02:00
Juergen Hoeller
4bb755e2d2
Merge branch '6.1.x'
2024-06-12 13:31:38 +02:00
Juergen Hoeller
0ff200b2f1
Trigger cancellation on context close for non-managed objects only
...
Specifically for prototype/scoped beans and FactoryBean-exposed objects.
Closes gh-33009
2024-06-12 13:31:00 +02:00
Juergen Hoeller
7a7f34f4ad
Defensive access to volatile ScheduledFuture field
...
Includes defensive test arrangement for isInThePast() with at least 1 ms having passed.
See gh-24560
2024-06-12 13:01:58 +02:00
Brian Clozel
dc2c8d6094
Add execution metadata to tasks and scheduled tasks
...
This commit adds new information about the execution and scheduling of
tasks.
The `Task` type now exposes the `TaskExecutionOutcome` of the latest
execution; this includes the instant the execution started, the
execution outcome and any thrown exception.
The `ScheduledTask` contract can now provide the time when the next
execution is scheduled.
Closes gh-24560
2024-06-11 19:34:41 +02:00
Stéphane Nicoll
89e894205a
Improve exception message to include affected configuration class
...
Closes gh-32998
2024-06-11 14:24:28 +02:00
Juergen Hoeller
fce2f49e46
Polishing (aligned with main)
2024-06-11 09:07:09 +02:00
Juergen Hoeller
457bf9416c
Configure individual timeouts for specific shutdown phases
...
Closes gh-32985
2024-06-10 11:00:47 +02:00
Sébastien Deleuze
c39ce10619
Merge branch '6.1.x'
2024-06-07 18:42:10 +02:00
Sébastien Deleuze
172987c874
Ignore checkpointOnRefresh after restore
...
Closes gh-32978
2024-06-07 18:41:37 +02:00
Juergen Hoeller
2aabe238c6
Merge branch '6.1.x'
...
# Conflicts:
# spring-aop/src/main/java/org/springframework/aop/aspectj/AspectJExpressionPointcut.java
2024-06-06 20:47:02 +02:00
Juergen Hoeller
2451bd62b0
Polishing
2024-06-06 20:43:31 +02:00
Juergen Hoeller
624d6dd167
Expose actual result value for @CacheEvict condition
...
Closes gh-32960
2024-06-06 20:43:04 +02:00
Sébastien Deleuze
7b9cbd7876
Add support for Kotlin BeanPostProcessor beans
...
This commit adds support for Kotlin BeanPostProcessor beans which should
be defined in a companion object and annotated with `@JvmStatic`.
Closes gh-32946
2024-06-06 19:23:25 +02:00
Juergen Hoeller
28eb9aebcf
Add BeanFactoryInitializer callback before preInstantiateSingletons
...
Closes gh-32836
2024-06-04 22:50:42 +02:00
Stéphane Nicoll
42ace2c2c9
Provide dedicated AOT exception hierarchy
...
This commit adds a number of catch point that provides additional
context when an AOT processor fails to execute. Amongst other things,
this makes sure that the bean name and its descriptor is consistently
provided in the error message when available.
Closes gh-32777
2024-06-04 09:36:21 +02:00
Sam Brannen
b3cc603401
Avoid usage of deprecated AssertJ feature
2024-05-27 16:51:39 +02:00
Juergen Hoeller
559fec052f
Merge branch '6.1.x'
2024-05-21 19:22:55 +02:00
Juergen Hoeller
cd33b4e35a
Polishing
2024-05-21 18:25:57 +02:00
Juergen Hoeller
0e5e81e7ef
Merge branch '6.1.x'
2024-05-21 17:39:59 +02:00
Juergen Hoeller
20dea0dae2
Polishing
2024-05-21 17:39:11 +02:00
Juergen Hoeller
fee17e11ba
Default fallback parsing for UTC without milliseconds
...
Closes gh-32856
2024-05-21 17:39:06 +02:00
Juergen Hoeller
f0c6fab39e
Merge branch '6.1.x'
...
# Conflicts:
# gradle.properties
# spring-aop/src/main/java/org/springframework/aop/aspectj/AspectJExpressionPointcut.java
2024-05-17 12:30:39 +02:00
Juergen Hoeller
617833bec9
Defensively catch and log pointcut parsing exceptions
...
Closes gh-32838
See gh-32793
2024-05-17 12:27:59 +02:00
rstoyanchev
3ada9a0c79
Polishing in tests of ThreadLocalAccessor implementations
...
See gh-32296
2024-05-13 11:41:07 +01:00
Juergen Hoeller
7b16988ec9
Merge branch '6.1.x'
2024-05-08 17:52:42 +02:00
Juergen Hoeller
0eb937a866
Document limitations of CGLIB proxy class generation in JPMS module setups
...
Includes extended exception messages with common hints and explanations.
Closes gh-32671
2024-05-08 17:51:17 +02:00
Juergen Hoeller
d9ca263065
Merge branch '6.1.x'
2024-05-06 20:11:56 +02:00
Juergen Hoeller
05d9b52b19
Polishing
2024-05-06 20:10:40 +02:00
Juergen Hoeller
69eaf8f828
Merge branch '6.1.x'
2024-05-01 18:07:13 +02:00
Juergen Hoeller
25cedcfb99
Consistently propagate ApplicationStartup to BeanFactory
...
Closes gh-32747
2024-05-01 18:06:27 +02:00
Stéphane Nicoll
9492d88270
Stop wrapping low-level exceptions in CacheAspectSupport initialization
...
This commit replaces the IllegalStateException thrown in
CacheAspectSupport when a CacheManager cannot be determined. These were
added to provide a dedicated error message, but it is possible to do
so without hiding the more adequate exception type.
Closes gh-22442
2024-04-29 15:24:36 +02:00
Juergen Hoeller
0402ea13c0
Merge branch '6.1.x'
2024-04-24 13:42:43 +02:00
Juergen Hoeller
387e34d881
Wrap depends-on exception for specifically requested top-level bean
...
Closes gh-32470
2024-04-24 13:41:48 +02:00
Stéphane Nicoll
6682d75481
Merge branch '6.1.x'
2024-04-24 11:13:27 +02:00
Stéphane Nicoll
4a10bc3288
Refine preDetermineBeanTypes algorithm
...
This commit refines the preDetermineBeanTypes algorithm that AOT uses
to approximate the order of preInstantiateSingletons more closely.
Previously, the algorithm assumed that all beans where non-lazy
singletons in terms of initialization order, which led to inconsistent
order in CGLIB proxy generation.
We now explicitly park lazy beans so that their types are determined
during a second phase, matching the order of regular initialization
order.
Closes gh-32669
Co-authored-by: Juergen Hoeller <juergen.hoeller@broadcom.com>
2024-04-24 09:23:51 +02:00
Stéphane Nicoll
a77895bd90
Merge branch '6.1.x'
2024-04-23 15:34:49 +02:00
Stéphane Nicoll
95ac0eae4a
Update copyright year of changed files
...
See gh-32696
2024-04-23 15:32:59 +02:00
Johnny Lim
cc73ccefef
Polish
...
See gh-32696
2024-04-23 15:31:48 +02:00
Stéphane Nicoll
c21090ad31
Merge branch '6.1.x'
2024-04-22 15:16:50 +02:00
Stéphane Nicoll
8a8c8fe00e
Detect target of factory method with AOT
...
Previously, if a factory method is defined on a parent, the generated
code would blindly use the method's declaring class for both the target
of the generated code, and the signature of the method.
This commit improves the resolution by considering the factory metadata
in the BeanDefinition.
Closes gh-32609
2024-04-22 15:13:56 +02:00
Juergen Hoeller
6a1ec0ed73
Merge branch '6.1.x'
2024-04-22 13:43:57 +02:00
Juergen Hoeller
ec1f5ca600
Polishing
2024-04-22 13:43:07 +02:00
Juergen Hoeller
e42c5ca52b
Merge branch '6.1.x'
2024-04-18 12:20:14 +02:00
Juergen Hoeller
fec4f9b8cb
Add test for pre-resolved target type on RootBeanDefinition
...
See gh-32649
2024-04-18 12:17:17 +02:00
Simon Baslé
43b5c81dad
Merge branch '6.1.x'
2024-04-16 16:29:53 +02:00
xumengqi
bf3278596c
Include actual cause's message in various parsing exception messages
...
This change improves the message of several parsing-related exceptions
that would previously entirely swallow the original exception's message
and sometimes have a slightly misleading message as a result.
This is done by appending the cause's `toString` representation to the
IllegalArgumentException messages instead of an hardcoded "cause".
Closes gh-32636
2024-04-16 16:25:42 +02:00
Juergen Hoeller
77c6f160fe
Merge branch '6.1.x'
...
# Conflicts:
# spring-aop/src/main/java/org/springframework/aop/framework/CglibAopProxy.java
# spring-web/src/test/java/org/springframework/web/method/annotation/RequestParamMethodArgumentResolverTests.java
# spring-webflux/src/test/java/org/springframework/web/reactive/result/method/annotation/RequestParamMethodArgumentResolverTests.java
2024-04-10 18:29:48 +02:00
Juergen Hoeller
39cd31613b
Polishing
2024-04-10 18:06:32 +02:00
Sébastien Deleuze
711ddd1ac6
Merge branch '6.1.x'
2024-04-10 17:55:09 +02:00
Sébastien Deleuze
ca2b3c170c
Add Kotlin hints for enclosing class
...
This is needed by Kotlin reflection in order to be able to list
class members on native.
Closes gh-32472
2024-04-10 17:53:12 +02:00
Juergen Hoeller
a9fffa844f
Merge branch '6.1.x'
2024-04-09 16:15:19 +02:00
Juergen Hoeller
39b551c334
Document hand-off to execution thread (including ScheduledFuture impact)
...
Closes gh-32589
2024-04-09 16:14:38 +02:00
Juergen Hoeller
4eb93da31d
Merge branch '6.1.x'
...
# Conflicts:
# spring-beans/src/main/java/org/springframework/beans/factory/support/GenericTypeAwareAutowireCandidateResolver.java
2024-04-08 22:41:02 +02:00
Juergen Hoeller
f2889b1b43
Consistent support for generic FactoryBean type matching
...
Closes gh-32590
See gh-32489
2024-04-08 22:39:29 +02:00
Stéphane Nicoll
62db2680f5
Merge branch '6.1.x'
2024-04-08 11:11:15 +02:00
Stéphane Nicoll
802967fc98
Add reproducer
...
See gh-32489
2024-04-08 11:09:56 +02:00
Sébastien Deleuze
0c42874629
Merge branch '6.1.x'
2024-04-05 14:33:20 +02:00
Stéphane Nicoll
7a74e45946
Make use of bean definition overriding more visible
...
This commit makes the use of bean definition overriding more visible and
prepare for a deprecation of the feature in the next major release.
As of this commit, use of bean definition overriding logs at INFO level.
The previous log level can be restored by setting the
allowBeanDefinitionOverriding flag explicitly on the BeanFactory (or
via the related ApplicationContext).
A number of tests that are using bean overriding on purpose have been
updated to set this flag, which will make them easier to find once we
actually deprecate the feature.
Closes gh-31288
2024-04-02 14:05:12 +02:00
Stéphane Nicoll
6f95af978e
Merge branch '6.1.x'
2024-04-01 12:14:56 +02:00
Yanming Zhou
23d89362b0
Polish javadoc of AnnotatedBeanDefinitionReader
...
See gh-32560
2024-04-01 12:12:02 +02:00
Stéphane Nicoll
bf5b22d64f
Merge branch '6.1.x'
2024-03-26 17:45:25 +01:00
Stéphane Nicoll
c7c9da56da
Consistent atMost period for Awaitility-based tests
...
Closes gh-32537
2024-03-26 17:45:14 +01:00
Sébastien Deleuze
8b51b36729
Perform NullAway build-time checks in more modules
...
This commit enables null-safety build-time checks in
all remaining modules except spring-test.
See gh-32475
2024-03-26 15:53:01 +01:00
Sébastien Deleuze
2fea3d7921
Merge branch '6.1.x'
2024-03-26 15:41:46 +01:00
Sébastien Deleuze
290a41d398
Refine null-safety in more modules
...
This commit refines the null-safety in all remaining modules
except spring-test.
See gh-32475
2024-03-26 15:39:18 +01:00
Sam Brannen
7edd4e8e22
Clean up warnings in Gradle build
2024-03-23 09:28:49 +01:00
Juergen Hoeller
e58ea0d945
Merge branch '6.1.x'
...
# Conflicts:
# spring-core/src/main/java/org/springframework/core/CoroutinesUtils.java
2024-03-19 10:06:48 +01:00
Juergen Hoeller
c531a8a705
Nullability refinements and related polishing
...
See gh-32475
2024-03-19 09:58:44 +01:00
Juergen Hoeller
2086cda296
Merge branch '6.1.x'
2024-03-15 21:30:55 +01:00
Juergen Hoeller
d2000efbd8
Polishing
2024-03-15 21:17:01 +01:00
Juergen Hoeller
c23fd784a0
Consistently apply TaskDecorator to ManagedExecutorService as well
...
Closes gh-32455
2024-03-15 21:16:37 +01:00
Juergen Hoeller
66235fa8c8
Consistent TaskDecorator and ErrorHandler support in schedulers
...
Closes gh-23755
Closes gh-32460
2024-03-15 21:07:59 +01:00
Sam Brannen
e1b1435a00
Stop referring to JDK 1.5 plus polishing
2024-03-14 16:00:51 +01:00
Stéphane Nicoll
13679bb906
Reject use of component scan with REGISTER_BEAN condition
...
This commit introduce a change of behaviour when component scan is used
with conditions. Previously, any condition in the REGISTER_BEAN phase
were ignored and the scan was applied regardless of the outcome of
those conditions. This is because REGISTER_BEAN condition evaluation
happens later in the bean factory preparation.
Rather than ignoring those conditions, this commit fails fast when it
detects such use case. Code will have to be adapted accordingly.
Closes gh-23206
2024-03-12 08:39:53 +01:00
Stéphane Nicoll
89f6e8ec49
Enable test now that the related issue is resolved
...
See gh-20765
2024-03-11 16:45:30 +01:00
Stéphane Nicoll
53ed15e4a7
Remove disabled test of declined issue
...
See gh-19689
2024-03-11 16:44:50 +01:00
Yanming Zhou
246e4977a2
Polishing Optional usage
2024-03-11 09:13:49 +01:00
Sam Brannen
20be9e150c
Polishing
2024-03-09 14:28:01 +01:00
Juergen Hoeller
fad544e077
Merge branch '6.1.x'
...
# Conflicts:
# spring-core/src/main/java/org/springframework/core/io/support/PathMatchingResourcePatternResolver.java
2024-03-08 19:51:05 +01:00
Juergen Hoeller
c1287d48e2
Polishing
2024-03-08 19:31:01 +01:00
Juergen Hoeller
19fec0633f
Local root directory and jar caching in PathMatchingResourcePatternResolver
...
Closes gh-21190
2024-03-08 19:12:14 +01:00
Sam Brannen
ac1176af53
Use Map#computeIfAbsent in SpEL support classes
...
Closes gh-32385
2024-03-07 13:55:35 +01:00
Sam Brannen
dcbc2ef134
Polishing
2024-03-07 13:55:35 +01:00
Simon Baslé
7f0ab22c47
Merge branch '6.1.x'
2024-03-07 12:10:07 +01:00
Simon Baslé
6d9a2eb9b8
Improve fix of duplicate upstream subscription during reactive cache put
...
This commit fixes an issue where a Cacheable method which returns a
Flux (or multi-value publisher) will be invoked once, but the returned
publisher is actually subscribed twice.
The previous fix 988f3630c
would cause the cached elements to depend on
the first usage pattern / request pattern, which is likely to be too
confusing to users. This fix reintroduces the notion of exhausting the
original Flux by having a second subscriber dedicated to that, but uses
`refCount(2)` to ensure that the original `Flux` returned by the cached
method is still only subscribed once.
Closes gh-32370
2024-03-07 12:08:28 +01:00
Juergen Hoeller
13221ac0ef
Merge branch '6.1.x'
...
# Conflicts:
# spring-tx/src/test/java/org/springframework/transaction/annotation/EnableTransactionManagementTests.java
# spring-tx/src/test/java/org/springframework/transaction/interceptor/TransactionInterceptorTests.java
2024-03-06 18:09:32 +01:00
Juergen Hoeller
e5e61dfa3f
Ignore scheduled task exceptions after shutdown
...
Includes suppression after logging, not propagating exceptions to the thread itself.
Closes gh-32381
See gh-32298
2024-03-06 18:03:31 +01:00
Simon Baslé
19b5f11734
Merge branch '6.1.x'
2024-03-05 18:33:48 +01:00
Simon Baslé
988f3630c4
Avoid duplicate upstream subscription during reactive cache put
...
This commit fixes an issue where a Cacheable method which returns a
Flux (or multi-value publisher) will be invoked once, but the returned
publisher is actually subscribed twice.
By using the Reactor `tap` operator, we ensure that we can emit values
downstream AND accumulate emitted values into the List with a single
subscription.
The SignalListener additionally handles scenarios involving cancel,
for instance in case of a `take(1)` in the chain. In that case values
emitted up until that point will have been stored into the List buffer,
so we can still put it in the cache. In case of error, no caching occurs
and the internal buffer is cleared. This implementation also protects
against competing onComplete/onError signals and cancel signals.
Closes gh-32370
2024-03-05 18:32:32 +01:00
Juergen Hoeller
6f7f032ced
Merge branch '6.1.x'
2024-03-05 18:24:01 +01:00
Juergen Hoeller
a0ae849856
Polishing
2024-03-05 18:23:13 +01:00
Juergen Hoeller
7d4c8a403e
Introduce configurable default rollback rules
...
Includes rollbackOn annotation attribute on @EnableTransactionManagement and addDefaultRollbackRule method on AnnotationTransactionAttributeSource, as well as publicMethodsOnly as instance-level flag (also on AnnotationCacheOperationSource).
Closes gh-23473
2024-03-05 18:08:08 +01:00
Juergen Hoeller
30e75e4a09
Enable efficient pointcut checks for composite sources as well
...
Closes gh-20072
2024-03-05 13:34:48 +01:00
ali dandach
1cb2dfa459
enh: use isEmpty() instead of length()
2024-03-04 23:55:33 +01:00
Juergen Hoeller
dc6c96de0a
Merge branch '6.1.x'
...
# Conflicts:
# spring-context-support/src/main/java/org/springframework/cache/jcache/interceptor/AbstractFallbackJCacheOperationSource.java
# spring-context/src/main/java/org/springframework/cache/interceptor/AbstractFallbackCacheOperationSource.java
# spring-tx/src/main/java/org/springframework/transaction/interceptor/AbstractFallbackTransactionAttributeSource.java
2024-03-04 22:50:22 +01:00
Juergen Hoeller
e9110c0729
Polishing
2024-03-04 22:48:52 +01:00
Juergen Hoeller
b5ca646431
Leniently tolerate late bean retrieval during destroySingletons()
...
Closes gh-22526
Closes gh-29730
2024-03-04 17:21:02 +01:00
Juergen Hoeller
3d7ef3ebfc
Avoid storage of null marker per method for proxy decision purposes
...
Includes missing isCandidateClass support on JCacheOperationSource.
Closes gh-20072
2024-03-04 12:55:33 +01:00
Yanming Zhou
9a1e5eb8d7
Add test for @Fallback with BeanFactory.getBean(Class)
2024-02-29 13:33:43 +01:00
Juergen Hoeller
f22a1eece4
Polishing
2024-02-28 19:14:37 +01:00
Juergen Hoeller
3477738bed
Consistently pick lowest superclass level to replace
...
See gh-28676
2024-02-28 15:49:05 +01:00
Juergen Hoeller
fa5d246a1b
Replace all exposed superclasses in final step after traversal
...
See gh-28676
2024-02-28 15:39:53 +01:00
Juergen Hoeller
17b2087198
Introduce background bootstrapping for individual singleton beans
...
Closes gh-13410
Closes gh-19487
See gh-23501
2024-02-27 22:33:18 +01:00
Sam Brannen
c2d2e99c2f
Polishing
2024-02-23 13:18:09 +01:00
Sam Brannen
122372c580
Spring cleaning: update copyright headers
2024-02-23 12:21:22 +01:00
Sam Brannen
c98bebd6d3
Spring cleaning: add missing @Override annotations
2024-02-23 12:20:11 +01:00
Sam Brannen
d0ffc16efc
Spring cleaning: avoid unnecessary static imports
2024-02-23 12:20:11 +01:00
Sam Brannen
4bd1485ce4
Spring cleaning: use method references
2024-02-23 12:20:11 +01:00
Sam Brannen
3c00637c88
Fix @inheritDoc usage
2024-02-23 12:08:29 +01:00
Juergen Hoeller
524588ef93
Avoid transaction listener execution without transaction management setup
...
Closes gh-32319
2024-02-23 11:53:05 +01:00
Juergen Hoeller
491ebb4ec4
Merge branch '6.1.x'
...
# Conflicts:
# spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClass.java
2024-02-21 23:01:09 +01:00
Juergen Hoeller
7ffeb59b40
Polishing
2024-02-21 22:45:39 +01:00
Juergen Hoeller
8d4953d8d6
Add test for cleanup after configuration class creation failure
...
See gh-23343
2024-02-21 22:45:32 +01:00
Juergen Hoeller
f811f0dc18
Clarify primary/fallback autowiring for arrays/collections/maps
...
Closes gh-32301
2024-02-21 20:24:57 +01:00
Juergen Hoeller
f5397d6426
Consistent processing of overridden bean methods
...
Closes gh-28286
2024-02-21 18:36:03 +01:00
Sam Brannen
644887e094
Polish (Linked)HashSet usage
...
See gh-32291
2024-02-21 16:22:31 +01:00
Sam Brannen
b9c304b890
Polish contribution
...
See gh-32291
2024-02-21 16:19:53 +01:00
Patrick Strawderman
e1a32d4ba9
Avoid resizing of fixed-size HashSet/LinkedHashSet variants
...
Add helpers to CollectionUtils for building HashSets and LinkedHashSets
that can hold an expected number of elements without needing to
resize/rehash.
Closes gh-32291
2024-02-21 16:19:53 +01:00
Sam Brannen
3fb170058f
Polish contribution
...
See gh-32294
2024-02-21 14:09:09 +01:00
Patrick Strawderman
f9fe8efb2e
Use ConcurrentHashMap.newKeySet
...
In places where a ConcurrentHashMap was used as a set by wrapping it
with Collections.newSetFromMap, switch to just using the set returned
by ConcurrentHashMap.newKeySet directly.
Closes gh-32294
2024-02-21 14:08:38 +01:00
Juergen Hoeller
ff9c7141c5
Replace superclass exposure in case of late configuration class skipping
...
Closes gh-28676
2024-02-21 11:10:27 +01:00
Stéphane Nicoll
871f705bca
Remove ComponentScan duplicate condition
...
Closes gh-27077
2024-02-21 10:09:31 +01:00
Juergen Hoeller
22b41c33ba
Preserve existing imported class over scanned configuration class
...
Closes gh-24643
2024-02-20 20:43:41 +01:00
Juergen Hoeller
266953195c
Avoid enhancement of configuration class in case of existing instance
...
Closes gh-25738
2024-02-20 20:43:09 +01:00
Juergen Hoeller
ad2e95be4b
Merge branch '6.1.x'
2024-02-20 15:43:24 +01:00
Juergen Hoeller
93f0ec2fa1
Polishing
2024-02-20 15:42:15 +01:00
Juergen Hoeller
85c9279431
Consistent default error handling/logging for all scheduled tasks
...
Closes gh-32298
2024-02-20 15:42:07 +01:00
Juergen Hoeller
63ca8d5d17
Consider defaultCandidate flag in case of no annotations as well
...
See gh-26528
2024-02-20 15:30:38 +01:00
Juergen Hoeller
480051a21c
Introduce fallback flag and annotation (as companion to primary)
...
Closes gh-26241
2024-02-20 13:37:41 +01:00
Juergen Hoeller
a8fb16b47c
Introduce defaultCandidate flag (for plain type vs. qualified match)
...
Closes gh-26528
2024-02-20 12:00:47 +01:00
Juergen Hoeller
874e61a0c6
Test for async event publication before listener initialized
...
Closes gh-20904
See gh-23501
See gh-25799
2024-02-19 18:18:09 +01:00
Sam Brannen
c6e6a3e44d
Link to section in reference manual
2024-02-18 18:19:59 +01:00
Juergen Hoeller
0ddfe3977a
Merge branch '6.1.x'
2024-02-16 22:50:04 +01:00
Juergen Hoeller
7bb9e85723
Avoid trivial static import
2024-02-16 22:43:56 +01:00
Juergen Hoeller
3aae7a66e6
Polishing
2024-02-16 22:27:09 +01:00
Sam Brannen
71dfebbfe5
Polishing
2024-02-16 16:45:18 +01:00
Sam Brannen
7c07c43201
Polishing
2024-02-16 15:00:06 +01:00
Juergen Hoeller
6791ea94a0
Change executor phase to MAX_VALUE/2 and reduce timeout to 10 seconds
...
Closes gh-32152
2024-02-16 14:16:32 +01:00
Juergen Hoeller
7e67da8a26
Support for matching partial generics
...
Closes gh-20727
2024-02-15 16:51:09 +01:00
Yanming Zhou
e788aeb25b
Improve GenericTypeResolver to resolve type variable recursively
...
Fix GH-24963
2024-02-15 16:28:45 +01:00
Stéphane Nicoll
aef4b21f19
Polish "Add ThreadLocalAccessor for LocaleContext and RequestAttributes"
...
See gh-32243
2024-02-15 15:57:43 +01:00
Tadaya Tsuyukubo
5bd1c1fddb
Add ThreadLocalAccessor for LocaleContext and RequestAttributes
...
Add `ThreadLocalAccessor` implementations:
- `LocaleThreadLocalAccessor`
- `RequestAttributesThreadLocalAccessor`
See gh-32243
2024-02-15 15:49:55 +01:00
Stéphane Nicoll
e3aa5b6b11
Use new implementation in PropertyPlaceholderHelper
...
This commit removes the previous implementation in favor of the new
PlaceholderParser. The only noticeable side effect is that the exception
is no longer an IllegalArgumentException, but rather the dedicated
PlaceholderResolutionException.
See gh-9628
2024-02-15 15:27:13 +01:00
Sébastien Deleuze
cc6dd19324
Polishing
2024-02-13 14:29:18 +01:00
Juergen Hoeller
b4153618a4
Consistent Lock field declaration (instead of ReentrantLock field type)
2024-02-13 11:07:20 +01:00
Juergen Hoeller
a2000dba33
Leniently accept tasks after context close in lifecycle stop phase
...
Schedulers remain strict, just plain executors are lenient on shutdown now.
An early shutdown for executors can be enforced via setStrictEarlyShutdown.
Closes gh-32226
2024-02-11 21:33:53 +01:00
Sam Brannen
ce43d1b1da
Simplify logic in ApplicationContextAwareProcessor.postProcessBeforeInitialization()
2024-02-10 15:46:38 +01:00
Sam Brannen
1080c145e3
Polish ApplicationContextAwareProcessor
2024-02-10 11:46:09 +01:00
Juergen Hoeller
3ecbc4de13
Polishing
2024-02-06 17:57:47 +01:00
Juergen Hoeller
9698dbc232
Add javadoc and rename merge method to mergeProperties
...
See gh-32118
2024-02-06 09:13:09 +01:00
Andrei Bastun
c559ec4dfb
Refactor ReloadableResourceBundleMessageSource
...
This change allows subclasses to reuse collecting and merging
algorithm when overriding getMergedProperties method.
2024-02-06 08:23:51 +01:00
Juergen Hoeller
3d4d68c26f
Run listener/send task locally as fallback on RejectedExecutionException
...
Closes gh-32171
2024-02-01 11:07:02 +01:00
Sam Brannen
db535863dd
Consistently use class literals for primitive types
...
To improve consistency and avoid confusion regarding primitive types
and their wrapper types, this commit ensures that we always use class
literals for primitive types.
For example, instead of using the `Void.TYPE` constant, we now
consistently use `void.class`.
2024-01-30 15:26:12 +01:00
Juergen Hoeller
005d5ef922
Polishing
2024-01-29 16:53:35 +01:00
Juergen Hoeller
5dc26460fb
Eagerly initialize ZERO_NANOS constant
2024-01-29 16:48:08 +01:00
Juergen Hoeller
969b18b0e8
Polishing
2024-01-29 15:25:43 +01:00
Juergen Hoeller
08e6df8832
Revise shutdown phase log message and executor shutdown documentation
...
Closes gh-32109
2024-01-29 13:03:20 +01:00
Juergen Hoeller
a738e4d5fd
Explicit documentation note on cron-vs-quartz parsing convention
...
Closes gh-32128
2024-01-29 13:02:43 +01:00
Sam Brannen
2e56361fe4
Simplify implementation of internal VariableNotAvailableException
...
Since VariableNotAvailableException is not a public type, there is no
need to store the variable name in a field/property.
2024-01-28 17:05:30 +01:00
Sam Brannen
0e45f4cec4
Polishing
2024-01-26 11:08:58 +01:00
Juergen Hoeller
c6121da151
Polishing
2024-01-24 22:30:33 +01:00
Juergen Hoeller
c5a75219ce
Compare qualifier value arrays with equality semantics
...
Closes gh-32106
2024-01-24 22:30:28 +01:00
Juergen Hoeller
6bd7f0231d
Avoid double exists() call for common resource resolution
...
See gh-30369
See gh-18990
2024-01-22 13:40:51 +01:00
Sam Brannen
5856d2e54e
Polish contribution
...
See gh-32069
2024-01-21 16:27:59 +01:00
mnhock
a8fa98e2a6
Remove unnecessary semicolons in enum declarations
...
Closes gh-32069
2024-01-21 16:25:36 +01:00
Juergen Hoeller
00bda65848
Polishing
2024-01-19 17:09:58 +01:00
Stéphane Nicoll
f5b0d9509d
Polish
2024-01-17 18:41:15 +01:00
Stéphane Nicoll
0c42965fc3
Polish
2024-01-15 11:17:19 +01:00
Sam Brannen
c4831d2586
Document that Conditions can be ordered
...
Closes gh-32019
2024-01-12 16:30:24 +01:00
Sam Brannen
e4569defd9
Polish Javadoc for Condition
2024-01-12 16:24:20 +01:00
Juergen Hoeller
4d11307b84
Polishing
2024-01-09 11:55:04 +01:00
Sam Brannen
785598629a
Make max length of SpEL expressions in an ApplicationContext configurable
...
This commit introduces support for a Spring property named
`spring.context.expression.maxLength`. When set, the value of that
property is used internally in StandardBeanExpressionResolver to
configure the SpelParserConfiguration used when evaluating String
values in bean definitions, @Value, etc.
Closes gh-31952
2024-01-09 11:15:32 +01:00
rstoyanchev
37fa82c578
Lenient rejectedValue lookup in SpringValidatorAdapter
...
Closes gh-29043
2024-01-08 16:39:53 +00:00
Stéphane Nicoll
1f2d29ee08
Polish
2024-01-08 17:12:33 +01:00
rstoyanchev
8552e149b5
Improve method validation for container elements
...
This change moves container element properties from ParameterErrors
to base class ParameterValidationResult, and makes that support
independent of whether violations are nested within a container
element bean or through constraints on container elements, e.g.
`List<@NotBlank String>`.
Closes gh-31887
2024-01-05 16:32:14 +00:00
Juergen Hoeller
9912a52bb8
Avoid getMostSpecificMethod resolution for non-annotated methods
...
This is aligned with AutowiredAnnotationBeanPostProcessor now.
Closes gh-31967
2024-01-07 16:33:49 +01:00
Juergen Hoeller
419e34e571
Introduce getMostSpecificMethod variant on BridgeMethodResolver
...
This is able to resolve the original method even if no bridge method has been generated at the same class hierarchy level (a known difference between the Eclipse compiler and regular javac).
Closes gh-21843
2024-01-07 16:33:06 +01:00
Sam Brannen
f6b36a689a
Introduce processInjection() in CommonAnnotationBeanPostProcessor
...
To align with the existing processInjection() method in
AutowiredAnnotationBeanPostProcessor, this commit introduces an analogous
method in CommonAnnotationBeanPostProcessor.
Closes gh-31956
2024-01-05 16:05:07 +01:00
Sam Brannen
4b6126c057
Polishing
2024-01-05 15:17:51 +01:00
Juergen Hoeller
07097976ef
Polishing
2024-01-05 10:08:57 +01:00
Juergen Hoeller
fb4fbeab50
Allow CronTrigger to resume from specified timestamp
...
Includes differentiation between lenient and fixed execution.
Includes default time zone resolution from scheduler-wide Clock.
Closes gh-19475
Closes gh-31948
2024-01-05 10:08:01 +01:00
Stéphane Nicoll
05ebca8677
Polish
2024-01-03 17:03:58 +01:00
juhyun
89466cb33c
Fix typo in NumberFormat javadoc
...
See gh-31938
2024-01-03 14:27:00 +01:00
Stéphane Nicoll
bf3a478990
Add support for functional registration of application listener
...
This commit adds a functional style registration of an application
listener for a particular event. Rather than introducing another method
at the ConfigurableApplicationContext interface level, this commit
provides a factory method in GenericApplicationListener.
Closes gh-21411
2024-01-03 13:38:08 +01:00
Sam Brannen
ffddbb586e
Upgrade to AssertJ 3.25.0
2024-01-02 16:45:04 +01:00