Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release TensorBoard 2.10.1 #5946

Merged
merged 3 commits into from
Sep 22, 2022
Merged

Release TensorBoard 2.10.1 #5946

merged 3 commits into from
Sep 22, 2022

Conversation

bmd3k
Copy link
Contributor

@bmd3k bmd3k commented Sep 22, 2022

Commits for TensorBoard 2.10.1 patch release to fix #5924 with cherry-pick of #5944.

Note: I will "Rebase and Merge" this PR. Please review each commit separately.

The change to use the esbuild bundler (tensorflow#5829) broke the projector plugin (tensorflow#5924).

The root cause is in the 'numeric' library, which we use for calculating the PCA. The library requires that the symbol 'numeric' is available in the global scope when its operations are executed by other modules. See, for example, how the definition of some of its operations refer to the string 'numeric' in the Function definition, unmodifiable by the
bundler/minification code:

https://github.com/sloisel/numeric/blob/656fa1254be540f428710738ca9c1539625777f1/src/numeric.js#L696

The esbuild bundler does not keep 'numeric' in global scope and instead renames it as part of bundling/minification. We work around this by manually adding it to global scope.

We introduce the wrapper tensorboard/webapp/third_party/numeric.ts to add 'numeric' to the global scope and require that tensorboard code import that wrapper rather than importing numeric directly. We add a CI check to ensure that numeric is not imported directly.
@bmd3k bmd3k merged commit a74c10d into tensorflow:2.10 Sep 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants