StackExchange.Redis.Extensions
StackExchange.Redis.Extensions copied to clipboard
Bump StackExchange.Redis from 2.1.30 to 2.6.66
Bumps StackExchange.Redis from 2.1.30 to 2.6.66.
Changelog
Sourced from StackExchange.Redis's changelog.
2.6.66
- Fix #2182: Be more flexible in which commands are "primary only" in order to support users with replicas that are explicitly configured to allow writes (#2183 by slorello89)
- Adds:
IConnectionMultiplexernow implementsIAsyncDisposable(#2161 by kimsey0)- Adds:
IConnectionMultiplexer.GetServers()to get allIServerinstances for a multiplexer (#2203 by NickCraver)- Fix #2016: Align server selection with supported commands (e.g. with writable servers) to reduce
Command cannot be issued to a replicaerrors (#2191 by slorello89)- Performance: Optimization around timeout processing to reduce lock contention in the case of many items that haven't yet timed out during a heartbeat (#2217 by NickCraver)
- Fix #2223: Resolve sync-context issues (missing
ConfigureAwait(false)) (#2229 by mgravell)- Fix #1968: Improved handling of EVAL scripts during server restarts and failovers, detecting and re-sending the script for a retry when needed (#2170 by martintmk)
- Adds:
ConfigurationOptions.SslClientAuthenticationOptions(netcoreapp3.1/net5.0+ only) to give more control over SSL/TLS authentication (#2224 by NickCraver)- Fix #2240: Improve support for DNS-based IPv6 endpoints (#2241 by NickCraver)
- Adds:
ConfigurationOptions.HeartbeatInterval(Advanced Setting - see docs) To allow more finite control of the client heartbeat, which encompases how often command timeouts are actually evaluated - still defaults to 1,000 ms (#2243 by NickCraver)- Fix #1879: Improve exception message when the wrong password is used (#2246 by NickCraver)
- Fix #2233: Repeated connection to Sentinel servers using the same ConfigurationOptions would fail (#2242 by NickCraver)
2.6.48
- URGENT Fix: #2167, #2176: fix error in batch/transaction handling that can result in out-of-order instructions (#2177 by MarcGravell)
- Fix: #2164: fix
LuaScript.Preparefor scripts that don't have parameters (#2166 by MarcGravell)2.6.45
- Adds: Nullable reference type annotations (#2041 by NickCraver)
- Adds annotations themselves for nullability to everything in the library
- Fixes a few internal edge cases that will now throw proper errors (rather than a downstream null reference)
- Fixes inconsistencies with
nullvs. empty array returns (preferring an not-null empty array in those edge cases)- Note: does not increment a major version (as these are warnings to consumers), because: they're warnings (errors are opt-in), removing obsolete types with a 3.0 rev would be binary breaking (this isn't), and reving to 3.0 would cause binding redirect pain for consumers. Bumping from 2.5 to 2.6 only for this change.
- Adds: Support for
COPYwith.KeyCopy()/.KeyCopyAsync()(#2064 by Avital-Fine)- Adds: Support for
LMOVEwith.ListMove()/.ListMoveAsync()(#2065 by Avital-Fine)- Adds: Support for
ZRANDMEMBERwith.SortedSetRandomMember()/.SortedSetRandomMemberAsync(),.SortedSetRandomMembers()/.SortedSetRandomMembersAsync(), and.SortedSetRandomMembersWithScores()/.SortedSetRandomMembersWithScoresAsync()(#2076 by Avital-Fine)- Adds: Support for
SMISMEMBERwith.SetContains()/.SetContainsAsync()(#2077 by Avital-Fine)- Adds: Support for
ZDIFF,ZDIFFSTORE,ZINTER,ZINTERCARD, andZUNIONwith.SortedSetCombine()/.SortedSetCombineAsync(),.SortedSetCombineWithScores()/.SortedSetCombineWithScoresAsync(), and.SortedSetIntersectionLength()/.SortedSetIntersectionLengthAsync()(#2075 by Avital-Fine)- Adds: Support for
SINTERCARDwith.SetIntersectionLength()/.SetIntersectionLengthAsync()(#2078 by Avital-Fine)- Adds: Support for
LPOSwith.ListPosition()/.ListPositionAsync()and.ListPositions()/.ListPositionsAsync()(#2080 by slorello89)- Adds: Support for
ZMSCOREwith.SortedSetScores()/.SortedSetScoresAsync()(#2082 by ttingen)- Adds: Support for
NX | XX | GT | LTtoEXPIRE,EXPIREAT,PEXPIRE, andPEXPIREATwith.KeyExpire()/.KeyExpireAsync()(#2083 by Avital-Fine)- Adds: Support for
EXPIRETIME, andPEXPIRETIMEwith.KeyExpireTime()/.KeyExpireTimeAsync()(#2083 by Avital-Fine)- Fix: For streams, properly hash
XACK,XCLAIM, andXPENDINGin cluster scenarios to eliminateMOVEDretries (#2085 by nielsderdaele)- Adds: Support for
OBJECT REFCOUNTwith.KeyRefCount()/.KeyRefCountAsync()(#2087 by Avital-Fine)- Adds: Support for
OBJECT ENCODINGwith.KeyEncoding()/.KeyEncodingAsync()(#2088 by Avital-Fine)- Adds: Support for
GEOSEARCHwith.GeoSearch()/.GeoSearchAsync()(#2089 by slorello89)- Adds: Support for
GEOSEARCHSTOREwith.GeoSearchAndStore()/.GeoSearchAndStoreAsync()(#2089 by slorello89)- Adds: Support for
HRANDFIELDwith.HashRandomField()/.HashRandomFieldAsync(),.HashRandomFields()/.HashRandomFieldsAsync(), and.HashRandomFieldsWithValues()/.HashRandomFieldsWithValuesAsync()(#2090 by slorello89)- Adds: Support for
LMPOPwith.ListLeftPop()/.ListLeftPopAsync()and.ListRightPop()/.ListRightPopAsync()(#2094 by slorello89)- Adds: Support for
ZMPOPwith.SortedSetPop()/.SortedSetPopAsync()(#2094 by slorello89)- Adds: Support for
XAUTOCLAIMwith.StreamAutoClaim()/.StreamAutoClaimAsync()and.StreamAutoClaimIdsOnly()/.StreamAutoClaimIdsOnlyAsync()(#2095 by ttingen)- Fix #2071: Add
.StringSet()/.StringSetAsync()overloads for source compat broken for 1 case in 2.5.61 (#2098 by NickCraver)- Fix #2086: Correct HashSlot calculations for
XREADandXREADGROUPcommands (#2093 by nielsderdaele)- Adds: Support for
LCSwith.StringLongestCommonSubsequence()/.StringLongestCommonSubsequence(),.StringLongestCommonSubsequenceLength()/.StringLongestCommonSubsequenceLengthAsync(), and.StringLongestCommonSubsequenceWithMatches()/.StringLongestCommonSubsequenceWithMatchesAsync()(#2104 by Avital-Fine)
... (truncated)
Commits
d1b802bHeartbeat interval: Make it configurable (#2243)5ceb775Auth: Better exception for bad passwords (#2246)846e096Sentinel: fix repeat connects (#2242)384d342Docs: add SocketManager (#2245)a0ddbf8Fix for #2240 (#2241)d2d13bcSSL/TLS: Add SslClientAuthenticationOptions configurability (#2224)612d327Update Configuration.md (#2230)fdc90e9Allow LoadedLuaScript fail-over in case the Redis instance is restarted (#2170)2a0468eResolve sync-context issues (missing configureawait) in the multiplexer (#2229)f3f3013Docs: improvement for #2103 & #1795 (#2225)- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)