зеркало из https://github.com/microsoft/BuildXL.git
58e3a46f2f
Nuget packages can specify group dependencies that are conditioned by a given target framework. E.g.: ```xml <dependencies> <group targetFramework="net6.0"> <dependency id="jQuery" version="1.10.2" /> <dependency id="WebActivatorEx" version="2.2.0" /> </group> </dependencies> ``` The semantic of the condition is 'any framework compatible with net6.0 and the target framework' and not just net6.0. However, our nuget spec generation logic was adding this dependency **only** for net6.0. This was causing some dependent Nuget packages to be missing at deployment time. So far, we've been compensating for that manually adding the missing packages as explicit imports. But this is a risky practice since some packages might be required just at runtime and this might become evident only under particular code paths. Modify the dependency generated logic to include all compatible frameworks wrt the specified framework dependency. This is a relatively safe change because at most we will be deploying *more* libraries than before. It should also allow us to clean up specs considerably after this reaches the LKG. |
||
---|---|---|
.. | ||
Core | ||
Download | ||
Factory | ||
JavaScript | ||
Lage | ||
MsBuild | ||
MsBuild.Serialization | ||
Ninja | ||
Ninja.Serialization | ||
Nuget | ||
Rush | ||
Script | ||
Sdk | ||
SdkProjectGraph | ||
SdkTesting | ||
TypeScript.Net | ||
UnitTests | ||
Utilities | ||
Yarn | ||
frontend.dsc | ||
module.config.dsc |