Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Rust crate itertools to 0.13.0 #19

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

mend-5034428[bot]
Copy link

@mend-5034428 mend-5034428 bot commented Oct 18, 2024

This PR contains the following updates:

Package Type Update Change
itertools dependencies minor 0.7.8 -> 0.13.0

Release Notes

rust-itertools/itertools (itertools)

v0.13.0

Compare Source

Breaking
  • Removed implementation of DoubleEndedIterator for ConsTuples (#​853)
  • Made MultiProduct fused and fixed on an empty iterator (#​835, #​834)
  • Changed iproduct! to return tuples for maxi one iterator too (#​870)
  • Changed PutBack::put_back to return the old value (#​880)
  • Removed deprecated repeat_call, Itertools::{foreach, step, map_results, fold_results} (#​878)
  • Removed TakeWhileInclusive::new (#​912)
Added
  • Added Itertools::{smallest_by, smallest_by_key, largest, largest_by, largest_by_key} (#​654, #​885)
  • Added Itertools::tail (#​899)
  • Implemented DoubleEndedIterator for ProcessResults (#​910)
  • Implemented Debug for FormatWith (#​931)
  • Added Itertools::get (#​891)
Changed
  • Deprecated Itertools::group_by (renamed chunk_by) (#​866, #​879)
  • Deprecated unfold (use std::iter::from_fn instead) (#​871)
  • Optimized GroupingMapBy (#​873, #​876)
  • Relaxed Fn bounds to FnMut in diff_with, Itertools::into_group_map_by (#​886)
  • Relaxed Debug/Clone bounds for MapInto (#​889)
  • Documented the use_alloc feature (#​887)
  • Optimized Itertools::set_from (#​888)
  • Removed badges in README.md (#​890)
  • Added "no-std" categories in Cargo.toml (#​894)
  • Fixed Itertools::k_smallest on short unfused iterators (#​900)
  • Deprecated Itertools::tree_fold1 (renamed tree_reduce) (#​895)
  • Deprecated GroupingMap::fold_first (renamed reduce) (#​902)
  • Fixed Itertools::k_smallest(0) to consume the iterator, optimized Itertools::k_smallest(1) (#​909)
  • Specialized Combinations::nth (#​914)
  • Specialized MergeBy::fold (#​920)
  • Specialized CombinationsWithReplacement::nth (#​923)
  • Specialized FlattenOk::{fold, rfold} (#​927)
  • Specialized Powerset::nth (#​924)
  • Documentation fixes (#​882, #​936)
  • Fixed assert_equal for iterators longer than i32::MAX (#​932)
  • Updated the must_use message of non-lazy KMergeBy and TupleCombinations (#​939)
Notable Internal Changes
  • Tested iterator laziness (#​792)
  • Created CONTRIBUTING.md (#​767)

v0.12.1

Compare Source

Added
  • Documented iteration order guarantee for Itertools::[tuple_]combinations (#​822)
  • Documented possible panic in iterate (#​842)
  • Implemented Clone and Debug for Diff (#​845)
  • Implemented Debug for WithPosition (#​859)
  • Implemented Eq for MinMaxResult (#​838)
  • Implemented From<EitherOrBoth<A, B>> for Option<Either<A, B>> (#​843)
  • Implemented PeekingNext for RepeatN (#​855)
Changed
  • Made CoalesceBy lazy (#​801)
  • Optimized Filter[Map]Ok::next, Itertools::partition, Unique[By]::next[_back] (#​818)
  • Optimized Itertools::find_position (#​837)
  • Optimized Positions::next[_back] (#​816)
  • Optimized ZipLongest::fold (#​854)
  • Relaxed Debug bounds for GroupingMapBy (#​860)
  • Specialized ExactlyOneError::fold (#​826)
  • Specialized Interleave[Shortest]::fold (#​849)
  • Specialized MultiPeek::fold (#​820)
  • Specialized PadUsing::[r]fold (#​825)
  • Specialized PeekNth::fold (#​824)
  • Specialized Positions::[r]fold (#​813)
  • Specialized PutBackN::fold (#​823)
  • Specialized RepeatN::[r]fold (#​821)
  • Specialized TakeWhileInclusive::fold (#​851)
  • Specialized ZipLongest::rfold (#​848)
Notable Internal Changes

v0.12.0

Compare Source

Breaking
  • Made take_while_inclusive consume iterator by value (#​709)
  • Added Clone bound to Unique (#​777)
Added
  • Added Itertools::try_len (#​723)
  • Added free function sort_unstable (#​796)
  • Added GroupMap::fold_with (#​778, #​785)
  • Added PeekNth::{peek_mut, peek_nth_mut} (#​716)
  • Added PeekNth::{next_if, next_if_eq} (#​734)
  • Added conversion into (Option<A>,Option<B>) to EitherOrBoth (#​713)
  • Added conversion from Either<A, B> to EitherOrBoth<A, B> (#​715)
  • Implemented ExactSizeIterator for Tuples (#​761)
  • Implemented ExactSizeIterator for (Circular)TupleWindows (#​752)
  • Made EitherOrBoth<T> a shorthand for EitherOrBoth<T, T> (#​719)
Changed
  • Added missing #[must_use] annotations on iterator adaptors (#​794)
  • Made Combinations lazy (#​795)
  • Made Intersperse(With) lazy (#​797)
  • Made Permutations lazy (#​793)
  • Made Product lazy (#​800)
  • Made TupleWindows lazy (#​602)
  • Specialized Combinations::{count, size_hint} (#​729)
  • Specialized CombinationsWithReplacement::{count, size_hint} (#​737)
  • Specialized Powerset::fold (#​765)
  • Specialized Powerset::count (#​735)
  • Specialized TupleCombinations::{count, size_hint} (#​763)
  • Specialized TupleCombinations::fold (#​775)
  • Specialized WhileSome::fold (#​780)
  • Specialized WithPosition::fold (#​772)
  • Specialized ZipLongest::fold (#​774)
  • Changed {min, max}_set* operations require alloc feature, instead of std (#​760)
  • Improved documentation of tree_fold1 (#​787)
  • Improved documentation of permutations (#​724)
  • Fixed typo in documentation of multiunzip (#​770)
Notable Internal Changes

v0.11.0

Compare Source

Breaking
  • Make Itertools::merge_join_by also accept functions returning bool (#​704)
  • Implement PeekingNext transitively over mutable references (#​643)
  • Change with_position to yield (Position, Item) instead of Position<Item> (#​699)
Added
  • Add Itertools::take_while_inclusive (#​616)
  • Implement PeekingNext for PeekingTakeWhile (#​644)
  • Add EitherOrBoth::{just_left, just_right, into_left, into_right, as_deref, as_deref_mut, left_or_insert, right_or_insert, left_or_insert_with, right_or_insert_with, insert_left, insert_right, insert_both} (#​629)
  • Implement Clone for CircularTupleWindows (#​686)
  • Implement Clone for Chunks (#​683)
  • Add Itertools::process_results (#​680)
Changed
  • Use Cell instead of RefCell in Format and FormatWith (#​608)
  • CI tweaks (#​674, #​675)
  • Document and test the difference between stable and unstable sorts (#​653)
  • Fix documentation error on Itertools::max_set_by_key (#​692)
  • Move MSRV metadata to Cargo.toml (#​672)
  • Implement equal with Iterator::eq (#​591)

v0.10.5

Compare Source

  • Maintenance

v0.10.4

Compare Source

v0.10.3

Compare Source

  • Maintenance

v0.10.1

Compare Source

  • Add Itertools::contains (#​514)
    • Add Itertools::counts_by (#​515)
    • Add Itertools::partition_result (#​511)
    • Add Itertools::all_unique (#​241)
    • Add Itertools::duplicates and Itertools::duplicates_by (#​502)
    • Add chain! (#​525)
    • Add Itertools::at_most_one (#​523)
    • Add Itertools::flatten_ok (#​527)
    • Add EitherOrBoth::or_default (#​583)
    • Add Itertools::find_or_last and Itertools::find_or_first (#​535)
    • Implement FusedIterator for FilterOk, FilterMapOk, InterleaveShortest, KMergeBy, MergeBy, PadUsing, Positions, Product , RcIter, TupleWindows, Unique, UniqueBy, Update, WhileSome, Combinations, CombinationsWithReplacement, Powerset, RepeatN, and WithPosition (#​550)
    • Implement FusedIterator for Interleave, IntersperseWith, and ZipLongest (#​548)

v0.10.0

Compare Source

  • Increase minimum supported Rust version to 1.32.0
    • Improve macro hygiene (#​507)
    • Add Itertools::powerset (#​335)
    • Add Itertools::sorted_unstable, Itertools::sorted_unstable_by, and Itertools::sorted_unstable_by_key (#​494)
    • Implement Error for ExactlyOneError (#​484)
    • Undeprecate Itertools::fold_while (#​476)
    • Tuple-related adapters work for tuples of arity up to 12 (#​475)
    • use_alloc feature for users who have alloc, but not std (#​474)
    • Add Itertools::k_smallest (#​473)
    • Add Itertools::into_grouping_map and GroupingMap (#​465)
    • Add Itertools::into_grouping_map_by and GroupingMapBy (#​465)
    • Add Itertools::counts (#​468)
    • Add implementation of DoubleEndedIterator for Unique (#​442)
    • Add implementation of DoubleEndedIterator for UniqueBy (#​442)
    • Add implementation of DoubleEndedIterator for Zip (#​346)
    • Add Itertools::multipeek (#​435)
    • Add Itertools::dedup_with_count and DedupWithCount (#​423)
    • Add Itertools::dedup_by_with_count and DedupByWithCount (#​423)
    • Add Itertools::intersperse_with and IntersperseWith (#​381)
    • Add Itertools::filter_ok and FilterOk (#​377)
    • Add Itertools::filter_map_ok and FilterMapOk (#​377)
    • Deprecate Itertools::fold_results, use Itertools::fold_ok instead (#​377)
    • Deprecate Itertools::map_results, use Itertools::map_ok instead (#​377)
    • Deprecate FoldResults, use FoldOk instead (#​377)
    • Deprecate MapResults, use MapOk instead (#​377)
    • Add Itertools::circular_tuple_windows and CircularTupleWindows (#​350)
    • Add peek_nth and PeekNth (#​303)

v0.9.0

Compare Source

  • Fix potential overflow in MergeJoinBy::size_hint (#​385)
    • Add derive(Clone) where possible (#​382)
    • Add try_collect method (#​394)
    • Add HomogeneousTuple trait (#​389)
    • Fix combinations(0) and combinations_with_replacement(0) (#​383)
    • Don't require ParitalEq to the Item of DedupBy (#​397)
    • Implement missing specializations on the PutBack adaptor and on the MergeJoinBy iterator (#​372)
    • Add position_* methods (#​412)
    • Derive Hash for EitherOrBoth (#​417)
    • Increase minimum supported Rust version to 1.32.0

v0.8.2

Compare Source

v0.8.1

Compare Source

v0.8.0

Compare Source

  • Added new adaptor .map_into() for conversions using Into by @​vorner
    • Improved Itertools docs by @​JohnHeitmann
    • The return type of .sorted_by_by_key() is now an iterator, not a Vec.
    • The return type of the izip!(x, y) macro with exactly two arguments is now the usual Iterator::zip.
    • Remove .flatten() in favour of std's .flatten()
    • Deprecate .foreach() in favour of std's .for_each()
    • Deprecate .step() in favour of std's .step_by()
    • Deprecate repeat_call in favour of std's repeat_with
    • Deprecate .fold_while() in favour of std's .try_fold()
    • Require Rust 1.24 as minimal version.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

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

Successfully merging this pull request may close these issues.

0 participants