Skip to content

Update homeassistant-frontend submodule to 20260312.0#923

Draft
loganrosen wants to merge 2 commits intohacs:mainfrom
loganrosen:gulp-node22-compat
Draft

Update homeassistant-frontend submodule to 20260312.0#923
loganrosen wants to merge 2 commits intohacs:mainfrom
loganrosen:gulp-node22-compat

Conversation

@loganrosen
Copy link

@loganrosen loganrosen commented Mar 15, 2026

Updates the HA frontend submodule from 20250109.0 to 20260312.0 (latest release), and updates HACS source code for compatibility.

Submodule update

Brings in 14 months of upstream changes including gulp 5.0.1, which fixes Node 20+ compatibility (gulp-cli@3.1.0 handles async ESM modules).

HACS source compatibility fixes

Adapts to upstream component renames and removals:

  • ha-circular-progressha-spinner
  • ha-menu/ha-md-menu-itemha-dropdown/ha-dropdown-item
  • ha-button-menuha-dropdown
  • mwc-button + slot="primaryAction"/slot="secondaryAction"ha-button + ha-dialog-footer slot="footer"
  • createCloseHeading()ha-dialog header-title attribute
  • resources/compatibility and @polymer/polymer removed
  • resources/ha-styleresources/append-ha-style
  • brandsUrl useFallback option removed (API changed to local endpoint)
  • Fetch brands access token on HACS init for integration icons

Build system fixes

  • polymer_dirroot_dir in paths.cjs and rspack.cjs
  • Remove isHassioBuild param (removed upstream)
  • Write dummy iconMetadata.json for rspack resolution

CI

  • Node 18 → Node 22

Tested on a live HA 2026.3.3 instance — dashboard, menus, download dialog, and repository pages all work correctly.

Copilot AI review requested due to automatic review settings March 15, 2026 22:57
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates the frontend build toolchain dependency on Gulp to the latest patch release and refreshes the Yarn lockfile accordingly.

Changes:

  • Bump gulp from 5.0.0 to 5.0.1 in package.json.
  • Update yarn.lock to reflect the new resolved versions of Gulp and related transitive dependencies.

Reviewed changes

Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.

File Description
package.json Pins gulp to 5.0.1 (patch upgrade).
yarn.lock Updates lockfile resolutions/checksums for gulp and related transitive deps (e.g., gulp-cli, vinyl-fs, glob-stream, liftoff, vinyl).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

@hacs-bot hacs-bot bot marked this pull request as draft March 16, 2026 11:51
Updates the HA frontend submodule from 20250109.0 to 20260312.0,
bringing in upstream dependency updates including gulp 5.0.1 which
fixes Node 20+ compatibility (gulp-cli 3.1.0 handles async ESM).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@loganrosen loganrosen changed the title Upgrade gulp 5.0.0 → 5.0.1 for Node 20+ compatibility Update homeassistant-frontend submodule to 20260312.0 Mar 20, 2026
@loganrosen loganrosen force-pushed the gulp-node22-compat branch 2 times, most recently from 71ffbb1 to 37a62f0 Compare March 26, 2026 02:29
@loganrosen loganrosen requested a review from Copilot March 26, 2026 02:32
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the homeassistant-frontend submodule to 20260312.0 and adjusts HACS frontend code/build/CI to remain compatible with upstream frontend component and build-script changes.

Changes:

  • Migrates UI components to upstream replacements (e.g., menu/dropdown, spinner, dialog footer/button patterns).
  • Updates build scripts to match upstream build-script API changes (e.g., polymer_dirroot_dir) and adds a dummy icon metadata output for rspack resolution.
  • Updates tooling/CI to newer Node/Yarn and refreshes dependency versions for the new frontend baseline.

Reviewed changes

Copilot reviewed 15 out of 16 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/localize/languages/en.json Minor localization text capitalization update.
src/hacs.ts Fetches/schedules brands access token during HACS init.
src/entrypoint.ts Removes old compatibility/polymer imports; switches to append-ha-style.
src/dashboards/hacs-repository-dashboard.ts Replaces HA menu components with ha-dropdown equivalents and updates open/anchor behavior.
src/dashboards/hacs-dashboard.ts Same dropdown migration; updates brands URL options usage.
src/components/dialogs/hacs-form-dialog.ts Migrates dialog actions to ha-dialog-footer + ha-button and uses headerTitle.
src/components/dialogs/hacs-download-dialog.ts Migrates spinner and dialog footer/actions to new components.
src/components/dialogs/hacs-custom-repositories-dialog.ts Migrates dialog header/actions to headerTitle + ha-dialog-footer + ha-button.
script/gulp/rspack.cjs Updates HA build-script path API usage (root_dir).
script/gulp/paths.cjs Updates HA paths wiring (root_dir).
script/gulp/app.js Wraps dummy icon generation task to also write iconMetadata.json.
package.json Updates dependencies/devDependencies and Yarn version pointer.
.yarnrc.yml Updates Yarn release path.
.github/workflows/test.yml Updates CI Node version to 22.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 15 out of 16 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Adapt to upstream component renames and removals:
- ha-circular-progress → ha-spinner
- ha-menu/ha-md-menu-item → ha-dropdown/ha-dropdown-item
- ha-button-menu → ha-dropdown
- createCloseHeading() → ha-dialog header-title attribute
- resources/compatibility and @polymer/polymer removed
- resources/ha-style → resources/append-ha-style

Build system fixes:
- polymer_dir → root_dir in paths.cjs and rspack.cjs
- Remove isHassioBuild (removed upstream)
- Write dummy iconMetadata.json for rspack resolution

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.

3 participants