We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Instructions for local development are incomplete.
When executing the line:

```
python setup.py test
```

as directed, I get the following error:

```
running test
Traceback (most recent call last):
  File "setup.py", line 111, in <module>
    tests_require=test_requirements
  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "setup.py", line 60, in run
    import pytest
ImportError: No module named pytest
```

I'm not sure what you are supposed to do to install the 'tests_require' dependencies.


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `cookiecutter/compat.py`
Content:
```
1 import os
2 import sys
3 
4 PY3 = sys.version_info[0] == 3
5 OLD_PY2 = sys.version_info[:2] < (2, 7)
6 
7 
8 if PY3:  # pragma: no cover
9     input_str = 'builtins.input'
10     iteritems = lambda d: iter(d.items())
11     from unittest.mock import patch
12     from io import StringIO
13 
14 
15 else:  # pragma: no cover
16     from __builtin__ import raw_input
17     input = raw_input
18     input_str = '__builtin__.raw_input'
19     iteritems = lambda d: d.iteritems()
20     from mock import patch
21     from cStringIO import StringIO
22 
23 
24 if PY3:  # Forced testing
25 
26     from shutil import which
27 
28 else:  # Forced testing
29 
30     def is_exe(program):
31         """
32         Returns whether or not a file is an executable.
33         """
34         return os.path.isfile(program) and os.access(program, os.X_OK)
35 
36     def which(cmd, mode=os.F_OK | os.X_OK, path=None):
37         """Given a command, mode, and a PATH string, return the path which
38         conforms to the given mode on the PATH, or None if there is no such
39         file.
40         `mode` defaults to os.F_OK | os.X_OK. `path` defaults to the result
41         of os.environ.get("PATH"), or can be overridden with a custom search
42         path.
43 
44         Note: This function was backported from the Python 3 source code.
45         """
46         # Check that a given file can be accessed with the correct mode.
47         # Additionally check that `file` is not a directory, as on Windows
48         # directories pass the os.access check.
49         def _access_check(fn, mode):
50             return (os.path.exists(fn) and os.access(fn, mode) and
51                     not os.path.isdir(fn))
52 
53         # If we're given a path with a directory part, look it up directly
54         # rather than referring to PATH directories. This includes checking
55         # relative to the current directory, e.g. ./script
56         if os.path.dirname(cmd):
57             if _access_check(cmd, mode):
58                 return cmd
59             return None
60 
61         if path is None:
62             path = os.environ.get("PATH", os.defpath)
63         if not path:
64             return None
65         path = path.split(os.pathsep)
66 
67         if sys.platform == "win32":
68             # The current directory takes precedence on Windows.
69             if os.curdir not in path:
70                 path.insert(0, os.curdir)
71 
72             # PATHEXT is necessary to check on Windows.
73             pathext = os.environ.get("PATHEXT", "").split(os.pathsep)
74             # See if the given file matches any of the expected path
75             # extensions. This will allow us to short circuit when given
76             # "python.exe". If it does match, only test that one, otherwise we
77             # have to try others.
78             if any(cmd.lower().endswith(ext.lower()) for ext in pathext):
79                 files = [cmd]
80             else:
81                 files = [cmd + ext for ext in pathext]
82         else:
83             # On other platforms you don't have things like PATHEXT to tell you
84             # what file suffixes are executable, so just pass on cmd as-is.
85             files = [cmd]
86 
87         seen = set()
88         for dir in path:
89             normdir = os.path.normcase(dir)
90             if normdir not in seen:
91                 seen.add(normdir)
92                 for thefile in files:
93                     name = os.path.join(dir, thefile)
94                     if _access_check(name, mode):
95                         return name
96         return None
97 
98 
99 def is_string(obj):
100     """Determine if an object is a string."""
101     return isinstance(obj, str if PY3 else basestring)
102 
103 
104 _hush_pyflakes = (patch, StringIO, which)
105
```

