From c566136854734ff32ddaaed107c74759a3a3862f Mon Sep 17 00:00:00 2001 From: jprochazk <1665677+jprochazk@users.noreply.github.com> Date: Tue, 7 Nov 2023 16:33:45 +0100 Subject: add configuration option --- editors/code/src/base_client.ts | 12 ------------ editors/code/src/client.ts | 2 +- editors/code/src/lang_client.ts | 16 ++++++++++++++++ 3 files changed, 17 insertions(+), 13 deletions(-) delete mode 100644 editors/code/src/base_client.ts create mode 100644 editors/code/src/lang_client.ts (limited to 'editors/code/src') diff --git a/editors/code/src/base_client.ts b/editors/code/src/base_client.ts deleted file mode 100644 index 085920fb660..00000000000 --- a/editors/code/src/base_client.ts +++ /dev/null @@ -1,12 +0,0 @@ -import * as lc from "vscode-languageclient/node"; - -export class RaLanguageClient extends lc.LanguageClient { - override error(message: string, data?: any, showNotification?: boolean | "force"): void { - // ignore `Request TYPE failed.` errors - if (message.startsWith("Request") && message.endsWith("failed.")) { - return; - } - - super.error(message, data, showNotification); - } -} diff --git a/editors/code/src/client.ts b/editors/code/src/client.ts index ed7066a1b7b..c27a446b380 100644 --- a/editors/code/src/client.ts +++ b/editors/code/src/client.ts @@ -10,7 +10,7 @@ import { type Config, prepareVSCodeConfig } from "./config"; import { randomUUID } from "crypto"; import { sep as pathSeparator } from "path"; import { unwrapUndefinable } from "./undefinable"; -import { RaLanguageClient } from "./base_client"; +import { RaLanguageClient } from "./lang_client"; export interface Env { [name: string]: string; diff --git a/editors/code/src/lang_client.ts b/editors/code/src/lang_client.ts new file mode 100644 index 00000000000..e28330e6dba --- /dev/null +++ b/editors/code/src/lang_client.ts @@ -0,0 +1,16 @@ +import * as lc from "vscode-languageclient/node"; +import * as vscode from "vscode"; + +export class RaLanguageClient extends lc.LanguageClient { + override error(message: string, data?: any, showNotification?: boolean | "force"): void { + // ignore `Request TYPE failed.` errors + const showError = vscode.workspace + .getConfiguration("rust-analyzer") + .get("showRequestFailedErrorNotification"); + if (!showError && message.startsWith("Request") && message.endsWith("failed.")) { + return; + } + + super.error(message, data, showNotification); + } +} -- cgit 1.4.1-3-g733a5