Skip to content

Upgrading more-itertools 10 to 11

Breaking10.8.0 → 11.2.1Breaking9Platform2New11Changed16Fixed2Other1

BreakingUpgrade verdict

9 breaking changes and 2 platform requirement changes.

  • zip_equal was removed in 11.0.0.
  • This release restores pairwise, which was mistakenly removed in 11.0.0 instead of being deprecated.
  • Python 3.9 support was dropped, since it went EOL on 2025-10-31.
  • iequals no longer returns True when called with ([], [ANY]) (thanks to rhettinger and pochmann3).
Top 5 of 11 that need code or config changes

Python requirement changed in 11.2.0: >=3.9 → >=3.11.

Breaking9
zip_equal was removed in 11.0.0.
zip_equalDeprecationWarning
This release restores pairwise, which was mistakenly removed in 11.0.0 instead of being deprecated.
pairwiseitertools.pairwise
Python 3.9 support was dropped, since it went EOL on 2025-10-31.
iequals no longer returns True when called with ([], [ANY]) (thanks to rhettinger and pochmann3).
iequalsTrue
callback_iter is deprecated.
callback_iter
The pred argument for locate and replace must now be able to handle a variable number of arguments.
predlocatereplace
unique_everseen now raises TypeError when input elements are not hashable.
unique_everseenTypeError
windowed now raises ValueError when given a window size of 0 (thanks to rhettinger and brevzin).
windowedValueError
Parameter names for flatten, iter_except, repeatfunc, prepend, transpose, and sum_of_squares have been changed.
flatteniter_exceptrepeatfuncprependtransposesum_of_squares
Platform2
Drops official support for Python 3.10.
Adds official support for Python 3.15.