fix(dashboard): display startup errors from tornado and bokeh entrypoints with panel notifications

  • If a Tornado or Bokeh entrypoint fails to load, the dashboard does not crash
  • Instead, the error is logged and placed in the panel.state.cache
  • setup_notifications in dashboard.utils enables notifications for a particular page and:
    • Consumes the panel.state.cache for startup_messages
    • Subscribes to the Juice Pub/Sub panel-notifs topic

I added two things to demonstrate this functionality, they should be removed before the MR is closed.

  • A test button to show how that notifications can be shared across multiple tabs (either by opening Juice in a new window, or duplicating the tab and reloading)
  • A fake entrypoint called "Orange Production" which fails to load to show that startup errors are generated correctly.

Closes #356 (closed)

Merge request reports

Loading