Sam Brannen
9fd1d0c6a3
Polish Javadoc
...
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
...
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
Juergen Hoeller
3305485d1e
Merge branch '6.1.x'
2024-06-05 16:33:44 +02:00
Juergen Hoeller
4f6f2c0d41
Revert to separate get/put steps against method cache for concurrency
...
Closes gh-32958
2024-06-05 16:32:27 +02:00
Juergen Hoeller
f7e7d1b7b0
Merge branch '6.1.x'
2024-06-03 12:47:17 +02:00
Juergen Hoeller
8a84241c1e
Polishing
2024-06-03 12:46:31 +02:00
Juergen Hoeller
624be6d4e6
Report bean creation failure in sortAdvisors as AopConfigException
...
Closes gh-32230
2024-06-03 12:46:14 +02:00
Sam Brannen
dac18a3ff1
Clean up warnings in Gradle build
2024-05-24 13:39:56 +02:00
Juergen Hoeller
0110c5ac82
Merge branch '6.1.x'
2024-05-23 17:08:22 +02:00
Juergen Hoeller
6d7cd9c7dc
Defensive handling of incompatible advice methods
...
This covers AspectJ transaction and caching aspects when encountered by Spring AOP.
Closes gh-32882
See gh-32793
2024-05-23 17:07:51 +02:00
Juergen Hoeller
35278d09ac
Polishing
2024-05-23 16:34:24 +02:00