Juergen Hoeller
5df9fd4eff
Polishing (aligned with main)
2025-08-06 19:01:18 +02:00
Juergen Hoeller
4277682a5c
Catch InaccessibleObjectException next to IllegalAccessException
...
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-35190
2025-07-11 22:44:11 +02:00
chenggwang
5aa15923cf
Make targetBeanName field in AbstractBeanFactoryBasedTargetSource protected
...
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
Prior to this commit, subclasses of AbstractBeanFactoryBasedTargetSource
referenced the targetBeanName via getTargetBeanName() which throws an
IllegalStateException if the targetBeanName has not yet been set.
This commit changes the visibility of the targetBeanName field from
private to protected in order to facilitate direct access through
this.targetBeanName where no assertion is needed.
By doing so, we avoid exceptions in logging and toString()
implementations in subclasses.
Closes gh-35172
Signed-off-by: chenggwang <90715678+chenggwang@users.noreply.github.com>
Co-authored-by: Sam Brannen <104798+sbrannen@users.noreply.github.com>
2025-07-11 15:51:10 +02:00
Juergen Hoeller
3bd96f72a6
Leniently tolerate null bean as aspect instance
...
Closes gh-35074
2025-07-07 14:26:19 +02:00
Spring Builds
aee29b7f30
Update copyright headers in source files
...
This commit updates Java, Kotlin, and Groovy source files to use the
"<year>-present" pattern in copyright headers.
Closes gh-35070
2025-06-17 15:54:58 +02:00
Sam Brannen
18d6a55e3e
Polishing and removal of "this." for method invocations
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-06-09 14:10:30 +02:00
Juergen Hoeller
f1ddd051a3
Restore synchronization against AspectJ race condition behind PointcutExpression
...
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-34735
2025-06-05 20:36:10 +02:00
Sam Brannen
dbd47ff4f9
Implement additional micro performance optimizations
...
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
See gh-34717
2025-04-04 15:51:37 +02:00
Juergen Hoeller
743f32675d
Only attempt load for CGLIB classes in AOT mode
...
Closes gh-34677
2025-03-31 16:39:18 +02:00
Sam Brannen
9fd1d0c6a3
Polish Javadoc
...
Backport Bot / build (push) Has been cancelled
Details
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Has been cancelled
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:false version:17], map[id:ubuntu-latest name:Linux]) (push) Has been cancelled
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:21], map[id:ubuntu-latest name:Linux]) (push) Has been cancelled
Details
CI / ${{ matrix.os.name}} | Java ${{ matrix.java.version}} (map[toolchain:true version:23], map[id:ubuntu-latest name:Linux]) (push) Has been cancelled
Details
Deploy Docs / Dispatch docs deployment (push) Has been cancelled
Details
Build and Deploy Snapshot / Verify (push) Has been cancelled
Details
This commit also reverts the change to ASM's SymbolTable class.
See gh-34679
2025-03-29 12:57:08 +01:00
Tran Ngoc Nhan
30fcaef813
Remove unnecessary closing curly brackets in Javadoc
...
Closes gh-34679
Signed-off-by: Tran Ngoc Nhan <ngocnhan.tran1996@gmail.com>
2025-03-29 12:37:48 +01:00
Sam Brannen
208d52d852
Introduce Checkstyle rule for separator symbol location
2025-03-19 15:35:44 +01:00
Sam Brannen
c6a9aa59a3
Remove BDDMockito Checkstyle rule
...
This commit removes the BDDMockito Checkstyle rule, since it did not
actually enforce the use of BDDMockito.
This commit also updates static imports to use Mockito instead of
BDDMockito where appropriate (automated via the Eclipse IDE Organize
Imports clean-up task).
Closes gh-34616
2025-03-18 16:35:57 +01:00
Juergen Hoeller
86b2617c7f
Suggest compilation with -parameters in case of ambiguity
...
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-34609
2025-03-17 19:22:56 +01:00
Stéphane Nicoll
fb6e86551a
Polish "Handle arbitrary JoinPoint argument index"
...
See gh-34316
2025-02-05 11:49:56 +01:00
Joshua Chen
13ba770428
Handle arbitrary JoinPoint argument index
...
See gh-34316
Signed-off-by: Joshua Chen <27291761@qq.com>
2025-02-05 11:44:51 +01:00
Stéphane Nicoll
3923150dad
Polish "Use proper return type in AsyncExecutionInterceptor"
...
See gh-33957
2025-02-04 15:59:35 +01:00
Bao.Ngo
8eb24458f8
Use proper return type in AsyncExecutionInterceptor
...
See gh-33957
2025-02-04 15:58:53 +01:00
Sam Brannen
181db1db75
Update copyright headers to 2025
2025-01-05 17:00:47 +02:00
Sam Brannen
9de2b947cb
Upgrade to AssertJ 3.27.1
2025-01-03 16:42:07 +02:00
Juergen Hoeller
576f109987
Use JDK proxy for introduction interface without target
...
Closes gh-33985
2024-12-04 21:03:09 +01:00
Sam Brannen
8d69370b95
Consider logical equality in AdvisedSupport.MethodCacheKey#equals
...
Prior to this commit, the equals() implementation in AdvisedSupport's
MethodCacheKey only considered methods to be equal based on an identity
comparison (`==`), which led to duplicate entries in the method cache
for the same logical method.
This is caused by the fact that AdvisedSupport's
getInterceptorsAndDynamicInterceptionAdvice() method is invoked at
various stages with different Method instances for the same method:
1) when creating the proxy
2) when invoking the method via the proxy
The reason the Method instances are different is due to the following.
- Methods such as Class#getDeclaredMethods() and
Class#getDeclaredMethod() always returns "child copies" of the
underlying Method instances -- which means that `equals()` should be
used instead of (or in addition to) `==` whenever the compared Method
instances can come from different sources.
With this commit, the equals() implementation in MethodCacheKey now
considers methods equal based on identity or logical equality, giving
preference to the quicker identity check.
See gh-32586
Closes gh-33915
2024-12-04 12:04:02 +01:00
Sam Brannen
173084f81a
Polish Spring AOP documentation
2024-11-17 12:21:16 +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
Brian Clozel
79cf554850
Merge branch '6.1.x'
2024-10-30 10:37:17 +01:00
Brian Clozel
8ffbafd384
Prevent accidental Sysouts in the codebase
2024-10-30 10:36:30 +01:00
Juergen Hoeller
a1f6098158
Merge branch '6.1.x'
2024-10-29 23:04:05 +01:00
Juergen Hoeller
fa21dffcf8
Restore traditional AspectJ behavior through "spring.aop.ajc.ignore=true"
...
Closes gh-33704
2024-10-29 23:01:16 +01:00
Juergen Hoeller
9e3371ef07
Mark ListenableFuture as deprecated for removal
...
Closes gh-33808
2024-10-29 18:36:40 +01:00
Sam Brannen
52e813d0ad
Improve structure and naming of ProxyExceptionHandlingTests
...
Closes gh-33797
2024-10-25 16:14:42 +02:00
Sam Brannen
f19a1b50e5
Polishing
2024-10-25 15:22:56 +02:00
Sébastien Deleuze
d65bdce0e8
Remove CglibMethodInvocation
...
This class does not add anything anymore and can be
replaced by a plain ReflectiveMethodInvocation.
Closes gh-33585
2024-10-03 19:53:49 +02:00
Sébastien Deleuze
eebaa3538a
Fix a regression in Cglib Kotlin proxies
...
The commit skips using UndeclaredThrowableStrategy for
Kotlin classes in CglibAopProxy in order to fix a
related regression caused by gh-32469.
See gh-33585
2024-10-03 19:49:59 +02:00
Juergen Hoeller
56f3a48879
Merge branch '6.1.x'
...
# Conflicts:
# spring-context/src/main/java/org/springframework/context/aot/AbstractAotProcessor.java
2024-09-27 19:17:32 +02:00
Juergen Hoeller
9f4968ed05
Polishing
2024-09-27 19:16:12 +02:00
Juergen Hoeller
8680c43368
Check for advisor-introduced interfaces specifically
...
See gh-31304
2024-09-27 11:07:11 +02:00
Juergen Hoeller
552a5cde36
Create CGLIB proxy in case of no target interfaces (just introductions)
...
Closes gh-31304
2024-09-26 14:48:42 +02:00
Yanming Zhou
8941e2876e
Replace 'e.g.' with 'for example' in documentation and comments
...
Closes gh-33515
2024-09-26 14:11:17 +02:00
Sam Brannen
167cb5d494
Polishing
2024-08-29 17:02:08 +02:00
Sébastien Deleuze
bb4a96f227
Merge branch '6.1.x'
2024-08-12 17:32:53 +02:00
Sébastien Deleuze
1911ca728d
Support invoking bridged suspending functions in AopUtils
...
Closes gh-33045
2024-08-12 17:27:41 +02:00
Juergen Hoeller
8cfdaaaabc
Merge branch '6.1.x'
2024-07-10 15:57:24 +02:00
Juergen Hoeller
f2b3263fff
Polishing
2024-07-10 15:56:56 +02:00
Juergen Hoeller
a9efe10428
Merge branch '6.1.x'
...
# Conflicts:
# spring-beans/src/main/java/org/springframework/beans/factory/aot/DefaultBeanRegistrationCodeFragments.java
2024-07-10 15:16:40 +02:00
Juergen Hoeller
3ccaefe38f
Polishing
2024-07-10 15:15:32 +02:00
Juergen Hoeller
c681614bc2
Merge branch '6.1.x'
2024-06-28 11:36:53 +02:00
Juergen Hoeller
100da83913
Detect ajc markers in superclasses as well (for weaving check)
...
Closes gh-33113
2024-06-28 11:36:17 +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
0ea96b4806
Skip ajc-compiled aspects for ajc-compiled target classes
...
Includes defensive ignoring of incompatible aspect types.
Closes gh-32970
2024-06-06 20:42:07 +02:00