Skip to content

Sync upstream tensorflow/tensorboard master (3 commits)#73

Merged
Demonstrandum merged 5 commits into
masterfrom
cursor/tensorboard-upstream-sync-825c
May 28, 2026
Merged

Sync upstream tensorflow/tensorboard master (3 commits)#73
Demonstrandum merged 5 commits into
masterfrom
cursor/tensorboard-upstream-sync-825c

Conversation

@Demonstrandum

Copy link
Copy Markdown
Owner

Motivation for features / changes

Sync the fork with the latest upstream tensorflow/tensorboard master branch. Three new upstream commits are merged:

  1. 2e19048d9refactor: remove deprecated Sass wrapper macros (#7103)

    • Replaces tf_sass_binary, tf_sass_library, and tf_external_sass_libray wrappers with direct sass_binary, sass_library, and npm_sass_library calls from @io_bazel_rules_sass
    • Updates rules_sass from 1.55.0 to 1.69.5
    • Adds include_paths = ["external/npm/node_modules"] to each sass_binary for dart-sass resolution
  2. af354e988Angular upgrade from version 16 to 17 (#7085)

    • Upgrades Angular, NgRx, and Material from v16 to v17
    • Upgrades TypeScript to 5.2.2 and zone.js to 0.14
    • Uses Node.js 18 in Bazel and CI
    • Updates build-tooling patch for Angular 17
  3. 1dd45704achore: Migrate gsutil usage to gcloud storage (#7063)

    • Migrates gsutil CLI usage to gcloud storage CLI

Technical description of changes

Merge conflicts resolved:

  • tensorboard/ modify/delete conflicts (15 BUILD files): The fork renamed tensorboard/ to tensorbored/, so upstream-modified tensorboard/ BUILD files were correctly deleted (they don't belong in this fork).

  • Sass macro migration for tensorbored/ BUILD files (18 files): Since git couldn't track the directory rename, the upstream's Sass macro removal was not auto-applied to the tensorbored/ copies. Manually applied the same migration:

    • tf_sass_binary(sass_binary( with include_paths
    • tf_sass_library(sass_library(
    • tf_external_sass_libray(npm_sass_library(
    • Updated load statements to import from @io_bazel_rules_sass directly
  • New tensorbored/webapp/angular_components/BUILD: Created the fork-equivalent of the new upstream npm_sass_library target material_sass, and updated all 9 BUILD files that referenced the old //tensorbored/webapp:angular_material_sass_deps target to use //tensorbored/webapp/angular_components:material_sass.

  • .github/workflows/ci.yml: Merged the fork's tensorbored paths with upstream's new angular_components exclusion.

  • tensorbored/data/server/DEVELOPMENT.md: Kept fork's tensorbored-bench-logs bucket name, applied upstream's gsutilgcloud storage migration.

  • tensorbored/tools/whitespace_hygiene_test.py: Accepted upstream's new exception for the Angular build-tooling patch file.

Screenshots of UI changes (or N/A)

N/A — no UI changes, build system and dependency updates only.

Detailed steps to verify changes work correctly (as executed by you)

  1. Verified no conflict markers remain in any file
  2. Verified all tf_sass_binary/tf_sass_library/tf_external_sass_libray references are removed
  3. Verified all sass_binary targets have include_paths = ["external/npm/node_modules"]
  4. Verified all angular_material_sass_deps references updated to angular_components:material_sass
  5. Verified load statements properly import from @io_bazel_rules_sass
  6. Verified no stale tensorboard/ directory files remain

Alternate designs / implementations considered (or N/A)

N/A — standard upstream sync following the existing upstream-sync.yml pattern.

Open in Web Open in Cursor 

bhandarivijay-png and others added 5 commits April 9, 2026 09:48
Automated: Migrate {target_path} from gsutil to gcloud storage

This CL is part of the on going effort to migrate from the legacy
`gsutil` tool to the new and improved `gcloud storage` command-line
interface.
`gcloud storage` is the recommended and modern tool for interacting with
Google Cloud Storage, offering better performance, unified
authentication, and a more consistent command structure with other
`gcloud` components. 🚀

### Automation Details

This change was **generated automatically** by an agent that targets
users of `gsutil`.
The transformations applied are based on the [gsutil to gcloud storage
migration guide](http://go/gsutil-gcloud-storage-migration-guide).

### ⚠️ Action Required: Please Review and Test Carefully

While we have based the automation on the migration guide, every use
case is unique.
**It is crucial that you thoroughly test these changes in environments
appropriate to your use-case before merging.**
Be aware of potential differences between `gsutil` and `gcloud storage`
that could impact your workflows.
For instance, the structure of command output may have changed,
requiring updates to any scripts that parse it. Similarly, command
behavior can differ subtly; the `gcloud storage rsync` command has a
different file deletion logic than `gsutil rsync`, which could lead to
unintended file deletions.

Our migration guides can help guide you through a list of mappings and
some notable differences between the two tools.

Standard presubmit tests are run as part of this CL's workflow. **If you
need to target an additional test workflow or require assistance with
testing, please let us know.**

Please verify that all your Cloud Storage operations continue to work as
expected to avoid any potential disruptions in production.

### Support and Collaboration

The `GCS CLI` team is here to help! If you encounter any issues, have a
complex use case that this automated change doesn't cover, or face any
other blockers, please don't hesitate to reach out.
We are happy to work with you to test and adjust these changes as
needed.

**Contact:** `gcs-cli-hyd@google.com`

We appreciate your partnership in this important migration effort!

#gsutil-migration

Co-authored-by: gurusai-voleti <gvoleti@google.com>
## Motivation for features / changes

This PR is the second step in a planned major Angular upgrade cycle,
where each major version will be delivered in a separate PR,
incrementally progressing until the project reaches Angular 21. This
specific PR upgrades TensorBoard from Angular 16 to Angular 17

## Technical description of changes
- Upgrade Angular, NgRx, and Material from v16 to v17
- Upgrade TypeScript to 5.2.2 and zone.js to 0.14
- Use Node.js 18 in Bazel and CI (required by Angular 17)
- Update build-tooling patch to match Angular 17 version
  - Fix Bazel TypeScript compiler crash caused by TypeScript 5.x
- Fix 3 snackbar tests that broke due to Material 17 behavior change
  - Remove deprecated Material legacy theme APIs  

## Screenshots of UI changes (or N/A)

## Detailed steps to verify changes work correctly (as executed by you)
 - All 2022 webapp tests pass
  - yarn lint passes with Node 18
  - App builds and runs locally

## Alternate designs / implementations considered (or N/A)
## Motivation for features / changes
Unblock internal LSC intended to remove workarounds for Sass and bad
practices. Internal issue: b/508363660. This PR removes the wrappers for
Sass build rules. Sass rules must directly declare their dependencies.

Per Sass build rules guidelines, wrapper macros are discouraged, and
tf_external_sass_libray was relying on a loophole (passing a
sass_library to another sass_library's srcs) that is being closed.

## Technical description of changes
- Replace `tf_sass_binary`,`tf_sass_library`, and
`tf_external_sass_libray` wrappers with direct calls to `sass_binary`,
`sass_library`, and `npm_sass_library` from `@io_bazel_rules_sass`.
- Updated hash version rules_sass from 1.55.0 to 1.69.5 
- Replaces the angular_material_sass_deps target with a direct
npm_sass_library call. This produces a SassInfo provider consumed via
deps, complying with the rule that sass libraries must declare deps
directly rather than passing one library to another's srcs.
- Added `include_paths = ["external/npm/node_modules"]` to each
sass_binary so dart-sass can resolve `@use '@angular/material'`. The old
wrapper set this automatically, now it has to be set per target.

## Detailed steps to verify changes work correctly (as executed by you)
- BUILD
- Standalone running
- No console errors
Automated sync from https://github.com/tensorflow/tensorboard

Upstream commits (3):
- 2e19048 refactor: remove deprecated Sass wrapper macros (tensorflow#7103)
- af354e9 Angular upgrade from version 16 to 17 (tensorflow#7085)
- 1dd4570 chore: Migrate gsutil usage to gcloud storage (tensorflow#7063)

Conflict resolution:
- Resolved modify/delete conflicts for tensorboard/ paths (fork uses tensorbored/)
- Resolved Sass macro migration: tf_sass_binary -> sass_binary,
  tf_sass_library -> sass_library, tf_external_sass_libray -> npm_sass_library
- Added include_paths to all sass_binary targets
- Created tensorbored/webapp/angular_components/BUILD (new upstream target)
- Updated angular_material_sass_deps refs to angular_components:material_sass
- Kept tensorbored path naming throughout
- Applied gsutil -> gcloud storage migration to DEVELOPMENT.md
- Accepted Angular patch file whitespace exception

Co-authored-by: Samuel <samuel@knutsen.co>
Co-authored-by: Samuel <samuel@knutsen.co>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit ff40f7d. Configure here.

Comment thread tensorbored/defs/defs.bzl
],
)

def tf_sass_binary(deps = [], include_paths = [], strict_deps = True, **kwargs):

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing sourcemap = False in migrated sass_binary calls

Low Severity

The removed tf_sass_binary wrapper explicitly set sourcemap = False when calling sass_binary. All replacement sass_binary calls across ~30 BUILD files omit this setting. Since sass_binary in @io_bazel_rules_sass defaults sourcemap to True, all Sass targets now generate .css.map source map files that were previously suppressed. This silently changes build output and could expose source file structure in production.

Additional Locations (2)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit ff40f7d. Configure here.

@github-actions

github-actions Bot commented May 28, 2026

Copy link
Copy Markdown

Preview Deployment

Status ⏳ Build Timeout
Live Preview https://Demonstrandum-tensorbored-pr-73.hf.space
Space https://huggingface.co/spaces/Demonstrandum/tensorbored-pr-73
Details
  • Wheel: tensorbored_nightly-2.21.0a20260528-py3-none-any.whl
  • Commit: bb35581
  • Build status: timeout

@Demonstrandum Demonstrandum merged commit 60f5e5d into master May 28, 2026
14 checks passed
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.

4 participants