As of Python 3.13, itertools.batched has a strict parameter that defaults to False. By default, the batches might not be of the same size, which may cause subtle bugs. Whenstrict=True, it raises ValueError if the final batch is not the same size as the rest.
This seems analogous to the existing rule B905 which requires an explicit strict= parameter for zip. Hence, I think it makes sense if there is a similar rule for itertools.batched.
I also created an issue flake8-bugbear which seems like a natural place for the rule given the similarity to B905.
Searched keywords: itertools.batched, itertools, batched
As of Python 3.13,
itertools.batchedhas astrictparameter that defaults toFalse. By default, the batches might not be of the same size, which may cause subtle bugs. Whenstrict=True, it raisesValueErrorif the final batch is not the same size as the rest.This seems analogous to the existing rule
B905which requires an explicitstrict=parameter forzip. Hence, I think it makes sense if there is a similar rule foritertools.batched.I also created an issue
flake8-bugbearwhich seems like a natural place for the rule given the similarity toB905.Searched keywords:
itertools.batched,itertools,batched