2023-02-08
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 envious, a serde-based deserializer from environment variables.
Thanks to musicmatze 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.
If you are a Rust project owner and are looking for contributors, please submit tasks here.
350 pull requests were merged in the last week
do not depend on Generator trait when deducing closure signature
recover from lifetimes with default lifetimes in generic args
extend -Z print-type-sizes to distinguish generator upvars+locals from "normal" fields
fix invalid float literal suggestions when recovering an integer
fix syntax in -Zunpretty-expanded output for derived PartialEq
don't point at nonexisting code beyond EOF when warning about delims
provide structured suggestion for binding needing type on E0594
remove confusing 'while checking' note from opaque future type mismatches
sort Generator print-type-sizes according to their yield points
suggest std::ptr::null if literal 0 is given to a raw pointer function argument
suggest {var:?} when finding {?:var} in inline format strings
cargo: do not error for auth-required: true without -Z sparse-registry
clippy: wildcard_enum_match_arm lint takes the enum origin into account
clippy: add machine applicable suggestion for needless_lifetimes
clippy: fix version declared for semicolon_inside_block and semicolon_outside…
rust-analyzer: add more basic issue templates with auto category labeling
rust-analyzer: expand docs section on Visual Studio to mention all three available extensions
rust-analyzer: fix negative trait bound in outline view (#14044)
rust-analyzer: consider relative offset to fake ident token in expansion for completion
rust-analyzer: don't panic on broken syntax trees in adjustment inlay hints
rust-analyzer: don't render fieldless discriminant inlay hints for datacarrying enums
rust-analyzer: support non-ascii characters in case conversion
rust-analyzer: record method resolution for remaining operator expressions
rust-analyzer: reuse fetching target data layout from rustc function
rust-analyzer: support generic function in generate_function assist
rust-analyzer: support sysroot library source being defined inside the workspace
Rusty Events between 2023-02-08 - 2023-03-08 🦀
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
It's been 7.5 years since #27060 was reported, but the problem is finally fixed for good. :)
Thanks to scottmcm 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