prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Add support of python 3.8
  - [x] Add to travis
  - [x] Add to appveyor
  - [x] Add to tox
  - [x] Add to setup.py
  - [x] Add to docs
  
  --- 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 # -*- coding: utf-8 -*-
  3 
  4 """cookiecutter distutils configuration"""
  5 
  6 import os
  7 import io
  8 import sys
  9 
  10 from setuptools import setup
  11 
  12 version = "1.7.0"
  13 
  14 if sys.argv[-1] == 'publish':
  15     os.system('python setup.py sdist upload')
  16     os.system('python setup.py bdist_wheel upload')
  17     sys.exit()
  18 
  19 if sys.argv[-1] == 'tag':
  20     os.system("git tag -a %s -m 'version %s'" % (version, version))
  21     os.system("git push --tags")
  22     sys.exit()
  23 
  24 with io.open('README.md', 'r', encoding='utf-8') as readme_file:
  25     readme = readme_file.read()
  26 
  27 requirements = [
  28     'binaryornot>=0.2.0',
  29     'jinja2>=2.7',
  30     'click>=7.0',
  31     'poyo>=0.1.0',
  32     'jinja2-time>=0.1.0',
  33     'requests>=2.18.0',
  34     'six>=1.10',
  35 ]
  36 
  37 if sys.argv[-1] == 'readme':
  38     print(readme)
  39     sys.exit()
  40 
  41 
  42 setup(
  43     name='cookiecutter',
  44     version=version,
  45     description=('A command-line utility that creates projects from project '
  46                  'templates, e.g. creating a Python package project from a '
  47                  'Python package project template.'),
  48     long_description=readme,
  49     long_description_content_type='text/markdown',
  50     author='Audrey Roy',
  51     author_email='audreyr@gmail.com',
  52     url='https://github.com/cookiecutter/cookiecutter',
  53     packages=[
  54         'cookiecutter',
  55     ],
  56     package_dir={'cookiecutter': 'cookiecutter'},
  57     entry_points={
  58         'console_scripts': [
  59             'cookiecutter = cookiecutter.__main__:main',
  60         ]
  61     },
  62     include_package_data=True,
  63     python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',
  64     install_requires=requirements,
  65     extras_require={
  66         ':python_version<"3.3"': ['whichcraft>=0.4.0'],
  67     },
  68     license='BSD',
  69     zip_safe=False,
  70     classifiers=[
  71         'Development Status :: 5 - Production/Stable',
  72         'Environment :: Console',
  73         'Intended Audience :: Developers',
  74         'Natural Language :: English',
  75         'License :: OSI Approved :: BSD License',
  76         'Programming Language :: Python',
  77         'Programming Language :: Python :: 2',
  78         'Programming Language :: Python :: 2.7',
  79         'Programming Language :: Python :: 3',
  80         'Programming Language :: Python :: 3.5',
  81         'Programming Language :: Python :: 3.6',
  82         'Programming Language :: Python :: 3.7',
  83         'Programming Language :: Python :: Implementation :: CPython',
  84         'Programming Language :: Python :: Implementation :: PyPy',
  85         'Topic :: Software Development',
  86     ],
  87     keywords=(
  88         'cookiecutter, Python, projects, project templates, Jinja2, '
  89         'skeleton, scaffolding, project directory, setup.py, package, '
  90         'packaging'
  91     ),
  92 )
  93
  ```
  --- 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
  --- a/setup.py
  +++ b/setup.py
  @@ -68,21 +68,22 @@
       license='BSD',
       zip_safe=False,
       classifiers=[
  -        'Development Status :: 5 - Production/Stable',
  -        'Environment :: Console',
  -        'Intended Audience :: Developers',
  -        'Natural Language :: English',
  -        'License :: OSI Approved :: BSD License',
  -        'Programming Language :: Python',
  -        'Programming Language :: Python :: 2',
  -        'Programming Language :: Python :: 2.7',
  -        'Programming Language :: Python :: 3',
  -        'Programming Language :: Python :: 3.5',
  -        'Programming Language :: Python :: 3.6',
  -        'Programming Language :: Python :: 3.7',
  -        'Programming Language :: Python :: Implementation :: CPython',
  -        'Programming Language :: Python :: Implementation :: PyPy',
  -        'Topic :: Software Development',
  +        "Development Status :: 5 - Production/Stable",
  +        "Environment :: Console",
  +        "Intended Audience :: Developers",
  +        "Natural Language :: English",
  +        "License :: OSI Approved :: BSD License",
  +        "Programming Language :: Python",
  +        "Programming Language :: Python :: 2",
  +        "Programming Language :: Python :: 2.7",
  +        "Programming Language :: Python :: 3",
  +        "Programming Language :: Python :: 3.5",
  +        "Programming Language :: Python :: 3.6",
  +        "Programming Language :: Python :: 3.7",
  +        "Programming Language :: Python :: 3.8",
  +        "Programming Language :: Python :: Implementation :: CPython",
  +        "Programming Language :: Python :: Implementation :: PyPy",
  +        "Topic :: Software Development",
       ],
       keywords=(
           'cookiecutter, Python, projects, project templates, Jinja2, '
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -68,21 +68,22 @@\n     license='BSD',\n     zip_safe=False,\n     classifiers=[\n-        'Development Status :: 5 - Production/Stable',\n-        'Environment :: Console',\n-        'Intended Audience :: Developers',\n-        'Natural Language :: English',\n-        'License :: OSI Approved :: BSD License',\n-        'Programming Language :: Python',\n-        'Programming Language :: Python :: 2',\n-        'Programming Language :: Python :: 2.7',\n-        'Programming Language :: Python :: 3',\n-        'Programming Language :: Python :: 3.5',\n-        'Programming Language :: Python :: 3.6',\n-        'Programming Language :: Python :: 3.7',\n-        'Programming Language :: Python :: Implementation :: CPython',\n-        'Programming Language :: Python :: Implementation :: PyPy',\n-        'Topic :: Software Development',\n+        \"Development Status :: 5 - Production/Stable\",\n+        \"Environment :: Console\",\n+        \"Intended Audience :: Developers\",\n+        \"Natural Language :: English\",\n+        \"License :: OSI Approved :: BSD License\",\n+        \"Programming Language :: Python\",\n+        \"Programming Language :: Python :: 2\",\n+        \"Programming Language :: Python :: 2.7\",\n+        \"Programming Language :: Python :: 3\",\n+        \"Programming Language :: Python :: 3.5\",\n+        \"Programming Language :: Python :: 3.6\",\n+        \"Programming Language :: Python :: 3.7\",\n+        \"Programming Language :: Python :: 3.8\",\n+        \"Programming Language :: Python :: Implementation :: CPython\",\n+        \"Programming Language :: Python :: Implementation :: PyPy\",\n+        \"Topic :: Software Development\",\n     ],\n     keywords=(\n         'cookiecutter, Python, projects, project templates, Jinja2, '\n", "issue": "Add support of python 3.8\n- [x] Add to travis\r\n- [x] Add to appveyor\r\n- [x] Add to tox\r\n- [x] Add to setup.py\r\n- [x] Add to docs\n", "before_files": [{"content": "#!/usr/bin/env python\n# -*- coding: utf-8 -*-\n\n\"\"\"cookiecutter distutils configuration\"\"\"\n\nimport os\nimport io\nimport sys\n\nfrom setuptools import setup\n\nversion = \"1.7.0\"\n\nif sys.argv[-1] == 'publish':\n    os.system('python setup.py sdist upload')\n    os.system('python setup.py bdist_wheel upload')\n    sys.exit()\n\nif sys.argv[-1] == 'tag':\n    os.system(\"git tag -a %s -m 'version %s'\" % (version, version))\n    os.system(\"git push --tags\")\n    sys.exit()\n\nwith io.open('README.md', 'r', encoding='utf-8') as readme_file:\n    readme = readme_file.read()\n\nrequirements = [\n    'binaryornot>=0.2.0',\n    'jinja2>=2.7',\n    'click>=7.0',\n    'poyo>=0.1.0',\n    'jinja2-time>=0.1.0',\n    'requests>=2.18.0',\n    'six>=1.10',\n]\n\nif sys.argv[-1] == 'readme':\n    print(readme)\n    sys.exit()\n\n\nsetup(\n    name='cookiecutter',\n    version=version,\n    description=('A command-line utility that creates projects from project '\n                 'templates, e.g. creating a Python package project from a '\n                 'Python package project template.'),\n    long_description=readme,\n    long_description_content_type='text/markdown',\n    author='Audrey Roy',\n    author_email='audreyr@gmail.com',\n    url='https://github.com/cookiecutter/cookiecutter',\n    packages=[\n        'cookiecutter',\n    ],\n    package_dir={'cookiecutter': 'cookiecutter'},\n    entry_points={\n        'console_scripts': [\n            'cookiecutter = cookiecutter.__main__:main',\n        ]\n    },\n    include_package_data=True,\n    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',\n    install_requires=requirements,\n    extras_require={\n        ':python_version<\"3.3\"': ['whichcraft>=0.4.0'],\n    },\n    license='BSD',\n    zip_safe=False,\n    classifiers=[\n        'Development Status :: 5 - Production/Stable',\n        'Environment :: Console',\n        'Intended Audience :: Developers',\n        'Natural Language :: English',\n        'License :: OSI Approved :: BSD License',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 2',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3',\n        'Programming Language :: Python :: 3.5',\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: Implementation :: CPython',\n        'Programming Language :: Python :: Implementation :: PyPy',\n        'Topic :: Software Development',\n    ],\n    keywords=(\n        'cookiecutter, Python, projects, project templates, Jinja2, '\n        'skeleton, scaffolding, project directory, setup.py, package, '\n        'packaging'\n    ),\n)\n", "path": "setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\n# -*- coding: utf-8 -*-\n\n\"\"\"cookiecutter distutils configuration\"\"\"\n\nimport os\nimport io\nimport sys\n\nfrom setuptools import setup\n\nversion = \"1.7.0\"\n\nif sys.argv[-1] == 'publish':\n    os.system('python setup.py sdist upload')\n    os.system('python setup.py bdist_wheel upload')\n    sys.exit()\n\nif sys.argv[-1] == 'tag':\n    os.system(\"git tag -a %s -m 'version %s'\" % (version, version))\n    os.system(\"git push --tags\")\n    sys.exit()\n\nwith io.open('README.md', 'r', encoding='utf-8') as readme_file:\n    readme = readme_file.read()\n\nrequirements = [\n    'binaryornot>=0.2.0',\n    'jinja2>=2.7',\n    'click>=7.0',\n    'poyo>=0.1.0',\n    'jinja2-time>=0.1.0',\n    'requests>=2.18.0',\n    'six>=1.10',\n]\n\nif sys.argv[-1] == 'readme':\n    print(readme)\n    sys.exit()\n\n\nsetup(\n    name='cookiecutter',\n    version=version,\n    description=('A command-line utility that creates projects from project '\n                 'templates, e.g. creating a Python package project from a '\n                 'Python package project template.'),\n    long_description=readme,\n    long_description_content_type='text/markdown',\n    author='Audrey Roy',\n    author_email='audreyr@gmail.com',\n    url='https://github.com/cookiecutter/cookiecutter',\n    packages=[\n        'cookiecutter',\n    ],\n    package_dir={'cookiecutter': 'cookiecutter'},\n    entry_points={\n        'console_scripts': [\n            'cookiecutter = cookiecutter.__main__:main',\n        ]\n    },\n    include_package_data=True,\n    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',\n    install_requires=requirements,\n    extras_require={\n        ':python_version<\"3.3\"': ['whichcraft>=0.4.0'],\n    },\n    license='BSD',\n    zip_safe=False,\n    classifiers=[\n        \"Development Status :: 5 - Production/Stable\",\n        \"Environment :: Console\",\n        \"Intended Audience :: Developers\",\n        \"Natural Language :: English\",\n        \"License :: OSI Approved :: BSD License\",\n        \"Programming Language :: Python\",\n        \"Programming Language :: Python :: 2\",\n        \"Programming Language :: Python :: 2.7\",\n        \"Programming Language :: Python :: 3\",\n        \"Programming Language :: Python :: 3.5\",\n        \"Programming Language :: Python :: 3.6\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: Implementation :: CPython\",\n        \"Programming Language :: Python :: Implementation :: PyPy\",\n        \"Topic :: Software Development\",\n    ],\n    keywords=(\n        'cookiecutter, Python, projects, project templates, Jinja2, '\n        'skeleton, scaffolding, project directory, setup.py, package, '\n        'packaging'\n    ),\n)\n", "path": "setup.py"}]}