diff --git a/CHANGELOG.md b/CHANGELOG.md index 0967d2442..f79d86bdc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,11 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). +## [Unreleased] + +### Fixed +- When `dotnet restore` fails in one .NET project, the projects it may have skipped as up to date are no longer reported as not restored. + ## [1.14.1](https://github.com/SocketDev/socket-cli/releases/tag/v1.14.1) - 2026-11-06 ### Changed diff --git a/src/commands/manifest/scripts/dotnet-tool/FactsRunner.cs b/src/commands/manifest/scripts/dotnet-tool/FactsRunner.cs index 2994cd4ef..a3f874a33 100644 --- a/src/commands/manifest/scripts/dotnet-tool/FactsRunner.cs +++ b/src/commands/manifest/scripts/dotnet-tool/FactsRunner.cs @@ -311,7 +311,7 @@ private void ReportRestoreErrors() { } } foreach (var key in _notRestored.Where(k => !withErrors.Contains(k))) { - _records.Unscannable("", "`dotnet restore` did not restore this project in this run, so its dependencies are unknown", key); + _records.Unscannable("", "the failed `dotnet restore` may have skipped this project as up to date, or never reached it, so its dependencies are unknown", key); } } diff --git a/src/commands/manifest/scripts/test/dotnet-compat/assert-facts.py b/src/commands/manifest/scripts/test/dotnet-compat/assert-facts.py index f0da72f41..35949de33 100644 --- a/src/commands/manifest/scripts/test/dotnet-compat/assert-facts.py +++ b/src/commands/manifest/scripts/test/dotnet-compat/assert-facts.py @@ -172,7 +172,7 @@ def records_phase(): check(any(r[0] == 'failure' and 'Demo.Ext.DoesNotExist' in '\t'.join(r) for r in stale), 'failed restore reported') reused = {r[2] for r in stale if r[0] == 'root'} - {'test/App.Tests/App.Tests.csproj'} check(not reused, f'projects read from a previous restore {sorted(reused)}') - unknown = {r[3] for r in stale if r[0] == 'unscannable' and 'did not restore this project' in r[2]} + unknown = {r[3] for r in stale if r[0] == 'unscannable' and 'may have skipped this project' in r[2]} check({'src/App/App.csproj', 'src/Extra/Extra.csproj', 'src/Lib/Lib.csproj'} <= unknown, f'unrestored projects reported {sorted(unknown)}') evaluation = records('evaluation.tsv')