tensorflow / tensorflow/tensorboard

Vulcanize use of jsoup breaks Polymer templates inside tables

Open
#502 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

This is a pretty edge case issue, but from what I'm seeing it is impacting TensorBoard.

The root issue is described here:

You can see the bug manifest in the vulcanized output in index.html (snippet):

 <template is="dom-repeat" items="[[_getDevices(devicesForStats)]]">
          </template><table>
        <tr>
            <td>
              <input type="checkbox" value$="[[item.device]]" checked$="[[item.used]]" on-click="_deviceCheckboxClicked">
...

Note the all important template tag has been moved outside the table, breaking the component. The original snippet is here.

As this is impacting my work on plugins, I will look into a fix that I can make available.

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

Compare the generated index.html snippet with the original template in tensorboard/plugins/graph/tf_graph_controls/tf-graph-controls.html around lines 400-404. Read the linked jsoup issues to understand the table/template parsing behavior, then trace the vulcanization step. Done means the template remains inside the table in the vulcanized output and the TensorBoard plugin still works.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, typescript
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.