We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Cython support is broken.
Running `python setup.py install --with-cython` yield an error about `visitor_expr.pyx` not existing.

It turns out that the list of files-to-Cythonize in `setup.py` is not up-to-date.

--- 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 #  ___________________________________________________________________________
2 #
3 #  Pyomo: Python Optimization Modeling Objects
4 #  Copyright 2017 National Technology and Engineering Solutions of Sandia, LLC
5 #  Under the terms of Contract DE-NA0003525 with National Technology and
6 #  Engineering Solutions of Sandia, LLC, the U.S. Government retains certain
7 #  rights in this software.
8 #  This software is distributed under the 3-clause BSD License.
9 #  ___________________________________________________________________________
10 
11 """
12 Script to generate the installer for pyomo.
13 """
14 
15 import sys
16 import os
17 
18 
19 def _find_packages(path):
20     """
21     Generate a list of nested packages
22     """
23     pkg_list = []
24     if not os.path.exists(path):
25         return []
26     if not os.path.exists(path+os.sep+"__init__.py"):
27         return []
28     else:
29         pkg_list.append(path)
30     for root, dirs, files in os.walk(path, topdown=True):
31         if root in pkg_list and "__init__.py" in files:
32             for name in dirs:
33                 if os.path.exists(root+os.sep+name+os.sep+"__init__.py"):
34                     pkg_list.append(root+os.sep+name)
35     return [pkg for pkg in map(lambda x:x.replace(os.sep, "."), pkg_list)]
36 
37 
38 def read(*rnames):
39     return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
40 
41 def get_version():
42     # Source pyomo/version/info.py to get the version number
43     _verInfo = dict(globals())
44     _verFile = os.path.join(os.path.dirname(__file__),
45                             'pyomo','version','info.py')
46     with open(_verFile) as _FILE:
47         exec(_FILE.read(), _verInfo)
48     return _verInfo['__version__']
49 
50 requires = [
51     'PyUtilib>=5.7.1.dev0',
52     'appdirs',
53     'ply',
54     'six>=1.4',
55     ]
56 if sys.version_info < (2, 7):
57     requires.append('argparse')
58     requires.append('unittest2')
59     requires.append('ordereddict')
60 
61 from setuptools import setup
62 import sys
63 
64 CYTHON_REQUIRED = "required"
65 if 'develop' in sys.argv:
66     using_cython = False
67 else:
68     using_cython = "automatic"
69 if '--with-cython' in sys.argv:
70     using_cython = CYTHON_REQUIRED
71     sys.argv.remove('--with-cython')
72 if '--without-cython' in sys.argv:
73     using_cython = False
74     sys.argv.remove('--without-cython')
75 
76 ext_modules = []
77 if using_cython:
78     try:
79         import platform
80         if platform.python_implementation() != "CPython":
81             # break out of this try-except (disable Cython)
82             raise RuntimeError("Cython is only supported under CPython")
83         from Cython.Build import cythonize
84         #
85         # Note: The Cython developers recommend that you destribute C source
86         # files to users.  But this is fine for evaluating the utility of Cython
87         #
88         import shutil
89         files = [
90             "pyomo/core/expr/numvalue.pyx",
91             "pyomo/core/expr/numeric_expr.pyx",
92             "pyomo/core/expr/logical_expr.pyx",
93             "pyomo/core/expr/visitor_expr.pyx",
94             "pyomo/core/util.pyx",
95             "pyomo/repn/standard_repn.pyx",
96             "pyomo/repn/plugins/cpxlp.pyx",
97             "pyomo/repn/plugins/gams_writer.pyx",
98             "pyomo/repn/plugins/baron_writer.pyx",
99             "pyomo/repn/plugins/ampl/ampl_.pyx",
100         ]
101         for f in files:
102             shutil.copyfile(f[:-1], f)
103         ext_modules = cythonize(files)
104     except:
105         if using_cython == CYTHON_REQUIRED:
106             print("""
107 ERROR: Cython was explicitly requested with --with-cython, but cythonization
108        of core Pyomo modules failed.
109 """)
110             raise
111         using_cython = False
112 
113 packages = _find_packages('pyomo')
114 
115 def run_setup():
116    setup(name='Pyomo',
117       #
118       # Note: the release number is set in pyomo/version/info.py
119       #
120       version=get_version(),
121       maintainer='William E. Hart',
122       maintainer_email='wehart@sandia.gov',
123       url='http://pyomo.org',
124       license='BSD',
125       platforms=["any"],
126       description='Pyomo: Python Optimization Modeling Objects',
127       long_description=read('README.md'),
128       classifiers=[
129         'Development Status :: 5 - Production/Stable',
130         'Intended Audience :: End Users/Desktop',
131         'Intended Audience :: Science/Research',
132         'License :: OSI Approved :: BSD License',
133         'Natural Language :: English',
134         'Operating System :: MacOS',
135         'Operating System :: Microsoft :: Windows',
136         'Operating System :: Unix',
137         'Programming Language :: Python',
138         'Programming Language :: Python :: 2',
139         'Programming Language :: Python :: 2.7',
140         'Programming Language :: Python :: 3',
141         'Programming Language :: Python :: 3.4',
142         'Programming Language :: Python :: 3.5',
143         'Programming Language :: Python :: 3.6',
144         'Programming Language :: Python :: 3.7',
145         'Programming Language :: Python :: Implementation :: CPython',
146         'Programming Language :: Python :: Implementation :: Jython',
147         'Programming Language :: Python :: Implementation :: PyPy',
148         'Topic :: Scientific/Engineering :: Mathematics',
149         'Topic :: Software Development :: Libraries :: Python Modules' ],
150       packages=packages,
151       keywords=['optimization'],
152       install_requires=requires,
153       ext_modules = ext_modules,
154       python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
155       entry_points="""
156         [console_scripts]
157         runbenders=pyomo.pysp.benders:Benders_main
158         evaluate_xhat=pyomo.pysp.evaluate_xhat:EvaluateXhat_main
159         runph=pyomo.pysp.phinit:PH_main
160         runef=pyomo.pysp.ef_writer_script:main
161         phsolverserver=pyomo.pysp.phsolverserver:main
162         scenariotreeserver=pyomo.pysp.scenariotree.server_pyro:main
163         computeconf=pyomo.pysp.computeconf:main
164 
165         results_schema=pyomo.scripting.commands:results_schema
166         pyro_mip_server = pyomo.scripting.pyro_mip_server:main
167         test.pyomo = pyomo.scripting.runtests:runPyomoTests
168         pyomo = pyomo.scripting.pyomo_main:main_console_script
169         pyomo_ns = pyomo.scripting.commands:pyomo_ns
170         pyomo_nsc = pyomo.scripting.commands:pyomo_nsc
171         kill_pyro_mip_servers = pyomo.scripting.commands:kill_pyro_mip_servers
172         launch_pyro_mip_servers = pyomo.scripting.commands:launch_pyro_mip_servers
173         readsol = pyomo.scripting.commands:readsol
174         OSSolverService = pyomo.scripting.commands:OSSolverService
175         pyomo_python = pyomo.scripting.commands:pyomo_python
176         pyomo_old=pyomo.scripting.pyomo_command:main
177 
178         [pyomo.command]
179         pyomo.runbenders=pyomo.pysp.benders
180         pyomo.evaluate_xhat=pyomo.pysp.evaluate_xhat
181         pyomo.runph=pyomo.pysp.phinit
182         pyomo.runef=pyomo.pysp.ef_writer_script
183         pyomo.phsolverserver=pyomo.pysp.phsolverserver
184         pyomo.scenariotreeserver=pyomo.pysp.scenariotree.server_pyro
185         pyomo.computeconf=pyomo.pysp.computeconf
186 
187         pyomo.help = pyomo.scripting.driver_help
188         pyomo.test.pyomo = pyomo.scripting.runtests
189         pyomo.pyro_mip_server = pyomo.scripting.pyro_mip_server
190         pyomo.results_schema=pyomo.scripting.commands
191       """
192       )
193 
194 try:
195     run_setup()
196 except SystemExit as e_info:
197     # Cython can generate a SystemExit exception on Windows if the
198     # environment is missing / has an incorrect Microsoft compiler.
199     # Since Cython is not strictly required, we will disable Cython and
200     # try re-running setup(), but only for this very specific situation.
201     if 'Microsoft Visual C++' not in str(e_info):
202         raise
203     elif using_cython == CYTHON_REQUIRED:
204         print("""
205 ERROR: Cython was explicitly requested with --with-cython, but cythonization
206        of core Pyomo modules failed.
207 """)
208         raise
209     else:
210         print("""
211 ERROR: setup() failed:
212     %s
213 Re-running setup() without the Cython modules
214 """ % (e_info.message,))
215         ext_modules = []
216         run_setup()
217         print("""
218 WARNING: Installation completed successfully, but the attempt to cythonize
219          core Pyomo modules failed.  Cython provides performance
220          optimizations and is not required for any Pyomo functionality.
221          Cython returned the following error:
222    "%s"
223 """ % (e_info.message,))
224
```
--- 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
@@ -90,7 +90,7 @@
             "pyomo/core/expr/numvalue.pyx",
             "pyomo/core/expr/numeric_expr.pyx",
             "pyomo/core/expr/logical_expr.pyx",
-            "pyomo/core/expr/visitor_expr.pyx",
+            #"pyomo/core/expr/visitor.pyx",
             "pyomo/core/util.pyx",
             "pyomo/repn/standard_repn.pyx",
             "pyomo/repn/plugins/cpxlp.pyx",
@@ -100,7 +100,8 @@
         ]
         for f in files:
             shutil.copyfile(f[:-1], f)
-        ext_modules = cythonize(files)
+        ext_modules = cythonize(files, compiler_directives={
+            "language_level": 3 if sys.version_info >= (3, ) else 2})
     except:
         if using_cython == CYTHON_REQUIRED:
             print("""

{"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -90,7 +90,7 @@\n             \"pyomo/core/expr/numvalue.pyx\",\n             \"pyomo/core/expr/numeric_expr.pyx\",\n             \"pyomo/core/expr/logical_expr.pyx\",\n-            \"pyomo/core/expr/visitor_expr.pyx\",\n+            #\"pyomo/core/expr/visitor.pyx\",\n             \"pyomo/core/util.pyx\",\n             \"pyomo/repn/standard_repn.pyx\",\n             \"pyomo/repn/plugins/cpxlp.pyx\",\n@@ -100,7 +100,8 @@\n         ]\n         for f in files:\n             shutil.copyfile(f[:-1], f)\n-        ext_modules = cythonize(files)\n+        ext_modules = cythonize(files, compiler_directives={\n+            \"language_level\": 3 if sys.version_info >= (3, ) else 2})\n     except:\n         if using_cython == CYTHON_REQUIRED:\n             print(\"\"\"\n", "issue": "Cython support is broken.\nRunning `python setup.py install --with-cython` yield an error about `visitor_expr.pyx` not existing.\r\n\r\nIt turns out that the list of files-to-Cythonize in `setup.py` is not up-to-date.\n", "before_files": [{"content": "#  ___________________________________________________________________________\n#\n#  Pyomo: Python Optimization Modeling Objects\n#  Copyright 2017 National Technology and Engineering Solutions of Sandia, LLC\n#  Under the terms of Contract DE-NA0003525 with National Technology and\n#  Engineering Solutions of Sandia, LLC, the U.S. Government retains certain\n#  rights in this software.\n#  This software is distributed under the 3-clause BSD License.\n#  ___________________________________________________________________________\n\n\"\"\"\nScript to generate the installer for pyomo.\n\"\"\"\n\nimport sys\nimport os\n\n\ndef _find_packages(path):\n    \"\"\"\n    Generate a list of nested packages\n    \"\"\"\n    pkg_list = []\n    if not os.path.exists(path):\n        return []\n    if not os.path.exists(path+os.sep+\"__init__.py\"):\n        return []\n    else:\n        pkg_list.append(path)\n    for root, dirs, files in os.walk(path, topdown=True):\n        if root in pkg_list and \"__init__.py\" in files:\n            for name in dirs:\n                if os.path.exists(root+os.sep+name+os.sep+\"__init__.py\"):\n                    pkg_list.append(root+os.sep+name)\n    return [pkg for pkg in map(lambda x:x.replace(os.sep, \".\"), pkg_list)]\n\n\ndef read(*rnames):\n    return open(os.path.join(os.path.dirname(__file__), *rnames)).read()\n\ndef get_version():\n    # Source pyomo/version/info.py to get the version number\n    _verInfo = dict(globals())\n    _verFile = os.path.join(os.path.dirname(__file__),\n                            'pyomo','version','info.py')\n    with open(_verFile) as _FILE:\n        exec(_FILE.read(), _verInfo)\n    return _verInfo['__version__']\n\nrequires = [\n    'PyUtilib>=5.7.1.dev0',\n    'appdirs',\n    'ply',\n    'six>=1.4',\n    ]\nif sys.version_info < (2, 7):\n    requires.append('argparse')\n    requires.append('unittest2')\n    requires.append('ordereddict')\n\nfrom setuptools import setup\nimport sys\n\nCYTHON_REQUIRED = \"required\"\nif 'develop' in sys.argv:\n    using_cython = False\nelse:\n    using_cython = \"automatic\"\nif '--with-cython' in sys.argv:\n    using_cython = CYTHON_REQUIRED\n    sys.argv.remove('--with-cython')\nif '--without-cython' in sys.argv:\n    using_cython = False\n    sys.argv.remove('--without-cython')\n\next_modules = []\nif using_cython:\n    try:\n        import platform\n        if platform.python_implementation() != \"CPython\":\n            # break out of this try-except (disable Cython)\n            raise RuntimeError(\"Cython is only supported under CPython\")\n        from Cython.Build import cythonize\n        #\n        # Note: The Cython developers recommend that you destribute C source\n        # files to users.  But this is fine for evaluating the utility of Cython\n        #\n        import shutil\n        files = [\n            \"pyomo/core/expr/numvalue.pyx\",\n            \"pyomo/core/expr/numeric_expr.pyx\",\n            \"pyomo/core/expr/logical_expr.pyx\",\n            \"pyomo/core/expr/visitor_expr.pyx\",\n            \"pyomo/core/util.pyx\",\n            \"pyomo/repn/standard_repn.pyx\",\n            \"pyomo/repn/plugins/cpxlp.pyx\",\n            \"pyomo/repn/plugins/gams_writer.pyx\",\n            \"pyomo/repn/plugins/baron_writer.pyx\",\n            \"pyomo/repn/plugins/ampl/ampl_.pyx\",\n        ]\n        for f in files:\n            shutil.copyfile(f[:-1], f)\n        ext_modules = cythonize(files)\n    except:\n        if using_cython == CYTHON_REQUIRED:\n            print(\"\"\"\nERROR: Cython was explicitly requested with --with-cython, but cythonization\n       of core Pyomo modules failed.\n\"\"\")\n            raise\n        using_cython = False\n\npackages = _find_packages('pyomo')\n\ndef run_setup():\n   setup(name='Pyomo',\n      #\n      # Note: the release number is set in pyomo/version/info.py\n      #\n      version=get_version(),\n      maintainer='William E. Hart',\n      maintainer_email='wehart@sandia.gov',\n      url='http://pyomo.org',\n      license='BSD',\n      platforms=[\"any\"],\n      description='Pyomo: Python Optimization Modeling Objects',\n      long_description=read('README.md'),\n      classifiers=[\n        'Development Status :: 5 - Production/Stable',\n        'Intended Audience :: End Users/Desktop',\n        'Intended Audience :: Science/Research',\n        'License :: OSI Approved :: BSD License',\n        'Natural Language :: English',\n        'Operating System :: MacOS',\n        'Operating System :: Microsoft :: Windows',\n        'Operating System :: Unix',\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.4',\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 :: Jython',\n        'Programming Language :: Python :: Implementation :: PyPy',\n        'Topic :: Scientific/Engineering :: Mathematics',\n        'Topic :: Software Development :: Libraries :: Python Modules' ],\n      packages=packages,\n      keywords=['optimization'],\n      install_requires=requires,\n      ext_modules = ext_modules,\n      python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',\n      entry_points=\"\"\"\n        [console_scripts]\n        runbenders=pyomo.pysp.benders:Benders_main\n        evaluate_xhat=pyomo.pysp.evaluate_xhat:EvaluateXhat_main\n        runph=pyomo.pysp.phinit:PH_main\n        runef=pyomo.pysp.ef_writer_script:main\n        phsolverserver=pyomo.pysp.phsolverserver:main\n        scenariotreeserver=pyomo.pysp.scenariotree.server_pyro:main\n        computeconf=pyomo.pysp.computeconf:main\n\n        results_schema=pyomo.scripting.commands:results_schema\n        pyro_mip_server = pyomo.scripting.pyro_mip_server:main\n        test.pyomo = pyomo.scripting.runtests:runPyomoTests\n        pyomo = pyomo.scripting.pyomo_main:main_console_script\n        pyomo_ns = pyomo.scripting.commands:pyomo_ns\n        pyomo_nsc = pyomo.scripting.commands:pyomo_nsc\n        kill_pyro_mip_servers = pyomo.scripting.commands:kill_pyro_mip_servers\n        launch_pyro_mip_servers = pyomo.scripting.commands:launch_pyro_mip_servers\n        readsol = pyomo.scripting.commands:readsol\n        OSSolverService = pyomo.scripting.commands:OSSolverService\n        pyomo_python = pyomo.scripting.commands:pyomo_python\n        pyomo_old=pyomo.scripting.pyomo_command:main\n\n        [pyomo.command]\n        pyomo.runbenders=pyomo.pysp.benders\n        pyomo.evaluate_xhat=pyomo.pysp.evaluate_xhat\n        pyomo.runph=pyomo.pysp.phinit\n        pyomo.runef=pyomo.pysp.ef_writer_script\n        pyomo.phsolverserver=pyomo.pysp.phsolverserver\n        pyomo.scenariotreeserver=pyomo.pysp.scenariotree.server_pyro\n        pyomo.computeconf=pyomo.pysp.computeconf\n\n        pyomo.help = pyomo.scripting.driver_help\n        pyomo.test.pyomo = pyomo.scripting.runtests\n        pyomo.pyro_mip_server = pyomo.scripting.pyro_mip_server\n        pyomo.results_schema=pyomo.scripting.commands\n      \"\"\"\n      )\n\ntry:\n    run_setup()\nexcept SystemExit as e_info:\n    # Cython can generate a SystemExit exception on Windows if the\n    # environment is missing / has an incorrect Microsoft compiler.\n    # Since Cython is not strictly required, we will disable Cython and\n    # try re-running setup(), but only for this very specific situation.\n    if 'Microsoft Visual C++' not in str(e_info):\n        raise\n    elif using_cython == CYTHON_REQUIRED:\n        print(\"\"\"\nERROR: Cython was explicitly requested with --with-cython, but cythonization\n       of core Pyomo modules failed.\n\"\"\")\n        raise\n    else:\n        print(\"\"\"\nERROR: setup() failed:\n    %s\nRe-running setup() without the Cython modules\n\"\"\" % (e_info.message,))\n        ext_modules = []\n        run_setup()\n        print(\"\"\"\nWARNING: Installation completed successfully, but the attempt to cythonize\n         core Pyomo modules failed.  Cython provides performance\n         optimizations and is not required for any Pyomo functionality.\n         Cython returned the following error:\n   \"%s\"\n\"\"\" % (e_info.message,))\n", "path": "setup.py"}], "after_files": [{"content": "#  ___________________________________________________________________________\n#\n#  Pyomo: Python Optimization Modeling Objects\n#  Copyright 2017 National Technology and Engineering Solutions of Sandia, LLC\n#  Under the terms of Contract DE-NA0003525 with National Technology and\n#  Engineering Solutions of Sandia, LLC, the U.S. Government retains certain\n#  rights in this software.\n#  This software is distributed under the 3-clause BSD License.\n#  ___________________________________________________________________________\n\n\"\"\"\nScript to generate the installer for pyomo.\n\"\"\"\n\nimport sys\nimport os\n\n\ndef _find_packages(path):\n    \"\"\"\n    Generate a list of nested packages\n    \"\"\"\n    pkg_list = []\n    if not os.path.exists(path):\n        return []\n    if not os.path.exists(path+os.sep+\"__init__.py\"):\n        return []\n    else:\n        pkg_list.append(path)\n    for root, dirs, files in os.walk(path, topdown=True):\n        if root in pkg_list and \"__init__.py\" in files:\n            for name in dirs:\n                if os.path.exists(root+os.sep+name+os.sep+\"__init__.py\"):\n                    pkg_list.append(root+os.sep+name)\n    return [pkg for pkg in map(lambda x:x.replace(os.sep, \".\"), pkg_list)]\n\n\ndef read(*rnames):\n    return open(os.path.join(os.path.dirname(__file__), *rnames)).read()\n\ndef get_version():\n    # Source pyomo/version/info.py to get the version number\n    _verInfo = dict(globals())\n    _verFile = os.path.join(os.path.dirname(__file__),\n                            'pyomo','version','info.py')\n    with open(_verFile) as _FILE:\n        exec(_FILE.read(), _verInfo)\n    return _verInfo['__version__']\n\nrequires = [\n    'PyUtilib>=5.7.1.dev0',\n    'appdirs',\n    'ply',\n    'six>=1.4',\n    ]\nif sys.version_info < (2, 7):\n    requires.append('argparse')\n    requires.append('unittest2')\n    requires.append('ordereddict')\n\nfrom setuptools import setup\nimport sys\n\nCYTHON_REQUIRED = \"required\"\nif 'develop' in sys.argv:\n    using_cython = False\nelse:\n    using_cython = \"automatic\"\nif '--with-cython' in sys.argv:\n    using_cython = CYTHON_REQUIRED\n    sys.argv.remove('--with-cython')\nif '--without-cython' in sys.argv:\n    using_cython = False\n    sys.argv.remove('--without-cython')\n\next_modules = []\nif using_cython:\n    try:\n        import platform\n        if platform.python_implementation() != \"CPython\":\n            # break out of this try-except (disable Cython)\n            raise RuntimeError(\"Cython is only supported under CPython\")\n        from Cython.Build import cythonize\n        #\n        # Note: The Cython developers recommend that you destribute C source\n        # files to users.  But this is fine for evaluating the utility of Cython\n        #\n        import shutil\n        files = [\n            \"pyomo/core/expr/numvalue.pyx\",\n            \"pyomo/core/expr/numeric_expr.pyx\",\n            \"pyomo/core/expr/logical_expr.pyx\",\n            #\"pyomo/core/expr/visitor.pyx\",\n            \"pyomo/core/util.pyx\",\n            \"pyomo/repn/standard_repn.pyx\",\n            \"pyomo/repn/plugins/cpxlp.pyx\",\n            \"pyomo/repn/plugins/gams_writer.pyx\",\n            \"pyomo/repn/plugins/baron_writer.pyx\",\n            \"pyomo/repn/plugins/ampl/ampl_.pyx\",\n        ]\n        for f in files:\n            shutil.copyfile(f[:-1], f)\n        ext_modules = cythonize(files, compiler_directives={\n            \"language_level\": 3 if sys.version_info >= (3, ) else 2})\n    except:\n        if using_cython == CYTHON_REQUIRED:\n            print(\"\"\"\nERROR: Cython was explicitly requested with --with-cython, but cythonization\n       of core Pyomo modules failed.\n\"\"\")\n            raise\n        using_cython = False\n\npackages = _find_packages('pyomo')\n\ndef run_setup():\n   setup(name='Pyomo',\n      #\n      # Note: the release number is set in pyomo/version/info.py\n      #\n      version=get_version(),\n      maintainer='William E. Hart',\n      maintainer_email='wehart@sandia.gov',\n      url='http://pyomo.org',\n      license='BSD',\n      platforms=[\"any\"],\n      description='Pyomo: Python Optimization Modeling Objects',\n      long_description=read('README.md'),\n      classifiers=[\n        'Development Status :: 5 - Production/Stable',\n        'Intended Audience :: End Users/Desktop',\n        'Intended Audience :: Science/Research',\n        'License :: OSI Approved :: BSD License',\n        'Natural Language :: English',\n        'Operating System :: MacOS',\n        'Operating System :: Microsoft :: Windows',\n        'Operating System :: Unix',\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.4',\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 :: Jython',\n        'Programming Language :: Python :: Implementation :: PyPy',\n        'Topic :: Scientific/Engineering :: Mathematics',\n        'Topic :: Software Development :: Libraries :: Python Modules' ],\n      packages=packages,\n      keywords=['optimization'],\n      install_requires=requires,\n      ext_modules = ext_modules,\n      python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',\n      entry_points=\"\"\"\n        [console_scripts]\n        runbenders=pyomo.pysp.benders:Benders_main\n        evaluate_xhat=pyomo.pysp.evaluate_xhat:EvaluateXhat_main\n        runph=pyomo.pysp.phinit:PH_main\n        runef=pyomo.pysp.ef_writer_script:main\n        phsolverserver=pyomo.pysp.phsolverserver:main\n        scenariotreeserver=pyomo.pysp.scenariotree.server_pyro:main\n        computeconf=pyomo.pysp.computeconf:main\n\n        results_schema=pyomo.scripting.commands:results_schema\n        pyro_mip_server = pyomo.scripting.pyro_mip_server:main\n        test.pyomo = pyomo.scripting.runtests:runPyomoTests\n        pyomo = pyomo.scripting.pyomo_main:main_console_script\n        pyomo_ns = pyomo.scripting.commands:pyomo_ns\n        pyomo_nsc = pyomo.scripting.commands:pyomo_nsc\n        kill_pyro_mip_servers = pyomo.scripting.commands:kill_pyro_mip_servers\n        launch_pyro_mip_servers = pyomo.scripting.commands:launch_pyro_mip_servers\n        readsol = pyomo.scripting.commands:readsol\n        OSSolverService = pyomo.scripting.commands:OSSolverService\n        pyomo_python = pyomo.scripting.commands:pyomo_python\n        pyomo_old=pyomo.scripting.pyomo_command:main\n\n        [pyomo.command]\n        pyomo.runbenders=pyomo.pysp.benders\n        pyomo.evaluate_xhat=pyomo.pysp.evaluate_xhat\n        pyomo.runph=pyomo.pysp.phinit\n        pyomo.runef=pyomo.pysp.ef_writer_script\n        pyomo.phsolverserver=pyomo.pysp.phsolverserver\n        pyomo.scenariotreeserver=pyomo.pysp.scenariotree.server_pyro\n        pyomo.computeconf=pyomo.pysp.computeconf\n\n        pyomo.help = pyomo.scripting.driver_help\n        pyomo.test.pyomo = pyomo.scripting.runtests\n        pyomo.pyro_mip_server = pyomo.scripting.pyro_mip_server\n        pyomo.results_schema=pyomo.scripting.commands\n      \"\"\"\n      )\n\ntry:\n    run_setup()\nexcept SystemExit as e_info:\n    # Cython can generate a SystemExit exception on Windows if the\n    # environment is missing / has an incorrect Microsoft compiler.\n    # Since Cython is not strictly required, we will disable Cython and\n    # try re-running setup(), but only for this very specific situation.\n    if 'Microsoft Visual C++' not in str(e_info):\n        raise\n    elif using_cython == CYTHON_REQUIRED:\n        print(\"\"\"\nERROR: Cython was explicitly requested with --with-cython, but cythonization\n       of core Pyomo modules failed.\n\"\"\")\n        raise\n    else:\n        print(\"\"\"\nERROR: setup() failed:\n    %s\nRe-running setup() without the Cython modules\n\"\"\" % (e_info.message,))\n        ext_modules = []\n        run_setup()\n        print(\"\"\"\nWARNING: Installation completed successfully, but the attempt to cythonize\n         core Pyomo modules failed.  Cython provides performance\n         optimizations and is not required for any Pyomo functionality.\n         Cython returned the following error:\n   \"%s\"\n\"\"\" % (e_info.message,))\n", "path": "setup.py"}]}