Skip to content

v13.0.0 — API Enrichment

Choose a tag to compare

@imperugo imperugo released this 03 Aug 12:57
· 16 commits to master since this release
096aad6

What's New

New Redis Data Structure APIs

  • HyperLogLog (#637): HyperLogLogAddAsync, HyperLogLogLengthAsync, HyperLogLogMergeAsync — probabilistic cardinality estimation with serialization support
  • Distributed Lock (#638): LockTakeAsync, LockReleaseAsync, LockExtendAsync, LockQueryAsync + high-level LockAcquireAsync returning IRedisLock with IAsyncDisposable auto-release and retry logic
  • Sorted Set enrichment (#639): 10 new methods — SortedSetLengthAsync, SortedSetScoreAsync, SortedSetScoresAsync, SortedSetRankAsync, SortedSetIncrementAsync, SortedSetDecrementAsync, SortedSetPopAsync, SortedSetRandomMemberAsync, SortedSetRandomMembersAsync, SortedSetCombineAndStoreAsync
  • List enrichment (#640): 12 new methods — ListAddToRightAsync (single + array), ListGetFromLeftAsync, ListLengthAsync, ListRangeAsync, ListGetByIndexAsync, ListSetByIndexAsync, ListTrimAsync, ListRemoveAsync, ListInsertBeforeAsync, ListInsertAfterAsync, ListMoveAsync
  • Lua Scripting (#641): ScriptEvaluateAsync, ScriptEvaluateReadOnlyAsync with raw and typed deserialization variants
  • Bitmap (#642): StringSetBitAsync, StringGetBitAsync, StringBitCountAsync, StringBitOperationAsync, StringBitPositionAsync

VectorSet Tests (#648)

Added 17 comprehensive tests for the VectorSet API (VADD, VSIM, VREM, VCONTAINS, VCARD, VDIM, VGETATTR, VSETATTR, VINFO, VRANDMEMBER, VLINKS) now that Redis 8.0+ is available on Docker Hub.

StackExchange.Redis 3.x Compatibility (#656)

Core package now accepts StackExchange.Redis [2.12.14, 4.0.0), ensuring forward compatibility with the upcoming SE.Redis 3.x releases.

Code Quality

  • Removed orphaned ICacheSerializationContext interface (unused since 2022)
  • Cleaned up Visual Studio merge-tool comment artifacts
  • Removed unused using directives
  • Renamed RedisKeyHelper.cs → GenericsExtensions.cs to match actual class name
  • Updated CI to use redis:8 Docker image (Redis 8.10.0 stable)

Documentation

Test Coverage

1754 tests passing on net10.0 (up from 1635 in v12.6.0). All tests pass across net10.0 and net9.0.

Breaking Changes

None for consumers using IRedisDatabase through DI. If you have a custom implementation of IRedisDatabase, you will need to add the new methods — see the migration guide.

Full Changelog

v12.6.0...v13.0.0