deps: align NuGet package versions (supersedes #533, #536, #539)#551
Conversation
Consolidates the still-relevant version bumps from Dependabot PRs #533, #536, and #539, which were all failing build-and-test with NU1605 package-downgrade errors. Root cause: Dependabot bumped Daqifi.Core in the DataModel and IO library projects but left the direct reference in Daqifi.Desktop (and, transitively, Daqifi.Desktop.UITest) at 0.21.0. NuGet treats a transitive version that is higher than a direct reference as a downgrade, which is an error by default. Aligning all three direct Daqifi.Core references clears it. Changes: - Daqifi.Core 0.21.0 -> 0.22.0 (DataModel, IO, Daqifi.Desktop) [non-breaking] - Microsoft.NET.Test.Sdk 18.5.1 -> 18.6.0 (all 5 test projects) - Sentry 6.5.0 -> 6.6.0 (Common) The Google.Protobuf 3.34.1 -> 3.35.0 bumps from #533/#536 are dropped: #537 removed all direct Google.Protobuf references (it now resolves transitively via Daqifi.Core). The coverlet.collector and System.Management bumps already landed in #538. Verified locally: dotnet restore on the full solution now exits 0 with no NU1605 errors (restore is where all three PRs failed). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Review Summary by QodoAlign NuGet package versions to resolve dependency conflicts
WalkthroughsDescription• Align Daqifi.Core version 0.21.0 → 0.22.0 across all projects • Update Microsoft.NET.Test.Sdk 18.5.1 → 18.6.0 in all test projects • Bump Sentry 6.5.0 → 6.6.0 in Common project • Resolve NU1605 package-downgrade errors from failed Dependabot PRs Diagramflowchart LR
A["Dependabot PRs<br/>#533, #536, #539"] -->|"NU1605 errors"| B["Version misalignment<br/>across projects"]
B -->|"Daqifi.Core 0.21.0→0.22.0"| C["DataModel, IO,<br/>Daqifi.Desktop"]
B -->|"Microsoft.NET.Test.Sdk<br/>18.5.1→18.6.0"| D["All 5 test projects"]
B -->|"Sentry 6.5.0→6.6.0"| E["Common project"]
C -->|"Resolved"| F["Clean dotnet restore<br/>no NU1605 errors"]
D --> F
E --> F
File Changes1. Daqifi.Desktop.Common.Test/Daqifi.Desktop.Common.Test.csproj
|
Code Review by Qodo
Context used✅ Compliance rules (platform):
47 rules 1. Tab-indented Desktop Daqifi.Core
|
| <ItemGroup> | ||
| <PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.2" /> | ||
| <PackageReference Include="Daqifi.Core" Version="0.21.0" /> | ||
| <PackageReference Include="Daqifi.Core" Version="0.22.0" /> |
There was a problem hiding this comment.
1. Tab-indented desktop daqifi.core 📘 Rule violation ✧ Quality
Several updated PackageReference lines (for Daqifi.Core and Sentry) are indented with a tab character, violating the 4-spaces/no-tabs indentation requirement. This can lead to inconsistent formatting across tooling/editors and create noisy diffs or merge conflicts.
Agent Prompt
## Issue description
One or more modified `PackageReference` lines are indented with a tab character, but the coding standard (PR Compliance ID 244818) requires 4-space indentation and forbids tabs.
## Issue Context
This PR updates `Daqifi.Core` to `0.22.0` across multiple projects (Desktop, DataModel, IO) and also modifies the `Sentry` `PackageReference` in the Common project. Replace the leading tab indentation on the affected `PackageReference` line(s) with spaces-only indentation to comply with the standard and avoid inconsistent formatting/diffs.
## Fix Focus Areas
- Daqifi.Desktop/Daqifi.Desktop.csproj[57-57]
- Daqifi.Desktop.Common/Daqifi.Desktop.Common.csproj[15-15]
- Daqifi.Desktop.DataModel/Daqifi.Desktop.DataModel.csproj[11-11]
- Daqifi.Desktop.IO/Daqifi.Desktop.IO.csproj[10-10]
ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools
Daqifi.Core 0.22.0 added a fifth optional `bool skipVersionCheck` parameter to IFirmwareUpdateService.UpdateWifiModuleAsync (part of the "WiFi planning split from execution" work). Production calls the method with the default, so it compiles unchanged, but Moq validates a .Callback delegate against the method's full parameter list at setup time, so the four-parameter callback threw at runtime: System.ArgumentException: Invalid callback. Setup on method with parameters (IStreamingDevice, string, IProgress<FirmwareUpdateProgress>, CancellationToken, bool) cannot invoke callback with parameters (IStreamingDevice, string, IProgress<FirmwareUpdateProgress>, CancellationToken). Update the Setup, Callback, and Verify for UpdateWifiModuleAsync to the five-parameter signature (It.IsAny<bool>() for the new arg). UpdateFirmwareAsync is unchanged in 0.22.0, so its mocks are left as-is. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
📊 Code Coverage ReportSummarySummary
CoverageDAQiFi - 19.1%
Daqifi.Desktop.Common - 38.1%
Daqifi.Desktop.IO - 100%
Coverage report generated by ReportGenerator • View full report in build artifacts |
Summary
Consolidates the three open Dependabot dependency PRs — #533, #536, and #539 — which were all failing
build-and-testwith the same root cause. This single PR carries the still-relevant bumps, correctly aligned so the build passes.Root cause
All three failed
dotnet restorewithNU1605package-downgrade errors (an error by default, independent ofTreatWarningsAsErrors). Dependabot bumpedDaqifi.Corein theDataModelandIOlibrary projects but left the direct reference at 0.21.0 inDaqifi.Desktop(the main project) and, transitively,Daqifi.Desktop.UITest. NuGet treats a transitively-resolved version that exceeds a direct reference as a downgrade:#536 hit an additional
Google.Protobufdowngrade in the Test project; #533's failure was the staleGoogle.Protobufvariant.Changes
Daqifi.CoreMicrosoft.NET.Test.SdkUITest)SentryDaqifi.Core 0.22.0is a non-breaking minor release relative to 0.21.0 (the last breaking change was 0.20.0 dropping .NET 8).Why some bumps were dropped
Google.Protobuf3.34.1 → 3.35.0 (from deps: Bump the nuget-patch-minor group with 3 updates #533/deps: Bump the nuget-patch-minor group with 5 updates #536) is moot: chore: remove redundant Google.Protobuf package references #537 removed all directGoogle.Protobufreferences — it now resolves transitively viaDaqifi.Core.coverlet.collectorandSystem.Management(from deps: Bump the nuget-patch-minor group with 3 updates #533) already landed in deps: Bump coverlet.collector and System.Management #538.This leaves #539's intent as the only still-relevant content, completed here with the missing
Daqifi.Corereferences (main +UITest) that caused its failure.Verification
dotnet restoreon the full solution now exits0with noNU1605errors — restore is exactly where all three PRs failed. (Compile/test for thenet10.0-windowsWPF projects runs on the Windows CI runner.)Supersedes
Closes #533, #536, #539.
🤖 Generated with Claude Code