anchor.diff:              |> Array.map Async.Choice
               |> Async.Parallel
               |> Async.RunSynchronously
  -    
  +
           versionResponse
           |> Array.zip sources
  -        |> Array.choose (fun ((_,s),v) -> 
  +        |> Array.choose (fun ((_,s),v) ->
               match v with
  -            | Some v when Array.isEmpty v |> not -> 
  +            | Some v when Array.isEmpty v |> not ->
                   try
                       let errorFile = getVersionsFailedCacheFileName s
                       if errorFile.Exists then
                           File.Delete(errorFile.FullName)
                   with _ -> ()
                   Some (s,v)
  -            | _ -> 
  +            | _ ->
                   try
                       let errorFile = getVersionsFailedCacheFileName s
                       if errorFile.Exists |> not then
  
positive.code: /// Finds all analyzer files in a nuget package.
  let GetAnalyzerFiles(targetFolder) = getFiles targetFolder "analyzers" "analyzer dlls"
  
  let rec private getPackageDetails root force (sources:PackageSource list) packageName (version:SemVerInfo) : PackageResolver.PackageDetails = 
     
      let tryV2 source (nugetSource:NugetSource)  = async {
          let! result = 
              getDetailsFromNuGet 
                  force 
                  (nugetSource.Authentication |> Option.map toBasicAuth)
                  nugetSource.Url 
                  packageName
                  version
          return Some(source,result)  }
  
negative.code: 
                      request.Proxy <- Utils.getDefaultProxyFor source.Url
                      use! httpResponse = request.AsyncGetResponse()
  
                      use httpResponseStream = httpResponse.GetResponseStream()
  
                      let bufferSize = 4096
                      let buffer : byte [] = Array.zeroCreate bufferSize
                      let bytesRead = ref -1
  
                      use fileStream = File.Create(targetFileName)
  
                      while !bytesRead <> 0 do
                          let! bytes = httpResponseStream.AsyncRead(buffer, 0, bufferSize)
                          bytesRead := bytes
  