We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Module installation fails due to missing dependency
https://github.com/redis/redis-py/blob/039488d97ec545b37e903d1b791a88bac8f77973/redis/connection.py#L1
the deprecated distutils was replaced with the packaging module as part of release v4.0.0b1
packaging is not a builtin python module but was not added to setup.py as a dependency which causes applications that require redis-py to fail if packaging isn't already installed on the machine.
the packaging module should probably be added as a dependency in setup.py to resolve this

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `setup.py`
Content:
```
1 #!/usr/bin/env python
2 from setuptools import find_packages, setup
3 
4 import redis
5 
6 setup(
7     name="redis",
8     description="Python client for Redis database and key-value store",
9     long_description=open("README.md").read().strip(),
10     long_description_content_type="text/markdown",
11     keywords=["Redis", "key-value store", "database"],
12     license="MIT",
13     version=redis.__version__,
14     packages=find_packages(
15         include=[
16             "redis",
17             "redis.commands",
18             "redis.commands.bf",
19             "redis.commands.json",
20             "redis.commands.search",
21             "redis.commands.timeseries",
22             "redis.commands.graph",
23         ]
24     ),
25     url="https://github.com/redis/redis-py",
26     author="Redis Inc.",
27     author_email="oss@redis.com",
28     python_requires=">=3.6",
29     install_requires=[
30         "deprecated==1.2.3",
31         "packaging==21.3",
32     ],
33     classifiers=[
34         "Development Status :: 5 - Production/Stable",
35         "Environment :: Console",
36         "Intended Audience :: Developers",
37         "License :: OSI Approved :: MIT License",
38         "Operating System :: OS Independent",
39         "Programming Language :: Python",
40         "Programming Language :: Python :: 3",
41         "Programming Language :: Python :: 3 :: Only",
42         "Programming Language :: Python :: 3.6",
43         "Programming Language :: Python :: 3.7",
44         "Programming Language :: Python :: 3.8",
45         "Programming Language :: Python :: 3.9",
46         "Programming Language :: Python :: 3.10",
47         "Programming Language :: Python :: Implementation :: CPython",
48         "Programming Language :: Python :: Implementation :: PyPy",
49     ],
50     extras_require={
51         "hiredis": ["hiredis>=1.0.0"],
52     },
53 )
54
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -26,9 +26,12 @@
     author="Redis Inc.",
     author_email="oss@redis.com",
     python_requires=">=3.6",
+    setup_requires=[
+        "packaging>=21.3",
+    ],
     install_requires=[
-        "deprecated==1.2.3",
-        "packaging==21.3",
+        "deprecated>=1.2.3",
+        "packaging>=21.3",
     ],
     classifiers=[
         "Development Status :: 5 - Production/Stable",

{"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -26,9 +26,12 @@\n     author=\"Redis Inc.\",\n     author_email=\"oss@redis.com\",\n     python_requires=\">=3.6\",\n+    setup_requires=[\n+        \"packaging>=21.3\",\n+    ],\n     install_requires=[\n-        \"deprecated==1.2.3\",\n-        \"packaging==21.3\",\n+        \"deprecated>=1.2.3\",\n+        \"packaging>=21.3\",\n     ],\n     classifiers=[\n         \"Development Status :: 5 - Production/Stable\",\n", "issue": "Module installation fails due to missing dependency\nhttps://github.com/redis/redis-py/blob/039488d97ec545b37e903d1b791a88bac8f77973/redis/connection.py#L1\r\nthe deprecated distutils was replaced with the packaging module as part of release v4.0.0b1\r\npackaging is not a builtin python module but was not added to setup.py as a dependency which causes applications that require redis-py to fail if packaging isn't already installed on the machine.\r\nthe packaging module should probably be added as a dependency in setup.py to resolve this\n", "before_files": [{"content": "#!/usr/bin/env python\nfrom setuptools import find_packages, setup\n\nimport redis\n\nsetup(\n    name=\"redis\",\n    description=\"Python client for Redis database and key-value store\",\n    long_description=open(\"README.md\").read().strip(),\n    long_description_content_type=\"text/markdown\",\n    keywords=[\"Redis\", \"key-value store\", \"database\"],\n    license=\"MIT\",\n    version=redis.__version__,\n    packages=find_packages(\n        include=[\n            \"redis\",\n            \"redis.commands\",\n            \"redis.commands.bf\",\n            \"redis.commands.json\",\n            \"redis.commands.search\",\n            \"redis.commands.timeseries\",\n            \"redis.commands.graph\",\n        ]\n    ),\n    url=\"https://github.com/redis/redis-py\",\n    author=\"Redis Inc.\",\n    author_email=\"oss@redis.com\",\n    python_requires=\">=3.6\",\n    install_requires=[\n        \"deprecated==1.2.3\",\n        \"packaging==21.3\",\n    ],\n    classifiers=[\n        \"Development Status :: 5 - Production/Stable\",\n        \"Environment :: Console\",\n        \"Intended Audience :: Developers\",\n        \"License :: OSI Approved :: MIT License\",\n        \"Operating System :: OS Independent\",\n        \"Programming Language :: Python\",\n        \"Programming Language :: Python :: 3\",\n        \"Programming Language :: Python :: 3 :: Only\",\n        \"Programming Language :: Python :: 3.6\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"Programming Language :: Python :: Implementation :: CPython\",\n        \"Programming Language :: Python :: Implementation :: PyPy\",\n    ],\n    extras_require={\n        \"hiredis\": [\"hiredis>=1.0.0\"],\n    },\n)\n", "path": "setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\nfrom setuptools import find_packages, setup\n\nimport redis\n\nsetup(\n    name=\"redis\",\n    description=\"Python client for Redis database and key-value store\",\n    long_description=open(\"README.md\").read().strip(),\n    long_description_content_type=\"text/markdown\",\n    keywords=[\"Redis\", \"key-value store\", \"database\"],\n    license=\"MIT\",\n    version=redis.__version__,\n    packages=find_packages(\n        include=[\n            \"redis\",\n            \"redis.commands\",\n            \"redis.commands.bf\",\n            \"redis.commands.json\",\n            \"redis.commands.search\",\n            \"redis.commands.timeseries\",\n            \"redis.commands.graph\",\n        ]\n    ),\n    url=\"https://github.com/redis/redis-py\",\n    author=\"Redis Inc.\",\n    author_email=\"oss@redis.com\",\n    python_requires=\">=3.6\",\n    setup_requires=[\n        \"packaging>=21.3\",\n    ],\n    install_requires=[\n        \"deprecated>=1.2.3\",\n        \"packaging>=21.3\",\n    ],\n    classifiers=[\n        \"Development Status :: 5 - Production/Stable\",\n        \"Environment :: Console\",\n        \"Intended Audience :: Developers\",\n        \"License :: OSI Approved :: MIT License\",\n        \"Operating System :: OS Independent\",\n        \"Programming Language :: Python\",\n        \"Programming Language :: Python :: 3\",\n        \"Programming Language :: Python :: 3 :: Only\",\n        \"Programming Language :: Python :: 3.6\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"Programming Language :: Python :: Implementation :: CPython\",\n        \"Programming Language :: Python :: Implementation :: PyPy\",\n    ],\n    extras_require={\n        \"hiredis\": [\"hiredis>=1.0.0\"],\n    },\n)\n", "path": "setup.py"}]}