Releases: valkey-io/valkey-swift
Releases · valkey-io/valkey-swift
v0.4.0
Breaking changes
- Add protocol requirement 
ValkeyClientProtocol.execute(_:). #235 - Add subscribe functions to 
ValkeyClientProtocolalong with requirementValkeyClientProtocol.subscribe(command:isolation:process:). #237 - Remove 
Array.decode(as:). - Add custom 
Responsetypes forSCAN,HSCAN,ZSCAN,BLPOP,BRPOP. #244 from @natanrolnik , #247 - Add custom 
Responsetypes for script and function commands. #216 - Rewrite transaction code to make it easier to share among clients and add to 
ValkeyClient,ValkeyClusterClientand add protocol requirementValkeyClientProtocol.transaction(_:). #232, #249 
Minor release changes
- Throw 
ValkeyDecodeErrorwhen decoding RESPToken's instead ofRESPParsingError. #233 - Add 
RESPToken.Array.decodeAsKeyValuePairs(as:). 
Patch release changes
- Add upcoming feature 
ExistentialAnyand fix issues: #240 - Add upcoming feature 
MemberImportVisibilityand fix issues. #241 - Re-organize pipeline execute to share common functionality. #239
 - Add associated type 
NodeDescriptionto protocolValkeyNodeConnectionPoolFactory. #230 - Fix compiler crash on macOS open source toolchains. #251 from @NeedleInAJayStack
 
Documentation changes
- Fix minor typo in README. #242 from @natanrolnik
 - Add article on decoding 
RESPTokens to docc documentation. #245 
v0.3.0
Minor release changes
- Add support for distributed tracing. #176 from @slashmo
 - Cluster client: Add pipelining support. #218, #226
 - Cluster client: Add subscription support that uses all primary nodes. #219
 - Cluster client: Retry commands with exponential backoff when receiving a 
TRYAGAINerror. #215 - Make 
ValkeyClusterErrorpublic and convert tostruct. #220 - Add pipeline function that takes an array of existential 
ValkeyCommand. #222 - Conform 
RESPToken.ValuetoCustomDebugStringConvertible. #217 - Remove public symbols 
ValkeyNodeClientandByteBuffer.writeRESP3Token. #228 
Patch release changes
- Remove 
hostnameandipfromValkeyNodeDescription. #229 - Reset all 
ValkeySubscriptionsmembers on close 
Other changes
- Add Swift 6.2 to CI
 
v0.2.0
Major release changes
- Add support Valkey v9 command changes, including hash expiration values and DELIFEQ. #187
 
Minor release changes
- Add static name to ValkeyCommand. #186 from @slashmo
 - Add Subscription connection manager. #194
 - Add ValkeyClient.subscribe functions that use global subscription connection. #195
 - Remove platform requirement from Package.swift. #198, #202
 - Fix LMOVE empty response bug. #185 from @aim2120
 - Add custom BLMPOP response, removed custom SPOP response. #205
 - Fixed error when compiling for iOS. #211 from @zunda-pixel
 - ValkeyClusterClient TLS requirement is defined by the client configuration not individual nodes. #212
 - Throw error if cluster command keys don't all come from the same hash slot. #209
 - Add support for ASK errors in the cluster client. #199
 
Patch release changes
- Break out running clients code from ValkeyClusterClientStateMachine. #178
 - Add ability to ValkeyClient to run other workloads than the connection manager. #174
 - Move SETINFO to inside ChannelHandler, so they can be pipelined with HELLO. #172
 - Remove half closure from client. #188
 - Don't allow the SUBSCRIBE command to be cancelled. #214
 
Other changes
v0.1.0
Initial release of valkey-swift the Swift client for Valkey. The client includes support for the following
- All Valkey commands are available (string, list, set, sorted set, hash, stream, hyperloglog, geo-spatial etc)
 - Pipelining of commands in batches to avoid waiting for round trip of each response
 - Concurrent access to a single connection
 - Transactions
 - Subscriptions using AsyncSequences
 - Valkey Clusters