0% found this document useful (0 votes)
26 views8 pages

Redis PyPI

The document provides information about the redis-py library, a Python client for the Redis database, with the latest version being 6.2.0 released on May 28, 2025. It details installation instructions, version compatibility, and usage examples, including connection management and command execution. Additionally, it highlights the end-of-life support for older Python versions and the introduction of new features such as RESP3 support and query dialects.

Uploaded by

Luis Rola
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views8 pages

Redis PyPI

The document provides information about the redis-py library, a Python client for the Redis database, with the latest version being 6.2.0 released on May 28, 2025. It details installation instructions, version compatibility, and usage examples, including connection management and command execution. Additionally, it highlights the end-of-life support for older Python versions and the introduction of new features such as RESP3 support and query dialects.

Uploaded by

Luis Rola
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

6/3/25, 4:15 PM redis · PyPI

 2025 Python Packaging Survey is now live! Take the survey now  

Search projects 

Help Sponsors Log in Register

redis 6.2.0  Latest version

pip install redis  Released: May 28, 2025

Python client for Redis database and key-value store

Navigation Project description


Project
redis-py

description

 Release The Python interface to the Redis key-value store.


history
CI no status docs passing license MIT

latest-prerelease v6.1.1 codecov 94%


 Download
files Installation | Usage | Advanced Topics | Contributing

Verified details  Note: redis-py 5.0 will be the last version of redis-py
These details have been
verified by PyPI
to support Python 3.7, as it has reached end of life.
redis-py 5.1 will support Python 3.8+. Note: redis-
Maintainers
py 6.1.0 will be the last version of redis-py to
cisk support Python 3.8, as it has reached end of life.
redis-py 6.2.0 will support Python 3.9+.
https://pypi.org/project/redis/ 1/8
6/3/25, 4:15 PM redis · PyPI

RedisLabs How do I Redis?


 2025 Python Packaging Survey is now live! Take the survey now 

Learn for free at Redis University


Unverified details Try the Redis Cloud
These details have not been
verified by PyPI Dive in developer tutorials
Project links Join the Redis community
 Changes Work at Redis
 Code

Installation
Documentation
Start a redis via docker (for Redis versions >= 8.0):
 Homepage
 Issue tracker
docker run -p 6379:6379 -it redis:latest

Meta
License Start a redis via docker (for Redis versions < 8.0):
Expression: MIT
SPDX  License
Expression  docker run -p 6379:6379 -it redis/redis-stack:latest
Author: Redis
Inc.  To install redis-py, simply:
 Redis,
