From 6b129c555840dbb9729a1e95dacc324d7f7005b4 Mon Sep 17 00:00:00 2001 From: Erich Gamma Date: Tue, 15 May 2018 16:20:53 +0200 Subject: [PATCH] remove filterPrePostScripts --- extensions/npm/README.md | 1 - extensions/npm/package.json | 6 ------ extensions/npm/package.nls.json | 1 - extensions/npm/src/main.ts | 10 ++-------- extensions/npm/src/tasks.ts | 8 +++++--- 5 files changed, 7 insertions(+), 19 deletions(-) diff --git a/extensions/npm/README.md b/extensions/npm/README.md index b6ca6b5ce97..1946e16a958 100644 --- a/extensions/npm/README.md +++ b/extensions/npm/README.md @@ -15,4 +15,3 @@ For more information about auto detection of Tasks pls see the [documentation](h - `npm.packageManager` the package manager used to run the scripts: `npm` or `yarn`, the default is `npm`. - `npm.exclude` glob patterns for folders that should be excluded from automatic script detection. The pattern is matched against the **absolute path** of the package.json. For example, to exclude all test folders use '**/test/**'. - `npm.enableScriptExplorer` enable an explorer view for npm scripts. -- `npm.filterPrePostScripts` filter pre or post scripts, the default is `true`. diff --git a/extensions/npm/package.json b/extensions/npm/package.json index 67f1b63e0fd..9d468a0cdfc 100644 --- a/extensions/npm/package.json +++ b/extensions/npm/package.json @@ -151,12 +151,6 @@ "default": false, "scope": "resource", "description": "%config.npm.enableScriptExplorer%" - }, - "npm.filterPrePostScripts": { - "type": "boolean", - "default": true, - "scope": "resource", - "description": "%config.npm.filterPrePostScripts%" } } }, diff --git a/extensions/npm/package.nls.json b/extensions/npm/package.nls.json index 458779cdbf1..19acf55d865 100644 --- a/extensions/npm/package.nls.json +++ b/extensions/npm/package.nls.json @@ -6,7 +6,6 @@ "config.npm.packageManager": "The package manager used to run scripts.", "config.npm.exclude": "Configure glob patterns for folders that should be excluded from automatic script detection.", "config.npm.enableScriptExplorer": "Enable an explorer view for npm scripts.", - "config.npm.filterPrePostScripts": "Filter pre- and postscripts. Default is true.", "npm.parseError": "Npm task detection: failed to parse the file {0}", "taskdef.script": "The npm script to customize.", "taskdef.path": "The path to the folder of the package.json file that provides the script. Can be omitted.", diff --git a/extensions/npm/src/main.ts b/extensions/npm/src/main.ts index 4bc42d28ecb..b58c576827a 100644 --- a/extensions/npm/src/main.ts +++ b/extensions/npm/src/main.ts @@ -15,16 +15,10 @@ let taskProvider: vscode.Disposable | undefined; export async function activate(context: vscode.ExtensionContext): Promise { taskProvider = registerTaskProvider(context); - let treeDataProvider = registerExplorer(context); + registerExplorer(context); configureHttpRequest(); - vscode.workspace.onDidChangeConfiguration((e) => { + vscode.workspace.onDidChangeConfiguration(() => { configureHttpRequest(); - if (e.affectsConfiguration('npm.filterPrePostScripts')) { - invalidateScriptsCache(); - if (treeDataProvider) { - treeDataProvider.refresh(); - } - } }); context.subscriptions.push(addJSONProviders(httpRequest.xhr)); } diff --git a/extensions/npm/src/tasks.ts b/extensions/npm/src/tasks.ts index a8c129f0db0..73e1cd7ea2e 100644 --- a/extensions/npm/src/tasks.ts +++ b/extensions/npm/src/tasks.ts @@ -171,9 +171,8 @@ async function provideNpmScriptsForFolder(packageJsonUri: Uri): Promise const result: Task[] = []; - const filterPrePost = workspace.getConfiguration('npm', folder.uri).get('filterPrePostScripts'); - const prePostScripts = filterPrePost ? getPrePostScripts(scripts) : new Set(); - Object.keys(scripts).filter(each => !prePostScripts.has(each)).forEach(each => { + const prePostScripts = getPrePostScripts(scripts); + Object.keys(scripts).forEach(each => { const task = createTask(each, `run ${each}`, folder!, packageJsonUri); const lowerCaseTaskName = each.toLowerCase(); if (isBuildTask(lowerCaseTaskName)) { @@ -181,6 +180,9 @@ async function provideNpmScriptsForFolder(packageJsonUri: Uri): Promise } else if (isTestTask(lowerCaseTaskName)) { task.group = TaskGroup.Test; } + if (prePostScripts.has(each)) { + task.group = TaskGroup.Clean; // hack: use Clean group to tag pre/post scripts + } result.push(task); }); // always add npm install (without a problem matcher)