pypi redis 5.1.0

9 hours ago

Changes

🚀 New Features

How to start with Client-side caching?

  1. Install redis-py 5.1.0
  2. Use the following code snippet:
r = Redis(protocol=3, cache_config=CacheConfig())

cache = r.get_cache()
r.set("foo", "bar")
# get key from redis and save in local cache
print(r.get("foo"))
# get key from local cache
print(cache.get(CacheKey(command="GET", redis_keys=("foo",))).cache_value)
# change key in redis (cause invalidation)
r.set("foo", "barbar")
# Retrieves a new value from server and cache it
print(r.get("foo"))
# Make sure that new value was cached
print(cache.get(CacheKey(command="GET", redis_keys=("foo",))).cache_value)

Check documentation to get more examples

🔥 Breaking Changes

  • Timeseries insertion filters for close samples (#3228)
  • Enhanced classes string representation (#3001)
  • Partial clean up of Python 3.7 compatibility (#2928)

🐛 Bug Fixes

  • Handle RESP3 sets as Python lists (#3324)
  • Prevent async ClusterPipeline instances from becoming "false-y" (#3068)
  • Add hostname field to _parse_node_line (#3343)
  • More docs fixes (#3326)
  • Delete the first-defined (and thus "duplicate") Script class (#3333)
  • Catch a known DeprecationWarning when calling .close() (#3335)
  • Add missed redismod at test_commands.py (#3369)

🧰 Maintenance

  • Update README.md - mentioning redis 7.4 support (#3375)
  • Update PyPy 3.8 to 3.10 in CI (#3370)
  • Updated commands from docker-compose to docker compose (#3352)
  • Added version restrictions for pytest-asyncio (#3362)
  • Documentation examples (#3361, #3372, #3374, #3377, #3378)

Contributors

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

@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @TomerHekmati, @Wh1isper, @Zaczero, @ahmedabdou14, @akx, @andy-stark-redis, @catap, @chayim, @d184230, @danielzhangau, @daveisfera, @dependabot, @dependabot[bot], @dkuser, @dmaier-redislabs, @dmkulazhenko, @dudizimber, @dvora-h, @dwdougherty, @enjoy-binbin, @gerzse, @hongqn, @jakob-keller, @kristjanvalur, @kurtmckee, @matrey, @mattwang44, @max-muoto, @parmenashp, @poiuj, @r0ro, @sjpotter, @tbbream, @trkwyk, @uglide, @vladvildanov, @w-miller, @wKollendorf, @willfrey, @willianmrs, @zakaf, @zware and @zxjlm

Don't miss a new redis release

NewReleases is sending notifications on new releases.