Warning
This post was published 85 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.
This week's crate is wtx, a batteries-included web application framework.
Thanks to Caio 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.
No Calls for participation were submitted this week.
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.
No Calls for papers or presentations were submitted this week.
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!
429 pull requests were merged in the last week
repr_transparent_external_private_fields
: special-case some std typesCStr
/CString
in the improper_ctypes
lintcast()
s after CStr::as_ptr()
*
operator on !Sized
expressionrustc_intrinsic_must_be_overridden
attributedoc(hidden)
dropping_copy_types
lint-Z embed-source
(DWARFv5 source code embedding extension)untranslatable_diagnostic
& diagnostic_outside_of_impl
ArgAbi::make_indirect_force
more specificwrites_through_immutable_pointer
a hard errorzstd
compressionbuild_reduced_graph_for_external_crate_res
into ResolverThread::sleep
RUST_BACKTRACE
behavior'static
obligations on a traitTyCompat
relation for effectsassert_unsafe_precondition!
in AsciiChar::digit_unchecked
UnsafeFnPointer
coercion, tooprovenance_gc
: fix commentreaddir_r
shim: assume FreeBSD v12+retain_mut
and moving the deletion into the closureepoll_ctl
tests/pass/tree_borrows/tree-borrows.rs
const_fn_floating_point_arithmetic
iter::repeat_n
char_indices_offset
debug_more_non_exhaustive
Box::as_ptr
and Box::as_mut_ptr
methodsconst_cell_into_inner
to OnceCell
f16
and f128
inline ASM support for aarch64
Layout::from_size_align_unchecked
unbounded_shl
/unbounded_shr
<fNN
as iter::Sum>
to neg_zero
new_uninit
to new featuresthread::sleep
Duration-handling for ESP-IDFfs::remove_dir_all
: treat internal ENOENT as successPin::as_deref_mut
in impl Pin<Ptr>
/ rearrange Pin methodsptr::fn_addr_eq
HashTable
matches_prerelease
semanticOptVersionReq::Req
:target
highlightdeclare_interior_mutable_const
: Ignore pointer typestoo_long_first_doc_paragraph
first paragraph lintused_underscore_items
std::panic::panic_any
in panic linttodo!()
manual_range_patterns
case with one element at ORdouble_must_use
lintunnecessary_lazy_eval
needless_pass_by_value
lintempty_line_after_doc_comments
and empty_line_after_outer_attr
, move them from nursery
to suspicious
snippet_opt
in favor of get_source_text
toggle_macro_delimiter
'_
..
(i.e. method(..)
and not method()
) as specified in the RFCDeref
implsrev_deps
when target is specifiedSelf: Sized
predicate for trait assoc itemsSized
predicate for generic_predicates_for_param
new
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.
const_refs_to_static
#[derive(Default)]
on enum variants with fieldsRusty Events between 2024-08-28 - 2024-09-25 ๐ฆ
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
... opaque number sequences (\<GitHub> "issue numbers") are not very informative about what is behind that pointer, and pretending they are is harmful. People could provide, instead, actual reasons for things, which do not require dereferencing random pointers, which thrashes cache.
Thanks to Anton Fetisov 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