Skip to content

Instantly share code, notes, and snippets.

View jeffkl's full-sized avatar

Jeff Kluge jeffkl

View GitHub Profile
@jeffkl
jeffkl / Improvements to MSBuild 15.md
Last active November 17, 2022 23:45
Improvements to MSBuild 15

Improvements to MSBuild 15

In MSBuild 15, we've been hard at work adding features that make it easier to manage your build. The development world has evolved greatly in the last 10 years with NuGet packages, more platforms, and the internet in general. We wanted to modernize some of MSBuild to propel it forward to a new era.

Open Source

MSBuild 15 is open source for the first time. This has allowed us to work in the open in a tighter loop with our customers. It also has allowed community contribution so that features of MSBuild can be provided that the core MSBuild development team does not have time to implement.

Specifying Versions for Transitive Dependencies

Central Package Version Management (CPVM) is a feature set in NuGet that allows you to manage package versions in one place. Consider the following packages are available:

Id Version Dependencies
PackageA 1.0.0 PackageC >= 3.0.0
PackageB 2.0.0 PackageC >= 4.0.0
PackageC 3.0.0
PackageC 4.0.0
PackageC 5.0.0