Skip to content

Revise XmlToDescriptionGenerator incrementality #1003

@Youssef1313

Description

@Youssef1313

The generator has few patterns that hurt SG incrementality.

  1. Having Compilation in the source output step (the last step) in the generator pipeline. That effectively means this step will always be running and it kinda acts as ISourceGenerator.
  2. Having IMethodSymbol in the pipeline models (in MethodToGenerate)
  3. Having syntax nodes in pipeline models (in MethodToGenerate)
  4. Attempting to produce diagnostics in generator. While the API exists, I do believe it's discouraged, and a separate diagnostic analyzer is more preferred.
  5. XmlDocumentation is unlikely to be comparable. It has Dictionary<string, string>, but if two different dictionary instances are compared, the result will be false even if they contain the same key-value pairs.

IMO, point 4 is best addressed first, as it might already simplify the implementation and make the rest easier to fix.

cc @stephentoub

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions