dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.26k stars 4.73k forks source link

Use ProjectReferences for inbox libraries source projects #93877

Open ViktorHofer opened 1 year ago

ViktorHofer commented 1 year ago

Currently inbox source projects use <Reference /> items instead of <ProjectReference /> items. That design dates back to .NET Core 2.0 days, when dependencies were represented differently. With the continuous work over the last years bringing us closer to the customer path, we should consider updating these to use P2Ps instead.

Here are just some advantages:

Blocked on https://github.com/NuGet/NuGet.Client/pull/5452

ghost commented 1 year ago

Tagging subscribers to this area: @dotnet/area-infrastructure-libraries See info in area-owners.md if you want to be subscribed.

Issue Details
Currently inbox source projects use `` items instead of `` items. That design dates back to .NET Core 2.0 days, when dependencies were represented differently. With the continuous work over the last years bringing us closer to the customer path, we should consider updating these to use P2Ps instead. Here are just some advantages: - Dependencies are incrementally built - Inbox projects can be built from a fresh clone without any up-front work (!) - Faster root builds as a separate reference source projects build isn't necessary anymore. Blocked on https://github.com/NuGet/NuGet.Client/pull/5452
Author: ViktorHofer
Assignees: -
Labels: `area-Infrastructure-libraries`
Milestone: -