private bool IsConnected(IPackage package)
{
// We could cache the results of this lookup
if (Marker.Contains(package))
{
return true;
}
IEnumerable<IPackage> dependents = DependentsResolver.GetDependents(package, true);
return dependents.Any() && dependents.All(IsConnected);
}
}