Agent development conflicts#68
Merged
Merged
Conversation
tensorflow#7057) ## Motivation for features / changes Fixes tensorflow#7003. `pkg_resources` is removed in newer setuptools, which can break TensorBoard at import/runtime. This change removes runtime reliance on `pkg_resources` in the two affected code paths. ## Technical description of changes - Replaced dynamic plugin discovery in `tensorboard/default.py`: - from `pkg_resources.iter_entry_points(...)` - to `importlib.metadata.entry_points(...)` with compatibility handling for different Python return shapes. - Replaced version parsing in `tensorboard/data/server_ingester.py`: - from `pkg_resources.parse_version(...)` - to `packaging.version.parse(...)`. - Updated related tests: - `tensorboard/default_test.py` now patches `_iter_entry_points` and uses `load()`-style fake entry points. - `tensorboard/version_test.py` now validates PEP 440 behavior using `packaging.version`. - Updated Bazel deps to use `expect_packaging_installed` where `packaging` is now required. ## Detailed steps to verify changes work correctly (as executed by you) Executed locally in an isolated venv: - `python -m py_compile tensorboard/default.py tensorboard/default_test.py tensorboard/data/server_ingester.py tensorboard/version_test.py` - `PYTHONPATH=. python tensorboard/version_test.py` (passes) Attempted but environment-limited locally: - `bazel test //tensorboard:version_test //tensorboard:default_test //tensorboard/data:server_ingester_test` (bazel not available in local shell) - Direct execution of `default_test.py` and `server_ingester_test.py` without Bazel-generated artifacts hit local environment/import constraints. ## Alternate designs / implementations considered (or N/A) - N/A
## Motivation for features / changes This PR is the first 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 20. This specific PR upgrades TensorBoard from Angular 15 to Angular 16, initiating the migration path toward Angular 20+. Keeping the framework and aligned dependencies (NgRx, TypeScript, RxJS, zone.js, etc.) up to date ensures continued compatibility, security support, and maintainability, while preparing the project for future Angular features and ecosystem improvements. ## Technical description of changes Upgrade the TensorBoard web application from Angular 15 to Angular 16 following TensorBoard’s DEVELOPMENT.md guidelines and the official Angular migration guide. ## Detailed steps to verify changes work correctly (as executed by you) - Follow steps to run Tensorboard from clean state https://github.com/tensorflow/tensorboard/blob/master/DEVELOPMENT.md#how-to-develop-tensorboard - Execute docker build - Run with iBazel
…ks (tensorflow#7069) ## Motivation for features / changes This MacOS version is not supported anymore as we intend to reduce maintenance we opt for removing this task. ## Technical description of changes This line defines the platforms on which the job runs.
…, drop macOS CI) Merge three upstream commits: - Remove runtime pkg_resources dependency (tensorflow#7057): uses importlib.metadata and packaging.version instead. TensorBored already migrated to this in prior PRs; conflicts resolved by keeping tensorbored imports/paths. - Angular 15 to 16 upgrade (tensorflow#7056): zone.js 0.13, ViewContainerRef.createComponent, ESM imports for three OrbitControls, patch-package patches for build tooling. - Drop macOS from data-server pip CI (tensorflow#7069): Ubuntu-only build matrix. Conflict resolutions: - .github/workflows/ci.yml: accept upstream (drop macOS platform) - tensorboard/version_test.py: delete (already renamed to tensorbored/) - tensorbored/BUILD: keep tensorbored paths, drop expect_pkg_resources_installed - tensorbored/data/BUILD: keep tensorbored paths - tensorbored/data/server_ingester.py: keep tensorbored imports and Version() - tensorbored/default.py: keep tensorbored imports and _get_entry_points pattern - tensorbored/default_test.py: clean up duplicate FakeEntryPoint, use _get_entry_points mock Co-authored-by: Samuel <samuel@knutsen.co>
Co-authored-by: Samuel <samuel@knutsen.co>
|
Cursor Agent can help with this pull request. Just |
Preview Deployment
Details
|
|
You have run out of free Bugbot PR reviews for this billing cycle. This will reset on April 9. To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial. |
This file contains hidden or 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
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
This PR resolves merge conflicts from upstream
tensorflow/tensorboardPR #67, integrating recent changes while preservingtensorbored's specific customizations and build configurations. The primary goal was to update the codebase with upstream improvements and dependency changes (e.g.,pkg_resourcesremoval, Angular 16 upgrade) without regressingtensorbored-specific features or build targets.Technical description of changes
This PR merges three upstream
tensorflow/tensorboardcommits:pkg_resourcesdependency (Remove runtime pkg_resources dependency in default and server_ingester tensorflow/tensorboard#7057): Switches toimportlib.metadataandpackaging.version.zone.js, usesViewContainerRef.createComponent(), and applies ESM imports/patches.tensorbored's macOS CI for the data-server.Seven conflicts were resolved:
.github/workflows/ci.yml: Retainedmacos-14forbuild-data-server-pip(overriding upstream's removal).tensorboard/version_test.py: Deleted, astensorbored/version_test.pyalready exists with equivalent changes.tensorbored/BUILD: Kepttensorboredpaths and removed the now-unusedexpect_pkg_resources_installedrule.tensorbored/data/BUILD: Kepttensorboredpaths.tensorbored/data/server_ingester.py: Kepttensorboredimports and the directVersion()import style.tensorbored/default.py: Kepttensorboredimports and the version-branched_get_entry_pointspattern.tensorbored/default_test.py: Cleaned up a duplicateFakeEntryPointclass and adapted upstream's test pattern for_get_entry_points.Auto-merged files (Angular 16 webapp changes,
package.json,yarn.lock,defs.bzl, patches) were integrated.Screenshots of UI changes (or N/A)
N/A
Detailed steps to verify changes work correctly (as executed by you)
<<<<<<<,=======,>>>>>>>) remain in any files.zone.jsimport paths,createComponentusage) for correct Angular 16 upgrade application.pkg_resourcesin the codebase after its removal.macos-14is present in.github/workflows/ci.ymlfor thebuild-data-server-pipjob.Alternate designs / implementations considered (or N/A)
N/A - The primary goal was to resolve conflicts following existing project conventions and user requirements (e.g., retaining macOS CI).