We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
PKG: Add pre-commit, black and isort to setup.py


--- 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 import pathlib
4 import sys
5 
6 from setuptools import find_packages, setup
7 
8 import versioneer
9 
10 LONG_DESCRIPTION = """
11 Ibis is a productivity-centric Python big data framework.
12 
13 See http://docs.ibis-project.org
14 """
15 
16 VERSION = sys.version_info.major, sys.version_info.minor
17 
18 impala_requires = ['hdfs>=2.0.16', 'sqlalchemy', 'requests']
19 if VERSION == (3, 5):
20     impala_requires.append('impyla<0.14.2')
21 else:
22     impala_requires.append('impyla>=0.15.0')
23 
24 sqlite_requires = ['sqlalchemy']
25 postgres_requires = sqlite_requires + ['psycopg2']
26 mysql_requires = sqlite_requires + ['pymysql']
27 
28 if VERSION == (3, 5):
29     mapd_requires = ['pymapd>=0.8.3,<0.11.0']
30 else:
31     mapd_requires = ['pymapd>=0.12.0']
32 kerberos_requires = ['requests-kerberos']
33 visualization_requires = ['graphviz']
34 clickhouse_requires = ['clickhouse-driver>=0.0.8', 'clickhouse-cityhash']
35 bigquery_requires = ['google-cloud-bigquery>=1.0.0', 'pydata-google-auth']
36 hdf5_requires = ['tables>=3.0.0']
37 
38 if VERSION == (3, 5):
39     parquet_requires = ['pyarrow<0.12.0']
40 else:
41     parquet_requires = ['pyarrow>=0.12.0']
42 
43 all_requires = (
44     impala_requires
45     + postgres_requires
46     + mapd_requires
47     + mysql_requires
48     + kerberos_requires
49     + visualization_requires
50     + clickhouse_requires
51     + bigquery_requires
52     + hdf5_requires
53     + parquet_requires
54 )
55 
56 develop_requires = all_requires + ['click', 'flake8', 'mypy', 'pytest>=3']
57 
58 install_requires = [
59     line.strip()
60     for line in pathlib.Path(__file__)
61     .parent.joinpath('requirements.txt')
62     .read_text()
63     .splitlines()
64 ]
65 
66 setup(
67     name='ibis-framework',
68     url='https://github.com/ibis-project/ibis',
69     packages=find_packages(),
70     version=versioneer.get_version(),
71     cmdclass=versioneer.get_cmdclass(),
72     install_requires=install_requires,
73     python_requires='>=3.5',
74     extras_require={
75         'all': all_requires,
76         'develop': develop_requires,
77         'impala': impala_requires,
78         'kerberos': kerberos_requires,
79         'postgres': postgres_requires,
80         'mapd': mapd_requires,
81         'mysql': mysql_requires,
82         'sqlite': sqlite_requires,
83         'visualization': visualization_requires,
84         'clickhouse': clickhouse_requires,
85         'bigquery': bigquery_requires,
86         'hdf5': hdf5_requires,
87         'parquet': parquet_requires,
88     },
89     description="Productivity-centric Python Big Data Framework",
90     long_description=LONG_DESCRIPTION,
91     classifiers=[
92         'Development Status :: 4 - Beta',
93         'Operating System :: OS Independent',
94         'Intended Audience :: Science/Research',
95         'Programming Language :: Python',
96         'Programming Language :: Python :: 3',
97         'Topic :: Scientific/Engineering',
98     ],
99     license='Apache License, Version 2.0',
100     maintainer="Phillip Cloud",
101     maintainer_email="phillip.cloud@twosigma.com",
102 )
103
```
--- 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
@@ -53,7 +53,14 @@
     + parquet_requires
 )
 
-develop_requires = all_requires + ['click', 'flake8', 'mypy', 'pytest>=3']
+develop_requires = all_requires + [
+    'click',
+    'flake8',
+    'isort',
+    'mypy',
+    'pre-commit',
+    'pytest>=3',
+]
 
 install_requires = [
     line.strip()
@@ -73,7 +80,8 @@
     python_requires='>=3.5',
     extras_require={
         'all': all_requires,
-        'develop': develop_requires,
+        'develop:python_version > "3.5"': develop_requires + ['black'],
+        'develop:python_version == "3.5"': develop_requires,
         'impala': impala_requires,
         'kerberos': kerberos_requires,
         'postgres': postgres_requires,

{"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -53,7 +53,14 @@\n     + parquet_requires\n )\n \n-develop_requires = all_requires + ['click', 'flake8', 'mypy', 'pytest>=3']\n+develop_requires = all_requires + [\n+    'click',\n+    'flake8',\n+    'isort',\n+    'mypy',\n+    'pre-commit',\n+    'pytest>=3',\n+]\n \n install_requires = [\n     line.strip()\n@@ -73,7 +80,8 @@\n     python_requires='>=3.5',\n     extras_require={\n         'all': all_requires,\n-        'develop': develop_requires,\n+        'develop:python_version > \"3.5\"': develop_requires + ['black'],\n+        'develop:python_version == \"3.5\"': develop_requires,\n         'impala': impala_requires,\n         'kerberos': kerberos_requires,\n         'postgres': postgres_requires,\n", "issue": "PKG: Add pre-commit, black and isort to setup.py\n\n", "before_files": [{"content": "#!/usr/bin/env python\n\nimport pathlib\nimport sys\n\nfrom setuptools import find_packages, setup\n\nimport versioneer\n\nLONG_DESCRIPTION = \"\"\"\nIbis is a productivity-centric Python big data framework.\n\nSee http://docs.ibis-project.org\n\"\"\"\n\nVERSION = sys.version_info.major, sys.version_info.minor\n\nimpala_requires = ['hdfs>=2.0.16', 'sqlalchemy', 'requests']\nif VERSION == (3, 5):\n    impala_requires.append('impyla<0.14.2')\nelse:\n    impala_requires.append('impyla>=0.15.0')\n\nsqlite_requires = ['sqlalchemy']\npostgres_requires = sqlite_requires + ['psycopg2']\nmysql_requires = sqlite_requires + ['pymysql']\n\nif VERSION == (3, 5):\n    mapd_requires = ['pymapd>=0.8.3,<0.11.0']\nelse:\n    mapd_requires = ['pymapd>=0.12.0']\nkerberos_requires = ['requests-kerberos']\nvisualization_requires = ['graphviz']\nclickhouse_requires = ['clickhouse-driver>=0.0.8', 'clickhouse-cityhash']\nbigquery_requires = ['google-cloud-bigquery>=1.0.0', 'pydata-google-auth']\nhdf5_requires = ['tables>=3.0.0']\n\nif VERSION == (3, 5):\n    parquet_requires = ['pyarrow<0.12.0']\nelse:\n    parquet_requires = ['pyarrow>=0.12.0']\n\nall_requires = (\n    impala_requires\n    + postgres_requires\n    + mapd_requires\n    + mysql_requires\n    + kerberos_requires\n    + visualization_requires\n    + clickhouse_requires\n    + bigquery_requires\n    + hdf5_requires\n    + parquet_requires\n)\n\ndevelop_requires = all_requires + ['click', 'flake8', 'mypy', 'pytest>=3']\n\ninstall_requires = [\n    line.strip()\n    for line in pathlib.Path(__file__)\n    .parent.joinpath('requirements.txt')\n    .read_text()\n    .splitlines()\n]\n\nsetup(\n    name='ibis-framework',\n    url='https://github.com/ibis-project/ibis',\n    packages=find_packages(),\n    version=versioneer.get_version(),\n    cmdclass=versioneer.get_cmdclass(),\n    install_requires=install_requires,\n    python_requires='>=3.5',\n    extras_require={\n        'all': all_requires,\n        'develop': develop_requires,\n        'impala': impala_requires,\n        'kerberos': kerberos_requires,\n        'postgres': postgres_requires,\n        'mapd': mapd_requires,\n        'mysql': mysql_requires,\n        'sqlite': sqlite_requires,\n        'visualization': visualization_requires,\n        'clickhouse': clickhouse_requires,\n        'bigquery': bigquery_requires,\n        'hdf5': hdf5_requires,\n        'parquet': parquet_requires,\n    },\n    description=\"Productivity-centric Python Big Data Framework\",\n    long_description=LONG_DESCRIPTION,\n    classifiers=[\n        'Development Status :: 4 - Beta',\n        'Operating System :: OS Independent',\n        'Intended Audience :: Science/Research',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 3',\n        'Topic :: Scientific/Engineering',\n    ],\n    license='Apache License, Version 2.0',\n    maintainer=\"Phillip Cloud\",\n    maintainer_email=\"phillip.cloud@twosigma.com\",\n)\n", "path": "setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\n\nimport pathlib\nimport sys\n\nfrom setuptools import find_packages, setup\n\nimport versioneer\n\nLONG_DESCRIPTION = \"\"\"\nIbis is a productivity-centric Python big data framework.\n\nSee http://docs.ibis-project.org\n\"\"\"\n\nVERSION = sys.version_info.major, sys.version_info.minor\n\nimpala_requires = ['hdfs>=2.0.16', 'sqlalchemy', 'requests']\nif VERSION == (3, 5):\n    impala_requires.append('impyla<0.14.2')\nelse:\n    impala_requires.append('impyla>=0.15.0')\n\nsqlite_requires = ['sqlalchemy']\npostgres_requires = sqlite_requires + ['psycopg2']\nmysql_requires = sqlite_requires + ['pymysql']\n\nif VERSION == (3, 5):\n    mapd_requires = ['pymapd>=0.8.3,<0.11.0']\nelse:\n    mapd_requires = ['pymapd>=0.12.0']\nkerberos_requires = ['requests-kerberos']\nvisualization_requires = ['graphviz']\nclickhouse_requires = ['clickhouse-driver>=0.0.8', 'clickhouse-cityhash']\nbigquery_requires = ['google-cloud-bigquery>=1.0.0', 'pydata-google-auth']\nhdf5_requires = ['tables>=3.0.0']\n\nif VERSION == (3, 5):\n    parquet_requires = ['pyarrow<0.12.0']\nelse:\n    parquet_requires = ['pyarrow>=0.12.0']\n\nall_requires = (\n    impala_requires\n    + postgres_requires\n    + mapd_requires\n    + mysql_requires\n    + kerberos_requires\n    + visualization_requires\n    + clickhouse_requires\n    + bigquery_requires\n    + hdf5_requires\n    + parquet_requires\n)\n\ndevelop_requires = all_requires + [\n    'click',\n    'flake8',\n    'isort',\n    'mypy',\n    'pre-commit',\n    'pytest>=3',\n]\n\ninstall_requires = [\n    line.strip()\n    for line in pathlib.Path(__file__)\n    .parent.joinpath('requirements.txt')\n    .read_text()\n    .splitlines()\n]\n\nsetup(\n    name='ibis-framework',\n    url='https://github.com/ibis-project/ibis',\n    packages=find_packages(),\n    version=versioneer.get_version(),\n    cmdclass=versioneer.get_cmdclass(),\n    install_requires=install_requires,\n    python_requires='>=3.5',\n    extras_require={\n        'all': all_requires,\n        'develop:python_version > \"3.5\"': develop_requires + ['black'],\n        'develop:python_version == \"3.5\"': develop_requires,\n        'impala': impala_requires,\n        'kerberos': kerberos_requires,\n        'postgres': postgres_requires,\n        'mapd': mapd_requires,\n        'mysql': mysql_requires,\n        'sqlite': sqlite_requires,\n        'visualization': visualization_requires,\n        'clickhouse': clickhouse_requires,\n        'bigquery': bigquery_requires,\n        'hdf5': hdf5_requires,\n        'parquet': parquet_requires,\n    },\n    description=\"Productivity-centric Python Big Data Framework\",\n    long_description=LONG_DESCRIPTION,\n    classifiers=[\n        'Development Status :: 4 - Beta',\n        'Operating System :: OS Independent',\n        'Intended Audience :: Science/Research',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 3',\n        'Topic :: Scientific/Engineering',\n    ],\n    license='Apache License, Version 2.0',\n    maintainer=\"Phillip Cloud\",\n    maintainer_email=\"phillip.cloud@twosigma.com\",\n)\n", "path": "setup.py"}]}