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
Add a color by regex feature that matches the experiment name. #6803
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Motivation for features / changes Fix a typo `darkModeEanbled` -> `darkModeEnabled ` ## Technical description of changes Fixing a typo made in code. Although it doesn't change functionality, it keeps the code health. ## Screenshots of UI changes (or N/A) N/A ## Detailed steps to verify changes work correctly (as executed by you) N/A ## Alternate designs / implementations considered (or N/A) N/A
## Motivation for features / changes Potential improvement to the build: reduce the binary size by ~5Mb ## Technical description of changes Run `strip` on release build so that [whatever strip does to the binary] is not shipped in the production build. ## Screenshots of UI changes (or N/A) ## Detailed steps to verify changes work correctly (as executed by you) Run `cargo build --release`, with and without the change, to observe the binary size (as tested on M1 Mac) reducing from 14Mb to 9.5Mb ## Alternate designs / implementations considered (or N/A)
tensorflow#6759 modified _keras_test.py to work with Keras 3 but it did not import correctly into the internal repository. It was therefore reverted in tensorflow#6767. This changes the test to work both in the oss and internal repos. Googlers, see cl/612511563 for sample import results.
The feature has been launched.
The regex dialog "Save" button is rendered poorly internaly, dark text on dark background. The color of the button text was changed to 'inherit' in go/tbpr/6631. It doesn't seem to have been necessary so I revert that particular change here. It means in OSS TensorBoard the button text color will be slightly darker than previously. I didn't personally notice the difference but internal screenshot tests show a slight difference. Googlers, see cr/612557079.
We haven't updated this dependency on the bazel webtesting rules for a while, and it looks like we need to do it to be able to also update our reference to the rules_closure target, to unblock tensorflow#6721. To be clear, this PR is a prerequisite to pin the rules_closure version in a separate PR, which in turn will unblock tensorflow#6721. (Or at least that's the expectation. It is yet to be confirmed that the rules_closure version we want to pin is compatible with this one). An attempt to use the versioned browsers provided by the rules_webtesting dependency was created in tensorflow#6772, but some tests were failing. It seems that some components or tests were written in a way that depends on the specific browser (?), so to be able to update this dependency, this continues to use the same browser version, only updating the rules we use to define our testing browser, to be compatible with a newer version of rules_webtesting.
We no longer surface Hparam-related Metric Values from the server in Angular TensorBoard UI. We therefore remove the MetricSpec and HparamAndMetricSpec types. The latter is replaced with just HparamSpec[] where necessary.
Limit the number of hparams retrieved by default to 1000 for display in Time Series. Print retrieval information: # of columns loaded and whether there could be more. This is to address performance issues with loading 1000s of hparams from the backend and trying to render them all. In a future PR we will add ability to "Load All" if user wants to nonetheless load them all. Screenshot (with default set to 2 instead of 1000): ![image](https://github.com/tensorflow/tensorboard/assets/17152369/b0f2c4e6-bda0-4ed7-bead-9f1ef6eaaca7)
…ensorflow#6781) Add tooltips for hparam column names when the name does not match the display name (using case-insentive comparison).
…d in default. (tensorflow#6780) In tensorflow#6777 we limited the number of hparams we load by default. Now we add the option for the user to load all hparams in spite of the performance implications. OSS Light Mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/891856ac-bbf7-4b8b-be94-b776fe4bbe1e) OSS Dark Mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/7f6fff68-73c2-4321-8912-8deb651be83d) Internal Light Mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/b0e251c2-6b07-45e6-948d-bce24923d75a) Internal Dark Mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/d8959cd1-d12c-401e-9a75-45eae5fa4551)
…tensorflow#6779) Shows a 'differs' tag in the data table column selector if an hparam has multiple values. We start by adding generic support to the data table column selector for "tags". Tags can be arbitrary strings. Then, for each Hparam column, we calculate whether to include a 'differs' tag. Light mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/7c8110cd-ac9f-48e5-97f1-ff4c1b5bf8d4) Dark mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/59b3af5d-6990-483b-8a05-4c27c0c37182) Internal Light mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/1ada0711-724a-4e2a-80ab-452bc1f8cd02) Internal Dark mode: ![image](https://github.com/tensorflow/tensorboard/assets/17152369/48c0321d-4db7-4244-b7b0-6fb249539d69)
The "to_proto" method on Starlark structs is deprecated and shouldn't be used. Instead, the proto module's "encode_text" function should be used. (https://bazel.build/rules/lib/toplevel/proto) It, along with "to_json", can be disabled in Bazel using the flag --incompatible_struct_has_no_methods The underlying implementation is the same, so there should be no observable changes in final outputs.
## Motivation for features / changes Legacy struct providers have been deprecated by Bazel. Replacing them with modern providers, will make it possible to simplify and remove legacy handling from Bazel. Prerequiste: bazelbuild/rules_closure#599 is merged and released. Googlers, see cl/597800285.
## Motivation for features / changes The profiler plugin team wants to use query params for deeplinking within their application. Unfortunately we clear them when we re-serialize the application state. To support this I am adding a new area to the core state which will store unrecognized query parameters and re-serialize them. Googlers see cl/615196457 ## Screenshots of UI changes (or N/A) Time series still works! ![image](https://github.com/tensorflow/tensorboard/assets/78179109/378de493-2a44-49f9-8ac9-111a23c14ac0) The profiler plugin can read read these! ![image](https://github.com/tensorflow/tensorboard/assets/78179109/a870f8a2-06bb-4c96-91ac-7bbda0202ed4)
Some responses from data_provider.read_last_scalars() may contain run names of the following form: 'SOME_EXPERIMENT_OR_SOMETHING/.', with a trailing '/.' at the end. '.' always behaves sort of weird with Hparams and this is no exception. The problem in this case is that sessions of this sort could not be matched with metric values. No metric values would appear for them in the hparams dashboard. This is because the logic to generate metric names drops the '/.' and so we could not match. That code relies on some os-level path operations and we know that '.' has special meaning for filesystems: https://github.com/tensorflow/tensorboard/blob/23073c55c03f2f1a9da8c7e0bb9db3349dc15c90/tensorboard/plugins/hparams/metrics.py#L39 We fix the problem by transforming the result of data_provider.read_last_scalars() to apply the same os-level path operations to the run names (ie the keys of the result).
…osure (tensorflow#6792) To fix an internal breakage since `extract_providers` hasn't been imported from OSS to internal rules_closure repo yet. Also fixing a few internal build warnings. #oncall
## Motivation for features / changes Splits DataTableComponent's context menu functionality into its own component to be compatible with future updates that will enable dynamic custom modal creation (for alleviating [stacking context issues](tensorflow#6737 (comment))) ## Technical description of changes - No new functionality - simply moves the context menu related template and logic to a new ContextMenuComponent - Parameterizes some context menu tests for legibility. ## Detailed steps to verify changes work correctly (as executed by you) - Tested manually that all context menu features work as before
## Motivation for features / changes The internal deeplink provider doesn't know about `unknownQueryParams` yet and as such dispatches `stateRehydratedFromUrl` without defining a value for `unknownQueryParams`. This leads to a null pointer being thrown when loading in from the experiment list view. By defining a default value this null state can never occur.
## Motivation for features / changes Importing MatIconTestingModule from `@angular/material/icon/testing` will break 1p sync. Changing this to import from `webapp/testing/mat_icon_module.ts` instead, in accordance with previous usage.
Add the missing arg for `extract_providers` and fix struct provider syntax. Googlers, see cl/617097191. #oncall
This should resolve build breakages.
…sorflow#6805) Reverts tensorflow#6804. keras-team/keras#19353 resolves this on Keras' end.
…low#6807) We limit the number of hparams retrieved and rendered in the Hparams plugin. Otherwise the plugin can become very slow and even crash. Unlike tensorflow#6780, we do not provide an option for loading more in the Hparams plugin. We may provide this option later if there is demand. But generally we think 1000 should be enough, especially if the underlying hparams provider is sorting the results with "differs" fields first. ![image](https://github.com/tensorflow/tensorboard/assets/17152369/da1f2c26-3804-4faf-be4a-03bb8aaa178d)
…ensorflow#6806) ## Motivation for features / changes This will be useful for supporting nested modals in the upcoming CDK Overlay based CustomModal revamp.
## Motivation for features / changes The current Custom Modal can't display modals outside of their ancestors' stacking context (e.g. in scalar card tables: tensorflow#6737 (comment) ), which significantly hinders scalar table context menu functionality. It also has some minor tricky issues that are difficult to fix like some modals lingering when another one is opened: ![image](https://github.com/tensorflow/tensorboard/assets/736199/934b1d0a-5650-47e2-94f4-e8836c1a6ab4) ## Technical description of changes - Before: Custom modals were defined in a consumer component's template. The modals were embedded views of the consumer component (e.g. DataTableComponent), which prevented them from being displayed outside the table's stacking context, e.g. outside of a scalar card table - After: Custom modals are still defined in a consumer component's template, but wrapped in ng-templates. They are dynamically created using a newly defined CustomModal service. When the appropriate CustomModal service method is a called, the modal template is attached as an embedded view using CDK Overlay, which places it in a top-level overlay container, freeing it from all stacking context issues. CustomModalComponent is completely subsumed by Overlay and is thus deleted. Only the CustomModal service will be required going forward. ## Detailed steps to verify changes work correctly (as executed by you) Manually tested all custom modal features in runs table, filter bar, scalar card table (Need to set query param `enableScalarColumnContextMenus=true` to test scalar table context menu behavior)
Reapplies tensorflow#6778 after tensorflow#6721 inadvertently reverted part of it. The "to_proto" method on Starlark structs is deprecated and shouldn't be used. Instead, the proto module's "encode_text" function should be used. (https://bazel.build/rules/lib/toplevel/proto) It, along with "to_json", can be disabled in Bazel using the flag --incompatible_struct_has_no_methods The underlying implementation is the same, so there should be no observable changes in final outputs.
## Motivation for features / changes Fix a typo `ibazle` to `ibazel` ## Technical description of changes Fix a typo `ibazle` to `ibazel` ## Screenshots of UI changes (or N/A) N/A ## Detailed steps to verify changes work correctly (as executed by you) N/A ## Alternate designs / implementations considered (or N/A) N/A
Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/expressjs/express/releases">express's releases</a>.</em></p> <blockquote> <h2>4.19.2</h2> <h2>What's Changed</h2> <ul> <li><a href="https://github.com/expressjs/express/commit/0b746953c4bd8e377123527db11f9cd866e39f94">Improved fix for open redirect allow list bypass</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/expressjs/express/compare/4.19.1...4.19.2">https://github.com/expressjs/express/compare/4.19.1...4.19.2</a></p> <h2>4.19.1</h2> <h2>What's Changed</h2> <ul> <li>Fix ci after location patch by <a href="https://github.com/wesleytodd"><code>@wesleytodd</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5552">expressjs/express#5552</a></li> <li>fixed un-edited version in history.md for 4.19.0 by <a href="https://github.com/wesleytodd"><code>@wesleytodd</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5556">expressjs/express#5556</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/expressjs/express/compare/4.19.0...4.19.1">https://github.com/expressjs/express/compare/4.19.0...4.19.1</a></p> <h2>4.19.0</h2> <h2>What's Changed</h2> <ul> <li>fix typo in release date by <a href="https://github.com/UlisesGascon"><code>@UlisesGascon</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5527">expressjs/express#5527</a></li> <li>docs: nominating <a href="https://github.com/wesleytodd"><code>@wesleytodd</code></a> to be project captian by <a href="https://github.com/wesleytodd"><code>@wesleytodd</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5511">expressjs/express#5511</a></li> <li>docs: loosen TC activity rules by <a href="https://github.com/wesleytodd"><code>@wesleytodd</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5510">expressjs/express#5510</a></li> <li>Add note on how to update docs for new release by <a href="https://github.com/crandmck"><code>@crandmck</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5541">expressjs/express#5541</a></li> <li><a href="https://redirect.github.com/expressjs/express/pull/5551/commits/660ccf5fa33dd0baab069e5c8ddd9ffe7d8bbff1">Prevent open redirect allow list bypass due to encodeurl</a></li> <li>Release 4.19.0 by <a href="https://github.com/wesleytodd"><code>@wesleytodd</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5551">expressjs/express#5551</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/crandmck"><code>@crandmck</code></a> made their first contribution in <a href="https://redirect.github.com/expressjs/express/pull/5541">expressjs/express#5541</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/expressjs/express/compare/4.18.3...4.19.0">https://github.com/expressjs/express/compare/4.18.3...4.19.0</a></p> <h2>4.18.3</h2> <h2>Main Changes</h2> <ul> <li>Fix routing requests without method</li> <li>deps: body-parser@1.20.2 <ul> <li>Fix strict json error message on Node.js 19+</li> <li>deps: content-type@~1.0.5</li> <li>deps: raw-body@2.5.2</li> </ul> </li> </ul> <h2>Other Changes</h2> <ul> <li>Use https: protocol instead of deprecated git: protocol by <a href="https://github.com/vcsjones"><code>@vcsjones</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5032">expressjs/express#5032</a></li> <li>build: Node.js@16.18 and Node.js@18.12 by <a href="https://github.com/abenhamdine"><code>@abenhamdine</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5034">expressjs/express#5034</a></li> <li>ci: update actions/checkout to v3 by <a href="https://github.com/armujahid"><code>@armujahid</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5027">expressjs/express#5027</a></li> <li>test: remove unused function arguments in params by <a href="https://github.com/raksbisht"><code>@raksbisht</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5124">expressjs/express#5124</a></li> <li>Remove unused originalIndex from acceptParams by <a href="https://github.com/raksbisht"><code>@raksbisht</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5119">expressjs/express#5119</a></li> <li>Fixed typos by <a href="https://github.com/raksbisht"><code>@raksbisht</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5117">expressjs/express#5117</a></li> <li>examples: remove unused params by <a href="https://github.com/raksbisht"><code>@raksbisht</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5113">expressjs/express#5113</a></li> <li>fix: parameter str is not described in JSDoc by <a href="https://github.com/raksbisht"><code>@raksbisht</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5130">expressjs/express#5130</a></li> <li>fix: typos in History.md by <a href="https://github.com/raksbisht"><code>@raksbisht</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5131">expressjs/express#5131</a></li> <li>build : add Node.js@19.7 by <a href="https://github.com/abenhamdine"><code>@abenhamdine</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5028">expressjs/express#5028</a></li> <li>test: remove unused function arguments in params by <a href="https://github.com/raksbisht"><code>@raksbisht</code></a> in <a href="https://redirect.github.com/expressjs/express/pull/5137">expressjs/express#5137</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/expressjs/express/blob/master/History.md">express's changelog</a>.</em></p> <blockquote> <h1>4.19.2 / 2024-03-25</h1> <ul> <li>Improved fix for open redirect allow list bypass</li> </ul> <h1>4.19.1 / 2024-03-20</h1> <ul> <li>Allow passing non-strings to res.location with new encoding handling checks</li> </ul> <h1>4.19.0 / 2024-03-20</h1> <ul> <li>Prevent open redirect allow list bypass due to encodeurl</li> <li>deps: cookie@0.6.0</li> </ul> <h1>4.18.3 / 2024-02-29</h1> <ul> <li>Fix routing requests without method</li> <li>deps: body-parser@1.20.2 <ul> <li>Fix strict json error message on Node.js 19+</li> <li>deps: content-type@~1.0.5</li> <li>deps: raw-body@2.5.2</li> </ul> </li> <li>deps: cookie@0.6.0 <ul> <li>Add <code>partitioned</code> option</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/expressjs/express/commit/04bc62787be974874bc1467b23606c36bc9779ba"><code>04bc627</code></a> 4.19.2</li> <li><a href="https://github.com/expressjs/express/commit/da4d763ff6ba9df6dbd8f1f0b1d05412dda934d5"><code>da4d763</code></a> Improved fix for open redirect allow list bypass</li> <li><a href="https://github.com/expressjs/express/commit/4f0f6cc67d531431c096ea006c2191b92931bbc3"><code>4f0f6cc</code></a> 4.19.1</li> <li><a href="https://github.com/expressjs/express/commit/a003cfab034fbadb1c78ae337ee8ab389adda217"><code>a003cfa</code></a> Allow passing non-strings to res.location with new encoding handling checks f...</li> <li><a href="https://github.com/expressjs/express/commit/a1fa90fcea7d8e844e1c9938ad095d62669c3abd"><code>a1fa90f</code></a> fixed un-edited version in history.md for 4.19.0</li> <li><a href="https://github.com/expressjs/express/commit/11f2b1db227fd42c2508c427032c1ec671b306be"><code>11f2b1d</code></a> build: fix build due to inconsistent supertest behavior in older versions</li> <li><a href="https://github.com/expressjs/express/commit/084e36506a18774f85206a65d8da04dc1107fc1b"><code>084e365</code></a> 4.19.0</li> <li><a href="https://github.com/expressjs/express/commit/0867302ddbde0e9463d0564fea5861feb708c2dd"><code>0867302</code></a> Prevent open redirect allow list bypass due to encodeurl</li> <li><a href="https://github.com/expressjs/express/commit/567c9c665d0de4c344b8e160146050770233783c"><code>567c9c6</code></a> Add note on how to update docs for new release (<a href="https://redirect.github.com/expressjs/express/issues/5541">#5541</a>)</li> <li><a href="https://github.com/expressjs/express/commit/69a4cf2819c4449ec6ea45649691fb43a528d5d1"><code>69a4cf2</code></a> deps: cookie@0.6.0</li> <li>Additional commits viewable in <a href="https://github.com/expressjs/express/compare/4.18.2...4.19.2">compare view</a></li> </ul> </details> <details> <summary>Maintainer changes</summary> <p>This version was pushed to npm by <a href="https://www.npmjs.com/~wesleytodd">wesleytodd</a>, a new releaser for express since your current version.</p> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=express&package-manager=npm_and_yarn&previous-version=4.18.2&new-version=4.19.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/tensorflow/tensorboard/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…ow#6817) ## Motivation for features / changes Context menus in Time series scalar tables are ready for use ## Technical description of changes Removes the enableScalarColumnContextMenus feature flag and associated code ## Detailed steps to verify changes work correctly (as executed by you) Manually tested context menus in runs table, filterbar, scalar tables
…es. (tensorflow#6818) Googlers see cl/617525193. Also ran `buildifier` to format BUILD files. (Linter step was failing from CI run for this change).
## Motivation for features / changes [Global pins] To extend pinned card info available globally, this PR saves pinned info to localStorage ## Technical description of changes * Introduced `savedPinsDataSource` to store pinned card tag information in local storage. * Since the focus in on saving scalar cards, only the tag name is persisted. * Implemented methods `saveScalarPin`, `removeScalarPin`, and `getSavedScalarPins`. * Added `addOrRemovePin$` effect in the `metrics/effects/index.ts` * When the `actions. cardPinStateToggled` is triggered, find the card info in the `visibeCardFetchInfos` , and the scalar pin info is saved or removed accordingly. ## Screenshots of UI changes (or N/A) N/A ## Detailed steps to verify changes work correctly (as executed by you) * Unit tests pass ## Alternate designs / implementations considered (or N/A) N/A
Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/indutny/node-ip/commit/1ecbf2fd8c0cc85e44c3b587d2de641f50dc0217"><code>1ecbf2f</code></a> 1.1.9</li> <li><a href="https://github.com/indutny/node-ip/commit/6a3ada9b471b09d5f0f5be264911ab564bf67894"><code>6a3ada9</code></a> lib: fixed CVE-2023-42282 and added unit test</li> <li>See full diff in <a href="https://github.com/indutny/node-ip/compare/v1.1.8...v1.1.9">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/follow-redirects/follow-redirects/commit/35a517c5861d79dc8bff7db8626013d20b711b06"><code>35a517c</code></a> Release version 1.15.6 of the npm package.</li> <li><a href="https://github.com/follow-redirects/follow-redirects/commit/c4f847f85176991f95ab9c88af63b1294de8649b"><code>c4f847f</code></a> Drop Proxy-Authorization across hosts.</li> <li><a href="https://github.com/follow-redirects/follow-redirects/commit/8526b4a1b2ab3a2e4044299377df623a661caa76"><code>8526b4a</code></a> Use GitHub for disclosure.</li> <li><a href="https://github.com/follow-redirects/follow-redirects/commit/b1677ce00110ee50dc5da576751d39b281fc4944"><code>b1677ce</code></a> Release version 1.15.5 of the npm package.</li> <li><a href="https://github.com/follow-redirects/follow-redirects/commit/d8914f7982403ea096b39bd594a00ee9d3b7e224"><code>d8914f7</code></a> Preserve fragment in responseUrl.</li> <li>See full diff in <a href="https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Dependabot upgrade tensorflow#6802 failed since Python files need to be reformatted after `black` upgrade, bumping `black` version and linting the Python files in this PR. #oncall
## Motivation for features / changes Following tensorflow#6819 [Global pins] To extend pinned card info available globally , this PR load saved pins in the localStorage. ## Technical description of changes * 3e5b052 Introduced new action called`metricsUnresolvedPinnedCardsAdded`. * When `metricsUnresolvedPinnedCardsAdded` is dispatched, the reducer adds the provided card info to the `state. unresolvedImportedPinnedCards`. * aae9be4 Added `loadSavedPins$` effect in the `metrics/effects/index.ts` * When `coreActions.pluginsListingLoaded` is triggered, it loads saved scalar pins in the localStorage and dispatch `metricsUnresolvedPinnedCardsAdded` with saved pinned cards. * Added `getShouldPersistSettings()` checking logic (metioned in tensorflow#6819 (comment)) * 2dc49aa To use selector globally, added `persistent_settings_selectors` to the `webapp/selectors`. * Add checking `getShouldPersistSettings` in the `loadSavedPins$` and `addOrRemovePin$`. ## Screenshots of UI changes (or N/A) N/A ## Detailed steps to verify changes work correctly (as executed by you) * Unit test pass & TAP presubmit pass ## Alternate designs / implementations considered (or N/A) N.A
In the Hparams plugin, when fetching metrics (scalar data) for multiple experiments in the comparison view, we can't replace group name `.` with an empty string. Googlers, see b/332308243 for more details. Tested internally: cl/582334596 #hparams #oncall
…d tf-keras-nightly (tensorflow#6823) This should fix the issue described in tensorflow#6686. Compared the graph content with the one parsed from Keras 3, there are some changes in the structure and naming, this PR modifies the graph parsing accordingly. Googlers, see b/325451531 and b/312739672. Tested with `tensorboard/plugins/graph:graphs_demo`: ![image](https://github.com/tensorflow/tensorboard/assets/15273931/2e13205a-5ea2-437c-9fa7-3198f0eed1c5) #keras3 #oncall
Currently inbound node parsing is not backward compatible with Keras 2. Instead of failing directly, changed the code to return empty inbound node results. Googlers, see the description in cl/622948159 for context. Tested internally: cl/582334596 #keras3 #oncall
## Motivation for features / changes Following tensorflow#6821 As pin data is accumulated, unwanted pins can easily crowd the dashboard. Therefore, this PR adds a button that allows users to conveniently clear all pins at once. ## Technical description of changes * 57c6a47 Introduced new action called `metricsClearAllPinnedCards` * When `metricsClearAllPinnedCards` is dispatched, the reducer removed all pinned cards in the state. * a04c2d7 Added `clear all pins` button in the pinned view container. * The button will be shown if there's at least one pinned card. * f0c3a54 Implemented `removeAllScalarPins` method in the saved pins data source. * This method removes stored pins from local storage. * e97b110 Added `removeAllPins` effect in the `metrics/effects/index.ts` * When `metricsClearAllPinnedCards` action is called, this effect will call `removeAllScalarPins` method defined in the saved pin data source. * c0edd37 guarded UI feature (button) with feature flag and added related tests. ## Screenshots of UI changes (or N/A) ### Light mode ![image](https://github.com/tensorflow/tensorboard/assets/24772412/a0793e8b-7fea-45f0-b2d8-4e742ca40918) ### Dark mode ![image](https://github.com/tensorflow/tensorboard/assets/24772412/581468a1-1a9c-4ab4-b70a-13c5a5b168f6) ## Detailed steps to verify changes work correctly (as executed by you) Unit test pass & cl TAP presubmit pass ## Alternate designs / implementations considered (or N/A) I also considered a feature to select a pinned card and remove the selected pinned card, but I thought that this would be the same as pressing the 'unpin' button individually from the user's perspective. So I implemented a 'clear all pins' button that removes all pinned cards. Any feedback is appreciated!
Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.12 to 6.2.1. Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Motivation for features / changes Following tensorflow#6828, Since global pins are applied automatically, this PR allows users disable the global pin feature. ## Technical description of changes 2cf2b11 Added `savingPinsEnabled` in the `MetricsSettings` * Also added a selector getting `settings.savingPinsEnabled` value from the store. dec6a63 Introduced new action `metricsEnableSavingPinsToggled` * If `metricsEnableSavingPinsToggled` is dispatched, it toggles the `savingPinsEnabled` store value. 6ea22fd Added a checkbox UI to the settings view component. * Also added a feature flag guard to the component. If check box is clicked, it dispatched `metricsEnableSavingPinsToggled` action. 568febf Added a new effect `disableSavingPins` * When `metricsEnableSavingPinsToggled` action is called, this effect will call `removeAllScalarPins` method if `savingPinsEnabled` value is false. bbf9050 Added saving pins feature in persistent settings to preserve user preferences. 3ff7cd2 Add buildMetricsSettingsOverrides util in the testing to use in tbcorp ## Screenshots of UI changes (or N/A) ![image](https://github.com/tensorflow/tensorboard/assets/24772412/874dbc2b-f01f-4112-b34b-6b07330ea31f) ## Detailed steps to verify changes work correctly (as executed by you) Unit test passes + created a cl/625208577 to pass TAP Presubmit tests ## Alternate designs / implementations considered (or N/A) N/A ## Action Items in the next PR In the next PR, I'll add a "confirmation dialog" that appears when the user unchecks the checkbox to make the user aware that local storage is disappearing. - [ ] Add the confirmation dialog
Some users require the spaces to be preserved in the text shown in the text dashboard. At the moment I can't think of a reason why not to enable this unconditionally. I imagine anybody interested in seeing text logged would be interested in the value *verbatim*, including spaces. Googlers, see b/335770352
## Motivation for features / changes In 3p, enabling standard (non-hparam column) hide is currently dangerous as there is currently no way to re-show them. Enabling for 3p will have to wait until we add an affordance other than the 1p-only column customizer. Affected users can clear localStorage for the page, or add the `enableScalarColumnCustomization=true` flag to enable the column customizer in the settings menu and re-add hidden columns. ## Technical description of changes Sets `enableScalarColumnContextMenus` default to `false`. (Reverts tensorflow#6817)
…ables (tensorflow#6836) ## Motivation for features / changes Using functions in Angular templates leads to unnecessary recomputation, e.g. getHeaders() is called 60 times from data tables on init and add). More seriously, they also interfere with other component usage like CDK Overlay: namely, when an Overlay is set to appear next to a header, the header element is destroyed and recreated (because of the function in the template) before the Overlay can position itself, and ends up always resetting its position to (0,0). Simply memoizing the function will prevent the recomputation ([Angular ref](https://angular.io/guide/change-detection-slow-computations#optimizing-slow-computations)). Profiling the memoized change (using Chrome devtools profiler, which is admittedly a bit inconsistent) seems to show a several 100ms improvement in scripting performance. ## Technical description of changes Replaces the `getHeaders` functions used in scalar/runs data tables with a new memoized `extendHeaders(headers)` function. No change in UI behavior. ## Screenshots of UI changes (or N/A) N/A
…ensorflow#6840) ## Motivation for features / changes This PR fixes the renaming in tensorflow#6831 and adds test cases to make the test robust. ## Technical description of changes * Tried to rename `disableSavingPins` to `removeSavedPinsOnDisable`, but tensorflow#6831 accidentally changed `removeAllPins` to `removeSavedPinsOnDisable`. ## Screenshots of UI changes (or N/A) ## Detailed steps to verify changes work correctly (as executed by you) * Added test cases + cl TAP presubmit passes ## Alternate designs / implementations considered (or N/A)
…r scroll (tensorflow#6837) ## Motivation for features / changes - Moving the expand button out of the runs table is required to make it compatible with the upcoming sticky add column b/332788091 - When the table is both vertically long and horizontally wide, it's very difficult to scroll horizontally: users must scroll all the way to the bottom of the table in order to access the horizontal scroll bar. b/332720882 ## Technical description of changes - Moves the "expand button" from inside the runs data table to the LayoutContainer (in the side bar). - Moves the "overflow" css property from the runs table to RunsSelectorComponent (the runs table wrapper) - Makes the runs table header sticky. This was already set, but wasn't being applied due to a missing "position: relative" parent. ## Screenshots of UI changes (or N/A) sticky header: ![image](https://github.com/tensorflow/tensorboard/assets/736199/f2569648-6395-4411-9302-f626b6bd5e9f) expand table button: ![image](https://github.com/tensorflow/tensorboard/assets/736199/35b2e624-f015-41dc-9114-0cab63b70eef)
## Motivation for features / changes The add column button in the runs table will be hidden when the table is wide, which will often be the case. This makes the "add" feature very difficult to discover. context: b/332788091 ## Technical description of changes - Moves the add button column outside of and adjacent to the data table (previously it was a column of the table) and makes it sticky - Adds additional configuration options to data table to allow runs and scalar tables to have slightly different designs ## Screenshots of UI changes (or N/A) Notice the add column is fixed to the right: ![sticky](https://github.com/tensorflow/tensorboard/assets/736199/0f7aca5c-0903-438a-bafd-ddc033e262f7) Scalar table add column is slightly narrower: ![image](https://github.com/tensorflow/tensorboard/assets/736199/e8c37505-4c3f-41bd-98f3-3b31f99e206e) ## Alternate designs / implementations considered (or N/A) - Tried adding the add columns to the consumer components of the data table (runs data table and scalar card data table) instead. But this led to too much code duplication in the components and templates. - Tried making the add column a regular table column, instead of adding it outside in a separate div. But making the column sticky requires styling the table rows, which data table doesn't provide access to (rows are configured solely in the consumer components). Also, the chosen implementation is arguably more consistent with the current design as the add "column" doesn't actually function as a table column at all
…in feature (tensorflow#6843) ## Motivation for features / changes Regarding tensorflow#6831 , this PR adds confirmation dialog" that appears when the user clears the checkbox to make the user aware that local storage is disappearing. ## Technical description of changes 0e63b07 created a `saving pins dialog` component 05e06f5 Created a `saving pins checkbox` component * The Save Pin checkbox prevents the default click and must be done after confirmation in the modal. So I added `MAT_CHECKBOX_DEFAULT_OPTIONS` (https://v15.material.angular.io/comComponents/checkbox/overview#click-action-config) to prevent the default click event. However, if I add this directly to the `settings view component`, all checkboxes will be disabled, including other unwanted ones. So, I created a separate checkbox for the Save Pin checkbox. Please let me know is there any other good way to do this. 6ba778e Make the dialog shows up when user clears the checkbox * Passes to `onEnableSavingPinsToggled` whether the checkbox is selected. * If the checkbox is selected and user clicks it, it means that the user disables the global pin, so a dialog box is displayed. * If the checkbox is not checked but is clicked, it means the user is trying to enable a global pin and no dialog box will be displayed. * `onEnableSavingPinsToggled` and `isSavingPinsEnabled` is passed to `saving-pins-checkbox` component. ## Screenshots of UI changes (or N/A) ![image](https://github.com/tensorflow/tensorboard/assets/24772412/eb442565-4f39-45e7-b893-4866ee3fc1e4) ## Detailed steps to verify changes work correctly (as executed by you) unit test passes + TAP presubmit passes ## Alternate designs / implementations considered (or N/A)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation for features / changes
Users want to color runs by the regex string of the corresponding to runs experiment names.
Technical description of changes
Screenshots of UI changes (or N/A)
N/A since internal change.
Detailed steps to verify changes work correctly (as executed by you)
Regex
.Experiment Name
in dropdown.Alternate designs / implementations considered (or N/A)
N/A