From 5986bd89d7b88eb20f945208b6f3a7c644c25839 Mon Sep 17 00:00:00 2001 From: Matthew Burleigh Date: Wed, 26 Jun 2019 10:24:44 -0400 Subject: [PATCH 1/8] Open results in new editor (#55) --- package.json | 12 ++++++++++++ src/extension.ts | 15 ++++++++------- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 13ec194..4a1b606 100644 --- a/package.json +++ b/package.json @@ -89,6 +89,18 @@ "when": "editorTextFocus && editorLangId == 'azcli'" } ], + "configuration": { + "type": "object", + "title": "Azure CLI Tools Configuration", + "properties": { + "azureCLI.showResultInNewEditor": { + "type": "boolean", + "default": false, + "scope": "resource", + "description": "Controls whether showing the result from running an Azure CLI command in an editor should always create a new editor." + } + } + }, "menus": { "editor/context": [ { diff --git a/src/extension.ts b/src/extension.ts index 4e526d7..daef6c6 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -3,8 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import * as jmespath from 'jmespath'; - -import { HoverProvider, Hover, SnippetString, StatusBarAlignment, StatusBarItem, ExtensionContext, TextDocument, TextDocumentChangeEvent, Disposable, TextEditor, Selection, languages, commands, Range, ViewColumn, Position, CancellationToken, ProviderResult, CompletionItem, CompletionList, CompletionItemKind, CompletionItemProvider, window, workspace, env, Uri } from 'vscode'; +import { HoverProvider, Hover, SnippetString, StatusBarAlignment, StatusBarItem, ExtensionContext, TextDocument, TextDocumentChangeEvent, Disposable, TextEditor, Selection, languages, commands, Range, ViewColumn, Position, CancellationToken, ProviderResult, CompletionItem, CompletionList, CompletionItemKind, CompletionItemProvider, window, workspace, env, Uri, WorkspaceEdit } from 'vscode'; import { AzService, CompletionKind, Arguments, Status } from './azService'; import { parse, findNode } from './parser'; @@ -19,7 +18,6 @@ export function activate(context: ExtensionContext) { context.subscriptions.push(new RunLineInTerminal()); context.subscriptions.push(new RunLineInEditor(status)); context.subscriptions.push(commands.registerCommand('ms-azurecli.installAzureCLI', installAzureCLI)); - } const completionKinds: Record = { @@ -173,8 +171,8 @@ class RunLineInEditor { .then(() => exec(line)) .then(({ stdout }) => stdout, ({ stdout, stderr }) => JSON.stringify({ stderr, stdout }, null, ' ')) .then(content => replaceContent(target, content) - .then(() => this.parsedResult = JSON.parse(content)) - .then(undefined, err => {}) + .then(() => this.parsedResult = JSON.parse(content)) + .then(undefined, err => {}) ) ) .then(undefined, console.error); @@ -188,7 +186,8 @@ class RunLineInEditor { } private findResultDocument() { - if (this.resultDocument) { + const showResultInNewEditor = workspace.getConfiguration('azureCLI', null).get('showResultInNewEditor', false) + if (this.resultDocument && !showResultInNewEditor) { return Promise.resolve(this.resultDocument); } return workspace.openTextDocument({ language: 'json' }) @@ -307,7 +306,9 @@ function allMatches(regex: RegExp, string: string, group: number) { function replaceContent(editor: TextEditor, content: string) { const document = editor.document; const all = new Range(new Position(0, 0), document.lineAt(document.lineCount - 1).range.end); - return editor.edit(builder => builder.replace(all, content)) + const edit = new WorkspaceEdit(); + edit.replace(document.uri, all, content); + return workspace.applyEdit(edit) .then(() => editor.selections = [new Selection(0, 0, 0, 0)]); } From da3b10f147fedd2b1995f12c587d39127e514e71 Mon Sep 17 00:00:00 2001 From: Matthew Burleigh Date: Fri, 28 Jun 2019 03:58:31 -0400 Subject: [PATCH 2/8] Add status bar item to indicate progress (#56) --- package-lock.json | 6 ++++++ package.json | 3 ++- src/extension.ts | 45 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 53 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 32b5c52..4db5788 100644 --- a/package-lock.json +++ b/package-lock.json @@ -256,6 +256,12 @@ "safer-buffer": "^2.1.0" } }, + "elegant-spinner": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-2.0.0.tgz", + "integrity": "sha512-5YRYHhvhYzV/FC4AiMdeSIg3jAYGq9xFvbhZMpPlJoBsfYgrw2DSCYeXfat6tYBu45PWiyRr3+flaCPPmviPaA==", + "dev": true + }, "es6-promise": { "version": "4.2.6", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", diff --git a/package.json b/package.json index 4a1b606..f321a28 100644 --- a/package.json +++ b/package.json @@ -142,7 +142,8 @@ "@types/semver": "5.5.0", "tslint": "5.16.0", "typescript": "3.3.3333", - "vscode": "1.1.33" + "vscode": "1.1.33", + "elegant-spinner": "2.0.0" }, "dependencies": { "jmespath": "0.15.0", diff --git a/src/extension.ts b/src/extension.ts index daef6c6..b6d5f44 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -8,6 +8,7 @@ import { HoverProvider, Hover, SnippetString, StatusBarAlignment, StatusBarItem, import { AzService, CompletionKind, Arguments, Status } from './azService'; import { parse, findNode } from './parser'; import { exec } from './utils'; +import * as spinner from 'elegant-spinner'; export function activate(context: ExtensionContext) { const azService = new AzService(azNotFound); @@ -152,15 +153,43 @@ class RunLineInEditor { private queryEnabled = false; private query: string | undefined; private disposables: Disposable[] = []; + private commandRunningStatusBarItem: StatusBarItem; + private statusBarUpdateInterval!: NodeJS.Timer; + private statusBarSpinner = spinner(); + private hideStatusBarItemTimeout! : NodeJS.Timeout; + private statusBarItemText : string = ''; constructor(private status: StatusBarInfo) { this.disposables.push(commands.registerTextEditorCommand('ms-azurecli.toggleLiveQuery', editor => this.toggleQuery(editor))); this.disposables.push(commands.registerTextEditorCommand('ms-azurecli.runLineInEditor', editor => this.run(editor))); this.disposables.push(workspace.onDidCloseTextDocument(document => this.close(document))); this.disposables.push(workspace.onDidChangeTextDocument(event => this.change(event))); + + this.commandRunningStatusBarItem = window.createStatusBarItem(StatusBarAlignment.Left); + this.disposables.push(this.commandRunningStatusBarItem); } + private runningCommandCount : number = 0; private run(source: TextEditor) { + this.runningCommandCount += 1; + const t0 = Date.now(); + if (this.runningCommandCount == 1) + { + this.statusBarItemText = `Azure CLI: Waiting for response`; + this.statusBarUpdateInterval = setInterval(() => { + if (this.runningCommandCount == 1) + { + this.commandRunningStatusBarItem.text = `${this.statusBarItemText} ${this.statusBarSpinner()}`; + } + else + { + this.commandRunningStatusBarItem.text = `${this.statusBarItemText} [${this.runningCommandCount}] ${this.statusBarSpinner()}`; + } + }, 50); + } + this.commandRunningStatusBarItem.show(); + clearTimeout(this.hideStatusBarItemTimeout); + this.parsedResult = undefined; this.query = undefined; // TODO const cursor = source.selection.active; @@ -174,10 +203,26 @@ class RunLineInEditor { .then(() => this.parsedResult = JSON.parse(content)) .then(undefined, err => {}) ) + .then(() => this.commandFinished(t0)) ) .then(undefined, console.error); } + private commandFinished(startTime: number) + { + this.runningCommandCount -= 1 + this.statusBarItemText = 'Azure CLI: Executed in ' + (Date.now() - startTime) + ' milliseconds'; + this.commandRunningStatusBarItem.text = this.statusBarItemText; + + if (this.runningCommandCount == 0) + { + clearInterval(this.statusBarUpdateInterval); + + // hide status bar item after 10 seconds to keep status bar uncluttered + this.hideStatusBarItemTimeout = setTimeout(() => this.commandRunningStatusBarItem.hide(), 10000); + } + } + private toggleQuery(source: TextEditor) { this.queryEnabled = !this.queryEnabled; this.status.liveQuery = this.queryEnabled; From e557b7c3dc520b23088f6d993e1a8215235c860c Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Thu, 27 Jun 2019 12:01:54 +0200 Subject: [PATCH 3/8] Use CLIConfig (fixes #52) --- .devcontainer/Dockerfile | 30 +++++++++++++++++ .devcontainer/devcontainer.json | 5 +++ service/azservice/tooling2.py | 59 ++++++++++++++++++++++----------- service/tests/test_tooling.py | 6 +++- 4 files changed, 79 insertions(+), 21 deletions(-) create mode 100644 .devcontainer/Dockerfile create mode 100644 .devcontainer/devcontainer.json diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000..04f82cf --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,30 @@ +#------------------------------------------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information. +#------------------------------------------------------------------------------------------------------------- + +FROM debian:8 + +# Avoid warnings by switching to noninteractive +ENV DEBIAN_FRONTEND=noninteractive + +# Configure apt and install packages +RUN apt-get update \ + && apt-get -y install --no-install-recommends apt-utils 2>&1 \ + # + # Verify git, process tools installed + && apt-get -y install git procps \ + # + # Install the Azure CLI + && apt-get install -y apt-transport-https curl gnupg2 lsb-release \ + && echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/azure-cli.list \ + && curl -sL https://packages.microsoft.com/keys/microsoft.asc | apt-key add - 2>/dev/null \ + && apt-get update + +RUN apt-get install -y azure-cli=2.0.67-1~jessie +# RUN apt-get install -y azure-cli=2.0.64-1~jessie +# RUN apt-get install -y azure-cli=2.0.63-1~jessie +# RUN apt-get install -y azure-cli=2.0.26-1~jessie + +# Switch back to dialog for any ad-hoc use of apt-get +ENV DEBIAN_FRONTEND=dialog diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..4a62381 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,5 @@ +// See https://aka.ms/vscode-remote/devcontainer.json for format details. +{ + "name": "Azure CLI", + "dockerFile": "Dockerfile", +} \ No newline at end of file diff --git a/service/azservice/tooling2.py b/service/azservice/tooling2.py index e7cc7a8..8a985bf 100644 --- a/service/azservice/tooling2.py +++ b/service/azservice/tooling2.py @@ -8,15 +8,19 @@ from __future__ import print_function import yaml from six.moves import configparser +from distutils.version import LooseVersion +from knack.config import CLIConfig from knack.help_files import helps -from azure.cli.core import get_default_cli +from azure.cli.core import get_default_cli, __version__ from azure.cli.core._profile import _SUBSCRIPTION_NAME, Profile from azure.cli.core.util import CLIError -from azure.cli.core._config import GLOBAL_CONFIG_PATH +from azure.cli.core._config import GLOBAL_CONFIG_PATH, GLOBAL_CONFIG_DIR, ENV_VAR_PREFIX +before_2_0_64 = LooseVersion(__version__) < LooseVersion('2.0.64') + GLOBAL_ARGUMENTS = { 'verbose': { 'options': ['--verbose'], @@ -92,7 +96,10 @@ HELP_CACHE = {} def get_help(group_or_command): if group_or_command not in HELP_CACHE and group_or_command in helps: - HELP_CACHE[group_or_command] = yaml.load(helps[group_or_command]) + if before_2_0_64: # FullLoader not present with az 2.0.26. + HELP_CACHE[group_or_command] = yaml.load(helps[group_or_command]) + else: + HELP_CACHE[group_or_command] = yaml.load(helps[group_or_command], Loader=yaml.FullLoader) return HELP_CACHE.get(group_or_command) @@ -106,15 +113,23 @@ def get_current_subscription(): def get_configured_defaults(): - _reload_config() + config = _reload_config() try: - defaults_section = cli_ctx.config.defaults_section_name if hasattr(cli_ctx.config, 'defaults_section_name') else 'defaults' - options = cli_ctx.config.config_parser.options(defaults_section) + defaults_section = config.defaults_section_name if hasattr(config, 'defaults_section_name') else 'defaults' defaults = {} - for opt in options: - value = cli_ctx.config.get(defaults_section, opt) - if value: - defaults[opt] = value + if before_2_0_64: + options = config.config_parser.options(defaults_section) + for opt in options: + value = config.get(defaults_section, opt) + if value: + defaults[opt] = value + else: + options = config.items(defaults_section) + for opt in options: + name = opt['name'] + value = opt['value'] + if value: + defaults[name] = value return defaults except configparser.NoSectionError: return {} @@ -126,12 +141,12 @@ def is_required(argument): def get_defaults(arguments): - _reload_config() - return {name: _get_default(argument) for name, argument in arguments.items()} + config = _reload_config() + return {name: _get_default(config, argument) for name, argument in arguments.items()} -def _get_default(argument): - configured = _find_configured_default(argument) +def _get_default(config, argument): + configured = _find_configured_default(config, argument) # TODO: Some default values are built-in (not configured as we want here), but we don't know which. return configured or argument.type.settings.get('default') @@ -168,10 +183,10 @@ def _find_argument(command, argument_name): def _add_defaults(command, arguments): - _reload_config() + config = _reload_config() for name, argument in get_arguments(command).items(): if not hasattr(arguments, name): - default = _find_configured_default(argument) + default = _find_configured_default(config, argument) if default: setattr(arguments, name, default) @@ -179,14 +194,18 @@ def _add_defaults(command, arguments): def _reload_config(): - cli_ctx.config.config_parser.read(GLOBAL_CONFIG_PATH) + if before_2_0_64: + cli_ctx.config.config_parser.read(GLOBAL_CONFIG_PATH) + return cli_ctx.config + else: + return CLIConfig(config_dir=GLOBAL_CONFIG_DIR, config_env_var_prefix=ENV_VAR_PREFIX) -def _find_configured_default(argument): +def _find_configured_default(config, argument): if not (hasattr(argument.type, 'default_name_tooling') and argument.type.default_name_tooling): return None try: - defaults_section = cli_ctx.config.defaults_section_name if hasattr(cli_ctx.config, 'defaults_section_name') else 'defaults' - return cli_ctx.config.get(defaults_section, argument.type.default_name_tooling, None) + defaults_section = config.defaults_section_name if hasattr(config, 'defaults_section_name') else 'defaults' + return config.get(defaults_section, argument.type.default_name_tooling, None) except configparser.NoSectionError: return None diff --git a/service/tests/test_tooling.py b/service/tests/test_tooling.py index fce9cf0..8ceffd1 100644 --- a/service/tests/test_tooling.py +++ b/service/tests/test_tooling.py @@ -6,6 +6,10 @@ # pylint: skip-file import unittest import collections +try: + collectionsAbc = collections.abc +except AttributeError: + collectionsAbc = collections from azservice.tooling import GLOBAL_ARGUMENTS, initialize, load_command_table, get_help, get_current_subscription, get_configured_defaults, get_defaults, is_required, run_argument_value_completer, get_arguments @@ -110,7 +114,7 @@ class ToolingTest(unittest.TestCase): self.assertIsNone(argument.choices) self.assertIsNotNone(argument.completer) values = run_argument_value_completer(command, argument, {}) - self.assertTrue(isinstance(values, collections.Sequence)) + self.assertTrue(isinstance(values, collectionsAbc.Sequence)) def test_current_subscription(self): subscription = get_current_subscription() From 0a829603263bed6f28ce79ccb087ba117b4beff9 Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Thu, 27 Jun 2019 14:20:28 +0200 Subject: [PATCH 4/8] Pipelines config --- .devcontainer/Dockerfile | 9 ++++----- .devcontainer/docker-compose.test.yml | 13 +++++++++++++ azure-pipelines.yml | 13 +++++++++++++ service/run_tests | 5 +++++ 4 files changed, 35 insertions(+), 5 deletions(-) create mode 100644 .devcontainer/docker-compose.test.yml create mode 100644 azure-pipelines.yml diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 04f82cf..1ca151e 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -3,7 +3,8 @@ # Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information. #------------------------------------------------------------------------------------------------------------- -FROM debian:8 +FROM debian:latest +# FROM debian:8 # Avoid warnings by switching to noninteractive ENV DEBIAN_FRONTEND=noninteractive @@ -12,16 +13,14 @@ ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update \ && apt-get -y install --no-install-recommends apt-utils 2>&1 \ # - # Verify git, process tools installed - && apt-get -y install git procps \ - # # Install the Azure CLI && apt-get install -y apt-transport-https curl gnupg2 lsb-release \ && echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/azure-cli.list \ && curl -sL https://packages.microsoft.com/keys/microsoft.asc | apt-key add - 2>/dev/null \ && apt-get update -RUN apt-get install -y azure-cli=2.0.67-1~jessie +RUN apt-get install -y azure-cli +# RUN apt-get install -y azure-cli=2.0.67-1~jessie # RUN apt-get install -y azure-cli=2.0.64-1~jessie # RUN apt-get install -y azure-cli=2.0.63-1~jessie # RUN apt-get install -y azure-cli=2.0.26-1~jessie diff --git a/.devcontainer/docker-compose.test.yml b/.devcontainer/docker-compose.test.yml new file mode 100644 index 0000000..50626d7 --- /dev/null +++ b/.devcontainer/docker-compose.test.yml @@ -0,0 +1,13 @@ +version: '3.4' +services: + vscode-azurecli-test: + build: + context: . + dockerfile: Dockerfile + working_dir: "/workspace" + volumes: + - "${PWD}:/workspace" + command: "./service/run_tests" + +# docker-compose -f .devcontainer/docker-compose.test.yml build --no-cache --pull +# docker-compose -f .devcontainer/docker-compose.test.yml run vscode-azurecli-test diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 0000000..a093b6b --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,13 @@ +schedules: +- cron: "0 0 * * *" + displayName: Daily midnight build + branches: + include: + - master + +steps: +- script: | + set -e + docker-compose -f .devcontainer/docker-compose.test.yml build --no-cache --pull + docker-compose -f .devcontainer/docker-compose.test.yml run vscode-azurecli-test + displayName: Run Tests diff --git a/service/run_tests b/service/run_tests index 7b0f1de..7b9411f 100755 --- a/service/run_tests +++ b/service/run_tests @@ -15,6 +15,11 @@ DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" export PYTHONPATH="${DIR}:${PYTHONPATH}" PYTHON="${1:-$HOME/lib/azure-cli/bin/python}" +if [ -z "${1}" ]; then + PYTHON=$(az --version | sed -n "s/^Python location '\([^']*\)'/\1/p") +else + PYTHON=${1} +fi shift "$PYTHON" -m unittest discover -s tests "$@" \ No newline at end of file From 9faaa52a7691af243d8bb391d9479f3b8072f1de Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Fri, 28 Jun 2019 10:21:27 +0200 Subject: [PATCH 5/8] Prod dependency --- package-lock.json | 5 ++--- package.json | 6 +++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4db5788..78c07cf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "azurecli", - "version": "0.4.5", + "version": "0.4.6", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -259,8 +259,7 @@ "elegant-spinner": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-2.0.0.tgz", - "integrity": "sha512-5YRYHhvhYzV/FC4AiMdeSIg3jAYGq9xFvbhZMpPlJoBsfYgrw2DSCYeXfat6tYBu45PWiyRr3+flaCPPmviPaA==", - "dev": true + "integrity": "sha512-5YRYHhvhYzV/FC4AiMdeSIg3jAYGq9xFvbhZMpPlJoBsfYgrw2DSCYeXfat6tYBu45PWiyRr3+flaCPPmviPaA==" }, "es6-promise": { "version": "4.2.6", diff --git a/package.json b/package.json index f321a28..372c5db 100644 --- a/package.json +++ b/package.json @@ -142,11 +142,11 @@ "@types/semver": "5.5.0", "tslint": "5.16.0", "typescript": "3.3.3333", - "vscode": "1.1.33", - "elegant-spinner": "2.0.0" + "vscode": "1.1.33" }, "dependencies": { "jmespath": "0.15.0", - "semver": "5.6.0" + "semver": "5.6.0", + "elegant-spinner": "2.0.0" } } From d762ab1e08e82d9ecb420b76daa0f6ca608b8f8c Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Fri, 28 Jun 2019 10:24:38 +0200 Subject: [PATCH 6/8] Update TypeScript --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index 78c07cf..072b011 100644 --- a/package-lock.json +++ b/package-lock.json @@ -855,9 +855,9 @@ "dev": true }, "typescript": { - "version": "3.3.3333", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.3.3333.tgz", - "integrity": "sha512-JjSKsAfuHBE/fB2oZ8NxtRTk5iGcg6hkYXMnZ3Wc+b2RSqejEqTaem11mHASMnFilHrax3sLK0GDzcJrekZYLw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.2.tgz", + "integrity": "sha512-7KxJovlYhTX5RaRbUdkAXN1KUZ8PwWlTzQdHV6xNqvuFOs7+WBo10TQUqT19Q/Jz2hk5v9TQDIhyLhhJY4p5AA==", "dev": true }, "uri-js": { diff --git a/package.json b/package.json index 372c5db..1e5d020 100644 --- a/package.json +++ b/package.json @@ -141,7 +141,7 @@ "@types/node": "10.14.1", "@types/semver": "5.5.0", "tslint": "5.16.0", - "typescript": "3.3.3333", + "typescript": "3.5.2", "vscode": "1.1.33" }, "dependencies": { From 94319540d5a295120a08b3a2e4116cfbc902f6c0 Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Fri, 28 Jun 2019 10:19:14 +0200 Subject: [PATCH 7/8] Prepare 0.4.6 --- README.md | 6 ++++++ package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index beefc4f..c781d75 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,12 @@ Create `.azcli` files and use these features: ## Release Notes +### 0.4.6 + +- PR [Add status bar item to indicate progress](https://github.com/Microsoft/vscode-azurecli/pull/56) by [@mburleigh](https://github.com/mburleigh). +- PR [Open results in new editor](https://github.com/Microsoft/vscode-azurecli/pull/55) by [@mburleigh](https://github.com/mburleigh). +- Fix [Use CLIConfig](https://github.com/Microsoft/vscode-azurecli/issues/52). + ### 0.4.5 - Fix [Read defaults_section_name from config](https://github.com/Microsoft/vscode-azurecli/issues/50). diff --git a/package.json b/package.json index 1e5d020..a8ff958 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "azurecli", "displayName": "Azure CLI Tools", "description": "Tools for developing and running commands of the Azure CLI.", - "version": "0.4.5", + "version": "0.4.6", "icon": "images/azure_icon.png", "publisher": "ms-vscode", "repository": { From 1f6f0d712574b47d4b370a6d012ebb581022c1f9 Mon Sep 17 00:00:00 2001 From: Christof Marti Date: Fri, 28 Jun 2019 10:43:08 +0200 Subject: [PATCH 8/8] Use @types/vscode --- package-lock.json | 597 +--------------------------------------------- package.json | 7 +- 2 files changed, 8 insertions(+), 596 deletions(-) diff --git a/package-lock.json b/package-lock.json index 072b011..27d93a3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -42,26 +42,11 @@ "integrity": "sha512-41qEJgBH/TWgo5NFSvBCJ1qkoi3Q6ONSF2avrHq1LVEZfYpdHmj0y9SuTK+u9ZhG1sYQKBL1AWXKyLWP4RaUoQ==", "dev": true }, - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - }, - "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } + "@types/vscode": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.35.0.tgz", + "integrity": "sha512-Iyliuu8Hv4qy4TEaevQzChh9UsTEcuaKdcHXBbvJnoJSF5Td2yNENOrPK+vuOaXJJBhQZb4BNJKOxt6caaQR8A==", + "dev": true }, "ansi-styles": { "version": "3.2.1", @@ -81,54 +66,12 @@ "sprintf-js": "~1.0.2" } }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", - "dev": true - }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -139,30 +82,12 @@ "concat-map": "0.0.1" } }, - "browser-stdout": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", - "integrity": "sha1-81HTKWnTL6XXpVZxVCY9korjvR8=", - "dev": true - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, "builtin-modules": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", "dev": true }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -189,15 +114,6 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, "commander": { "version": "2.20.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", @@ -210,72 +126,17 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, "diff": { "version": "3.5.0", "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", "dev": true }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, "elegant-spinner": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-2.0.0.tgz", "integrity": "sha512-5YRYHhvhYzV/FC4AiMdeSIg3jAYGq9xFvbhZMpPlJoBsfYgrw2DSCYeXfat6tYBu45PWiyRr3+flaCPPmviPaA==" }, - "es6-promise": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz", - "integrity": "sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==", - "dev": true - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", - "dev": true, - "requires": { - "es6-promise": "^4.0.3" - } - }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -294,62 +155,12 @@ "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", "dev": true }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, "glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", @@ -364,71 +175,12 @@ "path-is-absolute": "^1.0.0" } }, - "growl": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", - "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", - "dev": true - }, - "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", - "dev": true, - "requires": { - "agent-base": "4", - "debug": "3.1.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", - "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", - "dev": true, - "requires": { - "agent-base": "^4.1.0", - "debug": "^3.1.0" - } - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -445,18 +197,6 @@ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", "dev": true }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, "jmespath": { "version": "0.15.0", "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz", @@ -478,57 +218,6 @@ "esprima": "^4.0.0" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "mime-db": { - "version": "1.39.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.39.0.tgz", - "integrity": "sha512-DTsrw/iWVvwHH+9Otxccdyy0Tgiil6TWK/xhfARJZF/QFhwOgZgOIvA2/VIGpM8U7Q8z5nDmdDWC6tuVMJNibw==", - "dev": true - }, - "mime-types": { - "version": "2.1.23", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.23.tgz", - "integrity": "sha512-ROk/m+gMVSrRxTkMlaQOvFmFmYDc7sZgrjjM76abqmd2Cc5fCV7jAMA5XUccEtJ3cYiYdgixUVI+fApc2LkXlw==", - "dev": true, - "requires": { - "mime-db": "~1.39.0" - } - }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -553,79 +242,6 @@ "minimist": "0.0.8" } }, - "mocha": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-4.1.0.tgz", - "integrity": "sha512-0RVnjg1HJsXY2YFDoTNzcc1NKhYuXKRrBAG2gDygmJJA136Cs2QlRliZG1mA0ap7cuaT30mw16luAeln+4RiNA==", - "dev": true, - "requires": { - "browser-stdout": "1.3.0", - "commander": "2.11.0", - "debug": "3.1.0", - "diff": "3.3.1", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "growl": "1.10.3", - "he": "1.1.1", - "mkdirp": "0.5.1", - "supports-color": "4.4.0" - }, - "dependencies": { - "commander": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", - "dev": true - }, - "diff": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz", - "integrity": "sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww==", - "dev": true - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "supports-color": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", - "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "dev": true, - "requires": { - "has-flag": "^2.0.0" - } - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -647,70 +263,6 @@ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", "dev": true }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "psl": { - "version": "1.1.31", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "querystringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", - "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", - "dev": true - }, - "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.0", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true - }, "resolve": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", @@ -720,62 +272,17 @@ "path-parse": "^1.0.6" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, "semver": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.12", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz", - "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -785,24 +292,6 @@ "has-flag": "^3.0.0" } }, - "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, - "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } - } - }, "tslib": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", @@ -839,88 +328,12 @@ "tslib": "^1.8.1" } }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, "typescript": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.2.tgz", "integrity": "sha512-7KxJovlYhTX5RaRbUdkAXN1KUZ8PwWlTzQdHV6xNqvuFOs7+WBo10TQUqT19Q/Jz2hk5v9TQDIhyLhhJY4p5AA==", "dev": true }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "url-parse": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.6.tgz", - "integrity": "sha512-/B8AD9iQ01seoXmXf9z/MjLZQIdOoYl/+gvsQF6+mpnxaTfG9P7srYaiqaDMyKkR36XMXfhqSHss5MyFAO8lew==", - "dev": true, - "requires": { - "querystringify": "^2.0.0", - "requires-port": "^1.0.0" - } - }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vscode": { - "version": "1.1.33", - "resolved": "https://registry.npmjs.org/vscode/-/vscode-1.1.33.tgz", - "integrity": "sha512-sXedp2oF6y4ZvqrrFiZpeMzaCLSWV+PpYkIxjG/iYquNZ9KrLL2LujltGxPLvzn49xu2sZkyC+avVNFgcJD1Iw==", - "dev": true, - "requires": { - "glob": "^7.1.2", - "mocha": "^4.0.1", - "request": "^2.88.0", - "semver": "^5.4.1", - "source-map-support": "^0.5.0", - "url-parse": "^1.4.4", - "vscode-test": "^0.1.4" - } - }, - "vscode-test": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/vscode-test/-/vscode-test-0.1.5.tgz", - "integrity": "sha512-s+lbF1Dtasc0yXVB9iQTexBe2JK6HJAUJe3fWezHKIjq+xRw5ZwCMEMBaonFIPy7s95qg2HPTRDR5W4h4kbxGw==", - "dev": true, - "requires": { - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.1" - } - }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", diff --git a/package.json b/package.json index a8ff958..a933f68 100644 --- a/package.json +++ b/package.json @@ -133,16 +133,15 @@ "scripts": { "vscode:prepublish": "npm run compile", "compile": "tsc -p ./", - "watch": "tsc -watch -p ./", - "postinstall": "node ./node_modules/vscode/bin/install" + "watch": "tsc -watch -p ./" }, "devDependencies": { "@types/jmespath": "0.15.0", "@types/node": "10.14.1", "@types/semver": "5.5.0", + "@types/vscode": "^1.35.0", "tslint": "5.16.0", - "typescript": "3.5.2", - "vscode": "1.1.33" + "typescript": "3.5.2" }, "dependencies": { "jmespath": "0.15.0",