Path: `setup.py`
Content:
```
1 #!/usr/bin/env python
2 
3 import os
4 import sys
5 
6 try:
7     from setuptools import setup, Command
8 except ImportError:
9     from distutils.core import setup, Command
10 
11 version = "1.0.0"
12 
13 if sys.argv[-1] == 'publish':
14     os.system('python setup.py sdist upload')
15     os.system('python setup.py bdist_wheel upload')
16     sys.exit()
17 
18 if sys.argv[-1] == 'tag':
19     os.system("git tag -a %s -m 'version %s'" % (version, version))
20     os.system("git push --tags")
21     sys.exit()
22 
23 with open('README.rst') as readme_file:
24     readme = readme_file.read()
25 
26 with open('HISTORY.rst') as history_file:
27     history = history_file.read().replace('.. :changelog:', '')
28 
29 requirements = [
30     'binaryornot>=0.2.0',
31     'jinja2>=2.7',
32     'PyYAML>=3.10',
33     'click<5.0'
34 ]
35 
36 test_requirements = [
37     'pytest'
38 ]
39 
40 # Add Python 2.7-specific dependencies
41 if sys.version < '3':
42     requirements.append('mock')
43 
44 # There are no Python 3-specific dependencies to add
45 
46 long_description = readme + '\n\n' + history
47 
48 if sys.argv[-1] == 'readme':
49     print(long_description)
50     sys.exit()
51 
52 
53 class PyTest(Command):
54     user_options = [('pytest-args=', 'a', "Arguments to pass to py.test")]
55 
56     def initialize_options(self):
57         self.pytest_args = []
58 
59     def finalize_options(self):
60         pass
61 
62     def run(self):
63         import pytest
64         errno = pytest.main(self.pytest_args)
65         sys.exit(errno)
66 
67 
68 setup(
69     name='cookiecutter',
70     version=version,
71     description=('A command-line utility that creates projects from project '
72                  'templates, e.g. creating a Python package project from a '
73                  'Python package project template.'),
74     long_description=long_description,
75     author='Audrey Roy',
76     author_email='audreyr@gmail.com',
77     url='https://github.com/audreyr/cookiecutter',
78     packages=[
79         'cookiecutter',
80     ],
81     package_dir={'cookiecutter': 'cookiecutter'},
82     entry_points={
83         'console_scripts': [
84             'cookiecutter = cookiecutter.cli:main',
85         ]
86     },
87     include_package_data=True,
88     install_requires=requirements,
89     license='BSD',
90     zip_safe=False,
91     classifiers=[
92         'Development Status :: 3 - Alpha',
93         'Environment :: Console',
94         'Intended Audience :: Developers',
95         'Natural Language :: English',
96         'License :: OSI Approved :: BSD License',
97         'Programming Language :: Python',
98         'Programming Language :: Python :: 2',
99         'Programming Language :: Python :: 2.7',
100         'Programming Language :: Python :: 3',
101         'Programming Language :: Python :: 3.3',
102         'Programming Language :: Python :: 3.4',
103         'Programming Language :: Python :: Implementation :: CPython',
104         'Programming Language :: Python :: Implementation :: PyPy',
105         'Topic :: Software Development',
106     ],
107     keywords=(
108         'cookiecutter, Python, projects, project templates, Jinja2, '
109         'skeleton, scaffolding, project directory, setup.py, package, '
110         'packaging'
111     ),
112     cmdclass = {'test': PyTest},
113     test_suite='tests',
114     tests_require=test_requirements
115 )
116
```
--- 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/cookiecutter/compat.py b/cookiecutter/compat.py
--- a/cookiecutter/compat.py
+++ b/cookiecutter/compat.py
@@ -8,7 +8,6 @@
 if PY3:  # pragma: no cover
     input_str = 'builtins.input'
     iteritems = lambda d: iter(d.items())
-    from unittest.mock import patch
     from io import StringIO
 
 
