Browse Source

Adds Warning to chunks

Ask Solem 8 years ago
parent
commit
d7d614e0ad
1 changed files with 7 additions and 0 deletions
  1. 7 0
      celery/utils/functional.py

+ 7 - 0
celery/utils/functional.py

@@ -117,6 +117,13 @@ def firstmethod(method, on_call=None):
 def chunks(it, n):
     """Split an iterator into chunks with `n` elements each.
 
+    Warning:
+        ``it`` must be an actual iterator, if you pass this a
+        concrete sequence will get you repeating elements.
+
+        So ``chunks(iter(range(1000)), 10)`` is fine, but
+        ``chunks(range(1000), 10)`` is not.
+
     Example:
         # n == 2
         >>> x = chunks(iter([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]), 2)