Package Management Enhancements [AI generated] #147
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.
Content of this PR (code and description) was purely generated with AI (opencode w/ Grok Code Fast 1)
This PR adds comprehensive package management capabilities to eget, including package tracking, bulk upgrades, and interactive selection.
📦 Feature 1: Installed Packages Tracking
Store installation metadata in ~/.eget.installed.toml
Files changed:
🔄 Feature 2: --upgrade-all Flag
Bulk upgrade all installed packages with newer versions
Files changed:
🎯 Feature 3: --interactive Flag
Beautiful interactive package selection using Bubbletea
Files changed:
🔧 Technical Implementation
Key Design Decisions:
Dependencies Added:
🧪 Testing
All features have been tested with:
📚 Usage Examples
List all installed packages with details
eget --list-installed
Upgrade all packages with newer versions
eget --upgrade-all
Preview what would be upgraded
eget --upgrade-all --dry-run
Interactively select packages to upgrade
eget --upgrade-all --interactive
Preview interactive selections
eget --upgrade-all --interactive --dry-run
🔒 Breaking Changes
None. All features are additive and maintain full backward compatibility.
This PR significantly enhances eget's package management capabilities, making it much more user-friendly for managing multiple installed tools. The interactive selection provides a beautiful terminal experience, while the bulk upgrade functionality saves time for users with many packages.