``` bash
database, key-
$ pip install redis
value-store
Requires: Python
>=3.9 For faster performance, install redis with hiredis support, this
Provides-Extra: provides a compiled response parser, and for most cases requires
hiredis , jwt , zero code changes. By default, if hiredis >= 1.0 is available, redis-py
ocsp will attempt to use it for response parsing.

Classifiers $ pip install "redis[hiredis]"


Development Status
5- Looking for a high-level library to handle object mapping? See redis-
Production/Stable
om-python!
Environment
Console Supported Redis Versions
Intended Audience
Developers

https://pypi.org/project/redis/ 2/8
6/3/25, 4:15 PM redis · PyPI

License The most recent version of this library supports Redis version 7.2, 7.4
2025
OSI Approved ::
 Python Packaging
and 8.0. Survey is now live! Take the survey now 
MIT License
The table below highlights version compatibility of the most-recent
Operating System library versions and redis versions.
OS Independent
Programming
Library version Supported redis versions
Language
Python
3.5.3 <= 6.2 Family of releases
Python :: 3
Python :: 3 :: Only
>= 4.5.0 Version 5.0 to 7.0
Python :: 3.9
Python :: 3.10
>= 5.0.0 Version 5.0 to 7.4
Python :: 3.11
Python :: 3.12
Python :: 3.13 >= 6.0.0 Version 7.2 to current
Python ::
Implementation ::
CPython Usage
Python ::
Implementation :: Basic Example
PyPy

>>> import redis


>>> r = redis.Redis(host='localhost', port=6379, db=0)

>>> r.set('foo', 'bar')
True
Google is a
Visionary sponsor >>> r.get('foo')
of the Python b'bar'
Software
Foundation.  

PSF Sponsor · Served The above code connects to localhost on port 6379, sets a value in
ethically Redis, and retrieves it. All responses are returned as bytes in Python,
to receive decoded strings, set decode_responses=True. For this, and
more connection options, see these examples.
Report project as
malware RESP3 Support

To enable support for RESP3, ensure you have at least version 5.0 of
the client, and change your connection object to include protocol=3

>>> import redis

https://pypi.org/project/redis/ 3/8
6/3/25, 4:15 PM redis · PyPI

>>> r = redis.Redis(host='localhost', port=6379, db=0,


 2025 Python Packaging Survey is now live! Take the survey now 

Connection Pools
 

By default, redis-py uses a connection pool to manage connections.


Each instance of a Redis class receives its own connection pool. You
can however define your own redis.ConnectionPool.

>>> pool = redis.ConnectionPool(host='localhost', port=


>>> r = redis.Redis(connection_pool=pool)

 

Alternatively, you might want to look at Async connections, or Cluster


connections, or even Async Cluster connections.

Redis Commands

There is built-in support for all of the out-of-the-box Redis


commands. They are exposed using the raw Redis command names
( HSET , HGETALL , etc.) except where a word (i.e. del) is reserved by
the language. The complete set of commands can be found here, or
the documentation.

Advanced Topics

The official Redis command documentation does a great job of


explaining each command in detail. redis-py attempts to adhere to
the official command syntax. There are a few exceptions:
MULTI/EXEC: These are implemented as part of the Pipeline
class. The pipeline is wrapped with the MULTI and EXEC
statements by default when it is executed, which can be disabled
by specifying transaction=False. See more about Pipelines
below.
SUBSCRIBE/LISTEN: Similar to pipelines, PubSub is
implemented as a separate class as it places the underlying
connection in a state where it can't execute non-pubsub
commands. Calling the pubsub method from the Redis client will
return a PubSub instance where you can subscribe to channels
https://pypi.org/project/redis/ 4/8
6/3/25, 4:15 PM redis · PyPI

and listen for messages. You can only call PUBLISH from the
 2025 Python Packaging Survey
Redis client is now
(see this live! onTake
comment the #151
issue surveyfor
nowdetails).

For more details, please see the documentation on advanced topics


page.

Pipelines

The following is a basic example of a Redis pipeline, a method to


optimize round-trip calls, by batching Redis commands, and
receiving their results as a list.

>>> pipe = r.pipeline()


>>> pipe.set('foo', 5)
>>> pipe.set('bar', 18.5)
>>> pipe.set('blee', "hello world!")
>>> pipe.execute()
[True, True, True]

PubSub

The following example shows how to utilize Redis Pub/Sub to


subscribe to specific channels.

>>> r = redis.Redis(...)
>>> p = r.pubsub()
>>> p.subscribe('my-first-channel', 'my-second-channel
>>> p.get_message()
{'pattern': None, 'type': 'subscribe', 'channel': b'my-

 

Redis’ search and query capabilities default dialect

Release 6.0.0 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 2
to 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.
https://pypi.org/project/redis/ 5/8
6/3/25, 4:15 PM redis · PyPI

 2025 Python Packaging


>>> from Survey is now live! Take the survey
redis.commands.search.field import
now  TextField
>>> from redis.commands.search.query import Query
>>> from redis.commands.search.index_definition import
>>> import redis

>>> r = redis.Redis(host='localhost', port=6379, db=0)


>>> r.ft().create_index(
>>> (TextField("name"), TextField("lastname")),
>>> definition=IndexDefinition(prefix=["test:"]),
>>> )

>>> r.hset("test:1", "name", "James")


>>> r.hset("test:1", "lastname", "Brown")

>>> # Query with default DIALECT 2


>>> query = "@name: James Brown"
>>> q = Query(query)
>>> res = r.ft().search(q)

>>> # Query with explicit DIALECT 1


>>> query = "@name: James Brown"
>>> q = Query(query).dialect(1)
>>> res = r.ft().search(q)

 

You can find further details in the query dialect documentation.

Author

redis-py is developed and maintained by Redis Inc. It can be found


here, or downloaded from pypi.
Special thanks to:
Andy McCurdy (sedrik@gmail.com ) the original author of
redis-py.
Ludovico Magnocavallo, author of the original Python Redis
client, from which some of the socket code is still used.
Alexander Solovyov for ideas on the generic response callback
system.
Paul Hubbard for initial packaging support.

Redis

https://pypi.org/project/redis/ 6/8
6/3/25, 4:15 PM redis · PyPI

 2025 Python Packaging Survey is now live! Take the survey now 

Help About PyPI


Installing packages  PyPI Blog 
Uploading packages  Infrastructure dashboard 
User guide  Statistics
Project name retention  Logos & trademarks
FAQs Our sponsors

Contributing to PyPI Using PyPI


Bugs and feedback Terms of Service 
Contribute on GitHub  Report security issue
Translate PyPI  Code of conduct 
Sponsor PyPI Privacy Notice 
Development credits  Acceptable Use Policy 

Status: All Systems Operational 


Developed and maintained by the Python community, for the Python community.
Donate today!
"PyPI", "Python Package Index", and the blocks logos are registered trademarks of the Python
Software Foundation .
© 2025 Python Software Foundation 
Site map

Switch to desktop version

 English español français 日本語 português (Brasil) українська Ελληνικά Deutsch 中文 (简体)
中文 (繁體) русский ‫ עברית‬Esperanto 한국어

https://pypi.org/project/redis/ 7/8
6/3/25, 4:15 PM redis · PyPI

 2025 Python Packaging Survey is now live! Take the survey now 
AWS Pingdom
Cloud computing
Datadog Fastly Google
and Security
Sponsor Monitoring CDN Download Analytics Monitoring

Sentry StatusPage
Error logging Status page

https://pypi.org/project/redis/ 8/8

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy