dotnet / arcade

Tools that provide common build infrastructure for multiple .NET Foundation projects.
MIT License
671 stars 347 forks source link

Arcade could use Central Package Management #14060

Closed premun closed 1 year ago

premun commented 1 year ago

https://learn.microsoft.com/en-us/nuget/consume-packages/central-package-management

We already do use it in other repositories https://github.com/dotnet/arcade-services/blob/main/Directory.Packages.props but it's unclear whether this is possible in Arcade.

Discussed here https://github.com/dotnet/arcade/pull/13998#pullrequestreview-1646553727

premun commented 1 year ago

@ViktorHofer I think this is a rabbit hole. CPM needs package source mappings and those won't be supported by the tools that are adding nuget sources dynamically (e.g. internal feeds added on the fly).

I am not sure how this works for other product repos. Do you know of some that are using this already?

ViktorHofer commented 1 year ago

sent you a link on Teams

Also, you can suppress the package source mapping errors meanwhile. I think dotnet/sdk does that.

The nice thing about CPM is the transitive pinning feature: https://learn.microsoft.com/en-us/nuget/consume-packages/central-package-management#transitive-pinning

cc @jeffkl who owns CPM in NuGet

garath commented 1 year ago

See also dotnet/arcade#14060

ViktorHofer commented 1 year ago

Fixed with https://github.com/dotnet/arcade/pull/14074