Releases: coleifer/walrus
0.9.2
0.9.1
0.9.0
- Backwards incompatible change: redis-py changed the signature of the
xpending_range
function. This is resolved in walrus 0.9.0. - Add support for
autoclaim()
to theConsumerGroupStream
class. - Minor changes to the stop-word handling in
autocomplete
module.
0.8.2
- Use
HSET
instead ofHMSET
. - Add a
search_items()
method to the full-text index which returns a 2-tuple of(key, doc)
. - Add a timeout parameter to
bmove_tail
andbrpoplpush
wrappers. - Allow disabling lua script-loading for faster initialization (for applications that do not intend to utilize these features).
0.8.1
- Fix missing parameter in error message, #105.
- Remove redundant call to
delete()
when using Modelcreate()
API. - Fix TTL units and lock event wait timeout handling.
- Adds
Hash.setnx()
method to the hash container. - Do not double-decode strings when user has enabled decode_responses, #121.
- Fix mapping of types in
get_key()
method to return the proper container type, #120.
0.8.0
- Adds efficient bulk get, set and delete methods to the
Cache
class. - Fixes
repr
issues with some of the container types. - Fixed an inefficiency in the implementation of the
Graph
storage that cuts the amount of memory needed in half. - Fixed issues with unicode handling in the full-text search implementation.
0.7.0
Depends on redis-py 3.0 or newer.
There are a number of backwards-incompatible changes in redis-py. Because
walrus provides high-level abstractions for the Redis data-types/commands, your
walrus code should work with little or no modifications. Refer to the list of changes
for more information.
redis-py added support for stream
commands as well as zpop/bzpop. As a result, walrus no longer contains separate
implementations for these commands. For the majority of cases the low-level
method signatures and return values are unchanged, notably, the XREADGROUP
return value is slightly different. The timeout
parameter, where it was
accepted, has been renamed to block
for greater compatibility with redis-py.
Prior to 0.7.0, you would read from a consumer-group (which might contain one
or more streams) and receive a dict
keyed by the stream, whose value was a
list of (message_id, data)
2-tuples. Going forward, the return value will be
a list of [stream_name, [(message_id, data), ...]]
. To retain the
functionality of walrus prior-to 0.7.0, just wrap the return value in a call to
the dict
constructor: ret = dict(consumer_group.read(count=1))
.
- Added BloomFilter
container type, which supportsadd()
andcontains()
. - Added a high-level BitField
container type.