From df8c39fdccb8152be03f9986192f980eccc0eba4 Mon Sep 17 00:00:00 2001 From: Jakub Ciesluk <323892@uwr.edu.pl> Date: Tue, 4 Apr 2023 13:34:14 +0200 Subject: [PATCH] feat: Add Clean all command --- .../src/interfaces/ServerCommands.ts | 4 ++++ packages/metals-vscode/package.json | 9 +++++++++ packages/metals-vscode/src/extension.ts | 1 + 3 files changed, 14 insertions(+) diff --git a/packages/metals-languageclient/src/interfaces/ServerCommands.ts b/packages/metals-languageclient/src/interfaces/ServerCommands.ts index 74bf104ef..512e52b58 100644 --- a/packages/metals-languageclient/src/interfaces/ServerCommands.ts +++ b/packages/metals-languageclient/src/interfaces/ServerCommands.ts @@ -115,6 +115,10 @@ export const ServerCommands = { * This zipped file can be added to a GitHub issue to help with debugging. */ ZipReports: "zip-reports", + /** + * Delete all directories in .bloop and restart the Bloop server. + */ + ResetWorkspace: "reset-workspace", } as const; type ServerCommands = typeof ServerCommands; diff --git a/packages/metals-vscode/package.json b/packages/metals-vscode/package.json index 9d91e7f5a..098f9b429 100644 --- a/packages/metals-vscode/package.json +++ b/packages/metals-vscode/package.json @@ -484,6 +484,11 @@ "category": "Metals", "title": "Zip reports" }, + { + "command": "metals.reset-workspace", + "category": "Metals", + "title": "Clear caches and reimport project" + }, { "command": "metals.show-release-notes", "category": "Metals", @@ -758,6 +763,10 @@ "command": "metals.zip-reports", "when": "metals:enabled" }, + { + "command": "metals.reset-workspace", + "when": "metals:enabled" + }, { "command": "metals.show-release-notes", "when": "metals:enabled" diff --git a/packages/metals-vscode/src/extension.ts b/packages/metals-vscode/src/extension.ts index aa67b071e..1755c0174 100644 --- a/packages/metals-vscode/src/extension.ts +++ b/packages/metals-vscode/src/extension.ts @@ -498,6 +498,7 @@ function launchMetals( ServerCommands.ScalaCliStart, ServerCommands.ScalaCliStop, ServerCommands.ZipReports, + ServerCommands.ResetWorkspace, "open-new-github-issue", ].forEach((command) => { registerCommand("metals." + command, async () =>