Hello and welcome to another issue of This Week in Rust! Rust is a programming language empowering everyone to build reliable and efficient software. This is a weekly summary of its progress and community. Want something mentioned? Tweet us at @ThisWeekInRust or send us a pull request. Want to get involved? We love contributions.
This Week in Rust is openly developed on GitHub. If you find any errors in this week's issue, please submit a PR.
This week's crate is tap, a library with extension traits to provide suffix-position pipeline behavior.
Thanks to David Mason for the suggestion!
Please submit your suggestions and votes for next week!
Always wanted to contribute to open-source projects but didn't know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!
Some of these tasks may also have mentors available, visit the task page for more information.
If you are a Rust project owner and are looking for contributors, please submit tasks here.
286 pull requests were merged in the last week
rustc_lexercheck_must_not_suspend_ty()yielding in function returning impl Traitif conditionE0659 if the source is not availableOption::inspect and Result::{inspect, inspect_err}try_reduce method to the Iterator traittake methodsarray::{try_from_fn, try_map} and Iterator::try_find generic over TryRawVec::reserve_for_pushVecDeque::retain_mutmax_align_t for wasicore::ops for Simd<T, _>future-incompat-report--release as -rNonNull as a pointer typesingle_char_pattern.rsany() not taking reference in search_is_some lintsingle_char_patternneedless_bool suggestionmap_flatten to complexityA week of mostly rather small changes with many regressions being hard to diagnose. The largest regression comes from the introduction of a new future (desugaring .await into a call to IntoFuture::into_future). This was deemed acceptable as it only seems to have a negative impact in stress test situations where async/await is used more than one would normally expect. Unfortunately this does mean regressions beat out improvements this week.
Triage done by @rylev. Revision range: 1c0287..ecb65b
3 Regressions, 5 Improvements, 5 Mixed; 3 of them in rollups 31 comparisons made in total
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
Every week the team announces the 'final comment period' for RFCs and key PRs which are reaching a decision. Express your opinions now.
Rusty Events between 12/01-12/15 🦀
If you are running a Rust event please add it to the calendar to get it mentioned here. Please remember to add a link to the event too. Email the Rust Community Team for access.
DeepSource
Clear
Pixy
Bionaut Labs
Metawork
Tweet us at @ThisWeekInRust to get your job offers listed here!
v2 of the patch-series "to add support for Rust as a second language to the Linux kernel" was posted to LKML [..]
There have been several improvements to the overall Rust support since RFC and v2 described in the linked mail.
– Thorsten Leemhuis on twitter
llogiq unanimously suggested and voted that this be our quote for this week.
Please submit quotes and vote for next week!
This Week in Rust is edited by: nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, andrewpollack, U007D, kolharsam, joelmarcey, mariannegoldin.
Email list hosting is sponsored by The Rust Foundation