tensorflow / tensorflow/tensorboard

FR: centralized, consistent UI messaging for plugin error states

Open
#4,452 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

core:frontend theme:ui-polish theme:usability type:feature
Dominant language
TypeScript
Stars
7.2k
Forks
1.7k
Avg merge
4d 22h
Merged PRs (30d)
1

Description

This feature request is for making a centralized mechanism to handle error states for TensorBoard plugins, in particular the common cases where they don't have any data to show, or were not properly enabled.

Right now every plugin is responsible for its own "no data" error messaging, which leads to duplicated code and/or inconsistencies, and makes it hard to swap out the messaging in a clean way (e.g. if we wanted different messages for TensorBoard.dev), especially since it's all the way down inside the polymer dashboard components.

Instead, we could imagine handling much of this in the Angular shell, where it's easier to customize. We already fetch /data/plugins_listing to determine which plugins are "active" in the top toolbar, so we could imagine extending this to also distinguish whether an inactive plugin should be rendered at all, or whether it should show an error / help message instead.

We might also consider some other issues with /data/plugins_listing behavior as part of this, e.g. #1856 and #2102/#2133.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with /data/plugins_listing and its documentation in http_api.md, then trace how the Angular shell and Polymer dashboard components currently handle plugin activity and error messaging. Done means a centralized, consistent approach for no-data and improperly enabled plugin states, including the inactive-plugin behavior described in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
api, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.