prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Packaging: Add python_requires to manifest
  Define our Python version requirements in our package manifest, as described here: https://packaging.python.org/guides/distributing-packages-using-setuptools/#python-requires
  
  --- 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 ###############################################################################
  3 # Copyright (c) 2013 Potential Ventures Ltd
  4 # Copyright (c) 2013 SolarFlare Communications Inc
  5 # All rights reserved.
  6 #
  7 # Redistribution and use in source and binary forms, with or without
  8 # modification, are permitted provided that the following conditions are met:
  9 #     * Redistributions of source code must retain the above copyright
  10 #       notice, this list of conditions and the following disclaimer.
  11 #     * Redistributions in binary form must reproduce the above copyright
  12 #       notice, this list of conditions and the following disclaimer in the
  13 #       documentation and/or other materials provided with the distribution.
  14 #     * Neither the name of Potential Ventures Ltd,
  15 #       SolarFlare Communications Inc nor the
  16 #       names of its contributors may be used to endorse or promote products
  17 #       derived from this software without specific prior written permission.
  18 #
  19 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
  20 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  21 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  22 # DISCLAIMED. IN NO EVENT SHALL POTENTIAL VENTURES LTD BE LIABLE FOR ANY
  23 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  24 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  25 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  26 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  28 # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  29 ###############################################################################
  30 
  31 from setuptools import setup
  32 from setuptools import find_packages
  33 from os import path, walk
  34 
  35 def read_file(fname):
  36     return open(path.join(path.dirname(__file__), fname)).read()
  37 
  38 def package_files(directory):
  39     paths = []
  40     for (fpath, directories, filenames) in walk(directory):
  41         for filename in filenames:
  42             paths.append(path.join('..', fpath, filename))
  43     return paths
  44 
  45 version = read_file('version')[8:].strip()
  46 
  47 setup(
  48     name='cocotb',
  49     version=version,
  50     description='cocotb is a coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python.',
  51     url='https://github.com/potentialventures/cocotb',
  52     license='BSD',
  53     long_description=read_file('README.md'),
  54     long_description_content_type='text/markdown',
  55     author='Chris Higgs, Stuart Hodgson',
  56     author_email='cocotb@potentialventures.com',
  57     install_requires=[],
  58     packages=find_packages(),
  59     include_package_data=True,
  60     package_data={'cocotb': package_files('cocotb/share')},
  61     entry_points={
  62         'console_scripts': [
  63             'cocotb-config=cocotb.config:main',
  64         ]
  65     },
  66     platforms='any',
  67     classifiers=[
  68         "Programming Language :: Python :: 2.7",
  69         "Programming Language :: Python :: 3",
  70         "License :: OSI Approved :: BSD License",
  71         "Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)",
  72     ],
  73 )
  74
  ```
  --- 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()
  
  ```
  
