Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<!-- primary library -->
<PackageVersion Include="NetTopologySuite" Version="2.6.0" />
<PackageVersion Include="System.Text.Json" Version="10.0.10" />
<PackageVersion Include="StackExchange.Redis" Version="3.0.25" />
<PackageVersion Include="StackExchange.Redis" Version="3.1.0" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep the public StackExchange.Redis floor at 3.0.x

This central version is consumed by src/NRedisStack/NRedisStack.csproj, so packages built from the library now require StackExchange.Redis >= 3.1.0 instead of keeping the documented 3.0.x compatibility floor. The retry-category code explicitly avoids referencing the 3.1.0-only enum names so older 3.0.x consumers still work (src/NRedisStack/RedisStackCommands/CommandCategories.cs:11-13), and the tests already use VersionOverride="3.1.0" specifically to check those names while staying ahead of the library floor (tests/NRedisStack.Tests/NRedisStack.Tests.csproj:39-42). Consumers that remain on StackExchange.Redis 3.0.x therefore lose compatibility without a code need for the library itself to raise the floor.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Avoid casting retry-wrapped async databases to IDatabase

With StackExchange.Redis 3.1.0, callers can pass a retry-wrapped database from WithRetry() to NRedisStack's async command classes because it is an IDatabaseAsync, but that wrapper is async-only and does not implement IDatabase. Every async module call routes through Auxiliary.ExecuteAsync, which unconditionally casts ((IDatabase)db).SetInfoInPipeline() (src/NRedisStack/Auxiliary.cs:75-77), so new JsonCommandsAsync(db.WithRetry()).GetAsync(...) throws InvalidCastException before the command is sent and the new retry categorization is unusable for async NRedisStack commands.

Useful? React with 👍 / 👎.

<!-- tests, etc -->
<PackageVersion Include="BouncyCastle.Cryptography" Version="2.7.0" />
<PackageVersion Include="coverlet.collector" Version="10.0.1" />
Expand Down
Loading