Commit Graph

4 Commits

Author SHA1 Message Date
Christopher Dignam
46ac6bf87f [redis] fix pipeline return types (#4989)
Pipeline is a subclass of Redis, but instead of the commands returning results, they return Pipeline.
2021-02-23 08:28:01 +01:00
Guilhem C
ad2624551b redis: complete echo command stub (redis.client.Redis.echo) (#5033) 2021-02-22 13:18:45 +01:00
Christopher Dignam
93e2806232 [redis] add overload for blpop and brpop timeout (#4998)
0 is the default value for the timeout argument for both blpop and brpop. When the timeout is `0`, the return type is non-nullable. Otherwise the return type is optional.

I tested my change with the following code
```python
from typing import Optional, Tuple
import redis

def test_blpop_timeout(r: redis.Redis) -> None:
    a: Tuple[bytes, bytes] = r.blpop('')
    b: Tuple[bytes, bytes] = r.blpop('',timeout=0)
    c: Optional[Tuple[bytes, bytes]] = r.blpop('', timeout=1)
    d: Optional[Tuple[bytes, bytes]] = r.blpop('', timeout=1.0)

def test_brpop_timeout(r: redis.Redis) -> None:
    a: Tuple[bytes, bytes] = r.brpop('')
    b: Tuple[bytes, bytes] = r.brpop('',timeout=0)
    c: Optional[Tuple[bytes, bytes]] = r.brpop('', timeout=1)
    d: Optional[Tuple[bytes, bytes]] = r.brpop('', timeout=1.0)
```
2021-02-04 20:32:34 -08:00
Ivan Levkivskyi
16ae4c6120 Re-organize directory structure (#4971)
See discussion in #2491

Co-authored-by: Ivan Levkivskyi <ilevkivskyi@dropbox.com>
2021-01-27 12:00:39 +00:00