Skip to content

Releases: valkey-io/valkey-go

1.0.55

23 Feb 01:03
acef0cb
Compare
Choose a tag to compare

Changes

  • perf: make new connections concurrently in connection pools, improving performance of DisableAutoPipelining, Dedicated, and blocking commands
  • feat: add ToPipe to command builders, allowing specific commands to be still auto pipelined when DisableAutoPipelining is true
  • feat: add FunctionStats to valkeycompat
  • feat: add LCS to valkeycompat
  • feat: add SlowLogGet to valkeycompat
  • feat: add ACLList to valkeycompat
  • feat: add ACLCatArgs to valkeycompat
  • feat: add ClusterLinks to valkeycompat
  • feat: add ACLCat to valkeycompat
  • feat: add ACLDelUser to valkeycompat
  • feat: add ACLLogReset to valkeycompat
  • feat: add ACLSetUser to valkeycompat
  • feat: add ACLLog to valkeycompat
  • fix: wrong limit and offset of FTAggregateWithArgs, FTSearchWithArgs in valkeycompat

Contributors

We'd like to thank all the contributors who worked on this release!

@Brijeshthummar02, @CheyuWu, @Rancho-7, @SoulPancake, @arbha1erao, @astorig, @blueBlue0102, @hcc429, @kendriyavid, @liuzhaohui, @rueian, @tarunprabhu11, @unknowntpo and @win5923

1.0.54

03 Feb 00:30
951f729
Compare
Choose a tag to compare

Changes

  • feat: update go version to 1.22
  • feat: add IFEQ option to SET command for Valkey 8.1
  • feat: support availability zone (AZ) affinity routing for Valkey 8.1
  • feat: support valkeyaside on Redis < 7 with the new UseLuaLock option
  • perf: reduce allocations in valkeyprob operations
  • perf: better field alignments

Contributors

We'd like to thank all the contributors who worked on this release!

@SoulPancake, @boramalper, @guibes, @nesty92, @proost, @px86 and @rueian

1.0.53

13 Jan 18:48
92107ce
Compare
Choose a tag to compare

Changes

  • feat: Add typed cache-aside client to valkeyaside.
  • feat: Add sliding window bloom filter to valkeyprob.
  • feat: Parse skip_verify param in the ParseURL.
  • feat: Support valkey URL scheme in the ParseURL.
  • fix: Ignore LOADING and BUSY errors to prevent panic with SUNSUBSCRIBE.
  • fix: Prevent acquiring broken connections from connection pools.

Contributors

We'd like to thank all the contributors who worked on this release!

@HurSungYun, @dntam00, @jouir, @korECM, @nesty92 and @rueian

1.0.52

25 Dec 11:54
784282a
Compare
Choose a tag to compare

