fix: add input validation to chunks() for size < 1

This commit is contained in:
KooshaPari 2026-09-12 23:13:52 -07:00
commit d5b4235968
2 changed files with 12 additions and 0 deletions

View file

@ -577,6 +577,8 @@ def chunks(sequence: Iterable[T], size: int) -> Iterable[Iterable[T]]:
:param sequence: Any Python iterator
:param size: The size of each chunk
"""
if size < 1:
raise ValueError(f"chunk size must be at least 1, got {size}")
iterator = iter(sequence)
for item in iterator:
yield itertools.chain([item], itertools.islice(iterator, size - 1))