Skip to content

[Manager] Impletent “Update All” button #4214

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

Closed

Conversation

viva-jinyi
Copy link
Collaborator

@viva-jinyi viva-jinyi commented Jun 17, 2025

Summary

This PR implements the "Update All" functionality for outdated node packs in the manager dialog's update available tab.

Behavior

Manager Dialog (RegistrySearchBar.vue):

  • Shows "Update All" button in top-right when viewing "Update Available" tab
  • Button only appears when there are outdated node packs detected
  • One-click update of all available package updates
  • Button integrates seamlessly with existing manager UI

Pack Detection Logic:

  • useUpdateAvailableNodes composable automatically identifies outdated node packs
  • Filters installed packs that have newer versions available
  • Uses semantic version comparison to determine update eligibility
  • Excludes nightly/non-semver packages from automatic updates
  • Handles loading states and error conditions gracefully

Update Process:

  • Each package is updated individually with specific target version
  • Uses latest_version.version from registry for precise version control
  • Parallel processing for efficient bulk updates
  • Proper error handling and loading state management

Components

  • PackUpdateButton.vue: Reusable update button component for individual and bulk updates
  • useUpdateAvailableNodes.ts: Core composable for outdated pack detection and management
  • Enhanced existing RegistrySearchBar.vue with update all integration
  • Updated PackActionButton.vue to support update functionality

Technical Details

  • Individual updatePack calls ensure precise version targeting
  • Proper filtering of installed vs uninstalled packages
  • Reactive state management for UI updates
  • i18n support for update button text (manager.updateAll, g.updating)

@comfy-jinyi comfy-jinyi force-pushed the migration/feat/updateall branch from c561840 to fa815e7 Compare June 20, 2025 02:25
@viva-jinyi viva-jinyi self-assigned this Jun 20, 2025
@comfy-jinyi comfy-jinyi force-pushed the migration/feat/updateall branch from b2276b5 to afc3eab Compare June 22, 2025 06:34
@viva-jinyi viva-jinyi changed the base branch from main to manager/menu-items-migration June 22, 2025 06:35
@christian-byrne christian-byrne force-pushed the manager/menu-items-migration branch from 0bbde47 to 69f5583 Compare June 23, 2025 04:19
@comfy-jinyi comfy-jinyi force-pushed the migration/feat/updateall branch from afc3eab to 1bca1ca Compare June 23, 2025 07:33
@christian-byrne christian-byrne force-pushed the manager/menu-items-migration branch 2 times, most recently from 1e10816 to 5d757ea Compare June 23, 2025 11:47
@comfy-jinyi comfy-jinyi force-pushed the migration/feat/updateall branch from 1bca1ca to baa40fd Compare June 24, 2025 05:34
@viva-jinyi viva-jinyi marked this pull request as ready for review June 24, 2025 06:59
@comfy-jinyi comfy-jinyi force-pushed the manager/menu-items-migration branch from e53dcb8 to 58202ec Compare June 24, 2025 08:27
@christian-byrne christian-byrne force-pushed the manager/menu-items-migration branch 2 times, most recently from 75cea97 to b44394f Compare June 24, 2025 23:54
@viva-jinyi viva-jinyi closed this Jun 25, 2025
@viva-jinyi viva-jinyi deleted the migration/feat/updateall branch June 25, 2025 03:20
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.

2 participants