2023-08-02
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 allocator-api2, a forward-compatibility shim to use the nightly allocator API on stable Rust.
Thanks to Zicklag 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.
upsert endpoint to cards_info tableIf you are a Rust project owner and are looking for contributors, please submit tasks here.
404 pull requests were merged in the last week
add simd_bswap, simd_bitreverse, simd_ctlz, and simd_cttz intrinsics
check for <&NotClone as Clone>::clone() calls and suggest to add Clone trait appropriately
define CMAKE_SYSTEM_NAME on a cross build targeting DragonFly
don't install default projection bound for return-position impl Trait in trait methods with no body
don't say that a type is uncallable if its fn signature has errors in it
dont pass -Zwrite-long-types-to-disk=no for ui-fulldeps --stage=1
double check that hidden types match the expected hidden type
fix invalid suggestion for mismatched types in closure arguments
hide ToString implementations that specialize the default one
insert RPITITs that were shadowed by missing ADTs that resolve to type error
make RPITITs inherit the assumed_wf_types of their parent method
map RPITIT's opaque type bounds back from projections to opaques
skip reporting item name when checking RPITIT GAT's associated type bounds hold
split some functions with many arguments into builder pattern functions
suggest {Option,Result}::as_ref() instead of cloned() in some cases
turns out opaque types can have hidden types registered during mir validation
when flushing delayed span bugs, write to the ICE dump file even if it doesn't exist
miri: refactor tests/utils a bit, and move some FS functions there
optimize AtomicBool for target that don't support byte-sized atomics
rustfmt: handle dyn* syntax when rewriting ast::TyKind::TraitObject
clippy: arc_with_non_send_sync: no longer lints macro-generated code
clippy: arithmetic_side_effects: ignore paths referring to literals
clippy: needless_pass_by_ref_mut: do not lint if passed as a fn-like argument
clippy: slow_vector_initialization: catch Vec::new() followed by .resize(len, 0)
clippy: needless_pass_by_ref_mut: emit note if function is behind a #[cfg]
clippy: now option_env_unwrap warns even if a variable isn't set at compiletime
rust-analyzer: add manual implementation of clone for tuples in mir interpreter
rust-analyzer: fix: do not create fn macro calls with non-fn expanders
rust-analyzer: fix: expand eager macros to delimited comma separated expression list
rust-analyzer: show anonymous fn def type as a fn pointer in source code
rust-analyzer: write proc-macro server spawn errors to the status text
Rusty Events between 2023-08-02 - 2023-08-30 🦀
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
Writing return <something>; at the end of a function in Rust is a bit like answering the question "Do you like potatoes?" with "Yes, I like potatoes" instead of simple "Yes".
– Artem Borisovskiy on rust-users
Thanks to Todd Fleming 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