Skip to content

Commit 1bb38e7

Browse files
0.9.0
Updated Changelog and Cargo.toml for the 0.9.0 release
1 parent 340e06f commit 1bb38e7

File tree

2 files changed

+93
-1
lines changed

2 files changed

+93
-1
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "itertools"
3-
version = "0.8.0"
3+
version = "0.9.0"
44

55
license = "MIT/Apache-2.0"
66
repository = "https://github.com/bluss/rust-itertools"

README.rst

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,98 @@ then it can't be accepted into ``libcore``, and you should propose it for ``iter
4848
Recent Changes
4949
--------------
5050

51+
- 0.9.0
52+
53+
- Added a `.exactly_one() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.exactly_one>`_
54+
iterator method that, on success, extracts the single value of an
55+
iterator
56+
; by @Xaeroxe
57+
58+
- Added combinatory iterator adaptors:
59+
60+
- `.permutations(k) <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.permutations>`_:
61+
62+
``[0, 1, 2].iter().permutations(2)`` yields
63+
64+
.. code:: rust
65+
66+
[
67+
vec![0, 1],
68+
vec![0, 2],
69+
vec![1, 0],
70+
vec![1, 2],
71+
vec![2, 0],
72+
vec![2, 1],
73+
]
74+
75+
; by @tobz1000
76+
77+
- `.combinations(k) <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.combinations>`_:
78+
79+
``[0, 1, 2].iter().combinations(2)`` yields
80+
81+
.. code:: rust
82+
83+
[
84+
vec![0, 1],
85+
vec![0, 2],
86+
vec![1, 2],
87+
]
88+
89+
; by @tobz1000
90+
91+
- `.combinations_with_replacement(k) <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.combinations_with_replacement>`_:
92+
93+
``[0, 1, 2].iter().combinations_with_replacement(2)`` yields
94+
95+
.. code:: rust
96+
97+
[
98+
vec![0, 0],
99+
vec![0, 1],
100+
vec![0, 2],
101+
vec![1, 1],
102+
vec![1, 2],
103+
vec![2, 2],
104+
]
105+
106+
; by @tommilligan
107+
108+
- Improved the performance of `.fold() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.fold>`_-based internal iteration for the
109+
`.intersperse() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.intersperse>`_ iterator
110+
; by @jswrenn
111+
112+
- Added
113+
`.dedup_by() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.dedup_by>`_,
114+
`.merge_by() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.merge_by>`_
115+
and `.kmerge_by() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.kmerge_by>`_
116+
adaptors that work like
117+
`.dedup() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.dedup>`_,
118+
`.merge() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.merge>`_ and
119+
`.kmerge() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.kmerge>`_,
120+
but taking an additional custom comparison closure parameter.
121+
; by @phimuemue
122+
123+
- Improved the performance of `.all_equal() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.all_equal>`_
124+
; by @fyrchik
125+
126+
- Loosened the bounds on `.partition_map() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.partition_map>`_
127+
to take just a ``FnMut`` closure rather than a ``Fn`` closure, and made its
128+
implementation use internal iteration for better performance
129+
; by @danielhenrymantilla
130+
131+
- Added convenience methods to
132+
`EitherOrBoth <https://docs.rs/itertools/0.9.0/itertools/enum.EitherOrBoth.html>`_ elements yielded from the
133+
`.zip_longest() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.zip_longest>`_ iterator adaptor
134+
; by @Avi-D-coder
135+
136+
- Added `.sum1() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.sum1>`_
137+
and `.product1() <https://docs.rs/itertools/0.9.0/itertools/trait.Itertools.html#method.product1>`_
138+
iterator methods that respectively try to return the sum and the product of
139+
the elements of an iterator **when it is not empty**, otherwise they return
140+
``None``
141+
; by Emerentius
142+
51143
- 0.8.0
52144

53145
- Added new adaptor ``.map_into()`` for conversions using ``Into`` by @vorner

0 commit comments

Comments
 (0)