golden_diff: diff --git a/setup.py b/setup.py
  old mode 100644
  new mode 100755
  --- a/setup.py
  +++ b/setup.py
  @@ -55,6 +55,7 @@
       author='Chris Higgs, Stuart Hodgson',
       author_email='cocotb@potentialventures.com',
       install_requires=[],
  +    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',
       packages=find_packages(),
       include_package_data=True,
       package_data={'cocotb': package_files('cocotb/share')},
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\nold mode 100644\nnew mode 100755\n--- a/setup.py\n+++ b/setup.py\n@@ -55,6 +55,7 @@\n     author='Chris Higgs, Stuart Hodgson',\n     author_email='cocotb@potentialventures.com',\n     install_requires=[],\n+    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',\n     packages=find_packages(),\n     include_package_data=True,\n     package_data={'cocotb': package_files('cocotb/share')},\n", "issue": "Packaging: Add python_requires to manifest\nDefine our Python version requirements in our package manifest, as described here: https://packaging.python.org/guides/distributing-packages-using-setuptools/#python-requires\n", "before_files": [{"content": "#!/usr/bin/env python\n###############################################################################\n# Copyright (c) 2013 Potential Ventures Ltd\n# Copyright (c) 2013 SolarFlare Communications Inc\n# All rights reserved.\n#\n# Redistribution and use in source and binary forms, with or without\n# modification, are permitted provided that the following conditions are met:\n#     * Redistributions of source code must retain the above copyright\n#       notice, this list of conditions and the following disclaimer.\n#     * Redistributions in binary form must reproduce the above copyright\n#       notice, this list of conditions and the following disclaimer in the\n#       documentation and/or other materials provided with the distribution.\n#     * Neither the name of Potential Ventures Ltd,\n#       SolarFlare Communications Inc nor the\n#       names of its contributors may be used to endorse or promote products\n#       derived from this software without specific prior written permission.\n#\n# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n# DISCLAIMED. IN NO EVENT SHALL POTENTIAL VENTURES LTD BE LIABLE FOR ANY\n# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n###############################################################################\n\nfrom setuptools import setup\nfrom setuptools import find_packages\nfrom os import path, walk\n\ndef read_file(fname):\n    return open(path.join(path.dirname(__file__), fname)).read()\n\ndef package_files(directory):\n    paths = []\n    for (fpath, directories, filenames) in walk(directory):\n        for filename in filenames:\n            paths.append(path.join('..', fpath, filename))\n    return paths\n\nversion = read_file('version')[8:].strip()\n\nsetup(\n    name='cocotb',\n    version=version,\n    description='cocotb is a coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python.',\n    url='https://github.com/potentialventures/cocotb',\n    license='BSD',\n    long_description=read_file('README.md'),\n    long_description_content_type='text/markdown',\n    author='Chris Higgs, Stuart Hodgson',\n    author_email='cocotb@potentialventures.com',\n    install_requires=[],\n    packages=find_packages(),\n    include_package_data=True,\n    package_data={'cocotb': package_files('cocotb/share')},\n    entry_points={\n        'console_scripts': [\n            'cocotb-config=cocotb.config:main',\n        ]\n    },\n    platforms='any',\n    classifiers=[\n        \"Programming Language :: Python :: 2.7\",\n        \"Programming Language :: Python :: 3\",\n        \"License :: OSI Approved :: BSD License\",\n        \"Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)\",\n    ],\n)\n", "path": "setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\n###############################################################################\n# Copyright (c) 2013 Potential Ventures Ltd\n# Copyright (c) 2013 SolarFlare Communications Inc\n# All rights reserved.\n#\n# Redistribution and use in source and binary forms, with or without\n# modification, are permitted provided that the following conditions are met:\n#     * Redistributions of source code must retain the above copyright\n#       notice, this list of conditions and the following disclaimer.\n#     * Redistributions in binary form must reproduce the above copyright\n#       notice, this list of conditions and the following disclaimer in the\n#       documentation and/or other materials provided with the distribution.\n#     * Neither the name of Potential Ventures Ltd,\n#       SolarFlare Communications Inc nor the\n#       names of its contributors may be used to endorse or promote products\n#       derived from this software without specific prior written permission.\n#\n# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n# DISCLAIMED. IN NO EVENT SHALL POTENTIAL VENTURES LTD BE LIABLE FOR ANY\n# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n###############################################################################\n\nfrom setuptools import setup\nfrom setuptools import find_packages\nfrom os import path, walk\n\ndef read_file(fname):\n    return open(path.join(path.dirname(__file__), fname)).read()\n\ndef package_files(directory):\n    paths = []\n    for (fpath, directories, filenames) in walk(directory):\n        for filename in filenames:\n            paths.append(path.join('..', fpath, filename))\n    return paths\n\nversion = read_file('version')[8:].strip()\n\nsetup(\n    name='cocotb',\n    version=version,\n    description='cocotb is a coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python.',\n    url='https://github.com/potentialventures/cocotb',\n    license='BSD',\n    long_description=read_file('README.md'),\n    long_description_content_type='text/markdown',\n    author='Chris Higgs, Stuart Hodgson',\n    author_email='cocotb@potentialventures.com',\n    install_requires=[],\n    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',\n    packages=find_packages(),\n    include_package_data=True,\n    package_data={'cocotb': package_files('cocotb/share')},\n    entry_points={\n        'console_scripts': [\n            'cocotb-config=cocotb.config:main',\n        ]\n    },\n    platforms='any',\n    classifiers=[\n        \"Programming Language :: Python :: 2.7\",\n        \"Programming Language :: Python :: 3\",\n        \"License :: OSI Approved :: BSD License\",\n        \"Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)\",\n    ],\n)\n", "path": "setup.py"}]}