Skip to content

Fix NRT annotations in src\Xamarin.Android.Build.Tasks\ #10326

@jonathanpeppers

Description

@jonathanpeppers

Many classes in src\Xamarin.Android.Build.Tasks\ still use the old nullable patterns and haven't been updated to follow the repository's nullable reference types guidelines. Base these on the copilot-instructions.md.

Specifically focus on files in src\Xamarin.Android.Build.Tasks\Utilities.

Verify every .cs file has #nullable enable at the top

Current pattern found:

public string NonRequiredProperty { get; set; }
public ITaskItem [] NonRequiredItemGroup { get; set; }
[Required]
public string RequiredProperty { get; set; }

Should be updated to:

public string? NonRequiredProperty { get; set; }
public ITaskItem []? NonRequiredItemGroup { get; set; }
[Required]
public string RequiredProperty { get; set; } = "";
[Required]
public ITaskItem [] RequiredItemGroup { get; set; } = [];

C# class files need review, with many still having #nullable disable pragmas that should be systematically converted.

There are going to be lots of files changed, start by only fixing 5 files at a time. If a file works first try, just changing #nullable disable/enable, then don't count it as one of the 5 and keep going.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions