similar to #1716 I think Foldable.iterateRight will break if Eval.always are always used.
I think the fix is that we must accept an Iterable[A] rather than Iterator[A] and call .iterator internally. Basically add a Eval.always(iter.iterator).flatMap { ... } and I think it should be safe.
Of course, we need to demonstrate the problem with a failing test first.
similar to #1716 I think
Foldable.iterateRightwill break ifEval.alwaysare always used.I think the fix is that we must accept an
Iterable[A]rather thanIterator[A]and call.iteratorinternally. Basically add aEval.always(iter.iterator).flatMap { ... }and I think it should be safe.Of course, we need to demonstrate the problem with a failing test first.