Upgrade to Spring Boot 4 / Spring Framework 7 - #95
Merged
Conversation
jeremyprime
force-pushed
the
upstream-sync-4.1
branch
17 times, most recently
from
July 13, 2026 22:26
bd7ce90 to
c49ad61
Compare
jeremyprime
marked this pull request as ready for review
July 13, 2026 22:57
- Upgrade Spring Data Redis 3.5.1 → 4.1.0 - Upgrade Spring Boot 3.5.1 → 4.0.7 - Upgrade Jedis 6 → 7.4.1, Lettuce 6 → 7.5.2, JUnit 5 → 6.0.3 - Implement new APIs: @ValkeyListener, SetCondition, hash field expiration, DELEX/DIGEST, XDELEX/XACKDEL - Add GLIDE implementations for all new interface methods - Sync docs from upstream Antora to Starlight (new pub/sub pages, Jackson 3) - Rebrand all Redis → Valkey in new/updated files - Full test suite passing Signed-off-by: Jeremy Parr-Pearson <jeremy.parr-pearson@improving.com>
jeremyprime
force-pushed
the
upstream-sync-4.1
branch
from
July 15, 2026 16:27
c49ad61 to
0eed675
Compare
xShinnRyuu
reviewed
Jul 22, 2026
…type handling Signed-off-by: Jeremy Parr-Pearson <jeremy.parr-pearson@improving.com>
Aryex
reviewed
Jul 23, 2026
xShinnRyuu
approved these changes
Jul 23, 2026
Signed-off-by: Jeremy Parr-Pearson <jeremy.parr-pearson@improving.com>
Aryex
approved these changes
Jul 24, 2026
Signed-off-by: Jeremy Parr-Pearson <jeremy.parr-pearson@improving.com>
jeremyprime
force-pushed
the
upstream-sync-4.1
branch
from
July 24, 2026 22:45
1533e7d to
e33c397
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Syncs spring-data-valkey with upstream Spring Data Redis 4.1.0 / Spring Boot 4.0.7 / Spring Framework 7.
Closes #84
Changes
New features:
@ValkeyListener/@EnableValkeyListeners— annotation-driven pub/sub messagingValkeyMessageSendingTemplate— simplified pub/sub publishingSetCondition/compareAndSet— value-based conditional SET operationsHGETDEL,HGETEX,HSETEX— hash field expiration commandsDELEX/DIGEST— conditional delete and value digestXACKDEL/XDELEX— stream deletion with policiesSINTERCARD— set intersection cardinalityResetStrategy— fine-grained cache invalidationJacksonHashMapper,JacksonJsonValkeySerializer)Dependency upgrades:
Infrastructure:
@Nullable(~4,200 additions)@ParameterizedClassreplacing custom@ParameterizedValkeyTestframework.mvn/extensions.xml(Develocity extension we don't use)Implementation Details
GLIDE driver:
@EnabledOnCommandgating for server version compatibilityBoot starter:
ValkeyAnnotationDrivenConfigurationfor@ValkeyListenerauto-configurationValkeyMessageListenerContainerConfigurerwithspring.data.valkey.listener.*propertiesclient-typepropertyVALKEYGLIDEenum restored inValkeyProperties.ClientTypeUpstream sync:
@Nullablereturn types)Rebranding maintenance:
redis.io→valkey.iolink corrections (~2,000)redisnames)Known risks:
@ParameterizedClass, lifecycle changes)Testing
AI-Assisted Sync Tooling
This upgrade was performed with AI-assisted orchestration. The tooling and rules are committed under
.kiro/agents/for reuse in future upstream syncs:.kiro/agents/rules/rename-rules.md— rebranding exclusions and naming conventions.kiro/agents/rules/spring-boot-4.md— version-specific mapping tables and scope