Skip to content

Releases: redis/redis-py

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

5.1.0a1

16 Nov 12:21
8875d55
Compare
Choose a tag to compare
5.1.0a1 Pre-release
Pre-release

Changes

πŸ§ͺ Experimental Features

  • Client Side Caching (#3038)

πŸš€ New Features

  • Add GEOSHAPE field type for index creation of RediSearch (#2957)

πŸ› Bug Fixes

  • Fix parsing resp3 dicts (#2982)
  • Fix BlockingConnectionPool.from_url parsing of timeout in query args #2983 (#2984)
  • Fix incorrect lock scope in BlockingConnectionPool (#2997)
  • Fixing type hint on from_url (#2963)

🧰 Maintenance

  • Update client.py sleep_time typing for run_in_thread function (#2977)
  • Better handling of "lost" connections for async Redis (#2999)
  • Linking to Redis learning resources (#3006)
  • Close various objects created during asyncio tests (#3005)

Contributors

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

@chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dvora-h, @kristjanvalur, @r0ro and @sjpotter

5.0.1

26 Sep 06:50
cc4bc1a
Compare
Choose a tag to compare

Changes

πŸš€ New Features

  • Provide aclose() / close() for classes requiring lifetime management (#2898)
  • Add support for ModuleCommands in cluster (#2951)
  • Add support for multiple values in RPUSHX (#2949)
  • Add Redis.from_pool() class method, for explicitly owning and closing a ConnectionPool (#2913)

πŸ› Bug Fixes

  • Fixing monitor parsing for messages containing specific substrings (#2950)
  • Cluster determine slot command name need to be upper (#2919)
  • Support timeout = 0 in search query (#2934)
  • Fix async sentinel: add push_request keyword argument to read_response (#2922)
  • Fix protocol checking for search commands (#2923)
  • Fix: SentinelManagedConnection.read_response() got an unexpected keyword argument 'push_request' (#2894)
  • Fix: automatically close connection pool for async Sentinel (#2900)
  • Save a reference to created async tasks, to avoid tasks potentially disappearing (#2816)
  • Avoid reference cycling by the garbage collector during response reading (#2932)

🧰 Maintenance

  • Type hint improvements (#2952)
  • Replace clear_connect_callbacks with _deregister_connect_callback (#2955)
  • Async fixes, remove del and other things (#2870)
  • Add pagination, sorting and grouping examples to search json example (#2890)
  • Remove process-id checks from asyncio. Asyncio and fork() does not mix. (#2911)
  • Fix resource usage and cleanup Mocks in the unit tests (#2936)
  • Remove mentions of tox (#2929)
  • Add 7.2 to supported Redis versions (#2896)
  • Fix resource warnings in unit tests (#2899)
  • Fix typo in redis-stream-example.ipynb (#2918)
  • Deprecate RedisGraph (#2927)
  • Fix redis 7.2.0 tests (#2902)
  • Fix test_scorer (search) (#2920)

Contributors

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

@AOrazaev, @akx, @anio, @chayim, @dvora-h, @elfkuzco, @hauntsaninja, @kristjanvalur, @meiravgri, @uglide and @yangbodong22011