private void Init() { localPackages = new Dictionary <Hash, LocalPackageInfo>(); var packageReferences = localPackageManager.ListPackages(deleteUnfinishedBuilds: true).ToArray(); var packagesInitData = new List <LocalPackageInfo>(); foreach (var pr in packageReferences) { PackageHashes hashes; PackageDownloadInfo download; PackageMeta meta; PackageSequenceInfo packageSequence; try { hashes = localPackageManager.ReadPackageHashesFile(pr); packageSequence = hashes.CreatePackageSequence(); download = localPackageManager.ReadPackageDownloadStatus(pr, packageSequence); meta = localPackageManager.ReadPackageMetadata(pr); var item = new LocalPackageInfo(pr, download, hashes, meta, packageSequence); packagesInitData.Add(item); } catch (Exception e) { logger.LogWarning(e, "Can't read package {0:s}", pr.Id); continue; } } UpdateLists(addToLocal: packagesInitData, removeFromLocal: null, addToDiscovered: Enumerable.Empty <DiscoveredPackage>()); }