From f84523bf067b82975c984b015c97fcd20864b879 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Wed, 11 Mar 2026 11:05:36 -0700 Subject: [PATCH 01/14] Align pipeline npm registry with .npmrc feed Update AZURE_ARTIFACTS_FEED to use the azure-public/python-environments feed to match the .npmrc configuration, fixing E401 auth errors during vsce package in CI. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 2 +- build/azure-devdiv-pipeline.pre-release.yml | 2 +- build/azure-devdiv-pipeline.stable.yml | 2 +- build/azure-pipeline.validation.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.npmrc b/.npmrc index 8e6d7620..414d096c 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,4 @@ -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/ +@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/ # Force public npm registry to avoid CI auth (E401) when no token is provided registry=https://registry.npmjs.org/ # Do not require auth for public installs diff --git a/build/azure-devdiv-pipeline.pre-release.yml b/build/azure-devdiv-pipeline.pre-release.yml index 0a70f544..78d82d04 100644 --- a/build/azure-devdiv-pipeline.pre-release.yml +++ b/build/azure-devdiv-pipeline.pre-release.yml @@ -27,7 +27,7 @@ variables: - name: VsixName value: mypy.vsix - name: AZURE_ARTIFACTS_FEED - value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/' + value: 'https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/' parameters: - name: publishExtension diff --git a/build/azure-devdiv-pipeline.stable.yml b/build/azure-devdiv-pipeline.stable.yml index d6799f46..c36fc4da 100644 --- a/build/azure-devdiv-pipeline.stable.yml +++ b/build/azure-devdiv-pipeline.stable.yml @@ -24,7 +24,7 @@ variables: - name: VsixName value: mypy.vsix - name: AZURE_ARTIFACTS_FEED - value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/' + value: 'https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/' parameters: - name: publishExtension diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index f18090d6..e3a4e5ff 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -34,7 +34,7 @@ variables: - name: VsixName value: mypy.vsix - name: AZURE_ARTIFACTS_FEED - value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/' + value: 'https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/' parameters: - name: buildSteps From 4ab5df994ac88bd5b73d22178e0b95c1ea8f39fb Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Wed, 11 Mar 2026 11:31:56 -0700 Subject: [PATCH 02/14] Revert .npmrc change Keep .npmrc pointing to the public python-environments feed for local dev. Only the pipeline YAML files should use msft_consumption. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.npmrc b/.npmrc index 414d096c..8e6d7620 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,4 @@ -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/ +@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/ # Force public npm registry to avoid CI auth (E401) when no token is provided registry=https://registry.npmjs.org/ # Do not require auth for public installs From 046fca7b5c0d3c432b551914ce030ad1955bc9bb Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Wed, 11 Mar 2026 11:40:37 -0700 Subject: [PATCH 03/14] Update .npmrc to use msft_consumption feed Align .npmrc with pipeline YAML files to use the same msft_consumption feed for @vscode scoped packages. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.npmrc b/.npmrc index 8e6d7620..414d096c 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,4 @@ -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/ +@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/ # Force public npm registry to avoid CI auth (E401) when no token is provided registry=https://registry.npmjs.org/ # Do not require auth for public installs From 62e180b5870dc2101327656f62eb9ab1e8f75eaf Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Wed, 11 Mar 2026 12:14:13 -0700 Subject: [PATCH 04/14] Revert .npmrc to python-environments feed The msft_consumption feed requires auth in CI pipelines, causing E401 during npm ci. Keep .npmrc on the public python-environments feed for both local dev and CI compatibility. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.npmrc b/.npmrc index 414d096c..8e6d7620 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,4 @@ -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/ +@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/ # Force public npm registry to avoid CI auth (E401) when no token is provided registry=https://registry.npmjs.org/ # Do not require auth for public installs From 91ac7c37f9f5d17f7232d27a6e266720730e9175 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Wed, 11 Mar 2026 12:46:18 -0700 Subject: [PATCH 05/14] Update .npmrc to msft_consumption with no-auth flag Switch @vscode scoped registry to msft_consumption feed and explicitly disable auth for it, preventing E401 in CI where npmAuthenticate sets always-auth=true for a different feed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.npmrc b/.npmrc index 8e6d7620..1afdea40 100644 --- a/.npmrc +++ b/.npmrc @@ -1,5 +1,4 @@ -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/ -# Force public npm registry to avoid CI auth (E401) when no token is provided +@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/ +//pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/:always-auth=false registry=https://registry.npmjs.org/ -# Do not require auth for public installs -always-auth=false +always-auth=false \ No newline at end of file From 26965eb18290a20bb257b1273d3a93493c2f0568 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Wed, 11 Mar 2026 12:57:10 -0700 Subject: [PATCH 06/14] Update .npmrc to msft_consumption with always-auth=false Explicitly disable auth for the msft_consumption scoped registry to prevent CI's npmAuthenticate from sending an invalid token to this public feed, fixing E401 during vsce package. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.npmrc b/.npmrc index 1afdea40..ca369e6a 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,4 @@ @vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/ //pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/:always-auth=false registry=https://registry.npmjs.org/ -always-auth=false \ No newline at end of file +always-auth=false From fe06ec3b2f3b82e26e7f84ad2aece53e645a722d Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Wed, 11 Mar 2026 13:32:19 -0700 Subject: [PATCH 07/14] Revert pipelines to Pylance feed, add no-auth for .npmrc registry Revert AZURE_ARTIFACTS_FEED to Pylance_PublicPackages (same org as pipeline, auth works). Keep .npmrc on public python-environments feed but add per-registry always-auth=false to prevent CI's npmAuthenticate from sending the wrong auth token during vsce package. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 4 ++-- build/azure-devdiv-pipeline.pre-release.yml | 2 +- build/azure-devdiv-pipeline.stable.yml | 2 +- build/azure-pipeline.validation.yml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.npmrc b/.npmrc index ca369e6a..eac54b78 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,4 @@ -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/ -//pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/:always-auth=false +@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/ +//pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/:always-auth=false registry=https://registry.npmjs.org/ always-auth=false diff --git a/build/azure-devdiv-pipeline.pre-release.yml b/build/azure-devdiv-pipeline.pre-release.yml index 78d82d04..0a70f544 100644 --- a/build/azure-devdiv-pipeline.pre-release.yml +++ b/build/azure-devdiv-pipeline.pre-release.yml @@ -27,7 +27,7 @@ variables: - name: VsixName value: mypy.vsix - name: AZURE_ARTIFACTS_FEED - value: 'https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/' + value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/' parameters: - name: publishExtension diff --git a/build/azure-devdiv-pipeline.stable.yml b/build/azure-devdiv-pipeline.stable.yml index c36fc4da..d6799f46 100644 --- a/build/azure-devdiv-pipeline.stable.yml +++ b/build/azure-devdiv-pipeline.stable.yml @@ -24,7 +24,7 @@ variables: - name: VsixName value: mypy.vsix - name: AZURE_ARTIFACTS_FEED - value: 'https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/' + value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/' parameters: - name: publishExtension diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index e3a4e5ff..f18090d6 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -34,7 +34,7 @@ variables: - name: VsixName value: mypy.vsix - name: AZURE_ARTIFACTS_FEED - value: 'https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/' + value: 'https://devdiv.pkgs.visualstudio.com/DevDiv/_packaging/Pylance_PublicPackages/npm/registry/' parameters: - name: buildSteps From 3ab4f346a5c711ff65441bb850e1c2cc5294a729 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Fri, 13 Mar 2026 12:50:51 -0700 Subject: [PATCH 08/14] Switch @vscode registry to msft_consumption, remove validation triggers Update .npmrc to use msft_consumption feed for @vscode scoped packages and remove trigger/PR sections from azure-pipeline.validation.yml. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 6 ++++-- build/azure-pipeline.validation.yml | 19 ------------------- 2 files changed, 4 insertions(+), 21 deletions(-) diff --git a/.npmrc b/.npmrc index eac54b78..e79897d4 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,6 @@ -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/ -//pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/:always-auth=false +# Force public npm registry to avoid CI auth (E401) when no token is provided registry=https://registry.npmjs.org/ +# For python-environments, we need to use the Azure Artifacts registry for @vscode packages +@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry +# Do not require auth for public installs always-auth=false diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index f18090d6..e875a0c4 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -1,22 +1,3 @@ -# PR and Push validation pipeline - -trigger: - branches: - include: - - main - - release - - release/* - - release-* - -pr: - branches: - include: - - main - - release - - release/* - - release-* - drafts: false - resources: repositories: - repository: MicroBuildTemplate From a90481a70e3a1ddf62184ed1bc7eec074308210a Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Fri, 13 Mar 2026 13:22:39 -0700 Subject: [PATCH 09/14] Update validation pipeline triggers to wildcard branches Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- build/azure-pipeline.validation.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index e875a0c4..7bab9a8b 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -1,3 +1,14 @@ +trigger: + branches: + include: + - '*' + +pr: + branches: + include: + - '*' + drafts: false + resources: repositories: - repository: MicroBuildTemplate From 6f1d2b4d9bbd2e955639b5ae8fe71dad96e02520 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Mon, 16 Mar 2026 13:35:01 -0700 Subject: [PATCH 10/14] Use direct tarball URL for @vscode/python-environments Replace @vscode:registry in .npmrc with a direct tarball URL in package.json for @vscode/python-environments from the msft_consumption feed. This avoids scoped registry conflicts with other @vscode packages in CI. Also update validation pipeline triggers to wildcard branches with drafts enabled. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .npmrc | 3 --- build/azure-pipeline.validation.yml | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/.npmrc b/.npmrc index e79897d4..a8e0b99b 100644 --- a/.npmrc +++ b/.npmrc @@ -1,6 +1,3 @@ -# Force public npm registry to avoid CI auth (E401) when no token is provided registry=https://registry.npmjs.org/ -# For python-environments, we need to use the Azure Artifacts registry for @vscode packages -@vscode:registry=https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry # Do not require auth for public installs always-auth=false diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index 7bab9a8b..fc6aa004 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -7,7 +7,7 @@ pr: branches: include: - '*' - drafts: false + drafts: true resources: repositories: diff --git a/package-lock.json b/package-lock.json index 6bac120e..0361bb90 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "2025.3.0", "license": "MIT", "dependencies": { - "@vscode/python-environments": "^1.0.0", + "@vscode/python-environments": "https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/@vscode/python-environments/-/python-environments-1.0.0.tgz", "@vscode/python-extension": "^1.0.6", "fs-extra": "^11.3.1", "minimatch": "^10.2.4", @@ -1295,7 +1295,7 @@ }, "node_modules/@vscode/python-environments": { "version": "1.0.0", - "resolved": "https://pkgs.dev.azure.com/azure-public/vside/_packaging/python-environments/npm/registry/@vscode/python-environments/-/python-environments-1.0.0.tgz", + "resolved": "https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/@vscode/python-environments/-/python-environments-1.0.0.tgz", "integrity": "sha1-AQxJi6ysjdysdHVWlc/H3XEbHfU=", "license": "MIT", "engines": { diff --git a/package.json b/package.json index da9a627f..c9875fb1 100644 --- a/package.json +++ b/package.json @@ -215,7 +215,7 @@ ] }, "dependencies": { - "@vscode/python-environments": "^1.0.0", + "@vscode/python-environments": "https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/npm/registry/@vscode/python-environments/-/python-environments-1.0.0.tgz", "@vscode/python-extension": "^1.0.6", "fs-extra": "^11.3.1", "minimatch": "^10.2.4", From 05b71b0c156d2dd2d12d586812be2139758f2f31 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Tue, 17 Mar 2026 10:54:59 -0700 Subject: [PATCH 11/14] Trigger CI Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> From 9bdf1363ff1cd926bad1d61e3664cd2f44f67133 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Tue, 17 Mar 2026 10:59:30 -0700 Subject: [PATCH 12/14] Update validation pipeline triggers to main branch Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- build/azure-pipeline.validation.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index fc6aa004..b36744eb 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -1,12 +1,12 @@ trigger: branches: include: - - '*' + - main pr: branches: include: - - '*' + - main drafts: true resources: From f4ab6b5b7bc7ed91c954df81f38e9f3fb860e809 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Tue, 17 Mar 2026 12:08:59 -0700 Subject: [PATCH 13/14] Revert validation triggers to wildcard Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- build/azure-pipeline.validation.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index b36744eb..fc6aa004 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -1,12 +1,12 @@ trigger: branches: include: - - main + - '*' pr: branches: include: - - main + - '*' drafts: true resources: From 2682f634ed19f38e1fe188cb752f1c386a41f267 Mon Sep 17 00:00:00 2001 From: Eduardo Villalpando Mello Date: Tue, 17 Mar 2026 12:21:34 -0700 Subject: [PATCH 14/14] Switch validation pipeline to 1ES Unofficial template Use MicroBuild.1ES.Unofficial.yml for PR/validation builds and add sourceAnalysisPool, matching the isort repo configuration. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- build/azure-pipeline.validation.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/build/azure-pipeline.validation.yml b/build/azure-pipeline.validation.yml index fc6aa004..911ffaf4 100644 --- a/build/azure-pipeline.validation.yml +++ b/build/azure-pipeline.validation.yml @@ -51,10 +51,11 @@ parameters: displayName: Build extension extends: - template: azure-pipelines/MicroBuild.1ES.Official.yml@MicroBuildTemplate + template: azure-pipelines/MicroBuild.1ES.Unofficial.yml@MicroBuildTemplate parameters: sdl: enabled: false + sourceAnalysisPool: VSEngSS-MicroBuild2022-1ES pool: name: AzurePipelines-EO os: windows