Sam Brannen
c5fd57d92b
Polish @Retryable Javadoc and internals
2025-06-17 17:07:15 +02:00
Spring Builds
16edf9867a
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 16:23:50 +02:00
Juergen Hoeller
f69df9b767
Introduce retry interceptor and annotation-based retry support
...
Based on RetryTemplate with ExponentialBackOff.
Includes optional jitter support in ExponentialBackOff.
Supports reactive methods through Reactor's RetryBackoffSpec.
Closes gh-34529
2025-06-17 12:49:29 +02:00
Brian Clozel
af7758cbc7
Configure CheckStyle rule for empty catch blocks
...
This commit configures a new CheckStyle rule that fails for empty
"catch" blocks, unless the exception is named "ignored" or "expected".
This also fixes the remaining instances missed by the previous commit.
Closes gh-35047
2025-06-15 16:11:48 +02:00
Vincent Potucek
0d4dfb6c1f
Rename exception variables in empty catch blocks
...
The Spring codebase sometimes ignores exceptions in catch blocks on
purpose. This is often called out by an inline comment.
We should make this more obvious by renaming the exception argument in
the catch block to declare whether the exception is "ignored" or
"expected".
See gh-35047
Signed-off-by: Vincent Potucek <vpotucek@me.com>
[brian.clozel@broadcom.com: rework commit message]
Signed-off-by: Brian Clozel <brian.clozel@broadcom.com>
2025-06-15 16:11:42 +02:00
Sam Brannen
077146d636
Merge branch '6.2.x'
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run
Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions
Details
Deploy Docs / Dispatch docs deployment (push) Waiting to run
Details
2025-06-09 14:12:45 +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
Sam Brannen
ad2931b51f
Migrate away from AssertJ's catchThrowable()
...
Closes gh-35003
2025-06-06 15:01:26 +02:00
Juergen Hoeller
167350d408
Merge branch '6.2.x'
...
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run
Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions
Details
Deploy Docs / Dispatch docs deployment (push) Waiting to run
Details
# Conflicts:
# spring-aop/src/main/java/org/springframework/aop/aspectj/AspectJExpressionPointcut.java
# spring-aop/src/main/java/org/springframework/aop/aspectj/ShadowMatchUtils.java
2025-06-05 20:39:20 +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
Brian Clozel
5fbb81de10
Fix missing "since" attributes for Deprecated code
...
See gh-34989
2025-06-05 09:25:10 +02:00
Sam Brannen
5b4511fbf7
Merge branch '6.2.x'
2025-04-04 15:54:29 +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
a122dda596
Merge branch '6.2.x'
2025-03-31 16:42:29 +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
9956cc11bb
Merge branch '6.2.x'
2025-03-29 12:57:49 +01: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
Juergen Hoeller
d710f73c47
Log public final method at warn level for non-interface case as well
...
Closes gh-33939
2025-03-21 09:40:52 +01:00
Sam Brannen
8db1340263
Merge branch '6.2.x'
2025-03-19 16:24:18 +01:00
Sam Brannen
208d52d852
Introduce Checkstyle rule for separator symbol location
2025-03-19 15:35:44 +01:00
Sam Brannen
e05d4f2f18
Merge branch '6.2.x'
2025-03-18 16:42:37 +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
a0763d13c5
Merge branch '6.2.x'
Build and Deploy Snapshot / Build and Deploy Snapshot (push) Waiting to run
Details
Build and Deploy Snapshot / Verify (push) Blocked by required conditions
Details
Deploy Docs / Dispatch docs deployment (push) Waiting to run
Details
2025-03-17 19:24:30 +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
Sam Brannen
5f98db6ffe
Use new features introduced in JUnit Jupiter 5.11 and 5.12
...
See gh-34416
2025-02-26 15:18:16 +01:00
Stéphane Nicoll
fce0389e23
Merge branch '6.2.x'
2025-02-05 11:53:30 +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
3c4d535723
Merge branch '6.2.x'
2025-02-04 16:01:45 +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
Sébastien Deleuze
7f21443a1b
Refine null-safety based on IDEA warnings
...
See gh-28797
2025-01-22 13:20:11 +01:00
Brian Clozel
f85752a956
Fix hints and predicates for Field reflective access
...
This commit revisits the arrangement for Field hints after changes made
in gh-34239.
Closes gh-34294
2025-01-21 20:05:12 +01:00
Sébastien Deleuze
f52f83349c
Specify generic type nullness in spring-aop
...
See gh-34140
2025-01-14 12:35:01 +01:00
Brian Clozel
d28c0396c9
Update runtime hints predicates after GraalVM changes
...
As of gh-33847, method and field introspection is included by default
when a type is registered for reflection.
Many methods in ReflectionHintsPredicates are now mostly useless as their
default behavior checks for introspection.
This commit deprecates those methods and promotes instead invocation
variants. During the upgrade, developers should replace it for an
`onType` check if only reflection is required. If they were checking for
invocation, they should use the new 'onXInvocation` method.
Closes gh-34239
2025-01-13 15:34:34 +01:00
Sébastien Deleuze
483985b173
Suppress serialization warnings
...
This commit suppresses serialization warnings triggered by the upgrade
of javac from 17 to 23.
See gh-34220
2025-01-09 16:01:30 +01:00
Brian Clozel
396f04a3b9
Remove outdated TODO task
2025-01-08 13:49:16 +01:00
Sébastien Deleuze
96f7d50abf
Remove unneeded NullAway warning suppressions
...
This commit removes warning suppressions related to uber/NullAway#1113
which is now fixed.
See gh-28797
2025-01-07 09:57:56 +01:00
Sébastien Deleuze
292a3a4895
Refine spring-aop arguments nullness
...
See gh-28797
2025-01-06 16:52:34 +01:00
Sébastien Deleuze
5e9b07b56d
Use JSpecify annotations in org.aopalliance.*
...
See gh-28797
2025-01-06 16:52:34 +01:00
Sam Brannen
bc499df6ce
Merge branch '6.2.x'
2025-01-05 17:01:12 +02:00
Sam Brannen
181db1db75
Update copyright headers to 2025
2025-01-05 17:00:47 +02:00
Sam Brannen
bab8a8300b
Merge branch '6.2.x'
2025-01-03 16:44:26 +02:00
Sam Brannen
9de2b947cb
Upgrade to AssertJ 3.27.1
2025-01-03 16:42:07 +02:00
Sébastien Deleuze
4fa33dfece
Refine null-safety in the spring-aop module
...
See gh-34154
2024-12-26 15:30:59 +01:00
Sébastien Deleuze
185537d469
Refine jsr305 dependency management
...
See gh-28797
2024-12-26 14:13:17 +01:00
Sébastien Deleuze
92f1f55957
Refine null-safety in the spring-aop module
...
Closes gh-34154
2024-12-26 13:53:25 +01:00
Sébastien Deleuze
bc5d771a06
Switch to JSpecify annotations
...
This commit updates the whole Spring Framework codebase to use JSpecify
annotations instead of Spring null-safety annotations with JSR 305
semantics.
JSpecify provides signficant enhancements such as properly defined
specifications, a canonical dependency with no split-package issue,
better tooling, better Kotlin integration and the capability to specify
generic type, array and varargs element null-safety. Generic type
null-safety is not defined by this commit yet and will be specified
later.
A key difference is that Spring null-safety annotations, following
JSR 305 semantics, apply to fields, parameters and return values,
while JSpecify annotations apply to type usages. That's why this
commit moves nullability annotations closer to the type for fields
and return values.
See gh-28797
2024-12-19 11:07:23 +01:00
Juergen Hoeller
2dbad8de41
Avoid unnecessary logger serialization
...
See gh-32459
2024-12-12 19:34:55 +01:00