We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Python 3.5 support
Luigi may already work with Python 3.5, but since the README doesn't mention it I thought I'd ask.

Does Luigi support Python 3.5?


--- 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 # Copyright (c) 2012 Spotify AB
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License"); you may not
4 # use this file except in compliance with the License. You may obtain a copy of
5 # the License at
6 #
7 # http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 # License for the specific language governing permissions and limitations under
13 # the License.
14 
15 import os
16 
17 from setuptools import setup
18 
19 
20 def get_static_files(path):
21     return [os.path.join(dirpath.replace("luigi/", ""), ext)
22             for (dirpath, dirnames, filenames) in os.walk(path)
23             for ext in ["*.html", "*.js", "*.css", "*.png",
24                         "*.eot", "*.svg", "*.ttf", "*.woff", "*.woff2"]]
25 
26 
27 luigi_package_data = sum(map(get_static_files, ["luigi/static", "luigi/templates"]), [])
28 
29 readme_note = """\
30 .. note::
31 
32    For the latest source, discussion, etc, please visit the
33    `GitHub repository <https://github.com/spotify/luigi>`_\n\n
34 """
35 
36 with open('README.rst') as fobj:
37     long_description = readme_note + fobj.read()
38 
39 install_requires = [
40     'tornado>=4.0,<5',
41     'python-daemon<3.0',
42 ]
43 
44 if os.environ.get('READTHEDOCS', None) == 'True':
45     # So that we can build documentation for luigi.db_task_history and luigi.contrib.sqla
46     install_requires.append('sqlalchemy')
47     # readthedocs don't like python-daemon, see #1342
48     install_requires.remove('python-daemon<3.0')
49 
50 setup(
51     name='luigi',
52     version='2.0.1',
53     description='Workflow mgmgt + task scheduling + dependency resolution',
54     long_description=long_description,
55     author='Erik Bernhardsson',
56     url='https://github.com/spotify/luigi',
57     license='Apache License 2.0',
58     packages=[
59         'luigi',
60         'luigi.contrib',
61         'luigi.contrib.hdfs',
62         'luigi.tools'
63     ],
64     package_data={
65         'luigi': luigi_package_data
66     },
67     entry_points={
68         'console_scripts': [
69             'luigi = luigi.cmdline:luigi_run',
70             'luigid = luigi.cmdline:luigid',
71             'luigi-grep = luigi.tools.luigi_grep:main',
72             'luigi-deps = luigi.tools.deps:main',
73             'luigi-migrate = luigi.tools.migrate:main'
74         ]
75     },
76     install_requires=install_requires,
77     classifiers=[
78         'Development Status :: 5 - Production/Stable',
79         'Environment :: Console',
80         'Environment :: Web Environment',
81         'Intended Audience :: Developers',
82         'Intended Audience :: System Administrators',
83         'License :: OSI Approved :: Apache Software License',
84         'Programming Language :: Python :: 2.7',
85         'Programming Language :: Python :: 3.3',
86         'Programming Language :: Python :: 3.4',
87         'Topic :: System :: Monitoring',
88     ],
89 )
90
```
--- 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
@@ -84,6 +84,7 @@
         'Programming Language :: Python :: 2.7',
         'Programming Language :: Python :: 3.3',
         'Programming Language :: Python :: 3.4',
+        'Programming Language :: Python :: 3.5',
         'Topic :: System :: Monitoring',
     ],
 )

{"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -84,6 +84,7 @@\n         'Programming Language :: Python :: 2.7',\n         'Programming Language :: Python :: 3.3',\n         'Programming Language :: Python :: 3.4',\n+        'Programming Language :: Python :: 3.5',\n         'Topic :: System :: Monitoring',\n     ],\n )\n", "issue": "Python 3.5 support\nLuigi may already work with Python 3.5, but since the README doesn't mention it I thought I'd ask.\n\nDoes Luigi support Python 3.5?\n\n", "before_files": [{"content": "# Copyright (c) 2012 Spotify AB\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\"); you may not\n# use this file except in compliance with the License. You may obtain a copy of\n# the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n# License for the specific language governing permissions and limitations under\n# the License.\n\nimport os\n\nfrom setuptools import setup\n\n\ndef get_static_files(path):\n    return [os.path.join(dirpath.replace(\"luigi/\", \"\"), ext)\n            for (dirpath, dirnames, filenames) in os.walk(path)\n            for ext in [\"*.html\", \"*.js\", \"*.css\", \"*.png\",\n                        \"*.eot\", \"*.svg\", \"*.ttf\", \"*.woff\", \"*.woff2\"]]\n\n\nluigi_package_data = sum(map(get_static_files, [\"luigi/static\", \"luigi/templates\"]), [])\n\nreadme_note = \"\"\"\\\n.. note::\n\n   For the latest source, discussion, etc, please visit the\n   `GitHub repository <https://github.com/spotify/luigi>`_\\n\\n\n\"\"\"\n\nwith open('README.rst') as fobj:\n    long_description = readme_note + fobj.read()\n\ninstall_requires = [\n    'tornado>=4.0,<5',\n    'python-daemon<3.0',\n]\n\nif os.environ.get('READTHEDOCS', None) == 'True':\n    # So that we can build documentation for luigi.db_task_history and luigi.contrib.sqla\n    install_requires.append('sqlalchemy')\n    # readthedocs don't like python-daemon, see #1342\n    install_requires.remove('python-daemon<3.0')\n\nsetup(\n    name='luigi',\n    version='2.0.1',\n    description='Workflow mgmgt + task scheduling + dependency resolution',\n    long_description=long_description,\n    author='Erik Bernhardsson',\n    url='https://github.com/spotify/luigi',\n    license='Apache License 2.0',\n    packages=[\n        'luigi',\n        'luigi.contrib',\n        'luigi.contrib.hdfs',\n        'luigi.tools'\n    ],\n    package_data={\n        'luigi': luigi_package_data\n    },\n    entry_points={\n        'console_scripts': [\n            'luigi = luigi.cmdline:luigi_run',\n            'luigid = luigi.cmdline:luigid',\n            'luigi-grep = luigi.tools.luigi_grep:main',\n            'luigi-deps = luigi.tools.deps:main',\n            'luigi-migrate = luigi.tools.migrate:main'\n        ]\n    },\n    install_requires=install_requires,\n    classifiers=[\n        'Development Status :: 5 - Production/Stable',\n        'Environment :: Console',\n        'Environment :: Web Environment',\n        'Intended Audience :: Developers',\n        'Intended Audience :: System Administrators',\n        'License :: OSI Approved :: Apache Software License',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3.3',\n        'Programming Language :: Python :: 3.4',\n        'Topic :: System :: Monitoring',\n    ],\n)\n", "path": "setup.py"}], "after_files": [{"content": "# Copyright (c) 2012 Spotify AB\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\"); you may not\n# use this file except in compliance with the License. You may obtain a copy of\n# the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\n# License for the specific language governing permissions and limitations under\n# the License.\n\nimport os\n\nfrom setuptools import setup\n\n\ndef get_static_files(path):\n    return [os.path.join(dirpath.replace(\"luigi/\", \"\"), ext)\n            for (dirpath, dirnames, filenames) in os.walk(path)\n            for ext in [\"*.html\", \"*.js\", \"*.css\", \"*.png\",\n                        \"*.eot\", \"*.svg\", \"*.ttf\", \"*.woff\", \"*.woff2\"]]\n\n\nluigi_package_data = sum(map(get_static_files, [\"luigi/static\", \"luigi/templates\"]), [])\n\nreadme_note = \"\"\"\\\n.. note::\n\n   For the latest source, discussion, etc, please visit the\n   `GitHub repository <https://github.com/spotify/luigi>`_\\n\\n\n\"\"\"\n\nwith open('README.rst') as fobj:\n    long_description = readme_note + fobj.read()\n\ninstall_requires = [\n    'tornado>=4.0,<5',\n    'python-daemon<3.0',\n]\n\nif os.environ.get('READTHEDOCS', None) == 'True':\n    # So that we can build documentation for luigi.db_task_history and luigi.contrib.sqla\n    install_requires.append('sqlalchemy')\n    # readthedocs don't like python-daemon, see #1342\n    install_requires.remove('python-daemon<3.0')\n\nsetup(\n    name='luigi',\n    version='2.0.1',\n    description='Workflow mgmgt + task scheduling + dependency resolution',\n    long_description=long_description,\n    author='Erik Bernhardsson',\n    url='https://github.com/spotify/luigi',\n    license='Apache License 2.0',\n    packages=[\n        'luigi',\n        'luigi.contrib',\n        'luigi.contrib.hdfs',\n        'luigi.tools'\n    ],\n    package_data={\n        'luigi': luigi_package_data\n    },\n    entry_points={\n        'console_scripts': [\n            'luigi = luigi.cmdline:luigi_run',\n            'luigid = luigi.cmdline:luigid',\n            'luigi-grep = luigi.tools.luigi_grep:main',\n            'luigi-deps = luigi.tools.deps:main',\n            'luigi-migrate = luigi.tools.migrate:main'\n        ]\n    },\n    install_requires=install_requires,\n    classifiers=[\n        'Development Status :: 5 - Production/Stable',\n        'Environment :: Console',\n        'Environment :: Web Environment',\n        'Intended Audience :: Developers',\n        'Intended Audience :: System Administrators',\n        'License :: OSI Approved :: Apache Software License',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3.3',\n        'Programming Language :: Python :: 3.4',\n        'Programming Language :: Python :: 3.5',\n        'Topic :: System :: Monitoring',\n    ],\n)\n", "path": "setup.py"}]}