Juergen Hoeller
3ddc607b3e
Add spring.locking.strict property to common appendix
...
See gh-34303
2025-03-31 16:38:28 +02:00
Juergen Hoeller
75e5a75da5
Enforce circular reference exception within non-managed thread
...
Backport Bot / build (push) Waiting to run
Details
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run
Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:21], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
Deploy Docs / Dispatch docs deployment (push) Waiting to run
Details
Closes gh-34672
2025-03-28 20:46:09 +01:00
Juergen Hoeller
9bf01df230
Evaluate lenientLockingAllowed flag per DefaultListableBeanFactory instance
...
See gh-34303
2025-03-28 20:45:06 +01:00
Stéphane Nicoll
2862c87601
Make sure the generated values are available from a static context
...
This commit updates the tests of property values code generated to
invoke the generated code from a `static` context. This ensures that
the test fails if that's not the case.
This commit also updated LinkedHashMap handling that did suffer from
that problem.
Closes gh-34659
2025-03-27 12:06:18 +01:00
Juergen Hoeller
aa56b5001a
Detect late-set primary markers for autowiring shortcut algorithm
...
Backport Bot / build (push) Waiting to run
Details
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run
Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:21], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
Deploy Docs / Dispatch docs deployment (push) Waiting to run
Details
Closes gh-34658
2025-03-26 23:47:42 +01:00
Juergen Hoeller
6905dff660
Introduce spring.locking.strict=true flag for 6.1.x style bean creation locking
...
Closes gh-34303
2025-03-25 17:08:55 +01:00
Juergen Hoeller
37fb79e8ff
Fix qualifier resolution for aliased name against parent factory
...
Backport Bot / build (push) Waiting to run
Details
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run
Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:21], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
Deploy Docs / Dispatch docs deployment (push) Waiting to run
Details
Closes gh-34644
2025-03-25 00:08:42 +01:00
Juergen Hoeller
dc41ff569e
Add javadoc notes on potential exception suppression in getBeansOfType
...
Closes gh-34629
2025-03-21 15:52:42 +01:00
Juergen Hoeller
47651350f3
Polishing
Backport Bot / build (push) Waiting to run
Details
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run
Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:21], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:ubuntu-latest name:Linux]) (push) Waiting to run
Details
Deploy Docs / Dispatch docs deployment (push) Waiting to run
Details
2025-03-21 10:58:40 +01:00
Sam Brannen
208d52d852
Introduce Checkstyle rule for separator symbol location
2025-03-19 15:35:44 +01:00
Juergen Hoeller
ad949a7450
Add includeNonSingletons flag for ObjectProvider stream access
...
Closes gh-34591
2025-03-18 16:10:30 +01:00
Juergen Hoeller
911cdb2ad0
Add resolveAutowireCandidates variant with includeNonSingletons and allowEagerInit
...
Closes gh-34591
2025-03-13 18:48:43 +01:00
Juergen Hoeller
143985e862
Add tests for primary/fallback/defaultCandidate precedence
...
Closes gh-34449
2025-03-08 12:22:14 +01:00
Juergen Hoeller
4bd280b87e
Explain availability and uniqueness (including primary/fallback/default) in javadoc
...
Closes gh-34447
2025-03-08 12:22:04 +01:00
Juergen Hoeller
f3b50c9a58
Ignore null beans in SimpleAutowireCandidateResolver.resolveAutowireCandidates
...
Closes gh-34543
2025-03-05 22:44:09 +01:00
Juergen Hoeller
403362fe3c
Polishing
2025-03-04 18:44:56 +01:00
Juergen Hoeller
d2733cea36
Notify lenientCreationFinished condition after locked creation as well
...
Closes gh-34522
2025-03-01 22:20:23 +01:00
Juergen Hoeller
e230ea537c
Consistently resolve unique default candidate bean
...
Closes gh-34432
2025-02-18 13:11:36 +01:00
Juergen Hoeller
94eb6006e8
Leniently accept same singleton instance if implicitly appeared
...
Closes gh-34427
2025-02-18 13:01:08 +01:00
Juergen Hoeller
dfc10c1a8d
Wait for lenient bean creation in non-locked threads as well
...
Closes gh-34349
2025-02-12 23:06:22 +01:00
Juergen Hoeller
b336bbe539
Wait for lenient bean creation in locked thread when necessary
...
Closes gh-34349
2025-02-12 12:17:02 +01:00
Juergen Hoeller
ace2f0a3e5
Expose resolveAutowireCandidates method with basic candidate filtering
...
DependencyObjectProvider is aligned to check basic autowire-candidate status even in case of custom filtering.
Closes gh-34203
2025-02-07 19:00:25 +01:00
Stéphane Nicoll
ec037b1ec0
Polish "Add support for multidimensional arrays"
...
See gh-34183
2025-02-05 14:35:33 +01:00
xumengqi
68c1e2ac92
Add support for multidimensional arrays
...
See gh-34183
2025-02-05 14:23:09 +01:00
Juergen Hoeller
cda7e98643
Lazily override default editors when actually needed
...
Closes gh-34361
2025-02-04 13:26:16 +01:00
Juergen Hoeller
8c2b44bd6c
Support filtered/unfiltered stream access on ObjectProvider
...
Closes gh-34318
Closes gh-34203
2025-02-03 15:04:27 +01:00
Juergen Hoeller
323e52b5a9
Continue with pre-instantiation when current bean is in creation already
...
Closes gh-34349
2025-01-31 15:16:52 +01:00
Sam Brannen
53afe27109
Clean up warnings in Gradle build
...
See gh-34332
2025-01-29 17:52:27 +01:00
Sam Brannen
b9e43d05bd
Restore property binding support for a Map that implements Iterable
...
The changes in commit c20a2e4763 introduced a regression with regard to
binding to a Map property when the Map also happens to implement
Iterable.
Although that is perhaps not a very common scenario, this commit
reorders the if-blocks in AbstractNestablePropertyAccessor's
getPropertyValue(PropertyTokenHolder) method so that a Map is
considered before an Iterable, thereby allowing an Iterable-Map to be
accessed as a Map.
See gh-907
Closes gh-34332
2025-01-29 17:34:47 +01:00
Juergen Hoeller
467d5f3ca3
Try late locking for waiting on specific bean to be finished
...
Closes gh-34186
2025-01-13 17:48:13 +01:00
Juergen Hoeller
8771b9ea21
Defensively acquire singleton lock for FactoryBean type check
...
Closes gh-34247
2025-01-13 13:04:42 +01:00
Juergen Hoeller
ff72652890
Defensively check expected type for qualified bean
...
Closes gh-34187
2025-01-13 13:03:25 +01:00
luozongle01
a942362221
Fix a typo
...
Closes gh-34101
2024-12-17 11:40:47 +01:00
Sam Brannen
41d9f21ab9
Log alias removal in DefaultListableBeanFactory
...
Prior to this commit, information was logged when a bean definition
overrode an existing bean definition, but nothing was logged when the
registration of a bean definition resulted in the removal of an alias.
With this commit, an INFO message is now logged whenever an alias is
removed in DefaultListableBeanFactory.
Closes gh-34070
2024-12-11 15:03:52 +01:00
Juergen Hoeller
66da5d7ab9
Restore original override behavior when override allowed
...
Closes gh-33920
2024-12-10 16:25:49 +01:00
Stéphane Nicoll
0d72477742
Restore user type in generated root bean definitions
...
This commit restores the user class in generated RootBeanDefinition
instances. Previously the CGLIB subclass was exposed. While this is
important in regular runtime as the configuration class parser operates
on the bean definition, this is not relevant for AOT as this information
is internal and captured in the instance supplier.
Closes gh-33960
2024-12-06 15:34:00 +01:00
Stéphane Nicoll
81a9f3d50b
Restore public type for generated instance supplier of CGLIB proxy
...
This commit restores the signature of instance suppliers that are
exposing a CGLIB proxy. While calling the CGLIB proxy itself, and
making it available in BeanInstanceSupplier, is needed internally, such
type should not be exposed as it is an internal concern.
This was breaking InstanceSupplier.andThen as it expects the public
type of the bean to be exposed, not it's eventual CGLIB subclass.
Closes gh-33998
2024-12-05 15:48:49 +01:00
Juergen Hoeller
384dc2a9b8
Consistently use singleton lock for FactoryBean processing
...
Closes gh-33972
2024-12-04 21:02:30 +01:00
Juergen Hoeller
90ef7ac514
Cache singleton results for @Lazy injection points
...
Includes consistent use of unmodifiable collections.
Closes gh-33841
2024-11-13 13:29:20 +01:00
Sébastien Deleuze
7e1d6fe934
Merge branch '6.1.x'
2024-11-05 10:27:22 +01:00
Johnny Lim
0beb56a58c
Fix indentation to use tabs in Kotlin source files
...
Closes gh-33840
2024-11-05 10:24:02 +01:00
Juergen Hoeller
a1dd2e7c96
Merge branch '6.1.x'
2024-10-21 15:39:10 +02:00
Juergen Hoeller
e90a2da05d
Clarify defensive impact of allowEagerInit flag for type matching
...
Closes gh-33740
2024-10-21 15:38:25 +02:00
Juergen Hoeller
ee1fe8a1e9
Consistently evaluate defaultCandidate flag on constructors and methods
...
Closes gh-33762
2024-10-21 13:53:28 +02:00
Sam Brannen
68d9e5d81a
Merge branch '6.1.x'
2024-10-19 15:03:15 +02:00
Sam Brannen
d72c8b32b7
Ignore duplicate @Priority values when determining highest priority
...
Prior to this commit, DefaultListableBeanFactory's
determineHighestPriorityCandidate() method sometimes failed to
determine the highest priority candidate if duplicate priority
candidates were detected whose priority was not the highest priority in
the candidate set. In addition, the bean registration order affected
the outcome of the algorithm: if the highest priority was detected
before other duplicate priorities were detected, the algorithm
succeeded in determining the highest priority candidate.
This commit addresses those shortcomings by ignoring duplicate
@Priority values unless the duplication is for the highest priority
encountered, in which case a NoUniqueBeanDefinitionException is still
thrown to signal that multiple beans were found with the same "highest
priority".
Closes gh-33733
2024-10-19 14:54:29 +02:00
Sébastien Deleuze
effe606b28
Refine record canonical constructor support in BeanUtils
...
This commit refines the contribution with the following changes:
- Move the support to findPrimaryConstructor
- Use a for loop instead of a Stream for more efficiency
- Support other visibilities than public
- Polishing
Closes gh-33707
2024-10-16 17:38:47 +02:00
evgenijnikiforov
514d6000d1
Support record canonical constructor in BeanUtils
...
See gh-33707
2024-10-16 17:38:47 +02:00
Juergen Hoeller
fa955934e7
Merge branch '6.1.x'
...
# Conflicts:
# spring-beans/src/main/java/org/springframework/beans/factory/annotation/QualifierAnnotationAutowireCandidateResolver.java
2024-10-16 17:19:30 +02:00
Juergen Hoeller
fde7116ae4
Consistently skip processing of plain Java annotations
...
Closes gh-33580
2024-10-16 17:17:22 +02:00