diff --git a/.github/actions/build-vsix/action.yml b/.github/actions/build-vsix/action.yml index eaabe5141e8b..1922f6196ee5 100644 --- a/.github/actions/build-vsix/action.yml +++ b/.github/actions/build-vsix/action.yml @@ -70,8 +70,15 @@ runs: shell: bash - name: Update optional extension dependencies - run: npm run addExtensionPackDependencies + run: | + if [[ "${VSIX_NAME}" == *"insiders"* ]]; then + npm run addExtensionPackDependenciesPreRelease + else + npm run addExtensionPackDependencies + fi shell: bash + env: + VSIX_NAME: ${{ inputs.vsix_name }} - name: Build Webpack run: | diff --git a/build/azure-pipeline.pre-release.yml b/build/azure-pipeline.pre-release.yml index ab087673f1e7..82c991189a82 100644 --- a/build/azure-pipeline.pre-release.yml +++ b/build/azure-pipeline.pre-release.yml @@ -91,7 +91,7 @@ extends: - script: python ./build/update_package_file.py displayName: Update telemetry in package.json - - script: npm run addExtensionPackDependencies + - script: npm run addExtensionPackDependenciesPreRelease displayName: Update optional extension dependencies - script: npx gulp prePublishBundle diff --git a/gulpfile.js b/gulpfile.js index 0b919f16572a..3a03332c4f5c 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -93,16 +93,23 @@ gulp.task('addExtensionPackDependencies', async () => { await addExtensionPackDependencies(); }); -async function addExtensionPackDependencies() { +// This task adds 'ms-python.vscode-python-envs' as required deps only for pre-release builds. +gulp.task('addExtensionPackDependenciesPreRelease', async () => { + await buildLicense(); + await addExtensionPackDependencies(true); +}); + +async function addExtensionPackDependencies(isPreRelease = false) { // Update the package.json to add extension pack dependencies at build time so that // extension dependencies need not be installed during development const packageJsonContents = await fsExtra.readFile('package.json', 'utf-8'); const packageJson = JSON.parse(packageJsonContents); - packageJson.extensionPack = [ - 'ms-python.vscode-pylance', - 'ms-python.debugpy', - 'ms-python.vscode-python-envs', - ].concat(packageJson.extensionPack ? packageJson.extensionPack : []); + let deps = ['ms-python.vscode-pylance', 'ms-python.debugpy']; + if (isPreRelease) { + deps.push('ms-python.vscode-python-envs'); + } + packageJson.extensionPack = deps.concat(packageJson.extensionPack ? packageJson.extensionPack : []); + // Remove potential duplicates. packageJson.extensionPack = packageJson.extensionPack.filter( (item, index) => packageJson.extensionPack.indexOf(item) === index, diff --git a/package.json b/package.json index 47cb84c49fbd..6d76ded9febc 100644 --- a/package.json +++ b/package.json @@ -1671,6 +1671,7 @@ "format-fix": "prettier --write 'src/**/*.ts' 'build/**/*.js' '.github/**/*.yml' gulpfile.js", "clean": "gulp clean", "addExtensionPackDependencies": "gulp addExtensionPackDependencies", + "addExtensionPackDependenciesPreRelease": "gulp addExtensionPackDependenciesPreRelease", "updateBuildNumber": "gulp updateBuildNumber", "verifyBundle": "gulp verifyBundle", "webpack": "webpack"