Skip to content

Tons of double writes because of intellisense xml docs binplacing #84762

@ViktorHofer

Description

@ViktorHofer

image

While those double writes don't cause immediate build issues, they kill msbuild's incremental build feature which results in a very poor inner-loop experience.

As the list only contains Microsoft.Extensions.* libraries, this code block could be faulty:

<GetBinPlaceItemsDependsOn Condition="$(MSBuildProjectName.StartsWith('Microsoft.Extensions.'))">$(GetBinPlaceItemsDependsOn);AddDocumentationFileAsBinPlaceItemForExtensionsProjects</GetBinPlaceItemsDependsOn>
</PropertyGroup>
<Target Name="AddDocumentationFileAsBinPlaceItemForExtensionsProjects"
Condition="Exists('$(DocumentationFile)')">
<ItemGroup>
<!-- Microsoft.Extensions are not yet using the doc-file package -->
<BinPlaceItem Include="$(DocumentationFile)" />
</ItemGroup>
</Target>

Unrelated but we should move that code into intellisense.targets as well.

@carlossanlop please take a look. You can observe the double writes in a binlog. The MSBuild Structure Build Log Viewer shows them as a node.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions