diff --git a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/FeedManager.cs b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/FeedManager.cs index 80c295afba46..8cf85869be88 100644 --- a/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/FeedManager.cs +++ b/csharp/extractor/Semmle.Extraction.CSharp.DependencyFetching/FeedManager.cs @@ -107,19 +107,29 @@ public FeedManager(ILogger logger, IDotNet dotnet, IRegistryProxy? registryProxy lazyExplicitFeeds = new Lazy>(GetExplicitFeeds); lazyAllFeeds = new Lazy>(GetAllFeeds); - lazyReachableExplicitFeeds = new Lazy>(() => CheckSpecifiedFeeds(ExplicitFeeds)); + lazyReachableExplicitFeeds = new Lazy>(() => + { + logger.LogInfo("Discovering reachable explicit NuGet feeds."); + return CheckSpecifiedFeeds(ExplicitFeeds); + }); lazyReachableFeeds = new Lazy>(() => { + logger.LogInfo("Discovering reachable inherited NuGet feeds."); // Inherited feeds should only be used, if they are indeed reachable (as they may be environment specific). var reachableInheritedFeeds = CheckSpecifiedFeeds(InheritedFeeds); return ReachableExplicitFeeds.Union(reachableInheritedFeeds).ToImmutableHashSet(); }); lazyReachableFallbackFeeds = new Lazy>(() => { + logger.LogInfo("Discovering reachable fallback NuGet feeds."); var reachableFallbackFeeds = GetReachableFallbackNugetFeeds(); return reachableFallbackFeeds.ToImmutableHashSet(); }); - lazyReachableDefaultFeeds = new Lazy>(() => CheckSpecifiedFeeds(DefaultFeeds)); + lazyReachableDefaultFeeds = new Lazy>(() => + { + logger.LogInfo("Discovering reachable default NuGet feeds."); + return CheckSpecifiedFeeds(DefaultFeeds); + }); } public FeedManager(ILogger logger, IDotNet dotnet, IRegistryProxy? registryProxy, IFileProvider fileProvider) @@ -369,6 +379,7 @@ private List GetReachableFallbackNugetFeeds() private ImmutableHashSet GetExplicitFeeds() { + logger.LogInfo("Discovering explicit NuGet feeds from nuget.config files and private registries."); var nugetConfigs = fileProvider.NugetConfigs; // Find feeds that are explicitly configured in the NuGet configuration files that we found. @@ -398,6 +409,8 @@ private ImmutableHashSet GetExplicitFeeds() private ImmutableHashSet GetAllFeeds() { + logger.LogInfo("Discovering all NuGet feeds."); + var nugetConfigs = fileProvider.NugetConfigs; HashSet allFeeds = [];