dotnet / dotnet/project-system

Need API to support DLLs and reference additions

Open
#5,275 1 comment 0 reactions 0 assignees View on GitHub
Triage-Approved
Dominant language
C#
Stars
1k
Forks
415
PR merge metrics
No merged PRs in 30d

Description

With reference to https://github.com/dotnet/roslyn/issues/37246
Creating a placeholder for now

Roslyn needs a service from project system which when passed with following information

- The Assembly
- project where it needs to be added,
- The project where it appeared

ProjectSystem will figure out if that's a valid addition.
Project system can validate if it has all the metadata to resolve or does it needs any further data from the Build, in which case MSBuild team will add that metadata to make it possible.

While designing this API we should also keep Remove ununsed references in mind.
While we don't need to add a feature now to remove an assembly or to remove all unused assemblies, We find value in the concept of remove all unused references feature. And when we design the project system interaction to correctly add references, We should consider whether the same API will provide a suitable surface area to eventually be able to remove all unused references, the thing to keep in mind is we cann’t be passing a single dll to be removed but will have to pass the collection of all unused references for the project/sln at once.

@davkean to cleanup the above text and capture the design.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.