1 write to _request
NuGet.Commands (1)
RestoreCommand\RestoreCommand.cs (1)
169
_request
= request ?? throw new ArgumentNullException(nameof(request));
175 references to _request
NuGet.Commands (175)
RestoreCommand\RestoreCommand.cs (175)
173
if (
_request
.LockFileVersion < LockFileFormat.LegacyVersion ||
_request
.LockFileVersion > LockFileFormat.Version)
177
message: $"Assets file version {
_request
.LockFileVersion} is not supported.");
183
var collectorLogger = new RestoreCollectorLogger(
_request
.Log, collectorLoggerHideWarningsAndErrors);
185
collectorLogger.ApplyRestoreInputs(
_request
.Project);
190
_isLockFileEnabled = PackagesLockFileUtilities.IsNuGetLockFileEnabled(
_request
.Project);
191
_enableNewDependencyResolver =
_request
.Project.RuntimeGraph.Supports.Count == 0 && ShouldUseNewResolverWithLockFile(_isLockFileEnabled,
_request
.Project) && !
_request
.Project.RestoreMetadata.UseLegacyDependencyResolver;
192
EnvironmentVariableReader =
_request
.EnvironmentVariableReader;
214
int httpSourcesCount =
_request
.DependencyProviders.RemoteProviders.Count(e => e.IsHttp);
216
_request
.Project.RestoreMetadata?.RestoreAuditProperties,
217
_request
.Project.FilePath,
220
telemetry.TelemetryEvent[PackagesWithFloatingVersionCount] = CountPackagesWithFloatingVersion(
_request
.Project);
227
_request
.DependencyProviders.GlobalPackages
230
localRepositories.AddRange(
_request
.DependencyProviders.FallbackPackageFolders);
232
var contextForProject = CreateRemoteWalkContext(
_request
, _logger);
239
if (NoOpRestoreUtilities.IsNoOpSupported(
_request
))
252
bool success = !
_request
.AdditionalMessages?.Any(m => m.Level == LogLevel.Error) ?? true;
255
var packagesLockFilePath = PackagesLockFileUtilities.GetNuGetLockFilePath(
_request
.Project);
266
AnalyzePruningResults(
_request
.Project, telemetry.TelemetryEvent, _logger);
283
if (CommandsEventSource.Instance.IsEnabled()) CommandsEventSource.Instance.RestoreCommand_BuildAssetsFileStart(
_request
.Project.FilePath);
286
_request
.ExistingLockFile,
287
_request
.Project,
292
if (CommandsEventSource.Instance.IsEnabled()) CommandsEventSource.Instance.RestoreCommand_BuildAssetsFileStop(
_request
.Project.FilePath);
302
_request
.Project,
307
_request
.ValidateRuntimeAssets,
350
_request
.ExistingLockFile,
356
dependencyGraphSpecFilePath: NoOpRestoreUtilities.GetPersistedDGSpecFilePath(
_request
),
357
dependencyGraphSpec:
_request
.DependencyGraphSpec,
358
_request
.ProjectStyle,
363
DoNotWriteDependencyGraphSpec =
_request
.Project.RestoreMetadata.RestoreDoNotWriteDependencyGraphSpec
368
PopulateAnalyzerAssetsTelemetry(telemetry.TelemetryEvent, assetsFile, graphs,
_request
.Project);
379
success &= AreCentralVersionRequirementsSatisfied(
_request
, httpSourcesCount);
383
success &= AreFloatingVersionsCompatibleWithPackageSourceCooldown(
_request
, _logger);
391
telemetry.TelemetryEvent.AddPiiData(ProjectFilePath,
_request
.Project.FilePath);
392
bool isPackageSourceMappingEnabled =
_request
.PackageSourceMapping?.IsEnabled ?? false;
394
telemetry.TelemetryEvent[SourcesCount] =
_request
.DependencyProviders.RemoteProviders.Count;
396
telemetry.TelemetryEvent[LocalSourcesCount] =
_request
.DependencyProviders.RemoteProviders.Count - httpSourcesCount;
397
telemetry.TelemetryEvent[FallbackFoldersCount] =
_request
.DependencyProviders.FallbackPackageFolders.Count;
399
telemetry.TelemetryEvent[UseLegacyDependencyResolver] =
_request
.Project.RestoreMetadata.UseLegacyDependencyResolver;
401
telemetry.TelemetryEvent[TargetFrameworks] = GetTargetFrameworksAsString(
_request
.Project.TargetFrameworks);
402
telemetry.TelemetryEvent[TargetFrameworksCount] =
_request
.Project.TargetFrameworks.Count;
403
telemetry.TelemetryEvent[RuntimeIdentifiersCount] =
_request
.Project.RuntimeGraph.Runtimes.Count;
404
telemetry.TelemetryEvent[TreatWarningsAsErrors] =
_request
.Project.RestoreMetadata.ProjectWideWarningProperties.AllWarningsAsErrors;
405
telemetry.TelemetryEvent[SDKAnalysisLevel] =
_request
.Project.RestoreMetadata.SdkAnalysisLevel;
406
telemetry.TelemetryEvent[UsingMicrosoftNETSdk] =
_request
.Project.RestoreMetadata.UsingMicrosoftNETSdk;
407
telemetry.TelemetryEvent[NETSdkVersion] =
_request
.Project.RestoreSettings.SdkVersion;
408
telemetry.TelemetryEvent[IsPackageInstallationTrigger] = !
_request
.IsRestoreOriginalAction;
409
telemetry.TelemetryEvent[UsesLegacyPackagesDirectory] = !
_request
.IsLowercasePackagesDirectory;
414
var isCpvmEnabled =
_request
.Project.RestoreMetadata?.CentralPackageVersionsEnabled ?? false;
419
var isCentralPackageTransitivePinningEnabled =
_request
.Project.RestoreMetadata?.CentralPackageTransitivePinningEnabled ?? false;
424
telemetry.TelemetryEvent[AnalyzerAssetsEnabled] =
_request
.Project.RestoreMetadata?.RestoreEnableAnalyzerAssets ?? false;
426
PopulatePruningEnabledTelemetry(
_request
.Project, telemetry.TelemetryEvent);
598
if (CommandsEventSource.Instance.IsEnabled()) CommandsEventSource.Instance.RestoreCommand_CalcNoOpRestoreStart(
_request
.Project.FilePath);
600
if (CommandsEventSource.Instance.IsEnabled()) CommandsEventSource.Instance.RestoreCommand_CalcNoOpRestoreStop(
_request
.Project.FilePath);
603
telemetry.TelemetryEvent[ForceRestore] = !
_request
.AllowNoOp;
606
if (noOpCacheFileEvaluation &&
_request
.AllowNoOp && !
_request
.RestoreForceEvaluate)
610
var noOpSuccess = NoOpRestoreUtilities.VerifyRestoreOutput(
_request
, cacheFile);
618
_logger.LogVerbose(string.Format(CultureInfo.CurrentCulture, Strings.Log_RestoreNoOpFinish,
_request
.Project.Name));
637
_request
.LockFilePath,
638
new Lazy<LockFile>(() => LockFileUtilities.GetLockFile(
_request
.LockFilePath, _logger)),
640
_request
.Project.RestoreMetadata.CacheFilePath,
641
_request
.ProjectStyle,
648
_logger.LogVerbose(string.Format(CultureInfo.CurrentCulture, Strings.Log_RestoreNoOpDGChanged,
_request
.Project.Name));
661
if (
_request
.DependencyProviders.RemoteProviders != null)
663
foreach (var remoteProvider in
_request
.DependencyProviders.RemoteProviders)
671
if (auditEnabled &&
_request
.DependencyProviders.VulnerabilityInfoProviders != null)
673
foreach (var vulnerabilityInfoProvider in
_request
.DependencyProviders.VulnerabilityInfoProviders)
699
_request
.Project.RestoreMetadata.SdkAnalysisLevel,
700
_request
.Project.RestoreMetadata.UsingMicrosoftNETSdk,
757
if (CommandsEventSource.Instance.IsEnabled()) CommandsEventSource.Instance.RestoreCommand_BuildRestoreGraphStart(
_request
.Project.FilePath);
762
(resultSuccessful, graphs) = await ExecuteRestoreAsync(
_request
.DependencyProviders.GlobalPackages,
_request
.DependencyProviders.FallbackPackageFolders, contextForProject, telemetry, success, token);
767
(resultSuccessful, graphs) = await ExecuteLegacyRestoreAsync(
_request
.DependencyProviders.GlobalPackages,
_request
.DependencyProviders.FallbackPackageFolders, contextForProject, token, telemetry);
771
if (CommandsEventSource.Instance.IsEnabled()) CommandsEventSource.Instance.RestoreCommand_BuildRestoreGraphStop(
_request
.Project.FilePath);
785
var frameworkRuntimePairs = CreateFrameworkRuntimeDefinitions(
_request
.Project, RequestRuntimeUtility.GetRestoreRuntimes(
_request
));
789
var restoreTargetGraph = RestoreTargetGraph.Create(
_request
.Project.RuntimeGraph, Enumerable.Empty<GraphNode<RemoteResolveResult>>(), contextForProject, frameworkRuntimePairs[i].TargetAlias, frameworkRuntimePairs[i].Framework, frameworkRuntimePairs[i].RuntimeIdentifier);
820
cacheFilePath = NoOpRestoreUtilities.GetCacheFilePath(
_request
, assetsFile);
823
if (
_request
.LockFilePath == null
824
&&
_request
.ProjectStyle == ProjectStyle.DotnetCliTool)
826
_request
.LockFilePath = assetFilePath;
832
_request
.Project,
836
_request
,
876
if (
_request
.AdditionalMessages != null)
878
logsEnumerable = logsEnumerable.Concat(
_request
.AdditionalMessages);
889
cacheFile.ProjectFilePath =
_request
.Project.FilePath;
891
cacheFile.ExpectedPackageFilePaths = NoOpRestoreUtilities.GetRestoreOutput(
_request
, assetsFile);
956
_request
.Project.RestoreMetadata.RestoreAuditProperties,
957
_request
.Project.FilePath,
959
_request
.DependencyProviders.VulnerabilityInfoProviders,
960
_request
.Project.TargetFrameworks,
1019
IEnumerable<NuGetFramework> badPlatforms =
_request
.Project.TargetFrameworks
1039
return EnsureNoAliasesWithDisallowedCharacters(
_request
.Project, _logger);
1312
var project =
_request
.Project;
1329
foreach (var frameworkInfo in
_request
.Project.TargetFrameworks)
1391
foreach (TargetFrameworkInformation targetFrameworkInformation in
_request
.Project.TargetFrameworks)
1521
if (
_request
.Project.RestoreMetadata.ProjectStyle == ProjectStyle.ProjectJson)
1573
if (
_request
.Project.RestoreMetadata.ProjectStyle == ProjectStyle.DotnetCliTool)
1578
return pathComparer.Equals(cacheFile.ProjectFilePath,
_request
.Project.FilePath);
1633
var restorePackagesWithLockFile =
_request
.Project.RestoreMetadata?.RestoreLockProperties.RestorePackagesWithLockFile;
1644
await
_request
.Log.LogAsync(RestoreLogMessage.CreateError(NuGetLogCode.NU1005, message));
1653
&&
_request
.IsRestoreOriginalAction
1654
&&
_request
.RestoreForceEvaluate
1655
&&
_request
.Project.RestoreMetadata.RestoreLockProperties.RestoreLockedMode
1657
_request
.Project.RestoreMetadata.SdkAnalysisLevel,
1658
_request
.Project.RestoreMetadata.UsingMicrosoftNETSdk,
1661
await
_request
.Log.LogAsync(RestoreLogMessage.CreateWarning(NuGetLogCode.NU1512, Strings.Warning_RestoreLockedModeAndForceEvaluate));
1665
if (!
_request
.RestoreForceEvaluate && File.Exists(packagesLockFilePath))
1671
if (
_request
.DependencyGraphSpec != null)
1676
LockFileValidationResult lockFileResult = PackagesLockFileUtilities.IsLockFileValid(
_request
.DependencyGraphSpec, packagesLockFile);
1696
_request
.Project.GetTargetFramework(target.TargetFramework)?.TargetAlias :
1701
else if (
_request
.IsRestoreOriginalAction &&
_request
.Project.RestoreMetadata.RestoreLockProperties.RestoreLockedMode)
1727
var noOpDgSpec = NoOpRestoreUtilities.GetNoOpDgSpec(
_request
);
1729
if (
_request
.ProjectStyle == ProjectStyle.DotnetCliTool &&
_request
.AllowNoOp)
1732
NoOpRestoreUtilities.UpdateRequestBestMatchingToolPathsIfAvailable(
_request
);
1738
if (CacheFileExists(
_request
.Project.RestoreMetadata.CacheFilePath, out cacheFileAge))
1740
cacheFile = FileUtility.SafeRead(
_request
.Project.RestoreMetadata.CacheFilePath, (stream, path) => CacheFileFormat.Read(stream, _logger, path));
1757
if (
_request
.ProjectStyle == ProjectStyle.DotnetCliTool)
1762
_request
.LockFilePath = null;
1763
_request
.Project.RestoreMetadata.CacheFilePath = null;
1790
var projectLockFilePath =
_request
.LockFilePath;
1794
if (
_request
.ProjectStyle == ProjectStyle.DotnetCliTool)
1796
var toolName = ToolRestoreUtility.GetToolIdOrNullFromSpec(
_request
.Project);
1803
var toolPathResolver = new ToolPathResolver(
_request
.PackagesDirectory);
1812
projectLockFilePath = Path.Combine(
_request
.RestoreOutputPath, LockFileFormat.AssetsFileName);
1827
if (!
_request
.IsLowercasePackagesDirectory)
1829
var originalCase = new OriginalCaseGlobalPackageFolder(
_request
, _operationId);
1863
if (DoesProjectToolsetSupportsDuplicateFrameworks(
_request
.Project))
1865
return
_request
.LockFileVersion;
1927
bool isPinningEnabled =
_request
.Project.RestoreMetadata?.CentralPackageVersionsEnabled == true &&
_request
.Project.RestoreMetadata?.CentralPackageTransitivePinningEnabled == true; // If pinning is enabled for this project, the error message can provide details about adding a PackageVersion.
1948
_request
.Project.Name)
2078
if (await ErrorForDuplicateFrameworks(
_request
, _logger))
2084
if (
_request
.Project.TargetFrameworks.Count == 0)
2086
var message = string.Format(CultureInfo.CurrentCulture, Strings.Log_ProjectDoesNotSpecifyTargetFrameworks,
_request
.Project.Name,
_request
.Project.FilePath);
2092
_logger.LogInformation(string.Format(CultureInfo.CurrentCulture, Strings.Log_RestoringPackages,
_request
.Project.FilePath));
2097
var updatedExternalProjects = GetProjectReferences(
_request
);
2108
Name =
_request
.Project.Name,
2109
VersionRange = new VersionRange(
_request
.Project.Version),
2115
var runtimeIds = RequestRuntimeUtility.GetRestoreRuntimes(
_request
);
2116
var projectFrameworkRuntimePairs = CreateFrameworkRuntimeDefinitions(
_request
.Project, runtimeIds);
2117
var hasSupports =
_request
.Project.RuntimeGraph.Supports.Count > 0;
2119
var projectRestoreRequest = new ProjectRestoreRequest(
_request
,
_request
.Project,
_request
.ExistingLockFile, _logger)
2173
foreach (FrameworkRuntimeDefinition frameworkRuntimePair in CreateFrameworkRuntimeDefinitions(
_request
.Project, RequestRuntimeUtility.GetRestoreRuntimes(
_request
)))
2175
allGraphs.Add(RestoreTargetGraph.Create(
_request
.Project.RuntimeGraph, Enumerable.Empty<GraphNode<RemoteResolveResult>>(), context, frameworkRuntimePair.TargetAlias, frameworkRuntimePair.Framework, frameworkRuntimePair.RuntimeIdentifier));
2180
foreach (var profile in
_request
.Project.RuntimeGraph.Supports)
2202
_request
.CompatibilityProfiles.Add(pair);
2207
if (success &&
_request
.CompatibilityProfiles.Any())
2214
_request
.CompatibilityProfiles,
2261
if (
_request
.Project.TargetFrameworks.Count == 0)
2263
var message = string.Format(CultureInfo.CurrentCulture, Strings.Log_ProjectDoesNotSpecifyTargetFrameworks,
_request
.Project.Name,
_request
.Project.FilePath);
2270
var shouldDoDuplicatesCheck = !DoesProjectToolsetSupportsDuplicateFrameworks(
_request
.Project);
2274
if (await ErrorForDuplicateFrameworks(
_request
, _logger))
2281
var projectRestoreRequest = new ProjectRestoreRequest(
_request
,
_request
.Project,
_request
.ExistingLockFile, _logger)
2292
_logger.LogInformation(string.Format(CultureInfo.CurrentCulture, Strings.Log_RestoringPackages,
_request
.Project.FilePath));
2297
var updatedExternalProjects = GetProjectReferences(
_request
);
2304
DependencyGraphResolver dependencyGraphResolver = new(_logger,
_request
, telemetryActivity);
2339
foreach (FrameworkRuntimeDefinition frameworkRuntimePair in CreateFrameworkRuntimeDefinitions(
_request
.Project, RequestRuntimeUtility.GetRestoreRuntimes(
_request
)))
2341
graphs.Add(RestoreTargetGraph.Create(
_request
.Project.RuntimeGraph, Enumerable.Empty<GraphNode<RemoteResolveResult>>(), context, frameworkRuntimePair.TargetAlias, frameworkRuntimePair.Framework, frameworkRuntimePair.RuntimeIdentifier));
2346
foreach (var profile in
_request
.Project.RuntimeGraph.Supports)
2366
_request
.CompatibilityProfiles.Add(pair);