Skip to content

Releases: redis/redis-py

4.5.4

29 Mar 13:23
e1017fd
Compare
Choose a tag to compare

Changes

Upgrade urgency: SECURITY, contains fixes to security issues.

  • (CVE-2023-28859) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases.
  • (CVE-2023-28858) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases.

πŸ› Bug Fixes

  • Fixing cancelled async futures (#2666)
  • Fix: do not use asyncio's timeout lib before 3.11.2 (#2659)
  • Fix UDS in v4.5.2: UnixDomainSocketConnection missing constructor argument (#2630)

🧰 Maintenance

  • Minor fixes for #2666 and enhanced async test (#2673)
  • Fix issue 2660: PytestUnraisableExceptionWarning from asycio client (#2669)
  • Removing accidentally checked in files (#2642)

Contributors

We'd like to thank all the contributors who worked on this release!

@bellini666, @chayim, @dvora-h, @shacharPash and @woutdenolf

4.4.4

29 Mar 13:53
49d9cb7
Compare
Choose a tag to compare

Changes

Upgrade urgency: SECURITY, contains fixes to security issues.

  • (CVE-2023-28859) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases.
  • (CVE-2023-28858) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases.

πŸ› Bug Fixes

  • Fixing cancelled async futures (#2671 )

5.0.0b1

23 Mar 14:47
0db4eba
Compare
Choose a tag to compare
5.0.0b1 Pre-release
Pre-release

Changes

This release includes only support for RESP3, it should be treated as a beta. Please note response types change for those using RESP3 - meaning there breaking changes. Today this includes support for the following:

  • Sync connections
  • RedisCluster connections
  • Async
  • AsyncCluster
  • Single connections both sync and async
  • RedisStack support
  • Pipelines
  • Sentinel

The following are not yet implemented:

  • Pub/Sub
  • Monitor

This release introduces two different ways to enable a RESP3 redis connection, when your redis server supports it.

  1. redis_url has been updated to match the uri specification meaning one can now connect by:
import redis
r = redis.Redis.from_url("redis://localhost:6379?protocol=3")
r.ping()
  1. One can pass protocol=3 into any existing connection object eg:
from redis.asyncio import  Redis
r = Redis(host="localhost", port=6379, protocol=3)
r.ping()

4.5.3

22 Mar 16:06
66a4d6b
Compare
Choose a tag to compare

Changes

Update urgency: HIGH: There is a critical bug that may affect a subset of users. Upgrade!

πŸ› Bug Fixes

4.4.3

22 Mar 16:16
b3c89ac
Compare
Choose a tag to compare

Changes

Update urgency: HIGH: There is a critical bug that may affect a subset of users. Upgrade!

πŸ› Bug Fixes

4.3.6

22 Mar 16:19
7b48b1b
Compare
Choose a tag to compare

Changes

Update urgency: HIGH: There is a critical bug that may affect a subset of users. Upgrade!

πŸ› Bug Fixes

4.5.2

20 Mar 10:00
318b114
Compare
Choose a tag to compare

Changes

πŸš€ New Features

  • Introduce AbstractConnection so that UnixDomainSocketConnection can call super().init (#2588)
  • Added queue_class to REDIS_ALLOWED_KEYS (#2577)
  • Made search document subscriptable (#2615)
  • Sped up the protocol parsing (#2596)

πŸ› Bug Fixes

  • Fix behaviour of async PythonParser to match RedisParser as for issue #2349 (#2582)
  • Replace async_timeout by asyncio.timeout (#2602)
  • Update json().arrindex() default values (#2611)

🧰 Maintenance

  • Coverage for pypy-3.9 (#2608)
  • Developer Experience: Adding redis version compatibility details to the README (#2621)
  • Remove redundant assignment to RedisCluster.nodes_manager. (#2620)
  • Developer Experience: [types] update return type of smismember to list[int] (#2617)
  • Developer Experience: [docs] ConnectionPool SSL example (#2605)
  • Developer Experience: Fixed CredentialsProvider examples (#2587)
  • Developer Experience: Update README to make pip install copy-pastable on zsh (#2584)
  • Developer Experience: Fix for lpop and rpop return typing (#2590)

Contributors

We'd like to thank all the contributors who worked on this release!

@CrimsonGlory, @Galtozzy, @aksinha334, @barshaul, @chayim, @davemcphee, @dvora-h, @kristjanvalur, @ryin1, @sileht, @thebarbershop, @uglide, @woutdenolf and @zakaf

4.5.1

08 Feb 14:21
fd7a79d
Compare
Choose a tag to compare

Changes

πŸ› Bug Fixes

  • Fix #2581 UnixDomainSocketConnection object has no attribute _command_packer (#2583)

Contributors

We'd like to thank all the contributors who worked on this release!

@dvora-h and @prokazov

4.5.0

07 Feb 15:18
5cb5712
Compare
Choose a tag to compare

Changes

Special Note: This redis-py release introduces the ability to write to Redis, using hiredis. If you're using hiredis as an optional requirement, please upgrade to hiredis 2.2.1. In many cases, writes times decrease by > 25%.

πŸ§ͺ Experimental Features

  • Add TS.MGET example for OS Redis Cluster (#2507)

πŸš€ New Features

  • Use hiredis::pack_command to serialized the commands. (#2570)
  • Add support for unlink in cluster pipeline (#2562)

πŸ› Bug Fixes

  • Fix issue with pack_commands returning an empty byte sequence (#2416)
  • Async HiredisParser should finish parsing after a Connection.disconnect() (#2557)
  • Check for none, prior to raising exception (#2569)
  • Tuple function cannot be passed more than one argument (#2573)
  • Synchronise concurrent command calls to single-client to single-client mode (#2568)

🧰 Maintenance

  • Add TS.MGET example for OS Redis Cluster (#2507)
  • Documentation changes: typo fix (#2566)
  • Simplify the sync SocketBuffer, add type hints (#2543)
  • Add missing Union type in method StreamCommands.xclaim() (#2553)
  • Change redismod docker to redis-stack-server (#2556)

Contributors

We'd like to thank all the contributors who worked on this release!

@SoulPancake, @Vivanov98, @ant1fact, @dvora-h, @gmbnomis, @jmcbailey, @kosuke-zhang, @kristjanvalur, @prokazov, @rbowen and @uglide

4.4.2

11 Jan 14:01
8592cac
Compare
Choose a tag to compare

Changes

Note: this release include #2548 and it is suggested that users upgrade immediately.

πŸ§ͺ Experimental Features

  • Add support for BF.CARD (#2545)

πŸš€ New Features

  • Add support for custom connection pool class in NodesManager (#2547)

πŸ› Bug Fixes

  • Allow replica to master promotion in nodes_cache (#2549)
  • Security Fix: Updating graph parser for potential injection cases (#2548)

Contributors

We'd like to thank all the contributors who worked on this release!

@Threated, @dvora-h, @shacharPash and @zakaf