Changes

  • feat: add ModuleLoadex, SlaveOf, ClusterMyShardID to valkeycompat (#708)
  • feat: add BitFieldRO, HScanNoValues, and ClientInfo to valkeycompat (#707)
  • feat: add CacheMarshal and CacheUnmarshalView for third party cache libraries (#693)
  • feat: add ReplicaSelector for selecting which replica to send commands (#692)
  • feat: retry DoCache and DoMultiCache on MOVED / ASK redirections (#701) (#704)
  • feat: retry single slot DoMulti on MOVED / ASK redirections (#697) (#709)
  • perf: reduce goroutines used by DoMulti and DoMultiCache in a cluster client (#699)
  • fix: hide InitAddress from client.Nodes() if they doesn't show up in the cluster topology (#687)
  • fix: immature recycling of the intermediate structs when doing cluster DoMulti on network errors (#706)
  • fix: panic on cluster redirection to a node with a stale role (#695)
  • fix: protocol out of sync when mixing sunsubscribe requests and slot migrations (#691)
  • fix: avoid picking unhealthy replicas (#689)

Contributors

We'd like to thank all the contributors who worked on this release!

@proost, @rueian, @unknowntpo and @wyxloading

1.0.51

02 Dec 20:42
d7c941f
Compare
Choose a tag to compare

Changes

  • feat: add RateLimitOption to valkeylimiter (#681)
  • feat: allow setting negative values to disable keepalive and write timeout (#682)
  • feat: add options for removing idle connections in connection pools (#674)

Contributors

We'd like to thank all the contributors who worked on this release!

@altanozlu, @rueian and @veirfuna

1.0.50

26 Nov 03:47
4266213
Compare
Choose a tag to compare

Changes

  • feat: add FtSearch and related functions to valkeycompat (#676)
  • feat: add valkeylimiter module for Distributed Rate Limiting (#661)
  • fix: convert os.ErrDeadlineExceeded to context.DeadlineExceeded only when ConnWriteTimeout is shorter (#672)
  • fix: register client tracking again after receiving invalidations in valkeylock (#669)
  • fix: close connections that are still blocked while recycling them to pools, instead of waiting for unsubscribe command responses (#667)
  • fix: do not cap timeouts when context has a deadline on a blocking call (#666)
  • chore: use dpool for blocking commands to be able to respect context deadlines (#668)

Contributors

We'd like to thank all the contributors who worked on this release!

@nesty92, @rueian, @unknowntpo and @zeiler

1.0.49

08 Nov 19:45
99e4795
Compare
Choose a tag to compare

Fixes for refreshing cluster topology

We strongly encourage everyone to upgrade to version 1.0.49 to address the issues related to refreshing the cluster topology.

Changes

  • fix: refresh the cluster topology by using the old CLUSTER SLOTS instead of CLUSTER SHARDS for clusters with version less than 8. This is due to a server bug that returns empty slot information after the first failover. (#664)
  • fix: do not pick failed cluster nodes from the CLUSTER SHARDS response. (#660)
  • fix: do not block client.Do for 1 second of refreshing threshold in the cases of network error. (#659)
  • feat: auto retries on LOADING errors. (#657)
  • feat: support multiple options in FT.ALTER. (#655)
  • feat: add FT.ALTER in OM JSON and Hash repo. (#645)
  • feat: support Go 1.23 iterators for the ZADD command. (#652)

Contributors

We'd like to thank all the contributors who worked on this release!

@imvtsl, @justinmir, @mingdaoy, @nesty92 and @rueian

1.0.48

21 Oct 22:52
510e4d5
Compare
Choose a tag to compare

Changes

  • feat: add DisableTCPNoDelay option for better p99 latencies in certain network conditions such as GCP without gVNIC. (#650)
  • feat: add DisableAutoPipelining option to serve requests from connection pools for better latencies by avoiding pipelining overhead and HoL blocking. (#646)
  • feat: Retries are now back-offed and jittered with a 1-second cap by default. This can be customized by the RetryDelay option. (#643)

Contributors

We'd like to thank all the contributors who worked on this release!

@proost and @rueian

1.0.47

01 Oct 04:30
af4007f
Compare
Choose a tag to compare

Changes

  • feat: add ShardsRefreshInterval option for refreshing cluster shards periodically (#638)
  • fix: panic on cluster redirection to the same host (#641)

Contributors

We'd like to thank all the contributors who worked on this release!

@proost and @rueian

1.0.46

17 Sep 02:50
4714550
Compare
Choose a tag to compare

Changes

  • perf: use dedicated connections for DoMulti() with 2000+ commands by default (#631)
  • feat: add SCRIPT SHOW, CLIENT CAPA, and CLUSTER SLOT-STATS commands (#628)
  • feat: add option to disable making CLIENT SETINFO command on initialization (#622)
  • feat: support iter.Seq2 for *FieldValue command builders (#625)
  • fix: panic on rueidiscompat.SSubscribe due to unnecessary PING (#636)

Contributors

We'd like to thank all the contributors who worked on this release!

@rahulgkatre, @rueian and @tamayika