diff --git a/main.js b/main.js index 41ba2595d..d05f4600d 100644 --- a/main.js +++ b/main.js @@ -19,7 +19,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); const extension = require('./out/src/extension'); async function activate(ctx) { - return await extension.activate(ctx, perfStats); + return await extension.activate(ctx, perfStats, true /*ignoreBundle*/); } async function deactivate(ctx) { diff --git a/package-lock.json b/package-lock.json index 5c077597b..48b9f729b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,6 +18,7 @@ "@microsoft/vscode-azext-azureutils": "^1.0.1", "@microsoft/vscode-azext-utils": "^1.1.0", "@microsoft/vscode-azureresources-api": "^2.0.2", + "buffer": "^6.0.3", "dayjs": "^1.11.3", "dotenv": "^16.0.0", "fs-extra": "^8.1.0", @@ -27,7 +28,7 @@ }, "devDependencies": { "@microsoft/eslint-config-azuretools": "^0.1.0", - "@microsoft/vscode-azext-dev": "^1.0.3", + "@microsoft/vscode-azext-dev": "^1.0.4", "@types/fs-extra": "^8.1.1", "@types/git-url-parse": "^9.0.0", "@types/gulp": "^4.0.6", @@ -922,9 +923,9 @@ "integrity": "sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==" }, "node_modules/@microsoft/vscode-azext-dev": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@microsoft/vscode-azext-dev/-/vscode-azext-dev-1.0.3.tgz", - "integrity": "sha512-McL6T4c63O8VwZDDLjwDYtwjMyrYjvTkkzEpeQXF79PI+lmSZNkn1jc3z1lnzisiF8hJZ4AsN0wwOht/RcDhlA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@microsoft/vscode-azext-dev/-/vscode-azext-dev-1.0.4.tgz", + "integrity": "sha512-84adRC2BjJ+na66bK8zwXqZt9AJ8Y2qkPwR2GJ0a2pZMtxfEw2z7lvjF3Qvicy7ZbDr2Gwmnw61gphkrdtmt/A==", "dev": true, "dependencies": { "@azure/arm-subscriptions": "^2.0.0", @@ -2394,7 +2395,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, "funding": [ { "type": "github", @@ -2471,6 +2471,30 @@ "readable-stream": "^3.4.0" } }, + "node_modules/bl/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/bl/node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -2558,10 +2582,9 @@ } }, "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", "funding": [ { "type": "github", @@ -2578,7 +2601,7 @@ ], "dependencies": { "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "ieee754": "^1.2.1" } }, "node_modules/buffer-crc32": { @@ -6031,7 +6054,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, "funding": [ { "type": "github", @@ -12801,9 +12823,9 @@ } }, "@microsoft/vscode-azext-dev": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@microsoft/vscode-azext-dev/-/vscode-azext-dev-1.0.3.tgz", - "integrity": "sha512-McL6T4c63O8VwZDDLjwDYtwjMyrYjvTkkzEpeQXF79PI+lmSZNkn1jc3z1lnzisiF8hJZ4AsN0wwOht/RcDhlA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@microsoft/vscode-azext-dev/-/vscode-azext-dev-1.0.4.tgz", + "integrity": "sha512-84adRC2BjJ+na66bK8zwXqZt9AJ8Y2qkPwR2GJ0a2pZMtxfEw2z7lvjF3Qvicy7ZbDr2Gwmnw61gphkrdtmt/A==", "dev": true, "requires": { "@azure/arm-subscriptions": "^2.0.0", @@ -13989,8 +14011,7 @@ "base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, "big-integer": { "version": "1.6.51", @@ -14041,6 +14062,16 @@ "readable-stream": "^3.4.0" }, "dependencies": { + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -14114,13 +14145,12 @@ } }, "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", "requires": { "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "ieee754": "^1.2.1" } }, "buffer-crc32": { @@ -16849,8 +16879,7 @@ "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, "ignore": { "version": "5.2.0", diff --git a/package.json b/package.json index 13fbca1a8..e682a102c 100644 --- a/package.json +++ b/package.json @@ -317,7 +317,7 @@ }, "devDependencies": { "@microsoft/eslint-config-azuretools": "^0.1.0", - "@microsoft/vscode-azext-dev": "^1.0.3", + "@microsoft/vscode-azext-dev": "^1.0.4", "@types/fs-extra": "^8.1.1", "@types/git-url-parse": "^9.0.0", "@types/gulp": "^4.0.6", @@ -352,6 +352,7 @@ "@microsoft/vscode-azext-azureutils": "^1.0.1", "@microsoft/vscode-azext-utils": "^1.1.0", "@microsoft/vscode-azureresources-api": "^2.0.2", + "buffer": "^6.0.3", "dayjs": "^1.11.3", "dotenv": "^16.0.0", "fs-extra": "^8.1.0", diff --git a/src/browser/fs-extra.ts b/src/browser/fs-extra.ts new file mode 100644 index 000000000..57b5dc072 --- /dev/null +++ b/src/browser/fs-extra.ts @@ -0,0 +1,7 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +/* eslint-disable */ +export const fse = {}; diff --git a/src/browser/tar.ts b/src/browser/tar.ts new file mode 100644 index 000000000..a4a8efe21 --- /dev/null +++ b/src/browser/tar.ts @@ -0,0 +1,7 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +/* eslint-disable */ +export const tar = {} diff --git a/src/commands/imageSource/buildImageInAzure/UploadSourceCodeStep.ts b/src/commands/imageSource/buildImageInAzure/UploadSourceCodeStep.ts index f1692daca..bf527668a 100644 --- a/src/commands/imageSource/buildImageInAzure/UploadSourceCodeStep.ts +++ b/src/commands/imageSource/buildImageInAzure/UploadSourceCodeStep.ts @@ -4,8 +4,8 @@ *--------------------------------------------------------------------------------------------*/ import { getResourceGroupFromId } from '@microsoft/vscode-azext-azureutils'; import { AzExtFsExtra, AzureWizardExecuteStep, nonNullValue } from '@microsoft/vscode-azext-utils'; -import * as fse from 'fs-extra'; -import * as tar from 'tar'; +import { fse } from '../../../node/fs-extra'; +import { tar } from '../../../node/tar'; import { createContainerRegistryManagementClient } from '../../../utils/azureClients'; import { IBuildImageInAzureContext } from './IBuildImageInAzureContext'; diff --git a/src/node/fs-extra.ts b/src/node/fs-extra.ts new file mode 100644 index 000000000..8790e6041 --- /dev/null +++ b/src/node/fs-extra.ts @@ -0,0 +1,8 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +/* eslint-disable */ +import * as nodeFse from 'fs-extra'; +export const fse = nodeFse; diff --git a/src/node/tar.ts b/src/node/tar.ts new file mode 100644 index 000000000..e25e59068 --- /dev/null +++ b/src/node/tar.ts @@ -0,0 +1,8 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +/* eslint-disable */ +import * as nodeTar from 'tar'; +export const tar = nodeTar; diff --git a/webpack.config.js b/webpack.config.js index 4d30ea9a0..ee1226338 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -12,6 +12,7 @@ const process = require('process'); const dev = require("@microsoft/vscode-azext-dev"); const webpack = require('webpack'); +const path = require('path'); let DEBUG_WEBPACK = !/^(false|0)?$/i.test(process.env.DEBUG_WEBPACK || ''); @@ -32,6 +33,11 @@ let nodeConfig = dev.getDefaultWebpackConfig({ suppressCleanDistFolder: true }); +const nodeSrcPath = path.resolve(__dirname, 'src/node'); + +const alias = {}; +alias[nodeSrcPath] = path.resolve(__dirname, 'src/browser'); + let webConfig = dev.getDefaultWebpackConfig({ projectRoot: __dirname, verbosity: DEBUG_WEBPACK ? 'debug' : 'normal', @@ -46,10 +52,14 @@ let webConfig = dev.getDefaultWebpackConfig({ '../build/default/bufferutil': 'commonjs ../build/default/bufferutil', }, target: 'webworker', + plugins: [new webpack.ProvidePlugin({ + Buffer: ['buffer', 'Buffer'], + })], suppressCleanDistFolder: true, resolveFallbackAliases: { 'constants': false - } + }, + alias }); if (DEBUG_WEBPACK) {