dotnet/roslyn

Improve file locations in the Roslyn Sarif reports for source generator files

Aberta

#51.773 aberto em 10 de mar. de 2021

 (2 comentários) (2 reações) (0 responsável)C# (4.257 forks)batch import
Area-CompilersBugFeature - Source Generatorshelp wanted

Métricas do repositório

Stars
 (20.414 estrelas)
Métricas de merge de PR
 (Mesclagem média 6d 17h) (256 fundiu PRs em 30d)

Description

Hello,

In the Roslyn Sarif reports the file locations for source generator code are not pointing to the right location on disk, even if EmitCompilerGeneratedFiles is set to true.

In SonarSource we parse these reports in order to import the raised issues and having the full path in the report (similar with the one for non generated code) will help us and the community write better tools which handle these files.

Expected Behavior:

{
  "ruleId": "S1144",
  "level": "warning",
  "message": "Remove the unused private method 'UnusedMethod'.",
  "locations": [
	{
	  "resultFile": {
		"uri": "file:///c:/src/SourceGeneratorPOC\SourceGeneratorPOC\obj\Debug\netcoreapp3.1\generated\SourceGeneratorPOC.Generators\SourceGeneratorPOC.SourceGenerator\Greetings.cs",
		"region": {
		  "startLine": 7,
		  "startColumn": 9,
		  "endLine": 7,
		  "endColumn": 47
		}
	  }
	}
  ],
}

Actual Behavior:

{
  "ruleId": "S1144",
  "level": "warning",
  "message": "Remove the unused private method 'UnusedMethod'.",
  "locations": [
	{
	  "resultFile": {
		"uri": "SourceGeneratorPOC.Generators/SourceGeneratorPOC.SourceGenerator/Greetings.cs",
		"region": {
		  "startLine": 7,
		  "startColumn": 9,
		  "endLine": 7,
		  "endColumn": 47
		}
	  }
	}
  ],
}

Thank you!

Guia do colaborador