anchor.diff:            |> Seq.map (fun x -> sprintf "<group targetFramework=\"%s\">%s</group>" x.FrameworkVersion (getDependenciesTags x.Dependencies))
             |> toLines
   
  +    let dependenciesXml = 
  +        sprintf "<dependencies>%s</dependencies>" (dependencies + dependenciesByFramework)
  +
  +    let xmlEncode (notEncodedText:string) =
  +        if isNullOrEmpty notEncodedText then "" else
  +        XText(notEncodedText).ToString()
  +
       let replacements =
           ["@build.number@",parameters.Version
            "@authors@",parameters.Authors |> separated ", "
            "@project@",parameters.Project
            "@summary@",if isNullOrEmpty parameters.Summary then "" else parameters.Summary
  -         "@dependencies@",sprintf "<dependencies>%s</dependencies>" (dependencies + dependenciesByFramework)
  -         "@description@",parameters.Description
  +         // Format the description to fit on a single line (remove \r\n and double-spaces)
  +         "@description@",parameters.Description.Replace("\r", "").Replace("\n", "").Replace("  ", " ")
            "@tags@",parameters.Tags
            "@releaseNotes@",parameters.ReleaseNotes
            "@copyright@",parameters.Copyright]
  +         |> List.map (fun (placeholder, replacement) -> placeholder, xmlEncode replacement)
  +         |> List.append (["@dependencies@", dependenciesXml])
   
       processTemplates replacements [specFile]
       tracefn "Created nuspec file %s" specFile
  
positive.code:     let targetFileName = targetDir @@ package.FileName
      tracefn "Downloading package %s %s from %s and saving it to %s" package.Id package.Version package.Url targetFileName
      webClient.DownloadFile(package.Url,targetFileName)
      targetFileName
negative.code: 
  open System
  open System.IO
  open System.Xml.Linq
  
  type NugetDependencies = (string*string) list
  type NugetFrameworkDependencies = {
  