Skip to content

build: update RoslynCommonAnalyzers to 3.38.1 - #143

Merged
glennawatson merged 8 commits into
mainfrom
glennawatson/update-packages
Jul 25, 2026
Merged

build: update RoslynCommonAnalyzers to 3.38.1#143
glennawatson merged 8 commits into
mainfrom
glennawatson/update-packages

Conversation

@glennawatson

@glennawatson glennawatson commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

What kind of change does this PR introduce?

Build and analyzer maintenance.

What is the new behavior?

RoslynCommonAnalyzers is updated to 3.38.1, and the resulting actionable analyzer diagnostics are fixed across the source, benchmarks, and tests. Existing public API names are preserved by disabling SST1321, and Sonar S8969 is disabled because its nullability inference is inconsistent across this repository's target frameworks.

Compatible dependency updates are also applied within the available target-framework trains:

  • SonarAnalyzer.CSharp 10.30.0.144632
  • Microsoft.Maui.Core 10.0.90 for .NET 10
  • TUnit 1.61.38

What is the current behavior?

The target branch uses RoslynCommonAnalyzers 3.33.0 and older compatible package versions. Updating the analyzer package without the accompanying changes produces new diagnostics, including suggestions that would rename established public APIs.

What might this PR break?

None. The analyzer fallout is resolved without changing the public API surface.

Checklist

  • I have read the Contribute guide
  • Tests have been added or updated (not applicable; no behavior change)
  • Docs have been added or updated (not applicable; no behavior change)
  • Changes target the main branch
  • PR title follows Conventional Commits

Additional information

Verification:

  • dotnet format ReactiveUI.Primitives.slnx --no-restore --verify-no-changes scoped to the changed C# files
  • dotnet build ReactiveUI.Primitives.slnx -c Release -v:minimal — 0 warnings, 0 errors
  • dotnet test ReactiveUI.Primitives.slnx -c Release --no-build — 11,820 passed, 0 failed, 0 skipped

- Update compatible analyzer, MAUI, and test dependencies.
- Fix new diagnostics while preserving established public API names.
- Revert S8969-driven callback and test rewrites.
- Keep established nullability assertions now that the rule is disabled.
- Group diagnostics by analyzer source and category with official IDE rule names.
- Preserve the null-forgiving callback cast while forwarding cancellation tokens.
- Enforce SST1526 through SST1533 and update existing code.

- Exclude incompatible source files from .NET Framework builds.
- Coordinate cancellation after the handler is ready.\n- Remove timer and thread-pool scheduling sensitivity.
@codecov

codecov Bot commented Jul 25, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.26590% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 98.09%. Comparing base (d6a5fff) to head (46f5827).

Files with missing lines Patch % Lines
src/Primitives.Shared/Signals/Signal{RxAliases}.cs 50.00% 0 Missing and 1 partial ⚠️
...ced/SyncLatestEnumerableSignal{TSource,TResult}.cs 50.00% 0 Missing and 1 partial ⚠️
...ves/Concurrency/SynchronizationContextSequencer.cs 50.00% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #143      +/-   ##
==========================================
- Coverage   98.13%   98.09%   -0.05%     
==========================================
  Files         676      676              
  Lines       20958    20944      -14     
  Branches     2530     2530              
==========================================
- Hits        20568    20544      -24     
- Misses        191      196       +5     
- Partials      199      204       +5     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sonarqubecloud

Copy link
Copy Markdown

@glennawatson
glennawatson merged commit 4efc1c7 into main Jul 25, 2026
11 of 13 checks passed
@glennawatson
glennawatson deleted the glennawatson/update-packages branch July 25, 2026 12:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants