------------------------------------------------------------------- Mon Nov 4 17:22:25 UTC 2024 - Dan Čermák - # 5.3.0 - Fix the return type of `hgetall` when used inside a `multi` transaction which is itself inside a pipeline. ------------------------------------------------------------------- Fri Jun 21 10:33:04 UTC 2024 - Dan Čermák - # 5.2.0 - Now require Ruby 2.6 because `redis-client` does. - Eagerly close subscribed connection when using `subscribe_with_timeout`. See #1259. - Add `exception` flag in `pipelined` allowing failed commands to be returned in the result array when set to `false`. # 5.1.0 - `multi` now accept a `watch` keyword argument like `redis-client`. See #1236. - `bitcount` and `bitpos` now accept a `scale:` argument on Redis 7+. See #1242 - Added `expiretime` and `pexpiretime`. See #1248. ------------------------------------------------------------------- Tue Nov 14 15:30:06 UTC 2023 - Dan Čermák - New upstream release 5.0.8, see bundled CHANGELOG.md ------------------------------------------------------------------- Mon Oct 10 13:17:48 UTC 2022 - Stephan Kulow updated to version 5.0.5 see installed CHANGELOG.md # 5.0.5 - Fix automatic disconnection when the process was forked. See #1157. # 5.0.4 - Cast `ttl` argument to integer in `expire`, `setex` and a few others. # 5.0.3 - Add `OutOfMemoryError` as a subclass of `CommandError` # 5.0.2 - Fix `Redis#close` to properly reset the fork protection check. # 5.0.1 - Added a fake `Redis::Connections.drivers` method to be compatible with older sidekiq versions. # 5.0.0 - Eagerly and strictly cast Integer and Float parameters. - Allow to call `subscribe`, `unsubscribe`, `psubscribe` and `punsubscribe` from a subscribed client. See #1131. - Use `MD5` for hashing server nodes in `Redis::Distributed`. This should improve keys distribution among servers. See #1089. - Changed `sadd` and `srem` to now always return an Integer. - Added `sadd?` and `srem?` which always return a Boolean. - Added support for `IDLE` paramter in `xpending`. - Cluster support has been moved to a `redis-clustering` companion gem. - `select` no longer record the current database. If the client has to reconnect after `select` was used, it will reconnect to the original database. - Better support Float timeout in blocking commands. See #977. - Removed positional timeout in blocking commands (`BLPOP`, etc). Timeout now must be passed as an option: `r.blpop("key", timeout: 2.5)` - Removed `logger` option. - Removed `reconnect_delay_max` and `reconnect_delay`, you can pass precise sleep durations to `reconnect_attempts` instead. - Require Ruby 2.5+. - Removed the deprecated `queue` and `commit` methods. Use `pipelined` instead. - Removed the deprecated `Redis::Future#==`. - Removed the deprecated `pipelined` and `multi` signature. Commands now MUST be called on the block argument, not the original redis instance. - Removed `Redis.current`. You shouldn't assume there is a single global Redis connection, use a connection pool instead, and libaries using Redis should accept a Redis instance (or connection pool) as a config. E.g. `MyLibrary.redis = Redis.new(...)`. - Removed the `synchrony` driver. - Removed `Redis.exists_returns_integer`, it's now always enabled. ------------------------------------------------------------------- Fri Aug 26 16:37:47 UTC 2022 - Manuel Schnitzer - updated to version 4.8.0 * Introduce `sadd?` and `srem?` as boolean returning versions of `sadd` and `srem`. * Deprecate `sadd` and `srem` returning a boolean when called with a single argument. To enable the redis 5.0 behavior you can set `Redis.sadd_returns_boolean = true`. * Deprecate passing `timeout` as a positional argument in blocking commands (`brpop`, `blop`, etc). ------------------------------------------------------------------- Fri Jul 8 08:43:29 UTC 2022 - Manuel Schnitzer - updated to version 4.7.1 * Gracefully handle OpenSSL 3.0 EOF Errors (`OpenSSL::SSL::SSLError: SSL_read: unexpected eof while reading`). See #1106 This happens frequently on heroku-22. # 4.7.0 * Support single endpoint architecture with SSL/TLS in cluster mode. See #1086. * `zrem` and `zadd` act as noop when provided an empty list of keys. See #1097. * Support IPv6 URLs. * Add `Redis#with` for better compatibility with `connection_pool` usage. * Fix the block form of `multi` called inside `pipelined`. Previously the `MUTLI/EXEC` wouldn't be sent. See #1073. ------------------------------------------------------------------- Tue Feb 15 07:38:45 UTC 2022 - Stephan Kulow updated to version 4.6.0 see installed CHANGELOG.md # 4.6.0 * Deprecate `Redis.current`. * Deprecate calling commands on `Redis` inside `Redis#pipelined`. See #1059. ```ruby redis.pipelined do redis.get("key") end ``` should be replaced by: ```ruby redis.pipelined do |pipeline| pipeline.get("key") end ``` * Deprecate calling commands on `Redis` inside `Redis#multi`. See #1059. ```ruby redis.multi do redis.get("key") end ``` should be replaced by: ```ruby redis.multi do |transaction| transaction.get("key") end ``` * Deprecate `Redis#queue` and `Redis#commit`. See #1059. * Fix `zpopmax` and `zpopmin` when called inside a pipeline. See #1055. * `Redis#synchronize` is now private like it should always have been. * Add `Redis.silence_deprecations=` to turn off deprecation warnings. If you don't wish to see warnings yet, you can set `Redis.silence_deprecations = false`. It is however heavily recommended to fix them instead when possible. * Add `Redis.raise_deprecations=` to turn deprecation warnings into errors. This makes it easier to identitify the source of deprecated APIs usage. It is recommended to set `Redis.raise_deprecations = true` in development and test environments. * Add new options to ZRANGE. See #1053. * Add ZRANGESTORE command. See #1053. * Add SCAN support for `Redis::Cluster`. See #1049. * Add COPY command. See #1053. See #1048. * Add ZDIFFSTORE command. See #1046. * Add ZDIFF command. See #1044. * Add ZUNION command. See #1042. * Add HRANDFIELD command. See #1040. ------------------------------------------------------------------- Sat Dec 25 21:56:25 UTC 2021 - Manuel Schnitzer - updated to version 4.5.1 # 4.5.1 * Restore the accidential auth behavior of redis-rb 4.3.0 with a warning. If provided with the `default` user's password, but a wrong username, redis-rb will first try to connect as the provided user, but then will fallback to connect as the `default` user with the provided password. This behavior is deprecated and will be removed in Redis 4.6.0. Fix #1038. # 4.5.0 * Handle parts of the command using incompatible encodings. See #1037. * Add GET option to SET command. See #1036. * Add ZRANDMEMBER command. See #1035. * Add LMOVE/BLMOVE commands. See #1034. * Add ZMSCORE command. See #1032. * Add LT/GT options to ZADD. See #1033. * Add SMISMEMBER command. See #1031. * Add EXAT/PXAT options to SET. See #1028. * Add GETDEL/GETEX commands. See #1024. * `Redis#exists` now returns an Integer by default, as warned since 4.2.0. The old behavior can be restored with `Redis.exists_returns_integer = false`. * Fix Redis < 6 detection during connect. See #1025. * Fix fetching command details in Redis cluster when the first node is unhealthy. See #1026. ------------------------------------------------------------------- Wed Aug 25 05:25:46 UTC 2021 - Manuel Schnitzer - updated to version 4.4.0 * Redis cluster: fix cross-slot validation in pipelines. Fix ##1019. * Add support for `XAUTOCLAIM`. See #1018. * Properly issue `READONLY` when reconnecting to replicas. Fix #1017. * Make `del` a noop if passed an empty list of keys. See #998. * Add support for `ZINTER`. See #995. ------------------------------------------------------------------- Thu Jun 24 17:52:50 UTC 2021 - Stephan Kulow updated to version 4.3.1 see installed CHANGELOG.md # 4.3.1 * Fix password authentication against redis server 5 and older. # 4.3.0 * Add the TYPE argument to scan and scan_each. See #985. * Support AUTH command for ACL. See #967. ------------------------------------------------------------------- Fri Dec 11 03:19:50 UTC 2020 - Manuel Schnitzer - updated to version 4.2.5 # 4.2.5 * Optimize the ruby connector write buffering. See #964. # 4.2.4 * Fix bytesize calculations in the ruby connector, and work on a copy of the buffer. Fix #961, #962. # 4.2.3 * Use io/wait instead of IO.select in the ruby connector. See #960. * Use exception free non blocking IOs in the ruby connector. See #926. * Prevent corruption of the client when an interrupt happen during inside a pipeline block. See #945. ------------------------------------------------------------------- Sat Sep 12 12:36:35 UTC 2020 - Manuel Schnitzer - updated to version 4.2.2 # 4.2.2 * Fix `WATCH` support for `Redis::Distributed`. See #941. * Fix handling of empty stream responses. See #905, #929. ------------------------------------------------------------------- Sat Jun 27 18:44:20 UTC 2020 - Manuel Schnitzer - updated to version 4.2.1 # 4.2.1 * Fix `exists?` returning an actual boolean when called with multiple keys. See #918. * Setting `Redis.exists_returns_integer = false` disables warning message about new behaviour. See #920. # 4.2.0 * Convert commands to accept keyword arguments rather than option hashes. This both help catching typos, and reduce needless allocations. * Deprecate the synchrony driver. It will be removed in 5.0 and hopefully maintained as a separate gem. See #915. * Make `Redis#exists` variadic, will return an Integer if called with multiple keys. * Add `Redis#exists?` to get a Boolean if any of the keys exists. * `Redis#exists` when called with a single key will warn that future versions will return an Integer. Set `Redis.exists_returns_integer = true` to opt-in to the new behavior. * Support `keepttl` ooption in `set`. See #913. * Optimized initialization of Redis::Cluster. See #912. * Accept sentinel options even with string key. See #599. * Verify TLS connections by default. See #900. * Make `Redis#hset` variadic. It now returns an integer, not a boolean. See #910. ------------------------------------------------------------------- Thu May 7 21:22:11 UTC 2020 - Stephan Kulow - updated to version 4.1.4 see installed CHANGELOG.md # 4.1.4 * Alias `Redis#disconnect` as `#close`. See #901. * Handle clusters with multiple slot ranges. See #894. * Fix password authentication to a redis cluster. See #889. * Handle recursive MOVED responses. See #882. * Increase buffer size in the ruby connector. See #880. * Fix thread safety of `Redis.queue`. See #878. * Deprecate `Redis::Future#==` as it's likely to be a mistake. See #876. ------------------------------------------------------------------- Thu Dec 26 09:42:51 UTC 2019 - Manuel Schnitzer - updated to version 4.1.3 * Fix the client hanging forever when connecting with SSL to a non-SSL server. See #835. ------------------------------------------------------------------- Fri Jul 19 09:31:47 UTC 2019 - Stephan Kulow - updated to version 4.1.2 see installed CHANGELOG.md # 4.1.2 * Fix the client hanging forever when connecting with SSL to a non-SSL server. See #835. * Fix several authentication problems with sentinel. See #850 and #856. * Explicitly drop Ruby 2.2 support. # 4.1.1 * Fix error handling in multi blocks. See #754. * Fix geoadd to accept arrays like georadius and georadiusbymember. See #841. * Fix georadius command failing when long == lat. See #841. * Fix timeout error in xread block: 0. See #837. * Fix incompatibility issue with redis-objects. See #834. * Properly handle Errno::EADDRNOTAVAIL on connect. * Fix password authentication to sentinel instances. See #813. ------------------------------------------------------------------- Wed Dec 19 07:14:56 UTC 2018 - Stephan Kulow - updated to version 4.1.0 see installed CHANGELOG.md # Unreleased # 4.1.0 * Add Redis Cluster support. See #716. * Add streams support. See #799 and #811. * Add ZPOP* support. See #812. * Fix issues with integer-like objects as BPOP timeout ------------------------------------------------------------------- Thu Nov 22 05:31:29 UTC 2018 - Stephan Kulow - updated to version 4.0.3 see installed CHANGELOG.md # 4.0.3 * Fix raising command error for first command in pipeline. See #788. * Fix the gemspec to stop exposing a `build` executable. See #785. * Add `:reconnect_delay` and `:reconnect_delay_max` options. See #778. ------------------------------------------------------------------- Wed Sep 5 10:38:02 UTC 2018 - coolo@suse.com - updated to version 4.0.2 see installed CHANGELOG.md # 4.0.2 * Added `Redis#unlink`. See #766. * `Redis.new` now accept a custom connector via `:connector`. See #591. * `Redis#multi` no longer perform empty transactions. See #747. * `Redis#hdel` now accepts hash keys as multiple arguments like `#del`. See #755. * Allow to skip SSL verification. See #745. * Add Geo commands: `geoadd`, `geohash`, `georadius`, `georadiusbymember`, `geopos`, `geodist`. See #730. ------------------------------------------------------------------- Wed Oct 11 06:14:08 UTC 2017 - coolo@suse.com - updated to version 4.0.1 see installed CHANGELOG.md ------------------------------------------------------------------- Mon Aug 28 05:36:17 UTC 2017 - coolo@suse.com - updated to version 4.0.0 see installed CHANGELOG.md ------------------------------------------------------------------- Tue Jan 24 05:38:20 UTC 2017 - coolo@suse.com - updated to version 3.3.3 see installed CHANGELOG.md # 3.3.3 * Improved timeout handling after dropping Timeout module. ------------------------------------------------------------------- Fri Nov 18 05:35:59 UTC 2016 - coolo@suse.com - updated to version 3.3.2 see installed CHANGELOG.md # 3.3.2 * Added support for SPOP with COUNT. See #628. * Fixed connection glitches when using SSL. See #644. ------------------------------------------------------------------- Tue Jul 19 04:30:26 UTC 2016 - coolo@suse.com - updated to version 3.3.1 see installed CHANGELOG.md # 3.3.1 * Remove usage of Timeout::timeout, refactor into using low level non-blocking writes. This fixes a memory leak due to Timeout creating threads on each invocation. ------------------------------------------------------------------- Mon Apr 18 04:33:16 UTC 2016 - coolo@suse.com - updated to version 3.3.0 see installed CHANGELOG.md # 3.3.0 * Added support for SSL/TLS. Redis doesn't support SSL natively, so you still need to run a terminating proxy on Redis' side. See #496. * Added `read_timeout` and `write_timeout` options. See #437, #482. * Added support for pub/sub with timeouts. See #329. * Added `Redis#call`, `Redis#queue` and `Redis#commit` as a more minimal API to the client. * Deprecated `Redis#disconnect!` in favor of `Redis#close`. ------------------------------------------------------------------- Tue Nov 17 05:40:20 UTC 2015 - coolo@suse.com - updated to version 3.2.2 see installed CHANGELOG.md # 3.2.2 * Added support for `ZADD` options `NX`, `XX`, `CH`, `INCR`. See #547. * Added support for sentinel commands. See #556. * New `:id` option allows you to identify the client against Redis. See #510. * `Redis::Distributed` will raise when adding two nodes with the same ID. See #354. ------------------------------------------------------------------- Thu Feb 12 07:29:48 UTC 2015 - coolo@suse.com - updated to version 3.2.1 ------------------------------------------------------------------- Tue Feb 10 18:21:37 UTC 2015 - coolo@suse.com - updated to version 3.2.0 ------------------------------------------------------------------- Thu Nov 20 15:35:56 UTC 2014 - tboerger@suse.com - Updated to 3.1.0 - Added debug log sanitization (#428). - Added support for HyperLogLog commands (Redis 2.8.9, #432). - Added support for BITPOS command (Redis 2.9.11, #412). - The client will now automatically reconnect after a fork (#414). - If you want to disable the fork-safety check and prefer to share the connection across child processes, you can now pass the inherit_socket option (#409). - If you want the client to attempt to reconnect more than once, you can now pass the reconnect_attempts option (#347) ------------------------------------------------------------------- Mon Oct 13 18:38:04 UTC 2014 - coolo@suse.com - adapt to new rubygem packaging ------------------------------------------------------------------- Thu Feb 6 18:00:16 UTC 2014 - coolo@suse.com - updated to version 3.0.7 * Added method `Redis#dup` to duplicate a Redis connection. * IPv6 support. ------------------------------------------------------------------- Fri Nov 22 08:40:32 UTC 2013 - coolo@suse.com - updated to version 3.0.6 * Added support for `SCAN` and variants. ------------------------------------------------------------------- Thu Oct 10 14:20:48 UTC 2013 - coolo@suse.com - updated to version 3.0.5 * Fix calling #select from a pipeline (#309). * Added method `Redis#connected?`. * Added support for `MIGRATE` (Redis 2.6). * Support extended SET command (#343, thanks to @benubois). ------------------------------------------------------------------- Thu May 16 10:27:11 UTC 2013 - coolo@suse.com - updated to version 3.0.4 * Ensure #watch without a block returns "OK" (#332). * Make futures identifiable (#330). * Fix an issue preventing STORE in a SORT with multiple GETs (#328). ------------------------------------------------------------------- Wed Mar 20 06:18:15 UTC 2013 - coolo@suse.com - updated to version 3.0.3 * Blocking list commands (`BLPOP`, `BRPOP`, `BRPOPLPUSH`) use a socket timeout equal to the sum of the command's timeout and the Redis client's timeout, instead of disabling socket timeout altogether. * Ruby 2.0 compatibility. * Added support for `DUMP` and `RESTORE` (Redis 2.6). * Added support for `BITCOUNT` and `BITOP` (Redis 2.6). * Call `#to_s` on value argument for `SET`, `SETEX`, `PSETEX`, `GETSET`, `SETNX`, and `SETRANGE`. ------------------------------------------------------------------- Tue Oct 9 11:28:04 UTC 2012 - coolo@suse.com - updated to version 3.0.2 * Unescape CGI escaped password in URL. * Fix test to check availability of `UNIXSocket`. * Fix handling of score = +/- infinity for sorted set commands. * Replace array splats with concatenation where possible. * Raise if `EXEC` returns an error. * Passing a nil value in options hash no longer overwrites the default. * Allow string keys in options hash passed to `Redis.new` or `Redis.connect`. * Fix uncaught error triggering unrelated error (synchrony driver). See f7ffd5f1a628029691084de69e5b46699bb8b96d and #248. ------------------------------------------------------------------- Fri Oct 14 16:03:52 UTC 2011 - fcastelli@suse.com - Add 'Provides' statement ------------------------------------------------------------------- Fri Oct 7 09:02:53 UTC 2011 - fcastelli@suse.com - update to version 2.2.2 ------------------------------------------------------------------- Mon Jun 14 16:03:02 UTC 2010 - mrueckert@suse.de - update to version 2.0.1 ------------------------------------------------------------------- Fri Jun 11 10:00:01 UTC 2010 - mrueckert@suse.de - use rubygems_requires macro ------------------------------------------------------------------- Thu May 13 17:14:21 UTC 2010 - fcastelli@novell.com - packaged version 1.0.7 ------------------------------------------------------------------- Sun Mar 7 22:11:04 UTC 2010 - prusnak@suse.cz - created package