Skip to content

Add batch upgrade for multiple package selection#18

Closed
Copilot wants to merge 7 commits intomainfrom
copilot/add-batch-update-functionality
Closed

Add batch upgrade for multiple package selection#18
Copilot wants to merge 7 commits intomainfrom
copilot/add-batch-update-functionality

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Feb 14, 2026

Users updating subsets of available packages must run winget upgrade serially for each package. This adds multi-selection with sequential batch execution.

Changes

Selection State

  • HashSet<usize> tracks selected package indices in Upgrades view
  • Auto-cleared on view changes and post-operation

UI

  • Space: toggle selection (✓ checkmark indicator)
  • Shift+U: batch upgrade selected packages
  • Context-sensitive status bar hints based on selection state
  • Match pattern for prefix logic: (selected, marked) -> "►✓" | " ✓" | "► " | " "

Operation

pub enum Operation {
    Install { id: String, version: Option<String> },
    Uninstall { id: String },
    Upgrade { id: String },
    BatchUpgrade { ids: Vec<String> },  // Sequential execution
}

Sequential execution avoids Windows Installer mutex conflicts. Progress updates via new StatusUpdate message variant (distinct from errors).

Documentation

  • README: keybindings table and usage steps
  • Help overlay: Space and Shift+U shortcuts
Original prompt

This section details on the original issue you should resolve

<issue_title>Feature request - select packages to update and batch update</issue_title>
<issue_description>I often need to update only a subset of available packages—for example, 5 out of 10 updates.

With the CLI, I run the update command for each required package one by one. It's time-consuming because I need to wait for it to complete before running the next..

With the TUI, it would be great to have the ability to select multiple packages from the list of available updates and run a batch update for them. Parallel updates are likely not possible due to Windows Installer conflicts, but a sequential batch update would work perfectly well.

Thank you!</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 6 commits February 14, 2026 07:31
Co-authored-by: shanselman <2892+shanselman@users.noreply.github.com>
Co-authored-by: shanselman <2892+shanselman@users.noreply.github.com>
…runcation

Co-authored-by: shanselman <2892+shanselman@users.noreply.github.com>
Co-authored-by: shanselman <2892+shanselman@users.noreply.github.com>
Co-authored-by: shanselman <2892+shanselman@users.noreply.github.com>
Co-authored-by: shanselman <2892+shanselman@users.noreply.github.com>
Copilot AI changed the title [WIP] Add ability to select and batch update packages Add batch upgrade for multiple package selection Feb 14, 2026
Copilot AI requested a review from shanselman February 14, 2026 07:41
@shanselman shanselman marked this pull request as ready for review February 17, 2026 08:33
@github-actions github-actions bot mentioned this pull request Mar 17, 2026
28 tasks
@shanselman
Copy link
Copy Markdown
Owner

Superseded by PR #20 which was merged as v0.2.0.

@shanselman shanselman closed this Mar 17, 2026
@shanselman shanselman deleted the copilot/add-batch-update-functionality branch March 17, 2026 06:28
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.

Feature request - select packages to update and batch update

2 participants