Skip to content

[5.0] Enable nullable annotations on Common and Workspaces.Common - #1825

Merged
josefpihrt merged 2 commits into
mainfrom
feature/1817-nrt-common
Aug 16, 2026
Merged

[5.0] Enable nullable annotations on Common and Workspaces.Common#1825
josefpihrt merged 2 commits into
mainfrom
feature/1817-nrt-common

Conversation

@josefpihrt

@josefpihrt josefpihrt commented Aug 16, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Enable <Nullable>enable</Nullable> on Roslynator.Common and Roslynator.Workspaces.Common and annotate public APIs correctly (string? where values can be null) rather than making everything non-nullable.
  • This is a source-breaking change for NRT consumers of types such as ConfigOptionDescriptor, ConfigOptions, XmlCodeAnalysisConfig, and AbstractCodeFixProvider. Analyzer implementation projects are unchanged.

Fixes #1817.

Test plan

  • Common and Workspaces.Common build with TreatWarningsAsErrors=true (0 CS86xx)
  • Downstream Analyzers.CodeFixes, Refactorings, and CodeFixes still build
  • Analyzer, code-fix, and refactoring tests passed locally
  • CI green

Josef Pihrt and others added 2 commits August 16, 2026 18:51
Annotate the bundled public surface so NRT consumers compiling against ConfigOptions, DiagnosticRules, and AbstractCodeFixProvider get correct nullability. Source-breaking; scheduled for 5.0.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@josefpihrt
josefpihrt merged commit f5a7f3b into main Aug 16, 2026
17 checks passed
@josefpihrt
josefpihrt deleted the feature/1817-nrt-common branch August 16, 2026 18:31
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.

Enable nullable annotations on remaining shipped public types

1 participant