Skip to content

Wrong commit#658

Closed
saulob wants to merge 3 commits intofatihak:mainfrom
saulob:feat/plugin-update-command
Closed

Wrong commit#658
saulob wants to merge 3 commits intofatihak:mainfrom
saulob:feat/plugin-update-command

Conversation

@saulob
Copy link
Copy Markdown

@saulob saulob commented Apr 1, 2026

This PR introduces a new CLI command to update installed third-party plugins

New command
inkypi plugin update <plugin_id>

Behavior

  • Reads the repository URL from plugin-info.json of the installed plugin
  • Downloads the latest version of the plugin
  • Replaces the installed plugin files
  • Installs requirements if requirements.txt is present
  • Restarts the service after update

Why

Currently, the CLI only provides install, uninstall and list commands for third-party plugins. Updating a plugin requires re-running the install command manually. This PR adds a dedicated update command, making the workflow clearer and safer

Notes

  • The update process validates the new version before replacing the existing plugin, avoiding accidental deletion on failed downloads
  • The implementation follows the same approach as install, reusing the repository source stored in plugin metadata

Manual testing

  • Install a plugin using inkypi plugin install
  • Modify the plugin repository (e.g. change a label or text)
  • Run inkypi plugin update <plugin_id>
  • Confirm that changes are applied
  • Confirm that dependencies are installed if requirements.txt exists
  • Confirm that service restarts correctly

Copilot AI review requested due to automatic review settings April 1, 2026 03:06
@saulob saulob closed this Apr 1, 2026
@saulob saulob changed the title feat(plugin): add update command for third-party plugins Wrong commit Apr 1, 2026
Copy link
Copy Markdown

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

Adds a new inkypi plugin update <plugin_id> CLI command to update installed third-party plugins based on their stored repository metadata.

Changes:

  • Added an update subcommand to the inkypi-plugin CLI script to fetch and replace plugin files and optionally install dependencies.
  • Wired the new update command into the command router and CLI usage output.
  • Added repository-level Copilot guidance in .github/copilot-instructions.md.

Reviewed changes

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

File Description
install/cli/inkypi-plugin Implements the plugin update flow (clone/sparse-checkout/stage/replace, requirements install, service restart) and updates CLI routing/help.
.github/copilot-instructions.md Adds contributor/Copilot guidance for language, docs-first workflow, and running tests.

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

Comment thread install/cli/inkypi-plugin
Comment thread install/cli/inkypi-plugin
Comment thread install/cli/inkypi-plugin
Comment thread install/cli/inkypi-plugin

- Language: English.

- All comments, function and variable names, and code must be written in English and follow the Inkypi coding standards and templates. Use the same naming and documentation model across the repository to keep style consistent.
Copy link

Copilot AI Apr 1, 2026

Choose a reason for hiding this comment

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

Project name capitalization is inconsistent: this file refers to "Inkypi" (e.g., "Inkypi coding standards"), while the repository uses "InkyPi" (see README.md). Update the wording to match the project name consistently.

Suggested change
- All comments, function and variable names, and code must be written in English and follow the Inkypi coding standards and templates. Use the same naming and documentation model across the repository to keep style consistent.
- All comments, function and variable names, and code must be written in English and follow the InkyPi coding standards and templates. Use the same naming and documentation model across the repository to keep style consistent.

Copilot uses AI. Check for mistakes.
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