* `iter_suppress` (thanks to jaraco, pochmann, and rhettinger)
* `filter_map` (thanks to struktured)
* `classify_unique` (thanks to haukex)
* `totient` (from the itertools docs)
* `reshape` (from the itertools docs)
* Changes to existing functions
* `factor`, `iter_index`, `sieve`, and `unique_justseen` were
updated to match the itertools docs
* `first` was was optimized (thanks to pochmann)
* `takewhile_inclusive` was was refactored (thanks to eltoder)
* `combination_with_replacement_index` was was optimized
(thanks to elliotwutingfeng and rhettinger)
* `nth_permutation`, `nth_combination_with_replacement`,
`combination_index`, and `combination_with_replacement_index`
were optimized (thanks to rhettinger)
* `batched` now accepts a `strict` argument (adapted from
itertools docs)
* `time_limited` was improved for Windows (thanks to haukex)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=51
- Update to 9.0.0
* Potentially breaking changes
grouper() no longer accepts an integer as its first argument. Previously this raised a DeprecationWarning.
collate() has been removed. Use the built-in heapq.merge() instead.
windowed() now yields nothing when its iterable is empty.
This library now advertises support for Python 3.7+.
* New functions
constrained_batches()
batched() (from the Python itertools docs)
polynomial_from_roots() (from the Python itertools docs)
sieve() (from the Python itertools docs)
* Other changes
Some documentation issues were fixed (thanks to nanouasyn)
OBS-URL: https://build.opensuse.org/request/show/1032025
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=43
* :func:`longest_common_prefix` (thanks to nanouasyn)
* :func:`iequals` (thanks to nanouasyn)
* `concurrent.futures.ThreadPoolExecutor` is now imported lazily in :func:`callback_iter`.
* :func:`tail` is now optimized for iterables with a fixed length.
* Some documentation issues were fixed (thanks to pochmann and timgates42)
* This library is now marked for Python 3.10 compatibility in PyPI (thanks to chayim)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=41
* The type stub for :func:`iter_except` was improved (thanks to MarcinKonowalczyk)
* Type stubs now ship with the source release (thanks to saaketp)
* The Sphinx docs were improved (thanks to MarcinKonowalczyk)
* New functions
* :func:`interleave_evenly` (thanks to mbugert)
* :func:`repeat_each` (thanks to FinalSh4re)
* :func:`chunked_even` (thanks to valtron)
* :func:`map_if` (thanks to sassbalint)
* :func:`zip_broadcast` (thanks to kalekundert)
* Changes to existing functions
* The type stub for :func:`chunked` was improved (thanks to PhilMacKay)
* The type stubs for :func:`zip_equal` and `zip_offset` were improved (thanks to maffoo)
* Building Sphinx docs locally was improved (thanks to MarcinKonowalczyk)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=34
* New functions
* :func:`convolve`
* :func:`product_index`, :func:`combination_index`, and :func:`permutation_index`
* :func:`value_chain`
* Changes to existing functions
* :func:`distinct_combinations` now uses a non-recursive algorithm
* :func:`pad_none` is now the preferred name for :func:`padnone`, though the latter remains available.
* :func:`pairwise` will now use the Python standard library implementation on Python 3.10+
* :func:`sort_together` now accepts a ``key`` argument
* :func:`seekable` now has a ``peek`` method, and can indicate whether the iterator it's wrapping is exhausted
* :func:`time_limited` can now indicate whether its iterator has expired
* The implementation of :func:`unique_everseen` was improved
* Other changes:
* Various documentation updates
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=29
* :func:`all_unique` (thanks to brianmaissy)
* :func:`nth_product` and :func:`nth_permutation` (thanks to N8Brooks)
* :func:`chunked` and :func:`sliced` now accept a ``strict`` parameter (thanks to shlomif and jtwool)
* Python 3.5 has reached its end of life and is no longer supported.
* Python 3.9 is officially supported.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=27
* windowed_complete() (thanks to MarcinKonowalczyk)
Changes to existing itertools:
* The is_sorted() implementation was improved (thanks to cool-RR)
* The groupby_transform() now accepts a reducefunc parameter.
* The last() implementation was improved (thanks to brianmaissy)
* Various documentation fixes (thanks to craigrosie, samuelstjean, PiCT0)
* The tests for distinct_combinations() were improved (thanks to Minabsapi)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=25
* New itertools
* :func:`mark_ends` (thanks to kalekundert)
* :func:`is_sorted`
* Changes to existing itertools:
* :func:`islice_extended` can now be used with real slices (thanks to cool-RR)
* The implementations for :func:`filter_except` and :func:`map_except` were improved (thanks to SergBobrovsky)
* Other changes
* Automated tests now enforce code style (using `black <https://github.com/psf/black>`__)
* The various signatures of :func:`islice_extended` and :func:`numeric_range` now appear in the docs (thanks to dsfulf)
* The test configuration for mypy was updated (thanks to blueyed)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=23
* New itertools
* :func:`zip_equal` (thanks to frankier and alexmojaki)
* :func:`split_at`, :func:`split_before`, :func:`split_after`, and :func:`split_when` all got a ``maxsplit`` paramter (thanks to jferard and ilai-deutel)
* :func:`split_at` now accepts a ``keep_separator`` parameter (thanks to jferard)
* :func:`distinct_permutations` can now generate ``r``-length permutations (thanks to SergBobrovsky and ilai-deutel)
* The :func:`windowed` implementation was improved (thanks to SergBobrovsky)
* The :func:`spy` implementation was improved (thanks to has2k1)
* Type stubs are now tested with ``stubtest`` (thankjs to ilai-deutel)
* Tests now run with ``python -m unittest`` instead of ``python setup.py test`` (thanks to jdufresne)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=21
* The .pyi files for typing were updated. (thanks to blueyed and ilai-deutel)
* :func:`numeric_range` now behaves more like the built-in :func:`range`. (thanks to jferard)
* :func:`bucket` now allows for enumerating keys. (thanks to alexchandel)
* :func:`sliced` now should now work for numpy arrays. (thanks to sswingle)
* :func:`seekable` now has a ``maxlen`` parameter.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=19
* Bug fixes
* The type stub files are now part of the wheel distribution (thanks to keisheiled)
* The type stub files now work for functions imported from the
root package (thanks to keisheiled)
* New itertools and other additions
* This library now ships type hints for use with mypy.
(thanks to ilai-deutel for the implementation, and to gabbard and fmagin for assistance)
* :func:`split_when` (thanks to jferard)
* :func:`repeat_last` (thanks to d-ryzhikov)
* Changes to existing itertools:
* The implementation for :func:`set_partitions` was improved. (thanks to jferard)
* :func:`partition` was optimized for expensive predicates. (thanks to stevecj)
* :func:`unique_everseen` and :func:`groupby_transform` were re-factored. (thanks to SergBobrovsky)
* The implementation for :func:`difference` was improved. (thanks to Jabbey92)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=15
- update to version 7.2.0
* new itertools: distinct_combinations, set_partitions, filter_except,
map_except, ichunked, only, time_limited, partitions, substrings_indexes
* Python 2.7 is no longer supported. All future releases will target
the active versions of Python 3.
* The six library is no longer a dependency.
* collapse now treats bytes objects the same as str objects.
* numeric_range now supports ranges specified by datetime.datetime
and datetime.timedelta objects
OBS-URL: https://build.opensuse.org/request/show/726483
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=12
- update to version 5.0.0
* new itertools: split_into, unzip, substrings
* first_true now returns None by default.
* Some code for old Python versions was removed
* Tests now run properly on 32-bit versions of Python
* Newer versions of CPython and PyPy are now tested against
4.3.0
* new itertools: last, replace, rlocate
* locate can now search for multiple items
* The docs now include a nice table of tools
- There are newer versions of more-itertools but this is the last
version which supports Python 2.7
OBS-URL: https://build.opensuse.org/request/show/705239
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-more-itertools?expand=0&rev=10