1- # Release rayon 1.0.3
1+ # Release rayon 1.1.0 / rayon-core 1.5.0 (2019-06-12)
2+
3+ - FIFO spawns are now supported using the new ` spawn_fifo() ` and ` scope_fifo() `
4+ global functions, and their corresponding ` ThreadPool ` methods.
5+ - Normally when tasks are queued on a thread, the most recent is processed
6+ first (LIFO) while other threads will steal the oldest (FIFO). With FIFO
7+ spawns, those tasks are processed locally in FIFO order too.
8+ - Regular spawns and other tasks like ` join ` are not affected.
9+ - The ` breadth_first ` configuration flag, which globally approximated this
10+ effect, is now deprecated.
11+ - For more design details, please see [ RFC 1] .
12+ - ` ThreadPoolBuilder ` can now take a custom ` spawn_handler ` to control how
13+ threads will be created in the pool.
14+ - ` ThreadPoolBuilder::build_scoped() ` uses this to create a scoped thread
15+ pool, where the threads are able to use non-static data.
16+ - This may also be used to support threading in exotic environments, like
17+ WebAssembly, which don't support the normal ` std::thread ` .
18+ - ` ParallelIterator ` has 3 new methods: ` find_map_any() ` , ` find_map_first() ` ,
19+ and ` find_map_last() ` , like ` Iterator::find_map() ` with ordering constraints.
20+ - The new ` ParallelIterator::panic_fuse() ` makes a parallel iterator halt as soon
21+ as possible if any of its threads panic. Otherwise, the panic state is not
22+ usually noticed until the iterator joins its parallel tasks back together.
23+ - ` IntoParallelIterator ` is now implemented for integral ` RangeInclusive ` .
24+ - Several internal ` Folder ` s now have optimized ` consume_iter ` implementations.
25+ - ` rayon_core::current_thread_index() ` is now re-exported in ` rayon ` .
26+ - The minimum ` rustc ` is now 1.26, following the update policy defined in [ RFC 3] .
27+
28+ ## Contributors
29+
30+ Thanks to all of the contributors for this release!
31+
32+ - @cuviper
33+ - @didroe
34+ - @GuillaumeGomez
35+ - @huonw
36+ - @janriemer
37+ - @kornelski
38+ - @nikomatsakis
39+ - @seanchen1991
40+ - @yegeun542
41+
42+ [ RFC 1 ] : https://github.com/rayon-rs/rfcs/blob/master/accepted/rfc0001-scope-scheduling.md
43+ [ RFC 3 ] : https://github.com/rayon-rs/rfcs/blob/master/accepted/rfc0003-minimum-rustc.md
44+
45+
46+ # Release rayon 1.0.3 (2018-11-02)
247
348- ` ParallelExtend ` is now implemented for tuple pairs, enabling nested
449 ` unzip() ` and ` partition_map() ` operations. For instance, ` (A, (B, C)) `
@@ -22,7 +67,7 @@ Thanks to all of the contributors for this release!
2267- @mdonoughe
2368
2469
25- # Release rayon 1.0.2 / rayon-core 1.4.1
70+ # Release rayon 1.0.2 / rayon-core 1.4.1 (2018-07-17)
2671
2772- The ` ParallelBridge ` trait with method ` par_bridge() ` makes it possible to
2873 use any ` Send ` able ` Iterator ` in parallel!
@@ -58,7 +103,7 @@ Thanks to all of the contributors for this release!
58103- @QuietMisdreavus
59104
60105
61- # Release rayon 1.0.1
106+ # Release rayon 1.0.1 (2018-03-16)
62107
63108- Added more documentation for ` rayon::iter::split() ` .
64109- Corrected links and typos in documentation.
@@ -73,7 +118,7 @@ Thanks to all of the contributors for this release!
73118- @nikomatsakis
74119
75120
76- # Release rayon 1.0.0 / rayon-core 1.4.0
121+ # Release rayon 1.0.0 / rayon-core 1.4.0 (2018-02-15)
77122
78123- ` ParallelIterator ` added the ` update ` method which applies a function to
79124 mutable references, inspired by ` itertools ` .
@@ -124,7 +169,7 @@ Thanks to all of the contributors for this release!
124169- bors[ bot]
125170
126171
127- # Release rayon 0.9.0 / rayon-core 1.3.0 / rayon-futures 0.1.0
172+ # Release rayon 0.9.0 / rayon-core 1.3.0 / rayon-futures 0.1.0 (2017-11-09)
128173
129174- ` Configuration ` now has a ` build ` method.
130175- ` ParallelIterator ` added ` flatten ` and ` intersperse ` , both inspired by
@@ -197,7 +242,7 @@ Thanks to all of the contributors for this release!
197242- bors[ bot]
198243
199244
200- # Release rayon 0.8.2
245+ # Release rayon 0.8.2 (2017-06-28)
201246
202247- ` ParallelSliceMut ` now has six parallel sorting methods with the same
203248 variations as the standard library.
@@ -208,15 +253,16 @@ Thanks to all of the contributors for this release!
208253 perform unstable sorts with the same comparison options.
209254 - Thanks to @stjepang !
210255
211- # Release rayon 0.8.1 / rayon-core 1.2.0
256+
257+ # Release rayon 0.8.1 / rayon-core 1.2.0 (2017-06-14)
212258
213259- The following core APIs are being stabilized:
214260 - ` rayon::spawn() ` -- spawns a task into the Rayon threadpool; as it
215261 is contained in the global scope (rather than a user-created
216262 scope), the task cannot capture anything from the current stack
217263 frame.
218264 - ` ThreadPool::join() ` , ` ThreadPool::spawn() ` , ` ThreadPool::scope() `
219- -- convenience APIs for launching new work within a thread-pool.
265+ -- convenience APIs for launching new work within a thread-pool.
220266- The various iterator adapters are now tagged with ` #[must_use] `
221267- Parallel iterators now offer a ` for_each_with ` adapter, similar to
222268 ` map_with ` .
@@ -232,7 +278,8 @@ Thanks to all of the contributors for this release!
232278 then your clients must also modify their environment, signaling
233279 their agreement to instability.
234280
235- # Release rayon 0.8.0 / rayon-core 1.1.0
281+
282+ # Release rayon 0.8.0 / rayon-core 1.1.0 (2017-06-13)
236283
237284## Rayon 0.8.0
238285
@@ -295,13 +342,15 @@ Thanks to the following contributors:
295342- @nikomatsakis
296343- @stjepang
297344
298- # Release rayon 0.7.1 / rayon-core 1.0.2
345+
346+ # Release rayon 0.7.1 / rayon-core 1.0.2 (2017-05-30)
299347
300348This release is a targeted performance fix for #343 , an issue where
301349rayon threads could sometimes enter into a spin loop where they would
302350be unable to make progress until they are pre-empted.
303351
304- # Release rayon 0.7 / rayon-core 1.0
352+
353+ # Release rayon 0.7 / rayon-core 1.0 (2017-04-06)
305354
306355This release marks the first step towards Rayon 1.0. ** For best
307356performance, it is important that all Rayon users update to at least
@@ -334,8 +383,8 @@ supported in some capacity.
334383 better performance for some parallel iterators.
335384- Strings now support ` par_split() ` and ` par_split_whitespace() ` .
336385- The ` Configuration ` API is expanded and simplified:
337- - ` num_threads(0) ` no longer triggers an error
338- - you can now supply a closure to name the Rayon threads that get created
386+ - ` num_threads(0) ` no longer triggers an error
387+ - you can now supply a closure to name the Rayon threads that get created
339388 by using ` Configuration::thread_name ` .
340389 - you can now inject code when Rayon threads start up and finish
341390 - you can now set a custom panic handler to handle panics in various odd situations
@@ -398,7 +447,8 @@ Thanks to the following people for their contributions to this release:
398447- @schuster
399448- @torkleyy
400449
401- # Release 0.6
450+
451+ # Release 0.6 (2016-12-21)
402452
403453This release includes a lot of progress towards the goal of parity
404454with the sequential iterator API, though there are still a few methods
@@ -422,7 +472,7 @@ API. Thanks @cuviper! Keep it up.
422472 We also support ` min_by_key() ` and ` max_by_key() ` . Thanks @tapeinosyne !
423473- ** Breaking change:** The ` mul() ` method is now renamed to ` product() ` ,
424474 to match sequential iterators. Thanks @jonathandturner !
425- - We now support parallel iterator over ranges on ` u64 ` values. Thanks @cuviper !
475+ - We now support parallel iterator over ranges on ` u64 ` values. Thanks @cuviper !
426476- We now offer a ` par_chars() ` method on strings for iterating over characters
427477 in parallel. Thanks @cuviper !
428478- We now have new demos: a traveling salesman problem solver as well as matrix
@@ -440,7 +490,8 @@ API. Thanks @cuviper! Keep it up.
440490- Exposed helper methods for accessing the current thread index.
441491 Thanks @bholley !
442492
443- # Release 0.5
493+
494+ # Release 0.5 (2016-11-04)
444495
445496- ** Breaking change:** The ` reduce ` method has been vastly
446497 simplified, and ` reduce_with_identity ` has been deprecated.
@@ -458,8 +509,9 @@ API. Thanks @cuviper! Keep it up.
458509- We now build with older versions of rustc again (thanks @durango !),
459510 as we removed a stray semicolon from ` thread_local! ` .
460511- Various improvements to the (unstable) ` scope() ` API implementation.
461-
462- # Release 0.4.3
512+
513+
514+ # Release 0.4.3 (2016-10-25)
463515
464516- Parallel iterators now offer an adaptive weight scheme,
465517 which means that explicit weights should no longer
@@ -472,18 +524,20 @@ API. Thanks @cuviper! Keep it up.
472524 - You will need to supply the [ cargo feature] ` unstable ` .
473525- The various demos and benchmarks have been consolidated into one
474526 program, ` rayon-demo ` .
475- - Optimizations in Rayon's inner workings. Thanks @emilio !
527+ - Optimizations in Rayon's inner workings. Thanks @emilio !
476528- Update ` num_cpus ` to 1.0. Thanks @jamwt !
477529- Various internal cleanup in the implementation and typo fixes.
478530 Thanks @cuviper , @Eh2406 , and @spacejam !
479531
480532[ cargo feature ] : http://doc.crates.io/manifest.html#the-features-section
481533
482- # Release 0.4.2
534+
535+ # Release 0.4.2 (2016-09-15)
483536
484537- Updated crates.io metadata.
485538
486- # Release 0.4.1
539+
540+ # Release 0.4.1 (2016-09-14)
487541
488542- New ` chain ` combinator for parallel iterators.
489543- ` Option ` , ` Result ` , as well as many more collection types now have
@@ -493,7 +547,8 @@ API. Thanks @cuviper! Keep it up.
493547
494548Thanks to @cuviper , @edre , @jdanford , @frewsxcv for their contributions!
495549
496- # Release 0.4
550+
551+ # Release 0.4 (2016-05-16)
497552
498553- Make use of latest versions of catch-panic and various fixes to panic propagation.
499554- Add new prime sieve demo.
@@ -502,7 +557,8 @@ Thanks to @cuviper, @edre, @jdanford, @frewsxcv for their contributions!
502557
503558Thanks to @areilb1 , @Amanieu , @SharplEr , and @cuviper for their contributions!
504559
505- # Release 0.3
560+
561+ # Release 0.3 (2016-02-23)
506562
507563- Expanded ` par_iter ` APIs now available:
508564 - ` into_par_iter ` is now supported on vectors (taking ownership of the elements)
@@ -517,6 +573,7 @@ Thanks to @areilb1, @Amanieu, @SharplEr, and @cuviper for their contributions!
517573
518574Thanks to @bjz , @cuviper , @Amanieu , and @willi-kappler for their contributions!
519575
576+
520577# Release 0.2 and earlier
521578
522579No release notes were being kept at this time.
0 commit comments