diff --git a/packages/ansible-language-server/src/server.ts b/packages/ansible-language-server/src/server.ts index ee7941fa0..414344755 100644 --- a/packages/ansible-language-server/src/server.ts +++ b/packages/ansible-language-server/src/server.ts @@ -6,7 +6,7 @@ import { NotificationHandler, ProposedFeatures, TextDocuments, -} from "vscode-languageserver/node"; +} from "vscode-languageserver/node.js"; import { AnsibleLanguageService } from "@src/ansibleLanguageService"; import { getUnsupportedError } from "@src/utils/misc"; diff --git a/packages/ansible-language-server/tsup.config.ts b/packages/ansible-language-server/tsup.config.ts index ebaa5bd78..1973b5d32 100644 --- a/packages/ansible-language-server/tsup.config.ts +++ b/packages/ansible-language-server/tsup.config.ts @@ -23,7 +23,7 @@ export const tsup: Options = { // "src/services/settingsManager.ts", ], minify: env === "production", - bundle: env === "production", + bundle: true, entry: ["src/**/*.ts"], format: ["esm", "cjs"], outDir: env === "production" ? "dist" : "lib", diff --git a/src/extension.ts b/src/extension.ts index ad272cb52..aab180334 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -1,4 +1,5 @@ /* "stdlib" */ +import * as fs from "node:fs"; import * as path from "node:path"; import * as vscode from "vscode"; import { ExtensionContext, extensions, window, workspace } from "vscode"; @@ -1156,14 +1157,25 @@ const startClient = async ( "dist", "cli.cjs", ); - const packageServer = path.join( + + // For debug mode: prefer workspace server (development) over node_modules (published package) + const workspaceServer = path.join( context.extensionPath, - "node_modules", - "@ansible", + "packages", "ansible-language-server", "dist", - "cli.js", + "cli.cjs", ); + const packageServer = fs.existsSync(workspaceServer) + ? workspaceServer + : path.join( + context.extensionPath, + "node_modules", + "@ansible", + "ansible-language-server", + "dist", + "cli.js", + ); // server is run at port 6009 for debugging const debugOptions = { execArgv: ["--nolazy", "--inspect=6010"] };