This post was published 217 days ago. The infomation 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 Twitter or @ThisWeekinRust on mastodon.social, or send us a pull request. Want to get involved? We love contributions.
This week's crate is Darkbird, a high-concurrency real-time in-memory database.
Thanks to DanyalMh for the self-suggestion!
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.
396 pull requests were merged in the last week
kernel-addresssanitizer support for freestanding targets
Sized(in new solver)
for<..> ||closure binders
with_reveal_all_normalizedin const-eval when
param_envhas inference vars in it
#[doc(hidden)]trait methods with matching return type
dyn*'s value backend type a pointer
min_choicealgorithm of member constraints
is_strinstead of string kind comparison
machinefor mir interpreter integer handling
read_bufin Read for &'a FileDesc
significant_drop_tightening: evaluate the return expression of a block
significant_drop_tightening: ignore inexpensive statements
bytes_nthfrom suggesting code that does not compile
doc_markdownrequiring backticks on links to external websites
box_default: don't omit the type of the removed trait object
manual_let_else: do not suggest semantically different replacements
manual_let_else: let/else is not divergent by default
never_loopFix false positive with labeled blocks
uninlined_format_args: do not inline argument with generic parameters
unusual_byte_groupingsto only require byte groupings of equal size
map_entrylint suggestion on expanded code
needless_returnincorrect suggestion when returning if sequence
ifblock which has an
Overall a fairly positive week, with few noise-related regressions or improvements and many benchmarks showing significant improvements. The one large regression is limited to documentation builds and has at least a partial fix already planned.
Other wins this week include an average improvement of around 1% in maximum memory usage of optimized builds, and a 2% average reduction in compiled binary sizes. These are fairly significant wins for these metrics.
Triage done by @simulacrum. Revision range: 9bb6e60..3fee48c1
3 Regressions, 3 Improvements, 3 Mixed; 2 of them in rollups 45 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.
[u8]for auto trait purposes
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
label to your RFC along with a comment providing testing instructions and/or guidance on which aspect(s) of the feature
Rusty Events between 2023-02-22 - 2023-03-22 🦀
Please see the latest Who's Hiring thread on r/rust
It’s enjoyable to write Rust, which is maybe kind of weird to say, but it’s just the language is fantastic. It’s fun. You feel like a magician, and that never happens in other languages.
Thanks to robin for the suggestion!
Email list hosting is sponsored by The Rust Foundation🏷️ Rust_feed