let collect results = function
|{result = Failure (f) ; request = Package r } ->
List.iter (fun reason ->
match reason with
|Conflict (i,j,_) ->
add results.summary reason r;
results.conflict <- results.conflict + 1
|Missing (i,vpkgs) ->
add results.summary reason r;
results.missing <- results.missing + 1
|_ -> ()
) (f ())
|_ -> ()