ILSpy
ILSpy copied to clipboard
Central Package Management to replace packages.prop
Is your feature request related to a problem? Please describe. The repo's root contains packages.props, which lists versions of dependent NuGet packages used as default versions in all csprojs, unless otherwise specified in the csproj. This resembles Central Package Management, an official feature in .NET: https://devblogs.microsoft.com/nuget/introducing-central-package-management/
Describe the solution you'd like According to the link, do the following:
- Create a Directory.Packages.props file at the root directory, set the MSBuild property ManagePackageVersionsCentrally in the file to true.
- Set the PackageVersion in the props file as usual
- In each csproj, for each PackageReference containing a Version attribute that does not have a version number, omit the attribute.
In effect, that implies renaming packages.prop to Directory.Packages.props, moving each property that pins a package version to a normal PackageVersion tag, and moving the PackageVersion tags to a separate ItemGroup.
That also implies bumping the minimum build versions:
Yes, this was already on our list - but we moved it to the backburner because of the tooling requirements (we usually try to not require the hottest stuff off the presses).
As pointed out in the dev meeting notes, this feature will be considered the earliest > 17.4 RTM (our current solution works)
Implemented via #3124