From 9991e789db90d81a2d98fd1a14cdf285d7617f1d Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Fri, 28 Jul 2023 15:56:09 -0700 Subject: [PATCH 01/31] update pre release (#71) --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index ae18557d..bf24e8a2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "debugpy", - "version": "2023.1.0-dev", + "version": "2023.3.0-dev", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "debugpy", - "version": "2023.1.0-dev", + "version": "2023.3.0-dev", "license": "MIT", "dependencies": { "@vscode/extension-telemetry": "^0.7.7", diff --git a/package.json b/package.json index 78ef9fac..b9532907 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "debugpy", "displayName": "Debugpy", "description": "Python Debugger extension using `debugpy`.", - "version": "2023.1.0-dev", + "version": "2023.3.0-dev", "publisher": "ms-python", "license": "MIT", "homepage": "https://github.com/Microsoft/vscode-python-debugger", From 117bc23d5e98e11f274ea53707f776f79757a45a Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Mon, 18 Sep 2023 09:36:34 -0700 Subject: [PATCH 02/31] Add port provider (#85) * Add port attribute provider * Add message * Enabled proposed api * Ignore all the ports * Fix format * fix pr comments * Add regex for terminal command * Add adapter to pattern --- package.json | 3 + .../debugPort/portAttributesProvider.ts | 14 +++ src/extension/extensionInit.ts | 11 +- vscode.proposed.portsAttributes.d.ts | 100 ++++++++++++++++++ 4 files changed, 127 insertions(+), 1 deletion(-) create mode 100644 src/extension/debugger/debugPort/portAttributesProvider.ts create mode 100644 vscode.proposed.portsAttributes.d.ts diff --git a/package.json b/package.json index b9532907..c00f979f 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,9 @@ "description": "Python Debugger extension using `debugpy`.", "version": "2023.3.0-dev", "publisher": "ms-python", + "enabledApiProposals": [ + "portsAttributes" + ], "license": "MIT", "homepage": "https://github.com/Microsoft/vscode-python-debugger", "repository": { diff --git a/src/extension/debugger/debugPort/portAttributesProvider.ts b/src/extension/debugger/debugPort/portAttributesProvider.ts new file mode 100644 index 00000000..13fea1b5 --- /dev/null +++ b/src/extension/debugger/debugPort/portAttributesProvider.ts @@ -0,0 +1,14 @@ +/*--------------------------------------------------------- + * Copyright (C) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------*/ + +import { CancellationToken, PortAttributes, PortAttributesProvider, ProviderResult } from 'vscode'; + +export class DebugPortAttributesProvider implements PortAttributesProvider { + public providePortAttributes( + _attributes: { port: number; pid?: number; commandLine?: string }, + _token: CancellationToken, + ): ProviderResult { + return undefined; + } +} diff --git a/src/extension/extensionInit.ts b/src/extension/extensionInit.ts index 668be227..c0e75cce 100644 --- a/src/extension/extensionInit.ts +++ b/src/extension/extensionInit.ts @@ -3,7 +3,7 @@ 'use strict'; -import { debug, DebugConfigurationProviderTriggerKind, languages, Uri, window } from 'vscode'; +import { debug, DebugConfigurationProviderTriggerKind, languages, Uri, window, workspace } from 'vscode'; import { executeCommand, getConfiguration, registerCommand, startDebugging } from './common/vscodeapi'; import { DebuggerTypeName } from './constants'; import { DynamicPythonDebugConfigurationService } from './debugger/configuration/dynamicdebugConfigurationService'; @@ -31,6 +31,7 @@ import { JsonLanguages, LaunchJsonCompletionProvider } from './debugger/configur import { LaunchJsonUpdaterServiceHelper } from './debugger/configuration/launch.json/updaterServiceHelper'; import { ignoreErrors } from './common/promiseUtils'; import { pickArgsInput } from './common/utils/localize'; +import { DebugPortAttributesProvider } from './debugger/debugPort/portAttributesProvider'; export async function registerDebugger(context: IExtensionContext): Promise { const childProcessAttachService = new ChildProcessAttachService(); @@ -125,4 +126,12 @@ export async function registerDebugger(context: IExtensionContext): Promise; + } + + /** + * A selector that will be used to filter which {@link PortAttributesProvider} should be called for each port. + */ + export interface PortAttributesSelector { + /** + * Specifying a port range will cause your provider to only be called for ports within the range. + * The start is inclusive and the end is exclusive. + */ + portRange?: [number, number] | number; + + /** + * Specifying a command pattern will cause your provider to only be called for processes whose command line matches the pattern. + */ + commandPattern?: RegExp; + } + + export namespace workspace { + /** + * If your extension listens on ports, consider registering a PortAttributesProvider to provide information + * about the ports. For example, a debug extension may know about debug ports in it's debuggee. By providing + * this information with a PortAttributesProvider the extension can tell the editor that these ports should be + * ignored, since they don't need to be user facing. + * + * The results of the PortAttributesProvider are merged with the user setting `remote.portsAttributes`. If the values conflict, the user setting takes precedence. + * + * @param portSelector It is best practice to specify a port selector to avoid unnecessary calls to your provider. + * If you don't specify a port selector your provider will be called for every port, which will result in slower port forwarding for the user. + * @param provider The {@link PortAttributesProvider PortAttributesProvider}. + */ + export function registerPortAttributesProvider(portSelector: PortAttributesSelector, provider: PortAttributesProvider): Disposable; + } +} From d73a20e5e3cb5e0137ca91383f8938334f2ce256 Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Mon, 25 Sep 2023 14:32:43 -0700 Subject: [PATCH 03/31] Add global configuration for justMyCode (#91) * Aff configuration * Read just my code from settings too * fix tests * fix lint --- package.json | 12 ++++ package.nls.json | 3 +- .../configuration/resolvers/attach.ts | 7 +- .../configuration/resolvers/launch.ts | 7 +- .../unittest/adapter/factory.unit.test.ts | 2 +- .../resolvers/attach.unit.test.ts | 70 +++++++++--------- .../resolvers/launch.unit.test.ts | 71 ++++++++++--------- src/test/unittest/extensionInit.unit.test.ts | 1 + 8 files changed, 93 insertions(+), 80 deletions(-) diff --git a/package.json b/package.json index c00f979f..b4eb630b 100644 --- a/package.json +++ b/package.json @@ -79,6 +79,18 @@ } ] }, + "configuration": { + "properties": { + "debugpy.debugJustMyCode": { + "default": true, + "description": "%debugpy.debugJustMyCode%", + "scope": "resource", + "type": "boolean" + } + }, + "title": "Python Debugger", + "type": "object" + }, "debuggers": [ { "configurationAttributes": { diff --git a/package.nls.json b/package.nls.json index 6e2822cd..0e861715 100644 --- a/package.nls.json +++ b/package.nls.json @@ -1,5 +1,6 @@ { "debugpy.command.debugInTerminal.title": "Debug Python File", "debugpy.command.clearCacheAndReload.title": "Clear Cache and Reload Window", - "debugpy.command.viewOutput.title": "Show Output" + "debugpy.command.viewOutput.title": "Show Output", + "debugpy.debugJustMyCode": "When debugging only step through user-written code. Disable this to allow stepping into library code." } diff --git a/src/extension/debugger/configuration/resolvers/attach.ts b/src/extension/debugger/configuration/resolvers/attach.ts index f22aa77d..115e4627 100644 --- a/src/extension/debugger/configuration/resolvers/attach.ts +++ b/src/extension/debugger/configuration/resolvers/attach.ts @@ -7,6 +7,7 @@ import { CancellationToken, Uri, WorkspaceFolder } from 'vscode'; import { getOSType, OSType } from '../../../common/platform'; import { AttachRequestArguments, DebugOptions, PathMapping } from '../../../types'; import { BaseConfigurationResolver } from './base'; +import { getConfiguration } from '../../../common/vscodeapi'; export class AttachConfigurationResolver extends BaseConfigurationResolver { public async resolveDebugConfigurationWithSubstitutedVariables( @@ -42,16 +43,12 @@ export class AttachConfigurationResolver extends BaseConfigurationResolver('debugJustMyCode', true); } debugConfiguration.showReturnValue = debugConfiguration.showReturnValue !== false; // Pass workspace folder so we can get this when we get debug events firing. debugConfiguration.workspaceFolder = workspaceFolder ? workspaceFolder.fsPath : undefined; const debugOptions = debugConfiguration.debugOptions!; - if (!debugConfiguration.justMyCode) { - AttachConfigurationResolver.debugOption(debugOptions, DebugOptions.DebugStdLib); - } if (debugConfiguration.django) { AttachConfigurationResolver.debugOption(debugOptions, DebugOptions.Django); } diff --git a/src/extension/debugger/configuration/resolvers/launch.ts b/src/extension/debugger/configuration/resolvers/launch.ts index d42aa878..d2521087 100644 --- a/src/extension/debugger/configuration/resolvers/launch.ts +++ b/src/extension/debugger/configuration/resolvers/launch.ts @@ -11,6 +11,7 @@ import { DebugOptions, DebugPurpose, LaunchRequestArguments } from '../../../typ import { resolveVariables } from '../utils/common'; import { BaseConfigurationResolver } from './base'; import { getDebugEnvironmentVariables, getProgram } from './helper'; +import { getConfiguration } from '../../../common/vscodeapi'; export class LaunchConfigurationResolver extends BaseConfigurationResolver { public async resolveDebugConfiguration( @@ -102,15 +103,11 @@ export class LaunchConfigurationResolver extends BaseConfigurationResolver('debugJustMyCode', true); } // Pass workspace folder so we can get this when we get debug events firing. debugConfiguration.workspaceFolder = workspaceFolder ? workspaceFolder.fsPath : undefined; const debugOptions = debugConfiguration.debugOptions!; - if (!debugConfiguration.justMyCode) { - LaunchConfigurationResolver.debugOption(debugOptions, DebugOptions.DebugStdLib); - } if (debugConfiguration.stopOnEntry) { LaunchConfigurationResolver.debugOption(debugOptions, DebugOptions.StopOnEntry); } diff --git a/src/test/unittest/adapter/factory.unit.test.ts b/src/test/unittest/adapter/factory.unit.test.ts index 08fae7b3..f0d79633 100644 --- a/src/test/unittest/adapter/factory.unit.test.ts +++ b/src/test/unittest/adapter/factory.unit.test.ts @@ -126,7 +126,7 @@ suite('Debugging - Adapter Factory', () => { assert.deepStrictEqual(descriptor, debugExecutable); }); - test.only('Display a message if no python interpreter is set', async () => { + test('Display a message if no python interpreter is set', async () => { getActiveEnvironmentPathStub.resolves(undefined); const session = createSession({}); const promise = factory.createDebugAdapterDescriptor(session, nodeExecutable); diff --git a/src/test/unittest/configuration/resolvers/attach.unit.test.ts b/src/test/unittest/configuration/resolvers/attach.unit.test.ts index 502d6970..64de3555 100644 --- a/src/test/unittest/configuration/resolvers/attach.unit.test.ts +++ b/src/test/unittest/configuration/resolvers/attach.unit.test.ts @@ -6,7 +6,15 @@ import { expect } from 'chai'; import * as TypeMoq from 'typemoq'; import * as sinon from 'sinon'; -import { DebugConfiguration, DebugConfigurationProvider, TextDocument, TextEditor, Uri, WorkspaceFolder } from 'vscode'; +import { + DebugConfiguration, + DebugConfigurationProvider, + TextDocument, + TextEditor, + Uri, + WorkspaceConfiguration, + WorkspaceFolder, +} from 'vscode'; import { PYTHON_LANGUAGE } from '../../../../extension/common/constants'; import { getInfoPerOS } from './common'; import { AttachRequestArguments, DebugOptions } from '../../../../extension/types'; @@ -34,6 +42,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { let getActiveTextEditorStub: sinon.SinonStub; let getWorkspaceFoldersStub: sinon.SinonStub; let getOSTypeStub: sinon.SinonStub; + let getConfigurationStub: sinon.SinonStub; const debugOptionsAvailable = getAvailableOptions(); setup(() => { @@ -42,6 +51,8 @@ getInfoPerOS().forEach(([osName, osType, path]) => { getOSTypeStub = sinon.stub(platform, 'getOSType'); getWorkspaceFoldersStub = sinon.stub(vscodeapi, 'getWorkspaceFolders'); getOSTypeStub.returns(osType); + getConfigurationStub = sinon.stub(vscodeapi, 'getConfiguration'); + getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(true)); }); teardown(() => { @@ -54,6 +65,14 @@ getInfoPerOS().forEach(([osName, osType, path]) => { return folder.object; } + function createMoqConfiguration(justMyCode: boolean) { + const debugpySettings = TypeMoq.Mock.ofType(); + debugpySettings + .setup((p) => p.get('debugJustMyCode', TypeMoq.It.isAny())) + .returns(() => justMyCode); + return debugpySettings.object; + } + function setupActiveEditor(fileName: string | undefined, languageId: string) { if (fileName) { const textEditor = TypeMoq.Mock.ofType(); @@ -493,67 +512,52 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const testsForJustMyCode = [ { justMyCode: false, - debugStdLib: true, + justMyCodeSetting: true, expectedResult: false, }, { justMyCode: false, - debugStdLib: false, + justMyCodeSetting: false, expectedResult: false, }, - { - justMyCode: false, - debugStdLib: undefined, - expectedResult: false, - }, - { - justMyCode: true, - debugStdLib: false, - expectedResult: true, - }, { justMyCode: true, - debugStdLib: true, + justMyCodeSetting: false, expectedResult: true, }, { justMyCode: true, - debugStdLib: undefined, - expectedResult: true, - }, - { - justMyCode: undefined, - debugStdLib: false, + justMyCodeSetting: true, expectedResult: true, }, { justMyCode: undefined, - debugStdLib: true, + justMyCodeSetting: false, expectedResult: false, }, { justMyCode: undefined, - debugStdLib: undefined, + justMyCodeSetting: true, expectedResult: true, }, ]; - test('Ensure justMyCode property is correctly derived from debugStdLib', async () => { - const activeFile = 'xyz.py'; - const workspaceFolder = createMoqWorkspaceFolder(__dirname); - setupActiveEditor(activeFile, PYTHON_LANGUAGE); - const defaultWorkspace = path.join('usr', 'desktop'); - setupWorkspaces([defaultWorkspace]); + testsForJustMyCode.forEach(async (testParams) => { + test('Ensure justMyCode property is correctly derived from global settings', async () => { + const activeFile = 'xyz.py'; + const workspaceFolder = createMoqWorkspaceFolder(__dirname); + setupActiveEditor(activeFile, PYTHON_LANGUAGE); + const defaultWorkspace = path.join('usr', 'desktop'); + setupWorkspaces([defaultWorkspace]); - const debugOptions = debugOptionsAvailable - .slice() - .concat(DebugOptions.Jinja, DebugOptions.Sudo) as DebugOptions[]; + const debugOptions = debugOptionsAvailable + .slice() + .concat(DebugOptions.Jinja, DebugOptions.Sudo) as DebugOptions[]; - testsForJustMyCode.forEach(async (testParams) => { + getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(testParams.justMyCodeSetting)); const debugConfig = await resolveDebugConfiguration(workspaceFolder, { ...attach, debugOptions, justMyCode: testParams.justMyCode, - debugStdLib: testParams.debugStdLib, }); expect(debugConfig).to.have.property('justMyCode', testParams.expectedResult); }); diff --git a/src/test/unittest/configuration/resolvers/launch.unit.test.ts b/src/test/unittest/configuration/resolvers/launch.unit.test.ts index 6da329c6..4f52ba1e 100644 --- a/src/test/unittest/configuration/resolvers/launch.unit.test.ts +++ b/src/test/unittest/configuration/resolvers/launch.unit.test.ts @@ -6,7 +6,15 @@ import { expect } from 'chai'; import * as TypeMoq from 'typemoq'; import * as sinon from 'sinon'; -import { DebugConfiguration, DebugConfigurationProvider, TextDocument, TextEditor, Uri, WorkspaceFolder } from 'vscode'; +import { + DebugConfiguration, + DebugConfigurationProvider, + TextDocument, + TextEditor, + Uri, + WorkspaceConfiguration, + WorkspaceFolder, +} from 'vscode'; import { PYTHON_LANGUAGE } from '../../../../extension/common/constants'; import { LaunchConfigurationResolver } from '../../../../extension/debugger/configuration/resolvers/launch'; import { getInfoPerOS } from './common'; @@ -31,6 +39,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { let getInterpreterDetailsStub: sinon.SinonStub; let getEnvFileStub: sinon.SinonStub; let getDebugEnvironmentVariablesStub: sinon.SinonStub; + let getConfigurationStub: sinon.SinonStub; setup(() => { getActiveTextEditorStub = sinon.stub(vscodeapi, 'getActiveTextEditor'); @@ -40,6 +49,8 @@ getInfoPerOS().forEach(([osName, osType, path]) => { getInterpreterDetailsStub = sinon.stub(pythonApi, 'getInterpreterDetails'); getEnvFileStub = sinon.stub(settings, 'getEnvFile'); getDebugEnvironmentVariablesStub = sinon.stub(helper, 'getDebugEnvironmentVariables'); + getConfigurationStub = sinon.stub(vscodeapi, 'getConfiguration'); + getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(true)); }); teardown(() => { @@ -52,6 +63,14 @@ getInfoPerOS().forEach(([osName, osType, path]) => { return folder.object; } + function createMoqConfiguration(justMyCode: boolean) { + const debugpySettings = TypeMoq.Mock.ofType(); + debugpySettings + .setup((p) => p.get('debugJustMyCode', TypeMoq.It.isAny())) + .returns(() => justMyCode); + return debugpySettings.object; + } + function getClientOS() { return osType === platform.OSType.Windows ? 'windows' : 'unix'; } @@ -726,11 +745,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { expect(debugConfig).to.have.property('redirectOutput', true); expect(debugConfig).to.have.property('justMyCode', false); expect(debugConfig).to.have.property('debugOptions'); - const expectedOptions = [ - DebugOptions.DebugStdLib, - DebugOptions.ShowReturnValue, - DebugOptions.RedirectOutput, - ]; + const expectedOptions = [DebugOptions.ShowReturnValue, DebugOptions.RedirectOutput]; if (osType === platform.OSType.Windows) { expectedOptions.push(DebugOptions.FixFilePathCase); } @@ -740,60 +755,45 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const testsForJustMyCode = [ { justMyCode: false, - debugStdLib: true, - expectedResult: false, - }, - { - justMyCode: false, - debugStdLib: false, + justMyCodeSetting: true, expectedResult: false, }, { justMyCode: false, - debugStdLib: undefined, + justMyCodeSetting: false, expectedResult: false, }, { justMyCode: true, - debugStdLib: false, - expectedResult: true, - }, - { - justMyCode: true, - debugStdLib: true, + justMyCodeSetting: false, expectedResult: true, }, { justMyCode: true, - debugStdLib: undefined, + justMyCodeSetting: true, expectedResult: true, }, { justMyCode: undefined, - debugStdLib: false, - expectedResult: true, - }, - { - justMyCode: undefined, - debugStdLib: true, + justMyCodeSetting: false, expectedResult: false, }, { justMyCode: undefined, - debugStdLib: undefined, + justMyCodeSetting: true, expectedResult: true, }, ]; - test('Ensure justMyCode property is correctly derived from debugStdLib', async () => { - const pythonPath = `PythonPath_${new Date().toString()}`; - const workspaceFolder = createMoqWorkspaceFolder(__dirname); - const pythonFile = 'xyz.py'; - setupIoc(pythonPath); - setupActiveEditor(pythonFile, PYTHON_LANGUAGE); - testsForJustMyCode.forEach(async (testParams) => { + testsForJustMyCode.forEach(async (testParams) => { + test('Ensure justMyCode property is correctly derived from global settings', async () => { + const pythonPath = `PythonPath_${new Date().toString()}`; + const workspaceFolder = createMoqWorkspaceFolder(__dirname); + const pythonFile = 'xyz.py'; + setupIoc(pythonPath); + setupActiveEditor(pythonFile, PYTHON_LANGUAGE); + getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(testParams.justMyCodeSetting)); const debugConfig = await resolveDebugConfiguration(workspaceFolder, { ...launch, - debugStdLib: testParams.debugStdLib, justMyCode: testParams.justMyCode, }); expect(debugConfig).to.have.property('justMyCode', testParams.expectedResult); @@ -930,6 +930,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { request: requestType, type: 'python', name: '', + justMyCode: false, ...settings, }; const workspaceFolder = createMoqWorkspaceFolder(__dirname); diff --git a/src/test/unittest/extensionInit.unit.test.ts b/src/test/unittest/extensionInit.unit.test.ts index a4bfa823..ff654098 100644 --- a/src/test/unittest/extensionInit.unit.test.ts +++ b/src/test/unittest/extensionInit.unit.test.ts @@ -68,6 +68,7 @@ suite('Debugging - register Debugging', () => { sinon.assert.calledWithExactly(registerCommandStub, Commands.ClearStorage, sinon.match.any); expect(registerCommandStub.callCount).to.be.equal(5); }); + test('Activation will register the Debug adapter factories', async () => { registerDebugger(context.object); From 77e97c9aadf9644afff9460264f5c76a1e0204e3 Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Mon, 25 Sep 2023 16:52:27 -0700 Subject: [PATCH 04/31] Update extension name (#84) * Update package.json * Fix readme * update debug type name * Fix tests * Fix lint * Fix test * Update translations * revert extension id * Fix tests * fix lint * Update debug type name * Fix translations and lint * update debug type * fix lint --- README.md | 18 +++---- package.json | 16 +++---- src/extension/common/utils/localize.ts | 24 +++++----- .../adapter/outdatedDebuggerPrompt.ts | 2 +- .../debugger/adapter/remoteLaunchers.ts | 2 +- .../dynamicdebugConfigurationService.ts | 8 ++-- src/extension/extension.ts | 4 +- src/extension/telemetry/constants.ts | 2 - src/extension/telemetry/index.ts | 48 ------------------- src/test/common.ts | 2 + .../adapter/remoteLaunchers.unit.test.ts | 2 +- ...t.test => fileLaunchWithArgs.unit.test.ts} | 5 +- .../resolvers/attach.unit.test.ts | 3 +- .../resolvers/launch.unit.test.ts | 17 +++---- src/test/unittest/extensionInit.unit.test.ts | 13 +++-- .../childProcessAttachHandler.unit.test.ts | 3 +- .../childProcessAttachService.unit.test.ts | 15 +++--- 17 files changed, 74 insertions(+), 110 deletions(-) rename src/test/unittest/configuration/providers/{fileLaunchWithArgs.unit.test => fileLaunchWithArgs.unit.test.ts} (88%) diff --git a/README.md b/README.md index 960278fc..c4555200 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,25 @@ -# Debugpy extension for Visual Studio Code +# Python Debugger extension for Visual Studio Code -A [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/VSCode) that supports Python debugging with debugpy. debugpy provides a seamless debugging experience by allowing you to set breakpoints, step through code, inspect variables, and perform other essential debugging tasks. The debugy extension offers debugging support for various types of Python applications including scripts, web applications, remote processes, and multi-threaded processes. +A [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/VSCode) that supports Python debugging with debugpy. Python Debugger provides a seamless debugging experience by allowing you to set breakpoints, step through code, inspect variables, and perform other essential debugging tasks. The debugy extension offers debugging support for various types of Python applications including scripts, web applications, remote processes, and multi-threaded processes. Note: -- The Python extension offers the debugpy extension as an optional installation, including it during the setup process. +- The Python extension offers the python debugger extension as an optional installation, including it during the setup process. - This extension is supported for all [actively supported versions](https://devguide.python.org/#status-of-python-branches) of the Python language (i.e., Python >= 3.7). ## Usage -Once installed in Visual Studio Code, debugpy will be automatically activated when you open a Python file. +Once installed in Visual Studio Code, python-debugger will be automatically activated when you open a Python file. -## Disabling the Debugpy extension -If you want to disable the Debugpy extension, you can [disable this extension](https://code.visualstudio.com/docs/editor/extension-marketplace#_disable-an-extension) per workspace in Visual Studio Code. +## Disabling the Python Debugger extension +If you want to disable the Python Debugger extension, you can [disable this extension](https://code.visualstudio.com/docs/editor/extension-marketplace#_disable-an-extension) per workspace in Visual Studio Code. ## Commands | Command | Description | | ---------------------- | --------------------------------- | -| Debugpy: viewOutput | Show the debugpy extension output. | -| Debugpy: clearCacheAndReload | Allows you to clear the global values set in the extension. | -| Debugpy: debugInTerminal | Allows you to debug a simple Python file in the terminal. | +| Python Debugger: viewOutput | Show the Python Debugger Extension output. | +| Python Debugger: clearCacheAndReload | Allows you to clear the global values set in the extension. | +| Python Debugger: debugInTerminal | Allows you to debug a simple Python file in the terminal. | ## Data and telemetry The Debubpy Extension for Visual Studio Code collects usage data and sends it to Microsoft to help improve our products and services. Read our [privacy statement](https://privacy.microsoft.com/privacystatement) to learn more. This extension respects the `telemetry.enableTelemetry` setting which you can learn more about at https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting. diff --git a/package.json b/package.json index b4eb630b..87a7a181 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "debugpy", - "displayName": "Debugpy", + "displayName": "Python Debugger", "description": "Python Debugger extension using `debugpy`.", "version": "2023.3.0-dev", "publisher": "ms-python", @@ -39,18 +39,18 @@ "contributes": { "commands": [ { - "category": "Debugpy", + "category": "Python Debugger", "command": "debugpy.debugInTerminal", "icon": "$(debug-alt)", "title": "%debugpy.command.debugInTerminal.title%" }, { - "category": "Debugpy", + "category": "Python Debugger", "command": "debugpy.clearCacheAndReload", "title": "%debugpy.command.clearCacheAndReload.title%" }, { - "category": "Debugpy", + "category": "Python Debugger", "command": "debugpy.viewOutput", "icon": { "dark": "resources/dark/repl.svg", @@ -62,18 +62,18 @@ "menus": { "commandPalette": [ { - "category": "Debugpy", + "category": "Python Debugger", "command": "debugpy.clearCacheAndReload", "title": "%debugpy.command.clearCacheAndReload.title%" }, { - "category": "Debugpy", + "category": "Python Debugger", "command": "debugpy.debugInTerminal", "icon": "$(debug-alt)", "title": "%debugpy.command.debugInTerminal.title%" }, { - "category": "Debugpy", + "category": "Python Debugger", "command": "debugpy.viewOutput", "title": "%debugpy.command.viewOutput.title%" } @@ -434,7 +434,7 @@ } }, "configurationSnippets": [], - "label": "Debugpy", + "label": "Python Debugger", "languages": [ "python" ], diff --git a/src/extension/common/utils/localize.ts b/src/extension/common/utils/localize.ts index 36346e9f..06b6fbdb 100644 --- a/src/extension/common/utils/localize.ts +++ b/src/extension/common/utils/localize.ts @@ -19,12 +19,12 @@ export namespace DebugConfigStrings { placeholder: l10n.t('Debug Configuration'), }; export const launchJsonCompletions = { - label: l10n.t('Debugpy'), - description: l10n.t('Select a Debugpy debug configuration'), + label: l10n.t('Python Debugger'), + description: l10n.t('Select a Python Debugger debug configuration'), }; export namespace file { export const snippet = { - name: l10n.t('Debugpy: Current File'), + name: l10n.t('Python Debugger: Current File'), }; export const selectConfiguration = { label: l10n.t('Python File'), @@ -33,7 +33,7 @@ export namespace DebugConfigStrings { } export namespace fileWithArgs { export const snippet = { - name: l10n.t('Debugpy: Current File with Arguments'), + name: l10n.t('Python Debugger: Current File with Arguments'), }; export const selectConfiguration = { label: l10n.t('Python File with Arguments'), @@ -42,7 +42,7 @@ export namespace DebugConfigStrings { } export namespace module { export const snippet = { - name: l10n.t('Debugpy: Module'), + name: l10n.t('Python Debugger: Module'), default: l10n.t('enter-your-module-name'), }; export const selectConfiguration = { @@ -58,7 +58,7 @@ export namespace DebugConfigStrings { } export namespace attach { export const snippet = { - name: l10n.t('Debugpy: Remote Attach'), + name: l10n.t('Python Debugger: Remote Attach'), }; export const selectConfiguration = { label: l10n.t('Remote Attach'), @@ -77,7 +77,7 @@ export namespace DebugConfigStrings { } export namespace attachPid { export const snippet = { - name: l10n.t('Debugpy: Attach using Process Id'), + name: l10n.t('Python Debugger: Attach using Process Id'), }; export const selectConfiguration = { label: l10n.t('Attach using Process ID'), @@ -86,7 +86,7 @@ export namespace DebugConfigStrings { } export namespace django { export const snippet = { - name: l10n.t('Debugpy: Django'), + name: l10n.t('Python Debugger: Django'), }; export const selectConfiguration = { label: l10n.t('Django'), @@ -102,7 +102,7 @@ export namespace DebugConfigStrings { } export namespace fastapi { export const snippet = { - name: l10n.t('Debugpy: FastAPI'), + name: l10n.t('Python Debugger: FastAPI'), }; export const selectConfiguration = { label: l10n.t('FastAPI'), @@ -116,7 +116,7 @@ export namespace DebugConfigStrings { } export namespace flask { export const snippet = { - name: l10n.t('Debugpy: Flask'), + name: l10n.t('Python Debugger: Flask'), }; export const selectConfiguration = { label: l10n.t('Flask'), @@ -124,13 +124,13 @@ export namespace DebugConfigStrings { }; export const enterAppPathOrNamePath = { title: l10n.t('Debug Flask'), - prompt: l10n.t('Debugpy: Flask'), + prompt: l10n.t('Python Debugger: Flask'), invalid: l10n.t('Enter a valid name'), }; } export namespace pyramid { export const snippet = { - name: l10n.t('Debugpy: Pyramid Application'), + name: l10n.t('Python Debugger: Pyramid Application'), }; export const selectConfiguration = { label: l10n.t('Pyramid'), diff --git a/src/extension/debugger/adapter/outdatedDebuggerPrompt.ts b/src/extension/debugger/adapter/outdatedDebuggerPrompt.ts index 587783c9..29aac508 100644 --- a/src/extension/debugger/adapter/outdatedDebuggerPrompt.ts +++ b/src/extension/debugger/adapter/outdatedDebuggerPrompt.ts @@ -30,7 +30,7 @@ class OutdatedDebuggerPrompt implements DebugAdapterTracker { if (eventMessage.event === 'output') { const outputMessage = eventMessage as DebugProtocol.OutputEvent; if (outputMessage.body.category === 'telemetry') { - // debugpy sends telemetry as both ptvsd and debugpy. This was done to help with + // Python Debugger sends telemetry as both ptvsd and debugpy. This was done to help with // transition from ptvsd to debugpy while analyzing usage telemetry. if ( outputMessage.body.output === 'ptvsd' && diff --git a/src/extension/debugger/adapter/remoteLaunchers.ts b/src/extension/debugger/adapter/remoteLaunchers.ts index ccaf137f..2757b092 100644 --- a/src/extension/debugger/adapter/remoteLaunchers.ts +++ b/src/extension/debugger/adapter/remoteLaunchers.ts @@ -8,7 +8,7 @@ import '../../common/promiseUtils'; import { EXTENSION_ROOT_DIR } from '../../common/constants'; import { fileToCommandArgumentForPythonExt } from '../../common/stringUtils'; -const pathToPythonLibDir = path.join(EXTENSION_ROOT_DIR, 'pythonFiles', 'lib', 'python'); +const pathToPythonLibDir = path.join(EXTENSION_ROOT_DIR, 'bundled', 'libs'); const pathToDebugger = path.join(pathToPythonLibDir, 'debugpy'); type RemoteDebugOptions = { diff --git a/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts b/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts index c0a92b42..20e75f79 100644 --- a/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts +++ b/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts @@ -23,7 +23,7 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf const providers = []; providers.push({ - name: 'Debugpy: Python File', + name: 'Python Debugger: Python File', type: DebuggerTypeName, request: 'launch', program: '${file}', @@ -33,7 +33,7 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf const djangoManagePath = await DynamicPythonDebugConfigurationService.getDjangoPath(folder); if (djangoManagePath) { providers.push({ - name: 'Debugpy: Django', + name: 'Python Debugger: Django', type: DebuggerTypeName, request: 'launch', program: `${workspaceFolderToken}${path.sep}${djangoManagePath}`, @@ -46,7 +46,7 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf const flaskPath = await DynamicPythonDebugConfigurationService.getFlaskPath(folder); if (flaskPath) { providers.push({ - name: 'Debugpy: Flask', + name: 'Python Debugger: Flask', type: DebuggerTypeName, request: 'launch', module: 'flask', @@ -64,7 +64,7 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf if (fastApiPath) { fastApiPath = replaceAll(path.relative(folder.uri.fsPath, fastApiPath), path.sep, '.').replace('.py', ''); providers.push({ - name: 'Debugpy: FastAPI', + name: 'Python Debugger: FastAPI', type: DebuggerTypeName, request: 'launch', module: 'uvicorn', diff --git a/src/extension/extension.ts b/src/extension/extension.ts index e4b4fb55..1829bc61 100644 --- a/src/extension/extension.ts +++ b/src/extension/extension.ts @@ -20,11 +20,11 @@ import { EventName } from './telemetry/constants'; // your extension is activated the very first time the command is executed export async function activate(context: IExtensionContext): Promise { // Setup logging - const outputChannel = createOutputChannel('Debugpy'); + const outputChannel = createOutputChannel('Python Debugger'); context.subscriptions.push(outputChannel, registerLogger(outputChannel)); context.subscriptions.push(registerCommand(Commands.ViewOutput, () => outputChannel.show())); - traceLog(`Name: Debugpy`); + traceLog(`Name: Python Debugger`); traceLog(`Module: debugpy`); try { diff --git a/src/extension/telemetry/constants.ts b/src/extension/telemetry/constants.ts index 90226a37..31f144d4 100644 --- a/src/extension/telemetry/constants.ts +++ b/src/extension/telemetry/constants.ts @@ -17,7 +17,5 @@ export enum EventName { DEBUGGER_ATTACH_TO_LOCAL_PROCESS = 'DEBUGGER.ATTACH_TO_LOCAL_PROCESS', DEBUGGER_CONFIGURATION_PROMPTS = 'DEBUGGER.CONFIGURATION.PROMPTS', DEBUGGER_CONFIGURATION_PROMPTS_IN_LAUNCH_JSON = 'DEBUGGER.CONFIGURATION.PROMPTS.IN.LAUNCH.JSON', - DIAGNOSTICS_MESSAGE = 'DIAGNOSTICS.MESSAGE', - DIAGNOSTICS_ACTION = 'DIAGNOSTICS.ACTION', ENVFILE_VARIABLE_SUBSTITUTION = 'ENVFILE_VARIABLE_SUBSTITUTION', } diff --git a/src/extension/telemetry/index.ts b/src/extension/telemetry/index.ts index 5bf22948..d187f89a 100644 --- a/src/extension/telemetry/index.ts +++ b/src/extension/telemetry/index.ts @@ -384,21 +384,6 @@ export interface IEventNamePropertyMapping { */ console?: ConsoleType; }; - // /** - // * Telemetry event sent when we are checking if we can handle the diagnostic code - // */ - // /* __GDPR__ - // "diagnostics.message" : { - // "code" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" } - // } - // */ - // [EventName.DIAGNOSTICS_MESSAGE]: { - // /** - // * Code of diagnostics message detected and displayed. - // * @type {string} - // */ - // code: DiagnosticCodes; - // }; /** * Telemetry captured when user code starts running after loading the debugger. */ @@ -655,39 +640,6 @@ export interface IEventNamePropertyMapping { "debugger.configuration.prompts.in.launch.json" : { "owner": "paulacamargo25" } */ [EventName.DEBUGGER_CONFIGURATION_PROMPTS_IN_LAUNCH_JSON]: never | undefined; - /** - * Telemetry event sent with details of actions when invoking a diagnostic command - */ - /* __GDPR__ - "diagnostics.action" : { - "commandname" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" }, - "ignorecode" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" }, - "url" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" }, - "action" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" } - } - */ - [EventName.DIAGNOSTICS_ACTION]: { - /** - * Diagnostics command executed. - * @type {string} - */ - commandName?: string; - /** - * Diagnostisc code ignored (message will not be seen again). - * @type {string} - */ - ignoreCode?: string; - /** - * Url of web page launched in browser. - * @type {string} - */ - url?: string; - /** - * Custom actions performed. - * @type {'switchToCommandPrompt'} - */ - action?: 'switchToCommandPrompt'; - }; /** * Telemetry event sent when substituting Environment variables to calculate value of variables */ diff --git a/src/test/common.ts b/src/test/common.ts index 4e01d4a9..db5ba2f2 100644 --- a/src/test/common.ts +++ b/src/test/common.ts @@ -94,3 +94,5 @@ function getPythonPath(): string { } export interface IExtensionTestApi extends IExtensionApi {} + +export const debuggerTypeName = 'debugpy'; diff --git a/src/test/unittest/adapter/remoteLaunchers.unit.test.ts b/src/test/unittest/adapter/remoteLaunchers.unit.test.ts index 8faf5770..f681ee08 100644 --- a/src/test/unittest/adapter/remoteLaunchers.unit.test.ts +++ b/src/test/unittest/adapter/remoteLaunchers.unit.test.ts @@ -52,7 +52,7 @@ suite('External debugpy Debugger Launcher', () => { }); suite('Path To Debugger Package', () => { - const pathToPythonLibDir = path.join(EXTENSION_ROOT_DIR, 'pythonFiles', 'lib', 'python'); + const pathToPythonLibDir = path.join(EXTENSION_ROOT_DIR, 'bundled', 'libs'); test('Path to debugpy debugger package', () => { const actual = launchers.getDebugpyPackagePath(); const expected = path.join(pathToPythonLibDir, 'debugpy'); diff --git a/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test b/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test.ts similarity index 88% rename from src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test rename to src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test.ts index ff7ab6f9..f0e295e6 100644 --- a/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test +++ b/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test.ts @@ -17,7 +17,10 @@ suite('Debugging - Configuration Provider File with Arguments', () => { const folder = { uri: Uri.parse(path.join('one', 'two')), name: '1', index: 0 }; const state = { config: {}, folder }; - await buildFileWithArgsLaunchDebugConfiguration(undefined as unknown as MultiStepInput, state); + await buildFileWithArgsLaunchDebugConfiguration( + undefined as unknown as MultiStepInput, + state, + ); const config = { name: DebugConfigStrings.fileWithArgs.snippet.name, diff --git a/src/test/unittest/configuration/resolvers/attach.unit.test.ts b/src/test/unittest/configuration/resolvers/attach.unit.test.ts index 64de3555..97241da1 100644 --- a/src/test/unittest/configuration/resolvers/attach.unit.test.ts +++ b/src/test/unittest/configuration/resolvers/attach.unit.test.ts @@ -21,6 +21,7 @@ import { AttachRequestArguments, DebugOptions } from '../../../../extension/type import { AttachConfigurationResolver } from '../../../../extension/debugger/configuration/resolvers/attach'; import * as vscodeapi from '../../../../extension/common/vscodeapi'; import * as platform from '../../../../extension/common/platform'; +import { debuggerTypeName } from '../../../common'; getInfoPerOS().forEach(([osName, osType, path]) => { if (osType === platform.OSType.Unknown) { @@ -97,7 +98,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const attach: Partial = { name: 'Python attach', - type: 'debugpy', + type: debuggerTypeName, request: 'attach', }; diff --git a/src/test/unittest/configuration/resolvers/launch.unit.test.ts b/src/test/unittest/configuration/resolvers/launch.unit.test.ts index 4f52ba1e..200cccbf 100644 --- a/src/test/unittest/configuration/resolvers/launch.unit.test.ts +++ b/src/test/unittest/configuration/resolvers/launch.unit.test.ts @@ -25,6 +25,7 @@ import { DebuggerTypeName } from '../../../../extension/constants'; import * as pythonApi from '../../../../extension/common/python'; import * as settings from '../../../../extension/common/settings'; import * as helper from '../../../../extension/debugger/configuration/resolvers/helper'; +import { debuggerTypeName } from '../../../common'; getInfoPerOS().forEach(([osName, osType, path]) => { if (osType === platform.OSType.Unknown) { @@ -107,7 +108,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const launch: LaunchRequestArguments = { name: 'Python launch', - type: 'debugpy', + type: debuggerTypeName, request: 'launch', }; @@ -153,7 +154,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const debugConfig = await resolveDebugConfiguration(workspaceFolder, {}); expect(Object.keys(debugConfig!)).to.have.lengthOf.above(3); - expect(debugConfig).to.have.property('type', 'debugpy'); + expect(debugConfig).to.have.property('type', debuggerTypeName); expect(debugConfig).to.have.property('request', 'launch'); expect(debugConfig).to.have.property('clientOS', getClientOS()); expect(debugConfig).to.not.have.property('pythonPath'); @@ -182,7 +183,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { }); expect(Object.keys(debugConfig!)).to.have.lengthOf.above(3); - expect(debugConfig).to.have.property('type', 'debugpy'); + expect(debugConfig).to.have.property('type', debuggerTypeName); expect(debugConfig).to.have.property('request', 'launch'); expect(debugConfig).to.have.property('clientOS', getClientOS()); expect(debugConfig).to.not.have.property('pythonPath'); @@ -210,7 +211,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const filePath = Uri.file(path.dirname('')).fsPath; expect(Object.keys(debugConfig!)).to.have.lengthOf.above(3); - expect(debugConfig).to.have.property('type', 'debugpy'); + expect(debugConfig).to.have.property('type', debuggerTypeName); expect(debugConfig).to.have.property('request', 'launch'); expect(debugConfig).to.have.property('clientOS', getClientOS()); expect(debugConfig).to.not.have.property('pythonPath'); @@ -236,7 +237,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const debugConfig = await resolveDebugConfiguration(undefined, {}); expect(Object.keys(debugConfig!)).to.have.lengthOf.above(3); - expect(debugConfig).to.have.property('type', 'debugpy'); + expect(debugConfig).to.have.property('type', debuggerTypeName); expect(debugConfig).to.have.property('clientOS', getClientOS()); expect(debugConfig).to.not.have.property('pythonPath'); expect(debugConfig).to.have.property('python', pythonPath); @@ -261,7 +262,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const debugConfig = await resolveDebugConfiguration(undefined, {}); expect(Object.keys(debugConfig!)).to.have.lengthOf.above(3); - expect(debugConfig).to.have.property('type', 'debugpy'); + expect(debugConfig).to.have.property('type', debuggerTypeName); expect(debugConfig).to.have.property('request', 'launch'); expect(debugConfig).to.have.property('clientOS', getClientOS()); expect(debugConfig).to.not.have.property('pythonPath'); @@ -288,7 +289,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const filePath = Uri.file(defaultWorkspace).fsPath; expect(Object.keys(debugConfig!)).to.have.lengthOf.above(3); - expect(debugConfig).to.have.property('type', 'debugpy'); + expect(debugConfig).to.have.property('type', debuggerTypeName); expect(debugConfig).to.have.property('request', 'launch'); expect(debugConfig).to.have.property('clientOS', getClientOS()); expect(debugConfig).to.not.have.property('pythonPath'); @@ -705,7 +706,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { }); test('Test defaults of python debugger', async () => { - if (DebuggerTypeName === 'debugpy') { + if (DebuggerTypeName === debuggerTypeName) { return; } const pythonPath = `PythonPath_${new Date().toString()}`; diff --git a/src/test/unittest/extensionInit.unit.test.ts b/src/test/unittest/extensionInit.unit.test.ts index ff654098..243e5588 100644 --- a/src/test/unittest/extensionInit.unit.test.ts +++ b/src/test/unittest/extensionInit.unit.test.ts @@ -21,6 +21,7 @@ import { DebugAdapterDescriptorFactory } from '../../extension/debugger/adapter/ import { expect } from 'chai'; import { DebugSessionTelemetry } from '../../extension/common/application/debugSessionTelemetry'; import { LaunchJsonCompletionProvider } from '../../extension/debugger/configuration/launch.json/completionProvider'; +import { debuggerTypeName } from '../common'; suite('Debugging - register Debugging', () => { let context: typemoq.IMock; @@ -72,10 +73,14 @@ suite('Debugging - register Debugging', () => { test('Activation will register the Debug adapter factories', async () => { registerDebugger(context.object); - sinon.assert.calledWithExactly(registerDebugAdapterTrackerFactoryStub, 'debugpy', loggingFactory); - sinon.assert.calledWithExactly(registerDebugAdapterTrackerFactoryStub, 'debugpy', debuggerPromptFactory); - sinon.assert.calledWithExactly(registerDebugAdapterTrackerFactoryStub, 'debugpy', debugSessionTelemetry); - sinon.assert.calledOnceWithMatch(registerDebugAdapterDescriptorFactoryStub, 'debugpy', descriptorFactory); + sinon.assert.calledWithExactly(registerDebugAdapterTrackerFactoryStub, debuggerTypeName, loggingFactory); + sinon.assert.calledWithExactly(registerDebugAdapterTrackerFactoryStub, debuggerTypeName, debuggerPromptFactory); + sinon.assert.calledWithExactly(registerDebugAdapterTrackerFactoryStub, debuggerTypeName, debugSessionTelemetry); + sinon.assert.calledOnceWithMatch( + registerDebugAdapterDescriptorFactoryStub, + debuggerTypeName, + descriptorFactory, + ); expect(registerDebugAdapterTrackerFactoryStub.callCount).to.be.equal(3); }); diff --git a/src/test/unittest/hooks/childProcessAttachHandler.unit.test.ts b/src/test/unittest/hooks/childProcessAttachHandler.unit.test.ts index f2901dee..11d406d0 100644 --- a/src/test/unittest/hooks/childProcessAttachHandler.unit.test.ts +++ b/src/test/unittest/hooks/childProcessAttachHandler.unit.test.ts @@ -10,6 +10,7 @@ import { ChildProcessAttachService } from '../../../extension/debugger/hooks/chi import { DebuggerEvents } from '../../../extension/debugger/hooks/constants'; import { AttachRequestArguments } from '../../../extension/types'; import { DebuggerTypeName } from '../../../extension/constants'; +import { debuggerTypeName } from '../../common'; suite('Debug - Child Process', () => { test('Do not attach if the event is undefined', async () => { @@ -47,7 +48,7 @@ suite('Debug - Child Process', () => { const handler = new ChildProcessAttachEventHandler(instance(attachService)); const body: AttachRequestArguments = { name: 'Attach', - type: 'debugpy', + type: debuggerTypeName, request: 'attach', port: 1234, subProcessId: 2, diff --git a/src/test/unittest/hooks/childProcessAttachService.unit.test.ts b/src/test/unittest/hooks/childProcessAttachService.unit.test.ts index 1291057d..b01bb51c 100644 --- a/src/test/unittest/hooks/childProcessAttachService.unit.test.ts +++ b/src/test/unittest/hooks/childProcessAttachService.unit.test.ts @@ -9,6 +9,7 @@ import { Uri, WorkspaceFolder, debug } from 'vscode'; import { ChildProcessAttachService } from '../../../extension/debugger/hooks/childProcessAttachService'; import { AttachRequestArguments, LaunchRequestArguments } from '../../../extension/types'; import * as vscodeapi from '../../../extension/common/vscodeapi'; +import { debuggerTypeName } from '../../common'; suite('Debug - Attach to Child Process', () => { let attachService: ChildProcessAttachService; @@ -29,7 +30,7 @@ suite('Debug - Attach to Child Process', () => { test('Message is not displayed if debugger is launched', async () => { const data: AttachRequestArguments = { name: 'Attach', - type: 'debugpy', + type: debuggerTypeName, request: 'attach', port: 1234, subProcessId: 2, @@ -48,7 +49,7 @@ suite('Debug - Attach to Child Process', () => { test('Message is displayed if debugger is not launched', async () => { const data: AttachRequestArguments = { name: 'Attach', - type: 'debugpy', + type: debuggerTypeName, request: 'attach', port: 1234, subProcessId: 2, @@ -72,7 +73,7 @@ suite('Debug - Attach to Child Process', () => { const data: AttachRequestArguments = { name: 'Attach', - type: 'debugpy', + type: debuggerTypeName, request: 'attach', port: 1234, subProcessId: 2, @@ -96,7 +97,7 @@ suite('Debug - Attach to Child Process', () => { const data: AttachRequestArguments = { name: 'Attach', - type: 'debugpy', + type: debuggerTypeName, request: 'attach', port: 1234, subProcessId: 2, @@ -116,7 +117,7 @@ suite('Debug - Attach to Child Process', () => { test('Validate debug config is passed with the correct params', async () => { const data: LaunchRequestArguments | AttachRequestArguments = { request: 'attach', - type: 'debugpy', + type: debuggerTypeName, name: 'Attach', port: 1234, subProcessId: 2, @@ -141,7 +142,7 @@ suite('Debug - Attach to Child Process', () => { }); test('Pass data as is if data is attach debug configuration', async () => { const data: AttachRequestArguments = { - type: 'debugpy', + type: debuggerTypeName, request: 'attach', name: '', }; @@ -163,7 +164,7 @@ suite('Debug - Attach to Child Process', () => { test('Validate debug config when parent/root parent was attached', async () => { const data: AttachRequestArguments = { request: 'attach', - type: 'debugpy', + type: debuggerTypeName, name: 'Attach', host: '123.123.123.123', port: 1234, From ebab1f42aa062696cf8e07252ccc55533c4f2707 Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Mon, 25 Sep 2023 20:24:05 -0700 Subject: [PATCH 05/31] use version 1.7 (#95) --- noxfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/noxfile.py b/noxfile.py index ac177106..8fea5507 100644 --- a/noxfile.py +++ b/noxfile.py @@ -25,7 +25,7 @@ def _install_bundle(session: nox.Session, version="latest") -> None: "./requirements.txt", ) session.install("packaging") - _install_package(f"{os.getcwd()}/bundled/libs", "debugpy", version) + _install_package(f"{os.getcwd()}/bundled/libs", "debugpy", "1.7.0") def _update_pip_packages(session: nox.Session) -> None: From d2a7cb47ea95942da216661f78e8d9ca0bb3c083 Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Wed, 27 Sep 2023 09:50:36 -0700 Subject: [PATCH 06/31] Remove default justMyCode (#100) --- .../configuration/dynamicdebugConfigurationService.ts | 4 ---- .../debugger/configuration/providers/djangoLaunch.ts | 1 - .../debugger/configuration/providers/fastapiLaunch.ts | 1 - src/extension/debugger/configuration/providers/fileLaunch.ts | 1 - .../debugger/configuration/providers/fileLaunchWithArgs.ts | 1 - src/extension/debugger/configuration/providers/flaskLaunch.ts | 1 - .../debugger/configuration/providers/moduleLaunch.ts | 1 - src/extension/debugger/configuration/providers/pidAttach.ts | 1 - .../debugger/configuration/providers/pyramidLaunch.ts | 1 - .../debugger/configuration/providers/remoteAttach.ts | 1 - .../configuration/providers/djangoLaunch.unit.test.ts | 2 -- .../configuration/providers/fastapiLaunch.unit.test.ts | 2 -- .../unittest/configuration/providers/fileLaunch.unit.test.ts | 1 - .../configuration/providers/fileLaunchWithArgs.unit.test.ts | 1 - .../unittest/configuration/providers/flaskLaunch.unit.test.ts | 3 --- .../configuration/providers/moduleLaunch.unit.test.ts | 2 -- .../unittest/configuration/providers/pidAttach.unit.test.ts | 1 - .../configuration/providers/pyramidLaunch.unit.test.ts | 3 --- .../configuration/providers/remoteAttach.unit.test.ts | 2 -- 19 files changed, 30 deletions(-) diff --git a/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts b/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts index 20e75f79..3296f4c7 100644 --- a/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts +++ b/src/extension/debugger/configuration/dynamicdebugConfigurationService.ts @@ -27,7 +27,6 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf type: DebuggerTypeName, request: 'launch', program: '${file}', - justMyCode: true, }); const djangoManagePath = await DynamicPythonDebugConfigurationService.getDjangoPath(folder); @@ -39,7 +38,6 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf program: `${workspaceFolderToken}${path.sep}${djangoManagePath}`, args: ['runserver'], django: true, - justMyCode: true, }); } @@ -56,7 +54,6 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf }, args: ['run', '--no-debugger', '--no-reload'], jinja: true, - justMyCode: true, }); } @@ -70,7 +67,6 @@ export class DynamicPythonDebugConfigurationService implements IDynamicDebugConf module: 'uvicorn', args: [`${fastApiPath}:app`, '--reload'], jinja: true, - justMyCode: true, }); } diff --git a/src/extension/debugger/configuration/providers/djangoLaunch.ts b/src/extension/debugger/configuration/providers/djangoLaunch.ts index 0ac89eca..23526e04 100644 --- a/src/extension/debugger/configuration/providers/djangoLaunch.ts +++ b/src/extension/debugger/configuration/providers/djangoLaunch.ts @@ -31,7 +31,6 @@ export async function buildDjangoLaunchDebugConfiguration( program: program || defaultProgram, args: ['runserver'], django: true, - justMyCode: true, }; if (!program) { const selectedProgram = await input.showInputBox({ diff --git a/src/extension/debugger/configuration/providers/fastapiLaunch.ts b/src/extension/debugger/configuration/providers/fastapiLaunch.ts index d45930c3..fe09c044 100644 --- a/src/extension/debugger/configuration/providers/fastapiLaunch.ts +++ b/src/extension/debugger/configuration/providers/fastapiLaunch.ts @@ -27,7 +27,6 @@ export async function buildFastAPILaunchDebugConfiguration( module: 'uvicorn', args: ['main:app', '--reload'], jinja: true, - justMyCode: true, }; if (!application) { diff --git a/src/extension/debugger/configuration/providers/fileLaunch.ts b/src/extension/debugger/configuration/providers/fileLaunch.ts index 9f2f7a0c..07eb9310 100644 --- a/src/extension/debugger/configuration/providers/fileLaunch.ts +++ b/src/extension/debugger/configuration/providers/fileLaunch.ts @@ -21,7 +21,6 @@ export async function buildFileLaunchDebugConfiguration( request: 'launch', program: '${file}', console: 'integratedTerminal', - justMyCode: true, }; sendTelemetryEvent(EventName.DEBUGGER_CONFIGURATION_PROMPTS, undefined, { configurationType: DebugConfigurationType.launchFastAPI, diff --git a/src/extension/debugger/configuration/providers/fileLaunchWithArgs.ts b/src/extension/debugger/configuration/providers/fileLaunchWithArgs.ts index a09c8e9a..52b83d3c 100644 --- a/src/extension/debugger/configuration/providers/fileLaunchWithArgs.ts +++ b/src/extension/debugger/configuration/providers/fileLaunchWithArgs.ts @@ -22,7 +22,6 @@ export async function buildFileWithArgsLaunchDebugConfiguration( program: '${file}', console: 'integratedTerminal', args: '${command:pickArgs}', - justMyCode: true, }; sendTelemetryEvent(EventName.DEBUGGER_CONFIGURATION_PROMPTS, undefined, { configurationType: DebugConfigurationType.launchFileWithArgs, diff --git a/src/extension/debugger/configuration/providers/flaskLaunch.ts b/src/extension/debugger/configuration/providers/flaskLaunch.ts index b1336fc2..85363d13 100644 --- a/src/extension/debugger/configuration/providers/flaskLaunch.ts +++ b/src/extension/debugger/configuration/providers/flaskLaunch.ts @@ -32,7 +32,6 @@ export async function buildFlaskLaunchDebugConfiguration( }, args: ['run', '--no-debugger', '--no-reload'], jinja: true, - justMyCode: true, }; if (!application) { diff --git a/src/extension/debugger/configuration/providers/moduleLaunch.ts b/src/extension/debugger/configuration/providers/moduleLaunch.ts index 5ebd803a..447ea7b4 100644 --- a/src/extension/debugger/configuration/providers/moduleLaunch.ts +++ b/src/extension/debugger/configuration/providers/moduleLaunch.ts @@ -21,7 +21,6 @@ export async function buildModuleLaunchConfiguration( type: DebuggerTypeName, request: 'launch', module: DebugConfigStrings.module.snippet.default, - justMyCode: true, }; const selectedModule = await input.showInputBox({ title: DebugConfigStrings.module.enterModule.title, diff --git a/src/extension/debugger/configuration/providers/pidAttach.ts b/src/extension/debugger/configuration/providers/pidAttach.ts index 67e4c44c..0b7ecc84 100644 --- a/src/extension/debugger/configuration/providers/pidAttach.ts +++ b/src/extension/debugger/configuration/providers/pidAttach.ts @@ -20,7 +20,6 @@ export async function buildPidAttachConfiguration( type: DebuggerTypeName, request: 'attach', processId: '${command:pickProcess}', - justMyCode: true, }; sendTelemetryEvent(EventName.DEBUGGER_CONFIGURATION_PROMPTS, undefined, { configurationType: DebugConfigurationType.pidAttach, diff --git a/src/extension/debugger/configuration/providers/pyramidLaunch.ts b/src/extension/debugger/configuration/providers/pyramidLaunch.ts index f3edc3a9..22e420ca 100644 --- a/src/extension/debugger/configuration/providers/pyramidLaunch.ts +++ b/src/extension/debugger/configuration/providers/pyramidLaunch.ts @@ -33,7 +33,6 @@ export async function buildPyramidLaunchConfiguration( args: [iniPath || defaultIni], pyramid: true, jinja: true, - justMyCode: true, }; if (!iniPath) { diff --git a/src/extension/debugger/configuration/providers/remoteAttach.ts b/src/extension/debugger/configuration/providers/remoteAttach.ts index 1681d5cc..2c142309 100644 --- a/src/extension/debugger/configuration/providers/remoteAttach.ts +++ b/src/extension/debugger/configuration/providers/remoteAttach.ts @@ -33,7 +33,6 @@ export async function buildRemoteAttachConfiguration( remoteRoot: '.', }, ], - justMyCode: true, }; const connect = config.connect!; diff --git a/src/test/unittest/configuration/providers/djangoLaunch.unit.test.ts b/src/test/unittest/configuration/providers/djangoLaunch.unit.test.ts index 9d09d08f..17df9f5d 100644 --- a/src/test/unittest/configuration/providers/djangoLaunch.unit.test.ts +++ b/src/test/unittest/configuration/providers/djangoLaunch.unit.test.ts @@ -109,7 +109,6 @@ suite('Debugging - Configuration Provider Django', () => { program: 'hello', args: ['runserver'], django: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -130,7 +129,6 @@ suite('Debugging - Configuration Provider Django', () => { program: defaultProgram, args: ['runserver'], django: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/fastapiLaunch.unit.test.ts b/src/test/unittest/configuration/providers/fastapiLaunch.unit.test.ts index 771da783..0667345a 100644 --- a/src/test/unittest/configuration/providers/fastapiLaunch.unit.test.ts +++ b/src/test/unittest/configuration/providers/fastapiLaunch.unit.test.ts @@ -55,7 +55,6 @@ suite('Debugging - Configuration Provider FastAPI', () => { module: 'uvicorn', args: ['main:app', '--reload'], jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -75,7 +74,6 @@ suite('Debugging - Configuration Provider FastAPI', () => { module: 'uvicorn', args: ['main:app', '--reload'], jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/fileLaunch.unit.test.ts b/src/test/unittest/configuration/providers/fileLaunch.unit.test.ts index eb8f4e93..a585f281 100644 --- a/src/test/unittest/configuration/providers/fileLaunch.unit.test.ts +++ b/src/test/unittest/configuration/providers/fileLaunch.unit.test.ts @@ -25,7 +25,6 @@ suite('Debugging - Configuration Provider File', () => { request: 'launch', program: '${file}', console: 'integratedTerminal', - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test.ts b/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test.ts index f0e295e6..30e0b590 100644 --- a/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test.ts +++ b/src/test/unittest/configuration/providers/fileLaunchWithArgs.unit.test.ts @@ -29,7 +29,6 @@ suite('Debugging - Configuration Provider File with Arguments', () => { program: '${file}', console: 'integratedTerminal', args: '${command:pickArgs}', - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/flaskLaunch.unit.test.ts b/src/test/unittest/configuration/providers/flaskLaunch.unit.test.ts index 3ffcb819..1bb28ade 100644 --- a/src/test/unittest/configuration/providers/flaskLaunch.unit.test.ts +++ b/src/test/unittest/configuration/providers/flaskLaunch.unit.test.ts @@ -58,7 +58,6 @@ suite('Debugging - Configuration Provider Flask', () => { }, args: ['run', '--no-debugger', '--no-reload'], jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -82,7 +81,6 @@ suite('Debugging - Configuration Provider Flask', () => { }, args: ['run', '--no-debugger', '--no-reload'], jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -105,7 +103,6 @@ suite('Debugging - Configuration Provider Flask', () => { }, args: ['run', '--no-debugger', '--no-reload'], jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/moduleLaunch.unit.test.ts b/src/test/unittest/configuration/providers/moduleLaunch.unit.test.ts index 2e68f6de..d1db6c72 100644 --- a/src/test/unittest/configuration/providers/moduleLaunch.unit.test.ts +++ b/src/test/unittest/configuration/providers/moduleLaunch.unit.test.ts @@ -28,7 +28,6 @@ suite('Debugging - Configuration Provider Module', () => { type: DebuggerTypeName, request: 'launch', module: DebugConfigStrings.module.snippet.default, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -47,7 +46,6 @@ suite('Debugging - Configuration Provider Module', () => { type: DebuggerTypeName, request: 'launch', module: 'hello', - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/pidAttach.unit.test.ts b/src/test/unittest/configuration/providers/pidAttach.unit.test.ts index 382a0b29..6c51f8a7 100644 --- a/src/test/unittest/configuration/providers/pidAttach.unit.test.ts +++ b/src/test/unittest/configuration/providers/pidAttach.unit.test.ts @@ -24,7 +24,6 @@ suite('Debugging - Configuration Provider File', () => { type: DebuggerTypeName, request: 'attach', processId: '${command:pickProcess}', - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/pyramidLaunch.unit.test.ts b/src/test/unittest/configuration/providers/pyramidLaunch.unit.test.ts index aa229ddb..5489b624 100644 --- a/src/test/unittest/configuration/providers/pyramidLaunch.unit.test.ts +++ b/src/test/unittest/configuration/providers/pyramidLaunch.unit.test.ts @@ -110,7 +110,6 @@ suite('Debugging - Configuration Provider Pyramid', () => { args: ['${workspaceFolder}-development.ini'], pyramid: true, jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -131,7 +130,6 @@ suite('Debugging - Configuration Provider Pyramid', () => { args: ['hello'], pyramid: true, jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -155,7 +153,6 @@ suite('Debugging - Configuration Provider Pyramid', () => { args: [defaultIni], pyramid: true, jinja: true, - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); diff --git a/src/test/unittest/configuration/providers/remoteAttach.unit.test.ts b/src/test/unittest/configuration/providers/remoteAttach.unit.test.ts index d7b80009..85fd7408 100644 --- a/src/test/unittest/configuration/providers/remoteAttach.unit.test.ts +++ b/src/test/unittest/configuration/providers/remoteAttach.unit.test.ts @@ -87,7 +87,6 @@ suite('Debugging - Configuration Provider Remote Attach', () => { remoteRoot: '.', }, ], - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); @@ -121,7 +120,6 @@ suite('Debugging - Configuration Provider Remote Attach', () => { remoteRoot: '.', }, ], - justMyCode: true, }; expect(state.config).to.be.deep.equal(config); From 422bec707baf8f0de82eced5fc1c9922bc3801ce Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Wed, 27 Sep 2023 16:51:24 -0700 Subject: [PATCH 07/31] Fix error in workspace (#101) * Fix error in workspace * fix test and lint * Fix format --- src/extension/debugger/configuration/resolvers/attach.ts | 5 ++++- src/extension/debugger/configuration/resolvers/launch.ts | 5 ++++- .../unittest/configuration/resolvers/attach.unit.test.ts | 6 ++++-- .../unittest/configuration/resolvers/launch.unit.test.ts | 6 ++++-- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/extension/debugger/configuration/resolvers/attach.ts b/src/extension/debugger/configuration/resolvers/attach.ts index 115e4627..12fffe8f 100644 --- a/src/extension/debugger/configuration/resolvers/attach.ts +++ b/src/extension/debugger/configuration/resolvers/attach.ts @@ -43,7 +43,10 @@ export class AttachConfigurationResolver extends BaseConfigurationResolver('debugJustMyCode', true); + debugConfiguration.justMyCode = getConfiguration('debugpy', workspaceFolder).get( + 'debugJustMyCode', + true, + ); } debugConfiguration.showReturnValue = debugConfiguration.showReturnValue !== false; // Pass workspace folder so we can get this when we get debug events firing. diff --git a/src/extension/debugger/configuration/resolvers/launch.ts b/src/extension/debugger/configuration/resolvers/launch.ts index d2521087..5230637b 100644 --- a/src/extension/debugger/configuration/resolvers/launch.ts +++ b/src/extension/debugger/configuration/resolvers/launch.ts @@ -103,7 +103,10 @@ export class LaunchConfigurationResolver extends BaseConfigurationResolver('debugJustMyCode', true); + debugConfiguration.justMyCode = getConfiguration('debugpy', workspaceFolder).get( + 'debugJustMyCode', + true, + ); } // Pass workspace folder so we can get this when we get debug events firing. debugConfiguration.workspaceFolder = workspaceFolder ? workspaceFolder.fsPath : undefined; diff --git a/src/test/unittest/configuration/resolvers/attach.unit.test.ts b/src/test/unittest/configuration/resolvers/attach.unit.test.ts index 97241da1..9fe63d2f 100644 --- a/src/test/unittest/configuration/resolvers/attach.unit.test.ts +++ b/src/test/unittest/configuration/resolvers/attach.unit.test.ts @@ -53,7 +53,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { getWorkspaceFoldersStub = sinon.stub(vscodeapi, 'getWorkspaceFolders'); getOSTypeStub.returns(osType); getConfigurationStub = sinon.stub(vscodeapi, 'getConfiguration'); - getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(true)); + getConfigurationStub.withArgs('debugpy', sinon.match.any).returns(createMoqConfiguration(true)); }); teardown(() => { @@ -554,7 +554,9 @@ getInfoPerOS().forEach(([osName, osType, path]) => { .slice() .concat(DebugOptions.Jinja, DebugOptions.Sudo) as DebugOptions[]; - getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(testParams.justMyCodeSetting)); + getConfigurationStub + .withArgs('debugpy', sinon.match.any) + .returns(createMoqConfiguration(testParams.justMyCodeSetting)); const debugConfig = await resolveDebugConfiguration(workspaceFolder, { ...attach, debugOptions, diff --git a/src/test/unittest/configuration/resolvers/launch.unit.test.ts b/src/test/unittest/configuration/resolvers/launch.unit.test.ts index 200cccbf..b2dd2e1a 100644 --- a/src/test/unittest/configuration/resolvers/launch.unit.test.ts +++ b/src/test/unittest/configuration/resolvers/launch.unit.test.ts @@ -51,7 +51,7 @@ getInfoPerOS().forEach(([osName, osType, path]) => { getEnvFileStub = sinon.stub(settings, 'getEnvFile'); getDebugEnvironmentVariablesStub = sinon.stub(helper, 'getDebugEnvironmentVariables'); getConfigurationStub = sinon.stub(vscodeapi, 'getConfiguration'); - getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(true)); + getConfigurationStub.withArgs('debugpy', sinon.match.any).returns(createMoqConfiguration(true)); }); teardown(() => { @@ -792,7 +792,9 @@ getInfoPerOS().forEach(([osName, osType, path]) => { const pythonFile = 'xyz.py'; setupIoc(pythonPath); setupActiveEditor(pythonFile, PYTHON_LANGUAGE); - getConfigurationStub.withArgs('debugpy').returns(createMoqConfiguration(testParams.justMyCodeSetting)); + getConfigurationStub + .withArgs('debugpy', sinon.match.any) + .returns(createMoqConfiguration(testParams.justMyCodeSetting)); const debugConfig = await resolveDebugConfiguration(workspaceFolder, { ...launch, justMyCode: testParams.justMyCode, From 7815c67e46770d0d1d3894e7fbd4d3a1d24c7c68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 14:50:12 -0700 Subject: [PATCH 08/31] Bump mheap/github-action-required-labels from 3 to 5 (#23) Bumps [mheap/github-action-required-labels](https://github.com/mheap/github-action-required-labels) from 3 to 5. - [Release notes](https://github.com/mheap/github-action-required-labels/releases) - [Commits](https://github.com/mheap/github-action-required-labels/compare/v3...v5) --- updated-dependencies: - dependency-name: mheap/github-action-required-labels dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/pr-labels.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-labels.yml b/.github/workflows/pr-labels.yml index 8353173e..b667bb9c 100644 --- a/.github/workflows/pr-labels.yml +++ b/.github/workflows/pr-labels.yml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-latest steps: - name: 'PR impact specified' - uses: mheap/github-action-required-labels@v3 + uses: mheap/github-action-required-labels@v5 with: mode: exactly count: 1 From 5a5d700b19ef23b4ef8441b5f0decdb8b5f49c27 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 14:58:56 -0700 Subject: [PATCH 09/31] Bump @typescript-eslint/parser from 5.59.11 to 5.62.0 (#61) Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.59.11 to 5.62.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.62.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 143 +++++++++++++++++++++++++++++++++++++++++----- package.json | 2 +- 2 files changed, 131 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index bf24e8a2..57fa27ee 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32,7 +32,7 @@ "@types/sinon": "^10.0.13", "@types/vscode": "^1.78.0", "@typescript-eslint/eslint-plugin": "^5.31.0", - "@typescript-eslint/parser": "^5.31.0", + "@typescript-eslint/parser": "^5.62.0", "@vscode/test-electron": "^2.1.5", "@vscode/vsce": "^2.19.0", "chai": "^4.3.7", @@ -709,14 +709,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.59.11", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.11.tgz", - "integrity": "sha512-s9ZF3M+Nym6CAZEkJJeO2TFHHDsKAM3ecNkLuH4i4s8/RCPnF5JRip2GyviYkeEAcwGMJxkqG9h2dAsnA1nZpA==", + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.59.11", - "@typescript-eslint/types": "5.59.11", - "@typescript-eslint/typescript-estree": "5.59.11", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", "debug": "^4.3.4" }, "engines": { @@ -735,6 +735,80 @@ } } }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, "node_modules/@typescript-eslint/scope-manager": { "version": "5.59.11", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.11.tgz", @@ -7174,15 +7248,58 @@ } }, "@typescript-eslint/parser": { - "version": "5.59.11", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.11.tgz", - "integrity": "sha512-s9ZF3M+Nym6CAZEkJJeO2TFHHDsKAM3ecNkLuH4i4s8/RCPnF5JRip2GyviYkeEAcwGMJxkqG9h2dAsnA1nZpA==", + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.59.11", - "@typescript-eslint/types": "5.59.11", - "@typescript-eslint/typescript-estree": "5.59.11", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", "debug": "^4.3.4" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + } + }, + "@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + } + } } }, "@typescript-eslint/scope-manager": { diff --git a/package.json b/package.json index 87a7a181..ab23de74 100644 --- a/package.json +++ b/package.json @@ -473,7 +473,7 @@ "@types/sinon": "^10.0.13", "@types/vscode": "^1.78.0", "@typescript-eslint/eslint-plugin": "^5.31.0", - "@typescript-eslint/parser": "^5.31.0", + "@typescript-eslint/parser": "^5.62.0", "@vscode/test-electron": "^2.1.5", "@vscode/vsce": "^2.19.0", "chai": "^4.3.7", From 546cd93732eba91c1e2162b5f1716841c1d018da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Oct 2023 15:10:49 -0700 Subject: [PATCH 10/31] Bump typescript from 5.1.3 to 5.2.2 (#79) Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.1.3 to 5.2.2. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.1.3...v5.2.2) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 57fa27ee..39282b83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "ts-loader": "^9.3.1", "ts-mockito": "^2.6.1", "typemoq": "^2.1.0", - "typescript": "^5.1.3", + "typescript": "^5.2.2", "vscode-test": "^1.6.1", "webpack": "^5.87.0", "webpack-cli": "^5.1.4" @@ -6129,9 +6129,9 @@ } }, "node_modules/typescript": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.3.tgz", - "integrity": "sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -11404,9 +11404,9 @@ } }, "typescript": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.3.tgz", - "integrity": "sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true }, "uc.micro": { diff --git a/package.json b/package.json index ab23de74..fac0d172 100644 --- a/package.json +++ b/package.json @@ -488,7 +488,7 @@ "ts-loader": "^9.3.1", "ts-mockito": "^2.6.1", "typemoq": "^2.1.0", - "typescript": "^5.1.3", + "typescript": "^5.2.2", "vscode-test": "^1.6.1", "webpack": "^5.87.0", "webpack-cli": "^5.1.4" From df90d4397b0c8b827c0bd293e15f3804ec3420b2 Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Wed, 4 Oct 2023 14:48:45 -0700 Subject: [PATCH 11/31] Update npm packages (#105) * update package.json * Fux lint --- package-lock.json | 1091 +++++++++++------ package.json | 6 +- .../updaterServerHelper.unit.test.ts | 14 +- 3 files changed, 722 insertions(+), 389 deletions(-) diff --git a/package-lock.json b/package-lock.json index 39282b83..50213aa5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "2023.3.0-dev", "license": "MIT", "dependencies": { - "@vscode/extension-telemetry": "^0.7.7", + "@vscode/extension-telemetry": "^0.8.5", "fs-extra": "^11.1.0", "iconv-lite": "^0.6.3", "inversify": "^6.0.1", @@ -37,10 +37,10 @@ "@vscode/vsce": "^2.19.0", "chai": "^4.3.7", "chai-as-promised": "^7.1.1", - "eslint": "^8.20.0", + "eslint": "^8.50.0", "glob": "^8.0.3", "mocha": "^10.0.0", - "prettier": "^2.7.1", + "prettier": "^3.0.3", "rewiremock": "^3.13.0", "semver": "^7.5.4", "sinon": "^15.0.2", @@ -56,6 +56,15 @@ "vscode": "^1.78.0" } }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@azure/abort-controller": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.1.0.tgz", @@ -68,31 +77,33 @@ } }, "node_modules/@azure/core-auth": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.4.0.tgz", - "integrity": "sha512-HFrcTgmuSuukRf/EdPmqBrc5l6Q5Uu+2TbuhaKbgaCpP2TfAeiNaQPAadxO+CYBRHGUzIDteMAjFspFLDLnKVQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.5.0.tgz", + "integrity": "sha512-udzoBuYG1VBoHVohDTrvKjyzel34zt77Bhp7dQntVGGD0ehVq48owENbBG8fIgkHRNUBQH5k1r0hpoMu5L8+kw==", "dependencies": { "@azure/abort-controller": "^1.0.0", + "@azure/core-util": "^1.1.0", "tslib": "^2.2.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.0.0" } }, "node_modules/@azure/core-rest-pipeline": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.11.0.tgz", - "integrity": "sha512-nB4KXl6qAyJmBVLWA7SakT4tzpYZTCk4pvRBeI+Ye0WYSOrlTqlMhc4MSS/8atD3ufeYWdkN380LLoXlUUzThw==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.10.1.tgz", + "integrity": "sha512-Kji9k6TOFRDB5ZMTw8qUf2IJ+CeJtsuMdAHox9eqpTf1cefiNMpzrfnF6sINEBZJsaVaWgQ0o48B6kcUH68niA==", "dependencies": { "@azure/abort-controller": "^1.0.0", "@azure/core-auth": "^1.4.0", "@azure/core-tracing": "^1.0.1", - "@azure/core-util": "^1.3.0", + "@azure/core-util": "^1.0.0", "@azure/logger": "^1.0.0", "form-data": "^4.0.0", "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.0", - "tslib": "^2.2.0" + "tslib": "^2.2.0", + "uuid": "^8.3.0" }, "engines": { "node": ">=14.0.0" @@ -131,9 +142,9 @@ } }, "node_modules/@azure/core-util": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.3.2.tgz", - "integrity": "sha512-2bECOUh88RvL1pMZTcc6OzfobBeWDBf5oBbhjIhT1MV9otMVWCzpOJkkiKtrnO88y5GGBelgY8At73KGAdbkeQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.2.0.tgz", + "integrity": "sha512-ffGIw+Qs8bNKNLxz5UPkz4/VBM/EZY07mPve1ZYFqYUdPwFqRj0RPk0U7LZMOfT7GCck9YjuT1Rfp1PApNl1ng==", "dependencies": { "@azure/abort-controller": "^1.0.0", "tslib": "^2.2.0" @@ -153,6 +164,22 @@ "node": ">=14.0.0" } }, + "node_modules/@azure/opentelemetry-instrumentation-azure-sdk": { + "version": "1.0.0-beta.5", + "resolved": "https://registry.npmjs.org/@azure/opentelemetry-instrumentation-azure-sdk/-/opentelemetry-instrumentation-azure-sdk-1.0.0-beta.5.tgz", + "integrity": "sha512-fsUarKQDvjhmBO4nIfaZkfNSApm1hZBzcvpNbSrXdcUBxu7lRvKsV5DnwszX7cnhLyVOW9yl1uigtRQ1yDANjA==", + "dependencies": { + "@azure/core-tracing": "^1.0.0", + "@azure/logger": "^1.0.0", + "@opentelemetry/api": "^1.4.1", + "@opentelemetry/core": "^1.15.2", + "@opentelemetry/instrumentation": "^0.41.2", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@discoveryjs/json-ext": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", @@ -178,23 +205,23 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", + "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz", - "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.2", + "espree": "^9.6.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -210,18 +237,18 @@ } }, "node_modules/@eslint/js": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz", - "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", + "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", - "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -310,56 +337,119 @@ } }, "node_modules/@microsoft/1ds-core-js": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@microsoft/1ds-core-js/-/1ds-core-js-3.2.12.tgz", - "integrity": "sha512-cHpxZZ+pbtOyqFMFB/c1COpaOE3VPFU6phYVHVvOA9DvoeMZfI/Xrxaj7B/vfq4MmkiE7nOAPhv5ZRn+i6OogA==", + "version": "3.2.14", + "resolved": "https://registry.npmjs.org/@microsoft/1ds-core-js/-/1ds-core-js-3.2.14.tgz", + "integrity": "sha512-UW1YrUTPuvXmAarzqVSeYU1vwTzxCCZdd+ANcf/SDkxm53mCCgxSodVP9yrxtGOQdKhE9Y3rZdETRSvBBdKdXg==", "dependencies": { - "@microsoft/applicationinsights-core-js": "2.8.14", + "@microsoft/applicationinsights-core-js": "2.8.16", "@microsoft/applicationinsights-shims": "^2.0.2", "@microsoft/dynamicproto-js": "^1.1.7" } }, "node_modules/@microsoft/1ds-post-js": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@microsoft/1ds-post-js/-/1ds-post-js-3.2.12.tgz", - "integrity": "sha512-vhIVYg4FzBfwtM8tBqDUq3xU+cFu6SQ7biuJHtQpd5PVjDgvAovVOMRF1khsZE/k2rttRRBpmBgNEqG3Ptoysw==", + "version": "3.2.14", + "resolved": "https://registry.npmjs.org/@microsoft/1ds-post-js/-/1ds-post-js-3.2.14.tgz", + "integrity": "sha512-pXTfyW8SI6LS2r92W2Zaxl/YjJCHTEX9ej/GdabtlMAikGGgAlEsMlk5a4SJ3BI3K8sDUSGi+oTmJ1FtVes+bQ==", "dependencies": { - "@microsoft/1ds-core-js": "3.2.12", + "@microsoft/1ds-core-js": "3.2.14", "@microsoft/applicationinsights-shims": "^2.0.2", "@microsoft/dynamicproto-js": "^1.1.7" } }, "node_modules/@microsoft/applicationinsights-channel-js": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.14.tgz", - "integrity": "sha512-z1AG6lqV3ACtdUXnT0Ubj48BAZ8K01sFsYdWgroSXpw2lYUlXAzdx3tK8zpaqEXSEhok8CWTZki7aunHzkZHSw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-3.0.3.tgz", + "integrity": "sha512-CWcJQCMKU3CxWLFIE8iPa3G5KB3v2RFkAvPICfY8/fwWZq4tWY7zosgvRPDZ+dIkz8Z/+CMy0+KblYzIKDdG4A==", "dependencies": { - "@microsoft/applicationinsights-common": "2.8.14", - "@microsoft/applicationinsights-core-js": "2.8.14", - "@microsoft/applicationinsights-shims": "2.0.2", - "@microsoft/dynamicproto-js": "^1.1.9" + "@microsoft/applicationinsights-common": "3.0.3", + "@microsoft/applicationinsights-core-js": "3.0.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + }, + "peerDependencies": { + "tslib": "*" + } + }, + "node_modules/@microsoft/applicationinsights-channel-js/node_modules/@microsoft/applicationinsights-core-js": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.0.3.tgz", + "integrity": "sha512-ymtdPHgUhCwIwQZx2ZN3Xw3cq+Z5KHzGmFV8QvURSdUzfaHbjYcHXIQkEZbgCCGOTMLtx9lZqP7J1gbBy0O8GQ==", + "dependencies": { + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" }, "peerDependencies": { "tslib": "*" } }, + "node_modules/@microsoft/applicationinsights-channel-js/node_modules/@microsoft/applicationinsights-shims": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", + "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, + "node_modules/@microsoft/applicationinsights-channel-js/node_modules/@microsoft/dynamicproto-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-2.0.2.tgz", + "integrity": "sha512-MB8trWaFREpmb037k/d0bB7T2BP7Ai24w1e1tbz3ASLB0/lwphsq3Nq8S9I5AsI5vs4zAQT+SB5nC5/dLYTiOg==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, "node_modules/@microsoft/applicationinsights-common": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.14.tgz", - "integrity": "sha512-1xjJvyyRN7tb5ahOTkEGGsvw8zvqmS714y3+1m7ooKHFfxO0wX+eYOU/kke74BCY0nJ/pocB/6hjWZOgwvbHig==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-common/-/applicationinsights-common-3.0.3.tgz", + "integrity": "sha512-GwnerHHPexry2CMTr6gP2Rjm0e3rgVXZzFCbrxcoOQk8MqrEFDWur6Xs66FwXpGFnY3KV3Zsujkfcl0oePs4Cg==", "dependencies": { - "@microsoft/applicationinsights-core-js": "2.8.14", - "@microsoft/applicationinsights-shims": "2.0.2", - "@microsoft/dynamicproto-js": "^1.1.9" + "@microsoft/applicationinsights-core-js": "3.0.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + }, + "peerDependencies": { + "tslib": "*" + } + }, + "node_modules/@microsoft/applicationinsights-common/node_modules/@microsoft/applicationinsights-core-js": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.0.3.tgz", + "integrity": "sha512-ymtdPHgUhCwIwQZx2ZN3Xw3cq+Z5KHzGmFV8QvURSdUzfaHbjYcHXIQkEZbgCCGOTMLtx9lZqP7J1gbBy0O8GQ==", + "dependencies": { + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" }, "peerDependencies": { "tslib": "*" } }, + "node_modules/@microsoft/applicationinsights-common/node_modules/@microsoft/applicationinsights-shims": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", + "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, + "node_modules/@microsoft/applicationinsights-common/node_modules/@microsoft/dynamicproto-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-2.0.2.tgz", + "integrity": "sha512-MB8trWaFREpmb037k/d0bB7T2BP7Ai24w1e1tbz3ASLB0/lwphsq3Nq8S9I5AsI5vs4zAQT+SB5nC5/dLYTiOg==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, "node_modules/@microsoft/applicationinsights-core-js": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.14.tgz", - "integrity": "sha512-XacWUHdjSHMUwdngMZBp0oiCBifD56CQK2Egu2PiBiF4xu2AO2yNCtWSXsQX2g5OkEhVwaEjfa/aH3WbpYxB1g==", + "version": "2.8.16", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.16.tgz", + "integrity": "sha512-pO5rR6UuiPymiHFj8XxNXhQgBSTvyHWygf+gdEVDh0xpUXYFO99bZe0Ux0D0HqYqVkJrRfXzL1Ocru6+S0x53Q==", "dependencies": { "@microsoft/applicationinsights-shims": "2.0.2", "@microsoft/dynamicproto-js": "^1.1.9" @@ -374,20 +464,52 @@ "integrity": "sha512-PoHEgsnmcqruLNHZ/amACqdJ6YYQpED0KSRe6J7gIJTtpZC1FfFU9b1fmDKDKtFoUSrPzEh1qzO3kmRZP0betg==" }, "node_modules/@microsoft/applicationinsights-web-basic": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-web-basic/-/applicationinsights-web-basic-2.8.14.tgz", - "integrity": "sha512-R2mzg5NmCtLloq3lPQFmnlvjrPIqm3mWNYVy5ELJuOPZ7S6j9y7s4yHOzfXynmOziiQd+0q1j9pTth9aP9vo0g==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-web-basic/-/applicationinsights-web-basic-3.0.3.tgz", + "integrity": "sha512-PCKfbCTJUbcyZnRzasxlYgV3L1ORVxpggRB1Uohx0rNyEyKPwk7lcCcFos11NEA+pn/XqZrZY5FYSdaLT45wNA==", "dependencies": { - "@microsoft/applicationinsights-channel-js": "2.8.14", - "@microsoft/applicationinsights-common": "2.8.14", - "@microsoft/applicationinsights-core-js": "2.8.14", - "@microsoft/applicationinsights-shims": "2.0.2", - "@microsoft/dynamicproto-js": "^1.1.9" + "@microsoft/applicationinsights-channel-js": "3.0.3", + "@microsoft/applicationinsights-common": "3.0.3", + "@microsoft/applicationinsights-core-js": "3.0.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" }, "peerDependencies": { "tslib": "*" } }, + "node_modules/@microsoft/applicationinsights-web-basic/node_modules/@microsoft/applicationinsights-core-js": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.0.3.tgz", + "integrity": "sha512-ymtdPHgUhCwIwQZx2ZN3Xw3cq+Z5KHzGmFV8QvURSdUzfaHbjYcHXIQkEZbgCCGOTMLtx9lZqP7J1gbBy0O8GQ==", + "dependencies": { + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + }, + "peerDependencies": { + "tslib": "*" + } + }, + "node_modules/@microsoft/applicationinsights-web-basic/node_modules/@microsoft/applicationinsights-shims": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", + "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, + "node_modules/@microsoft/applicationinsights-web-basic/node_modules/@microsoft/dynamicproto-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-2.0.2.tgz", + "integrity": "sha512-MB8trWaFREpmb037k/d0bB7T2BP7Ai24w1e1tbz3ASLB0/lwphsq3Nq8S9I5AsI5vs4zAQT+SB5nC5/dLYTiOg==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, "node_modules/@microsoft/applicationinsights-web-snippet": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-web-snippet/-/applicationinsights-web-snippet-1.0.1.tgz", @@ -398,6 +520,19 @@ "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-1.1.9.tgz", "integrity": "sha512-n1VPsljTSkthsAFYdiWfC+DKzK2WwcRp83Y1YAqdX552BstvsDjft9YXppjUzp11BPsapDoO1LDgrDB0XVsfNQ==" }, + "node_modules/@nevware21/ts-async": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@nevware21/ts-async/-/ts-async-0.3.0.tgz", + "integrity": "sha512-ZUcgUH12LN/F6nzN0cYd0F/rJaMLmXr0EHVTyYfaYmK55bdwE4338uue4UiVoRqHVqNW4KDUrJc49iGogHKeWA==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.10.0 < 2.x" + } + }, + "node_modules/@nevware21/ts-utils": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@nevware21/ts-utils/-/ts-utils-0.10.1.tgz", + "integrity": "sha512-pMny25NnF2/MJwdqC3Iyjm2pGIXNxni4AROpcqDeWa+td9JMUY4bUS9uU9XW+BoBRqTLUL+WURF9SOd/6OQzRg==" + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -434,62 +569,80 @@ } }, "node_modules/@opentelemetry/api": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.1.tgz", - "integrity": "sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.6.0.tgz", + "integrity": "sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g==", "engines": { "node": ">=8.0.0" } }, "node_modules/@opentelemetry/core": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.14.0.tgz", - "integrity": "sha512-MnMZ+sxsnlzloeuXL2nm5QcNczt/iO82UOeQQDHhV83F2fP3sgntW2evvtoxJki0MBLxEsh5ADD7PR/Hn5uzjw==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.17.0.tgz", + "integrity": "sha512-tfnl3h+UefCgx1aeN2xtrmr6BmdWGKXypk0pflQR0urFS40aE88trnkOMc2HTJZbMrqEEl4HsaBeFhwLVXsrJg==", "dependencies": { - "@opentelemetry/semantic-conventions": "1.14.0" + "@opentelemetry/semantic-conventions": "1.17.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/api": ">=1.0.0 <1.7.0" + } + }, + "node_modules/@opentelemetry/instrumentation": { + "version": "0.41.2", + "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.41.2.tgz", + "integrity": "sha512-rxU72E0pKNH6ae2w5+xgVYZLzc5mlxAbGzF4shxMVK8YC2QQsfN38B2GPbj0jvrKWWNUElfclQ+YTykkNg/grw==", + "dependencies": { + "@types/shimmer": "^1.0.2", + "import-in-the-middle": "1.4.2", + "require-in-the-middle": "^7.1.1", + "semver": "^7.5.1", + "shimmer": "^1.2.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.3.0" } }, "node_modules/@opentelemetry/resources": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.14.0.tgz", - "integrity": "sha512-qRfWIgBxxl3z47E036Aey0Lj2ZjlFb27Q7Xnj1y1z/P293RXJZGLtcfn/w8JF7v1Q2hs3SDGxz7Wb9Dko1YUQA==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.17.0.tgz", + "integrity": "sha512-+u0ciVnj8lhuL/qGRBPeVYvk7fL+H/vOddfvmOeJaA1KC+5/3UED1c9KoZQlRsNT5Kw1FaK8LkY2NVLYfOVZQw==", "dependencies": { - "@opentelemetry/core": "1.14.0", - "@opentelemetry/semantic-conventions": "1.14.0" + "@opentelemetry/core": "1.17.0", + "@opentelemetry/semantic-conventions": "1.17.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/api": ">=1.0.0 <1.7.0" } }, "node_modules/@opentelemetry/sdk-trace-base": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.14.0.tgz", - "integrity": "sha512-NzRGt3PS+HPKfQYMb6Iy8YYc5OKA73qDwci/6ujOIvyW9vcqBJSWbjZ8FeLEAmuatUB5WrRhEKu9b0sIiIYTrQ==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.17.0.tgz", + "integrity": "sha512-2T5HA1/1iE36Q9eg6D4zYlC4Y4GcycI1J6NsHPKZY9oWfAxWsoYnRlkPfUqyY5XVtocCo/xHpnJvGNHwzT70oQ==", "dependencies": { - "@opentelemetry/core": "1.14.0", - "@opentelemetry/resources": "1.14.0", - "@opentelemetry/semantic-conventions": "1.14.0" + "@opentelemetry/core": "1.17.0", + "@opentelemetry/resources": "1.17.0", + "@opentelemetry/semantic-conventions": "1.17.0" }, "engines": { "node": ">=14" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/api": ">=1.0.0 <1.7.0" } }, "node_modules/@opentelemetry/semantic-conventions": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.14.0.tgz", - "integrity": "sha512-rJfCY8rCWz3cb4KI6pEofnytvMPuj3YLQwoscCCYZ5DkdiPjo15IQ0US7+mjcWy9H3fcZIzf2pbJZ7ck/h4tug==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.17.0.tgz", + "integrity": "sha512-+fguCd2d8d2qruk0H0DsCEy2CTK3t0Tugg7MhZ/UQMvmewbZLNnJ6heSYyzIZWG5IPfAXzoj4f4F/qpM7l4VBA==", "engines": { "node": ">=14" } @@ -653,6 +806,11 @@ "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==", "dev": true }, + "node_modules/@types/shimmer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.0.3.tgz", + "integrity": "sha512-F/IjUGnV6pIN7R4ZV4npHJVoNtaLZWvb+2/9gctxjb99wkpI7Ozg8VPogwDiTRyjLwZXAYxjvdg1KS8LTHKdDA==" + }, "node_modules/@types/sinon": { "version": "10.0.15", "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.15.tgz", @@ -937,14 +1095,14 @@ } }, "node_modules/@vscode/extension-telemetry": { - "version": "0.7.7", - "resolved": "https://registry.npmjs.org/@vscode/extension-telemetry/-/extension-telemetry-0.7.7.tgz", - "integrity": "sha512-uW508BPjkWDBOKvvvSym3ZmGb7kHIiWaAfB/1PHzLz2x9TrC33CfjmFEI+CywIL/jBv4bqZxxjN4tfefB61F+g==", + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@vscode/extension-telemetry/-/extension-telemetry-0.8.5.tgz", + "integrity": "sha512-YFKANBT2F3qdWQstjcr40XX8BLsdKlKM7a7YPi/jNuMjuiPhb1Jn7YsDR3WZaVEzAqeqGy4gzXsFCBbuZ+L1Tg==", "dependencies": { - "@microsoft/1ds-core-js": "^3.2.9", - "@microsoft/1ds-post-js": "^3.2.9", - "@microsoft/applicationinsights-web-basic": "^2.8.11", - "applicationinsights": "2.5.0" + "@microsoft/1ds-core-js": "^3.2.13", + "@microsoft/1ds-post-js": "^3.2.13", + "@microsoft/applicationinsights-web-basic": "^3.0.2", + "applicationinsights": "^2.7.1" }, "engines": { "vscode": "^1.75.0" @@ -1023,9 +1181,9 @@ } }, "node_modules/@vscode/vsce/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, "bin": { "semver": "bin/semver" @@ -1234,10 +1392,9 @@ "dev": true }, "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "dev": true, + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "bin": { "acorn": "bin/acorn" }, @@ -1249,7 +1406,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", - "dev": true, "peerDependencies": { "acorn": "^8" } @@ -1343,21 +1499,23 @@ } }, "node_modules/applicationinsights": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-2.5.0.tgz", - "integrity": "sha512-6kIFmpANRok+6FhCOmO7ZZ/mh7fdNKn17BaT13cg/RV5roLPJlA6q8srWexayHd3MPcwMb9072e8Zp0P47s/pw==", - "dependencies": { - "@azure/core-auth": "^1.4.0", - "@azure/core-rest-pipeline": "^1.10.0", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-2.8.0.tgz", + "integrity": "sha512-pxVOdCPwXTal1A904yGmzOOUJrIeQ89xQir0ifr7fLl+e0BlGrZ1P4StcIDuEXk93gV9CGxGm5Mol8ksPk2mcg==", + "dependencies": { + "@azure/core-auth": "^1.5.0", + "@azure/core-rest-pipeline": "1.10.1", + "@azure/core-util": "1.2.0", + "@azure/opentelemetry-instrumentation-azure-sdk": "^1.0.0-beta.5", "@microsoft/applicationinsights-web-snippet": "^1.0.1", - "@opentelemetry/api": "^1.0.4", - "@opentelemetry/core": "^1.0.1", - "@opentelemetry/sdk-trace-base": "^1.0.1", - "@opentelemetry/semantic-conventions": "^1.0.1", + "@opentelemetry/api": "^1.4.1", + "@opentelemetry/core": "^1.15.2", + "@opentelemetry/sdk-trace-base": "^1.15.2", + "@opentelemetry/semantic-conventions": "^1.15.2", "cls-hooked": "^4.2.2", "continuation-local-storage": "^3.2.1", - "diagnostic-channel": "1.1.0", - "diagnostic-channel-publishers": "1.0.5" + "diagnostic-channel": "1.1.1", + "diagnostic-channel-publishers": "1.0.7" }, "engines": { "node": ">=8.0.0" @@ -1462,9 +1620,9 @@ } }, "node_modules/async-listener/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "bin": { "semver": "bin/semver" } @@ -2078,6 +2236,11 @@ "deprecated": "CircularJSON is in maintenance only, flatted is its successor.", "dev": true }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==" + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -2117,9 +2280,9 @@ } }, "node_modules/cls-hooked/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "bin": { "semver": "bin/semver" } @@ -2420,29 +2583,21 @@ } }, "node_modules/diagnostic-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/diagnostic-channel/-/diagnostic-channel-1.1.0.tgz", - "integrity": "sha512-fwujyMe1gj6rk6dYi9hMZm0c8Mz8NDMVl2LB4iaYh3+LIAThZC8RKFGXWG0IML2OxAit/ZFRgZhMkhQ3d/bobQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/diagnostic-channel/-/diagnostic-channel-1.1.1.tgz", + "integrity": "sha512-r2HV5qFkUICyoaKlBEpLKHjxMXATUf/l+h8UZPGBHGLy4DDiY2sOLcIctax4eRnTw5wH2jTMExLntGPJ8eOJxw==", "dependencies": { - "semver": "^5.3.0" + "semver": "^7.5.3" } }, "node_modules/diagnostic-channel-publishers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-1.0.5.tgz", - "integrity": "sha512-dJwUS0915pkjjimPJVDnS/QQHsH0aOYhnZsLJdnZIMOrB+csj8RnZhWTuwnm8R5v3Z7OZs+ksv5luC14DGB7eg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-1.0.7.tgz", + "integrity": "sha512-SEECbY5AiVt6DfLkhkaHNeshg1CogdLLANA8xlG/TKvS+XUgvIKl7VspJGYiEdL5OUyzMVnr7o0AwB7f+/Mjtg==", "peerDependencies": { "diagnostic-channel": "*" } }, - "node_modules/diagnostic-channel/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, "node_modules/diff": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", @@ -2680,27 +2835,27 @@ } }, "node_modules/eslint": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz", - "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", + "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.42.0", - "@humanwhocodes/config-array": "^0.11.10", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.50.0", + "@humanwhocodes/config-array": "^0.11.11", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.5.2", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -2710,7 +2865,6 @@ "globals": "^13.19.0", "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", @@ -2720,9 +2874,8 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "bin": { @@ -2749,9 +2902,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2822,9 +2975,9 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", - "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -2868,12 +3021,12 @@ } }, "node_modules/espree": { - "version": "9.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", - "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "dependencies": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.4.1" }, @@ -3229,8 +3382,7 @@ "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "node_modules/get-caller-file": { "version": "2.0.5", @@ -3242,9 +3394,9 @@ } }, "node_modules/get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "dev": true, "engines": { "node": "*" @@ -3331,9 +3483,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.22.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz", + "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3386,7 +3538,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "dependencies": { "function-bind": "^1.1.1" }, @@ -3630,6 +3781,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-in-the-middle": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.4.2.tgz", + "integrity": "sha512-9WOz1Yh/cvO/p69sxRmhyQwrIGGSp7EIdcb+fFNVi7CzQGQB8U1/1XrKVSbEd/GNOAeM0peJtmi7+qphe7NvAw==", + "dependencies": { + "acorn": "^8.8.2", + "acorn-import-assertions": "^1.9.0", + "cjs-module-lexer": "^1.2.2", + "module-details-from-path": "^1.0.3" + } + }, "node_modules/import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -3711,7 +3873,6 @@ "version": "2.12.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", - "dev": true, "dependencies": { "has": "^1.0.3" }, @@ -4487,6 +4648,11 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, + "node_modules/module-details-from-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", + "integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==" + }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -4663,17 +4829,17 @@ } }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" }, "engines": { "node": ">= 0.8.0" @@ -4765,9 +4931,9 @@ } }, "node_modules/parse-semver/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, "bin": { "semver": "bin/semver" @@ -4834,8 +5000,7 @@ "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { "version": "1.8.0", @@ -5021,15 +5186,15 @@ } }, "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", + "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", "dev": true, "bin": { - "prettier": "bin-prettier.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10.13.0" + "node": ">=14" }, "funding": { "url": "https://github.com/prettier/prettier?sponsor=1" @@ -5247,11 +5412,23 @@ "node": ">=0.10.0" } }, + "node_modules/require-in-the-middle": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.2.0.tgz", + "integrity": "sha512-3TLx5TGyAY6AOqLBoXmHkNql0HIf2RGbuMgCDT2WO/uGVAPJs6h7Kl+bN6TIZGd9bWhWPwnDnTHGtW8Iu77sdw==", + "dependencies": { + "debug": "^4.1.1", + "module-details-from-path": "^1.0.3", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=8.6.0" + } + }, "node_modules/resolve": { "version": "1.22.2", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", - "dev": true, "dependencies": { "is-core-module": "^2.11.0", "path-parse": "^1.0.7", @@ -5731,7 +5908,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, "engines": { "node": ">= 0.4" }, @@ -6016,9 +6192,9 @@ } }, "node_modules/tslib": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", - "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tsutils": { "version": "3.21.0", @@ -6264,6 +6440,14 @@ "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", @@ -6528,15 +6712,6 @@ "wipe-node-cache": "^2.1.0" } }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/workerpool": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", @@ -6719,6 +6894,12 @@ } }, "dependencies": { + "@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true + }, "@azure/abort-controller": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.1.0.tgz", @@ -6728,28 +6909,30 @@ } }, "@azure/core-auth": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.4.0.tgz", - "integrity": "sha512-HFrcTgmuSuukRf/EdPmqBrc5l6Q5Uu+2TbuhaKbgaCpP2TfAeiNaQPAadxO+CYBRHGUzIDteMAjFspFLDLnKVQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.5.0.tgz", + "integrity": "sha512-udzoBuYG1VBoHVohDTrvKjyzel34zt77Bhp7dQntVGGD0ehVq48owENbBG8fIgkHRNUBQH5k1r0hpoMu5L8+kw==", "requires": { "@azure/abort-controller": "^1.0.0", + "@azure/core-util": "^1.1.0", "tslib": "^2.2.0" } }, "@azure/core-rest-pipeline": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.11.0.tgz", - "integrity": "sha512-nB4KXl6qAyJmBVLWA7SakT4tzpYZTCk4pvRBeI+Ye0WYSOrlTqlMhc4MSS/8atD3ufeYWdkN380LLoXlUUzThw==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.10.1.tgz", + "integrity": "sha512-Kji9k6TOFRDB5ZMTw8qUf2IJ+CeJtsuMdAHox9eqpTf1cefiNMpzrfnF6sINEBZJsaVaWgQ0o48B6kcUH68niA==", "requires": { "@azure/abort-controller": "^1.0.0", "@azure/core-auth": "^1.4.0", "@azure/core-tracing": "^1.0.1", - "@azure/core-util": "^1.3.0", + "@azure/core-util": "^1.0.0", "@azure/logger": "^1.0.0", "form-data": "^4.0.0", "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.0", - "tslib": "^2.2.0" + "tslib": "^2.2.0", + "uuid": "^8.3.0" }, "dependencies": { "@tootallnate/once": { @@ -6778,9 +6961,9 @@ } }, "@azure/core-util": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.3.2.tgz", - "integrity": "sha512-2bECOUh88RvL1pMZTcc6OzfobBeWDBf5oBbhjIhT1MV9otMVWCzpOJkkiKtrnO88y5GGBelgY8At73KGAdbkeQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.2.0.tgz", + "integrity": "sha512-ffGIw+Qs8bNKNLxz5UPkz4/VBM/EZY07mPve1ZYFqYUdPwFqRj0RPk0U7LZMOfT7GCck9YjuT1Rfp1PApNl1ng==", "requires": { "@azure/abort-controller": "^1.0.0", "tslib": "^2.2.0" @@ -6794,6 +6977,19 @@ "tslib": "^2.2.0" } }, + "@azure/opentelemetry-instrumentation-azure-sdk": { + "version": "1.0.0-beta.5", + "resolved": "https://registry.npmjs.org/@azure/opentelemetry-instrumentation-azure-sdk/-/opentelemetry-instrumentation-azure-sdk-1.0.0-beta.5.tgz", + "integrity": "sha512-fsUarKQDvjhmBO4nIfaZkfNSApm1hZBzcvpNbSrXdcUBxu7lRvKsV5DnwszX7cnhLyVOW9yl1uigtRQ1yDANjA==", + "requires": { + "@azure/core-tracing": "^1.0.0", + "@azure/logger": "^1.0.0", + "@opentelemetry/api": "^1.4.1", + "@opentelemetry/core": "^1.15.2", + "@opentelemetry/instrumentation": "^0.41.2", + "tslib": "^2.2.0" + } + }, "@discoveryjs/json-ext": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", @@ -6810,20 +7006,20 @@ } }, "@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", + "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", "dev": true }, "@eslint/eslintrc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz", - "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.2", + "espree": "^9.6.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -6833,15 +7029,15 @@ } }, "@eslint/js": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz", - "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", + "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", "dev": true }, "@humanwhocodes/config-array": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", - "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", @@ -6911,50 +7107,111 @@ } }, "@microsoft/1ds-core-js": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@microsoft/1ds-core-js/-/1ds-core-js-3.2.12.tgz", - "integrity": "sha512-cHpxZZ+pbtOyqFMFB/c1COpaOE3VPFU6phYVHVvOA9DvoeMZfI/Xrxaj7B/vfq4MmkiE7nOAPhv5ZRn+i6OogA==", + "version": "3.2.14", + "resolved": "https://registry.npmjs.org/@microsoft/1ds-core-js/-/1ds-core-js-3.2.14.tgz", + "integrity": "sha512-UW1YrUTPuvXmAarzqVSeYU1vwTzxCCZdd+ANcf/SDkxm53mCCgxSodVP9yrxtGOQdKhE9Y3rZdETRSvBBdKdXg==", "requires": { - "@microsoft/applicationinsights-core-js": "2.8.14", + "@microsoft/applicationinsights-core-js": "2.8.16", "@microsoft/applicationinsights-shims": "^2.0.2", "@microsoft/dynamicproto-js": "^1.1.7" } }, "@microsoft/1ds-post-js": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@microsoft/1ds-post-js/-/1ds-post-js-3.2.12.tgz", - "integrity": "sha512-vhIVYg4FzBfwtM8tBqDUq3xU+cFu6SQ7biuJHtQpd5PVjDgvAovVOMRF1khsZE/k2rttRRBpmBgNEqG3Ptoysw==", + "version": "3.2.14", + "resolved": "https://registry.npmjs.org/@microsoft/1ds-post-js/-/1ds-post-js-3.2.14.tgz", + "integrity": "sha512-pXTfyW8SI6LS2r92W2Zaxl/YjJCHTEX9ej/GdabtlMAikGGgAlEsMlk5a4SJ3BI3K8sDUSGi+oTmJ1FtVes+bQ==", "requires": { - "@microsoft/1ds-core-js": "3.2.12", + "@microsoft/1ds-core-js": "3.2.14", "@microsoft/applicationinsights-shims": "^2.0.2", "@microsoft/dynamicproto-js": "^1.1.7" } }, "@microsoft/applicationinsights-channel-js": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.14.tgz", - "integrity": "sha512-z1AG6lqV3ACtdUXnT0Ubj48BAZ8K01sFsYdWgroSXpw2lYUlXAzdx3tK8zpaqEXSEhok8CWTZki7aunHzkZHSw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-3.0.3.tgz", + "integrity": "sha512-CWcJQCMKU3CxWLFIE8iPa3G5KB3v2RFkAvPICfY8/fwWZq4tWY7zosgvRPDZ+dIkz8Z/+CMy0+KblYzIKDdG4A==", "requires": { - "@microsoft/applicationinsights-common": "2.8.14", - "@microsoft/applicationinsights-core-js": "2.8.14", - "@microsoft/applicationinsights-shims": "2.0.2", - "@microsoft/dynamicproto-js": "^1.1.9" + "@microsoft/applicationinsights-common": "3.0.3", + "@microsoft/applicationinsights-core-js": "3.0.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + }, + "dependencies": { + "@microsoft/applicationinsights-core-js": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.0.3.tgz", + "integrity": "sha512-ymtdPHgUhCwIwQZx2ZN3Xw3cq+Z5KHzGmFV8QvURSdUzfaHbjYcHXIQkEZbgCCGOTMLtx9lZqP7J1gbBy0O8GQ==", + "requires": { + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + } + }, + "@microsoft/applicationinsights-shims": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", + "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "requires": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, + "@microsoft/dynamicproto-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-2.0.2.tgz", + "integrity": "sha512-MB8trWaFREpmb037k/d0bB7T2BP7Ai24w1e1tbz3ASLB0/lwphsq3Nq8S9I5AsI5vs4zAQT+SB5nC5/dLYTiOg==", + "requires": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + } } }, "@microsoft/applicationinsights-common": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.14.tgz", - "integrity": "sha512-1xjJvyyRN7tb5ahOTkEGGsvw8zvqmS714y3+1m7ooKHFfxO0wX+eYOU/kke74BCY0nJ/pocB/6hjWZOgwvbHig==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-common/-/applicationinsights-common-3.0.3.tgz", + "integrity": "sha512-GwnerHHPexry2CMTr6gP2Rjm0e3rgVXZzFCbrxcoOQk8MqrEFDWur6Xs66FwXpGFnY3KV3Zsujkfcl0oePs4Cg==", "requires": { - "@microsoft/applicationinsights-core-js": "2.8.14", - "@microsoft/applicationinsights-shims": "2.0.2", - "@microsoft/dynamicproto-js": "^1.1.9" + "@microsoft/applicationinsights-core-js": "3.0.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + }, + "dependencies": { + "@microsoft/applicationinsights-core-js": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.0.3.tgz", + "integrity": "sha512-ymtdPHgUhCwIwQZx2ZN3Xw3cq+Z5KHzGmFV8QvURSdUzfaHbjYcHXIQkEZbgCCGOTMLtx9lZqP7J1gbBy0O8GQ==", + "requires": { + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + } + }, + "@microsoft/applicationinsights-shims": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", + "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "requires": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, + "@microsoft/dynamicproto-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-2.0.2.tgz", + "integrity": "sha512-MB8trWaFREpmb037k/d0bB7T2BP7Ai24w1e1tbz3ASLB0/lwphsq3Nq8S9I5AsI5vs4zAQT+SB5nC5/dLYTiOg==", + "requires": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + } } }, "@microsoft/applicationinsights-core-js": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.14.tgz", - "integrity": "sha512-XacWUHdjSHMUwdngMZBp0oiCBifD56CQK2Egu2PiBiF4xu2AO2yNCtWSXsQX2g5OkEhVwaEjfa/aH3WbpYxB1g==", + "version": "2.8.16", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.16.tgz", + "integrity": "sha512-pO5rR6UuiPymiHFj8XxNXhQgBSTvyHWygf+gdEVDh0xpUXYFO99bZe0Ux0D0HqYqVkJrRfXzL1Ocru6+S0x53Q==", "requires": { "@microsoft/applicationinsights-shims": "2.0.2", "@microsoft/dynamicproto-js": "^1.1.9" @@ -6966,15 +7223,46 @@ "integrity": "sha512-PoHEgsnmcqruLNHZ/amACqdJ6YYQpED0KSRe6J7gIJTtpZC1FfFU9b1fmDKDKtFoUSrPzEh1qzO3kmRZP0betg==" }, "@microsoft/applicationinsights-web-basic": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-web-basic/-/applicationinsights-web-basic-2.8.14.tgz", - "integrity": "sha512-R2mzg5NmCtLloq3lPQFmnlvjrPIqm3mWNYVy5ELJuOPZ7S6j9y7s4yHOzfXynmOziiQd+0q1j9pTth9aP9vo0g==", - "requires": { - "@microsoft/applicationinsights-channel-js": "2.8.14", - "@microsoft/applicationinsights-common": "2.8.14", - "@microsoft/applicationinsights-core-js": "2.8.14", - "@microsoft/applicationinsights-shims": "2.0.2", - "@microsoft/dynamicproto-js": "^1.1.9" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-web-basic/-/applicationinsights-web-basic-3.0.3.tgz", + "integrity": "sha512-PCKfbCTJUbcyZnRzasxlYgV3L1ORVxpggRB1Uohx0rNyEyKPwk7lcCcFos11NEA+pn/XqZrZY5FYSdaLT45wNA==", + "requires": { + "@microsoft/applicationinsights-channel-js": "3.0.3", + "@microsoft/applicationinsights-common": "3.0.3", + "@microsoft/applicationinsights-core-js": "3.0.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + }, + "dependencies": { + "@microsoft/applicationinsights-core-js": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.0.3.tgz", + "integrity": "sha512-ymtdPHgUhCwIwQZx2ZN3Xw3cq+Z5KHzGmFV8QvURSdUzfaHbjYcHXIQkEZbgCCGOTMLtx9lZqP7J1gbBy0O8GQ==", + "requires": { + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.2", + "@nevware21/ts-async": ">= 0.3.0 < 2.x", + "@nevware21/ts-utils": ">= 0.10.1 < 2.x" + } + }, + "@microsoft/applicationinsights-shims": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", + "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "requires": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, + "@microsoft/dynamicproto-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-2.0.2.tgz", + "integrity": "sha512-MB8trWaFREpmb037k/d0bB7T2BP7Ai24w1e1tbz3ASLB0/lwphsq3Nq8S9I5AsI5vs4zAQT+SB5nC5/dLYTiOg==", + "requires": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + } } }, "@microsoft/applicationinsights-web-snippet": { @@ -6987,6 +7275,19 @@ "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-1.1.9.tgz", "integrity": "sha512-n1VPsljTSkthsAFYdiWfC+DKzK2WwcRp83Y1YAqdX552BstvsDjft9YXppjUzp11BPsapDoO1LDgrDB0XVsfNQ==" }, + "@nevware21/ts-async": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@nevware21/ts-async/-/ts-async-0.3.0.tgz", + "integrity": "sha512-ZUcgUH12LN/F6nzN0cYd0F/rJaMLmXr0EHVTyYfaYmK55bdwE4338uue4UiVoRqHVqNW4KDUrJc49iGogHKeWA==", + "requires": { + "@nevware21/ts-utils": ">= 0.10.0 < 2.x" + } + }, + "@nevware21/ts-utils": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@nevware21/ts-utils/-/ts-utils-0.10.1.tgz", + "integrity": "sha512-pMny25NnF2/MJwdqC3Iyjm2pGIXNxni4AROpcqDeWa+td9JMUY4bUS9uU9XW+BoBRqTLUL+WURF9SOd/6OQzRg==" + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -7014,41 +7315,53 @@ } }, "@opentelemetry/api": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.1.tgz", - "integrity": "sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==" + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.6.0.tgz", + "integrity": "sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g==" }, "@opentelemetry/core": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.14.0.tgz", - "integrity": "sha512-MnMZ+sxsnlzloeuXL2nm5QcNczt/iO82UOeQQDHhV83F2fP3sgntW2evvtoxJki0MBLxEsh5ADD7PR/Hn5uzjw==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.17.0.tgz", + "integrity": "sha512-tfnl3h+UefCgx1aeN2xtrmr6BmdWGKXypk0pflQR0urFS40aE88trnkOMc2HTJZbMrqEEl4HsaBeFhwLVXsrJg==", + "requires": { + "@opentelemetry/semantic-conventions": "1.17.0" + } + }, + "@opentelemetry/instrumentation": { + "version": "0.41.2", + "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.41.2.tgz", + "integrity": "sha512-rxU72E0pKNH6ae2w5+xgVYZLzc5mlxAbGzF4shxMVK8YC2QQsfN38B2GPbj0jvrKWWNUElfclQ+YTykkNg/grw==", "requires": { - "@opentelemetry/semantic-conventions": "1.14.0" + "@types/shimmer": "^1.0.2", + "import-in-the-middle": "1.4.2", + "require-in-the-middle": "^7.1.1", + "semver": "^7.5.1", + "shimmer": "^1.2.1" } }, "@opentelemetry/resources": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.14.0.tgz", - "integrity": "sha512-qRfWIgBxxl3z47E036Aey0Lj2ZjlFb27Q7Xnj1y1z/P293RXJZGLtcfn/w8JF7v1Q2hs3SDGxz7Wb9Dko1YUQA==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.17.0.tgz", + "integrity": "sha512-+u0ciVnj8lhuL/qGRBPeVYvk7fL+H/vOddfvmOeJaA1KC+5/3UED1c9KoZQlRsNT5Kw1FaK8LkY2NVLYfOVZQw==", "requires": { - "@opentelemetry/core": "1.14.0", - "@opentelemetry/semantic-conventions": "1.14.0" + "@opentelemetry/core": "1.17.0", + "@opentelemetry/semantic-conventions": "1.17.0" } }, "@opentelemetry/sdk-trace-base": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.14.0.tgz", - "integrity": "sha512-NzRGt3PS+HPKfQYMb6Iy8YYc5OKA73qDwci/6ujOIvyW9vcqBJSWbjZ8FeLEAmuatUB5WrRhEKu9b0sIiIYTrQ==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.17.0.tgz", + "integrity": "sha512-2T5HA1/1iE36Q9eg6D4zYlC4Y4GcycI1J6NsHPKZY9oWfAxWsoYnRlkPfUqyY5XVtocCo/xHpnJvGNHwzT70oQ==", "requires": { - "@opentelemetry/core": "1.14.0", - "@opentelemetry/resources": "1.14.0", - "@opentelemetry/semantic-conventions": "1.14.0" + "@opentelemetry/core": "1.17.0", + "@opentelemetry/resources": "1.17.0", + "@opentelemetry/semantic-conventions": "1.17.0" } }, "@opentelemetry/semantic-conventions": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.14.0.tgz", - "integrity": "sha512-rJfCY8rCWz3cb4KI6pEofnytvMPuj3YLQwoscCCYZ5DkdiPjo15IQ0US7+mjcWy9H3fcZIzf2pbJZ7ck/h4tug==" + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.17.0.tgz", + "integrity": "sha512-+fguCd2d8d2qruk0H0DsCEy2CTK3t0Tugg7MhZ/UQMvmewbZLNnJ6heSYyzIZWG5IPfAXzoj4f4F/qpM7l4VBA==" }, "@sinonjs/commons": { "version": "3.0.0", @@ -7208,6 +7521,11 @@ "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==", "dev": true }, + "@types/shimmer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.0.3.tgz", + "integrity": "sha512-F/IjUGnV6pIN7R4ZV4npHJVoNtaLZWvb+2/9gctxjb99wkpI7Ozg8VPogwDiTRyjLwZXAYxjvdg1KS8LTHKdDA==" + }, "@types/sinon": { "version": "10.0.15", "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.15.tgz", @@ -7372,14 +7690,14 @@ } }, "@vscode/extension-telemetry": { - "version": "0.7.7", - "resolved": "https://registry.npmjs.org/@vscode/extension-telemetry/-/extension-telemetry-0.7.7.tgz", - "integrity": "sha512-uW508BPjkWDBOKvvvSym3ZmGb7kHIiWaAfB/1PHzLz2x9TrC33CfjmFEI+CywIL/jBv4bqZxxjN4tfefB61F+g==", + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@vscode/extension-telemetry/-/extension-telemetry-0.8.5.tgz", + "integrity": "sha512-YFKANBT2F3qdWQstjcr40XX8BLsdKlKM7a7YPi/jNuMjuiPhb1Jn7YsDR3WZaVEzAqeqGy4gzXsFCBbuZ+L1Tg==", "requires": { - "@microsoft/1ds-core-js": "^3.2.9", - "@microsoft/1ds-post-js": "^3.2.9", - "@microsoft/applicationinsights-web-basic": "^2.8.11", - "applicationinsights": "2.5.0" + "@microsoft/1ds-core-js": "^3.2.13", + "@microsoft/1ds-post-js": "^3.2.13", + "@microsoft/applicationinsights-web-basic": "^3.0.2", + "applicationinsights": "^2.7.1" } }, "@vscode/test-electron": { @@ -7438,9 +7756,9 @@ } }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true } } @@ -7625,16 +7943,14 @@ "dev": true }, "acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "dev": true + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==" }, "acorn-import-assertions": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", - "dev": true, "requires": {} }, "acorn-jsx": { @@ -7703,21 +8019,23 @@ } }, "applicationinsights": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-2.5.0.tgz", - "integrity": "sha512-6kIFmpANRok+6FhCOmO7ZZ/mh7fdNKn17BaT13cg/RV5roLPJlA6q8srWexayHd3MPcwMb9072e8Zp0P47s/pw==", - "requires": { - "@azure/core-auth": "^1.4.0", - "@azure/core-rest-pipeline": "^1.10.0", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/applicationinsights/-/applicationinsights-2.8.0.tgz", + "integrity": "sha512-pxVOdCPwXTal1A904yGmzOOUJrIeQ89xQir0ifr7fLl+e0BlGrZ1P4StcIDuEXk93gV9CGxGm5Mol8ksPk2mcg==", + "requires": { + "@azure/core-auth": "^1.5.0", + "@azure/core-rest-pipeline": "1.10.1", + "@azure/core-util": "1.2.0", + "@azure/opentelemetry-instrumentation-azure-sdk": "^1.0.0-beta.5", "@microsoft/applicationinsights-web-snippet": "^1.0.1", - "@opentelemetry/api": "^1.0.4", - "@opentelemetry/core": "^1.0.1", - "@opentelemetry/sdk-trace-base": "^1.0.1", - "@opentelemetry/semantic-conventions": "^1.0.1", + "@opentelemetry/api": "^1.4.1", + "@opentelemetry/core": "^1.15.2", + "@opentelemetry/sdk-trace-base": "^1.15.2", + "@opentelemetry/semantic-conventions": "^1.15.2", "cls-hooked": "^4.2.2", "continuation-local-storage": "^3.2.1", - "diagnostic-channel": "1.1.0", - "diagnostic-channel-publishers": "1.0.5" + "diagnostic-channel": "1.1.1", + "diagnostic-channel-publishers": "1.0.7" } }, "argparse": { @@ -7803,9 +8121,9 @@ }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==" } } }, @@ -8267,6 +8585,11 @@ "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", "dev": true }, + "cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==" + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -8300,9 +8623,9 @@ }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==" } } }, @@ -8549,24 +8872,17 @@ "optional": true }, "diagnostic-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/diagnostic-channel/-/diagnostic-channel-1.1.0.tgz", - "integrity": "sha512-fwujyMe1gj6rk6dYi9hMZm0c8Mz8NDMVl2LB4iaYh3+LIAThZC8RKFGXWG0IML2OxAit/ZFRgZhMkhQ3d/bobQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/diagnostic-channel/-/diagnostic-channel-1.1.1.tgz", + "integrity": "sha512-r2HV5qFkUICyoaKlBEpLKHjxMXATUf/l+h8UZPGBHGLy4DDiY2sOLcIctax4eRnTw5wH2jTMExLntGPJ8eOJxw==", "requires": { - "semver": "^5.3.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } + "semver": "^7.5.3" } }, "diagnostic-channel-publishers": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-1.0.5.tgz", - "integrity": "sha512-dJwUS0915pkjjimPJVDnS/QQHsH0aOYhnZsLJdnZIMOrB+csj8RnZhWTuwnm8R5v3Z7OZs+ksv5luC14DGB7eg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/diagnostic-channel-publishers/-/diagnostic-channel-publishers-1.0.7.tgz", + "integrity": "sha512-SEECbY5AiVt6DfLkhkaHNeshg1CogdLLANA8xlG/TKvS+XUgvIKl7VspJGYiEdL5OUyzMVnr7o0AwB7f+/Mjtg==", "requires": {} }, "diff": { @@ -8758,27 +9074,27 @@ "dev": true }, "eslint": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz", - "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", + "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.42.0", - "@humanwhocodes/config-array": "^0.11.10", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.50.0", + "@humanwhocodes/config-array": "^0.11.11", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.5.2", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -8788,7 +9104,6 @@ "globals": "^13.19.0", "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", @@ -8798,9 +9113,8 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "dependencies": { @@ -8845,9 +9159,9 @@ "dev": true }, "eslint-scope": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", - "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "requires": { "esrecurse": "^4.3.0", @@ -8888,18 +9202,18 @@ } }, "eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true }, "espree": { - "version": "9.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", - "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "requires": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.4.1" } @@ -9178,8 +9492,7 @@ "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "get-caller-file": { "version": "2.0.5", @@ -9188,9 +9501,9 @@ "dev": true }, "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "dev": true }, "get-intrinsic": { @@ -9261,9 +9574,9 @@ "dev": true }, "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.22.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz", + "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -9304,7 +9617,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -9467,6 +9779,17 @@ "resolve-from": "^4.0.0" } }, + "import-in-the-middle": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.4.2.tgz", + "integrity": "sha512-9WOz1Yh/cvO/p69sxRmhyQwrIGGSp7EIdcb+fFNVi7CzQGQB8U1/1XrKVSbEd/GNOAeM0peJtmi7+qphe7NvAw==", + "requires": { + "acorn": "^8.8.2", + "acorn-import-assertions": "^1.9.0", + "cjs-module-lexer": "^1.2.2", + "module-details-from-path": "^1.0.3" + } + }, "import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -9530,7 +9853,6 @@ "version": "2.12.1", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", - "dev": true, "requires": { "has": "^1.0.3" } @@ -10138,6 +10460,11 @@ } } }, + "module-details-from-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", + "integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A==" + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -10295,17 +10622,17 @@ } }, "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "requires": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" } }, "os-browserify": { @@ -10376,9 +10703,9 @@ }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true } } @@ -10429,8 +10756,7 @@ "path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-to-regexp": { "version": "1.8.0", @@ -10574,9 +10900,9 @@ "dev": true }, "prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", + "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", "dev": true }, "process": { @@ -10751,11 +11077,20 @@ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true }, + "require-in-the-middle": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.2.0.tgz", + "integrity": "sha512-3TLx5TGyAY6AOqLBoXmHkNql0HIf2RGbuMgCDT2WO/uGVAPJs6h7Kl+bN6TIZGd9bWhWPwnDnTHGtW8Iu77sdw==", + "requires": { + "debug": "^4.1.1", + "module-details-from-path": "^1.0.3", + "resolve": "^1.22.1" + } + }, "resolve": { "version": "1.22.2", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", - "dev": true, "requires": { "is-core-module": "^2.11.0", "path-parse": "^1.0.7", @@ -11105,8 +11440,7 @@ "supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, "tapable": { "version": "2.2.1", @@ -11317,9 +11651,9 @@ } }, "tslib": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", - "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "tsutils": { "version": "3.21.0", @@ -11510,6 +11844,11 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, "vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", @@ -11706,12 +12045,6 @@ "wipe-node-cache": "^2.1.0" } }, - "word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true - }, "workerpool": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", diff --git a/package.json b/package.json index fac0d172..36dcd50e 100644 --- a/package.json +++ b/package.json @@ -478,10 +478,10 @@ "@vscode/vsce": "^2.19.0", "chai": "^4.3.7", "chai-as-promised": "^7.1.1", - "eslint": "^8.20.0", + "eslint": "^8.50.0", "glob": "^8.0.3", "mocha": "^10.0.0", - "prettier": "^2.7.1", + "prettier": "^3.0.3", "rewiremock": "^3.13.0", "semver": "^7.5.4", "sinon": "^15.0.2", @@ -494,7 +494,7 @@ "webpack-cli": "^5.1.4" }, "dependencies": { - "@vscode/extension-telemetry": "^0.7.7", + "@vscode/extension-telemetry": "^0.8.5", "fs-extra": "^11.1.0", "iconv-lite": "^0.6.3", "inversify": "^6.0.1", diff --git a/src/test/unittest/configuration/launch.json/updaterServerHelper.unit.test.ts b/src/test/unittest/configuration/launch.json/updaterServerHelper.unit.test.ts index 1681717d..551be79a 100644 --- a/src/test/unittest/configuration/launch.json/updaterServerHelper.unit.test.ts +++ b/src/test/unittest/configuration/launch.json/updaterServerHelper.unit.test.ts @@ -396,7 +396,7 @@ suite('Debugging - launch.json Updater Service', () => { const position = new Position(1, 0); document .setup((doc) => doc.lineAt(1)) - .returns(() => ({ range: new Range(1, 0, 1, 1) } as TextLine)) + .returns(() => ({ range: new Range(1, 0, 1, 1) }) as TextLine) .verifiable(typemoq.Times.atLeastOnce()); document .setup((doc) => doc.getText(typemoq.It.isAny())) @@ -414,7 +414,7 @@ suite('Debugging - launch.json Updater Service', () => { const position = new Position(2, 2); document .setup((doc) => doc.lineAt(2)) - .returns(() => ({ range: new Range(2, 0, 1, 5) } as TextLine)) + .returns(() => ({ range: new Range(2, 0, 1, 5) }) as TextLine) .verifiable(typemoq.Times.atLeastOnce()); document .setup((doc) => doc.getText(typemoq.It.isAny())) @@ -432,7 +432,7 @@ suite('Debugging - launch.json Updater Service', () => { const position = new Position(2, 2); document .setup((doc) => doc.lineAt(2)) - .returns(() => ({ range: new Range(2, 0, 2, 3) } as TextLine)) + .returns(() => ({ range: new Range(2, 0, 2, 3) }) as TextLine) .verifiable(typemoq.Times.atLeastOnce()); document .setup((doc) => doc.getText(typemoq.It.isAny())) @@ -450,11 +450,11 @@ suite('Debugging - launch.json Updater Service', () => { const position = new Position(2, 2); document .setup((doc) => doc.lineAt(1)) - .returns(() => ({ range: new Range(1, 0, 1, 3), text: '}, ' } as TextLine)) + .returns(() => ({ range: new Range(1, 0, 1, 3), text: '}, ' }) as TextLine) .verifiable(typemoq.Times.atLeastOnce()); document .setup((doc) => doc.lineAt(2)) - .returns(() => ({ range: new Range(2, 0, 2, 3), text: ' ' } as TextLine)) + .returns(() => ({ range: new Range(2, 0, 2, 3), text: ' ' }) as TextLine) .verifiable(typemoq.Times.atLeastOnce()); document .setup((doc) => doc.getText(typemoq.It.isAny())) @@ -472,11 +472,11 @@ suite('Debugging - launch.json Updater Service', () => { const position = new Position(2, 2); document .setup((doc) => doc.lineAt(1)) - .returns(() => ({ range: new Range(1, 0, 1, 3), text: '} ' } as TextLine)) + .returns(() => ({ range: new Range(1, 0, 1, 3), text: '} ' }) as TextLine) .verifiable(typemoq.Times.atLeastOnce()); document .setup((doc) => doc.lineAt(2)) - .returns(() => ({ range: new Range(2, 0, 2, 3), text: ' ' } as TextLine)) + .returns(() => ({ range: new Range(2, 0, 2, 3), text: ' ' }) as TextLine) .verifiable(typemoq.Times.atLeastOnce()); document .setup((doc) => doc.getText(typemoq.It.isAny())) From 224bc8fe2f087aeb52d22b0c7fa0944568af82ee Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Tue, 10 Oct 2023 13:20:04 -0700 Subject: [PATCH 12/31] Update to node 18 (#106) --- .github/workflows/pr-check.yml | 2 +- .github/workflows/push-check.yml | 2 +- build/azure-pipeline.pre-release.yml | 2 +- build/azure-pipeline.stable.yml | 2 +- package-lock.json | 14 +++++++------- package.json | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index 816aaa46..0be9cb9e 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -4,7 +4,7 @@ on: pull_request: env: - NODE_VERSION: 16.17.0 + NODE_VERSION: 18.17.1 TEST_RESULTS_DIRECTORY: . # Force a path with spaces and unicode chars to test extension works in these scenarios special-working-directory: './🐍 🐛' diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index 41781277..4f07acde 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -9,7 +9,7 @@ on: - 'release-*' env: - NODE_VERSION: 16.17.0 + NODE_VERSION: 18.17.1 TEST_RESULTS_DIRECTORY: . # Force a path with spaces and unicode chars to test extension works in these scenarios special-working-directory: './🐍 🐛' diff --git a/build/azure-pipeline.pre-release.yml b/build/azure-pipeline.pre-release.yml index e7fd0a73..07051b72 100644 --- a/build/azure-pipeline.pre-release.yml +++ b/build/azure-pipeline.pre-release.yml @@ -31,7 +31,7 @@ extends: buildSteps: - task: NodeTool@0 inputs: - versionSpec: '16.17.1' + versionSpec: '18.17.1' displayName: Select Node version - task: UsePythonVersion@0 diff --git a/build/azure-pipeline.stable.yml b/build/azure-pipeline.stable.yml index b090a887..a162e22b 100644 --- a/build/azure-pipeline.stable.yml +++ b/build/azure-pipeline.stable.yml @@ -28,7 +28,7 @@ extends: buildSteps: - task: NodeTool@0 inputs: - versionSpec: '16.17.1' + versionSpec: '18.17.1' displayName: Select Node version - task: UsePythonVersion@0 diff --git a/package-lock.json b/package-lock.json index 50213aa5..3e219150 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,7 @@ "@types/glob": "^7.2.0", "@types/lodash": "^4.14.191", "@types/mocha": "^10.0.1", - "@types/node": "16.x", + "@types/node": "18.x", "@types/semver": "^7.3.13", "@types/sinon": "^10.0.13", "@types/vscode": "^1.78.0", @@ -795,9 +795,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "16.18.35", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.35.tgz", - "integrity": "sha512-yqU2Rf94HFZqgHf6Tuyc/IqVD0l3U91KjvypSr1GtJKyrnl6L/kfnxVqN4QOwcF5Zx9tO/HKK+fozGr5AtqA+g==", + "version": "18.18.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.3.tgz", + "integrity": "sha512-0OVfGupTl3NBFr8+iXpfZ8NR7jfFO+P1Q+IO/q0wbo02wYkP5gy36phojeYWpLQ6WAMjl+VfmqUk2YbUfp0irA==", "dev": true }, "node_modules/@types/semver": { @@ -7510,9 +7510,9 @@ "dev": true }, "@types/node": { - "version": "16.18.35", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.35.tgz", - "integrity": "sha512-yqU2Rf94HFZqgHf6Tuyc/IqVD0l3U91KjvypSr1GtJKyrnl6L/kfnxVqN4QOwcF5Zx9tO/HKK+fozGr5AtqA+g==", + "version": "18.18.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.3.tgz", + "integrity": "sha512-0OVfGupTl3NBFr8+iXpfZ8NR7jfFO+P1Q+IO/q0wbo02wYkP5gy36phojeYWpLQ6WAMjl+VfmqUk2YbUfp0irA==", "dev": true }, "@types/semver": { diff --git a/package.json b/package.json index 36dcd50e..b560a28e 100644 --- a/package.json +++ b/package.json @@ -468,7 +468,7 @@ "@types/glob": "^7.2.0", "@types/lodash": "^4.14.191", "@types/mocha": "^10.0.1", - "@types/node": "16.x", + "@types/node": "18.x", "@types/semver": "^7.3.13", "@types/sinon": "^10.0.13", "@types/vscode": "^1.78.0", From ec9e135d24056a0a22c5bd162621b848ed927089 Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Wed, 18 Oct 2023 15:01:01 -0700 Subject: [PATCH 13/31] Platform-specific vsix (#89) * Update nox file and pre release * update args * update value * see params * echo vars * fix args * fix args * Fix error obj to string * fix command line error * update args * update how access values * Add args * Send arguments * tried ith arguments * update value * remove args extra * update run * send as env * add to see other values * update env variables * use VSCETARGET * fix variable * Fix macOs error * Fix lint in nox file * Fix nox hash comparison * Fix default value * Remove unnecessary code * Update platform url and debugpy version * Fix dict key name * Remove vsix for all platforms * Fix pr comments * fix download function * fix hash code * Read from json pypypackage * add json file and session that creates it * Reformat nox file * resolve comments * fix lint error * update pipeline * fix build error * dont hardcode the hash --- build/azure-pipeline.pre-release.yml | 38 ++++- debugpy_info.json | 32 ++++ noxfile.py | 218 ++++++++++----------------- 3 files changed, 147 insertions(+), 141 deletions(-) create mode 100644 debugpy_info.json diff --git a/build/azure-pipeline.pre-release.yml b/build/azure-pipeline.pre-release.yml index 07051b72..885ec391 100644 --- a/build/azure-pipeline.pre-release.yml +++ b/build/azure-pipeline.pre-release.yml @@ -28,6 +28,32 @@ extends: template: azure-pipelines/extension/pre-release.yml@templates parameters: l10nSourcePaths: ./src + buildPlatforms: + - name: Linux + packageArch: arm64 + vsceTarget: linux-arm64 + - name: Linux + packageArch: arm + vsceTarget: linux-armhf + - name: Linux + packageArch: x64 + vsceTarget: linux-x64 + - name: MacOS + packageArch: arm64 + vsceTarget: darwin-arm64 + - name: MacOS + packageArch: x64 + vsceTarget: darwin-x64 + - name: Windows + packageArch: arm + vsceTarget: win32-arm64 + - name: Windows + packageArch: ia32 + vsceTarget: win32-ia32 + - name: Windows + packageArch: x64 + vsceTarget: win32-x64 + buildSteps: - task: NodeTool@0 inputs: @@ -47,14 +73,14 @@ extends: - script: python -m pip install -U pip displayName: Upgrade pip - - script: python -m pip install wheel - displayName: Install wheel - - - script: python -m pip install nox - displayName: Install wheel + - script: python -m pip install wheel nox + displayName: Install wheel and nox - - script: python -m nox --session install_old_bundled_libs + # update according packageArch + - script: python -m nox --session install_bundled_libs displayName: Install Python dependencies + env: + VSCETARGET: ${{ variables.VSCETARGET }} - script: python ./build/update_ext_version.py --for-publishing displayName: Update build number diff --git a/debugpy_info.json b/debugpy_info.json new file mode 100644 index 00000000..76266411 --- /dev/null +++ b/debugpy_info.json @@ -0,0 +1,32 @@ +{ + "macOS": { + "url": "https://files.pythonhosted.org/packages/bd/a3/5e37ce13c7dd850b72a52be544a058ed49606ebbbf8b95b2ba3c1db5620a/debugpy-1.7.0-cp311-cp311-macosx_11_0_universal2.whl", + "hash": { + "sha256": "538765a41198aa88cc089295b39c7322dd598f9ef1d52eaae12145c63bf9430a" + } + }, + "win32": { + "url": "https://files.pythonhosted.org/packages/52/59/3591e9f709b7ee4d3a926a8903a395669cd0e0279204a94b6acccf6ed6ee/debugpy-1.7.0-cp311-cp311-win32.whl", + "hash": { + "sha256": "18a69f8e142a716310dd0af6d7db08992aed99e2606108732efde101e7c65e2a" + } + }, + "win64": { + "url": "https://files.pythonhosted.org/packages/51/59/84ebd58d3e9de33a54ca8aa4532e03906e5458092dafe240264c2937a99b/debugpy-1.7.0-cp311-cp311-win_amd64.whl", + "hash": { + "sha256": "7515a5ba5ee9bfe956685909c5f28734c1cecd4ee813523363acfe3ca824883a" + } + }, + "linux": { + "url": "https://files.pythonhosted.org/packages/b4/fc/087324d46dab8e21e084ce2cf670fa7e524ab5e7691692438e4987bd3ecb/debugpy-1.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", + "hash": { + "sha256": "c7e8cf91f8f3f9b5fad844dd88427b85d398bda1e2a0cd65d5a21312fcbc0c6f" + } + }, + "any": { + "url": "https://files.pythonhosted.org/packages/39/2f/c8a8cfac6c7fa3d9e163a6bf46e6d27d027b7a1331028e99a6ef7fd3699d/debugpy-1.7.0-py2.py3-none-any.whl", + "hash": { + "sha256": "f6de2e6f24f62969e0f0ef682d78c98161c4dca29e9fb05df4d2989005005502" + } + } +} \ No newline at end of file diff --git a/noxfile.py b/noxfile.py index 8fea5507..80bcfa92 100644 --- a/noxfile.py +++ b/noxfile.py @@ -1,6 +1,7 @@ # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. """All the action we need during build""" +import hashlib import io import json import os @@ -12,26 +13,6 @@ import nox # pylint: disable=import-error -def _install_bundle(session: nox.Session, version="latest") -> None: - session.install( - "-t", - "./bundled/libs", - "--no-cache-dir", - "--implementation", - "py", - "--no-deps", - "--upgrade", - "-r", - "./requirements.txt", - ) - session.install("packaging") - _install_package(f"{os.getcwd()}/bundled/libs", "debugpy", "1.7.0") - - -def _update_pip_packages(session: nox.Session) -> None: - session.run("pip-compile", "--generate-hashes", "--upgrade", "./requirements.in") - - @nox.session() def lint(session: nox.Session) -> None: """Runs linter and formatter checks on python files.""" @@ -58,88 +39,80 @@ def tests(session: nox.Session) -> None: session.run("npm", "run", "test") -def _get_package_data(package): - json_uri = f"https://registry.npmjs.org/{package}" - with url_lib.urlopen(json_uri) as response: - return json.loads(response.read()) - - -def _update_npm_packages(session: nox.Session) -> None: - pinned = { - "vscode-languageclient", - "@types/vscode", - "@types/node", - } - package_json_path = pathlib.Path(__file__).parent / "package.json" - package_json = json.loads(package_json_path.read_text(encoding="utf-8")) - - for package in package_json["dependencies"]: - if package not in pinned: - data = _get_package_data(package) - latest = "^" + data["dist-tags"]["latest"] - package_json["dependencies"][package] = latest - - for package in package_json["devDependencies"]: - if package not in pinned: - data = _get_package_data(package) - latest = "^" + data["dist-tags"]["latest"] - package_json["devDependencies"][package] = latest - - # Ensure engine matches the package - if ( - package_json["engines"]["vscode"] - != package_json["devDependencies"]["@types/vscode"] - ): - print( - "Please check VS Code engine version and @types/vscode version in package.json." - ) - - new_package_json = json.dumps(package_json, indent=4) - # JSON dumps uses \n for line ending on all platforms by default - if not new_package_json.endswith("\n"): - new_package_json += "\n" - package_json_path.write_text(new_package_json, encoding="utf-8") - - session.run("npm", "audit", "fix", external=True) - session.run("npm", "install", external=True) - - -def _setup_template_environment(session: nox.Session) -> None: - session.install("wheel", "pip-tools") - _update_pip_packages(session) - _install_bundle(session) - - -@nox.session(python="3.7") +@nox.session() def install_bundled_libs(session): """Installs the libraries that will be bundled with the extension.""" session.install("wheel") - _install_bundle(session) + session.install( + "-t", + "./bundled/libs", + "--no-cache-dir", + "--implementation", + "py", + "--no-deps", + "--require-hashes", + "--only-binary", + ":all:", + "-r", + "./requirements.txt", + ) + session.install("packaging") + debugpy_info_json_path = pathlib.Path(__file__).parent / "debugpy_info.json" + debugpy_info = json.loads(debugpy_info_json_path.read_text(encoding="utf-8")) + + target = os.environ.get("VSCETARGET", "") + print("target:", target) + if "darwin" in target: + download_url(debugpy_info["macOS"]) + elif "win32-ia32" == target: + download_url(debugpy_info["win32"]) + elif "win32-x64" == target: + download_url(debugpy_info["win64"]) + elif "linux-x64" == target: + download_url(debugpy_info["linux"]) + else: + download_url(debugpy_info["any"]) -@nox.session(python="3.6") -def install_old_bundled_libs(session): - """Installs the libraries that will be bundled with the extension.""" - session.install("wheel") - _install_bundle(session, "1.5.1") +def download_url(value): + with url_lib.urlopen(value["url"]) as response: + data = response.read() + hash_algorithm, hash_value = [ + (key, value) for key, value in value["hash"].items() + ][0] + if hashlib.new(hash_algorithm, data).hexdigest() != hash_value: + raise ValueError("Failed hash verification for {}.".format(value["url"])) -@nox.session(python="3.7") -def setup(session: nox.Session) -> None: - """Sets up the extension for development.""" - _setup_template_environment(session) + print("Download: ", value["url"]) + with zipfile.ZipFile(io.BytesIO(data), "r") as wheel: + libs_dir = pathlib.Path.cwd() / "bundled" / "libs" + for zip_info in wheel.infolist(): + print("\t" + zip_info.filename) + wheel.extract(zip_info.filename, libs_dir) @nox.session() -def update_packages(session: nox.Session) -> None: - """Update pip and npm packages.""" - session.install("wheel", "pip-tools") - _update_pip_packages(session) - _update_npm_packages(session) +def update_build_number(session: nox.Session) -> None: + """Updates build number for the extension.""" + if not len(session.posargs): + session.log("No updates to package version") + return + + package_json_path = pathlib.Path(__file__).parent / "package.json" + session.log(f"Reading package.json at: {package_json_path}") + + package_json = json.loads(package_json_path.read_text(encoding="utf-8")) + + parts = re.split(r"\.|-", package_json["version"]) + major, minor = parts[:2] + version = f"{major}.{minor}.{session.posargs[0]}" + version = version if len(parts) == 3 else f"{version}-{''.join(parts[3:])}" -def _contains(s, parts=()): - return any(p for p in parts if p in s) + session.log(f"Updating version from {package_json['version']} to {version}") + package_json["version"] = version + package_json_path.write_text(json.dumps(package_json, indent=4), encoding="utf-8") def _get_pypi_package_data(package_name): @@ -150,59 +123,34 @@ def _get_pypi_package_data(package_name): return json.loads(response.read()) -def _get_urls(data, version): - return list( - r["url"] for r in data["releases"][version] if _contains(r["url"], ("cp37",)) - ) - - -def _download_and_extract(root, url): - if "manylinux" in url or "macosx" in url or "win_amd64" in url: - root = os.getcwd() if root is None or root == "." else root - print(url) - with url_lib.urlopen(url) as response: - data = response.read() - with zipfile.ZipFile(io.BytesIO(data), "r") as wheel: - for zip_info in wheel.infolist(): - # Ignore dist info since we are merging multiple wheels - if ".dist-info/" in zip_info.filename: - continue - print("\t" + zip_info.filename) - wheel.extract(zip_info.filename, root) - - -def _install_package(root, package_name, version="latest"): +def _get_debugpy_info(version="latest", platform="none-any", cp="cp311"): from packaging.version import parse as version_parser - data = _get_pypi_package_data(package_name) + data = _get_pypi_package_data("debugpy") if version == "latest": use_version = max(data["releases"].keys(), key=version_parser) else: use_version = version - for url in _get_urls(data, use_version): - _download_and_extract(root, url) + return list( + {"url": r["url"], "hash": {"sha256": r["digests"]["sha256"]}} + for r in data["releases"][use_version] + if f"{cp}-{platform}" in r["url"] or f"py3-{platform}" in r["url"] + )[0] @nox.session() -def update_build_number(session: nox.Session) -> None: - """Updates build number for the extension.""" - if len(session.posargs) == 0: - session.log("No updates to package version") - return - - package_json_path = pathlib.Path(__file__).parent / "package.json" - session.log(f"Reading package.json at: {package_json_path}") - - package_json = json.loads(package_json_path.read_text(encoding="utf-8")) - - parts = re.split("\\.|-", package_json["version"]) - major, minor = parts[:2] - - version = f"{major}.{minor}.{session.posargs[0]}" - version = version if len(parts) == 3 else f"{version}-{''.join(parts[3:])}" - - session.log(f"Updating version from {package_json['version']} to {version}") - package_json["version"] = version - package_json_path.write_text(json.dumps(package_json, indent=4), encoding="utf-8") +def create_debugpy_json(session: nox.Session, version="1.7.0", cp="cp311"): + platforms = [ + ("macOS", "macosx"), + ("win32", "win32"), + ("win64", "win_amd64"), + ("linux", "manylinux"), + ("any", "none-any"), + ] + debugpy_info_json_path = pathlib.Path(__file__).parent / "debugpy_info.json" + debugpy_info = {p: _get_debugpy_info(version, id, cp) for p, id in platforms} + debugpy_info_json_path.write_text( + json.dumps(debugpy_info, indent=4), encoding="utf-8" + ) From 616f92e8bf91993c89a8d4663a13760ec7f0000b Mon Sep 17 00:00:00 2001 From: Logan Ramos Date: Fri, 20 Oct 2023 11:09:27 -0700 Subject: [PATCH 14/31] Fix GDPR comments (#113) --- src/extension/telemetry/index.ts | 40 ++++++++++++++++---------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/extension/telemetry/index.ts b/src/extension/telemetry/index.ts index d187f89a..f289b8d5 100644 --- a/src/extension/telemetry/index.ts +++ b/src/extension/telemetry/index.ts @@ -265,7 +265,7 @@ export interface IEventNamePropertyMapping { /* __GDPR__ "debug.success_activation" : { "codeloadingtime" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, -\ "errorname" : { "classification": "CallstackOrException", "purpose": "PerformanceAndHealth", "owner": "paulacamargo25" }, + "errorname" : { "classification": "CallstackOrException", "purpose": "PerformanceAndHealth", "owner": "paulacamargo25" } } */ [EventName.DEBUG_SUCCESS_ACTIVATION]: {}; @@ -573,26 +573,26 @@ export interface IEventNamePropertyMapping { } */ [EventName.DEBUGGER_ATTACH_TO_CHILD_PROCESS]: never | undefined; - // /** - // * Telemetry event sent when attaching to a local process. - // */ - // /* __GDPR__ - // "debugger.attach_to_local_process" : { "owner": "paulacamargo25" } - // */ + /** + * Telemetry event sent when attaching to a local process. + */ + /* __GDPR__ + "debugger.attach_to_local_process" : { "owner": "paulacamargo25" } + */ [EventName.DEBUGGER_ATTACH_TO_LOCAL_PROCESS]: never | undefined; - // /** - // * Telemetry sent after building configuration for debugger - // */ - // /* __GDPR__ - // "debugger.configuration.prompts" : { - // "configurationtype" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, - // "autodetecteddjangomanagepypath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, - // "autodetectedpyramidinipath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, - // "autodetectedfastapimainpypath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, - // "autodetectedflaskapppypath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, - // "manuallyenteredavalue" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" } - // } - // */ + /** + * Telemetry sent after building configuration for debugger + */ + /* __GDPR__ + "debugger.configuration.prompts" : { + "configurationtype" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, + "autodetecteddjangomanagepypath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, + "autodetectedpyramidinipath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, + "autodetectedfastapimainpypath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, + "autodetectedflaskapppypath" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" }, + "manuallyenteredavalue" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "paulacamargo25" } + } + */ [EventName.DEBUGGER_CONFIGURATION_PROMPTS]: { /** From 72efd8eaff0053f779ec17c6413f64d659f59d20 Mon Sep 17 00:00:00 2001 From: paulacamargo25 Date: Mon, 23 Oct 2023 16:52:40 -0700 Subject: [PATCH 15/31] Update readme (#111) * Update readme * Update README.md Co-authored-by: Luciana Abud <45497113+luabud@users.noreply.github.com> --------- Co-authored-by: Luciana Abud <45497113+luabud@users.noreply.github.com> --- README.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/README.md b/README.md index c4555200..4a67350f 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,18 @@ Note: - The Python extension offers the python debugger extension as an optional installation, including it during the setup process. - This extension is supported for all [actively supported versions](https://devguide.python.org/#status-of-python-branches) of the Python language (i.e., Python >= 3.7). + +## Purpose + +The main intent of this extension is to offer: + +1. **Independence and Compatibility:** The Python Debugger extension aims to separate the debugging functionality from the main Python extension to prevent compatibility issues. This ensures that even as the Python extension drops support for older Python versions (e.g., Python 3.7), you can continue debugging projects with those versions without downgrading your Python extension. This allows you to access new features and bug fixes while keeping your debugging capabilities intact. + +2. **Platform-Specific Builds:** Unlike the main Python extension, which bundles all debugpy builds for various platforms into a single extension package, the Python Debugger extension provides a more streamlined approach: it delivers platform-specific builds, ensuring you only receive the components relevant to your specific operating system. This reduces download times and unnecessary overhead. + +3. **Feature Parity and Ongoing Updates:** This extension replicates all the functionality available in the main Python extension, and more. Going forward, any new debugger features will be added to this extension. In the future, the Python extension will no longer offer debugging support on its own, and we will transition all debugging support to this extension for all debugging functionality. + + ## Usage Once installed in Visual Studio Code, python-debugger will be automatically activated when you open a Python file. From 3a55036dcec08b38c929e8e9b8a78ddffe15316b Mon Sep 17 00:00:00 2001 From: Don Jayamanne Date: Fri, 27 Oct 2023 08:09:13 +1100 Subject: [PATCH 16/31] Remove build folder from bundled vsix (#120) --- .vscodeignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.vscodeignore b/.vscodeignore index 715f9162..cb1e5cf4 100644 --- a/.vscodeignore +++ b/.vscodeignore @@ -1,5 +1,6 @@ .vscode/** .vscode-test/** +build/** out/** node_modules/** src/** @@ -20,4 +21,4 @@ noxfile.py .pytest_cache/** .pylintrc **/requirements.txt -**/requirements.in \ No newline at end of file +**/requirements.in From 0203bc82017763f12a9db08f4adcf94d5e7687d5 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Fri, 28 Jul 2023 13:07:13 -0700 Subject: [PATCH 17/31] Update debugpy version --- noxfile.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/noxfile.py b/noxfile.py index 80bcfa92..32459a4c 100644 --- a/noxfile.py +++ b/noxfile.py @@ -13,6 +13,26 @@ import nox # pylint: disable=import-error +def _install_bundle(session: nox.Session) -> None: + session.install( + "-t", + "./bundled/libs", + "--no-cache-dir", + "--implementation", + "py", + "--no-deps", + "--upgrade", + "-r", + "./requirements.txt", + ) + session.install("packaging") + _install_package(f"{os.getcwd()}/bundled/libs", "debugpy", "1.5.1") + + +def _update_pip_packages(session: nox.Session) -> None: + session.run("pip-compile", "--generate-hashes", "--upgrade", "./requirements.in") + + @nox.session() def lint(session: nox.Session) -> None: """Runs linter and formatter checks on python files.""" From 92d65afe5e1f48f77e7ef1ede7736235c54adf40 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Fri, 28 Jul 2023 14:23:54 -0700 Subject: [PATCH 18/31] Update nox and pipelines --- noxfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/noxfile.py b/noxfile.py index 32459a4c..3b0497a4 100644 --- a/noxfile.py +++ b/noxfile.py @@ -13,7 +13,7 @@ import nox # pylint: disable=import-error -def _install_bundle(session: nox.Session) -> None: +def _install_bundle(session: nox.Session, version="latest") -> None: session.install( "-t", "./bundled/libs", @@ -26,7 +26,7 @@ def _install_bundle(session: nox.Session) -> None: "./requirements.txt", ) session.install("packaging") - _install_package(f"{os.getcwd()}/bundled/libs", "debugpy", "1.5.1") + _install_package(f"{os.getcwd()}/bundled/libs", "debugpy", version) def _update_pip_packages(session: nox.Session) -> None: From 08cae803955ccfe8bdd1c22cc1d2a26f2b38e289 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Wed, 1 Nov 2023 14:23:18 -0700 Subject: [PATCH 19/31] update json file --- debugpy_info.json | 20 ++++++++++---------- noxfile.py | 4 +++- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/debugpy_info.json b/debugpy_info.json index 76266411..810de854 100644 --- a/debugpy_info.json +++ b/debugpy_info.json @@ -1,32 +1,32 @@ { "macOS": { - "url": "https://files.pythonhosted.org/packages/bd/a3/5e37ce13c7dd850b72a52be544a058ed49606ebbbf8b95b2ba3c1db5620a/debugpy-1.7.0-cp311-cp311-macosx_11_0_universal2.whl", + "url": "https://files.pythonhosted.org/packages/2a/ca/832a3448e66b70a08af6a15c2ac981affa8b83a3b158c8f63b68007f4e4b/debugpy-1.5.1-cp39-cp39-macosx_10_15_x86_64.whl", "hash": { - "sha256": "538765a41198aa88cc089295b39c7322dd598f9ef1d52eaae12145c63bf9430a" + "sha256": "01e98c594b3e66d529e40edf314f849cd1a21f7a013298df58cd8e263bf8e184" } }, "win32": { - "url": "https://files.pythonhosted.org/packages/52/59/3591e9f709b7ee4d3a926a8903a395669cd0e0279204a94b6acccf6ed6ee/debugpy-1.7.0-cp311-cp311-win32.whl", + "url": "https://files.pythonhosted.org/packages/0e/b8/dc0acbf110d036badc8687a37d59e5212e4dffb294ca6ad863acee15e8b4/debugpy-1.5.1-cp39-cp39-win32.whl", "hash": { - "sha256": "18a69f8e142a716310dd0af6d7db08992aed99e2606108732efde101e7c65e2a" + "sha256": "23df67fc56d59e386c342428a7953c2c06cc226d8525b11319153e96afb65b0c" } }, "win64": { - "url": "https://files.pythonhosted.org/packages/51/59/84ebd58d3e9de33a54ca8aa4532e03906e5458092dafe240264c2937a99b/debugpy-1.7.0-cp311-cp311-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/d2/33/658e00eb31baeeeb9aaed8f21d5ccf10af5d745991aed5701826d4f84e67/debugpy-1.5.1-cp39-cp39-win_amd64.whl", "hash": { - "sha256": "7515a5ba5ee9bfe956685909c5f28734c1cecd4ee813523363acfe3ca824883a" + "sha256": "a2aa64f6d2ca7ded8a7e8a4e7cae3bc71866b09876b7b05cecad231779cb9156" } }, "linux": { - "url": "https://files.pythonhosted.org/packages/b4/fc/087324d46dab8e21e084ce2cf670fa7e524ab5e7691692438e4987bd3ecb/debugpy-1.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", + "url": "https://files.pythonhosted.org/packages/19/8e/a6fd16be6b9cbe5b3e9884a30353a3fc0187be041a0b27bbd32d4010cb05/debugpy-1.5.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", "hash": { - "sha256": "c7e8cf91f8f3f9b5fad844dd88427b85d398bda1e2a0cd65d5a21312fcbc0c6f" + "sha256": "f73988422b17f071ad3c4383551ace1ba5ed810cbab5f9c362783d22d40a08dc" } }, "any": { - "url": "https://files.pythonhosted.org/packages/39/2f/c8a8cfac6c7fa3d9e163a6bf46e6d27d027b7a1331028e99a6ef7fd3699d/debugpy-1.7.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/39/01/aa7092efdfef184e9a213327c6916b7a1d697d08a5ae216907907da3526d/debugpy-1.5.1-py2.py3-none-any.whl", "hash": { - "sha256": "f6de2e6f24f62969e0f0ef682d78c98161c4dca29e9fb05df4d2989005005502" + "sha256": "194f95dd3e84568b5489aab5689a3a2c044e8fdc06f1890b8b4f70b6b89f2778" } } } \ No newline at end of file diff --git a/noxfile.py b/noxfile.py index 3b0497a4..3ae8d334 100644 --- a/noxfile.py +++ b/noxfile.py @@ -160,7 +160,9 @@ def _get_debugpy_info(version="latest", platform="none-any", cp="cp311"): )[0] -@nox.session() +@nox.session +@nox.parametrize("version", ["1.5.1", "1.7.0", "latest"]) +@nox.parametrize("cp", ["cp39", "cp311"]) def create_debugpy_json(session: nox.Session, version="1.7.0", cp="cp311"): platforms = [ ("macOS", "macosx"), From 8ddd17dfc7eac746e57d0dc571a9c4bdc2afed6d Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Wed, 1 Nov 2023 14:37:08 -0700 Subject: [PATCH 20/31] fix actions --- .github/actions/build-vsix/action.yml | 2 +- .github/actions/lint/action.yml | 2 +- .github/workflows/pr-check.yml | 2 +- .github/workflows/push-check.yml | 2 +- build/azure-pipeline.stable.yml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/actions/build-vsix/action.yml b/.github/actions/build-vsix/action.yml index d6a35794..3e0030b4 100644 --- a/.github/actions/build-vsix/action.yml +++ b/.github/actions/build-vsix/action.yml @@ -39,7 +39,7 @@ runs: shell: bash - name: Install bundled python libraries - run: pipx run nox --session install_old_bundled_libs + run: pipx run nox --session install_bundled_libs shell: bash # Use the GITHUB_RUN_ID environment variable to update the build number. diff --git a/.github/actions/lint/action.yml b/.github/actions/lint/action.yml index 5bf96897..4de73005 100644 --- a/.github/actions/lint/action.yml +++ b/.github/actions/lint/action.yml @@ -47,7 +47,7 @@ runs: # This will install libraries to a target directory. - name: Install bundled python libraries - run: pipx run nox --session install_old_bundled_libs + run: pipx run nox --session install_bundled_libs shell: bash - name: Check linting and formatting diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index 0be9cb9e..dc9004c0 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -65,7 +65,7 @@ jobs: # This will install libraries to a target directory. - name: Install bundled python libraries - run: pipx run nox --session install_old_bundled_libs + run: pipx run nox --session install_bundled_libs shell: bash - name: Install Node diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index 4f07acde..2cfd7e33 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -70,7 +70,7 @@ jobs: # This will install libraries to a target directory. - name: Install bundled python libraries - run: pipx run nox --session install_old_bundled_libs + run: pipx run nox --session install_bundled_libs shell: bash - name: Install Node diff --git a/build/azure-pipeline.stable.yml b/build/azure-pipeline.stable.yml index a162e22b..dde993e3 100644 --- a/build/azure-pipeline.stable.yml +++ b/build/azure-pipeline.stable.yml @@ -50,7 +50,7 @@ extends: - script: python -m pip install nox displayName: Install wheel - - script: python -m nox --session install_old_bundled_libs + - script: python -m nox --session install_bundled_libs displayName: Install Python dependencies - script: python ./build/update_ext_version.py --release --for-publishing From 1fe20177a59572689c38293cebbbe31d79e408ab Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Wed, 1 Nov 2023 14:53:31 -0700 Subject: [PATCH 21/31] fix 3.6 error --- .github/actions/lint/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/lint/action.yml b/.github/actions/lint/action.yml index 4de73005..17371f65 100644 --- a/.github/actions/lint/action.yml +++ b/.github/actions/lint/action.yml @@ -28,7 +28,7 @@ runs: shell: bash - name: Install Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v3 with: python-version: '3.6' From 1d7f33882c1c5a93148106b3cb5ebf6fa9a90f57 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Wed, 1 Nov 2023 15:27:29 -0700 Subject: [PATCH 22/31] fix error running with 3.6 --- .github/workflows/push-check.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index 2cfd7e33..4716d761 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -18,6 +18,9 @@ env: jobs: build-vsix: name: Create VSIX + # In order to use Python 3.6 here in the test, we can only use up to Ubuntu 20. + # https://github.com/rwth-i6/returnn/issues/1226 + runs-on: ubuntu-20.04 runs-on: ubuntu-latest steps: - name: Checkout @@ -30,7 +33,7 @@ jobs: lint: name: Lint - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 @@ -60,7 +63,7 @@ jobs: # Install bundled libs using 3.6 even though you test it on other versions. - name: Use Python 3.6 - uses: actions/setup-python@v4 + uses: actions/setup-python@v3 with: python-version: '3.6' @@ -86,7 +89,7 @@ jobs: # Now that the bundle is installed to target using python 3.7 # switch back the python we want to test with - name: Use Python ${{ matrix.python }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v3 with: python-version: ${{ matrix.python }} From d1ed3cb63518d1b292c279290fdfe3968b20b1db Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Wed, 1 Nov 2023 15:29:38 -0700 Subject: [PATCH 23/31] fix lint --- .github/workflows/push-check.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index 4716d761..e195825d 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -21,7 +21,6 @@ jobs: # In order to use Python 3.6 here in the test, we can only use up to Ubuntu 20. # https://github.com/rwth-i6/returnn/issues/1226 runs-on: ubuntu-20.04 - runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 @@ -52,7 +51,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, windows-latest] + os: [ubuntu-20.04, windows-latest] python: ['3.6'] steps: From 441b7ce3ddcc40e9504bb96058eb0b7f3e50656e Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Thu, 2 Nov 2023 14:15:44 -0700 Subject: [PATCH 24/31] update python version --- .github/actions/lint/action.yml | 4 ++-- .github/workflows/pr-check.yml | 8 ++++---- .github/workflows/push-check.yml | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/actions/lint/action.yml b/.github/actions/lint/action.yml index 17371f65..c868126d 100644 --- a/.github/actions/lint/action.yml +++ b/.github/actions/lint/action.yml @@ -28,9 +28,9 @@ runs: shell: bash - name: Install Python - uses: actions/setup-python@v3 + uses: actions/setup-python@v4 with: - python-version: '3.6' + python-version: '3.6.7' - name: Pip cache uses: actions/cache@v3 diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index dc9004c0..e4407030 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -45,7 +45,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest] - python: ['3.6'] + python: ['3.6.7'] steps: - name: Checkout @@ -55,9 +55,9 @@ jobs: # Install bundled libs using 3.6 even though you test it on other versions. - name: Use Python 3.6 - uses: actions/setup-python@v4 + uses: actions/setup-python@v3 with: - python-version: '3.6' + python-version: '3.6.7' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel @@ -81,7 +81,7 @@ jobs: # Now that the bundle is installed to target using python 3.7 # switch back the python we want to test with - name: Use Python ${{ matrix.python }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v3 with: python-version: ${{ matrix.python }} diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index e195825d..7e63c8aa 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -52,7 +52,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-20.04, windows-latest] - python: ['3.6'] + python: ['3.6.7'] steps: - name: Checkout @@ -64,7 +64,7 @@ jobs: - name: Use Python 3.6 uses: actions/setup-python@v3 with: - python-version: '3.6' + python-version: '3.6.7' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel From cca748743f7a2de30e4d46b7ec4ed699dec0e758 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Thu, 2 Nov 2023 14:22:40 -0700 Subject: [PATCH 25/31] fix error in lint pipeline --- .github/actions/lint/action.yml | 2 +- .github/workflows/pr-check.yml | 6 +++--- .github/workflows/push-check.yml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/actions/lint/action.yml b/.github/actions/lint/action.yml index c868126d..4de73005 100644 --- a/.github/actions/lint/action.yml +++ b/.github/actions/lint/action.yml @@ -30,7 +30,7 @@ runs: - name: Install Python uses: actions/setup-python@v4 with: - python-version: '3.6.7' + python-version: '3.6' - name: Pip cache uses: actions/cache@v3 diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index e4407030..a5c804ba 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -13,7 +13,7 @@ env: jobs: build-vsix: name: Create VSIX - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 @@ -25,7 +25,7 @@ jobs: lint: name: Lint - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 @@ -57,7 +57,7 @@ jobs: - name: Use Python 3.6 uses: actions/setup-python@v3 with: - python-version: '3.6.7' + python-version: '3.6' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index 7e63c8aa..e195825d 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -52,7 +52,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-20.04, windows-latest] - python: ['3.6.7'] + python: ['3.6'] steps: - name: Checkout @@ -64,7 +64,7 @@ jobs: - name: Use Python 3.6 uses: actions/setup-python@v3 with: - python-version: '3.6.7' + python-version: '3.6' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel From 6bda57e504028d891e25a1873fc368cebc0fa6bc Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Thu, 2 Nov 2023 14:57:30 -0700 Subject: [PATCH 26/31] update pipelines --- .github/actions/lint/action.yml | 2 +- .github/workflows/pr-check.yml | 8 ++++---- .github/workflows/push-check.yml | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/actions/lint/action.yml b/.github/actions/lint/action.yml index 4de73005..d62f07ec 100644 --- a/.github/actions/lint/action.yml +++ b/.github/actions/lint/action.yml @@ -30,7 +30,7 @@ runs: - name: Install Python uses: actions/setup-python@v4 with: - python-version: '3.6' + python-version: '3.7' - name: Pip cache uses: actions/cache@v3 diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index a5c804ba..f8b492aa 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -13,7 +13,7 @@ env: jobs: build-vsix: name: Create VSIX - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 @@ -25,7 +25,7 @@ jobs: lint: name: Lint - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 @@ -45,7 +45,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest] - python: ['3.6.7'] + python: ['3.7'] steps: - name: Checkout @@ -57,7 +57,7 @@ jobs: - name: Use Python 3.6 uses: actions/setup-python@v3 with: - python-version: '3.6' + python-version: '3.7' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index e195825d..92df8375 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -32,7 +32,7 @@ jobs: lint: name: Lint - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 @@ -51,8 +51,8 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-20.04, windows-latest] - python: ['3.6'] + os: [ubuntu-latest, windows-latest] + python: ['3.7'] steps: - name: Checkout From 12eb6eda66de3ec79c7bee85c893b8ad2163f2b9 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Thu, 2 Nov 2023 15:04:38 -0700 Subject: [PATCH 27/31] fix nox file --- .github/workflows/pr-check.yml | 2 +- noxfile.py | 20 -------------------- 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index f8b492aa..77eaf2f7 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -57,7 +57,7 @@ jobs: - name: Use Python 3.6 uses: actions/setup-python@v3 with: - python-version: '3.7' + python-version: '3.6' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel diff --git a/noxfile.py b/noxfile.py index 3ae8d334..4bf8b932 100644 --- a/noxfile.py +++ b/noxfile.py @@ -13,26 +13,6 @@ import nox # pylint: disable=import-error -def _install_bundle(session: nox.Session, version="latest") -> None: - session.install( - "-t", - "./bundled/libs", - "--no-cache-dir", - "--implementation", - "py", - "--no-deps", - "--upgrade", - "-r", - "./requirements.txt", - ) - session.install("packaging") - _install_package(f"{os.getcwd()}/bundled/libs", "debugpy", version) - - -def _update_pip_packages(session: nox.Session) -> None: - session.run("pip-compile", "--generate-hashes", "--upgrade", "./requirements.in") - - @nox.session() def lint(session: nox.Session) -> None: """Runs linter and formatter checks on python files.""" From 4fa43cb95c783f9da20aa6c40112f95e7a9d96ac Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Thu, 2 Nov 2023 15:12:16 -0700 Subject: [PATCH 28/31] fix tests --- .github/workflows/pr-check.yml | 5 ++--- .github/workflows/push-check.yml | 9 +++------ 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index 77eaf2f7..cbd66db4 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -53,11 +53,10 @@ jobs: with: path: ${{ env.special-working-directory-relative }} - # Install bundled libs using 3.6 even though you test it on other versions. - - name: Use Python 3.6 + - name: Use Python 3.7 uses: actions/setup-python@v3 with: - python-version: '3.6' + python-version: '3.7' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index 92df8375..a4f50248 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -18,9 +18,7 @@ env: jobs: build-vsix: name: Create VSIX - # In order to use Python 3.6 here in the test, we can only use up to Ubuntu 20. - # https://github.com/rwth-i6/returnn/issues/1226 - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 @@ -60,11 +58,10 @@ jobs: with: path: ${{ env.special-working-directory-relative }} - # Install bundled libs using 3.6 even though you test it on other versions. - - name: Use Python 3.6 + - name: Use Python 3.7 uses: actions/setup-python@v3 with: - python-version: '3.6' + python-version: '3.7' - name: Update pip, install pipx and install wheel run: python -m pip install -U pip pipx wheel From eac8810e584844f3a028eabf304227cc046b7b79 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Wed, 22 Nov 2023 14:29:57 -0500 Subject: [PATCH 29/31] fix pipeline error --- .github/actions/build-vsix/action.yml | 8 +++--- .github/actions/lint/action.yml | 8 +++--- .github/workflows/pr-check.yml | 12 ++++----- .github/workflows/push-check.yml | 12 ++++----- build/azure-pipeline.stable.yml | 36 +++++++++++++++++++++++---- 5 files changed, 51 insertions(+), 25 deletions(-) diff --git a/.github/actions/build-vsix/action.yml b/.github/actions/build-vsix/action.yml index 3e0030b4..78064a30 100644 --- a/.github/actions/build-vsix/action.yml +++ b/.github/actions/build-vsix/action.yml @@ -30,8 +30,8 @@ runs: ${{ runner.os }}-pip-build-vsix- # For faster/better builds of sdists. - - name: Update pip, install pipx and install wheel - run: python -m pip install -U pip pipx wheel + - name: Update pip, install nox and install wheel + run: python -m pip install -U pip nox wheel shell: bash - name: Run npm ci @@ -39,14 +39,14 @@ runs: shell: bash - name: Install bundled python libraries - run: pipx run nox --session install_bundled_libs + run: python -m nox --session install_bundled_libs shell: bash # Use the GITHUB_RUN_ID environment variable to update the build number. # GITHUB_RUN_ID is a unique number for each run within a repository. # This number does not change if you re-run the workflow run. - name: Update extension build number - run: pipx run nox --session update_build_number -- $GITHUB_RUN_ID + run: python -m nox --session update_build_number -- $GITHUB_RUN_ID shell: bash - name: Build VSIX diff --git a/.github/actions/lint/action.yml b/.github/actions/lint/action.yml index d62f07ec..273a336f 100644 --- a/.github/actions/lint/action.yml +++ b/.github/actions/lint/action.yml @@ -41,15 +41,15 @@ runs: ${{ runner.os }}-pip-lint- # For faster/better builds of sdists. - - name: Update pip, install pipx and install wheel - run: python -m pip install -U pip pipx wheel + - name: Update pip, install nox and install wheel + run: python -m pip install -U pip nox wheel shell: bash # This will install libraries to a target directory. - name: Install bundled python libraries - run: pipx run nox --session install_bundled_libs + run: python -m nox --session install_bundled_libs shell: bash - name: Check linting and formatting - run: pipx run nox --session lint + run: python -m nox --session lint shell: bash diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index cbd66db4..7d0f5296 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -58,13 +58,13 @@ jobs: with: python-version: '3.7' - - name: Update pip, install pipx and install wheel - run: python -m pip install -U pip pipx wheel + - name: Update pip, install nox and install wheel + run: python -m pip install -U pip nox wheel shell: bash # This will install libraries to a target directory. - name: Install bundled python libraries - run: pipx run nox --session install_bundled_libs + run: python -m nox --session install_bundled_libs shell: bash - name: Install Node @@ -85,8 +85,8 @@ jobs: python-version: ${{ matrix.python }} # The new python may not have nox so install it again - - name: Update pip, install pipx and install wheel (again) - run: python -m pip install -U pip pipx wheel + - name: Update pip, install nox and install wheel (again) + run: python -m pip install -U pip nox wheel shell: bash - name: Start xvfb on Linux @@ -97,7 +97,7 @@ jobs: if: ${{ runner.os }} == 'Linux' - name: Run tests - run: pipx run nox --session tests + run: python -m nox --session tests shell: bash env: DISPLAY: ${{ env.DISPLAY }} diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index a4f50248..d69093b6 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -63,13 +63,13 @@ jobs: with: python-version: '3.7' - - name: Update pip, install pipx and install wheel - run: python -m pip install -U pip pipx wheel + - name: Update pip, install nox and install wheel + run: python -m pip install -U pip nox wheel shell: bash # This will install libraries to a target directory. - name: Install bundled python libraries - run: pipx run nox --session install_bundled_libs + run: python -m nox --session install_bundled_libs shell: bash - name: Install Node @@ -90,8 +90,8 @@ jobs: python-version: ${{ matrix.python }} # The new python may not have nox so install it again - - name: Update pip, install pipx and install wheel (again) - run: python -m pip install -U pip pipx wheel + - name: Update pip, install nox and install wheel (again) + run: python -m pip install -U pip nox wheel shell: bash - name: Start xvfb on Linux @@ -102,5 +102,5 @@ jobs: if: ${{ runner.os }} == 'Linux' - name: Run tests - run: pipx run nox --session tests + run: python -m nox --session tests shell: bash diff --git a/build/azure-pipeline.stable.yml b/build/azure-pipeline.stable.yml index dde993e3..c652ee96 100644 --- a/build/azure-pipeline.stable.yml +++ b/build/azure-pipeline.stable.yml @@ -24,6 +24,32 @@ extends: template: azure-pipelines/extension/stable.yml@templates parameters: l10nSourcePaths: ./src + buildPlatforms: + - name: Linux + packageArch: arm64 + vsceTarget: linux-arm64 + - name: Linux + packageArch: arm + vsceTarget: linux-armhf + - name: Linux + packageArch: x64 + vsceTarget: linux-x64 + - name: MacOS + packageArch: arm64 + vsceTarget: darwin-arm64 + - name: MacOS + packageArch: x64 + vsceTarget: darwin-x64 + - name: Windows + packageArch: arm + vsceTarget: win32-arm64 + - name: Windows + packageArch: ia32 + vsceTarget: win32-ia32 + - name: Windows + packageArch: x64 + vsceTarget: win32-x64 + publishExtension: ${{ parameters.publishExtension }} buildSteps: - task: NodeTool@0 @@ -44,14 +70,14 @@ extends: - script: python -m pip install -U pip displayName: Upgrade pip - - script: python -m pip install wheel - displayName: Install wheel - - - script: python -m pip install nox - displayName: Install wheel + - script: python -m pip install wheel nox + displayName: Install wheel and nox + # update according packageArch - script: python -m nox --session install_bundled_libs displayName: Install Python dependencies + env: + VSCETARGET: ${{ variables.VSCETARGET }} - script: python ./build/update_ext_version.py --release --for-publishing displayName: Update build number From 6d05e53853b35f5f24c10aac28f792dbd343238d Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Wed, 22 Nov 2023 14:38:18 -0500 Subject: [PATCH 30/31] fix lint --- build/azure-pipeline.stable.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/azure-pipeline.stable.yml b/build/azure-pipeline.stable.yml index c652ee96..6b4f191c 100644 --- a/build/azure-pipeline.stable.yml +++ b/build/azure-pipeline.stable.yml @@ -49,7 +49,7 @@ extends: - name: Windows packageArch: x64 vsceTarget: win32-x64 - + publishExtension: ${{ parameters.publishExtension }} buildSteps: - task: NodeTool@0 From bfb007b035410d6f9ac51a2cdb83632145c722d5 Mon Sep 17 00:00:00 2001 From: Paula Camargo Date: Thu, 23 Nov 2023 14:59:58 -0500 Subject: [PATCH 31/31] use python 3.6 --- .github/actions/build-vsix/action.yml | 5 ++--- .github/actions/lint/action.yml | 2 +- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/issue-labels.yml | 2 +- .github/workflows/pr-check.yml | 14 +++++++------- .github/workflows/pr-labels.yml | 2 +- .github/workflows/push-check.yml | 14 +++++++------- package.json | 2 +- 8 files changed, 21 insertions(+), 22 deletions(-) diff --git a/.github/actions/build-vsix/action.yml b/.github/actions/build-vsix/action.yml index 78064a30..caaef161 100644 --- a/.github/actions/build-vsix/action.yml +++ b/.github/actions/build-vsix/action.yml @@ -15,11 +15,10 @@ runs: node-version: ${{ inputs.node_version }} cache: 'npm' - # Minimum supported version is Python 3.7 - - name: Use Python 3.7 + - name: Use Python 3.6 uses: actions/setup-python@v4 with: - python-version: 3.7 + python-version: 3.6 - name: Pip cache uses: actions/cache@v3 diff --git a/.github/actions/lint/action.yml b/.github/actions/lint/action.yml index 273a336f..46e3acb3 100644 --- a/.github/actions/lint/action.yml +++ b/.github/actions/lint/action.yml @@ -30,7 +30,7 @@ runs: - name: Install Python uses: actions/setup-python@v4 with: - python-version: '3.7' + python-version: '3.6' - name: Pip cache uses: actions/cache@v3 diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 5b733004..6191bc99 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -23,7 +23,7 @@ on: jobs: analyze: name: Analyze - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 permissions: actions: read contents: read diff --git a/.github/workflows/issue-labels.yml b/.github/workflows/issue-labels.yml index c8198c5a..38c29aea 100644 --- a/.github/workflows/issue-labels.yml +++ b/.github/workflows/issue-labels.yml @@ -11,7 +11,7 @@ jobs: # From https://github.com/marketplace/actions/github-script#apply-a-label-to-an-issue. add-triage-label: name: "Add 'triage-needed'" - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - uses: actions/github-script@v6 with: diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml index 7d0f5296..f36ca5ae 100644 --- a/.github/workflows/pr-check.yml +++ b/.github/workflows/pr-check.yml @@ -13,7 +13,7 @@ env: jobs: build-vsix: name: Create VSIX - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 @@ -25,7 +25,7 @@ jobs: lint: name: Lint - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 @@ -44,8 +44,8 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, windows-latest] - python: ['3.7'] + os: [ubuntu-20.04, windows-latest] + python: ['3.6'] steps: - name: Checkout @@ -53,10 +53,10 @@ jobs: with: path: ${{ env.special-working-directory-relative }} - - name: Use Python 3.7 + - name: Use Python 3.6 uses: actions/setup-python@v3 with: - python-version: '3.7' + python-version: '3.6' - name: Update pip, install nox and install wheel run: python -m pip install -U pip nox wheel @@ -77,7 +77,7 @@ jobs: - name: Install dependencies (npm ci) run: npm ci - # Now that the bundle is installed to target using python 3.7 + # Now that the bundle is installed to target using python 3.6 # switch back the python we want to test with - name: Use Python ${{ matrix.python }} uses: actions/setup-python@v3 diff --git a/.github/workflows/pr-labels.yml b/.github/workflows/pr-labels.yml index b667bb9c..2a807b1b 100644 --- a/.github/workflows/pr-labels.yml +++ b/.github/workflows/pr-labels.yml @@ -11,7 +11,7 @@ on: jobs: add-pr-label: name: 'Ensure Required Labels' - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: 'PR impact specified' uses: mheap/github-action-required-labels@v5 diff --git a/.github/workflows/push-check.yml b/.github/workflows/push-check.yml index d69093b6..65916911 100644 --- a/.github/workflows/push-check.yml +++ b/.github/workflows/push-check.yml @@ -18,7 +18,7 @@ env: jobs: build-vsix: name: Create VSIX - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 @@ -30,7 +30,7 @@ jobs: lint: name: Lint - runs-on: ubuntu-latest + runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 @@ -49,8 +49,8 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest, windows-latest] - python: ['3.7'] + os: [ubuntu-20.04, windows-latest] + python: ['3.6'] steps: - name: Checkout @@ -58,10 +58,10 @@ jobs: with: path: ${{ env.special-working-directory-relative }} - - name: Use Python 3.7 + - name: Use Python 3.6 uses: actions/setup-python@v3 with: - python-version: '3.7' + python-version: '3.6' - name: Update pip, install nox and install wheel run: python -m pip install -U pip nox wheel @@ -82,7 +82,7 @@ jobs: - name: Install dependencies (npm ci) run: npm ci - # Now that the bundle is installed to target using python 3.7 + # Now that the bundle is installed to target using python 3.6 # switch back the python we want to test with - name: Use Python ${{ matrix.python }} uses: actions/setup-python@v3 diff --git a/package.json b/package.json index b560a28e..96db16d6 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "debugpy", "displayName": "Python Debugger", "description": "Python Debugger extension using `debugpy`.", - "version": "2023.3.0-dev", + "version": "2023.1.0-dev", "publisher": "ms-python", "enabledApiProposals": [ "portsAttributes"