/// <summary> /// Constructs a new NugetAnalyzed Package. /// </summary> /// <remarks> /// In case of failure it will log a detailed message and return null. /// </remarks> public static NugetAnalyzedPackage TryAnalyzeNugetPackage( FrontEndContext context, NugetFrameworkMonikers nugetFrameworkMonikers, XDocument nuSpec, PackageOnDisk packageOnDisk, Dictionary <string, INugetPackage> packagesOnConfig, bool doNotEnforceDependencyVersions) { Contract.Requires(context != null); Contract.Requires(nuSpec != null); Contract.Requires(packageOnDisk != null); Contract.Requires(packageOnDisk.NuSpecFile.IsValid); var analyzedPackage = new NugetAnalyzedPackage(context, nugetFrameworkMonikers, nuSpec, packageOnDisk, packagesOnConfig, doNotEnforceDependencyVersions); if (!analyzedPackage.TryParseDependenciesFromNuSpec()) { return(null); } analyzedPackage.ParseManagedSemantics(); analyzedPackage.UpdateForMissingQualifierConversionFunction(); return(analyzedPackage); }
/// <summary> /// Constructs a new NugetAnalyzed Package. /// </summary> /// <remarks> /// In case of failure it will log a detailed message and return null. /// </remarks> public static NugetAnalyzedPackage TryAnalyzeNugetPackage( FrontEndContext context, NugetFrameworkMonikers nugetFrameworkMonikers, [CanBeNull] XDocument nuSpec, PackageOnDisk packageOnDisk, Dictionary <string, INugetPackage> packagesOnConfig, bool doNotEnforceDependencyVersions) { Contract.Requires(context != null); Contract.Requires(packageOnDisk != null); var analyzedPackage = new NugetAnalyzedPackage(context, nugetFrameworkMonikers, packageOnDisk, packagesOnConfig, doNotEnforceDependencyVersions); analyzedPackage.ParseManagedSemantics(); if (nuSpec != null && !analyzedPackage.TryParseDependenciesFromNuSpec(nuSpec)) { return(null); } return(analyzedPackage); }