Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

chore(deps): update dependency redis to v6 #115

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
Loading
from

Conversation

renovate-bot
Copy link
Contributor

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
redis (changelog) ==5.0.8 -> ==6.0.0 age adoption passing confidence
redis (changelog) >=5.0.0, <6.0.0 -> >=6.0.0, <6.1.0 age adoption passing confidence

Release Notes

redis/redis-py (redis)

v6.0.0: 6.0.0

Compare Source

Changes

🚀 New Features

  • New hash commands with expiration options support are added - HGETDEL, HGETEX, HSETEX (#​3570)
  • Adds option not to raise an exception when leaving context manager after lock expiration (#​3531)
  • Add force_master_ip support to async Sentinel client (#​3524)

🧪 Experimental Features

  • Adding VectorSet commands support. (#​3584)

🔥 Breaking changes

  • Changing the default value for ssl_check_hostname to True, to ensure security validations are not skipped by default (#​3626)
  • Updated default value of 'require_full_coverage' argument to true for sync Cluster client to match sync/async cluster APIs (#​3434)
  • Adding default retry configuration changes for cluster clients (#​3622)
    Important: When instantiating a cluster client retry object becomes mandatory.
    • If retry object is not provided a default one is created with ExponentialWithJitterBackoff strategy and number of retries synced with 'cluster_error_retry_attempts'
    • In case a retry object is provided, its number of retries will be used for cluster operations number of retries and 'cluster_error_retry_attempts' will be ignored
    • Argument 'cluster_error_retry_attempts' is now deprecated
    • For Async Cluster Client the argument 'connection_error_retry_attempts' is completely removed
  • Updating default retry strategy for standalone clients. 3 retries with ExponentialWithJitterBackoff become the default config. (#​3614)
  • Removing 'charset' and 'errors' inputs from the Redis initialization arguments - deprecated 3 years ago. (#​3608)
  • Removing support for RedisGears module. (#​3553). For more info you can check the deprecated Redis features
  • Removing support for RedisGraph module. (#​3548). For more info you can check the deprecated Redis features
  • Fixing typing for FCALL commands to match PEP 484 (#​3537)
  • Moved ClusterParser exceptions to BaseParser class (#​3475)
  • Changed default dialect to 2 (#​3467) - This release introduces a client-side default dialect for Redis’ search and query capabilities. By default, the client now overrides the server-side dialect with version 2, automatically appending DIALECT 2to commands like FT.AGGREGATE and FT.SEARCH.
    Important: Be aware that the query dialect may impact the results returned. If needed, you can revert to a different dialect version by configuring the client accordingly. You can find further details in the query dialect documentation.

⚠️ Deprecations

  • Adding default retry configuration changes for cluster clients (#​3622)
  • Updating default retry strategy for standalone clients. 3 retries with ExponentialWithJitterBackoff become the default config. (#​3614)
  • Marks old RediSearch 1.0 commands as deprecated (#​3606)
  • Adding deprecation messages for the exposed in search module commands: FT.CONFIG GET and FT.CONFIG SET (#​3499 #​3500 )
  • Deprecating Search module config_set and config_get commands. Adding tests for modules ACL and modules config changes in 8.0 (#​3489)

🐛 Bug Fixes

  • Handling some special values when transforming response data into list (issue #​3573) (#​3586)
  • Fixed infinitely recursive health checks (#​3557)
  • Fixing search module dropindex function not to send invalid third parameter. Updating pipeline infra (#​3564)
  • Fixing async cluster pipeline execution when client is created with cluster_error_retry_attempts=0 (#​3545)
  • Fix client_list with multiple client ids (#​3539)
  • Add valid Exception type to Except in ClusterPipeline (#​3516)
  • Fix #​3130 TimeoutError during ClusterPipeline makes the client unrecoverable (#​3513)
  • Fix connection health check for protocol != 2 when auth credentials are provided and health check interval is configured (#​3477)
  • Fix AttributeError when client.get_default_node() returns None (#​3458)
  • fix: add TimeoutError handling in get_connection() (#​1485)
  • Avoid stacktrace on process exit in Client.del() (#​3397)

🧰 Maintenance

  • Updating pipeline tests to use test libs image with RC2. Updating timeseries tests. (#​3623)
  • Fixing flaky tests - part 2 (#​3592)
  • DOC-5107 added hash examples for index/query intro page (#​3609)
  • DOC-5073 vector set quantization and dimension reduction examples (#​3597)
  • Fixing some sporadically failing tests - part 1 (#​3589)
  • DOC-5073 added examples for vector sets intro page (#​3590)
  • Fix incorrect link to docs for fcall_ro command (#​3576)
  • Improvement: Use shutdown() Before close() in connection.py (#​3567)
  • Truncate pipeline exception message to a sane size (#​3530)
  • Docs/raae 724/remove redis ventures (#​3579)
  • Adding info for sentinel handling failover when Redis client is acquired with master_for() method. (#​3578)
  • Type hints improvements (#​3420 #​3480 #​3522 #​3526)
  • Increasing the operations-per-run for stale issues GH action (#​3556)
  • Got rid of time.time() everywhere (#​3551)
  • Removing deprecated usage of forbid_global_loop=True in pytest.mark.asyncio decorator (#​3542)
  • allow more recent pyopenssl (#​3541)
  • Bump rojopolis/spellcheck-github-actions from 0.38.0 to 0.47.0 (#​3538)
  • Fix LockError message when releasing a lock. (#​3534)
  • Fix readthedocs.yml integration(#​3527 #​3528 #​3529)
  • Adding vector search tests for types int8/uint8 (#​3525)
  • Adding requested resources into sdist. Fix for issue #​3057 (#​3511)
  • maintenance: Python 3.13 compatibility (#​3510)
  • Adding unit test for core info command related to modules info (#​3507)
  • Update connection_examples.ipynb (#​3504)
  • Update Python imports in doc examples (index_definition => indexDefinition) (#​3490)
  • DOC-4736 added geo indexing examples (#​3485)
  • Updated test infrastructure with latest versions (#​3484)
  • fix: update redis university url, the old link doesn't work (#​3481)
  • Fix #​3464: Correct misleading exception_handler example in docs (#​3474)
  • Added Redis 8.0 to test matrix (#​3469)
  • Added workflow_dispatch for pypi release workflow (#​3465)
  • Avoid the multiprocessing forkserver method in Python 3.14 (#​3442)
  • Fix inaccurate docstring for unwatch() (#​3424)
  • Update README.md - Fix 'Note' - bold (#​3413)
  • skip ssl import if not available (#​3078)
  • Replace flake8+isort+black with ruff (#​3147)
  • Fixes minor grammar nit in documentation. (#​3354)

Contributors

We'd like to thank all the contributors who worked on this release!
@​elena-kolevska @​petyaslavova @​vladvildanov @​andy-stark-redis @​JimNero009 @​donbowman @​julianolm @​666romeo @​three-kinds @​bssyousefi @​mbilski @​Yard1 @​bacchuswng @​noirbee @​nbertram @​birthdaysgift @​Perlence @​excitoon @​dimbleby @​shenxiangzhuang @​paololazzari @​dwdougherty @​niklasbec @​byeongjulee222 @​befeleme @​djroze @​BaseMax @​dicej @​akx @​cavemanpi @​lattwood @​rbs333 @​rohansingh @​allrob23

v5.3.0: 5.3.0

Compare Source

Changes

🚀 New Features

Token-based authentication:

  • Added StreamingCredentialProvider interface (#​3445)
  • Extended CredentialProvider class with get_credentials_async method (#​3445)
  • Added event-driven entities (Dispatcher, Listener, Events) (#​3445)

New StreamingCredentialProvider interface was added with an idea to integrate redis-py with credential providers that stream an events that should be handled by given listeners.

Check the documentation for the quick start guide.

CredentialProvider instance creation interface was enhanced. Feel free to check the updated documentation

Other features:

  • Exponential with jitter backoff (#​3550)
  • Adding load balancing strategy configuration to cluster clients(replacement for 'read_from_replicas' config) (#​3563)

⚠️ Deprecations

  • Deprecating unused arguments in connection pools's get_connection functions(#​3517 #​3625)

🐛 Bug Fixes

  • When SlotNotCoveredError is raised, the cluster topology should be reinitialized as part of error handling and retrying of the commands. (#​3621)
  • Fixed Token-based authentication documentation
  • Fixed bug with missing PyJWT dependency (#​3462)
  • Fixed flacky TokenManager test (#​3468)
  • Fix incorrect attribute reuse in redis.connection.CacheProxyConnection (#​3456)
  • Moved self._lock initialisation to Pool constructor (#​3473)
  • Remove decreasing of created connections count when releasing not owned by connection pool connection(fixes issue #​2832). (#​3514)

🧰 Maintenance

  • Updated CredentialProvider test infrastructure (#​3502)
  • Expand type for EncodedT (#​3472)
  • DOC-4423: add TCEs for various command pages (#​3476)
  • DOC-4345 added testable JSON search examples for home page (#​3407)
  • DOC-4796 fixed capped lists example (#​3493)
  • Added unit test fix to improve compatibility with MacOS (#​3486)
  • Added missing type hints (#​3494 #​3495 #​3496 #​3357)
  • Replacing the redis and redis-stack-server images with redis-libs-tests image in test infrastructure (#​3505)

Contributors

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

@​uglide @​woutdenolf @​vladvildanov @​hauntsaninja @​dwdougherty @​patrick91 @​Vulwsztyn @​JimNero009 @​andy-stark-redis @​petyaslavova

v5.2.1: 5.2.1

Compare Source

Changes

🐛 Bug Fixes

  • Fixed unsecured tempfile.mktemp() command usage (#​3446)
  • Fixed bug with SLOWLOG GET response parsing on Redis Software (#​3441)
  • Fixed issue with invoking _close() on closed event loop (#​3438)

🧰 Maintenance

  • Migrate test infrastructure to new custom docker images (#​3415)
  • Fixed flacky test with HEXPIREAT command (#​3437)

Contributors

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

@​IlianIliev @​uglide @​vladvildanov @​teodorfn @​akx

v5.2.0: 5.2.0

Compare Source

Changes

🚀 New Features

  • Extend AggregateRequest with scorer argument (#​3409)

🧰 Maintenance

  • Pin pytest-profiling version due to the bug (#​3417)

Contributors

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

@​uglide @​rbs333 @​vladvildanov @​dwdougherty

v5.1.1: 5.1.1

Compare Source

Changes

5.1.1

🐛 Bug Fixes
  • Fixed return type for Redis Set commands to be Set instead of List (#​3399)
  • Fixed bug with partial Hiredis availability (#​3400)
  • Fixed bug with async pipeline and cluster fails with some commands (#​3402)

5.1.0

🚀 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)
  • Handle Redis Set data type as Python list to avoid a limitations with nested dictionaries (#​3324)

Contributors

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

@​vladvildanov @​dmaier-redislabs @​vineethvkumar @​ramchandra-st @​RafalBielickiIM @​jules-ch

v5.1.0: 5.1.0

Compare Source

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)
  • Handle RESP3 sets as Python lists (#​3324)

🐛 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

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


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Never, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate-bot renovate-bot requested review from a team as code owners April 30, 2025 22:08
@dpebot
Copy link
Collaborator

dpebot commented Apr 30, 2025

/gcbrun

@product-auto-label product-auto-label bot added the api: redis Issues related to the googleapis/langchain-google-memorystore-redis-python API. label Apr 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: redis Issues related to the googleapis/langchain-google-memorystore-redis-python API.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.