Repository navigation
fix(manifest): stop calling skipped .NET projects not restored - #1704
Merged
Jeppe Fredsgaard Blaabjerg (jfblaa) merged 1 commit intoNov 6, 2026
Merged
Conversation
After a failed `dotnet restore`, a project whose restore output cannot be shown current was reported as "did not restore this project in this run". NuGet does not rewrite project.nuget.cache for a project it finds up to date, so such a project may well have been restored. Say what is known: restore may have skipped it as up to date, or never reached it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Oskar Haarklou Veileborg (BarrensZeppelin)
approved these changes
Nov 6, 2026
Jeppe Fredsgaard Blaabjerg (jfblaa)
deleted the
jfblaa/dotnet-not-restored-message
branch
November 6, 2026 14:06
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
LLM Description written by Claude Code:claude-opus-5-5
When
dotnet restorefails in one .NET project, the facts tool reported the other projects whose restore output it cannot confirm as current with "dotnet restoredid not restore this project in this run". That is often false. NuGet skips theproject.nuget.cacheof a project it finds up to date, so a project restored by an earlier run, for example the solution scanned just before by--dynamic-sbom-inference, looks the same as one restore never reached. The tool already treats both as unknown, which is safe. Only the wording claimed more than it knows.The message now reads: "the failed
dotnet restoremay have skipped this project as up to date, or never reached it, so its dependencies are unknown". No behaviour change.Verified:
net6.0sample referencing anet10.0-only project. NU1201 is still reported. The two referenced projects now show the new wording.smoke-test.sh, SDK 10.0.403) passed 3 of 4 runs. The failing run had no unrestored projects recorded. That is consistent with the existing 2 s mtime tolerance inRestoredByThisRun, when the stale-restore case starts within 2 s of the previous restore of the same fixture. It does not depend on this wording change.🤖 Generated with Claude Code
Note
Low Risk
Copy and changelog only: logic and exit behavior are unchanged; low risk.
Overview
When
dotnet restorefails, projects that still lack verifiable restore output are still recorded as unscannable (dependencies unknown), but the message no longer implies they were definitely "not restored this run". It now says a failed restore may have skipped the project as up to date, or never reached it—matching NuGet skipping unchangedproject.nuget.cachework.CHANGELOG.mddocuments this under[Unreleased]→ Fixed.The dotnet compat smoke test (
assert-facts.py) only updates the substring it asserts against so it matches the new wording; no change to what is considered unrestored.Reviewed by Cursor Bugbot for commit c646195. Configure here.