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
bd27ddf83a
Polishing (aligned with main)
2024-03-19 10:05:32 +01:00
Juergen Hoeller
c531a8a705
Nullability refinements and related polishing
...
See gh-32475
2024-03-19 09:58:44 +01:00
Juergen Hoeller
6df27644eb
Merge branch '6.1.x'
2024-03-18 16:04:26 +01:00
Juergen Hoeller
5dc6a16c0b
Nullability refinements
...
See gh-32475
2024-03-18 16:03:00 +01:00
Juergen Hoeller
2f2c4188e5
Nullability refinements
...
See gh-32475
2024-03-18 15:49:20 +01:00
Sam Brannen
ccebaa6b0c
Merge branch '6.1.x'
2024-03-18 15:18:06 +01:00
Sam Brannen
42a4f28962
Avoid unnecessary Annotation array cloning in TypeDescriptor
...
Closes gh-32476
2024-03-18 15:17:04 +01:00
Juergen Hoeller
2b56ca08d4
Restore canonical name representation for 6.2
...
See gh-32405
2024-03-17 21:03:02 +01:00
Juergen Hoeller
b89cf2b16a
Merge branch '6.1.x'
2024-03-17 21:00:00 +01:00
Juergen Hoeller
b1c3b6e34b
Restore original toString representation (revert accidental backport)
...
See gh-32405
2024-03-17 20:42:29 +01:00
Johnny Lim
99e1b0d117
Make SimpleAliasRegistry.aliasNames final
2024-03-17 13:33:31 +01:00
Juergen Hoeller
89d563097f
Merge branch '6.1.x'
...
# Conflicts:
# spring-core/src/main/java/org/springframework/core/convert/TypeDescriptor.java
2024-03-16 23:24:51 +01:00
Juergen Hoeller
eb8b7c4331
Remove superfluous @NonNull declarations
2024-03-16 14:22:17 +01:00
Juergen Hoeller
58bd057a24
Avoid cloning empty Annotation array in TypeDescriptor (backport)
...
Closes gh-32405
2024-03-16 14:21:34 +01:00
Sam Brannen
e1b1435a00
Stop referring to JDK 1.5 plus polishing
2024-03-14 16:00:51 +01:00
Sam Brannen
986c4fd926
Revise use of Objects.requireNonNull()
...
Historically, we have rarely intentionally thrown a
NullPointerException in the Spring Framework. Instead, we prefer to
throw either an IllegalArgumentException or IllegalStateException
instead of a NullPointerException.
However, changes to the code in recent times have introduced the use of
Objects.requireNonNull(Object) which throws a NullPointerException
without an explicit error message.
The latter ends up providing less context than a NullPointerException
thrown by the JVM (since Java 14) due to actually de-referencing a
null-pointer. See https://openjdk.org/jeps/358 .
In light of that, this commit revises our current use of
Objects.requireNonNull(Object) by removing it or replacing it with
Assert.notNull().
However, we still use Objects.requireNonNull(T, String) in a few places
where we are required to throw a NullPointerException in order to
comply with a third-party contract such as Reactive Streams.
Closes gh-32430
2024-03-13 16:00:22 +01:00
Juergen Hoeller
3b87c87a33
Merge branch '6.1.x'
2024-03-12 20:11:21 +01:00
Juergen Hoeller
723c94e5ac
Polishing
2024-03-12 20:10:01 +01:00
Sébastien Deleuze
0435e9c49e
Merge branch '6.1.x'
2024-03-11 13:40:23 +01:00
Sébastien Deleuze
80f3be6577
Replace getJvmErasure by getClassifier
...
Should be slightly faster.
See gh-32334
2024-03-11 13:37:41 +01:00
Sébastien Deleuze
946082f806
Refine publisher type check in CoroutinesUtils
...
See gh-32390
2024-03-11 13:15:54 +01:00
Yanming Zhou
246e4977a2
Polishing Optional usage
2024-03-11 09:13:49 +01:00
Sam Brannen
4c246b7c96
Consistently use canonical annotation names in string representations
2024-03-10 15:54:53 +01:00
Sam Brannen
5345a13918
Polish contribution
...
See gh-32405
2024-03-10 12:36:08 +01:00
Patrick Strawderman
7fa2a28970
Avoid cloning empty Annotation array in TypeDescriptor
...
Rework AnnotatedElementAdapter to avoid cloning the underlying
Annotation array if it is empty when getAnnotations() is called.
Additionally, make the class static and add a factory method that
returns a singleton instance for null or empty Annotation arrays.
Closes gh-32405
2024-03-10 12:26:49 +01:00
Stéphane Nicoll
e53ed3e3c6
Merge branch '6.1.x'
2024-03-09 16:03:04 +01:00
Stéphane Nicoll
4983a802a7
Polish "Fix Javadoc"
...
See gh-32403
2024-03-09 16:02:01 +01:00
Maksim Sasnouski
abdccffa39
Fix Javadoc
...
This commit fixes various Javadoc issues across the code base.
See gh-32403
2024-03-09 16:02:00 +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
ae6c64abc5
Fix Javadoc errors
2024-03-08 11:59:53 +01:00
Sébastien Deleuze
f0039833c8
Merge branch '6.1.x'
2024-03-07 14:31:26 +01:00
Sébastien Deleuze
579dbc48d7
Optimize Coroutine invocations
...
KClass instantiation in CoroutinesUtils is suboptimal, and should be
replaced by KTypes#isSubtypeOf checks using pre-instantiated types for
Flow, Mono and Publisher.
This commit impact on performances is significant since a throughput
increase between 2x and 3x has been measured on basic endpoints.
Closes gh-32390
2024-03-07 14:27:47 +01:00
Sébastien Deleuze
92f4e883b3
Merge branch '6.1.x'
2024-03-07 11:11:46 +01:00
Sébastien Deleuze
c1d4b610ca
Refine Kotlin inline class optimizations
...
Closes gh-32334
2024-03-07 11:11:20 +01:00
Sam Brannen
b32a2cadfb
Update class-level Javadoc for ParameterNameDiscoverer
2024-03-06 14:49:46 +01:00
Juergen Hoeller
a0ae849856
Polishing
2024-03-05 18:23:13 +01:00
ali dandach
eb01cc0d9d
Use String#isEmpty where feasible
...
This commit replaces checks for empty strings ("".equals(...)) with the
String#isEmpty method.
Closes gh-32377
2024-03-05 17:38:29 +01:00
Sam Brannen
c29c67839b
Cache parameterTypes in ClassUtils.getInterfaceMethodIfPossible
2024-03-05 11:48:01 +01:00
Arjen Poutsma
6d9aba88d0
Fix typo
...
See gh-32360
2024-03-05 10:48:06 +01:00
Arjen Poutsma
646bd7f893
Document StringUtils::uriDecode limitations
...
Closes gh-32360
2024-03-05 10:03:15 +01:00
Juergen Hoeller
79c54098ab
Merge branch '6.1.x'
2024-03-04 23:49:55 +01:00
Juergen Hoeller
4300fec023
Restore ability to return original method at ClassUtils level as well
...
Closes gh-32365
2024-03-04 23:48:26 +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
24759a75f4
Restore ability to return original method for proxy-derived method
...
Closes gh-32365
2024-03-04 22:48:46 +01:00
Sébastien Deleuze
219004ef13
Merge branch '6.1.x'
2024-03-03 22:26:37 +01:00
Sébastien Deleuze
516a203703
Support nullable Kotlin value class arguments
...
This commit skips the value class parameter instantiation for nullable
types when a null argument is passed.
Closes gh-32353
2024-03-03 22:26:21 +01:00
Juergen Hoeller
390fe0fe78
Add support for resolving multiple bounds in type variables
...
Closes gh-22902
See gh-32327
2024-03-02 11:30:17 +01:00