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
map
extension onEventLoopFuture
is 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
logger
is no longer a requirement for theRedisClient
protocol !130- Consequently, it is no longer publicly accessible on
RedisConnection
- Consequently, it is no longer publicly accessible on
RedisClient.logging(to:)
now returns aRedisClient
existential 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.close
now optionally accepts anEventLoopPromise
to 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.id
is now public !130- The
activate
,close
, andupdateConnectionAddresses
methods onRedisConnectionPool
now optionally accept aLogger
instance to log with !130 RedisLogging
is 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
RedisConnection
andRedisConnectionPool
are 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