From 6716723d9c8b8c87919a132fe3948709046a93d0 Mon Sep 17 00:00:00 2001 From: Erich Gamma Date: Wed, 19 Jul 2017 11:58:39 +0200 Subject: [PATCH] npm task provider should not provide pre, post scripts - #30843 --- extensions/npm/src/main.ts | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/extensions/npm/src/main.ts b/extensions/npm/src/main.ts index b4d67b83eee..d45add60b9f 100644 --- a/extensions/npm/src/main.ts +++ b/extensions/npm/src/main.ts @@ -94,6 +94,10 @@ function getNpmCommandLine(script: string): string { return `npm run ${script}`; } +function isNotPreOrPostScript(script: string): boolean { + return !(script.startsWith('pre') || script.startsWith('post')); +} + async function getNpmScriptsAsTasks(): Promise { let workspaceRoot = vscode.workspace.rootPath; @@ -108,11 +112,6 @@ async function getNpmScriptsAsTasks(): Promise { return emptyTasks; } - let silent = ''; - if (vscode.workspace.getConfiguration('npm').get('runSilent')) { - silent = '--silent'; - } - try { var contents = await readFile(packageJson); var json = JSON.parse(contents); @@ -121,7 +120,7 @@ async function getNpmScriptsAsTasks(): Promise { } const result: vscode.Task[] = []; - Object.keys(json.scripts).forEach(each => { + Object.keys(json.scripts).filter(isNotPreOrPostScript).forEach(each => { const kind: NpmTaskDefinition = { type: 'npm', script: each @@ -135,7 +134,7 @@ async function getNpmScriptsAsTasks(): Promise { } result.push(task); }); - // add some 'well known' npm tasks + // always add npm install (without a problem matcher) result.push(new vscode.Task({ type: 'npm', script: 'install' } as NpmTaskDefinition, `install`, 'npm', new vscode.ShellExecution(`npm install`), [])); return Promise.resolve(result); } catch (e) { -- GitLab