Updates from core
LLVM on AArch64/GlobalISel: fix incorrect handling of fp truncating stores
rust-lang/llvm-project/pull/127
show a more informative panic message when DefPathHash does not exist
rust-lang/rust/pull/93098
only suggest adding ! to expressions that can be macro invocation
rust-lang/rust/pull/93061
point at correct argument when async fn output type lifetime disagrees with signature
rust-lang/rust/pull/92183
change lint message to be stronger for &T → &mut T transmute
rust-lang/rust/pull/92704
improve string concatenation suggestion
rust-lang/rust/pull/92843
formally implement let chains
rust-lang/rust/pull/88642
implement #[rustc_must_implement_one_of] attribute
rust-lang/rust/pull/92164
allow eq constraints on associated constants
rust-lang/rust/pull/87648
check const Drop impls considering ~const Bounds
rust-lang/rust/pull/93028
add ~const bound test for negative impls
rust-lang/rust/pull/92997
fix ICEs related to Deref<Target=[T; N]> on newtypes
rust-lang/rust/pull/92640
disable drop range tracking in generators
rust-lang/rust/pull/93165
directly use ConstValue for single literals in blocks
rust-lang/rust/pull/92780
add preliminary support for inline assembly for msp430
rust-lang/rust/pull/93219
let qpath contain NtTy: <$:ty as $:ty>::…
rust-lang/rust/pull/91150
make Decodable and Decoder infallible
rust-lang/rust/pull/93066
remove a Span from hir::ExprKind::MethodCall
rust-lang/rust/pull/92787
emit simpler code from format_args
rust-lang/rust/pull/91359
fix CVE-2022-21658 (symbolic link timing attack in std::fs::remove_dir_all)
rust-lang/rust/pull/93112
implement RFC 3151: Scoped threads
rust-lang/rust/pull/92555
improve capacity estimation in Vec::from_iter
rust-lang/rust/pull/92138
little improves in CString::new when creating from slice
rust-lang/rust/pull/92124
add MaybeUninit::(slice_)as_bytes(_mut)
rust-lang/rust/pull/89747
add Option::is_some_with and Result::is_{ok, err}_with
rust-lang/rust/pull/93051
add log2 and log10 to NonZeroU*
rust-lang/rust/pull/92956
std: implement try_reserve and try_reserve_exact on PathBuf
rust-lang/rust/pull/92513
impl Not for ! (did you guess that "not never" is still "never"?)
rust-lang/rust/pull/91122
stabilize arc_new_cyclic
rust-lang/rust/pull/90666
stabilize vec_spare_capacity
rust-lang/rust/pull/93016
stabilize -Z print-link-args as --print link-args
rust-lang/rust/pull/91606
cargo: error when setting crate type of both dylib and cdylib in library
rust-lang/cargo/pull/10243
clippy: add msrv config for map_clone
rust-lang/rust-clippy/pull/8280
clippy: check usages in ptr_arg
rust-lang/rust-clippy/pull/8271
clippy: don't suggest an empty variant name in enum_variant_names
rust-lang/rust-clippy/pull/8329
clippy: fix needless_borrow causing mutable borrows to be moved
rust-lang/rust-clippy/pull/8217
clippy: needless_lifetimes: ignore lifetimes in explicit self types
rust-lang/rust-clippy/pull/8278
clippy: trait_duplication_in_bounds checks path segments for trait items
rust-lang/rust-clippy/pull/8315
clippy: fix needless_question_mark not considering async fn
rust-lang/rust-clippy/pull/8311
clippy: fix op_ref false positive
rust-lang/rust-clippy/pull/8298
LLVM on AArch64/GlobalISel: fix incorrect handling of fp truncating stores
rust-lang/llvm-project/pull/127
show a more informative panic message when DefPathHash does not exist
rust-lang/rust/pull/93098
only suggest adding ! to expressions that can be macro invocation
rust-lang/rust/pull/93061
point at correct argument when async fn output type lifetime disagrees with signature
rust-lang/rust/pull/92183
change lint message to be stronger for &T → &mut T transmute
rust-lang/rust/pull/92704
improve string concatenation suggestion
rust-lang/rust/pull/92843
formally implement let chains
rust-lang/rust/pull/88642
implement #[rustc_must_implement_one_of] attribute
rust-lang/rust/pull/92164
allow eq constraints on associated constants
rust-lang/rust/pull/87648
check const Drop impls considering ~const Bounds
rust-lang/rust/pull/93028
add ~const bound test for negative impls
rust-lang/rust/pull/92997
fix ICEs related to Deref<Target=[T; N]> on newtypes
rust-lang/rust/pull/92640
disable drop range tracking in generators
rust-lang/rust/pull/93165
directly use ConstValue for single literals in blocks
rust-lang/rust/pull/92780
add preliminary support for inline assembly for msp430
rust-lang/rust/pull/93219
let qpath contain NtTy: <$:ty as $:ty>::…
rust-lang/rust/pull/91150
make Decodable and Decoder infallible
rust-lang/rust/pull/93066
remove a Span from hir::ExprKind::MethodCall
rust-lang/rust/pull/92787
emit simpler code from format_args
rust-lang/rust/pull/91359
fix CVE-2022-21658 (symbolic link timing attack in std::fs::remove_dir_all)
rust-lang/rust/pull/93112
implement RFC 3151: Scoped threads
rust-lang/rust/pull/92555
improve capacity estimation in Vec::from_iter
rust-lang/rust/pull/92138
little improves in CString::new when creating from slice
rust-lang/rust/pull/92124
add MaybeUninit::(slice_)as_bytes(_mut)
rust-lang/rust/pull/89747
add Option::is_some_with and Result::is_{ok, err}_with
rust-lang/rust/pull/93051
add log2 and log10 to NonZeroU*
rust-lang/rust/pull/92956
std: implement try_reserve and try_reserve_exact on PathBuf
rust-lang/rust/pull/92513
impl Not for ! (did you guess that "not never" is still "never"?)
rust-lang/rust/pull/91122
stabilize arc_new_cyclic
rust-lang/rust/pull/90666
stabilize vec_spare_capacity
rust-lang/rust/pull/93016
stabilize -Z print-link-args as --print link-args
rust-lang/rust/pull/91606
cargo: error when setting crate type of both dylib and cdylib in library
rust-lang/cargo/pull/10243
clippy: add msrv config for map_clone
rust-lang/rust-clippy/pull/8280
clippy: check usages in ptr_arg
rust-lang/rust-clippy/pull/8271
clippy: don't suggest an empty variant name in enum_variant_names
rust-lang/rust-clippy/pull/8329
clippy: fix needless_borrow causing mutable borrows to be moved
rust-lang/rust-clippy/pull/8217
clippy: needless_lifetimes: ignore lifetimes in explicit self types
rust-lang/rust-clippy/pull/8278
clippy: trait_duplication_in_bounds checks path segments for trait items
rust-lang/rust-clippy/pull/8315
clippy: fix needless_question_mark not considering async fn
rust-lang/rust-clippy/pull/8311
clippy: fix op_ref false positive
rust-lang/rust-clippy/pull/8298
Updates from Rust Community
Official
Announcing Rust 1.58.1
blog.rust-lang.org
Security advisory for the standard library (CVE-2022-21658)
blog.rust-lang.org
Rust Compiler January 2022 Steering Cycle
blog.rust-lang.org
Project/Tooling Updates
Rust Analyzer Changelog #113
rust-analyzer.github.io
SixtyFPS (GUI crate): Changelog for 23th of January 2022
sixtyfps.io
Settings sync browser addon for rustdoc
gitlab.com
Dotenv-linter v3.2.0: Overview
dotenv-linter.github.io
youki 0.0.2 release
containers/youki/releases/tag/v0.0.2
This week in Databend #26: an elastic and reliable cloud warehouse
weekly.databend.rs
Newsletters
This Month in Rust GameDev #29 - December 2021
gamedev.rs
Research
DuVisor: a User-level Hypervisor Through Delegated Virtualization
arxiv.org
Observations/Thoughts
Being Fair about Memory Safety and Performance
www.thecodedmessage.com
Why Static Languages Suffer From Complexity
hirrolot.github.io
Async destruction on stable rust
vzvezda/asyncdrop/blob/main/article/async-dest.md
async-await: Cooperative vs Preemtive scheduling
kerkour.com
Detect unsigned integer underflow
frehberg.com
Non-Lazy Futures Considered Harmful
swatinem.de
Part 1: The life of an optimization barrier
blog.trailofbits.com
On Rust in Webdev
radekmie.github.io
Unsoundness in owning_ref
noamtashma/owning-ref-unsoundness
Type-Driven Development
duesee.dev
Rust Programming, What to Look Forward to in 2022
https://chester-beard.medium.com/rust-programming-what-to-look-forward-to-in-2022-2e041258f750
Rust Walkthroughs
Clean and Scalable Architecture for Rust Web Applications
kerkour.com
Building fast Wikipedia bots in Rust
blog.legoktm.com
Futures and Tasks: A tale of concurrency and parallelism
swatinem.de
Lowering async await in rust
wiki.cont.run
Publishing to crates.io
www.printlnhello.world
Hello, Microcontroller! - Demystify microcontrollers by programming one in ~100 lines of dependency-free Rust
medium.com/tempus-ex
Rain's Rust CLI recommendations
rust-cli-recommendations.sunshowers.io/
Taking Rust for a Ride to Azeroth: What writing an AH Scanner in Rust taught me
medium.com/digitalfrontiers
On self-modifying executables in Rust
blog.dend.ro
Using tree data structures to implement terminal split panes - more fun than it sounds
blog.warp.dev
Durability and Redo Logging
justinjaffray.com
[video] Messing With The Recipe
www.youtube.com
[audio] Gitoxide with Sebastian Thiel
rustacean-station.org
Miscellaneous
tyty
zackoverflow.dev
Official
Announcing Rust 1.58.1
blog.rust-lang.org
Security advisory for the standard library (CVE-2022-21658)
blog.rust-lang.org
Rust Compiler January 2022 Steering Cycle
blog.rust-lang.org
Project/Tooling Updates
Rust Analyzer Changelog #113
rust-analyzer.github.io
SixtyFPS (GUI crate): Changelog for 23th of January 2022
sixtyfps.io
Settings sync browser addon for rustdoc
gitlab.com
Dotenv-linter v3.2.0: Overview
dotenv-linter.github.io
youki 0.0.2 release
containers/youki/releases/tag/v0.0.2
This week in Databend #26: an elastic and reliable cloud warehouse
weekly.databend.rs
Newsletters
This Month in Rust GameDev #29 - December 2021
gamedev.rs
Research
DuVisor: a User-level Hypervisor Through Delegated Virtualization
arxiv.org
Observations/Thoughts
Being Fair about Memory Safety and Performance
www.thecodedmessage.com
Why Static Languages Suffer From Complexity
hirrolot.github.io
Async destruction on stable rust
vzvezda/asyncdrop/blob/main/article/async-dest.md
async-await: Cooperative vs Preemtive scheduling
kerkour.com
Detect unsigned integer underflow
frehberg.com
Non-Lazy Futures Considered Harmful
swatinem.de
Part 1: The life of an optimization barrier
blog.trailofbits.com
On Rust in Webdev
radekmie.github.io
Unsoundness in owning_ref
noamtashma/owning-ref-unsoundness
Type-Driven Development
duesee.dev
Rust Programming, What to Look Forward to in 2022
https://chester-beard.medium.com/rust-programming-what-to-look-forward-to-in-2022-2e041258f750
Rust Walkthroughs
Clean and Scalable Architecture for Rust Web Applications
kerkour.com
Building fast Wikipedia bots in Rust
blog.legoktm.com
Futures and Tasks: A tale of concurrency and parallelism
swatinem.de
Lowering async await in rust
wiki.cont.run
Publishing to crates.io
www.printlnhello.world
Hello, Microcontroller! - Demystify microcontrollers by programming one in ~100 lines of dependency-free Rust
medium.com/tempus-ex
Rain's Rust CLI recommendations
rust-cli-recommendations.sunshowers.io/
Taking Rust for a Ride to Azeroth: What writing an AH Scanner in Rust taught me
medium.com/digitalfrontiers
On self-modifying executables in Rust
blog.dend.ro
Using tree data structures to implement terminal split panes - more fun than it sounds
blog.warp.dev
Durability and Redo Logging
justinjaffray.com
[video] Messing With The Recipe
www.youtube.com
[audio] Gitoxide with Sebastian Thiel
rustacean-station.org
Miscellaneous
tyty
zackoverflow.dev
Crate of the week: html5gum
This week's crate is html5gum, a WHATWG HTML spec-compliant HTML5 tokenizer.
This week's crate is html5gum, a WHATWG HTML spec-compliant HTML5 tokenizer.
This week in Rust #428 — 02 feb 2022
https://this-week-in-rust.org/blog/2022/02/02/this-week-in-rust-428/
https://this-week-in-rust.org/blog/2022/02/02/this-week-in-rust-428/
Updates from core
LLVM: cherry-pick different fix for AArch64 truncating FP stores
rust-lang/llvm-project/pull/128
allow eliding GATs in expression position
rust-lang/rust/pull/92918
fix debuginfo for pointers/references to unsized types
rust-lang/rust/pull/93006
add note suggesting that predicate may be satisfied, but is not const
rust-lang/rust/pull/93358
ignore unwinding edges when checking for unconditional recursion
rust-lang/rust/pull/92889
don't suggest inaccessible fields
rust-lang/rust/pull/93039
implement stable overlap check considering negative traits
rust-lang/rust/pull/93175
improve selection errors for ~const trait bounds
rust-lang/rust/pull/92256
improve suggestion for escaping reserved keywords
rust-lang/rust/pull/93395
suggest tuple-parentheses for enum variants
rust-lang/rust/pull/90677
fix the unsoundness in the early_otherwise_branch mir opt pass
rust-lang/rust/pull/91840
store def_id_to_hir_id as variant in hir_owner
rust-lang/rust/pull/93373
store hir_id_to_def_id in OwnerInfo
rust-lang/rust/pull/93301
use indexmap to avoid sorting LocalDefIds
rust-lang/rust/pull/90842
codegen_gcc: correctly import foreign statics
rust-lang/rustc_codegen_gcc/pull/115
codegen_gcc: support -Zfunction-sections
rust-lang/rustc_codegen_gcc/pull/118
codegen_gcc: support 128-bit integers on platforms without native support
rust-lang/rustc_codegen_gcc/pull/103
codegen_gcc: support upgrading the alignment of a global variable
rust-lang/rustc_codegen_gcc/pull/121
accommodate yield points in the format_args expansion
rust-lang/rust/pull/93461
add Simd::cast
rust-lang/portable-simd/pull/232
add intrinsics::const_deallocate
rust-lang/rust/pull/92274
add os::unix::net::SocketAddr::from_path
rust-lang/rust/pull/93239
make NonNull::new const
rust-lang/rust/pull/93236
make char::DecodeUtf16::size_hist more precise
rust-lang/rust/pull/93347
improve Duration::try_from_secs_f32/64 accuracy by directly processing exponent and mantissa
rust-lang/rust/pull/90247
cargo: add bash completion for cargo clippy
rust-lang/cargo/pull/10347
cargo: do not ignore --features when --all-features is present
rust-lang/cargo/pull/10337
clippy: add default_union_representation lint
rust-lang/rust-clippy/pull/8289
clippy: don't lint ptr_arg for &mut _ types in trait items
rust-lang/rust-clippy/pull/8369
clippy: fix underflow in manual_split_once lint
rust-lang/rust-clippy/pull/8250
clippy: fix bad suggestion on numeric_literal
rust-lang/rust-clippy/pull/8350
clippy: single_match: don't lint non-exhaustive matches; support tuples
rust-lang/rust-clippy/pull/8322
LLVM: cherry-pick different fix for AArch64 truncating FP stores
rust-lang/llvm-project/pull/128
allow eliding GATs in expression position
rust-lang/rust/pull/92918
fix debuginfo for pointers/references to unsized types
rust-lang/rust/pull/93006
add note suggesting that predicate may be satisfied, but is not const
rust-lang/rust/pull/93358
ignore unwinding edges when checking for unconditional recursion
rust-lang/rust/pull/92889
don't suggest inaccessible fields
rust-lang/rust/pull/93039
implement stable overlap check considering negative traits
rust-lang/rust/pull/93175
improve selection errors for ~const trait bounds
rust-lang/rust/pull/92256
improve suggestion for escaping reserved keywords
rust-lang/rust/pull/93395
suggest tuple-parentheses for enum variants
rust-lang/rust/pull/90677
fix the unsoundness in the early_otherwise_branch mir opt pass
rust-lang/rust/pull/91840
store def_id_to_hir_id as variant in hir_owner
rust-lang/rust/pull/93373
store hir_id_to_def_id in OwnerInfo
rust-lang/rust/pull/93301
use indexmap to avoid sorting LocalDefIds
rust-lang/rust/pull/90842
codegen_gcc: correctly import foreign statics
rust-lang/rustc_codegen_gcc/pull/115
codegen_gcc: support -Zfunction-sections
rust-lang/rustc_codegen_gcc/pull/118
codegen_gcc: support 128-bit integers on platforms without native support
rust-lang/rustc_codegen_gcc/pull/103
codegen_gcc: support upgrading the alignment of a global variable
rust-lang/rustc_codegen_gcc/pull/121
accommodate yield points in the format_args expansion
rust-lang/rust/pull/93461
add Simd::cast
rust-lang/portable-simd/pull/232
add intrinsics::const_deallocate
rust-lang/rust/pull/92274
add os::unix::net::SocketAddr::from_path
rust-lang/rust/pull/93239
make NonNull::new const
rust-lang/rust/pull/93236
make char::DecodeUtf16::size_hist more precise
rust-lang/rust/pull/93347
improve Duration::try_from_secs_f32/64 accuracy by directly processing exponent and mantissa
rust-lang/rust/pull/90247
cargo: add bash completion for cargo clippy
rust-lang/cargo/pull/10347
cargo: do not ignore --features when --all-features is present
rust-lang/cargo/pull/10337
clippy: add default_union_representation lint
rust-lang/rust-clippy/pull/8289
clippy: don't lint ptr_arg for &mut _ types in trait items
rust-lang/rust-clippy/pull/8369
clippy: fix underflow in manual_split_once lint
rust-lang/rust-clippy/pull/8250
clippy: fix bad suggestion on numeric_literal
rust-lang/rust-clippy/pull/8350
clippy: single_match: don't lint non-exhaustive matches; support tuples
rust-lang/rust-clippy/pull/8322
🎉1
Updates from Rust Community
Official
Changes in the Core Team
blog.rust-lang.org
Foundation
Board Announcement: Farewell and Thanks to Florian
foundation.rust-lang.org
Project/Tooling Updates
spa 0.3.0 release
crates.io
An update on rust/coreutils
sylvestre.ledru.info
This week in Fluvio #20: the programmable streaming platform
www.fluvio.io
SixtyFPS (GUI crate): Changelog for 30th of January 2022
sixtyfps.io
Fornjot 0.5.0 - Code-CAD in Rust
www.fornjot.app
BonsaiDb January update: Alpha Next Week
bonsaidb.io
rustc_codegen_gcc: Progress Report #8
blog.antoyo.xyz
Rust Analyzer Changelog #114
rust-analyzer.github.io
IntelliJ Rust Changelog #164
intellij-rust.github.io
This week in Databend #27: an elastic and reliable cloud warehouse
weekly.databend.rs
Newsletters
This Week in Glean: Building and Deploying a Rust library on iOS
blog.mozilla.org
Research
An Empirical Study of Yanked Releases in the Rust Package Registry
arxiv.org
Observations/Thoughts
A new phase for the Rustc Reading Club
https://mojosd.medium.com/a-new-phase-for-the-rustc-reading-club-c3a048f52a2f
The 9 indispensable features to learn for the new Rust programmer
kerkour.com
Uninitialized Memory: Unsafe Rust is Too Hard
lucumr.pocoo.org
Part 2: Improving crypto code in Rust using LLVM’s optnone
blog.trailofbits.com
Writing the fastest GBDT library in Rust
www.tangram.dev
Async Rust vs RTOS showdown!
tweedegolf.nl
Panics vs cancellation, part 1
smallcultfollowing.com
Rust extension traits, greppability and IDEs
eli.thegreenplace.net
The Curious Absence of Lifetimes
ivkov.me
Rust has a small standard library (and that's ok)
blog.nindalf.com
Curl with Rust
daniel.haxx.se
[audio] Frontmatter Podcast: Matt Provost, Author of Rust From the Ground Up
leanpub.com
Rust Walkthroughs
How Rust helped me power through my C assignments
dev.to
(Basic) Segment Trees with beautiful diagrams!
desmondwillowbrook.github.io
Sneak preview: Writing Ruby gem native extensions in Rust
briankung.dev
[DE] Ferris Talk #5: Tokio als asynchrone Laufzeitumgebung ist ein Fast-Alleskönner
www.heise.de
[audio] zbus with Zeeshan Ali
rustacean-station.org
[video] Rust Linz, January '22 - Error Handling in Rust - A Pragmatic Approach by Luca Palmieri
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 13: Object Destructuring (Part 2) and Fixing Recursion
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 14: Compiler Resources and Function Argument Destructuring
www.youtube.com
Miscellaneous
Async Rust: What is a runtime? Here is how tokio works under the hood
kerkour.com
Implementation of CIDR routing table in Rust
rtoch.com
How Prime Video updates its app for more than 8,000 device types
www.amazon.science
Building and Deploying a Rust library on iOS
fnordig.de
My new deployment workflow using AWS SDK for Rust
mdguerrero.com
Meilisearch raises a $5M Seed to change the world of user-facing search
blog.meilisearch.com
Sequoia-PGP: Looking for SQ stakeholders
sequoia-pgp.org
Hello, Microcontroller!
blog.tempus-ex.com
Ferrous Systems and AdaCore to join forces on Ferrocene
ferrous-systems.com
AdaCore and Ferrous Systems joining forces to support Rust
blog.adacore.com
[audio] Podcast RustTalk 001. 与 Folyd 聊他的 Rust 使用经历
rusttalk.github.io
Official
Changes in the Core Team
blog.rust-lang.org
Foundation
Board Announcement: Farewell and Thanks to Florian
foundation.rust-lang.org
Project/Tooling Updates
spa 0.3.0 release
crates.io
An update on rust/coreutils
sylvestre.ledru.info
This week in Fluvio #20: the programmable streaming platform
www.fluvio.io
SixtyFPS (GUI crate): Changelog for 30th of January 2022
sixtyfps.io
Fornjot 0.5.0 - Code-CAD in Rust
www.fornjot.app
BonsaiDb January update: Alpha Next Week
bonsaidb.io
rustc_codegen_gcc: Progress Report #8
blog.antoyo.xyz
Rust Analyzer Changelog #114
rust-analyzer.github.io
IntelliJ Rust Changelog #164
intellij-rust.github.io
This week in Databend #27: an elastic and reliable cloud warehouse
weekly.databend.rs
Newsletters
This Week in Glean: Building and Deploying a Rust library on iOS
blog.mozilla.org
Research
An Empirical Study of Yanked Releases in the Rust Package Registry
arxiv.org
Observations/Thoughts
A new phase for the Rustc Reading Club
https://mojosd.medium.com/a-new-phase-for-the-rustc-reading-club-c3a048f52a2f
The 9 indispensable features to learn for the new Rust programmer
kerkour.com
Uninitialized Memory: Unsafe Rust is Too Hard
lucumr.pocoo.org
Part 2: Improving crypto code in Rust using LLVM’s optnone
blog.trailofbits.com
Writing the fastest GBDT library in Rust
www.tangram.dev
Async Rust vs RTOS showdown!
tweedegolf.nl
Panics vs cancellation, part 1
smallcultfollowing.com
Rust extension traits, greppability and IDEs
eli.thegreenplace.net
The Curious Absence of Lifetimes
ivkov.me
Rust has a small standard library (and that's ok)
blog.nindalf.com
Curl with Rust
daniel.haxx.se
[audio] Frontmatter Podcast: Matt Provost, Author of Rust From the Ground Up
leanpub.com
Rust Walkthroughs
How Rust helped me power through my C assignments
dev.to
(Basic) Segment Trees with beautiful diagrams!
desmondwillowbrook.github.io
Sneak preview: Writing Ruby gem native extensions in Rust
briankung.dev
[DE] Ferris Talk #5: Tokio als asynchrone Laufzeitumgebung ist ein Fast-Alleskönner
www.heise.de
[audio] zbus with Zeeshan Ali
rustacean-station.org
[video] Rust Linz, January '22 - Error Handling in Rust - A Pragmatic Approach by Luca Palmieri
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 13: Object Destructuring (Part 2) and Fixing Recursion
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 14: Compiler Resources and Function Argument Destructuring
www.youtube.com
Miscellaneous
Async Rust: What is a runtime? Here is how tokio works under the hood
kerkour.com
Implementation of CIDR routing table in Rust
rtoch.com
How Prime Video updates its app for more than 8,000 device types
www.amazon.science
Building and Deploying a Rust library on iOS
fnordig.de
My new deployment workflow using AWS SDK for Rust
mdguerrero.com
Meilisearch raises a $5M Seed to change the world of user-facing search
blog.meilisearch.com
Sequoia-PGP: Looking for SQ stakeholders
sequoia-pgp.org
Hello, Microcontroller!
blog.tempus-ex.com
Ferrous Systems and AdaCore to join forces on Ferrocene
ferrous-systems.com
AdaCore and Ferrous Systems joining forces to support Rust
blog.adacore.com
[audio] Podcast RustTalk 001. 与 Folyd 聊他的 Rust 使用经历
rusttalk.github.io
👍4
Crate of the week: update-informer
This week we have two crates: update-informer, a
library to embed an update check into your CLI project and
blake3, a fast cryptographic hash function.
This week we have two crates: update-informer, a
library to embed an update check into your CLI project and
blake3, a fast cryptographic hash function.
This week in Rust #429 — 09 feb 2022
https://this-week-in-rust.org/blog/2022/02/09/this-week-in-rust-429/
https://this-week-in-rust.org/blog/2022/02/09/this-week-in-rust-429/
Updates from core
add new target armv7-unknown-linux-uclibceabi (softfloat)
rust-lang/rust/pull/92383
continue work on associated const equality
rust-lang/rust/pull/93285
clarify error on casting larger integers to char
rust-lang/rust/pull/91939
fix suggestion to slice if scrutinee is a Result or Option
rust-lang/rust/pull/91343
if an integer is entered with an upper-case base prefix (0Xbeef, 0O755, 0B1010), suggest to make it lowercase
rust-lang/rust/pull/93019
add rustc lint, warning when iterating over hashmaps 2
rust-lang/rust/pull/92584
borrowck: fix help on mutating &self in async fns
rust-lang/rust/pull/93221
perf: compress amount of hashed bytes for isize values in StableHasher
rust-lang/rust/pull/93432
perf: use fold_list in try_super_fold_with for SubstsRef
rust-lang/rust/pull/93643
codegen_gcc: implement simd_neg
rust-lang/rustc_codegen_gcc/pull/125
optimize core::str::Chars::count
rust-lang/rust/pull/90414
impl Arc::unwrap_or_clone
rust-lang/rust/pull/91589
carefully remove bounds checks from some chunk iterator functions
rust-lang/rust/pull/86988
Impl arithmetic (assign-)ops traits for Wrapping<_> for rust 1.60.0
rust-lang/rust/pull/93208
implement RawWaker and Waker getters for underlying pointers
rust-lang/rust/pull/91828
rustdoc: collect traits in scope for foreign inherent impls
rust-lang/rust/pull/93539
clippy: add explicit_write suggestions for write!s with format args
rust-lang/rust-clippy/pull/8365
clippy: add lint transmute_undefined_repr
rust-lang/rust-clippy/pull/8398
clippy: fix ICE in ptr_arg
rust-lang/rust-clippy/pull/8387
clippy: split matches
rust-lang/rust-clippy/pull/8400
clippy: chars_next_cmp fix unescaped suggestion
rust-lang/rust-clippy/pull/8376
clippy: fix explicit_counter_loop suggesting .into_iter(), despite that triggering into_iter_on_ref in some cases
rust-lang/rust-clippy/pull/8382
clippy: make unwrap_used also trigger on .get().unwrap()
rust-lang/rust-clippy/pull/8372
clippy: warn if we find multiple clippy configs
rust-lang/rust-clippy/pull/8326
rustfmt: fix doc of generic items formmating error
rust-lang/rustfmt/pull/5124
rustfmt: fix import_granularity option when the use tree has an alias
rust-lang/rustfmt/pull/5209
rustfmt: handle non-ascii character at boundary
rust-lang/rustfmt/pull/5089
add new target armv7-unknown-linux-uclibceabi (softfloat)
rust-lang/rust/pull/92383
continue work on associated const equality
rust-lang/rust/pull/93285
clarify error on casting larger integers to char
rust-lang/rust/pull/91939
fix suggestion to slice if scrutinee is a Result or Option
rust-lang/rust/pull/91343
if an integer is entered with an upper-case base prefix (0Xbeef, 0O755, 0B1010), suggest to make it lowercase
rust-lang/rust/pull/93019
add rustc lint, warning when iterating over hashmaps 2
rust-lang/rust/pull/92584
borrowck: fix help on mutating &self in async fns
rust-lang/rust/pull/93221
perf: compress amount of hashed bytes for isize values in StableHasher
rust-lang/rust/pull/93432
perf: use fold_list in try_super_fold_with for SubstsRef
rust-lang/rust/pull/93643
codegen_gcc: implement simd_neg
rust-lang/rustc_codegen_gcc/pull/125
optimize core::str::Chars::count
rust-lang/rust/pull/90414
impl Arc::unwrap_or_clone
rust-lang/rust/pull/91589
carefully remove bounds checks from some chunk iterator functions
rust-lang/rust/pull/86988
Impl arithmetic (assign-)ops traits for Wrapping<_> for rust 1.60.0
rust-lang/rust/pull/93208
implement RawWaker and Waker getters for underlying pointers
rust-lang/rust/pull/91828
rustdoc: collect traits in scope for foreign inherent impls
rust-lang/rust/pull/93539
clippy: add explicit_write suggestions for write!s with format args
rust-lang/rust-clippy/pull/8365
clippy: add lint transmute_undefined_repr
rust-lang/rust-clippy/pull/8398
clippy: fix ICE in ptr_arg
rust-lang/rust-clippy/pull/8387
clippy: split matches
rust-lang/rust-clippy/pull/8400
clippy: chars_next_cmp fix unescaped suggestion
rust-lang/rust-clippy/pull/8376
clippy: fix explicit_counter_loop suggesting .into_iter(), despite that triggering into_iter_on_ref in some cases
rust-lang/rust-clippy/pull/8382
clippy: make unwrap_used also trigger on .get().unwrap()
rust-lang/rust-clippy/pull/8372
clippy: warn if we find multiple clippy configs
rust-lang/rust-clippy/pull/8326
rustfmt: fix doc of generic items formmating error
rust-lang/rustfmt/pull/5124
rustfmt: fix import_granularity option when the use tree has an alias
rust-lang/rustfmt/pull/5209
rustfmt: handle non-ascii character at boundary
rust-lang/rustfmt/pull/5089
Updates from Rust Community
Official
Async Rust in 2022
blog.rust-lang.org
Foundation
Member Spotlight: Zama
foundation.rust-lang.org
Project/Tooling Updates
Rust Analyzer Changelog #115
rust-analyzer.github.io
GCC Rust Monthly Report #13 January 2022
thephilbert.io
tracing: Announcing Experimental valuable Support
tokio-rs/tracing/discussions/1906
Arti 0.0.4 is released: Refactoring, rustls, and more!
blog.torproject.org
Nushell v0.44
www.nushell.sh
Rust API for the Firefox Profiler
blog.mozilla.org
This week in Fluvio #21: the programmable streaming platform
www.fluvio.io
What's new in SeaORM 0.6.0
www.sea-ql.org
SixtyFPS (GUI crate): Changelog for 06th of February 2022
sixtyfps.io
Announcing BonsaiDb v0.1.0: A Rust NoSQL database that grows with you
bonsaidb.io
Fornjot (Code-CAD in Rust) - Weekly Dev Log
www.fornjot.app
Knurling-rs changelog #33
ferrous-systems.com
Open-sourcing update-informer: a highly customizable Rust library for CLI apps
evrone.com
Newsletters
This Month in Rust OSDev (January 2022)
rust-osdev.com
Rust Nigeria #2 - January 2022
rustnigeria.curated.co
Observations/Thoughts
Minor Semver Issue
epage.github.io
A first look at Sycamore's new reactive primitives
sycamore-rs.netlify.app
Rustenstein 3D: Game programming like it's 1992
tech.nextroll.com
Hot Reloading Rust: Windows and Linux
johnaustin.io
Past, present and future of rust-protobuf
stepancheg/rust-protobuf/blob/master/doc/past-present-future.md
An optimization story
tinkering.xyz
Sayonara, Mozilla
kvark.github.io
Some mistakes Rust doesn't catch
fasterthanli.me
The simplest guide to error handling in Rust
kerkour.com
Vangers 3D: example of using Emnoscripten in Rust
https://caiiiycuk.medium.com/vangers-3d-example-of-using-emnoscripten-in-rust-720ee8099d72
My Rust Book: Language for the next 40 years
dev.to
[RU] Вангеры 3D: пример использования Emnoscripten в Rust
habr.com
[ZH] 为什么 Rust 没有继承?Why doesn't Rust have inheritance?
fengliang.io
[audio] Building with Rust: Josh Triplett on Building the Build System of his Dreams
anchor.fm
[video] Top 6 Books to learn the Rust Programming Language in 2022
www.youtube.com
[video] Rust 101 Lecture Series
www.youtube.com
Rust Walkthroughs
Rust Turbofish: Closure Return Type
blog.aloni.org
Downcasting in Rust
ysantos.com
Crafting A Lox Interpreter In Rust, Part 1
www.diegofreijo.com
Let's create an app in webassembly
infinite-improbability.org
RISC-V Bytes: Rust Cross-Compilation
danielmangum.com
ESP32 MQTT Publish with Rust
medium.com/iotics
Containerless! How to Run WebAssembly Workloads on Kubernetes with Rust
developer.okta.com
The foundations of end-to-end encryption: Domain separation (with code example in Rust)
kerkour.com
Compiler Adventures, part 1: No-op Instructions
medium.com/@predrag.gruevski
[video] Desktop UIs with Rust and React
www.youtube.com
[series] [video] Rust Embedded for STM32 Microcontrollers - Cross-compilation
youtu.be
[series] [video] Rust Embedded for STM32 Microcontrollers - HAL Crates
youtu.be
Miscellaneous
Kraken Funds Full-Time Bitcoin Rust Maintainer
blog.kraken.com
Official
Async Rust in 2022
blog.rust-lang.org
Foundation
Member Spotlight: Zama
foundation.rust-lang.org
Project/Tooling Updates
Rust Analyzer Changelog #115
rust-analyzer.github.io
GCC Rust Monthly Report #13 January 2022
thephilbert.io
tracing: Announcing Experimental valuable Support
tokio-rs/tracing/discussions/1906
Arti 0.0.4 is released: Refactoring, rustls, and more!
blog.torproject.org
Nushell v0.44
www.nushell.sh
Rust API for the Firefox Profiler
blog.mozilla.org
This week in Fluvio #21: the programmable streaming platform
www.fluvio.io
What's new in SeaORM 0.6.0
www.sea-ql.org
SixtyFPS (GUI crate): Changelog for 06th of February 2022
sixtyfps.io
Announcing BonsaiDb v0.1.0: A Rust NoSQL database that grows with you
bonsaidb.io
Fornjot (Code-CAD in Rust) - Weekly Dev Log
www.fornjot.app
Knurling-rs changelog #33
ferrous-systems.com
Open-sourcing update-informer: a highly customizable Rust library for CLI apps
evrone.com
Newsletters
This Month in Rust OSDev (January 2022)
rust-osdev.com
Rust Nigeria #2 - January 2022
rustnigeria.curated.co
Observations/Thoughts
Minor Semver Issue
epage.github.io
A first look at Sycamore's new reactive primitives
sycamore-rs.netlify.app
Rustenstein 3D: Game programming like it's 1992
tech.nextroll.com
Hot Reloading Rust: Windows and Linux
johnaustin.io
Past, present and future of rust-protobuf
stepancheg/rust-protobuf/blob/master/doc/past-present-future.md
An optimization story
tinkering.xyz
Sayonara, Mozilla
kvark.github.io
Some mistakes Rust doesn't catch
fasterthanli.me
The simplest guide to error handling in Rust
kerkour.com
Vangers 3D: example of using Emnoscripten in Rust
https://caiiiycuk.medium.com/vangers-3d-example-of-using-emnoscripten-in-rust-720ee8099d72
My Rust Book: Language for the next 40 years
dev.to
[RU] Вангеры 3D: пример использования Emnoscripten в Rust
habr.com
[ZH] 为什么 Rust 没有继承?Why doesn't Rust have inheritance?
fengliang.io
[audio] Building with Rust: Josh Triplett on Building the Build System of his Dreams
anchor.fm
[video] Top 6 Books to learn the Rust Programming Language in 2022
www.youtube.com
[video] Rust 101 Lecture Series
www.youtube.com
Rust Walkthroughs
Rust Turbofish: Closure Return Type
blog.aloni.org
Downcasting in Rust
ysantos.com
Crafting A Lox Interpreter In Rust, Part 1
www.diegofreijo.com
Let's create an app in webassembly
infinite-improbability.org
RISC-V Bytes: Rust Cross-Compilation
danielmangum.com
ESP32 MQTT Publish with Rust
medium.com/iotics
Containerless! How to Run WebAssembly Workloads on Kubernetes with Rust
developer.okta.com
The foundations of end-to-end encryption: Domain separation (with code example in Rust)
kerkour.com
Compiler Adventures, part 1: No-op Instructions
medium.com/@predrag.gruevski
[video] Desktop UIs with Rust and React
www.youtube.com
[series] [video] Rust Embedded for STM32 Microcontrollers - Cross-compilation
youtu.be
[series] [video] Rust Embedded for STM32 Microcontrollers - HAL Crates
youtu.be
Miscellaneous
Kraken Funds Full-Time Bitcoin Rust Maintainer
blog.kraken.com
Crate of the week: document-features
This week's crate is document-features, a small proc macro to parse your Cargo.toml and generate docs for your features.
This week's crate is document-features, a small proc macro to parse your Cargo.toml and generate docs for your features.
This week in Rust #430 — 16 feb 2022
https://this-week-in-rust.org/blog/2022/02/16/this-week-in-rust-430/
https://this-week-in-rust.org/blog/2022/02/16/this-week-in-rust-430/
🎉1
Updates from core
support custom options for LLVM build
rust-lang/rust/pull/93756
store rlink data in opaque binary format on disk
rust-lang/rust/pull/93681
fix incorrect register conflict detection in asm!
rust-lang/rust/pull/93868
fix regression from lazy opaque types
rust-lang/rust/pull/93783
make span_extend_to_prev_str() more robust
rust-lang/rust/pull/91607
better suggestions when user tries to collect into an unsized [_]
rust-lang/rust/pull/91443
do not suggest char literal for zero-length strings
rust-lang/rust/pull/92715
improve opaque type higher-ranked region error message under NLL
rust-lang/rust/pull/92306
point at type when a static #[global_allocator] doesn't impl GlobalAlloc
rust-lang/rust/pull/91950
make find_similar_impl_candidates even fuzzier
rust-lang/rust/pull/93298
implement tainted_by_errors in MIR borrowck, use it to skip CTFE
rust-lang/rust/pull/93691
more informative error message for E0015
rust-lang/rust/pull/90532
miri: implement const_allocate intrinsic
rust-lang/miri/pull/1973
miri: implement const_deallocate as a no-op
rust-lang/miri/pull/1974
stabilise is_aarch64_feature_detected! under simd_aarch64 feature
rust-lang/rust/pull/90271
stabilise inherent_ascii_escape
rust-lang/rust/pull/93886
stabilize cfg_target_has_atomic
rust-lang/rust/pull/93824
stabilize int_abs_diff
rust-lang/rust/pull/93735
fix HashMap not displaying correctly in VS debugger
rust-lang/rust/pull/93626
add From<u8> for ExitCode
rust-lang/rust/pull/93445
add str::{floor, ceil}_char_boundary methods
rust-lang/rust/pull/86497
std::path::absolute
rust-lang/rust/pull/91673
implement AsFd for &T and &mut T
rust-lang/rust/pull/93888
make Instant::{duration_since, elapsed, sub} saturating and remove workarounds
rust-lang/rust/pull/89926
clippy: fix transmute_undefined_repr with single field #[repr(C)] structs
rust-lang/rust-clippy/pull/8425
rustfmt: fix incorrect string indentation in macro defs with format_strings
rust-lang/rustfmt/pull/5201
rustfmt: leverage itemized blocks to support formatting markdown block quotes
rust-lang/rustfmt/pull/5160
support custom options for LLVM build
rust-lang/rust/pull/93756
store rlink data in opaque binary format on disk
rust-lang/rust/pull/93681
fix incorrect register conflict detection in asm!
rust-lang/rust/pull/93868
fix regression from lazy opaque types
rust-lang/rust/pull/93783
make span_extend_to_prev_str() more robust
rust-lang/rust/pull/91607
better suggestions when user tries to collect into an unsized [_]
rust-lang/rust/pull/91443
do not suggest char literal for zero-length strings
rust-lang/rust/pull/92715
improve opaque type higher-ranked region error message under NLL
rust-lang/rust/pull/92306
point at type when a static #[global_allocator] doesn't impl GlobalAlloc
rust-lang/rust/pull/91950
make find_similar_impl_candidates even fuzzier
rust-lang/rust/pull/93298
implement tainted_by_errors in MIR borrowck, use it to skip CTFE
rust-lang/rust/pull/93691
more informative error message for E0015
rust-lang/rust/pull/90532
miri: implement const_allocate intrinsic
rust-lang/miri/pull/1973
miri: implement const_deallocate as a no-op
rust-lang/miri/pull/1974
stabilise is_aarch64_feature_detected! under simd_aarch64 feature
rust-lang/rust/pull/90271
stabilise inherent_ascii_escape
rust-lang/rust/pull/93886
stabilize cfg_target_has_atomic
rust-lang/rust/pull/93824
stabilize int_abs_diff
rust-lang/rust/pull/93735
fix HashMap not displaying correctly in VS debugger
rust-lang/rust/pull/93626
add From<u8> for ExitCode
rust-lang/rust/pull/93445
add str::{floor, ceil}_char_boundary methods
rust-lang/rust/pull/86497
std::path::absolute
rust-lang/rust/pull/91673
implement AsFd for &T and &mut T
rust-lang/rust/pull/93888
make Instant::{duration_since, elapsed, sub} saturating and remove workarounds
rust-lang/rust/pull/89926
clippy: fix transmute_undefined_repr with single field #[repr(C)] structs
rust-lang/rust-clippy/pull/8425
rustfmt: fix incorrect string indentation in macro defs with format_strings
rust-lang/rustfmt/pull/5201
rustfmt: leverage itemized blocks to support formatting markdown block quotes
rust-lang/rustfmt/pull/5160
👍2
Updates from Rust Community
Official
Rust Survey 2021 Results
blog.rust-lang.org
CTCFT 2022-02-21 Agenda
blog.rust-lang.org
Crates.io Index Snapshot Branches Moving
blog.rust-lang.org
Project/Tooling Updates
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W06
www.fornjot.app
Performance Tools Newsletter (Q4 2021)
blog.mozilla.org
rsadsb: v0.5.0 Release
rsadsb.github.io
SixtyFPS becomes Slint
slint-ui.com
This week in Fluvio #22: the programmable streaming platform
www.fluvio.io
Rust Analyzer Changelog #116
rust-analyzer.github.io
GCC Rust Weekly Status Report 39
thephilbert.io
cargo-mutants 0.2.0: A new mutation testing tool for Rust
sourcefrog/cargo-mutants#readme
This week in Databend #29: an elastic and reliable cloud warehouse
weekly.databend.rs
Newsletters
This Month in Rust GameDev #30 - January 2022
gamedev.rs
Research
Learning and Programming Challenges of Rust: A Mixed-Methods Study
songlh.github.io
Observations/Thoughts
A Rust match made in hell
fasterthanli.me
Dare to ask for more #rust2024
smallcultfollowing.com
More Enum Types
blog.yoshuawuyts.com
My Rust Frontend Experiences
blog.urth.org
What is Rust's hole purpose?
blog.pnkfx.org
Mocking Time in Async Rust
www.ditto.live
Plugins in Rust: Getting our Hands Dirty
nullderef.com
Async IO fundamentals
www.ncameron.org
Async read and write traits
www.ncameron.org
PostgreSQL Aggregates with Rust
hoverbear.org
[ZH] 为什么我们要Associated Type?Why do we need Associated Type?
fengliang.io
Rust Walkthroughs
rsadsb: Raspberry Pi in-car ADS-B Display - with Rust!
rsadsb.github.io
Computing image filters with wgpu-rs
blog.redwarp.app
Let’s Build a WebSockets Project With Rust and Yew 0.19
https://fsjohnny.medium.com/lets-build-a-websockets-project-with-rust-and-yew-0-19-60720367399f
How to build a custom blockchain implementation in Rust using Substrate
blog.logrocket.com
Rust on iOS and Mac Catalyst: A Simple, Updated Guide
nadim.computer
Futures Concurrency III
blog.yoshuawuyts.com
Frontend Rust Without Node
blog.urth.org
Implementing a custom async runtime in a game engine
domwillia.ms
Assertion reporting
hole.tuziwo.info
[video] Implementing the NTFS filesystem in Rust
fosdem.org
[video] Rust Project: Deserialization with Serde
www.youtube.com
[video] 5 Tips for Rust Beginners
www.youtube.com
[video] Developing Embedded Applications in Rust
www.youtube.com
[series] [video] Rust Embedded for STM32 Microcontrollers - I2C protocol (part 1)
www.youtube.com
[series] [video] Rust Embedded for STM32 Microcontrollers - I2C protocol (with reference manual!)(part 2)
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 15: Implementing this
www.youtube.com
Miscellaneous
Rust core team alumni
brson.github.io
Crane Support for Alternative Registries and Git Dependencies
ipetkov.dev
Sustainability with Rust
aws.amazon.com
Rotating log files and reassembling them for inspection
www.openanalytics.eu
[DE] Grafische User-Interfaces: SixtyFPS-Toolkit aus Berlin als Slint überarbeitet
www.heise.de
Official
Rust Survey 2021 Results
blog.rust-lang.org
CTCFT 2022-02-21 Agenda
blog.rust-lang.org
Crates.io Index Snapshot Branches Moving
blog.rust-lang.org
Project/Tooling Updates
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W06
www.fornjot.app
Performance Tools Newsletter (Q4 2021)
blog.mozilla.org
rsadsb: v0.5.0 Release
rsadsb.github.io
SixtyFPS becomes Slint
slint-ui.com
This week in Fluvio #22: the programmable streaming platform
www.fluvio.io
Rust Analyzer Changelog #116
rust-analyzer.github.io
GCC Rust Weekly Status Report 39
thephilbert.io
cargo-mutants 0.2.0: A new mutation testing tool for Rust
sourcefrog/cargo-mutants#readme
This week in Databend #29: an elastic and reliable cloud warehouse
weekly.databend.rs
Newsletters
This Month in Rust GameDev #30 - January 2022
gamedev.rs
Research
Learning and Programming Challenges of Rust: A Mixed-Methods Study
songlh.github.io
Observations/Thoughts
A Rust match made in hell
fasterthanli.me
Dare to ask for more #rust2024
smallcultfollowing.com
More Enum Types
blog.yoshuawuyts.com
My Rust Frontend Experiences
blog.urth.org
What is Rust's hole purpose?
blog.pnkfx.org
Mocking Time in Async Rust
www.ditto.live
Plugins in Rust: Getting our Hands Dirty
nullderef.com
Async IO fundamentals
www.ncameron.org
Async read and write traits
www.ncameron.org
PostgreSQL Aggregates with Rust
hoverbear.org
[ZH] 为什么我们要Associated Type?Why do we need Associated Type?
fengliang.io
Rust Walkthroughs
rsadsb: Raspberry Pi in-car ADS-B Display - with Rust!
rsadsb.github.io
Computing image filters with wgpu-rs
blog.redwarp.app
Let’s Build a WebSockets Project With Rust and Yew 0.19
https://fsjohnny.medium.com/lets-build-a-websockets-project-with-rust-and-yew-0-19-60720367399f
How to build a custom blockchain implementation in Rust using Substrate
blog.logrocket.com
Rust on iOS and Mac Catalyst: A Simple, Updated Guide
nadim.computer
Futures Concurrency III
blog.yoshuawuyts.com
Frontend Rust Without Node
blog.urth.org
Implementing a custom async runtime in a game engine
domwillia.ms
Assertion reporting
hole.tuziwo.info
[video] Implementing the NTFS filesystem in Rust
fosdem.org
[video] Rust Project: Deserialization with Serde
www.youtube.com
[video] 5 Tips for Rust Beginners
www.youtube.com
[video] Developing Embedded Applications in Rust
www.youtube.com
[series] [video] Rust Embedded for STM32 Microcontrollers - I2C protocol (part 1)
www.youtube.com
[series] [video] Rust Embedded for STM32 Microcontrollers - I2C protocol (with reference manual!)(part 2)
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 15: Implementing this
www.youtube.com
Miscellaneous
Rust core team alumni
brson.github.io
Crane Support for Alternative Registries and Git Dependencies
ipetkov.dev
Sustainability with Rust
aws.amazon.com
Rotating log files and reassembling them for inspection
www.openanalytics.eu
[DE] Grafische User-Interfaces: SixtyFPS-Toolkit aus Berlin als Slint überarbeitet
www.heise.de
👍2
Crate of the week: assay
This week's crate is assay, a test macro that puts each test in its own process and filesystem.
This week's crate is assay, a test macro that puts each test in its own process and filesystem.
This week in Rust #431 — 23 feb 2022
https://this-week-in-rust.org/blog/2022/02/23/this-week-in-rust-431/
https://this-week-in-rust.org/blog/2022/02/23/this-week-in-rust-431/
Updates from core
upgrade to LLVM 14
rust-lang/rust/pull/93577
compiler-builtins: handle Win64 builtins ABI change in LLVM 14
rust-lang/compiler-builtins/pull/455
add MemTagSanitizer Support
rust-lang/rust/pull/91675
put crate metadata first in the rlib
rust-lang/rust/pull/93816
debuginfo: support fat pointers to unsized tuples
rust-lang/rust/pull/94050
extend uninhabited enum variant branch elimination to also affect fallthrough
rust-lang/rust/pull/93387
fix inconsistent symbol mangling with -Zverbose
rust-lang/rust/pull/94037
fix pretty printing of enums without variants
rust-lang/rust/pull/94093
improve unused_unsafe lint
rust-lang/rust/pull/93678
add more info and suggestions to use of #[test] on invalid items
rust-lang/rust/pull/92959
do not suggest "is a function" for free variables
rust-lang/rust/pull/93996
suggest impl Trait return type when incorrectly using a generic return type
rust-lang/rust/pull/89892
suggest copying trait associated type bounds on lifetime error
rust-lang/rust/pull/92683
suggest deriving required supertraits
rust-lang/rust/pull/93693
suggest using raw strings when invalid escapes appear in literals
rust-lang/rust/pull/93999
correctly mark the span of captured arguments in format_args!()
rust-lang/rust/pull/94030
deny mixing bin crate type with lib crate types
rust-lang/rust/pull/92933
normalize obligation and expected trait_refs in confirm_poly_trait_refs
rust-lang/rust/pull/94108
only mark projection as ambiguous if GAT substs are constrained
rust-lang/rust/pull/93892
generator drop tracking: improve break and continue handling
rust-lang/rust/pull/93752
overhaul interning
rust-lang/rust/pull/93148
support pretty printing of invalid constants
rust-lang/rust/pull/94020
add mentions to Copy types being valid for union fields
rust-lang/rust/pull/94031
stabilize #[cfg(panic = "...")]
rust-lang/rust/pull/93658
do not ICE when inlining a function with un-satisfiable bounds
rust-lang/rust/pull/93024
fix ICE when using Box<T, A> with pointer sized A
rust-lang/rust/pull/94043
fix ScalarInt to char conversion
rust-lang/rust/pull/94086
make [u8]::cmp implementation branchless
rust-lang/rust/pull/93962
add a try_collect() helper method to Iterator
rust-lang/rust/pull/94041
add basic platform support to library/{panic_}unwind for m68k
rust-lang/rust/pull/93949
add a stack-pin!-ning macro to core::pin
rust-lang/rust/pull/93176
stabilize pin_static_ref
rust-lang/rust/pull/93580
core: implement ASCII trim functions on byte slices
rust-lang/rust/pull/93686
asm: allow the use of r8-r14 as clobbers on Thumb1
rust-lang/rust/pull/93877
futures: fix Sync impl of BiLockGuard
rust-lang/futures-rs/pull/2570
cargo new should not add ignore rule on Cargo.lock inside subdirs
rust-lang/cargo/pull/10379
rustdoc: buffer JSON output
rust-lang/rust/pull/93954
rustdoc: avoid duplicating macros in sidebar
rust-lang/rust/pull/94002
rustdoc: collect traits in scope for lang items
rust-lang/rust/pull/93766
rustdoc: resolve intra-doc links when checking HTML
rust-lang/rust/pull/93605
rustdoc: add --scrape-tests option to scrape functions marked #[test]
rust-lang/rust/pull/93497
clippy: move transmute_undefined_repr back to nursery
rust-lang/rust/pull/94014
clippy: don't lint Default::default if it is the udpate syntax base
rust-lang/rust-clippy/pull/8433
clippy: don't lint match expressions with cfged arms
rust-lang/rust-clippy/pull/8443
clippy: don't lint needless_borrow in method receiver positions
rust-lang/rust-clippy/pull/8441
clippy: fix await_holding_lock not linting parking_lot Mutex/RwLock
rust-lang/rust-clippy/pull/8419
clippy: improve redundant_slicing lint
rust-lang/rust-clippy/pull/8218
clippy: lint enum-to-int casts with cast_possible_truncation
rust-lang/rust-clippy/pull/8381
clippy: some more fixes for transmute_undefined_repr
rust-lang/rust-clippy/pull/8440
clippy: new lint: recursive_format_impl
rust-lang/rust-clippy/pull/8188
clippy: trigger ptr_as_ptr inside macros
rust-lang/rust-clippy/pull/8442
upgrade to LLVM 14
rust-lang/rust/pull/93577
compiler-builtins: handle Win64 builtins ABI change in LLVM 14
rust-lang/compiler-builtins/pull/455
add MemTagSanitizer Support
rust-lang/rust/pull/91675
put crate metadata first in the rlib
rust-lang/rust/pull/93816
debuginfo: support fat pointers to unsized tuples
rust-lang/rust/pull/94050
extend uninhabited enum variant branch elimination to also affect fallthrough
rust-lang/rust/pull/93387
fix inconsistent symbol mangling with -Zverbose
rust-lang/rust/pull/94037
fix pretty printing of enums without variants
rust-lang/rust/pull/94093
improve unused_unsafe lint
rust-lang/rust/pull/93678
add more info and suggestions to use of #[test] on invalid items
rust-lang/rust/pull/92959
do not suggest "is a function" for free variables
rust-lang/rust/pull/93996
suggest impl Trait return type when incorrectly using a generic return type
rust-lang/rust/pull/89892
suggest copying trait associated type bounds on lifetime error
rust-lang/rust/pull/92683
suggest deriving required supertraits
rust-lang/rust/pull/93693
suggest using raw strings when invalid escapes appear in literals
rust-lang/rust/pull/93999
correctly mark the span of captured arguments in format_args!()
rust-lang/rust/pull/94030
deny mixing bin crate type with lib crate types
rust-lang/rust/pull/92933
normalize obligation and expected trait_refs in confirm_poly_trait_refs
rust-lang/rust/pull/94108
only mark projection as ambiguous if GAT substs are constrained
rust-lang/rust/pull/93892
generator drop tracking: improve break and continue handling
rust-lang/rust/pull/93752
overhaul interning
rust-lang/rust/pull/93148
support pretty printing of invalid constants
rust-lang/rust/pull/94020
add mentions to Copy types being valid for union fields
rust-lang/rust/pull/94031
stabilize #[cfg(panic = "...")]
rust-lang/rust/pull/93658
do not ICE when inlining a function with un-satisfiable bounds
rust-lang/rust/pull/93024
fix ICE when using Box<T, A> with pointer sized A
rust-lang/rust/pull/94043
fix ScalarInt to char conversion
rust-lang/rust/pull/94086
make [u8]::cmp implementation branchless
rust-lang/rust/pull/93962
add a try_collect() helper method to Iterator
rust-lang/rust/pull/94041
add basic platform support to library/{panic_}unwind for m68k
rust-lang/rust/pull/93949
add a stack-pin!-ning macro to core::pin
rust-lang/rust/pull/93176
stabilize pin_static_ref
rust-lang/rust/pull/93580
core: implement ASCII trim functions on byte slices
rust-lang/rust/pull/93686
asm: allow the use of r8-r14 as clobbers on Thumb1
rust-lang/rust/pull/93877
futures: fix Sync impl of BiLockGuard
rust-lang/futures-rs/pull/2570
cargo new should not add ignore rule on Cargo.lock inside subdirs
rust-lang/cargo/pull/10379
rustdoc: buffer JSON output
rust-lang/rust/pull/93954
rustdoc: avoid duplicating macros in sidebar
rust-lang/rust/pull/94002
rustdoc: collect traits in scope for lang items
rust-lang/rust/pull/93766
rustdoc: resolve intra-doc links when checking HTML
rust-lang/rust/pull/93605
rustdoc: add --scrape-tests option to scrape functions marked #[test]
rust-lang/rust/pull/93497
clippy: move transmute_undefined_repr back to nursery
rust-lang/rust/pull/94014
clippy: don't lint Default::default if it is the udpate syntax base
rust-lang/rust-clippy/pull/8433
clippy: don't lint match expressions with cfged arms
rust-lang/rust-clippy/pull/8443
clippy: don't lint needless_borrow in method receiver positions
rust-lang/rust-clippy/pull/8441
clippy: fix await_holding_lock not linting parking_lot Mutex/RwLock
rust-lang/rust-clippy/pull/8419
clippy: improve redundant_slicing lint
rust-lang/rust-clippy/pull/8218
clippy: lint enum-to-int casts with cast_possible_truncation
rust-lang/rust-clippy/pull/8381
clippy: some more fixes for transmute_undefined_repr
rust-lang/rust-clippy/pull/8440
clippy: new lint: recursive_format_impl
rust-lang/rust-clippy/pull/8188
clippy: trigger ptr_as_ptr inside macros
rust-lang/rust-clippy/pull/8442
Updates from Rust Community
Official
rust-analyzer joins the Rust organization!
blog.rust-lang.org
Rust Compiler February 2022 Steering Cycle
blog.rust-lang.org
Lang team February update
blog.rust-lang.org
Rust Compiler Ambitions for 2022
blog.rust-lang.org
Foundation
Member Spotlight: simplabs
foundation.rust-lang.org
Rust Foundation Attracts Top Talent to Senior Leadership Roles
foundation.rust-lang.org
Project/Tooling Updates
Announcing Tokio Metrics 0.1
tokio.rs
Rust-Analyzer Changelog #117
rust-analyzer.github.io
clap 3.1: A step towards 4.0
epage.github.io
Zellij 0.25.0: floating panes, Tmux mode and more!
zellij.dev
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W07
www.fornjot.app
Hurl 1.6.0, a tool for running and testing HTTP requests with plain text
hurl.dev
Slint (former SixtyFPS, UI crate) Project Update
slint-ui.com
This week in Fluvio #23: the programmable streaming platform
www.fluvio.io
Research
Verifying Dynamic Trait Objects in Rust
www.cs.cornell.edu
Observations/Thoughts
We need to talk about RFCs
www.ncameron.org
Analyzing unsized variables in Rust
poignardazur.github.io
pip and cargo are not the same
blog.williammanley.net
hyper 1.0 timeline
seanmonstar.com
We’re Porting Our Database Drivers to Async Rust
www.scylladb.com
We're choosing Rust, and not Go, C++, or Node.js
symless.com
Belgium Rust Meetup (February 3 2022): async Qt, bubbly bubblesorts and how to win hackathons.
video.rubdos.be
Rust Walkthroughs
Embedding a JavaScript Engine (quickjs) in a Rust Project
andrieshiemstra/ScriptExtensionLayerExample
Which Rust web framework to choose in 2022 (with code examples)
kerkour.com
Annotating a compile-time value to a rust struct
lukas-prokop.at
Type inference in ogma using graphs
www.kurtlawrence.info
Compiler Adventures, part 2: Constant Propagation
medium.com/@predrag.gruevski
Bevy Minesweeper Series' Articles
dev.to
Rust for web devs: Destructuring
paulbutler.org
Checking Tailwind Class Names at Compile Time with Rust
blog.urth.org
Building a Blockchain Oracle for Solana
medium.com/loadsys-solutions
[video] Tokio Axum with David Pedersen
www.youtube.com
[video] Developing Embedded Rust Drivers with Pretty HAL Machine
www.youtube.com
[video] Rust Project: Custom Deserialization with Serde
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 16: Evaluating object keys
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 17: else if statements and index ranges
www.youtube.com
Miscellaneous
RustFest LATAM is on! 🦀
rustfest.world
AWS: Here's why we are investing in the Rust programming language
www.zdnet.com
[DE] Programmiersprache: Rust legt im produktiven Einsatz zu
www.heise.de
Official
rust-analyzer joins the Rust organization!
blog.rust-lang.org
Rust Compiler February 2022 Steering Cycle
blog.rust-lang.org
Lang team February update
blog.rust-lang.org
Rust Compiler Ambitions for 2022
blog.rust-lang.org
Foundation
Member Spotlight: simplabs
foundation.rust-lang.org
Rust Foundation Attracts Top Talent to Senior Leadership Roles
foundation.rust-lang.org
Project/Tooling Updates
Announcing Tokio Metrics 0.1
tokio.rs
Rust-Analyzer Changelog #117
rust-analyzer.github.io
clap 3.1: A step towards 4.0
epage.github.io
Zellij 0.25.0: floating panes, Tmux mode and more!
zellij.dev
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W07
www.fornjot.app
Hurl 1.6.0, a tool for running and testing HTTP requests with plain text
hurl.dev
Slint (former SixtyFPS, UI crate) Project Update
slint-ui.com
This week in Fluvio #23: the programmable streaming platform
www.fluvio.io
Research
Verifying Dynamic Trait Objects in Rust
www.cs.cornell.edu
Observations/Thoughts
We need to talk about RFCs
www.ncameron.org
Analyzing unsized variables in Rust
poignardazur.github.io
pip and cargo are not the same
blog.williammanley.net
hyper 1.0 timeline
seanmonstar.com
We’re Porting Our Database Drivers to Async Rust
www.scylladb.com
We're choosing Rust, and not Go, C++, or Node.js
symless.com
Belgium Rust Meetup (February 3 2022): async Qt, bubbly bubblesorts and how to win hackathons.
video.rubdos.be
Rust Walkthroughs
Embedding a JavaScript Engine (quickjs) in a Rust Project
andrieshiemstra/ScriptExtensionLayerExample
Which Rust web framework to choose in 2022 (with code examples)
kerkour.com
Annotating a compile-time value to a rust struct
lukas-prokop.at
Type inference in ogma using graphs
www.kurtlawrence.info
Compiler Adventures, part 2: Constant Propagation
medium.com/@predrag.gruevski
Bevy Minesweeper Series' Articles
dev.to
Rust for web devs: Destructuring
paulbutler.org
Checking Tailwind Class Names at Compile Time with Rust
blog.urth.org
Building a Blockchain Oracle for Solana
medium.com/loadsys-solutions
[video] Tokio Axum with David Pedersen
www.youtube.com
[video] Developing Embedded Rust Drivers with Pretty HAL Machine
www.youtube.com
[video] Rust Project: Custom Deserialization with Serde
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 16: Evaluating object keys
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 17: else if statements and index ranges
www.youtube.com
Miscellaneous
RustFest LATAM is on! 🦀
rustfest.world
AWS: Here's why we are investing in the Rust programming language
www.zdnet.com
[DE] Programmiersprache: Rust legt im produktiven Einsatz zu
www.heise.de
Crate of the week: cargo-nextest
This week's crate is cargo-nextest, a new fast test runner for Rust.
This week's crate is cargo-nextest, a new fast test runner for Rust.
This week in Rust #432 — 02 mar 2022
https://this-week-in-rust.org/blog/2022/03/02/this-week-in-rust-432/
https://this-week-in-rust.org/blog/2022/03/02/this-week-in-rust-432/
Updates from core
apply noundef attribute to all scalar types which do not permit raw init
rust-lang/rust/pull/94157
apply noundef metadata to loads of types that do not permit raw init
rust-lang/rust/pull/94158
suggest a float literal when dividing a floating-point type by {integer}
rust-lang/rust/pull/94078
suggest adding { .. } around more bad const generic exprs
rust-lang/rust/pull/92884
suggest calling .display() on PathBuf too
rust-lang/rust/pull/94240
do not suggest using a const parameter when there are bounds on an unused type parameter
rust-lang/rust/pull/93400
do not suggest wrapping an item if it has ambiguous un-imported methods
rust-lang/rust/pull/94237
diagnostic: suggest parens when users want logical ops, but get closures
rust-lang/rust/pull/94344
better error if the user tries to do assignment ... else
rust-lang/rust/pull/94211
rustc_errors: let DiagnosticBuilder::emit return a "guarantee of emission"
rust-lang/rust/pull/93368
consider mutations as borrows in generator drop tracking
rust-lang/rust/pull/94068
miri: prune backtraces similar to RUST_BACKTRACE=1 logic
rust-lang/miri/pull/1977
miri: prune stacktraces for tag-tracking diagnostics too
rust-lang/miri/pull/1987
fix ICE when passing block to while-loop condition
rust-lang/rust/pull/94248
fix ICE when using Box<T, A> with large A
rust-lang/rust/pull/94414
convert newtype_index to a proc macro
rust-lang/rust/pull/93878
gracefully handle non-UTF-8 string slices when pretty printing
rust-lang/rust/pull/94156
improve string literal unescaping
rust-lang/rust/pull/94316
introduce ChunkedBitSet and use it for some dataflow analyses
rust-lang/rust/pull/93984
simplify rustc_serialize by dropping support for decoding into JSON
rust-lang/rust/pull/93839
only create a single expansion for each inline integration
rust-lang/rust/pull/94427
remove in band lifetimes
rust-lang/rust/pull/93845
codegen_gcc: add support for on_stack parameters
rust-lang/rustc_codegen_gcc/pull/135
codegen_gcc: don't export global allocs which are not statics
rust-lang/rustc_codegen_gcc/pull/133
codegen_gcc: fix miscompilation when cg_ssa is using multiple builders at the same time
rust-lang/rustc_codegen_gcc/pull/131
codegen_gcc: support -Cpanic=unwind without unwinding
rust-lang/rustc_codegen_gcc/pull/132
implement LowerHex on Scalar to clean up their display in rustdoc
rust-lang/rust/pull/94189
add slice::{from_ptr_range, from_mut_ptr_range}
rust-lang/rust/pull/89793
futures: FuturesUnordered: fix partial iteration
rust-lang/futures-rs/pull/2574
portable-simd: bitmask conversion trait
rust-lang/portable-simd/pull/239
cargo: implement "artifact dependencies" (RFC #3028)
rust-lang/cargo/pull/9992
cargo: add -Z check-cfg-features to enable compile-time checking of features
rust-lang/cargo/pull/10408
cargo: add common profile validation
rust-lang/cargo/pull/10411
cargo: enable propagating host rustflags to build noscripts
rust-lang/cargo/pull/10395
clippy: add print_in_format_impl lint
rust-lang/rust-clippy/pull/8253
clippy: disable new-without-default for #[doc(hidden)] new() methods
rust-lang/rust-clippy/pull/8472
clippy: false positive redundant_closure when using ref pattern in closure params
rust-lang/rust-clippy/pull/8466
clippy: fix ptr_arg
rust-lang/rust-clippy/pull/8464
clippy: fix some unnecessary_filter_map false positives
rust-lang/rust-clippy/pull/8479
clippy: fix false positives of large_enum_variant
rust-lang/rust-clippy/pull/8453
apply noundef attribute to all scalar types which do not permit raw init
rust-lang/rust/pull/94157
apply noundef metadata to loads of types that do not permit raw init
rust-lang/rust/pull/94158
suggest a float literal when dividing a floating-point type by {integer}
rust-lang/rust/pull/94078
suggest adding { .. } around more bad const generic exprs
rust-lang/rust/pull/92884
suggest calling .display() on PathBuf too
rust-lang/rust/pull/94240
do not suggest using a const parameter when there are bounds on an unused type parameter
rust-lang/rust/pull/93400
do not suggest wrapping an item if it has ambiguous un-imported methods
rust-lang/rust/pull/94237
diagnostic: suggest parens when users want logical ops, but get closures
rust-lang/rust/pull/94344
better error if the user tries to do assignment ... else
rust-lang/rust/pull/94211
rustc_errors: let DiagnosticBuilder::emit return a "guarantee of emission"
rust-lang/rust/pull/93368
consider mutations as borrows in generator drop tracking
rust-lang/rust/pull/94068
miri: prune backtraces similar to RUST_BACKTRACE=1 logic
rust-lang/miri/pull/1977
miri: prune stacktraces for tag-tracking diagnostics too
rust-lang/miri/pull/1987
fix ICE when passing block to while-loop condition
rust-lang/rust/pull/94248
fix ICE when using Box<T, A> with large A
rust-lang/rust/pull/94414
convert newtype_index to a proc macro
rust-lang/rust/pull/93878
gracefully handle non-UTF-8 string slices when pretty printing
rust-lang/rust/pull/94156
improve string literal unescaping
rust-lang/rust/pull/94316
introduce ChunkedBitSet and use it for some dataflow analyses
rust-lang/rust/pull/93984
simplify rustc_serialize by dropping support for decoding into JSON
rust-lang/rust/pull/93839
only create a single expansion for each inline integration
rust-lang/rust/pull/94427
remove in band lifetimes
rust-lang/rust/pull/93845
codegen_gcc: add support for on_stack parameters
rust-lang/rustc_codegen_gcc/pull/135
codegen_gcc: don't export global allocs which are not statics
rust-lang/rustc_codegen_gcc/pull/133
codegen_gcc: fix miscompilation when cg_ssa is using multiple builders at the same time
rust-lang/rustc_codegen_gcc/pull/131
codegen_gcc: support -Cpanic=unwind without unwinding
rust-lang/rustc_codegen_gcc/pull/132
implement LowerHex on Scalar to clean up their display in rustdoc
rust-lang/rust/pull/94189
add slice::{from_ptr_range, from_mut_ptr_range}
rust-lang/rust/pull/89793
futures: FuturesUnordered: fix partial iteration
rust-lang/futures-rs/pull/2574
portable-simd: bitmask conversion trait
rust-lang/portable-simd/pull/239
cargo: implement "artifact dependencies" (RFC #3028)
rust-lang/cargo/pull/9992
cargo: add -Z check-cfg-features to enable compile-time checking of features
rust-lang/cargo/pull/10408
cargo: add common profile validation
rust-lang/cargo/pull/10411
cargo: enable propagating host rustflags to build noscripts
rust-lang/cargo/pull/10395
clippy: add print_in_format_impl lint
rust-lang/rust-clippy/pull/8253
clippy: disable new-without-default for #[doc(hidden)] new() methods
rust-lang/rust-clippy/pull/8472
clippy: false positive redundant_closure when using ref pattern in closure params
rust-lang/rust-clippy/pull/8466
clippy: fix ptr_arg
rust-lang/rust-clippy/pull/8464
clippy: fix some unnecessary_filter_map false positives
rust-lang/rust-clippy/pull/8479
clippy: fix false positives of large_enum_variant
rust-lang/rust-clippy/pull/8453