Skip to content

[Provisioning] Analyze and fix analyzer warnings (AZC0034, AZC0035) #51311

@jsquire

Description

@jsquire

Summary

Two new analyzers were recently added which are currently flagging types in the Provisioning libraries. Because of this, two NoWarn suppressions were added in the Directory.Build.props file for all provisioning packages.

  • AZC0034: Flags types that share names with one or more types in a different namespace/library.
  • AZC0035: Flags types that follow output model patterns and do not have a corresponding factory method.

Scope of work

  • Investigate flagged types and evaluate:

    • AZC0034: Any approved type names from a stable release do not need to be changed
    • AZC0035: If there are ways other than a model factory to create them, they do not need to be changed.
  • If a type is being inappropriately flagged, add a local suppression in that type.

  • If the detection is valid, rename the type and/or add the appropriate model factory method.

  • Remove the warning suppressions for AZC0034 and AZC0035 in the Directory.Build.props file.

Success criteria

  • Global suppressions removed from Directory.Build.props.
  • Any suppressions legitimately needed after individual review have been added to the types themselves or the most local scope possible.
  • The provisioning libraries can be built locally and in CI without analyzer errors.

Metadata

Metadata

Assignees

Labels

ClientThis issue is related to a non-management packageProvisioning

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions