anchor.diff:                  match runtime with
                   | Some r -> r
                   | None -> "current"
  -            DotnetPublish (fun c ->
  -                { c with
  -                    Runtime = runtime
  -                    Framework = Some "netcoreapp1.0"
  -                    OutputPath = Some (nugetDir @@ "dotnetcore" @@ projName @@ runtimeName)
  -                }) proj
  +            try
  +                DotnetPublish (fun c ->
  +                    { c with
  +                        Runtime = runtime
  +                        Framework = Some "netcoreapp1.0"
  +                        OutputPath = Some (nugetDir @@ "dotnetcore" @@ projName @@ runtimeName)
  +                    }) proj
  +                runtimeWorked <- true
  +            with e ->
  +                printfn "Runtime %s failed to publish!" runtimeName
           )
       )
  +
  +    if not runtimeWorked then failwith "No runtime worked!"
   
       // Publish portable as well (see https://docs.microsoft.com/en-us/dotnet/articles/core/app-types)
       let netcoreFsproj = "src/app/Fake.netcore/Fake.netcore.fsproj"
  
positive.code:   [ "win7-x86"; "win7-x64"; "osx.10.11-x64"; "ubuntu.14.04-x64"; "ubuntu.16.04-x64" ]
  
  Target "DotnetPackage" (fun _ ->
      // dotnet pack
      netCoreProjs
      -- "src/app/Fake.netcore/Fake.netcore.fsproj"
  
negative.code:             }) proj
      )
  
      let mutable runtimeWorked = false
      // dotnet publish
      runtimes
      |> List.map Some
  