Bump Microsoft.CodeAnalysis.Analyzers and 5 others - #857
dependabot[bot] wants to merge 2 commits into
Conversation
Bumps Microsoft.CodeAnalysis.Analyzers from 5.3.0 to 5.9.0 Bumps Microsoft.CodeAnalysis.CSharp to 5.9.0 Bumps Microsoft.NET.Test.Sdk from 18.6.0 to 18.10.0 Bumps Microsoft.Windows.CsWin32 from 0.3.269 to 0.3.333 Bumps xunit.runner.visualstudio from 3.1.5 to 4.0.0 Bumps xunit.v3 from 3.2.2 to 4.0.0 --- updated-dependencies: - dependency-name: Microsoft.CodeAnalysis.Analyzers dependency-version: 5.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget - dependency-name: Microsoft.CodeAnalysis.CSharp dependency-version: 5.9.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget - dependency-name: Microsoft.CodeAnalysis.CSharp dependency-version: 5.9.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget - dependency-name: Microsoft.NET.Test.Sdk dependency-version: 18.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: nuget - dependency-name: xunit.runner.visualstudio dependency-version: 4.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget - dependency-name: xunit.v3 dependency-version: 4.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: nuget - dependency-name: Microsoft.Windows.CsWin32 dependency-version: 0.3.333 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: nuget ... Signed-off-by: dependabot[bot] <support@github.com>
Build Metrics ReportBinary Sizes
Test Results✅ 0 passed out of 0 tests in 0.0s (-6856 tests, -1698.0s vs. baseline) Test Coverage❌ 0% line coverage, 0% branch coverage · Updated 2026-09-16 21:12:42 UTC · commit |
There was a problem hiding this comment.
🟡 Changes recommended
The analyzer’s 5.9 reference can cause Roslyn 4.8/.NET 8 consumers to skip it, disabling diagnostics.
Get a fresh assessment by requesting another Copilot review.
Pull request overview
Updates analyzer, compiler, test, source-generation, and xUnit dependencies.
Changes:
- Upgrades CsWin32 to 0.3.333.
- Upgrades Roslyn dependencies to 5.9.0.
- Updates test SDK and xUnit packages.
File summaries
| File | Description |
|---|---|
src/winapp-CLI/Directory.Packages.props |
Updates CsWin32. |
src/winapp-Analyzer/Microsoft.WindowsAppSDK.Analyzers/Microsoft.WindowsAppSDK.Analyzers.csproj |
Updates Roslyn dependencies; the analyzer reference must remain compatible with supported .NET 8 SDKs. |
src/winapp-Analyzer/Microsoft.WindowsAppSDK.Analyzers.Tests/Microsoft.WindowsAppSDK.Analyzers.Tests.csproj |
Updates test dependencies. |
Review details
- Files reviewed: 3/3 changed files
- Comments generated: 1
- Review effort level: Lite (auto)
Note
Copilot is running an experiment and ran this review at Lite.
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| --> | ||
| <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.8.0" PrivateAssets="all" /> | ||
| <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="5.3.0" PrivateAssets="all" /> | ||
| <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="5.9.0" PrivateAssets="all" /> |
|
One or more custom setup steps configured for this repository failed during this Copilot code review run: Setup steps run before each review. If the review above is missing context, or no review was posted at all, the failing step above may be the cause. See the workflow run for failure details, fix your setup steps configuration, and re-request a review. Note You can configure setup steps for Copilot code review separately from Copilot cloud agent with a |
…ft.WindowsAppSDK.Analyzers.Tests/nuget-18eaa37a88
|
Superseded by #869, which adopts these updates with the CsWin32 SHGetImageList API fix, preserves the shipped analyzer Roslyn 4.8 compatibility baseline, and includes regression coverage plus published NativeAOT and package-consumer validation. The production Roslyn 5.9 bump in this automated PR is intentionally not adopted. |
|
This pull request was built based on a group rule. Closing it will not ignore any of these versions in future pull requests. To ignore these dependencies, configure ignore rules in dependabot.yml |
…mpatibility (#869) ## Description Manually adopt the dependency updates from #855 and #857 with the required CsWin32 API adaptation and compatibility coverage. Both Dependabot PRs failed to compile because CsWin32 0.3.333 replaces the `SHGetImageList` convenience overload used by the CLI. Use its typed `out IImageList2` overload and strengthen the shell-icon test to verify repeated acquisition and serialization after native handles are released. Update Microsoft.NET.Test.Sdk to 18.10.0, xunit.v3 and xunit.runner.visualstudio to 4.0.0, Microsoft.CodeAnalysis.Analyzers to 5.9.0, and the test host's Microsoft.CodeAnalysis.CSharp to 5.9.0. **Keep the shipped analyzer's Microsoft.CodeAnalysis.CSharp reference at 4.8.0** so older supported compilers can still load it. Add assembly-reference regression tests and exclude that package from automatic Dependabot bumps. ## Usage Example No public commands, flags, configuration formats, or library APIs change. Existing executable-icon extraction continues to work: ```powershell winapp manifest generate . --executable .\MyApp.exe ``` ## Related Issue Supersedes #855 and #857. The production Roslyn bump in those PRs is intentionally omitted to preserve the supported compiler baseline. ## Type of Change - 🐛 Bug fix - 🔧 Config/build - 🧪 Test update ## Checklist - [x] Regression tests added and exercised - [x] Tested locally on Windows - [x] CLI schema and plugin documentation regenerated and validated; no user-facing documentation changes required ## Screenshots / Demo Not applicable: no intended UI or CLI behavior change. ## Additional Notes ### Validation | Coverage | Result | | --- | --- | | Focused CLI tests: icons, manifest generation, public API surface, real MP4 encoder, recording | 77 passed | | Full UI Automation library suite | 649 passed; 2 opt-in live pointer-injection tests skipped | | Analyzer suite on Roslyn 5.9 | 65 passed | | Analyzer suite temporarily run against Roslyn 4.8 | 65 passed; test dependency restored to 5.9 afterward | | Analyzer compatibility negative check | Both new tests correctly failed when the production reference was temporarily raised to 5.9; production reference restored to 4.8 | | Analyzer MSBuild stand-down contract | Passed | | npm unit tests | 307 passed | | NuGet package layout and MSBuild contracts | 62 passed | | `scripts\build-cli.ps1 -SkipTests` | Produced x64/ARM64 NativeAOT binaries, npm package, all four NuGet packages, and both MSIX packages | | `scripts\validate-llm-docs.ps1` | Passed | The build script's test phase was skipped because the dependency-focused suites above were run separately; the full CLI suite was not run. ### Published-binary and consumer checks Tested both published binaries on an ARM64 Windows host: ARM64 natively and x64 under emulation. Both successfully extracted an executable's icon and generated 49 assets, inspected a dedicated test window, round-tripped a text value, captured nonblank screenshots, and recorded six-frame WGC/H.264 videos with JPEG evidence. Checked output dimensions, frame manifests, changing image content, and finalized MP4 sample tables. Fresh consumers of the packaged `net10.0-windows` and `net10.0-windows10.0.19041.0` library targets restored, compiled with warnings as errors, and ran. The lean target retained GDI-only capture; the full target exposed WGC and recording. CsWin32 was absent from the consumers' transitive dependency graph. No downstream break was found in these tested paths; x64 hardware execution and opt-in live pointer injection were not covered. Co-authored-by: Nikola Metulev <711864+nmetulev@users.noreply.github.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Updated Microsoft.CodeAnalysis.Analyzers from 5.3.0 to 5.9.0.
Release notes
Sourced from Microsoft.CodeAnalysis.Analyzers's releases.
No release notes found for this version range.
Commits viewable in compare view.
Updated Microsoft.CodeAnalysis.CSharp from 4.8.0 to 5.9.0.
Release notes
Sourced from Microsoft.CodeAnalysis.CSharp's releases.
5.0.4
Release
5.0.2
Release Notes
Install Instructions
Repos
5.0.1
Release Notes
Install Instructions
Repo
Commits viewable in compare view.
Updated Microsoft.CodeAnalysis.CSharp from 4.12.0 to 5.9.0.
Release notes
Sourced from Microsoft.CodeAnalysis.CSharp's releases.
5.0.4
Release
5.0.2
Release Notes
Install Instructions
Repos
5.0.1
Release Notes
Install Instructions
Repo
Commits viewable in compare view.
Updated Microsoft.NET.Test.Sdk from 18.6.0 to 18.10.0.
Release notes
Sourced from Microsoft.NET.Test.Sdk's releases.
18.10.0
What's Changed
vstest.consoleand datacollector by @nohwnd in Run Microsoft.Testing.Platform test apps under vstest.console and datacollector vstest#16201Full Changelog: microsoft/vstest@v18.9.0...v18.10.0
18.9.0
What's Changed
New Contributors
Full Changelog: microsoft/vstest@v18.8.0...v18.9.0
18.8.1
What's Changed
Full Changelog: microsoft/vstest@v18.8.0...v18.8.1
18.8.0
What's Changed
Full Changelog: microsoft/vstest@v18.7.0...v18.8.0
18.7.0
What's Changed
New Contributors
Full Changelog: microsoft/vstest@v18.6.0...v18.7.0
Commits viewable in compare view.
Updated Microsoft.Windows.CsWin32 from 0.3.269 to 0.3.333.
Release notes
Sourced from Microsoft.Windows.CsWin32's releases.
0.3.333
Feature Improvements
void**parameter pairs now produce generic<T>overloads.Before:
After:
CsWin32 supplies the IID and returns the strongly typed interface directly.
Changes:
Fixes:
"allowMarshaling": trueOthers:
See More
... (truncated)
0.3.298
Changes:
This list of changes was auto generated.
0.3.296
Changes:
Fixes:
CS3016under[assembly: CLSCompliant(true)]Enhancements:
Others:
See More
This list of changes was auto generated.
0.3.287
Changes:
Fixes:
CS3016under[assembly: CLSCompliant(true)]IComIIDis not emitted onnet472/netstandard2.0Enhancements:
Others:
See More
[CLSCompliant(false)]when they carry CCW thunksIComIIDon downlevel TFMs (net472 / netstandard2.0)uncheckedregionsThis list of changes was auto generated.
0.3.275
Changes:
outreference if handle cannot be trivially represented as aSafeHandleThis list of changes was auto generated.
Commits viewable in compare view.
Updated xunit.runner.visualstudio from 3.1.5 to 4.0.0.
Release notes
Sourced from xunit.runner.visualstudio's releases.
4.0.0
Release notes: https://xunit.net/releases/visualstudio/4.0.0
4.0.0-pre.5
Release notes: https://xunit.net/releases/visualstudio/4.0.0-pre.5
4.0.0-pre.4
Release notes: https://xunit.net/releases/visualstudio/4.0.0-pre.4
4.0.0-pre.3
Release notes: https://xunit.net/releases/visualstudio/4.0.0-pre.3
Commits viewable in compare view.
Updated xunit.v3 from 3.2.2 to 4.0.0.
Release notes
Sourced from xunit.v3's releases.
No release notes found for this version range.
Commits viewable in compare view.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore <dependency name> major versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)@dependabot ignore <dependency name> minor versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)@dependabot ignore <dependency name>will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)@dependabot unignore <dependency name>will remove all of the ignore conditions of the specified dependency@dependabot unignore <dependency name> <ignore condition>will remove the ignore condition of the specified dependency and ignore conditions