2023-01-18
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. If you find any errors in this week's issue, please submit a PR.
This week's crate is syntactic-for, a syntactic "for" loop Rust macro.
Thanks to Tor Hovland 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.
Ockam - GitHub CI: use global default shell in documentation.yml workflow
Ockam - Modify clap command ockam start to set the node attribute's default value using attributes
If you are a Rust project owner and are looking for contributors, please submit tasks here.
458 pull requests were merged in the last week
LSDA Take ttype_index into account when taking unwind action
add log-backtrace option to show backtraces along with logging
change flags with a fixed default value from Option<bool> to bool
check impl's where clauses in consider_impl_candidate in experimental solver
emit a hint for bad call return types due to generic arguments
emit a single error for contiguous sequences of unknown tokens
feed a bunch of queries instead of tracking fields on TyCtxt
fix invalid syntax and incomplete suggestion in impl Trait parameter type suggestions for E0311
fix linker detection for linker (drivers) with a version postfix (e.g. clang-12 instead of clang)
fix misleading "add dyn keyword before derive macro" suggestion
label struct/enum constructor instead of fn item, mention that it should be called on type mismatch
cargo: nightly Fix CVE-2022-46176: Missing SSH host key validation
only suggest adding type param if path being resolved was a type
provide help on closures capturing self causing borrow checker errors
recover from where clauses placed before tuple struct bodies
suggestion for type mismatch when we need a u8 but the programmer wrote a char literal
leak amplification for peek_mut() to ensure BinaryHeap's invariant is always met
cargo: support codegen-backend and rustflags in profiles in config file
clippy: cast_possible_truncation Suggest TryFrom when truncation possible
clippy: expl_impl_clone_on_copy: ignore packed structs with type/const params
clippy: needless_return: remove all semicolons on suggestion
clippy: unused_self: don't trigger if the method body contains todo!()
clippy: allow implementing Hash with derived PartialEq (derive_hash_xor_eq)
rust-analyzer: make unlinked_file diagnostic quickfixes work for inline modules
rust-analyzer: fix panicking Option unwraping in match arm analysis
rust-analyzer: don't generate PartialEq/PartialOrd methods body when types don't match
rust-analyzer: make inlay hint location links work for more types
rust-analyzer: interior-mutable types should be static rather than const
rust-analyzer: remove hover inlay tooltips, replace them with location links
rust-analyzer: split out hir-def attribute handling parts into hir-expand
rust-analyzer: unconditionally enable location links in inlay hints again
Rusty Events between 2023-01-18 - 2023-02-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
Common arguments against Rust's safety guarantees:
- The library you're binding to can have a segfault in it.
- RAM can physically fail, causing dangling pointers.
- The computer the Rust program is running on can be hit by a meteorite.
- Alan Turing can come back from the dead and tell everyone that he actually made up computer science and none of it is real, thus invalidating every program ever made, including all Rust programs.
– Ironmask on the phoronix forums
Thanks to Stephan Sokolow 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