Skip to content

Releases: jsmarble/lasso

Lasso 0.11.0

Lasso 0.11.0 Pre-release
Pre-release

Choose a tag to compare

@jsmarble jsmarble released this 12 Aug 02:06
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.

Release 0.10.0

Release 0.10.0 Pre-release
Pre-release

Choose a tag to compare

@jsmarble jsmarble released this 31 Aug 16:14

As Lasso matures in approach and implementation, we have introduced some breaking changes in this release.

We have adjusted RedisUsageManager parameters and changed how connections are managed. Much inspiration was taken from the Microsoft RedisCache class on how options and connections work.

This release also more closely aligns with the .NET patterns for options and dependency injection, including a new package called Lasso.Extensions.DependencyInjection that assists in adding Lasso to .NET startup classes.

Find the latest packages on nuget.org.
https://www.nuget.org/packages/Lasso/0.10.0
https://www.nuget.org/packages/Lasso.Extensions.DependencyInjection/0.10.0