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 efg, a proc macro to allow boolean expression like syntax for #[cfg]
s.
Thanks to farnbams 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.
Ockam
If you are a Rust project owner and are looking for contributors, please submit tasks here.
315 pull requests were merged in the last week
i
/u32
and char
macro_rules
is misspelled;
to expected tokens list when it's wrongspin_loop
hint for RISC-V architectureIterator::advance
(_back
)_by
for array::IntoIter
<*{const|mut} T>::{to|from}_bits
array::IntoIter::
{empty
, from_raw_parts
}rsplit_array
variants to slices and arraysOption::cloned
const
(*mut T)::write_bytes
const
Borrow
and BorrowMut
impls const
Unique
s methods const
intrinsics::write_bytes
const
TryFrom<&'_ mut [T]>
for [T; N]
core::future::join!
ReadBuf
abstractionfeature(const_generics_defaults)
ControlFlow::
{is_break
, is_continue
}const_cstr_unchecked
#[must_use]
attribute should be used on a methodquestion_mark
if returned object is not localblocks_in_if_conditions
false positiveoption_if_let_else
when there is complex subpatThis week's report started with 6 regressions; after eliminating truly obvious noise, we are left with just 2 minor regressions. Of the cases that regressed, I think the only interesting one is keccak (regressed by 1.73% in PR #91549). But don't be too depressed: keccak was also improved up to 23% by PR #85013 (!); thanks to @simulacrum for that PR.
Triage done by @pnkfelix. Revision range: e2116a..404c847
2 Regressions, 5 Improvements, 3 Mixed; 1 of them in rollups 48 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/15/2021 - 1/15/2022 🦀
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.
Kraken
Tweet us at @ThisWeekInRust to get your job offers listed here!
This is safer than you may think, because those who need async tend to know it themselves and don't ask "should I use async" question. In other words, asking itself is a signal that answer is no. MITM proxy case was a rare exception.
– Seo Sanghyeon on rust-users
Thanks to Zeroexcuses for the suggestion!
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