No se puede ejecutar el modo de depuración Flask en Google App Engine

Estoy ejecutando Flask 0.9 / Werkzeug 0.8.3 en Google App Engine con Python 2.7, y quiero desesperadamente que el depurador Werkzeug se ejecute. Después de intentar usar werkzeug_appengine_debugger tengo la siguiente excepción en la consola:

File "/path/to/application/main.py", line 14, in  @app.route('/') AttributeError: 'DebuggedApplication' object has no attribute 'route' 

Puede ser no solo ‘ruta’, sino cualquier atributo que pueda tener la aplicación Flask.

Mi árbol de archivos se ve así, tomado de flask-appengine-template :

 application __init__.py main.py ... flask flaskext werkzeug werkzeug_debugger_appengine ... app.yaml 

En app.yaml estoy apuntando a la aplicación WSGI:

 application: application_name version: 1 runtime: python27 api_version: 1 threadsafe: true builtins: - appstats: on - admin_redirect: on - deferred: on - remote_api: on libraries: - name: jinja2 version: "2.6" - name: markupsafe version: "0.15" inbound_services: - warmup handlers: - url: .* script: application.app 

Y aquí está el contenido de __init__.py

 from flask import Flask from werkzeug_debugger_appengine import get_debugged_app ## Starting app app = Flask('application_name') ## Configuration import os import secrets app.debug = True app.secret_key = secrets.SECRET_KEY app.csrf_session_key = secrets.CSRF_SESSION_KEY # Auto-set debug mode based on App Engine dev environ if 'SERVER_SOFTWARE' in os.environ and os.environ['SERVER_SOFTWARE'].startswith('Dev'): app.debug = True ## Extensions if app.debug: app = get_debugged_app(app) ## Everything else import main 

Tampoco funciona sin werkzeug_appengine_debugger. La siguiente intialización.

 app = DebuggedApplication(app, True) 

Todavía lanza la misma excepción.

En ningún tutorial o artículo de GAE + Flask he visto este problema. ¿Por qué podría pasar eso?

 app = DebuggedApplication(app, True) 

debiera ser:

 app.wsgi_app = DebuggedApplication(app.wsgi_app, True) 

Esta es la forma recomendada de agregar middleware en Flask , de esa manera puede, como dicen los documentos, “mantener una referencia a la clase de aplicación flask.Flask “.