Up to [cvs.NetBSD.org] / pkgsrc / devel / py-more-itertools
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
py-more-itertools: updated to 10.6.0 10.6.0 * New functions: * :func:`is_prime` and :func:`nth_prime` were added (thanks to JamesParrott and rhettinger) * :func:`loops` was added (thanks to rhettinger) * Changes to existing functions: * :func:`factor` was optimized to handle larger inputs and use less memory (thanks to rhettinger) * :func:`spy` was optimized to enable nested calls (thanks to rhettinger) * :func:`polynomial_from_roots` was made non-recursive and able to handle larger numbers of roots (thanks to pochmann3 and rhettinger) * :func:`is_sorted` now only relies on less than comparisons (thanks to rhettinger) * The docstring for :func:`outer_product` was improved (thanks to rhettinger) * The type annotations for :func:`sample` were improved (thanks to rhettinger) * Other changes: * Python 3.13 is officially supported. Python 3.8 is no longer officially supported. (thanks to hugovk, JamesParrott, and stankudrow) * `mypy` checks were fixed (thanks to JamesParrott)
py-more-itertools: updated to 10.5.0 10.5.0 * Bug fixes * A missing symbol in ``more.pyi`` was fixed (thanks to eberts-google and nathanielmanistaatgoogle) * Other changes * :func:`all_equal` was optimized (thanks to pochmann3 and rhettinger)
py-more-itertools: updated to 10.4.0 10.4.0 * Changes to existing functions * :func:`circular_shifts` now accepts a ``steps`` parameter (thanks to rhettinger) * :func:`distinct_permutations` now accepts iterables with non-comparable items (thanks to hgustafsson, JamesParrott, and pochmann3) * :class:`run_length`, :func:`totient`, :func:`sliding_window`, and :func:`triplewise` were optimized (thanks to rhettinger) * :class:`ilen` was optimized (thanks to pochmann3 and rhettinger) * :func:`sample` was improved, and now accepts ``counts`` and ``strict`` parameters (thanks to rhettinger) * :func:`set_partitions` now accepts ``min_size`` and ``max_size`` parameters (thanks to Pandede) * :func:`seekable`'s ``relative_seek`` method remembers previous calls (thanks to dkrikun) * :func:`sort_together` now accepts a ``strict`` parameter (thanks to rhettinger and Pandede) * Other changes * The docs for :func:`is_sorted` and :func:`strictly_n` were improved (thanks to pochmann3 and fakuivan) * The typing information for :func:`windowed_complete`, :func:`zip_broadcast`, and and :func:`zip_equal` were improved
py-more-itertools: updated to 10.3.0 10.3.0 ------ * New functions * :func:`powerset_of_sets`, :func:`dft`, and :func:`idft` (thanks to rhettinger) * :func:`join_mappings` (thanks to NeilGirdhar and rhettinger) * :func:`doublestarmap` (thanks to Skeen, monk-time, DamianB-BitFlipper, and ergoithz) * :func:`unique` (thanks to rhettinger) * Changes to existing functions * :func:`collapse`, :func:`chunked_even`, :func:`ichunked`, :func:`padded`, and :func:`windowed` were optimized and improved (thanks to james-wasson) * :func:`totient` was optimized (thanks to rhettinger) * :func:`roundrobin` was updated and improved (thanks to rhettinger) * :func:`all_equal` now accepts a *key* parameter. * The docs for :func:`value_chain` were improved (thanks to bjrtx) * The type annotations for :class:`countable` were improved (thanks to aidanholm) * Other changes * Unit tests were improved (thanks to haukex) * Some documentation issues were fixed (thanks to bjrtx and DimitriPapadopoulos)
py-more-itertools: updated to 10.2.0 10.2.0 ------ * New functions * :func:`iter_suppress` * :func:`filter_map` * :func:`classify_unique` * :func:`totient` (from the itertools docs) * :func:`reshape` (from the itertools docs) * Changes to existing functions * :func:`factor`, :func:`iter_index`, :func:`sieve`, and :func:`unique_justseen` were updated to match the itertools docs * :func:`first` was was optimized * :func:`takewhile_inclusive` was was refactored * :func:`combination_with_replacement_index` was was optimized * :func:`nth_permutation`, :func:`nth_combination_with_replacement`, :func:`combination_index`, and :func:`combination_with_replacement_index` were optimized * :func:`batched` now accepts a `strict` argument (adapted from itertools docs) * :func:`time_limited` was improved for Windows * Other changes * Several typing updates were made * Some documentation issues were fixed
python/wheel.mk: simplify a lot, and switch to 'installer' for installation This follows the recommended bootstrap method (flit_core, build, installer). However, installer installs different files than pip, so update PLISTs for all packages using wheel.mk and bump their PKGREVISIONs.
py-more-itertools: update to 10.1.0. What's Changed Add more tests for zip_broadcast() by @kalekundert in #739 Added takewhile_inclusive by @OlegAlexander in #736 Speed up zip_broadcast() by pre-filling the scalar elements by @kalekundert in #740 Added outer_product. by @OlegAlexander in #743 Simplify zip_broadcast by @pochmann in #742 Simplify _zip_equal by @pochmann in #744 fix consume() type annotation by @obaltian in #746 Version 10.1.0 by @bbayles in #747
py-more-itertools: updated to 9.1.0 Version 9.1.0 See PR 678 for details.
py-more-itertools: updated to 9.0.0 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)
py-more-itertools: updated to 8.14.0 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)
py-more-itertools: updated to 8.13.0 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)
*: bump PKGREVISION for egg.mk users They now have a tool dependency on py-setuptools instead of a DEPENDS
py-more-itertools: updated to 8.12.0 8.12.0 ------ * Bug fixes * Some documentation issues were fixed * Python 3.5 support was temporarily restored 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` * :func:`minmax` * :func:`strictly_n` * :func:`unique_in_window` * Changes to existing functions * :func:`groupby_transform` had its type stub improved * :func:`is_sorted` now accepts a ``strict`` parameter * :func:`zip_broadcast` was updated to fix a bug
py-more-itertools: updated to 8.10.0 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)
py-more-itertools: updated to 8.9.0 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)
py-more-itertools: updated to 8.8.0 8.8.0 ----- * New functions * :func:`countable` * Changes to existing functions * :func:`split_before` was updated to handle empy collections * :func:`unique_everseen` got a performance boost * The type hint for :func:`value_chain` was corrected
py-more-itertools: 8.7.0 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
py-more-itertools: updated to 8.6.0 8.6.0 ----- * New itertools * :func:`all_unique` * :func:`nth_product` and :func:`nth_permutation` * Changes to existing itertools * :func:`chunked` and :func:`sliced` now accept a ``strict`` parameter * 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
py-more-itertools: updated to 8.5.0 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`)
py-more-itertools: updated to 8.4.0 8.4.0 * New itertools * :func:`mark_ends` * :func:`is_sorted` * Changes to existing itertools: * :func:`islice_extended` can now be used with real slices * The implementations for :func:`filter_except` and :func:`map_except` were improved * 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 * The test configuration for mypy was updated
py-more-itertools: updated to 8.3.0 8.3.0 * New itertools * :func:`zip_equal` * Changes to existing itertools: * :func:`split_at`, :func:`split_before`, :func:`split_after`, and :func:`split_when` all got a ``maxsplit`` paramter * :func:`split_at` now accepts a ``keep_separator`` parameter * :func:`distinct_permutations` can now generate ``r``-length permutations * The :func:`windowed` implementation was improved * The :func:`spy` implementation was improved * Other changes * Type stubs are now tested with ``stubtest`` * Tests now run with ``python -m unittest`` instead of ``python setup.py test``
py-more-itertools: updated to 8.2.0 8.2.0 * Bug fixes * The .pyi files for typing were updated. * Changes to existing itertools: * :func:`numeric_range` now behaves more like the built-in :func:`range`. * :func:`bucket` now allows for enumerating keys. * :func:`sliced` now should now work for numpy arrays. * :func:`seekable` now has a ``maxlen`` parameter.
py-more-itertools: update to 8.1.0. 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)
py-more-itertools: updated to 8.0.2 8.0.2: Bug fixes * The type stub files are now part of the wheel distribution 8.0.1: Bug fixes * The type stub files now work for functions imported from the root package 8.0.0: New itertools and other additions * This library now ships type hints for use with mypy. * :func:`split_when` * :func:`repeat_last` Changes to existing itertools: * The implementation for :func:`set_partitions` was improved. * :func:`partition` was optimized for expensive predicates. * :func:`unique_everseen` and :func:`groupby_transform` were re-factored. * The implementation for :func:`difference` was improved. Other changes * Python 3.4 has reached its end of life and is no longer supported. * Python 3.8 is officially supported. * 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. * Unit tests were moved outside of the main package * Various documentation fixes
py-more-itertools: update to 7.2.0. 7.2.0 ----- * New itertools * :func:`distinct_combinations` * :func:`set_partitions` (thanks to kbarrett) * :func:`filter_except` * :func:`map_except` 7.1.0 ----- * New itertools * :func:`ichunked` (thanks davebelais and youtux) * :func:`only` (thanks jaraco) * Changes to existing itertools: * :func:`numeric_range` now supports ranges specified by ``datetime.datetime`` and ``datetime.timedelta`` objects (thanks to MSeifert04 for tests). * :func:`difference` now supports an *initial* keyword argument. * Other changes * Various documentation fixes (thanks raimon49, pylang) 7.0.0 ----- * New itertools: * :func:`time_limited` * :func:`partitions` (thanks to rominf and Saluev) * :func:`substrings_indexes` (thanks to rominf) * Changes to existing itertools: * :func:`collapse` now treats ``bytes`` objects the same as ``str`` objects. (thanks to Sweenpet) The major version update is due to the change in the default behavior of :func:`collapse`. It now treats ``bytes`` objects the same as ``str`` objects. This aligns its behavior with :func:`always_iterable`. .. code-block:: python >>> from more_itertools import collapse >>> iterable = [[1, 2], b'345', [6]] >>> print(list(collapse(iterable))) [1, 2, b'345', 6] 6.0.0 ----- * Major changes: * Python 2.7 is no longer supported. The 5.0.0 release will be the last version targeting Python 2.7. * All future releases will target the active versions of Python 3. As of 2019, those are Python 3.4 and above. * The ``six`` library is no longer a dependency. * The :func:`accumulate` function is no longer part of this library. You may import a better version from the standard ``itertools`` module. * Changes to existing itertools: * The order of the parameters in :func:`grouper` have changed to match the latest recipe in the itertools documentation. Use of the old order will be supported in this release, but emit a ``DeprecationWarning``. The legacy behavior will be dropped in a future release. (thanks to jaraco) * :func:`distinct_permutations` was improved (thanks to jferard - see also `permutations with unique values <https://stackoverflow.com/questions/6284396/permutations-with-unique-values>`_ at StackOverflow.) * An unused parameter was removed from :func:`substrings`. (thanks to pylang) * Other changes: * The docs for :func:`unique_everseen` were improved. (thanks to jferard and MSeifert04) * Several Python 2-isms were removed. (thanks to jaraco, MSeifert04, and hugovk)
py-more-itertools: updated 5.0.0 5.0.0 * New itertools: * :func:split_into * :func:unzip * :func:substrings * Changes to existing itertools: * :func:ilen was optimized a bit * :func:first_true now returns None by default. This is the reason for the major version bump - see below. * Other changes: * Some code for old Python versions was removed * Some documentation mistakes were corrected * Tests now run properly on 32-bit versions of Python * Newer versions of CPython and PyPy are now tested against
py-more-itertools: updated to 4.3.0 4.3.0: New itertools: - last() - replace() - rlocate() Improvements to existing itertools: - locate() can now search for multiple items Other changes: - The docs now include a nice table of tools
py-more-itertools: updated to 4.2.0 4.2.0: * New itertools: * :func:map_reduce * :func:prepend * Improvements to existing itertools: * :func:bucket now complies with PEP 479 * Other changes: * Python 3.7 is now supported * Python 3.3 is no longer supported * The test suite no longer requires third-party modules to run * The API docs now include links to source code
py-more-itertools: updated to 4.1.0 4.1.0 New itertools: - split_at - circular_shifts - make_decorator - see the blog post Yo, I heard you like decorators for a tour - always_reversible - nth_combination (from the Python 3.7 docs) Improvements to existing itertools: - seekable now has an elements method to return cached items. - The performance tradeoffs between roundrobin and interleave_longest are now documented
py-more-itertools: updated to 4.0.1 4.0.1 No code changes - this release fixes how the docs display on PyPI. 4.0.0 New itertools: * consecutive_groups (Based on the example in the Python 2.4 docs) * seekable (If you're looking for how to "reset" an iterator, you're in luck!) * exactly_n * run_length.encode and :func:run_length.decode * difference Improvements to existing itertools: The number of items between filler elements in * intersperse can now be specified * distinct_permutations and :func:peekable got some minor adjustments * always_iterable now returns an iterator object. It also now allows different types to be considered iterable * bucket can now limit the keys it stores in memory * one now allows for custom exceptions Other changes: A few typos were fixed All tests can now be run with python setup.py test
py-more-itertools: update to 3.2.0 3.2.0 * New itertools: * :func:`lstrip`, :func:`rstrip`, and :func:`strip` * :func:`islice_extended` * Improvements to existing itertools: * Some bugs with slicing :func:`peekable`-wrapped iterables were fixed
Switch to MASTER_SITES_PYPI.
Improve EGG_NAME default to work for packages with '-' in their name. Remove now unnecessary overrides in various packages.
Correctly build as Python Egg.
Initial import of py-more-itertools, version 2.2, into the NetBSD Packages Collection. A collection of several routines not found in itertools, meant to operate on itertables.