@@ -17,7 +16,6 @@
     input = raw_input
     input_str = '__builtin__.raw_input'
     iteritems = lambda d: d.iteritems()
-    from mock import patch
     from cStringIO import StringIO
 
 
@@ -101,4 +99,4 @@
     return isinstance(obj, str if PY3 else basestring)
 
 
-_hush_pyflakes = (patch, StringIO, which)
+_hush_pyflakes = (StringIO, which)
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -4,9 +4,9 @@
 import sys
 
 try:
-    from setuptools import setup, Command
+    from setuptools import setup
 except ImportError:
-    from distutils.core import setup, Command
+    from distutils.core import setup
 
 version = "1.0.0"
 
@@ -33,16 +33,6 @@
     'click<5.0'
 ]
 
-test_requirements = [
-    'pytest'
-]
-
-# Add Python 2.7-specific dependencies
-if sys.version < '3':
-    requirements.append('mock')
-
-# There are no Python 3-specific dependencies to add
-
 long_description = readme + '\n\n' + history
 
 if sys.argv[-1] == 'readme':
@@ -50,21 +40,6 @@
     sys.exit()
 
 
-class PyTest(Command):
-    user_options = [('pytest-args=', 'a', "Arguments to pass to py.test")]
-
-    def initialize_options(self):
-        self.pytest_args = []
-
-    def finalize_options(self):
-        pass
-
-    def run(self):
-        import pytest
-        errno = pytest.main(self.pytest_args)
-        sys.exit(errno)
-
-
 setup(
     name='cookiecutter',
     version=version,
@@ -109,7 +84,4 @@
         'skeleton, scaffolding, project directory, setup.py, package, '
         'packaging'
     ),
-    cmdclass = {'test': PyTest},
-    test_suite='tests',
-    tests_require=test_requirements
 )

