anchor.diff:      let sourcelink optionConfig args =
           tool optionConfig "sourcelink" args
   
  -
  -
  -Target.create "Clean" <| fun _ ->
  +//-----------------------------------------------------------------------------
  +// Target Implementations
  +//-----------------------------------------------------------------------------
  +
  +let clean _ =
       ["bin"; "temp" ; distDir; coverageReportDir]
       |> Shell.cleanDirs
   
  
positive.code:     ]
      |> Seq.iter Shell.rm
  
  Target.create "DotnetRestore" <| fun _ ->
      Paket.restore(fun p ->
          {p with ToolPath = __SOURCE_DIRECTORY__ </> ".paket" </> (if Environment.isWindows then "paket.exe" else "paket")})
  
      [sln ; toolsDir]
      |> Seq.map(fun dir -> fun () ->
          let args =
              [
                  sprintf "/p:PackageVersion=%s" release.NugetVersion
              ] |> String.concat " "
          DotNet.restore(fun c ->
              { c with
  
negative.code:     let cancelEvent = Console.CancelKeyPress |> Async.AwaitEvent |> Async.RunSynchronously
      cancelEvent.Cancel <- true
  
  let generateAssemblyInfo _ =
  
      let (|Fsproj|Csproj|Vbproj|) (projFileName:string) =
          match projFileName with
          | f when f.EndsWith("fsproj") -> Fsproj
          | f when f.EndsWith("csproj") -> Csproj
          | f when f.EndsWith("vbproj") -> Vbproj
          | _                           -> failwith (sprintf "Project file %s not supported. Unknown project type." projFileName)
  
      let releaseChannel =
          match releaseNotes.SemVer.PreRelease with
          | Some pr -> pr.Name
          | _ -> "release"
      let getAssemblyInfoAttributes projectName =
          [ AssemblyInfo.Title (projectName)
            AssemblyInfo.Product productName
            AssemblyInfo.Version releaseNotes.AssemblyVersion
            AssemblyInfo.Metadata("ReleaseDate", releaseNotes.Date.Value.ToString("o"))
            AssemblyInfo.FileVersion releaseNotes.AssemblyVersion
            AssemblyInfo.InformationalVersion releaseNotes.AssemblyVersion
            AssemblyInfo.Metadata("ReleaseChannel", releaseChannel)
            AssemblyInfo.Metadata("GitHash", Git.Information.getCurrentSHA1(null))
          ]
  