Repository navigation
Releases
Releases · seredis/StackExchange.Redis
4.0.165-alpha
What's Changed
- WithRetry, WithKeyPrefix and the group database ride the context/executor core by @mgravell in #3338
- v4: per-command cache serve/store flags, and an external-storage policy mode by @mgravell in #3354
- Merge main into v4 (3.4.31): MOVING drain hold, CLUSTER SLOT-STATS, keyed routing tests, SER1xx experiment block by @mgravell in #3355
- v4 overload minimalism: SortedSetRange, Expiration on RESTORE, GeoCenter by @mgravell in #3356
Full Changelog: 4.0.161-alpha...4.0.165-alpha
4.0.161-alpha
What's Changed
- v4: a close with commands in flight no longer completes a call with another call's reply (#3329) by @mgravell in #3332
- LATENCY RESET and CLIENT TRACKING write through IRespArgument operands, and RenderedArgs goes by @mgravell in #3327
- The coverage audit sees v4's RespLiterals fragments and ignores the connection core; CLIENT SETNAME/SETINFO get ledger rows by @mgravell in #3328
- v4: cache hits reuse the deserialized result for provably-shareable types by @mgravell in #3349
Full Changelog: 4.0.155-alpha...4.0.161-alpha
3.4.35
What's Changed
- CLUSTER SLOT-STATS (8.2): per-slot usage statistics on IServer, experimental SER012 by @mgravell in #3341
- Check the maximum operation count in HeartbeatConsistencyCheckPingsAsync by @unsafePtr in #3342
- Links follow the org move to seredis (#3326) by @mgravell in #3344
- MOVING handoff: hold new work in the backlog while the in-flight commands drain, so the recycle happens within a round trip instead of at the window end by @mgravell in #3347
New Contributors
- @unsafePtr made their first contribution in #3342
Full Changelog: 3.4.31...3.4.35
3.4.31
2.13.23
Primary fix
- v2: a close with commands in flight no longer completes a call with the previous call's reply (#3329) by @mgravell in #3331
Additional changes previously only released in v3
- Fix
OperationCountcalculation by @jnyrup in #3095 - Sentinel: re-elect primary on failover between already-known nodes by @rebaseandpanic in #3131
Maintenance inherited from v3
New Contributors
Full Changelog: 2.13.17...2.13.23
4.0.155-alpha
V4 preview. Since 4.0.146-alpha:
- high-integrity mode restored — a sequence check behind every command (#3308)
- client-side caching replaces a TimeToLive-expired entry on the next fill rather than waiting for the sweep (#3318, #3320)
- an ASK re-send keeps
CLIENT CACHINGout of the prefix and exemptsASKINGfrom the sequence check (#3319) - cluster failover recovery — the library's own topology refresh is exempt from the
AllowAdmingate, a replica-write refusal marks the slot map suspect, and losing an established connection prompts a reconfigure (#3324, from the #3323 investigation) - the connect wait covers the eagerly-dialled subscription connection (#3325)
HOTKEYSandCLIENT KILLwrite throughIRespArgumentoperands (#3321)- plus main merged in up to 3.4.29 (#3322)
3.4.29
What's Changed
- (stabilty) Reset a CycleBuffer segment's start trim when it is recycled (#3302) by @mgravell in #3303
- Restore: make the dedicated subscription connection lazy by @mgravell in #3310
- Update RedisType.Bitmap and the keyspace-event tokens to reflect current server values by @mgravell in #3312
- Fix ConnectionGroupMember string-ctor dropping the name by @mgravell in #3314
- Parse unbracketed IPv6 ip:port from the server (#1422) by @mgravell in #3307
- Profile commands sent in a batch (#2175) by @mohsinaliwork686-rgb in #3313
Tooling
- gitignore: .claude is per-user state except .claude/skills by @mgravell in #3306
- Command coverage ledger and audit skill by @mgravell in #3311
- Update public API docs by @mgravell in https://github.com/StackExchange/StackExchange.Redis/pull/3429
New Contributors
- @mohsinaliwork686-rgb made their first contribution in #3313
Full Changelog: 3.4.20...3.4.29
4.0.146-alpha
V4 preview. Since 4.0.127-alpha, mostly client-side caching: Clock eviction, the public ClientCache view (GetClientCache()), opt-in / opt-out modes and flags (#3297), group-level cache configuration (#3304), and the None and KeyspaceNotifications modes with Default falling back to keyspace notifications (#3305); plus main merged in up to 2026-10-23 (#3298).
3.4.20
Stability improvements
- Do not abandon a connection attempt before ConnectTimeout has elapsed by @mgravell in #3277
- Read HELLO "server" before trusting "version" as the Redis API version by @mgravell in #3279
- Sentinel soft-fail follow-ups: discovery failure as RedisConnectionException, late sentinel init, clear LastException by @mgravell in #3280
- Sentinel: re-resolve the primary when it is demoted on a healthy connection by @rebaseandpanic in #3281
- Route as a cluster only with a slot map; take HELLO mode/role from the interactive connection only by @mgravell in #3285
- Fail connection-dropped commands with RedisConnectionException, never a raw transport exception or a cancellation by @mgravell in #3287
- Connection groups: a member answering LOADING triggers an immediate re-probe and re-select by @mgravell in #3289
- IBatch: complete commands refused by a poisoned connection; divert a batch's tail on reconnect by @mgravell in #3286
- Give multi-message sub-commands and injected prefix commands a write time by @mgravell in #3293
- Send primary-only commands to the primary when the caller prefers a replica by @AsadIqbal-Dev in #3291
Maintenance
- Tests: stabilise two recurring Windows CI flakes (hash-field expiry clock skew, backlog counter quiescence) by @mgravell in #3288
- Tests: don't race the connect's own reconfigures in AllClusterCommandsRefusedIsQuiet by @mgravell in #3290
- Refresh package pins: 10.0.13 servicing family and tooling by @mgravell in #3294
- xunit.v3 4.0 on Microsoft.Testing.Platform by @mgravell in #3295
- StyleCop.Analyzers 1.3.151-beta, and the tidy-up it asks for by @mgravell in #3296
New Contributors
- @AsadIqbal-Dev made their first contribution in #3291
Full Changelog: 3.4.5...3.4.20
3.4.5
What's Changed
- Tolerate refused CLUSTER SLOTS/NODES during topology updates by @mgravell in #3275
- ConnectionAttemptCompleted: take the sequence number and timestamp together by @mgravell in #3270
- Lag-aware failback checks for geo-redundant failover by @mgravell in #3242
- Fix StringSet(Expiration, ValueCondition) doc link: set, not delex by @mgravell in #3272
- Report a transport connection's failure the way a stream connection's is reported by @MDA2AV in #3273
New Contributors
Full Changelog: 3.4.0...3.4.5