Skip to content
This repository has been archived by the owner on May 3, 2023. It is now read-only.

Update more-itertools to 9.1.0 #231

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

pyup-bot
Copy link
Collaborator

This PR updates more-itertools from 7.2.0 to 9.1.0.

Changelog

9.0.0

------

* Potentially breaking changes
 * :func:`grouper` no longer accepts an integer as its first argument. Previously this raised a ``DeprecationWarning``.
 * :func:`collate` has been removed. Use the built-in :func:`heapq.merge` instead.
 * :func:`windowed` now yields nothing when its iterable is empty.
 * This library now advertises support for Python 3.7+.

* New functions
 * :func:`constrained_batches`
 * :func:`batched` (from the Python itertools docs)
 * :func:`polynomial_from_roots` (from the Python itertools docs)
 * :func:`sieve` (from the Python itertools docs)

* Other changes
 * Some documentation issues were fixed (thanks to nanouasyn)

8.14.0

------

* New functions
 * :func:`longest_common_prefix` (thanks to nanouasyn)
 * :func:`iequals` (thanks to nanouasyn)

* Changes to existing functions
 * `concurrent.futures.ThreadPoolExecutor` is now imported lazily in :func:`callback_iter`.
 * :func:`tail` is now optimized for iterables with a fixed length.

* Other changes
 * 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)

8.13.0

------

* New functions
 * The :func:`subslices` recipe from the `itertools` docs was added (thanks to rhettinger)

* Changes to existing functions
 * The :func:`ichunked` function is now more efficient (thanks to hjtran0 and seanmacavaney)
 * The :func:`difference` function is now more efficient (thanks to Masynchin)
 * The :func:`grouper` recipe now has more features, mirroring the one in the `itertools` docs (thanks to rhettinger)

* Other changes
 * Some documentation issues were fixed (thanks to medvied and Freed-Wu)
 * The `more_itertools` package is now built with `flit` (thanks to mgorny)

8.12.0

------

* Bug fixes
 * Some documentation issues were fixed (thanks to Masynchin, spookylukey, astrojuanlu, and stephengmatthews)
 * Python 3.5 support was temporarily restored (thanks to mattbonnell)

8.11.0

------

* New functions
 * The :func:`before_and_after`, :func:`sliding_window`, and :func:`triplewise` recipes from the Python 3.10 docs were added
 * :func:`duplicates_everseen` and :func:`duplicates_justseen` (thanks to OrBin and DavidPratt512)
 * :func:`minmax` (thanks to Ricocotam, MSeifert04, and ruancomelli)
 * :func:`strictly_n` (thanks to hwalinga and NotWearingPants)
 * :func:`unique_in_window`

* Changes to existing functions
 * :func:`groupby_transform` had its type stub improved (thanks to mjk4 and ruancomelli)
 * :func:`is_sorted` now accepts a ``strict`` parameter (thanks to Dutcho and ruancomelli)
 * :func:`zip_broadcast` was updated to fix a bug (thanks to kalekundert)

8.10.0

------

* Changes to existing functions
 * The type stub for :func:`iter_except` was improved (thanks to  MarcinKonowalczyk)

* Other changes:
 *  Type stubs now ship with the source release (thanks to saaketp)
 *  The Sphinx docs were improved (thanks to MarcinKonowalczyk)

8.9.0

-----

* 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)

8.8.0

-----

* New functions
 * :func:`countable` (thanks to krzysieq)

* Changes to existing functions
 * :func:`split_before` was updated to handle empy collections (thanks to TiunovNN)
 * :func:`unique_everseen` got a performance boost (thanks to Numerlor)
 * The type hint for :func:`value_chain` was corrected (thanks to vr2262)

8.7.0

-----

* New functions
 * :func:`convolve` (from the Python itertools docs)
 * :func:`product_index`, :func:`combination_index`, and :func:`permutation_index` (thanks to N8Brooks)
 * :func:`value_chain` (thanks to jenstroeger)

* Changes to existing functions
 * :func:`distinct_combinations` now uses a non-recursive algorithm (thanks to  knutdrand)
 * :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 (thanks to brianmaissy)
 * :func:`seekable` now has a ``peek`` method, and can indicate whether the iterator it's wrapping is exhausted (thanks to gsakkis)
 * :func:`time_limited` can now indicate whether its iterator has expired (thanks to roysmith)
 * The implementation of :func:`unique_everseen` was improved (thanks to plammens)

* Other changes:
 * Various documentation updates (thanks to cthoyt, Evantm, and cyphase)

8.6.0

-----

* New itertools
 * :func:`all_unique` (thanks to brianmaissy)
 * :func:`nth_product` and :func:`nth_permutation` (thanks to N8Brooks)

* Changes to existing itertools
 * :func:`chunked` and :func:`sliced` now accept a ``strict`` parameter (thanks to shlomif and jtwool)

* Other changes
 * Python 3.5 has reached its end of life and is no longer supported.
 * Python 3.9 is officially supported.
 * Various documentation fixes (thanks to timgates42)

8.5.0

-----

* New itertools
 * :func:`windowed_complete` (thanks to MarcinKonowalczyk)

* Changes to existing itertools:
 * The :func:`is_sorted` implementation was improved (thanks to cool-RR)
 * The :func:`groupby_transform` now accepts a ``reducefunc`` parameter.
 * The :func:`last` implementation was improved (thanks to brianmaissy)

* Other changes
 * Various documentation fixes (thanks to craigrosie, samuelstjean, PiCT0)
 * The tests for :func:`distinct_combinations` were improved (thanks to Minabsapi)
 * Automated tests now run on GitHub Actions. All commits now check:
     * That unit tests pass
     * That the examples in docstrings work
     * That test coverage remains high (using `coverage`)
     * For linting errors (using `flake8`)
     * For consistent style (using `black`)
     * That the type stubs work (using `mypy`)
     * That the docs build correctly (using `sphinx`)
     * That packages build correctly (using `twine`)

8.4.0

-----

* 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)

8.3.0

-----

* New itertools
 * :func:`zip_equal` (thanks to frankier and alexmojaki)

* Changes to existing itertools:
 * :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)

* Other changes
 * Type stubs are now tested with ``stubtest`` (thanks to ilai-deutel)
 * Tests now run with ``python -m unittest`` instead of ``python setup.py test`` (thanks to jdufresne)

8.2.0

-----

* Bug fixes
 * The .pyi files for typing were updated. (thanks to blueyed and ilai-deutel)

* Changes to existing itertools:
 * :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.

8.1.0

-----

* Bug fixes
 * :func:`partition` works with ``pred=None`` again. (thanks to MSeifert04)

* New itertools
 * :func:`sample` (thanks to tommyod)
 * :func:`nth_or_last` (thanks to d-ryzhikov)

* Changes to existing itertools:
 * The implementation for :func:`divide` was improved. (thanks to jferard)

8.0.2

-----

* Bug fixes
 * The type stub files are now part of the wheel distribution (thanks to keisheiled)

8.0.1

-----

* Bug fixes
 * The type stub files now work for functions imported from the
   root package (thanks to keisheiled)

8.0.0

-----

* 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)

* Other changes
 * Python 3.4 has reached its end of life and is no longer supported.
 * Python 3.8 is officially supported. (thanks to jdufresne)
 * The ``collate`` function has been deprecated.
   It raises a ``DeprecationWarning`` if used, and will be removed in a future release.
 * :func:`one` and :func:`only` now provide more informative error messages. (thanks to gabbard)
 * Unit tests were moved outside of the main package (thanks to jdufresne)
 * Various documentation fixes (thanks to kriomant, gabbard, jdufresne)
Links

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant