arcade-services icon indicating copy to clipboard operation
arcade-services copied to clipboard

Unified Build - Managing multiple SDK bands within VMR

Open premun opened this issue 2 years ago • 0 comments

Context

To align with new Visual Studio releases, .NET SDK updates sometimes include new features or new versions of components such as Roslyn or MSBuild. These new features or components may be incompatible with the versions that shipped in previous SDK updates for the same major or minor version. To differentiate such updates, the .NET SDK uses the concept of feature bands. While these bands differ in their feature set they share some common parts such as the .NET runtime.

Currently, we have quite complicated relationships in the .NET product between components that differ per SDK band and that are shared. Assembling, building and shipping the right set of artifacts is a very challenging task.

With the move to Unified Build and the new simplified dependency flow system which uses the new VMR, we will also have to address the problem of releasing and servicing several SDK bands.

Goals

  • [x] Explore and map present problematics of managing multiple SDK bands. Propose and design how the solution looks like in the .NET 9 timeframe with regards to the planned Unified Build changes.
  • [ ] Implement new tools or adjust existing infrastructure to make sure the VMR supports multiple SDK bands.

premun avatar May 29 '23 15:05 premun