Skip to content

Lasso 0.11.0

Pre-release
Pre-release

Choose a tag to compare

@jsmarble jsmarble released this 12 Aug 02:06
· 4 commits to main since this release
5d3b055

Lasso 0.11.0 improves Redis connection ownership, dependency-injection reliability, configuration validation, and cross-host key consistency. It also modernizes the repository’s tests, demo, CI, and dependencies while retaining broad consumer compatibility through netstandard2.0.

Highlights

  • Preserve caller ownership of supplied IConnectionMultiplexer instances.
  • Dispose only Redis connections created internally by Lasso.
  • Generate built-in daily, hourly, and monthly Redis keys using invariant culture.
  • Fix parameterless AddDefaultLasso().
  • Validate Redis connection configuration at application startup.
  • Detect missing or conflicting expiration strategies with actionable errors.
  • Use configured ILogger<RedisUsageManager> instances.
  • Repair and CI-build the demo and README examples.
  • Upgrade tests, demo, and CI to .NET 10.
  • Keep both NuGet libraries targeting netstandard2.0, including compatibility with .NET 8 consumers.
  • Upgrade dependencies, including StackExchange.Redis 3.1.13 and Microsoft.Extensions 10.0.11.

Behavioral changes

  • Invalid Redis configuration now fails earlier with an OptionsValidationException.
  • Registering both fixed and relative expiration strategies now produces an explicit configuration error.
  • Disposing RedisUsageManager no longer closes a caller-supplied shared Redis connection.
  • Built-in Redis key periods are stable across machines using different cultures and calendars.

Compatibility

Component Target
Lasso netstandard2.0
Lasso.Extensions.DependencyInjection netstandard2.0
Tests and demo net10.0

A packed package was successfully consumed by a .NET 8 application.

Dependency note

StackExchange.Redis was upgraded from 2.6.122 to 3.1.13. Applications with direct StackExchange.Redis dependencies should verify that their dependency constraints permit version 3.x.

Verification

  • 33 tests passed against Redis.
  • Solution and demo built with zero warnings.
  • Both release packages were packed successfully.
  • A .NET 8 consumer built successfully against the packed DI package.
  • No known dependency vulnerabilities were reported by the configured NuGet feed.