anchor.diff:          Paket.Rid.Of(ridString)
   
       // get runtime graph
  +    if printDetails then Trace.log <| sprintf "Calculating the runtime graph..."
       let graph =
           lockGroup.Resolution
           |> Seq.map (fun kv -> kv.Value)
  
positive.code:   let lockFilePath = Paket.DependenciesFile.FindLockfile paketDependencies.DependenciesFile
    let parent s = Path.GetDirectoryName s
    let comb name s = Path.Combine(s, name)
    let paketDependenciesHashFile = cacheDir |> comb "paket.depedencies.sha1"
    let saveDependenciesHash () =
      File.WriteAllText (paketDependenciesHashFile, HashGeneration.getStringHash (File.ReadAllText paketDependencies.DependenciesFile))
    let restoreOrUpdate () =
      if printDetails then Trace.log "Restoring with paket..."
  
      // Check if lockfile is outdated
      let hash = HashGeneration.getStringHash (File.ReadAllText paketDependencies.DependenciesFile)
      if File.Exists lockFilePath.FullName && (not <| File.Exists paketDependenciesHashFile || File.ReadAllText paketDependenciesHashFile <> hash) then
        if printDetails then Trace.log "paket lockfile is outdated..."
        // Maybe for "in-line" but never always...
        //File.Delete lockFilePath.FullName
  
      // Update
      if not <| File.Exists lockFilePath.FullName then
        paketDependencies.UpdateGroup(groupStr, false, false, false, false, false, Paket.SemVerUpdateMode.NoRestriction, false)
        |> ignore
        saveDependenciesHash ()
  
      // Restore
      paketDependencies.Restore((*false, group, [], false, true*))
  
negative.code:         |> RuntimeGraph.mergeSeq
  
      // Retrieve assemblies
      if printDetails then Trace.log <| sprintf "Retrieving the assemblies..."
      lockGroup.Resolution
      |> Seq.map (fun kv ->
        let packageName = kv.Key
  