Skip to content

Releases: fppt/jedis-mock

1.1.2

06 Jul 10:22
Compare
Choose a tag to compare

🐞 Bugfix

  • #480 Non-integer scores in zset get rounded to integer in zrange withscores
  • Thread leak if a large number of RedisServer instances is being created and stopped.

πŸš€ Enhancement

  • #475 RedisServer now has isRunning() method which allows one to check if the server is running from another thread.

πŸ’Ό Maintenance

  • Dependencies updates

Thanks @penev-ff and @newacct for reporting issues and @Alex286756 for providing the quick solution

1.1.1

24 Apr 08:34
Compare
Choose a tag to compare

🐞 Bugfixes

Streams

  • #452 XADD does not unblock XREAD with BLOCK > 0

Transactions

  • FLUSHALL must be queued inside MULTI-EXEC transaction
  • FLUSHALL must notify all the WAIT-monitored keys
  • MULTI and WAIT inside transaction should return errors but not discard the transaction
  • In case there are errors when collecting the transaction queue, the whole transaction is not executed

πŸ’Ό Maintenance

  • Code refactoring
  • Dependencies updates

Thanks @filipezlopez for reporting the bug and @1BAH for providing the fix and refactorings

1.1.0

20 Jan 22:43
Compare
Choose a tag to compare

πŸš€ Streams support

Starting from version 1.1.0, JedisMock partially supports stream operations: a feature requested years ago, in particular in tickets #134 and #138.

New commands:

  • XADD
  • XDEL
  • XLEN
  • XRANGE
  • XREAD
  • XREVRANGE
  • XTRIM

🐞 Bug fixes

  • Negative TTL values in commands SETEX, PSETEX, SET should produce an error (instead of setting expiration time in the past).
  • Command submission inside MULTI...EXEC transactions should return QUEUED instead of OK.

πŸ’Ό Maintenance

Dependencies are updated

Thanks to @1BAH for development of streams functionality for Jedis-Mock!

1.0.13

17 Dec 01:06
Compare
Choose a tag to compare

πŸš€ New commands supported

Sorted Set operations

  • ZDIFF
  • ZDIFFSTORE
  • ZINCRBY
  • ZINTER
  • ZINTERCARD
  • ZINTERSTORE
  • ZLEXCOUNT
  • ZMPOP
  • ZMSCORE
  • ZPOPMAX
  • ZPOPMIN
  • ZRANGESTORE
  • ZRANK
  • ZREMRANGEBYLEX
  • ZREMRANGEBYRANK
  • ZREVRANK
  • ZSCAN
  • ZUNION
  • ZUNIONSTORE
  • BZMPOP
  • BZPOPMAX
  • BZPOPMIN

Thanks @Alex286756 for your contribution!

πŸ§ͺ Testing

  • Enabled native tests for Sorted Sets operations
  • All the tests now use AssertJ

πŸ’Ό Maintenance

  • Added support for Lettuce 6.3.0
  • Updated dependencies

1.0.12

11 Nov 23:11
Compare
Choose a tag to compare

πŸš€ New features

  • #374 SMISMEMBER support

🐞 Bug fixes

  • #360 Redisson lock does not work with Jedis-mock
  • #371 HDEL without fields behaves differently to Redis

πŸ’Ό Maintenance

  • Reference Redis version is upgraded to 7.2, the reference list of commands now reflects version 7.2
  • Dependencies updated

πŸ™ Acklnowledgements

1.0.11

21 Oct 19:16
Compare
Choose a tag to compare

πŸš€ New features

🐞 Bugfixes

  • #354 Unable to put data into Redis hash with Redisson client

1.0.10

11 Aug 17:07
Compare
Choose a tag to compare

πŸš€ New feature

  • Support cluster mode emulation: mocking a single node holding all the hash slots (0-16383) so that common connectivity libraries can successfully connect and work. This feature was requested in #82, #133, and #142.

1.0.9

25 May 22:24
Compare
Choose a tag to compare

This is a bugfix release. Thanks to @newacct for reporting the bugs

🐞 Bugfixes

#330 Some operations fail after multiple EXPIREs
#331 SRANDMEMBER and SPOP with count on non-existent set should return an empty array instead of null reply

1.0.8

21 May 22:59
Compare
Choose a tag to compare

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 for Z(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

1.0.7

08 Mar 18:26
Compare
Choose a tag to compare

πŸš€ New commands supported

🐞 Bug fixes

  • MGET should return null for non-string keys (instead of an error)

πŸ§ͺ Infrastructure

  • Native tests for INCRBY / INCRBYFLOAT are now being executed

πŸ’Ό Maintenance

  • Dependencies are updated