README.md in redis-client-0.5.1 vs README.md in redis-client-0.6.0

- old
+ new

@@ -79,10 +79,11 @@ - `timeout`: The general timeout in seconds, default to `1.0`. - `connect_timeout`: The connection timeout, takes precedence over the general timeout when connecting to the server. - `read_timeout`: The read timeout, takes precedence over the general timeout when reading responses from the server. - `write_timeout`: The write timeout, takes precedence over the general timeout when sending commands to the server. - `reconnect_attempts`: Specify how many times the client should retry to send queries. Defaults to `0`. Makes sure to read the [reconnection section](#reconnection) before enabling it. +- `protocol:` The version of the RESP protocol to use. Default to `3`. ### Sentinel support The client is able to perform automatic failover by using [Redis Sentinel](https://redis.io/docs/manual/sentinel/). @@ -205,18 +206,28 @@ redis.call("EXISTS", "counter") # => 1 redis.call("EXISTS", "counter") { |c| c > 0 } # => true ``` +### `*_v` methods + +In some it's more convenient to pass commands as arrays, for that `_v` versions of `call` methods are available. + +```ruby +redis.call_v(["MGET"] + keys) +redis.blocking_call_v(1, ["MGET"] + keys) +redis.call_once_v(1, ["MGET"] + keys) +``` + ### Blocking commands For blocking commands such as `BRPOP`, a custom timeout duration can be passed as first argument of the `#blocking_call` method: ``` redis.blocking_call(timeout, "BRPOP", "key", 0) ``` -If `timeout` is reached, `#blocking_call` returns `nil`. +If `timeout` is reached, `#blocking_call` raises `RedisClient::ReadTimeoutError` and doesn't retry regardless of the `reconnect_attempts` configuration. `timeout` is expressed in seconds, you can pass `false` or `0` to mean no timeout. ### Scan commands