2023-12-27
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 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.
async fn and return-position impl Trait in traitsThis week's crate is rouille, a small synchronous web framework.
Thanks to Peter Puetz for the suggestion!
Please submit your suggestions and votes for next week!
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.
information_schema for better compatibilityIf you are a Rust project owner and are looking for contributors, please submit tasks here.
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 submission website either through a PR to TWiR or on the [Rust-lang forums].[link TBD]
268 pull requests were merged in the last week
rustc_codegen_ssa: Don't drop IncorrectCguReuseType , make rustc_expected_cgu_reuse attr work
coverage: check for async fn explicitly, without needing a heuristic
fallback default to None during ast-lowering for lifetime binder
fix crash due to CrateItem::kind() not handling constructors
mark ty::Const::Error when meet unsupport ty for const generic params
simple modification of non_lifetime_binders's diagnostic information to adapt to type binders
suggest = to == in more cases, even in the face of reference mismatch
miri: implement and test simd_masked_load and simd_masked_store
rustdoc: Add is_object_safe information for traits in JSON output
rustdoc: fix display of warning block if it is first element of the top doc block
clippy: check whether out of bound when access a known length array with a constant index
clippy: do not consider async { (impl IntoFuture).await } as redundant
clippy: stop bool_comparison's suggestion from consuming parentheses
rust-analyzer: implement a rust-analyzer span backed proc-macro server mode
rust-analyzer: auto remove unnecessary braces after remove unused imports
rust-analyzer: fix completions analysis not caching all nodes in Semantics
rust-analyzer: remove wrong comma after remove unnecessary braces
Rusty Events between 2023-12-27 - 2024-01-24 🦀
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
Rust can be rather more verbose than C; there are a lot of invariants that have to be expressed in the code. But that is countered by the need for far less error-handling code; it turns out to be a wash, with the size of the two implementations being about the same.
– Alice Ryhl at the Linux Plumbers Conference as quoted by Jonathan Corbet, LWN
Thanks to Ivan Fraixedes 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, bennyvasquez.
Email list hosting is sponsored by The Rust Foundation