Warning
This post was published 230 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 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.
This week's crate is venndb, an append-only memory DB whose tables can be build via a derive macro.
Thanks to Glen De Cauwsemaecker for the self-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.
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.
Conf42 Rustlang 2024 | Closes 2024-07-22 | online | Event date: 2024-08-22
RustConf 2024 | Closes 2024-04-25 | Montreal, Canada | Event date: 2024-09-10
If you are an event organizer hoping to expand the reach of your event, please submit a link to the submission website through a PR to TWiR.
430 pull requests were merged in the last week
statx
probe: ENOSYS
might come from a faulty FUSE driverREDUNDANT_LIFETIMES
lint to detect lifetimes which are semantically redundantunsafe
to two functions with safety invariantsset_output_capture
in the default panic handlerlower_const_param
instead of duplicating the code.clone()
would be an appropriate user actionimpl_may_apply
const_allocate
)-> _
recoverty_kind_suggestion
type_dependent_def_id
to figure out what the method is for an exprPlaceRef
and OperandValue::Ref
share a common PlaceValue
typecoroutine_captures_by_ref_ty
more sophisticatedBorrowedCursor::advance
panic_unwind/seh.rs
pointer useFrom
impls for unstable types that break inferenceunused_parens
report for Paren(Path(..))
in macroByMoveBody
passHirId
for fn-like parents since closures are not OwnerNode
sPolyTraitRef
for closure/coroutine predicates already instantiated w placeholderslet else
suggestion for uninitialized refutable let
sborrowck
and hir_analysis
?
suggestion spanfn
ptr signature instead of {closure@..}
in infer errorsuggest_impl_trait
in return type suggestion on type errorMIRI_REPLACE_LIBRS_IF_NOT_TEST
: also apply to crates.io cratessplit_simd_to_128bit_chunks
take only one operandunused-externs(-silent)
(const_)slice_ptr_len
and (const_)slice_ptr_is_empty_nonnull
cstr_count_bytes
FromIterator
for (impl Default + Extend, impl Default + Extend)
has_thread_local
for i686-msvcstd::net
: TcpListener shrinks the backlog argument to 32 for Haikumode_t
as octal in std::fs
Debug implsA: 'static
bound for Arc/Rc::pin_in
f16
and f128
step 4: basic library supportDebug
impl and some basic functions to f16
and f128
Read::read_buf_exact
-vV
invocationCargo.toml
include_str!
-ed md filemodule_name_repetition
Recognize common prepositions.then
and .then_some
is usedremark-lint-maximum-line-length
versionduplicated_attributes
into a late lintcheck_attributes
in doc lintscfg_attr
impl Trait<Self>
causing stack overflowsA quiet week, with slightly more improvements than regressions. There were a few noise spikes, but other than that nothing too interesting.
Triage done by @Kobzol. Revision range: 86b603cd..ccfcd950b
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
0.5% | [0.3%, 1.4%] | 9 |
Regressions ❌ (secondary) |
0.4% | [0.2%, 1.1%] | 20 |
Improvements ✅ (primary) |
-0.6% | [-2.5%, -0.2%] | 41 |
Improvements ✅ (secondary) |
-0.8% | [-1.4%, -0.2%] | 4 |
All ❌✅ (primary) | -0.4% | [-2.5%, 1.4%] | 50 |
1 Regressions, 3 Improvements, 6 Mixed; 5 of them in rollups 62 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.
io_error_downcast
std::path::absolute
utf8_chunks
const fn
callsnon_local_definitions
lint-C strip
on MSVCRusty Events between 2024-04-17 - 2024-05-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.
Please see the latest Who's Hiring thread on r/rust
There is absolutely no way I can imagine that
Option
is causing that error. That'd be like turning on the "Hide Taskbar" setting causing your GPU to catch fire.[...]
If it's not any of those, consider an exorcist because your machine might be haunted.
Thanks to Hayden Brown 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
🏷️ Rust_feed