RediStack 1.0.0 Beta 1
Pre-release
Pre-release
This is the first release of the package in beta state! 🎉
While it is now in beta, the API is considered stable except for 1 notable exception: RedisCommand.
To support PubSub (the last feature for GM 1.0.0), RedisCommand will need to see some breaking changes. Luckily, if you're not a low-system user (NIO level), then this package can be considered 1.0.0 ready.
If you find any bugs, please report them with a GitLab Issue.
API Docs are always available at docs.redistack.info
Major
- The
mapextension onEventLoopFutureis no longer public !125 - Swift 5.0 is no longer supported - Swift 5.1 is now the minimum version required to use this package !131
- This isn't officially documented yet, but RediStack will support strive to support the last 3 Swift versions
loggeris no longer a requirement for theRedisClientprotocol !130- Consequently, it is no longer publicly accessible on
RedisConnection
- Consequently, it is no longer publicly accessible on
RedisClient.logging(to:)now returns aRedisClientexistential that provides logging to the provide instance !130- For more information on this, see the Swift forum discussion: https://forums.swift.org/t/the-context-passing-problem/39162
- Log statements have seen their messaging, log levels, and metadata keys changed across the package !130
- in addition, logs are now generated from more locations - particularly
RedisConnectionPool
- in addition, logs are now generated from more locations - particularly
Minor
RedisConnectionPool.closenow optionally accepts anEventLoopPromiseto fail/succeed when closing a pool (thanks @tanner0101) !126- RediStack has a new module called RedisTypes, which provide a familiar Swift Standard Library API with types that Redis operates on, starting with
RedisSet!133 RedisConnectionPool.idis now public !130- The
activate,close, andupdateConnectionAddressesmethods onRedisConnectionPoolnow optionally accept aLoggerinstance to log with !130 RedisLoggingis a new namespace that exposes the metadata keys and labels used with logging in RediStack so you can consistently refer to them !130- The "prototype" instances of Logger used as defaults by
RedisConnectionandRedisConnectionPoolare now available as well
- The "prototype" instances of Logger used as defaults by
Patch
- Fixed #68 where connections were unexpectedly closing but weren't being handled !127
- Fixed #79 and #74 where user-provided logger context was not thread safe !130