We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Please don't require exact versions in requirements
It's a good idea to pin requirements in applications.

It's a bad idea to pin requirements in libraries.  Doing so makes reusing libraries difficult.  If you have minimum requirements, that's fine.


--- 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 import os
3 import sys
4 from setuptools import setup
5 
6 ROOT_DIR = os.path.dirname(__file__)
7 SOURCE_DIR = os.path.join(ROOT_DIR)
8 
9 if sys.version_info[0] == 3:
10     requirements_file = './requirements3.txt'
11 else:
12     requirements_file = './requirements.txt'
13 
14 exec(open('docker/version.py').read())
15 
16 with open('./test-requirements.txt') as test_reqs_txt:
17     test_requirements = [line for line in test_reqs_txt]
18 with open(requirements_file) as requirements_txt:
19     requirements = [line for line in requirements_txt]
20 
21 setup(
22     name="docker-py",
23     version=version,
24     description="Python client for Docker.",
25     packages=['docker', 'docker.auth', 'docker.unixconn', 'docker.utils',
26               'docker.ssladapter'],
27     install_requires=requirements + test_requirements,
28     zip_safe=False,
29     test_suite='tests',
30     classifiers=[
31         'Development Status :: 4 - Beta',
32         'Environment :: Other Environment',
33         'Intended Audience :: Developers',
34         'Operating System :: OS Independent',
35         'Programming Language :: Python',
36         'Programming Language :: Python :: 2.6',
37         'Programming Language :: Python :: 2.7',
38         'Programming Language :: Python :: 3.2',
39         'Programming Language :: Python :: 3.3',
40         'Programming Language :: Python :: 3.4',
41         'Topic :: Utilities',
42         'License :: OSI Approved :: Apache Software License',
43     ],
44 )
45
```
--- 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
@@ -6,17 +6,19 @@
 ROOT_DIR = os.path.dirname(__file__)
 SOURCE_DIR = os.path.join(ROOT_DIR)
 
-if sys.version_info[0] == 3:
-    requirements_file = './requirements3.txt'
-else:
-    requirements_file = './requirements.txt'
+requirements = [
+    'requests >= 2.2.1',
+    'six >= 1.3.0',
+]
+
+if sys.version_info[0] < 3:
+    requirements.append('websocket-client >= 0.11.0')
 
 exec(open('docker/version.py').read())
 
 with open('./test-requirements.txt') as test_reqs_txt:
     test_requirements = [line for line in test_reqs_txt]
-with open(requirements_file) as requirements_txt:
-    requirements = [line for line in requirements_txt]
+
 
 setup(
     name="docker-py",
@@ -24,7 +26,8 @@
     description="Python client for Docker.",
     packages=['docker', 'docker.auth', 'docker.unixconn', 'docker.utils',
               'docker.ssladapter'],
-    install_requires=requirements + test_requirements,
+    install_requires=requirements,
+    tests_require=test_requirements,
     zip_safe=False,
     test_suite='tests',
     classifiers=[

{"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -6,17 +6,19 @@\n ROOT_DIR = os.path.dirname(__file__)\n SOURCE_DIR = os.path.join(ROOT_DIR)\n \n-if sys.version_info[0] == 3:\n-    requirements_file = './requirements3.txt'\n-else:\n-    requirements_file = './requirements.txt'\n+requirements = [\n+    'requests >= 2.2.1',\n+    'six >= 1.3.0',\n+]\n+\n+if sys.version_info[0] < 3:\n+    requirements.append('websocket-client >= 0.11.0')\n \n exec(open('docker/version.py').read())\n \n with open('./test-requirements.txt') as test_reqs_txt:\n     test_requirements = [line for line in test_reqs_txt]\n-with open(requirements_file) as requirements_txt:\n-    requirements = [line for line in requirements_txt]\n+\n \n setup(\n     name=\"docker-py\",\n@@ -24,7 +26,8 @@\n     description=\"Python client for Docker.\",\n     packages=['docker', 'docker.auth', 'docker.unixconn', 'docker.utils',\n               'docker.ssladapter'],\n-    install_requires=requirements + test_requirements,\n+    install_requires=requirements,\n+    tests_require=test_requirements,\n     zip_safe=False,\n     test_suite='tests',\n     classifiers=[\n", "issue": "Please don't require exact versions in requirements\nIt's a good idea to pin requirements in applications.\n\nIt's a bad idea to pin requirements in libraries.  Doing so makes reusing libraries difficult.  If you have minimum requirements, that's fine.\n\n", "before_files": [{"content": "#!/usr/bin/env python\nimport os\nimport sys\nfrom setuptools import setup\n\nROOT_DIR = os.path.dirname(__file__)\nSOURCE_DIR = os.path.join(ROOT_DIR)\n\nif sys.version_info[0] == 3:\n    requirements_file = './requirements3.txt'\nelse:\n    requirements_file = './requirements.txt'\n\nexec(open('docker/version.py').read())\n\nwith open('./test-requirements.txt') as test_reqs_txt:\n    test_requirements = [line for line in test_reqs_txt]\nwith open(requirements_file) as requirements_txt:\n    requirements = [line for line in requirements_txt]\n\nsetup(\n    name=\"docker-py\",\n    version=version,\n    description=\"Python client for Docker.\",\n    packages=['docker', 'docker.auth', 'docker.unixconn', 'docker.utils',\n              'docker.ssladapter'],\n    install_requires=requirements + test_requirements,\n    zip_safe=False,\n    test_suite='tests',\n    classifiers=[\n        'Development Status :: 4 - Beta',\n        'Environment :: Other Environment',\n        'Intended Audience :: Developers',\n        'Operating System :: OS Independent',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 2.6',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3.2',\n        'Programming Language :: Python :: 3.3',\n        'Programming Language :: Python :: 3.4',\n        'Topic :: Utilities',\n        'License :: OSI Approved :: Apache Software License',\n    ],\n)\n", "path": "setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\nimport os\nimport sys\nfrom setuptools import setup\n\nROOT_DIR = os.path.dirname(__file__)\nSOURCE_DIR = os.path.join(ROOT_DIR)\n\nrequirements = [\n    'requests >= 2.2.1',\n    'six >= 1.3.0',\n]\n\nif sys.version_info[0] < 3:\n    requirements.append('websocket-client >= 0.11.0')\n\nexec(open('docker/version.py').read())\n\nwith open('./test-requirements.txt') as test_reqs_txt:\n    test_requirements = [line for line in test_reqs_txt]\n\n\nsetup(\n    name=\"docker-py\",\n    version=version,\n    description=\"Python client for Docker.\",\n    packages=['docker', 'docker.auth', 'docker.unixconn', 'docker.utils',\n              'docker.ssladapter'],\n    install_requires=requirements,\n    tests_require=test_requirements,\n    zip_safe=False,\n    test_suite='tests',\n    classifiers=[\n        'Development Status :: 4 - Beta',\n        'Environment :: Other Environment',\n        'Intended Audience :: Developers',\n        'Operating System :: OS Independent',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 2.6',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3.2',\n        'Programming Language :: Python :: 3.3',\n        'Programming Language :: Python :: 3.4',\n        'Topic :: Utilities',\n        'License :: OSI Approved :: Apache Software License',\n    ],\n)\n", "path": "setup.py"}]}