Skip to content

Cannot run shiny run with --reload #1188

@gadenbuie

Description

@gadenbuie

After #1183, running shiny run --reload results in an error when trying to cast(ASGI3Application, app)

self.app = cast(ASGI3Application, app)

INFO:     Uvicorn running on http://127.0.0.1:52287 (Press CTRL+C to quit)
INFO:     Started reloader process [75586] using WatchFiles
INFO:     Started server process [75591]
INFO:     Waiting for application startup.
ERROR:    Exception in 'lifespan' protocol
Traceback (most recent call last):
  File "/Users/garrick/work/posit-dev/py-shiny/venv/lib/python3.11/site-packages/uvicorn/lifespan/on.py", line 86, in main
    await app(scope, self.receive, self.send)
  File "/Users/garrick/work/posit-dev/py-shiny/venv/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/garrick/work/posit-dev/py-shiny/shiny/_app.py", line 275, in __call__
    await self.starlette_app(scope, receive, send)
  File "/Users/garrick/work/posit-dev/py-shiny/venv/lib/python3.11/site-packages/starlette/applications.py", line 122, in __call__
    self.middleware_stack = self.build_middleware_stack()
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/garrick/work/posit-dev/py-shiny/venv/lib/python3.11/site-packages/starlette/applications.py", line 109, in build_middleware_stack
    app = cls(app=app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/garrick/work/posit-dev/py-shiny/shiny/_autoreload.py", line 107, in __init__
    self.app = cast(ASGI3Application, app)
                    ^^^^^^^^^^^^^^^^
NameError: name 'ASGI3Application' is not defined
ERROR:    Application startup failed. Exiting.

cc @wch

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions