You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
CI Tests: PowerShellEditorServices build cannot restore .NET reference packs (NuGet feed returns 401), failing every branch since 2026-06-25 #5592
CI Tests has failed on every branch since 2026-06-25, including main (the last successful run was 2026-06-25). It fails in the Build, test and package step while building the sibling PowerShellEditorServices checkout, before any of this repository's own tests run:
error : Failed to download package 'Microsoft.NETCore.App.Ref.8.0.31' from 'https://pkgs.dev.azure.com/powershell/.../nuget/v3/flat2/microsoft.netcore.app.ref/8.0.31/microsoft.netcore.app.ref.8.0.31.nupkg'.
error : Response status code does not indicate success: 401 (Unauthorized - No local versions of package 'microsoft.netcore.app.ref'; please provide authentication to access versions from upstream that have not yet been saved to your feed.)
PowerShellEditorServices/nuget.config clears all sources and only lists https://pkgs.dev.azure.com/powershell/PowerShell/_packaging/powershell/nuget/v3/index.json. That feed's index.json is public (HTTP 200), but package downloads return 401 to anonymous clients, for both the name-based and GUID-based URLs, e.g. microsoft.netcore.app.ref 8.0.19 and 8.0.31. The same package is publicly downloadable from nuget.org (HTTP 302). Since ci-test.yml checks out PSES's default branch and builds it, public GitHub runners can no longer restore these .NET reference packs.
Effect: no PR can get a green CI Tests run; several PRs (e.g. #5558) are stuck on this.
Workaround that unblocks a run — add nuget.org to the sources after checking out PSES (see the temporary commit in #5558):
- name: Add nuget.org to the PowerShellEditorServices sourcesshell: pwshrun: | # keep the PowerShell feed, add nuget.org as a fallback for the ref packs
With it, the build succeeds and the extension's tests actually execute (the remaining macOS failure in that run was the unrelated, flaky VS Code Insiders download: spawn ... Electron ENOENT).
Suggested fixes (maintainer's call):
Add nuget.org to PowerShellEditorServices/nuget.config, or enable anonymous upstream access on the feed.
Check out a pinned PSES tag in ci-test.yml rather than its default branch.
Update from #5558: adding nuget.org as a source and mapping the framework reference packs to it via packageSourceMapping (Microsoft.NETCore.App.*, Microsoft.AspNetCore.App.*, Microsoft.WindowsDesktop.App.*) makes the PSES build succeed again, so the extension's suite finally runs. With that, ubuntu-latest and windows-latest are green on #5558.
macos-latest still fails, but before any test starts, because the runner cannot launch the Insiders build it downloaded (Test error: spawn .../Visual Studio Code - Insiders.app/Contents/MacOS/Electron ENOENT) — a separate, pre-existing problem.
Two notes for whoever fixes this properly:
Mapping is needed, otherwise NuGet still tries to download the reference packs from the feed that 401s.
Update: all of this is worked around now, and CI Tests is green on #5558 — the first green run on this repo since 2026-06-25. Two further problems were behind the macOS red, in case they help:
NuGet (this issue). Adding nuget.org as a source alone is not enough: NuGet still tries to download the reference packs from the feed that 401s. It needs packageSourceMapping for Microsoft.NETCore.App.*, Microsoft.AspNetCore.App.* and Microsoft.WindowsDesktop.App.* pointing at nuget.org.
macOS: VS Code 1.110 renamed the macOS main binary from Contents/MacOS/Electron to the product name (Code - Insiders for Insiders), while @vscode/test-electron 2.x hardcodes the old path, so every macOS run died with spawn ... Electron ENOENT before loading any test. Updating to @vscode/test-electron 3.x fixes it (it resolves the executable from the bundle's Info.plist).
The npm side has the same mirror problem. This repo's .npmrc points at the PowerShell Azure Artifacts npm mirror, which has not cached @vscode/test-electron 3.x and returns 401 for packages it has not cached. npm silently skips optional dependencies it cannot fetch, so after the update the install had no vscode-test at all and every platform failed with Can't resolve '@vscode/test-electron'. Serving the @vscode scope (or the whole install) from npmjs until the mirror is refreshed fixes it.
The job matrix uses the default fail-fast, so one failing platform cancels the other two and hides their results; fail-fast: false makes all three report.
All four are in #5558 as clearly-marked temporary changes, easy to drop or split into their own PR.
Activity
PtJade-Ceramic commentedon Sep 12, 2026
Update from #5558: adding
nuget.orgas a source and mapping the framework reference packs to it viapackageSourceMapping(Microsoft.NETCore.App.*,Microsoft.AspNetCore.App.*,Microsoft.WindowsDesktop.App.*) makes the PSES build succeed again, so the extension's suite finally runs. With that,ubuntu-latestandwindows-latestare green on #5558.macos-lateststill fails, but before any test starts, because the runner cannot launch the Insiders build it downloaded (Test error: spawn .../Visual Studio Code - Insiders.app/Contents/MacOS/Electron ENOENT) — a separate, pre-existing problem.Two notes for whoever fixes this properly:
fail-fast, so one failing platform cancels the other two and hides their results; feat: add WinGet upgrade option to PowerShell update notification (#5477) #5558 setsfail-fast: falsein its temporary commit.PtJade-Ceramic commentedon Sep 12, 2026
Update: all of this is worked around now, and
CI Testsis green on #5558 — the first green run on this repo since 2026-06-25. Two further problems were behind the macOS red, in case they help:nuget.orgas a source alone is not enough: NuGet still tries to download the reference packs from the feed that 401s. It needspackageSourceMappingforMicrosoft.NETCore.App.*,Microsoft.AspNetCore.App.*andMicrosoft.WindowsDesktop.App.*pointing at nuget.org.Contents/MacOS/Electronto the product name (Code - Insidersfor Insiders), while@vscode/test-electron2.x hardcodes the old path, so every macOS run died withspawn ... Electron ENOENTbefore loading any test. Updating to@vscode/test-electron3.x fixes it (it resolves the executable from the bundle'sInfo.plist)..npmrcpoints at the PowerShell Azure Artifacts npm mirror, which has not cached@vscode/test-electron3.x and returns 401 for packages it has not cached. npm silently skips optional dependencies it cannot fetch, so after the update the install had novscode-testat all and every platform failed withCan't resolve '@vscode/test-electron'. Serving the@vscodescope (or the whole install) from npmjs until the mirror is refreshed fixes it.fail-fast, so one failing platform cancels the other two and hides their results;fail-fast: falsemakes all three report.All four are in #5558 as clearly-marked temporary changes, easy to drop or split into their own PR.
test: update `@vscode/test-electron` to 3.x for the renamed macOS binary