Skip to content

Commit c4faf80

Browse files
committed
Import Upstream version 5.0.1
1 parent 2d92e39 commit c4faf80

File tree

175 files changed

+24089
-9977
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

175 files changed

+24089
-9977
lines changed

CHANGES

Lines changed: 577 additions & 535 deletions
Large diffs are not rendered by default.

CONTRIBUTING.md

Lines changed: 13 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
## Introduction
44

5-
First off, thank you for considering contributing to redis-py. We value
6-
community contributions!
5+
We appreciate your interest in considering contributing to redis-py.
6+
Community contributions mean a lot to us.
77

8-
## Contributions We Need
8+
## Contributions we need
99

10-
You may already know what you want to contribute \-- a fix for a bug you
10+
You may already know how you'd like to contribute, whether it's a fix for a bug you
1111
encountered, or a new feature your team wants to use.
1212

13-
If you don't know what to contribute, keep an open mind! Improving
13+
If you don't know where to start, consider improving
1414
documentation, bug triaging, and writing tutorials are all examples of
1515
helpful contributions that mean less work for you.
1616

@@ -38,8 +38,9 @@ Here's how to get started with your code contribution:
3838
a. python -m venv .venv
3939
b. source .venv/bin/activate
4040
c. pip install -r dev_requirements.txt
41+
c. pip install -r requirements.txt
4142

42-
4. If you need a development environment, run `invoke devenv`
43+
4. If you need a development environment, run `invoke devenv`. Note: this relies on docker-compose to build environments, and assumes that you have a version supporting [docker profiles](https://docs.docker.com/compose/profiles/).
4344
5. While developing, make sure the tests pass by running `invoke tests`
4445
6. If you like the change and think the project could use it, send a
4546
pull request
@@ -59,7 +60,6 @@ can execute docker and its various commands.
5960
- Three sentinel Redis nodes
6061
- A redis cluster
6162
- An stunnel docker, fronting the master Redis node
62-
- A Redis node, running unstable - the latest redis
6363

6464
The replica node, is a replica of the master node, using the
6565
[leader-follower replication](https://redis.io/topics/replication)
@@ -78,16 +78,9 @@ It is possible to run only Redis client tests (with cluster mode disabled) by
7878
using `invoke standalone-tests`; similarly, RedisCluster tests can be run by using
7979
`invoke cluster-tests`.
8080

81-
Each run of tox starts and stops the various dockers required. Sometimes
81+
Each run of tests starts and stops the various dockers required. Sometimes
8282
things get stuck, an `invoke clean` can help.
8383

84-
Continuous Integration uses these same wrappers to run all of these
85-
tests against multiple versions of python. Feel free to test your
86-
changes against all the python versions supported, as declared by the
87-
tox.ini file (eg: tox -e py39). If you have the various python versions
88-
on your desktop, you can run *tox* by itself, to test all supported
89-
versions.
90-
9184
### Docker Tips
9285

9386
Following are a few tips that can help you work with the Docker-based
@@ -97,10 +90,6 @@ To get a bash shell inside of a container:
9790

9891
`$ docker run -it <service> /bin/bash`
9992

100-
**Note**: The term \"service\" refers to the \"services\" defined in the
101-
`tox.ini` file at the top of the repo: \"master\", \"replicaof\",
102-
\"sentinel_1\", \"sentinel_2\", \"sentinel_3\".
103-
10493
Containers run a minimal Debian image that probably lacks tools you want
10594
to use. To install packages, first get a bash session (see previous tip)
10695
and then run:
@@ -111,23 +100,6 @@ You can see the logging output of a containers like this:
111100

112101
`$ docker logs -f <service>`
113102

114-
The command make test runs all tests in all tested Python
115-
environments. To run the tests in a single environment, like Python 3.9,
116-
use a command like this:
117-
118-
`$ docker-compose run test tox -e py39 -- --redis-url=redis://master:6379/9`
119-
120-
Here, the flag `-e py39` runs tests against the Python 3.9 tox
121-
environment. And note from the example that whenever you run tests like
122-
this, instead of using make test, you need to pass
123-
`-- --redis-url=redis://master:6379/9`. This points the tests at the
124-
\"master\" container.
125-
126-
Our test suite uses `pytest`. You can run a specific test suite against
127-
a specific Python version like this:
128-
129-
`$ docker-compose run test tox -e py36 -- --redis-url=redis://master:6379/9 tests/test_commands.py`
130-
131103
### Troubleshooting
132104

133105
If you get any errors when running `make dev` or `make test`, make sure
@@ -166,19 +138,19 @@ When filing an issue, make sure to answer these five questions:
166138
4. What did you expect to see?
167139
5. What did you see instead?
168140

169-
## How to Suggest a Feature or Enhancement
141+
## Suggest a feature or enhancement
170142

171143
If you'd like to contribute a new feature, make sure you check our
172144
issue list to see if someone has already proposed it. Work may already
173-
be under way on the feature you want -- or we may have rejected a
145+
be underway on the feature you want or we may have rejected a
174146
feature like it already.
175147

176148
If you don't see anything, open a new issue that describes the feature
177149
you would like and how it should work.
178150

179-
## Code Review Process
151+
## Code review process
180152

181-
The core team looks at Pull Requests on a regular basis. We will give
182-
feedback as as soon as possible. After feedback, we expect a response
153+
The core team regularly looks at pull requests. We will provide
154+
feedback as soon as possible. After receiving our feedback, please respond
183155
within two weeks. After that time, we may close your PR if it isn't
184156
showing any activity.

LICENSE

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,21 @@
1-
Copyright (c) 2012 Andy McCurdy
1+
MIT License
22

3-
Permission is hereby granted, free of charge, to any person
4-
obtaining a copy of this software and associated documentation
5-
files (the "Software"), to deal in the Software without
6-
restriction, including without limitation the rights to use,
7-
copy, modify, merge, publish, distribute, sublicense, and/or sell
8-
copies of the Software, and to permit persons to whom the
9-
Software is furnished to do so, subject to the following
10-
conditions:
3+
Copyright (c) 2022-2023, Redis, inc.
114

12-
The above copyright notice and this permission notice shall be
13-
included in all copies or substantial portions of the Software.
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
1411

15-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
17-
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
19-
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20-
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21-
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22-
OTHER DEALINGS IN THE SOFTWARE.
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)