Sam Brannen
7183a19dbe
Merge branch '6.1.x'
2024-06-25 16:58:45 +02:00
Sam Brannen
d133ab60ee
Improve documentation regarding encoding in FreeMarker support
...
This commit also introduces integration tests to test the status quo
regarding encoding.
Closes gh-33071
2024-06-25 16:56:48 +02:00
Juergen Hoeller
645556a28c
Merge branch '6.1.x'
2024-05-07 15:53:00 +02:00
Juergen Hoeller
4f02be263f
Polishing
2024-05-07 15:52:13 +02:00
Juergen Hoeller
d9ca263065
Merge branch '6.1.x'
2024-05-06 20:11:56 +02:00
Juergen Hoeller
05d9b52b19
Polishing
2024-05-06 20:10:40 +02:00
Sébastien Deleuze
8b51b36729
Perform NullAway build-time checks in more modules
...
This commit enables null-safety build-time checks in
all remaining modules except spring-test.
See gh-32475
2024-03-26 15:53:01 +01:00
Sébastien Deleuze
2fea3d7921
Merge branch '6.1.x'
2024-03-26 15:41:46 +01:00
Sébastien Deleuze
290a41d398
Refine null-safety in more modules
...
This commit refines the null-safety in all remaining modules
except spring-test.
See gh-32475
2024-03-26 15:39:18 +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
3d7ef3ebfc
Avoid storage of null marker per method for proxy decision purposes
...
Includes missing isCandidateClass support on JCacheOperationSource.
Closes gh-20072
2024-03-04 12:55:33 +01:00
Sam Brannen
a85bf3185e
Remove APIs deprecated for removal in 6.2
...
This commit removes the following obsolete and deprecated APIs.
- org.springframework.util.Base64Utils
- org.springframework.cache.jcache.interceptor.JCacheOperationSourcePointcut
- org.springframework.http.client.AbstractClientHttpResponse
- org.springframework.http.client.ClientHttpResponse.getRawStatusCode()
- org.springframework.http.client.observation.ClientHttpObservationDocumentation.HighCardinalityKeyNames.CLIENT_NAME
- org.springframework.web.reactive.function.client.ClientHttpObservationDocumentation.HighCardinalityKeyNames.CLIENT_NAME
- org.springframework.web.filter.reactive.ServerWebExchangeContextFilter.get(Context)
- org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler.handleBindException(...)
- org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver.handleBindException(...)
Closes gh-30608
2024-02-16 16:45:18 +01:00
Stéphane Nicoll
11c8b22c5a
Polish
2024-01-20 14:26:48 +01:00
Juergen Hoeller
5f8a031c22
Introduce "spring.cache.reactivestreams.ignore" escape hatch
...
Closes gh-31861
2023-12-21 11:14:33 +01:00
Juergen Hoeller
824bc09d11
Actual caching of null values in retrieve(key, valueLoader)
...
See gh-31637
2023-11-22 15:56:26 +01:00
Juergen Hoeller
e64b81eec4
Revised handling of allowNullValues for asynchronous retrieval
...
Includes revised cacheNames javadoc and equals/hashCode for SimpleValueWrapper.
See gh-31637
2023-11-22 12:22:13 +01:00
Stéphane Nicoll
dd97dee7fd
Polish
2023-11-13 19:33:09 +01:00
Johnny Lim
64e9fcad53
Apply SingleSpaceSeparator Checkstyle module
...
This commit also fixes its violations.
Closes gh-31469
2023-10-22 14:09:57 +02:00
Stéphane Nicoll
2fbcff8919
Prevent ValueLoaderEntryProcessor to be created for each get call
...
Closes gh-31250
2023-09-18 09:27:16 +02:00
Stéphane Nicoll
f79bc7b14d
Implement JCacheCache#putIfAbsent as atomic operation
...
This commit modifies putIfAbsent to use an EntryProcessor that
guarantees that the operation is atomic.
Closes gh-21591
2023-09-18 09:09:47 +02:00
Stéphane Nicoll
978c409d85
Polish contribution
...
See gh-23651
2023-09-15 10:25:16 +02:00
Rune Flobakk
f67fad4c14
Add default methods to MailSender and JavaMailSender when appropriate
...
send(..) -methods of JavaMailSenderImpl which is only delegating to
other methods are pulled up as default methods in the interfaces
JavaMailSender and MailSender, to make these interfaces require fewer
methods to implement.
See gh-23651
2023-09-15 10:25:06 +02:00
Stephane Nicoll
01f717375b
Introduce ObjectUtils#nullSafeHash(Object... element)
...
This commit deprecates the various nullSafeHashCode methods taking array
types as they are superseded by Arrays.hashCode now. This means that
the now only remaining nullSafeHashCode method does not trigger a
warning only if the target type is not an array. At the same time, there
are multiple use of this method on several elements, handling the
accumulation of hash codes.
For that reason, this commit also introduces a nullSafeHash that takes
an array of elements. The only difference between Objects.hash is that
this method handles arrays.
The codebase has been reviewed to use any of those two methods when it
is possible.
Closes gh-29051
2023-09-13 15:14:34 +02:00
Juergen Hoeller
45c20e34e4
Merge branch '6.0.x'
...
# Conflicts:
# spring-context/src/test/java/org/springframework/context/annotation/PropertySourceAnnotationTests.java
2023-08-14 19:29:14 +02:00
Juergen Hoeller
2ce75dc415
Polishing
2023-08-14 19:28:19 +02:00
Sam Brannen
81181c346a
Assert SimpleTriggerFactoryBean.setMisfireInstruction() values
...
See gh-30851
2023-07-31 16:08:47 +03:00
Sam Brannen
1378cce9fb
Assert CronTriggerFactoryBean.setMisfireInstruction() values
...
See gh-30851
2023-07-31 16:08:47 +03:00
Juergen Hoeller
3a9e0ea8a7
Polishing
2023-07-22 00:31:09 +02:00
Juergen Hoeller
ba46d2bf21
Polishing
2023-07-21 23:57:20 +02:00
Juergen Hoeller
4ce1ac0dcb
Polishing
2023-07-21 20:36:43 +02:00
Juergen Hoeller
f99faac073
Add caching annotation support for CompletableFuture and reactive return values
...
Includes CompletableFuture-based retrieve operations on Spring's Cache interface.
Includes support for retrieve operations on CaffeineCache and ConcurrentMapCache.
Includes async cache mode option on CaffeineCacheManager.
Closes gh-17559
Closes gh-17920
Closes gh-30122
2023-07-21 20:27:23 +02:00
Juergen Hoeller
25ea1f4c0f
Merge branch '6.0.x'
...
# Conflicts:
# spring-context/src/main/java/org/springframework/scheduling/support/CronSequenceGenerator.java
2023-07-19 00:37:06 +02:00
Juergen Hoeller
2f33e77ab4
Consistent equals/hashCode style (and related polishing)
2023-07-19 00:35:19 +02:00
Sam Brannen
28e63e9279
Polishing
2023-07-16 14:35:22 +02:00
Sam Brannen
11de70ed08
Update Javadoc for SimpleTriggerFactoryBean.setMisfireInstructionName()
...
org.quartz.Trigger#MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY is also
supported.
2023-07-16 14:34:42 +02:00
Sam Brannen
9283fd2162
Update Javadoc for CronTriggerFactoryBean.setMisfireInstructionName()
...
org.quartz.Trigger#MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY is also
supported.
2023-07-16 14:05:24 +02:00
Sam Brannen
d6230824cb
Stop using Constants utility in SimpleTriggerFactoryBean
...
See gh-30851
2023-07-16 15:00:11 +02:00
Sam Brannen
edba535c8b
Stop using Constants utility in CronTriggerFactoryBean
...
See gh-30851
2023-07-16 15:00:11 +02:00
Sam Brannen
79cf532c2f
Merge branch '6.0.x'
2023-07-16 14:36:09 +02:00
Sam Brannen
f6b8ee76cd
Merge branch '6.0.x'
2023-07-16 14:05:46 +02:00
Juergen Hoeller
60865eae4b
Align ConcurrentMapCacheManager locking behavior with CaffeineCacheManager
...
Closes gh-30780
2023-06-30 10:39:53 +02:00
Juergen Hoeller
50074f0e96
Merge branch '6.0.x'
2023-06-30 10:40:37 +02:00
Juergen Hoeller
ef2b47e202
Merge branch '6.0.x'
2023-06-08 17:46:19 +02:00
Juergen Hoeller
6931106c5e
Redesign inner Pointcut implementations as standalone classes
...
Avoids exposure of implicit Advisor instance state in Pointcut instance.
See gh-30621
2023-06-08 17:42:49 +02:00
Sam Brannen
7169577f9c
Merge branch '6.0.x'
2023-05-24 16:57:30 +02:00
Sam Brannen
6dfd330fa5
Polish JavaMailSenderTests
2023-05-24 16:54:44 +02:00
Juergen Hoeller
697d5e6247
Configuration options for virtual threads (on JDK 21)
...
VirtualThreadDelegate built on JDK 21 for multi-release jar.
Includes dedicated VirtualThreadTaskExecutor as lean option.
Includes setVirtualThreads flag on SimpleAsyncTaskExecutor.
Includes additional default methods on AsyncTaskExecutor.
Closes gh-30241
2023-05-08 11:22:47 +02:00
Juergen Hoeller
d39e44c209
Deprecate AutowireCapableBeanFactory.createBean(Class, int, boolean)
...
Includes consistent usage of createBean(Class) in SpringBeanJobFactory and SpringBeanContainer.
Closes gh-30345
See gh-29855
See gh-30041
2023-04-30 23:07:29 +02:00
Brian Clozel
6cd67412cc
Avoid lock contention in CaffeineCacheManager
...
Prior to this commit, using a dynamic `CaffeineCacheManager` would rely
on `ConcurrentHashMap#computeIfAbsent` for retrieving and creating cache
instances as needed. It turns out that using this method concurrently
can cause lock contention even when all known cache instances are
instantiated.
This commit avoids using this method if the cache instance already
exists and avoid storing `null` entries in the map. This change reduces
lock contention and the overall HashMap size in the non-dynamic case.
Fixes gh-30066
2023-03-08 16:23:32 +01:00