diff options
| -rw-r--r-- | CHANGES.rst | 4 | ||||
| -rw-r--r-- | CONTRIBUTORS.txt | 2 | ||||
| -rw-r--r-- | pyramid/scripts/pserve.py | 20 |
3 files changed, 20 insertions, 6 deletions
diff --git a/CHANGES.rst b/CHANGES.rst index 482610319..7a8fa31f2 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -21,6 +21,10 @@ Features instead of ``pyramid.util.Request``. See https://github.com/Pylons/pyramid/pull/3129 +- In ``cherrypy_server_runner``, prefer imports from the ``cheroot`` package over the legacy + imports from `cherrypy.wsgiserver`. + See https://github.com/Pylons/pyramid/pull/3235 + Bug Fixes --------- diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 83469c14c..b6dbcff2c 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -314,3 +314,5 @@ Contributors - Lars Blumberg, 2017/08/14 - Deneys Maartens, 2017/11/03 + +- Heron Rossi, 2018/03/08 diff --git a/pyramid/scripts/pserve.py b/pyramid/scripts/pserve.py index f7d094980..8ee6e1467 100644 --- a/pyramid/scripts/pserve.py +++ b/pyramid/scripts/pserve.py @@ -341,18 +341,26 @@ def cherrypy_server_runner( if var is not None: kwargs[var_name] = int(var) - from cherrypy import wsgiserver + try: + from cheroot.wsgi import Server as WSGIServer + except ImportError: + from cherrypy.wsgiserver import CherryPyWSGIServer as WSGIServer - server = wsgiserver.CherryPyWSGIServer(bind_addr, app, - server_name=server_name, **kwargs) + server = WSGIServer(bind_addr, app, + server_name=server_name, **kwargs) if ssl_pem is not None: if PY2: server.ssl_certificate = server.ssl_private_key = ssl_pem else: # creates wsgiserver.ssl_builtin as side-effect - wsgiserver.get_ssl_adapter_class() - server.ssl_adapter = wsgiserver.ssl_builtin.BuiltinSSLAdapter( - ssl_pem, ssl_pem) + try: + from cheroot.server import get_ssl_adapter_class + from cheroot.ssl.builtin import BuiltinSSLAdapter + except ImportError: + from cherrypy.wsgiserver import get_ssl_adapter_class + from cherrypy.wsgiserver.ssl_builtin import BuiltinSSLAdapter + get_ssl_adapter_class() + server.ssl_adapter = BuiltinSSLAdapter(ssl_pem, ssl_pem) if protocol_version: server.protocol = protocol_version |
