Skip to content

Revert Vue 3.5 features added to dashboard to maintain compatibility with Vue 3.2 #13880

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

Merged
merged 3 commits into from
Mar 27, 2025

Conversation

rak-phillip
Copy link
Member

@rak-phillip rak-phillip commented Mar 25, 2025

Summary

This reverts any Vue 3.5 features that might be used in Rancher Dashboard so that Rancher Shell can maintain compatibility with Rancher Dashboard v2.10/Vue 3.2.

Occurred changes and/or fixed issues

  • Replace useTemplateRef with ref for Vue 3.2.47 compatibility of shell
  • Replace Reactive Props Destructure with withDefaults macro

Technical notes summary

Several Vue 3.5 features that were added to Rancher Dashboard for v2.11 have caused backwards incompatibility issues with recent shell versions and Rancher Dashboard v2.10. Dashboard 2.10 still has a dependency on Vue 3.2.47. Therefore, any apis introduced for Vue 3.5 will throw an error when accessed in extensions that are loaded in Dashboard 2.10.

Areas or cases that should be tested

This was uncovered in the latest Harvester extension loaded on Rancher Dashboard 2.10. This change will need to be tested in a similar setup.

Areas which could experience regressions

  • New Dropdown Menu
  • Status Badge
  • Toggle Switch
  • Sortable Table

Screenshot/Video

NA

Checklist

  • The PR is linked to an issue and the linked issue has a Milestone, or no issue is needed
  • The PR has a Milestone
  • The PR template has been filled out
  • The PR has been self reviewed
  • The PR has a reviewer assigned
  • The PR has automated tests or clear instructions for manual tests and the linked issue has appropriate QA labels, or tests are not needed
  • The PR has reviewed with UX and tested in light and dark mode, or there are no UX changes

`useTemplateRef` was added to Vue 3.5, but cannot be used in extensions that might be installed in Rancher 2.10 because that has a dependency on Vue 3.2.

Signed-off-by: Phillip Rak <[email protected]>
Reactive Props Destructure was added to Vue 3.5, but cannot be used in extensions that might be installed in Rancher 2.10 because that has a dependency on Vue 3.2.

Signed-off-by: Phillip Rak <[email protected]>
aalves08
aalves08 previously approved these changes Mar 26, 2025
Copy link
Member

@aalves08 aalves08 left a comment

Choose a reason for hiding this comment

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

From the dashboard, side, LGTM, so I'm giving the 👍 . I'll wait for @a110605 approval from the Harvester side

@rak-phillip rak-phillip added this to the v2.12.0 milestone Mar 26, 2025
Copy link
Contributor

@a110605 a110605 left a comment

Choose a reason for hiding this comment

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

Test on Rancher 2.10.4-alpha2 with #13874 together.

The useTemplateRef error is fixed and the delete action menu is good.

fixed_2-10.4.mov

@aalves08 aalves08 merged commit 6b863a6 into rancher:master Mar 27, 2025
35 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.

3 participants