make iterables propagate failure by rejecting the deferred