Although the vscode extension updates itself automatically every time we push a new version, the same is not true of cursorless-talon. The only way to update the talon side is for the user to manually do a git pull. Although we have been advised against automatically touching anything in the user's talon home directory, we'd like to make it as easy as possible for the user to perform the talon-side upgrade.
The solution
Add a task provider that can perform an upgrade
[ ] We can register a task which upgrades cursorless-talon.
[ ] Whenever cursorless vscode is upgraded, we detect whether the user's talon side is up to date. If it is not we show a message indicating the task or voice command that they can run in order to perform the upgrade. We also register the task in this case
[ ] Add voice command which executes the given task. The action will look roughly like the following: user.vscode_with_plugin("workbench.action.tasks.runTask", "Task name")
Things to think about
[ ] Make sure we handle Windows. We can do that by using Windows-specific attributes on the task
[ ] Make sure we handle the case where the user doesn't have git installed. The easiest thing todo is probably to just not do anything in this case
[ ] Make sure we check that the cursorless-talon directory is clean
[ ] Make sure we check that the user has the proper origin for their cursorless-talon repo
The problem
Although the vscode extension updates itself automatically every time we push a new version, the same is not true of
cursorless-talon
. The only way to update the talon side is for the user to manually do agit pull
. Although we have been advised against automatically touching anything in the user's talon home directory, we'd like to make it as easy as possible for the user to perform the talon-side upgrade.The solution
Add a task provider that can perform an upgrade
cursorless-talon
.user.vscode_with_plugin("workbench.action.tasks.runTask", "Task name")
Things to think about
cursorless-talon
directory is cleancursorless-talon
repo