dotnet / dotnet/project-system
Need API to support DLLs and reference additions
- 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
Assessment
This issue has not been assessed yet.