1.0.8
This huge release is a result of joint work of @TheCrashDown, @staketd and @Rheamer. Also big thanks for @newacct for reporting the bugs
π New commands
Lua Scripting
(πΎ This is a long awaited functionality, requested in issues #12, #96, #100 and #56. See readme file for usage example and current limitations.)
Lists
Sets
π§ͺ Native tests
LIST native tests
π’ Nearly all native LIST tests are being succesfully run on CI, except for following scenarios
- π‘ Linked BRPOPLPUSH
- π‘ Circular BRPOPLPUSH
- π‘ BRPOPLPUSH does not affect WATCH while still blocked
- π‘ PUSH resulting from BRPOPLPUSH affect WATCH
SET native tests
π’ All the SET native tests are now being successfully run on CI
π Bug fixes
- #310
HSET
doesn't work with value longer than 1000 characters (degradation since 1.0.6) - #311
ZRANGEBYSCORE
negative count doesn't work - #312 Sets, Zsets and Lists exist even after all elements removed
LIMIT
parameter doesn't work forZ(REV)RANGEBYLEX
SPOP
doesn't support a parameter with a number of elements to return- Zero must mean indefinite wait in list blocking operations
- Not checking for target type in
RPOPLPUSH
. JedisMock could pop element and not push it into target, thus losing element - Throttling thread in RedisClient when client has closed connection.
- handle negative timeout
- handle transaction mode in blocking operations
- correctly check for types in
BRPOP
,BLPOP
- check for key existence in
LSET
- Fix
LRANGE
end parameter out of negative range case - Fix not handling wrong direction name in
LINSERT
RENAME
must notify blocked keys- List pop operations missing type validation
- List pop operations not handling watched keys
πΌ Maintenance
Dependencies updated