Skip to content

Releases: redis/redis-py

5.1.0b6

06 Jun 18:03
3a0c724
Compare
Choose a tag to compare
5.1.0b6 Pre-release
Pre-release

Changes

🚀 New Features

  • Hash field expiration commands (#3218)
  • Support NOVALUES parameter for HSCAN (#3157)
  • Support the MAXAGE option for CLIENT KILL (#3187)

🐛 Bug Fixes

  • Fix parsing of INFO response (#3265)

🧰 Maintenance

  • Use standard Redis docker image in CI (#3246)
  • Add missing type hints for backoff.py (#3249)
  • More robust parsing of memory stats response (#3247)
  • Parse FT.PROFILE response more robustly (#3245)
  • Run pyupgrade for 3.8 (#3236)
  • Fix typing for address_remap (fixes #3234) (#3235)
  • Use new Redis logo and website (#3233)
  • Update ResponseT type alias (#3227)
  • Streamline documentation style (#3232)
  • Document XREAD of last message (+) (#3188)
  • Fix CNs in test certificates (#3226)

5.0.5

06 Jun 08:07
6f55c02
Compare
Choose a tag to compare

Changes

🐛 Bug Fixes

  • Fix parsing of INFO response (#3265)

5.1.0b5

08 May 13:28
4981761
Compare
Choose a tag to compare
5.1.0b5 Pre-release
Pre-release

Changes

🧪 Experimental Features

  • Client side caching improvements: typing, better test coverage, bug fixes (#3216)

🐛 Bug Fixes

  • Make it possible to customize SSL ciphers (#3214)
  • Make message in LockError optional to support backwards compatibility (#3176)

🧰 Maintenance

  • Adding a twine check prior to package release (#3198)
  • Update black version to 24.3.0 (#3193)
  • Avoid workflows canceling each other out (#3183)
  • Documentation update (asyncio_examples.ipynb) (#3125)
  • Optimizing cluster initialization changing the checks for cluster-enabled flag (#3158)
  • Bump release-drafter/release-drafter from 5 to 6 (#3171)
  • Bump rojopolis/spellcheck-github-actions from 0.35.0 to 0.36.0 (#3172)
  • Remove redundant async-timeout dependency from modern Python (#3177)

Contributors

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

@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @Zaczero, @ahmedabdou14, @akx, @chayim, @d184230, @danielzhangau, @dmkulazhenko, @dvora-h, @enjoy-binbin, @gerzse, @hongqn, @jakob-keller, @kristjanvalur, @matrey, @mattwang44, @parmenashp, @poiuj, @r0ro, @sjpotter, @tbbream, @trkwyk, @w-miller, @wKollendorf, @willianmrs, @zakaf, @zware and @zxjlm

5.0.4

23 Apr 17:11
e71119d
Compare
Choose a tag to compare

Changes

🐛 Bug Fixes

  • Make it possible to customize SSL ciphers (#3212)

5.0.3

10 Mar 15:18
1784b37
Compare
Choose a tag to compare

Changes

🐛 Bug Fixes

  • Fix breaking change: message in LockError is now optional (#3176)

🧰 Maintenance

  • Bump release-drafter/release-drafter from 5 to 6 (#3171)
  • Bump rojopolis/spellcheck-github-actions from 0.35.0 to 0.36.0 (#3172)
  • Remove redundant async-timeout dependency (#3177)

5.1.0b4

29 Feb 12:39
9df2225
Compare
Choose a tag to compare
5.1.0b4 Pre-release
Pre-release

Changes

How to try Client-Side Caching

  1. Install redis-py 5.1.0b4
  2. Use the following code example to get started:
import redis

# enable csc
r = redis.Redis(
    "localhost", 6379, protocol=3,
    cache_enabled=True, cache_ttl=100, cache_max_size=1000,
    # cache_blacklist=["GET", "LLEN"] # if needed, you can exclude certain commands from caching
)

r.set("foo", "bar")
r.get("foo")
r.get("foo")  # this will be fetched from cache

# manually invalidate key in cache
r.invalidate_key_from_cache("foo")

# or flush the entire cache
r.flush_cache()

🚀 New Features

  • Allow setting the minimum SSL version (#3127)
  • Add modules support to Async RedisCluster (#3115)

🐛 Bug Fixes

  • Client side caching causes unexpected disconnections (#3160) (#3165)
  • Fix retry logic for pubsub and pipeline (#3134)
  • Ignore TypeError on disconnect (within multiprocess) (#3149)
  • Release already acquired connections on ClusterPipeline, when get_connection raises an exception (#3133)

🧰 Maintenance

  • Fix incorrect asserts in test and ensure connections are closed (#3004)
  • Remove typing-extensions from dependencies (#3146)
  • Revert stale issue version update (#3142)
  • Docs: Add timeout parameter for get_message example (#3129)
  • Bump codecov/codecov-action from 3 to 4 (#3131)
  • Bump actions/stale from 3 to 9 (#3132)
  • Fix grammar in BlockingConnectionPool class documentation (#3120)

Contributors

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

@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @ahmedabdou14, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dmkulazhenko, @dvora-h, @enjoy-binbin, @hongqn, @jakob-keller, @kristjanvalur, @mattwang44, @parmenashp, @poiuj, @r0ro, @sjpotter, @tbbream, @trkwyk, @w-miller, @wKollendorf, @zakaf, @zware and @zxjlm

5.0.2

28 Feb 12:29
535f90e
Compare
Choose a tag to compare

Changes

🚀 New Features

  • Allow to control the minimum SSL version (#3127)
  • Add modules support to async RedisCluster (#3115)
  • Adding lock_name to LockError (#3023)
  • Add GEOSHAPE field type for index creation of RediSearch (#2957)

🐛 Bug Fixes

  • Fix retry logic for pubsub and pipeline (#3134)
  • Ignore TypeError on disconnect (within multiprocess) (#3149)
  • Release already acquired connections on ClusterPipeline, when get_connection raises an exception (#3133)
  • Fix possible pipeline connections leak (#3104)
  • Return a copy of the response from cache (#3106)
  • Fix: HSET unexpectedly mutates the list passed to items (#3103)
  • Fix acl_genpass with bits (#3062)
  • Allow the parsing of the asking command to forward original options (#3012)
  • Fix parsing of FT.PROFILE result (#3063)
  • Use disable_decoding in async read_response with hiredis parser. (#3042)
  • Fix return types in json commands (#3071)
  • Fix Specifying Target Nodes broken hyperlink (#3072)

🧰 Maintenance

  • Fix incorrect asserts in test and ensure connections are closed (#3004)
  • Revert stale issue version update (#3142)
  • Docs: Add timeout parameter for get_message example (#3129)
  • Bump codecov/codecov-action from 3 to 4 (#3131)
  • Bump actions/stale from 3 to 9 (#3132)
  • Fix grammer in BlockingConnectionPool class documentation (#3120)
  • Updating async-timeout to 4.0.3 (#3109)
  • Fix type hint of arbitrary argument lists (#2908)
  • Fix JSON.OBJLEN type hint (#2966)
  • Fix HDEL type hint (#3029)
  • Docs: organize cluster mode part of lua scripting (#3073)
  • Update reported version deprecation in asyncio.client (#2968)
  • Make the connection callback methods public again, add documentation (#2980)
  • Update repr of important classes with module name and recommended "< … (#3001)
  • Typo in advanced features documentation (#3019)
  • Fix typos in documentation (#3016
  • Add "sum" to DUPLICATE_POLICY documentation of TS.CREATE, TS.ADD and TS.ALTER (#3027)
  • Fixed typo in ocsp.py (#3022)
  • Creating CODEOWNERS for documentation (#2993)

Contributors

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

@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @ahmedabdou14, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dmkulazhenko, @dvora-h, @enjoy-binbin, @hongqn, @jakob-keller, @kristjanvalur, @mattwang44, @parmenashp, @poiuj, @r0ro, @sjpotter, @tbbream, @trkwyk, @w-miller, @wKollendorf, @zakaf, @zware and @zxjlm

5.1.0b3

15 Jan 15:53
0a82496
Compare
Choose a tag to compare
5.1.0b3 Pre-release
Pre-release

Changes

🧪 Experimental Features

  • Expose delete functions, rename attributes, add AbstractCache class (#3110)
  • Support client side caching with RedisCluster (#3102)

🚀 New Features

  • Adding lock_name to LockError (#3023)

🐛 Bug Fixes

  • Fix possible pipeline connections leak (#3104)
  • Return a copy of the response from cache (#3106)
  • Fix: HSET unexpectedly mutates the list passed to items (#3103)

🧰 Maintenance

  • Updating async-timeout to 4.0.3 (#3109)
  • Fix type hint of arbitrary argument lists (#2908)
  • Fix JSON.OBJLEN type hint (#2966)
  • Fix HDEL type hint (#3029)
  • Docs: organize cluster mode part of lua scripting (#3073)

Contributors

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

@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dmkulazhenko, @dvora-h, @enjoy-binbin, @jakob-keller, @kristjanvalur, @mattwang44, @parmenashp, @r0ro, @sjpotter, @tbbream, @trkwyk, @zware and @zxjlm

5.1.0b2

07 Jan 13:12
b5d4d29
Compare
Choose a tag to compare
5.1.0b2 Pre-release
Pre-release

Changes

🧪 Experimental Features

  • Support client side caching with ConnectionPool (#3099)

Contributors

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

@dvora-h

5.1.0b1

01 Jan 14:00
c6bbfca
Compare
Choose a tag to compare
5.1.0b1 Pre-release
Pre-release

Changes

🔥 Breaking Changes

  • Removing Python 3.7 compatibility (#2928)
  • Update repr of important classes with module name and recommended "< … (#3001)
  • Prevent async ClusterPipeline instances from becoming "false-y" in ca… (#3068)

🧪 Experimental Features

  • Client side caching invalidations (standalone) (#3089)

🐛 Bug Fixes

  • Fix acl_genpass with bits (#3062)
  • Allow the parsing of the asking command to forward original options (#3012)
  • Prevent async ClusterPipeline instances from becoming "false-y" in ca… (#3068)
  • Fix parsing of FT.PROFILE result (#3063)
  • Use disable_decoding in async read_response with hiredis parser. (#3042)
  • Fix return types in json commands (#3071)
  • Fix Specifying Target Nodes broken hyperlink (#3072)

🧰 Maintenance

  • Update reported version deprecation in asyncio.client (#2968)
  • Make the connection callback methods public again, add documentation (#2980)
  • Update repr of important classes with module name and recommended "< … (#3001)
  • Typo in advanced features documentation (#3019)
  • Fix typos in documentation (#3016
  • Add "sum" to DUPLICATE_POLICY documentation of TS.CREATE, TS.ADD and TS.ALTER (#3027)
  • Fixed typo in ocsp.py (#3022)
  • Creating CODEOWNERS for documentation (#2993)

Contributors

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

@AYMENJD, @AniketP04, @BackflipPenguin, @MrDenkoV, @Pedram-Parsian, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dvora-h, @enjoy-binbin, @jakob-keller, @kristjanvalur, @parmenashp, @r0ro, @sjpotter, @tbbream and @zware