anchor.diff:          | NuGetV3 n -> n.Authentication
           | LocalNuGet(n,_) -> CredentialProviders.GetAuthenticationProvider n
   
  -    static member NuGetV2Source url = NuGetV2 { Url = url; Authentication = CredentialProviders.GetAuthenticationProvider url }
  -    static member NuGetV3Source url = NuGetV3 { Url = url; Authentication = CredentialProviders.GetAuthenticationProvider url }
  +    static member NuGetV2Source url = NuGetV2 { Url = url; ProtocolVersion = NugetProtocolVersion.ProtocolVersion2; Authentication  = CredentialProviders.GetAuthenticationProvider url }
  +    static member NuGetV3Source url = NuGetV3 { Url = url; ProtocolVersion = NugetProtocolVersion.ProtocolVersion3; Authentication  = CredentialProviders.GetAuthenticationProvider url }
   
       static member FromCache (cache:Cache) = LocalNuGet(cache.Location,Some cache)
   
  
positive.code:                 parts.[1].Replace("\"","").TrimEnd([| '/' |])
  
          let feed = normalizeFeedUrl source
          PackageSource.Parse(feed, parseAuth(line, feed))
  
      static member Parse(source,auth) =
          match tryParseWindowsStyleNetworkPath source with
  
negative.code:     | MyGet
      | UnknownNuGetServer
  
  type NugetProtocolVersion =
      | ProtocolVersion2
      | ProtocolVersion3
  
  [<CustomComparison;CustomEquality>]
  type NuGetSource =
      { Url : string
        ProtocolVersion: NugetProtocolVersion
        Authentication : AuthProvider }
      member x.BasicAuth isRetry =
          x.Authentication.Retrieve isRetry
  