From 6e04048d2cad70f4e6e682cb33c1071f0402888a Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Wed, 15 Jun 2016 16:04:17 -0500 Subject: [PATCH] Prepare for PEP 479 to take affect in Python 3.6+. Behavior in PEP 479 can be tested in Python 3.5 by adding: `from __future__ import generator_stop` --- toolz/itertoolz.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/toolz/itertoolz.py b/toolz/itertoolz.py index c2aa0122..b7b257a2 100644 --- a/toolz/itertoolz.py +++ b/toolz/itertoolz.py @@ -670,7 +670,7 @@ def sliding_window(n, seq): # An efficient FIFO data structure with maximum length d = collections.deque(itertools.islice(it, n), n) if len(d) != n: - raise StopIteration() + return d_append = d.append for item in it: yield tuple(d) @@ -722,7 +722,10 @@ def partition_all(n, seq): """ args = [iter(seq)] * n it = zip_longest(*args, fillvalue=no_pad) - prev = next(it) + try: + prev = next(it) + except StopIteration: + return for item in it: yield prev prev = item