Warning
This post was published 71 days ago. The information described in this article may have changed.
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? Tag us at @ThisWeekInRust on X (formerly Twitter) or @ThisWeekinRust on mastodon.social, or send us a pull request. Want to get involved? We love contributions.
This Week in Rust is openly developed on GitHub and archives can be viewed at this-week-in-rust.org. If you find any errors in this week's issue, please submit a PR.
Want TWIR in your inbox? Subscribe here.
tokio::process::Command
This week's crate is cargo-override, a cargo plugin for quick overriding of dependencies.
Thanks to Ajith for the suggestion!
Please submit your suggestions and votes for next week!
An important step for RFC implementation is for people to experiment with the implementation and give feedback, especially before stabilization. The following RFCs would benefit from user testing before moving forward:
If you are a feature implementer and would like your RFC to appear on the above list, add the new call-for-testing
label to your RFC along with a comment providing testing instructions and/or guidance on which aspect(s) of the feature
need testing.
Always wanted to contribute to open-source projects but did not 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 or through a PR to TWiR or by reaching out on X (formerly Twitter) or Mastodon!
Are you a new or experienced speaker looking for a place to share something cool? This section highlights events that are being planned and are accepting submissions to join their event as a speaker.
If you are an event organizer hoping to expand the reach of your event, please submit a link to the website through a PR to TWiR or by reaching out on X (formerly Twitter) or Mastodon!
399 pull requests were merged in the last week
x86_64
impl_trait_overcaptures
: Don't worry about uncaptured contravariant lifetimes if they outlive a captured lifetime#[diagnostic]
attributesrustc_codegen_cranelift
for Windowscheck
buildsconst
and unsafe
blocksexpect
/assume
in opt-level=0CapturedPlace
asm_const
and const_refs_to_static
are combinedcollect_tokens
'r#ident
)elided_named_lifetimes
dump_mir
impl Trait
for References to Bare Trait in Function HeaderDeepRejectCtxt
to quickly reject ParamEnv
candidatespthread_mutex_t
is movedpthread_rwlock_t
is movedmutex_id_offset
-Znext-solver=coherence
char::MIN
const_float_bits_conv
waker_getters
ptr.is_null()
stop execution on ambiguityResult::copied
unstably constas_mut_ptr
and as_bytes_mut
unstably constcargo metadata
Foo โ
arg searchclean::Item
rewrite_result
for ForeignItem, TraitAliasBounds, WherePredicaterewrite_result
for ast::Expr
style_edition
2024--wrap-static-fns
single_match
, single_match_else
: fix suggestion when match irrefutablemanual_div_ceil
: initasm!
block with nomem
optionmanual_is_power_of_two
non_zero_suggestions
lintneedless_return
false negativemanual_c_str_literals
to complexitymanual_non_exhaustive
for exported typesstruct
fields recursively in uninit fallback checkasm!
expressionsTraitRef
self types when loweringA relatively quiet week with a majority of regressions coming in rollups which makes investigation more difficult. Luckily the regressions are relatively small and overall the week was a slight improvement in compiler performance.
Triage done by @rylev. Revision range: 6199b69c..263a3aee
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions โ (primary) |
0.6% | [0.2%, 1.4%] | 57 |
Regressions โ (secondary) |
0.7% | [0.2%, 1.5%] | 23 |
Improvements โ
(primary) |
-2.2% | [-4.0%, -0.4%] | 23 |
Improvements โ
(secondary) |
-0.3% | [-0.3%, -0.2%] | 10 |
All โโ (primary) | -0.2% | [-4.0%, 1.4%] | 80 |
3 Regressions, 1 Improvement, 2 Mixed; 3 of them in rollups 26 artifact 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.
&mut
(and *mut
) as well as &Cell
(and *const Cell
) in constPartialEq
for ExitCode
Mode::Path
Cow<[Self]>
Rusty Events between 2024-09-11 - 2024-10-09 ๐ฆ
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.
Please see the latest Who's Hiring thread on r/rust
Alas! We are once more bereft
of a quote to elate or explain
so this editor merely has left
the option in rhyme to complain.
โ llogiq
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, bennyvasquez.
Email list hosting is sponsored by The Rust Foundation
๐ท๏ธ Rust_feed