Compendium.Adapters.Redis
1.0.0
dotnet add package Compendium.Adapters.Redis --version 1.0.0
NuGet\Install-Package Compendium.Adapters.Redis -Version 1.0.0
<PackageReference Include="Compendium.Adapters.Redis" Version="1.0.0" />
<PackageVersion Include="Compendium.Adapters.Redis" Version="1.0.0" />
<PackageReference Include="Compendium.Adapters.Redis" />
paket add Compendium.Adapters.Redis --version 1.0.0
#r "nuget: Compendium.Adapters.Redis, 1.0.0"
#:package Compendium.Adapters.Redis@1.0.0
#addin nuget:?package=Compendium.Adapters.Redis&version=1.0.0
#tool nuget:?package=Compendium.Adapters.Redis&version=1.0.0
compendium-adapter-redis
Redis adapter for the Compendium event-sourcing framework. Distributed idempotency store + projection checkpoint store backed by StackExchange.Redis.
Extracted from sassy-solutions/compendium per ADR-0006 (multi-repo adapter split). Built from template-compendium-adapter-dotnet.
What's in this package
| Component | Implements | Purpose |
|---|---|---|
RedisIdempotencyStore |
IIdempotencyStore |
TTL-bound key/value with SET NX semantics for at-most-once command processing |
RedisProjectionCheckpointStore |
IProjectionCheckpointStore |
Distributed (projection, aggregate) → position checkpoint |
Install
dotnet add package Compendium.Adapters.Redis
services.AddRedisIdempotency(builder.Configuration.GetSection("Redis"));
See docs/README.md for full configuration (connection string, key prefix, TTL defaults).
Versioning
This package continues the version sequence of Compendium.Adapters.Redis originally published from the framework monorepo (last framework-published version: 1.0.0-preview.8). The first release from this repo is v1.0.0-preview.9. Versions are driven by git tags via MinVer — see docs/RELEASE.md.
Repository conventions
| Aspect | Choice |
|---|---|
| Target | .NET 9, C# 13 |
| Driver | StackExchange.Redis 2.9.x |
| Test framework | xUnit 2.9.3 + FluentAssertions 6.12.1 + NSubstitute 5.1.0 |
| Integration tests | Testcontainers 4.11.0 (Docker required) |
| Result pattern | Result<T> from Compendium.Core |
Build & test locally
# Unit tests — no Docker.
dotnet test --filter "FullyQualifiedName!~IntegrationTests"
# Integration tests — Docker spins up Redis via TestContainers.
dotnet test --filter "FullyQualifiedName~IntegrationTests"
Integration tests cover Redis-specific semantics: TTL expiration timing, SET NX race-condition behaviour, key-prefix isolation, connection-pool concurrency.
License
MIT — Copyright © 2026 Sassy Solutions.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- Compendium.Abstractions (>= 1.0.0)
- Compendium.Application (>= 1.0.0)
- Compendium.Core (>= 1.0.0)
- Compendium.Infrastructure (>= 1.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Options (>= 9.0.0)
- StackExchange.Redis (>= 2.9.32)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 83 | 5/14/2026 |
| 1.0.0-preview.9 | 389 | 5/14/2026 |
| 1.0.0-preview.8 | 844 | 5/2/2026 |
| 1.0.0-preview.7 | 47 | 5/2/2026 |
| 1.0.0-preview.6 | 80 | 5/2/2026 |
| 1.0.0-preview.5 | 77 | 4/30/2026 |
| 1.0.0-preview.4 | 165 | 4/26/2026 |
| 1.0.0-preview.3 | 56 | 4/26/2026 |
| 1.0.0-preview.2 | 55 | 4/25/2026 |
| 1.0.0-preview.1 | 145 | 4/24/2026 |