{"golden_diff": "diff --git a/cookiecutter/compat.py b/cookiecutter/compat.py\n--- a/cookiecutter/compat.py\n+++ b/cookiecutter/compat.py\n@@ -8,7 +8,6 @@\n if PY3:  # pragma: no cover\n     input_str = 'builtins.input'\n     iteritems = lambda d: iter(d.items())\n-    from unittest.mock import patch\n     from io import StringIO\n \n \n@@ -17,7 +16,6 @@\n     input = raw_input\n     input_str = '__builtin__.raw_input'\n     iteritems = lambda d: d.iteritems()\n-    from mock import patch\n     from cStringIO import StringIO\n \n \n@@ -101,4 +99,4 @@\n     return isinstance(obj, str if PY3 else basestring)\n \n \n-_hush_pyflakes = (patch, StringIO, which)\n+_hush_pyflakes = (StringIO, which)\ndiff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -4,9 +4,9 @@\n import sys\n \n try:\n-    from setuptools import setup, Command\n+    from setuptools import setup\n except ImportError:\n-    from distutils.core import setup, Command\n+    from distutils.core import setup\n \n version = \"1.0.0\"\n \n@@ -33,16 +33,6 @@\n     'click<5.0'\n ]\n \n-test_requirements = [\n-    'pytest'\n-]\n-\n-# Add Python 2.7-specific dependencies\n-if sys.version < '3':\n-    requirements.append('mock')\n-\n-# There are no Python 3-specific dependencies to add\n-\n long_description = readme + '\\n\\n' + history\n \n if sys.argv[-1] == 'readme':\n@@ -50,21 +40,6 @@\n     sys.exit()\n \n \n-class PyTest(Command):\n-    user_options = [('pytest-args=', 'a', \"Arguments to pass to py.test\")]\n-\n-    def initialize_options(self):\n-        self.pytest_args = []\n-\n-    def finalize_options(self):\n-        pass\n-\n-    def run(self):\n-        import pytest\n-        errno = pytest.main(self.pytest_args)\n-        sys.exit(errno)\n-\n-\n setup(\n     name='cookiecutter',\n     version=version,\n@@ -109,7 +84,4 @@\n         'skeleton, scaffolding, project directory, setup.py, package, '\n         'packaging'\n     ),\n-    cmdclass = {'test': PyTest},\n-    test_suite='tests',\n-    tests_require=test_requirements\n )\n", "issue": "Instructions for local development are incomplete.\nWhen executing the line:\n\n```\npython setup.py test\n```\n\nas directed, I get the following error:\n\n```\nrunning test\nTraceback (most recent call last):\n  File \"setup.py\", line 111, in <module>\n    tests_require=test_requirements\n  File \"/usr/lib/python2.7/distutils/core.py\", line 151, in setup\n    dist.run_commands()\n  File \"/usr/lib/python2.7/distutils/dist.py\", line 953, in run_commands\n    self.run_command(cmd)\n  File \"/usr/lib/python2.7/distutils/dist.py\", line 972, in run_command\n    cmd_obj.run()\n  File \"setup.py\", line 60, in run\n    import pytest\nImportError: No module named pytest\n```\n\nI'm not sure what you are supposed to do to install the 'tests_require' dependencies.\n\n", "before_files": [{"content": "import os\nimport sys\n\nPY3 = sys.version_info[0] == 3\nOLD_PY2 = sys.version_info[:2] < (2, 7)\n\n\nif PY3:  # pragma: no cover\n    input_str = 'builtins.input'\n    iteritems = lambda d: iter(d.items())\n    from unittest.mock import patch\n    from io import StringIO\n\n\nelse:  # pragma: no cover\n    from __builtin__ import raw_input\n    input = raw_input\n    input_str = '__builtin__.raw_input'\n    iteritems = lambda d: d.iteritems()\n    from mock import patch\n    from cStringIO import StringIO\n\n\nif PY3:  # Forced testing\n\n    from shutil import which\n\nelse:  # Forced testing\n\n    def is_exe(program):\n        \"\"\"\n        Returns whether or not a file is an executable.\n        \"\"\"\n        return os.path.isfile(program) and os.access(program, os.X_OK)\n\n    def which(cmd, mode=os.F_OK | os.X_OK, path=None):\n        \"\"\"Given a command, mode, and a PATH string, return the path which\n        conforms to the given mode on the PATH, or None if there is no such\n        file.\n        `mode` defaults to os.F_OK | os.X_OK. `path` defaults to the result\n        of os.environ.get(\"PATH\"), or can be overridden with a custom search\n        path.\n\n        Note: This function was backported from the Python 3 source code.\n        \"\"\"\n        # Check that a given file can be accessed with the correct mode.\n        # Additionally check that `file` is not a directory, as on Windows\n        # directories pass the os.access check.\n        def _access_check(fn, mode):\n            return (os.path.exists(fn) and os.access(fn, mode) and\n                    not os.path.isdir(fn))\n\n        # If we're given a path with a directory part, look it up directly\n        # rather than referring to PATH directories. This includes checking\n        # relative to the current directory, e.g. ./script\n        if os.path.dirname(cmd):\n            if _access_check(cmd, mode):\n                return cmd\n            return None\n\n        if path is None:\n            path = os.environ.get(\"PATH\", os.defpath)\n        if not path:\n            return None\n        path = path.split(os.pathsep)\n\n        if sys.platform == \"win32\":\n            # The current directory takes precedence on Windows.\n            if os.curdir not in path:\n                path.insert(0, os.curdir)\n\n            # PATHEXT is necessary to check on Windows.\n            pathext = os.environ.get(\"PATHEXT\", \"\").split(os.pathsep)\n            # See if the given file matches any of the expected path\n            # extensions. This will allow us to short circuit when given\n            # \"python.exe\". If it does match, only test that one, otherwise we\n            # have to try others.\n            if any(cmd.lower().endswith(ext.lower()) for ext in pathext):\n                files = [cmd]\n            else:\n                files = [cmd + ext for ext in pathext]\n        else:\n            # On other platforms you don't have things like PATHEXT to tell you\n            # what file suffixes are executable, so just pass on cmd as-is.\n            files = [cmd]\n\n        seen = set()\n        for dir in path:\n            normdir = os.path.normcase(dir)\n            if normdir not in seen:\n                seen.add(normdir)\n                for thefile in files:\n                    name = os.path.join(dir, thefile)\n                    if _access_check(name, mode):\n                        return name\n        return None\n\n\ndef is_string(obj):\n    \"\"\"Determine if an object is a string.\"\"\"\n    return isinstance(obj, str if PY3 else basestring)\n\n\n_hush_pyflakes = (patch, StringIO, which)\n", "path": "cookiecutter/compat.py"}, {"content": "#!/usr/bin/env python\n\nimport os\nimport sys\n\ntry:\n    from setuptools import setup, Command\nexcept ImportError:\n    from distutils.core import setup, Command\n\nversion = \"1.0.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 open('README.rst') as readme_file:\n    readme = readme_file.read()\n\nwith open('HISTORY.rst') as history_file:\n    history = history_file.read().replace('.. :changelog:', '')\n\nrequirements = [\n    'binaryornot>=0.2.0',\n    'jinja2>=2.7',\n    'PyYAML>=3.10',\n    'click<5.0'\n]\n\ntest_requirements = [\n    'pytest'\n]\n\n# Add Python 2.7-specific dependencies\nif sys.version < '3':\n    requirements.append('mock')\n\n# There are no Python 3-specific dependencies to add\n\nlong_description = readme + '\\n\\n' + history\n\nif sys.argv[-1] == 'readme':\n    print(long_description)\n    sys.exit()\n\n\nclass PyTest(Command):\n    user_options = [('pytest-args=', 'a', \"Arguments to pass to py.test\")]\n\n    def initialize_options(self):\n        self.pytest_args = []\n\n    def finalize_options(self):\n        pass\n\n    def run(self):\n        import pytest\n        errno = pytest.main(self.pytest_args)\n        sys.exit(errno)\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=long_description,\n    author='Audrey Roy',\n    author_email='audreyr@gmail.com',\n    url='https://github.com/audreyr/cookiecutter',\n    packages=[\n        'cookiecutter',\n    ],\n    package_dir={'cookiecutter': 'cookiecutter'},\n    entry_points={\n        'console_scripts': [\n            'cookiecutter = cookiecutter.cli:main',\n        ]\n    },\n    include_package_data=True,\n    install_requires=requirements,\n    license='BSD',\n    zip_safe=False,\n    classifiers=[\n        'Development Status :: 3 - Alpha',\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.3',\n        'Programming Language :: Python :: 3.4',\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    cmdclass = {'test': PyTest},\n    test_suite='tests',\n    tests_require=test_requirements\n)\n", "path": "setup.py"}], "after_files": [{"content": "import os\nimport sys\n\nPY3 = sys.version_info[0] == 3\nOLD_PY2 = sys.version_info[:2] < (2, 7)\n\n\nif PY3:  # pragma: no cover\n    input_str = 'builtins.input'\n    iteritems = lambda d: iter(d.items())\n    from io import StringIO\n\n\nelse:  # pragma: no cover\n    from __builtin__ import raw_input\n    input = raw_input\n    input_str = '__builtin__.raw_input'\n    iteritems = lambda d: d.iteritems()\n    from cStringIO import StringIO\n\n\nif PY3:  # Forced testing\n\n    from shutil import which\n\nelse:  # Forced testing\n\n    def is_exe(program):\n        \"\"\"\n        Returns whether or not a file is an executable.\n        \"\"\"\n        return os.path.isfile(program) and os.access(program, os.X_OK)\n\n    def which(cmd, mode=os.F_OK | os.X_OK, path=None):\n        \"\"\"Given a command, mode, and a PATH string, return the path which\n        conforms to the given mode on the PATH, or None if there is no such\n        file.\n        `mode` defaults to os.F_OK | os.X_OK. `path` defaults to the result\n        of os.environ.get(\"PATH\"), or can be overridden with a custom search\n        path.\n\n        Note: This function was backported from the Python 3 source code.\n        \"\"\"\n        # Check that a given file can be accessed with the correct mode.\n        # Additionally check that `file` is not a directory, as on Windows\n        # directories pass the os.access check.\n        def _access_check(fn, mode):\n            return (os.path.exists(fn) and os.access(fn, mode) and\n                    not os.path.isdir(fn))\n\n        # If we're given a path with a directory part, look it up directly\n        # rather than referring to PATH directories. This includes checking\n        # relative to the current directory, e.g. ./script\n        if os.path.dirname(cmd):\n            if _access_check(cmd, mode):\n                return cmd\n            return None\n\n        if path is None:\n            path = os.environ.get(\"PATH\", os.defpath)\n        if not path:\n            return None\n        path = path.split(os.pathsep)\n\n        if sys.platform == \"win32\":\n            # The current directory takes precedence on Windows.\n            if os.curdir not in path:\n                path.insert(0, os.curdir)\n\n            # PATHEXT is necessary to check on Windows.\n            pathext = os.environ.get(\"PATHEXT\", \"\").split(os.pathsep)\n            # See if the given file matches any of the expected path\n            # extensions. This will allow us to short circuit when given\n            # \"python.exe\". If it does match, only test that one, otherwise we\n            # have to try others.\n            if any(cmd.lower().endswith(ext.lower()) for ext in pathext):\n                files = [cmd]\n            else:\n                files = [cmd + ext for ext in pathext]\n        else:\n            # On other platforms you don't have things like PATHEXT to tell you\n            # what file suffixes are executable, so just pass on cmd as-is.\n            files = [cmd]\n\n        seen = set()\n        for dir in path:\n            normdir = os.path.normcase(dir)\n            if normdir not in seen:\n                seen.add(normdir)\n                for thefile in files:\n                    name = os.path.join(dir, thefile)\n                    if _access_check(name, mode):\n                        return name\n        return None\n\n\ndef is_string(obj):\n    \"\"\"Determine if an object is a string.\"\"\"\n    return isinstance(obj, str if PY3 else basestring)\n\n\n_hush_pyflakes = (StringIO, which)\n", "path": "cookiecutter/compat.py"}, {"content": "#!/usr/bin/env python\n\nimport os\nimport sys\n\ntry:\n    from setuptools import setup\nexcept ImportError:\n    from distutils.core import setup\n\nversion = \"1.0.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 open('README.rst') as readme_file:\n    readme = readme_file.read()\n\nwith open('HISTORY.rst') as history_file:\n    history = history_file.read().replace('.. :changelog:', '')\n\nrequirements = [\n    'binaryornot>=0.2.0',\n    'jinja2>=2.7',\n    'PyYAML>=3.10',\n    'click<5.0'\n]\n\nlong_description = readme + '\\n\\n' + history\n\nif sys.argv[-1] == 'readme':\n    print(long_description)\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=long_description,\n    author='Audrey Roy',\n    author_email='audreyr@gmail.com',\n    url='https://github.com/audreyr/cookiecutter',\n    packages=[\n        'cookiecutter',\n    ],\n    package_dir={'cookiecutter': 'cookiecutter'},\n    entry_points={\n        'console_scripts': [\n            'cookiecutter = cookiecutter.cli:main',\n        ]\n    },\n    include_package_data=True,\n    install_requires=requirements,\n    license='BSD',\n    zip_safe=False,\n    classifiers=[\n        'Development Status :: 3 - Alpha',\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.3',\n        'Programming Language :: Python :: 3.4',\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"}]}