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
Updates from Rust Community
Official
Announcing Rust 1.59.0
blog.rust-lang.org
Project/Tooling Updates
Rust-Analyzer Changelog #118
rust-analyzer.github.io
GCC Rust Monthly Report #14 February 2022
thephilbert.io
rustc_codegen_gcc: Progress Report #9
blog.antoyo.xyz
Announcing Actix Web v4.0
actix/actix-web/wiki/v4-Announcement
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W08
www.fornjot.app
Slint (formerly SixtyFPS, UI crate) weekly update
slint-ui.com
Announcing Rust runtime for AWS Lambda 0.5
awslabs/aws-lambda-rust-runtime/releases/tag/v0.5.0
BonsaiDb February update: Supporting and Optimizing BonsaiDb
bonsaidb.io
Wasmer 2.2: Major Singlepass Improvements
wasmer.io
OpenMLS v0.4 Release
openmls.tech
This week in Databend #31: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs
Research
Assessing the alignment between the information needs of developers and the documentation of programming languages: A case study on Rust
arxiv.org
[video] Talk on Pattern-defeating Quicksort, the algorithm behind sort_unstable
www.youtube.com
Observations/Thoughts
How to speed up the Rust compiler in 2022
nnethercote.github.io
IDEs and proc-macros
veykril.github.io
Mental models for learning Rust
kerkour.com
Warnings and Linter Errors: The Awkward Middle Children
www.thecodedmessage.com
CXX-Qt - Safe Rust Bindings for Qt
www.kdab.com
TreeFlat: Building a (possible) faster tree for Rust, inspired by APL
www.elmalabarista.com
Discussion: New unchecked keyword
ohsayan.github.io
[video] Rust's Vision in 2022
www.youtube.com
[ZH] [audio] 与黄光星畅聊 Rust、Redis 与新加坡
rusttalk.github.io
Rust Walkthroughs
Rust's Rules are Made to Be Broken
blog.warp.dev
The foundations of end-to-end encryption: Key exchange (with code example in Rust)
kerkour.com
Background jobs in Rust
kerkour.com
Shaking off the Rust
www.sotr.blog/
Integrating Rust With Android Development
blog.devgenius.io
A taste of Rust
www.hacklewayne.com
Rust: Adding default cargo features without breaking Semantic Versioning
slint-ui.com
Highway to the TrustZone (Using Rust with TrustZone-M)
blog.m10.io
Building a new graphics engine in Rust - Part 2
www.polymonster.co.uk
[DE] Ferris Talk #6: Ein neuer Trick für die Formatstrings in Rust
www.heise.de
[series] [video] Writing a Programming Language (in Rust) 18: Laurel: Calling a string as a process
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 19: Laurel: Streamlining subcommands
www.youtube.com
Miscellaneous
Modern Telecom Network Tracing
oxio.com
Achieving >1TB/hr backup speed by implementing the core client-side data pipeline in Rust
www.druva.com
Black Hat Rust Cyberwar Discount
kerkour.com
[DE] Programmiersprache Rust 1.59 integriert Assembler-Code
www.heise.de
Official
Announcing Rust 1.59.0
blog.rust-lang.org
Project/Tooling Updates
Rust-Analyzer Changelog #118
rust-analyzer.github.io
GCC Rust Monthly Report #14 February 2022
thephilbert.io
rustc_codegen_gcc: Progress Report #9
blog.antoyo.xyz
Announcing Actix Web v4.0
actix/actix-web/wiki/v4-Announcement
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W08
www.fornjot.app
Slint (formerly SixtyFPS, UI crate) weekly update
slint-ui.com
Announcing Rust runtime for AWS Lambda 0.5
awslabs/aws-lambda-rust-runtime/releases/tag/v0.5.0
BonsaiDb February update: Supporting and Optimizing BonsaiDb
bonsaidb.io
Wasmer 2.2: Major Singlepass Improvements
wasmer.io
OpenMLS v0.4 Release
openmls.tech
This week in Databend #31: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs
Research
Assessing the alignment between the information needs of developers and the documentation of programming languages: A case study on Rust
arxiv.org
[video] Talk on Pattern-defeating Quicksort, the algorithm behind sort_unstable
www.youtube.com
Observations/Thoughts
How to speed up the Rust compiler in 2022
nnethercote.github.io
IDEs and proc-macros
veykril.github.io
Mental models for learning Rust
kerkour.com
Warnings and Linter Errors: The Awkward Middle Children
www.thecodedmessage.com
CXX-Qt - Safe Rust Bindings for Qt
www.kdab.com
TreeFlat: Building a (possible) faster tree for Rust, inspired by APL
www.elmalabarista.com
Discussion: New unchecked keyword
ohsayan.github.io
[video] Rust's Vision in 2022
www.youtube.com
[ZH] [audio] 与黄光星畅聊 Rust、Redis 与新加坡
rusttalk.github.io
Rust Walkthroughs
Rust's Rules are Made to Be Broken
blog.warp.dev
The foundations of end-to-end encryption: Key exchange (with code example in Rust)
kerkour.com
Background jobs in Rust
kerkour.com
Shaking off the Rust
www.sotr.blog/
Integrating Rust With Android Development
blog.devgenius.io
A taste of Rust
www.hacklewayne.com
Rust: Adding default cargo features without breaking Semantic Versioning
slint-ui.com
Highway to the TrustZone (Using Rust with TrustZone-M)
blog.m10.io
Building a new graphics engine in Rust - Part 2
www.polymonster.co.uk
[DE] Ferris Talk #6: Ein neuer Trick für die Formatstrings in Rust
www.heise.de
[series] [video] Writing a Programming Language (in Rust) 18: Laurel: Calling a string as a process
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 19: Laurel: Streamlining subcommands
www.youtube.com
Miscellaneous
Modern Telecom Network Tracing
oxio.com
Achieving >1TB/hr backup speed by implementing the core client-side data pipeline in Rust
www.druva.com
Black Hat Rust Cyberwar Discount
kerkour.com
[DE] Programmiersprache Rust 1.59 integriert Assembler-Code
www.heise.de
👍3😢1
Crate of the week: prae
This week's crate is prae, a crate with macros to define types with inbuilt invariants.
This week's crate is prae, a crate with macros to define types with inbuilt invariants.
👍5
This week in Rust #433 — 09 mar 2022
https://this-week-in-rust.org/blog/2022/03/09/this-week-in-rust-433/
https://this-week-in-rust.org/blog/2022/03/09/this-week-in-rust-433/
Updates from core
implement thread local cell methods (RFC #3184)
rust-lang/rust/pull/92123
implement the expect attribute (RFC #2383)
rust-lang/rust/pull/87835
Adt copy suggestions
rust-lang/rust/pull/94375
do not point at whole file missing fn main
rust-lang/rust/pull/93142
downgrade #[test] on macro call to warning
rust-lang/rust/pull/94624
generalize "remove &" and "add *" suggestions to more than one deref
rust-lang/rust/pull/91545
lint against more useless #[must_use] attributes
rust-lang/rust/pull/93926
improve unexpected_cfgs lint when their is no value expected
rust-lang/rust/pull/94561
improve allowness of the unexpected_cfgs lint
rust-lang/rust/pull/94433
improve error message for failed bitcode load
rust-lang/rust/pull/94672
suggest adding a new lifetime parameter when two elided lifetimes should match up for traits and impls
rust-lang/rust/pull/94464
suggest removing a semicolon after derive attributes
rust-lang/rust/pull/94633
caching the stable hash of Ty within itself
rust-lang/rust/pull/94299
clarify Layout interning
rust-lang/rust/pull/94690
introduce ConstAllocation
rust-lang/rust/pull/94597
chalk: recursive: fix hang on fulfill by slightly smarter check for progress
rust-lang/chalk/pull/752
miri: make sure we notice when a u16 is loaded at offset 1 into a u8 allocation
rust-lang/miri/pull/1994
miri: add more simd_reduce intrinsics
rust-lang/miri/pull/2001
miri: adjust for div/rem overflow being UB
rust-lang/miri/pull/1992
miri: also test f32/f64 simd_reduce
rust-lang/miri/pull/2003
miri: implement missing SIMD comparison operators, simd_xor, and simd_reduce_all
rust-lang/miri/pull/2000
miri: implement more SIMD intrinsics
rust-lang/miri/pull/2004
miri: implement simd_neg and simd_fabs
rust-lang/miri/pull/1997
miri: implement simd_saturating intrinsics
rust-lang/miri/pull/2007
stabilize const_fn_fn_ptr_basics, const_fn_trait_bound, and const_impl_trait
rust-lang/rust/pull/93827
add #[track_caller] to track callers when initializing poisoned Once
rust-lang/rust/pull/94236
add Atomic*::from_mut_slice
rust-lang/rust/pull/94384
portable SIMD: add bitmask i{N <8} -> u8 impls
rust-lang/portable-simd/pull/250
futures: Shared: fix false detection of inner panics
rust-lang/futures-rs/pull/2576
support GATs in Rustdoc
rust-lang/rust/pull/94009
rustfmt: fix missing struct field separators under certain conditions
rust-lang/rustfmt/pull/5159
rustfmt: prevent wrapping markdown headers in doc comments
rust-lang/rustfmt/pull/5242
rustfmt: fallback to dir_path when relative external mod resolution fails
rust-lang/rustfmt/pull/5205
clippy: add unnecessary-find-map lint
rust-lang/rust-clippy/pull/8489
clippy: add lint to detect allow attributes without reason
rust-lang/rust-clippy/pull/8504
clippy: lint for casting between raw slice pointers with different element sizes
rust-lang/rust-clippy/pull/8445
clippy: new lint: missing-spin-loop
rust-lang/rust-clippy/pull/8174
clippy: use .into_iter() rather than .drain(..)
rust-lang/rust-clippy/pull/8483
clippy: check use_self in pat
rust-lang/rust-clippy/pull/8456
clippy: omit dbg-macro in test code
rust-lang/rust-clippy/pull/8500
clippy: optimize redundant-clone
rust-lang/rust-clippy/pull/8414
clippy: transmute-undefined-repr to nursery again
rust-lang/rust-clippy/pull/8432
implement thread local cell methods (RFC #3184)
rust-lang/rust/pull/92123
implement the expect attribute (RFC #2383)
rust-lang/rust/pull/87835
Adt copy suggestions
rust-lang/rust/pull/94375
do not point at whole file missing fn main
rust-lang/rust/pull/93142
downgrade #[test] on macro call to warning
rust-lang/rust/pull/94624
generalize "remove &" and "add *" suggestions to more than one deref
rust-lang/rust/pull/91545
lint against more useless #[must_use] attributes
rust-lang/rust/pull/93926
improve unexpected_cfgs lint when their is no value expected
rust-lang/rust/pull/94561
improve allowness of the unexpected_cfgs lint
rust-lang/rust/pull/94433
improve error message for failed bitcode load
rust-lang/rust/pull/94672
suggest adding a new lifetime parameter when two elided lifetimes should match up for traits and impls
rust-lang/rust/pull/94464
suggest removing a semicolon after derive attributes
rust-lang/rust/pull/94633
caching the stable hash of Ty within itself
rust-lang/rust/pull/94299
clarify Layout interning
rust-lang/rust/pull/94690
introduce ConstAllocation
rust-lang/rust/pull/94597
chalk: recursive: fix hang on fulfill by slightly smarter check for progress
rust-lang/chalk/pull/752
miri: make sure we notice when a u16 is loaded at offset 1 into a u8 allocation
rust-lang/miri/pull/1994
miri: add more simd_reduce intrinsics
rust-lang/miri/pull/2001
miri: adjust for div/rem overflow being UB
rust-lang/miri/pull/1992
miri: also test f32/f64 simd_reduce
rust-lang/miri/pull/2003
miri: implement missing SIMD comparison operators, simd_xor, and simd_reduce_all
rust-lang/miri/pull/2000
miri: implement more SIMD intrinsics
rust-lang/miri/pull/2004
miri: implement simd_neg and simd_fabs
rust-lang/miri/pull/1997
miri: implement simd_saturating intrinsics
rust-lang/miri/pull/2007
stabilize const_fn_fn_ptr_basics, const_fn_trait_bound, and const_impl_trait
rust-lang/rust/pull/93827
add #[track_caller] to track callers when initializing poisoned Once
rust-lang/rust/pull/94236
add Atomic*::from_mut_slice
rust-lang/rust/pull/94384
portable SIMD: add bitmask i{N <8} -> u8 impls
rust-lang/portable-simd/pull/250
futures: Shared: fix false detection of inner panics
rust-lang/futures-rs/pull/2576
support GATs in Rustdoc
rust-lang/rust/pull/94009
rustfmt: fix missing struct field separators under certain conditions
rust-lang/rustfmt/pull/5159
rustfmt: prevent wrapping markdown headers in doc comments
rust-lang/rustfmt/pull/5242
rustfmt: fallback to dir_path when relative external mod resolution fails
rust-lang/rustfmt/pull/5205
clippy: add unnecessary-find-map lint
rust-lang/rust-clippy/pull/8489
clippy: add lint to detect allow attributes without reason
rust-lang/rust-clippy/pull/8504
clippy: lint for casting between raw slice pointers with different element sizes
rust-lang/rust-clippy/pull/8445
clippy: new lint: missing-spin-loop
rust-lang/rust-clippy/pull/8174
clippy: use .into_iter() rather than .drain(..)
rust-lang/rust-clippy/pull/8483
clippy: check use_self in pat
rust-lang/rust-clippy/pull/8456
clippy: omit dbg-macro in test code
rust-lang/rust-clippy/pull/8500
clippy: optimize redundant-clone
rust-lang/rust-clippy/pull/8414
clippy: transmute-undefined-repr to nursery again
rust-lang/rust-clippy/pull/8432
Updates from Rust Community
Official
Rust Foundation
foundation.rust-lang.org
Security advisory for the regex crate (CVE-2022-24713)
blog.rust-lang.org
Newsletters
Rust Nigeria Community Newsletter
rustnigeria.curated.co
Project/Tooling Updates
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W09
www.fornjot.app
This week in Fluvio #24: the programmable streaming platform
www.fluvio.io
This Month in Rust OSDev: February 2022 | Rust OSDev
rust-osdev.com
IntelliJ Rust Changelog #166
intellij-rust.github.io
Rust-Analyzer Changelog #119
rust-analyzer.github.io
This week in Databend #32: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs
[DE] WebAssembly-Runtime: Wasmer 2.2 liefert mehr Leistung im Singlepass Compiler
www.heise.de
Observations/Thoughts
Safe Pin projections through view types
blog.yoshuawuyts.com
Improving Criterion.rs
www.tweag.io
Request coalescing in async Rust
fasterthanli.me
Hyper’s Vision
seanmonstar.com
Introduction - Effective Rust
www.lurklurk.org
Rust Walkthroughs
Functional Programming in Rust
kerkour.com
Fuzzing unsafe code in a Rust crate
medium.com/@adetaylor
Mint tokens on Solana using the Rust SDK
https://kristohb.medium.com/mint-tokens-on-solana-using-the-rust-sdk-3b05b07ca842
Implementing a size-bounded LRU cache with expiring entries for my DNS server (in Rust)
memo.barrucadu.co.uk
[series] [video] Writing a Programming Language (in Rust) 20: Laurel: Porting a bash noscript to Laurel
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 21: Laurel: Type methods
www.youtube.com
Miscellaneous
SAE seeking volunteers for SAfEr Rust Task Force
connection.sae.org
[audio] What's New in Rust 1.58 and 1.59 :: Rustacean Station
rustacean-station.org
[audio] Tor with Nick Mathewson :: Rustacean Station
rustacean-station.org
[video] Implementing and Optimizing a Wordle Solver in Rust
www.youtube.com
Official
Rust Foundation
foundation.rust-lang.org
Security advisory for the regex crate (CVE-2022-24713)
blog.rust-lang.org
Newsletters
Rust Nigeria Community Newsletter
rustnigeria.curated.co
Project/Tooling Updates
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W09
www.fornjot.app
This week in Fluvio #24: the programmable streaming platform
www.fluvio.io
This Month in Rust OSDev: February 2022 | Rust OSDev
rust-osdev.com
IntelliJ Rust Changelog #166
intellij-rust.github.io
Rust-Analyzer Changelog #119
rust-analyzer.github.io
This week in Databend #32: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs
[DE] WebAssembly-Runtime: Wasmer 2.2 liefert mehr Leistung im Singlepass Compiler
www.heise.de
Observations/Thoughts
Safe Pin projections through view types
blog.yoshuawuyts.com
Improving Criterion.rs
www.tweag.io
Request coalescing in async Rust
fasterthanli.me
Hyper’s Vision
seanmonstar.com
Introduction - Effective Rust
www.lurklurk.org
Rust Walkthroughs
Functional Programming in Rust
kerkour.com
Fuzzing unsafe code in a Rust crate
medium.com/@adetaylor
Mint tokens on Solana using the Rust SDK
https://kristohb.medium.com/mint-tokens-on-solana-using-the-rust-sdk-3b05b07ca842
Implementing a size-bounded LRU cache with expiring entries for my DNS server (in Rust)
memo.barrucadu.co.uk
[series] [video] Writing a Programming Language (in Rust) 20: Laurel: Porting a bash noscript to Laurel
www.youtube.com
[series] [video] Writing a Programming Language (in Rust) 21: Laurel: Type methods
www.youtube.com
Miscellaneous
SAE seeking volunteers for SAfEr Rust Task Force
connection.sae.org
[audio] What's New in Rust 1.58 and 1.59 :: Rustacean Station
rustacean-station.org
[audio] Tor with Nick Mathewson :: Rustacean Station
rustacean-station.org
[video] Implementing and Optimizing a Wordle Solver in Rust
www.youtube.com
👍1
Crate of the week: cfb
This week's crate is cfb, a crate to read/write Compound File Binary (structured storage) files.
This week's crate is cfb, a crate to read/write Compound File Binary (structured storage) files.
This week in Rust #434 — 16 mar 2022
https://this-week-in-rust.org/blog/2022/03/16/this-week-in-rust-434/
https://this-week-in-rust.org/blog/2022/03/16/this-week-in-rust-434/
Updates from core
diagnostics: do not spuriously claim something is "not an iterator"
rust-lang/rust/pull/94870
diagnostics: single colon within <> probably, not type anoscription
rust-lang/rust/pull/94865
improve suggestion when casting usize to (possibly) wide pointer
rust-lang/rust/pull/92150
warn users about || in let chain expressions
rust-lang/rust/pull/94754
suggest if let/let_else for refutable pat in let
rust-lang/rust/pull/94739
suggest using double colon when a struct field type include single colon
rust-lang/rust/pull/94839
miri: implement simd_{shuffle, gather, scatter}
rust-lang/miri/pull/2013
CTFE/Miri: detect out-of-bounds pointers in offset_from
rust-lang/rust/pull/94827
change several HashMaps to IndexMap to improve incremental hashing performance
rust-lang/rust/pull/90253
improve AdtDef interning
rust-lang/rust/pull/94733
optimize ascii::escape_default
rust-lang/rust/pull/94776
make some Clone impls const
rust-lang/rust/pull/91804
remove argument from closure in thread::Scope::spawn
rust-lang/rust/pull/94559
use MaybeUninit in VecDeque to remove the undefined behavior of slice
rust-lang/rust/pull/94472
constify Index{,Mut} for [T], str, and [T; N]
rust-lang/rust/pull/94657
fix soundness issue in scoped threads
rust-lang/rust/pull/94644
implement BITS constant for non-zero integers
rust-lang/rust/pull/93292
implement MIN/MAX constants for non-zero integers
rust-lang/rust/pull/93293
add Result::{ok, err, and, or, unwrap_or} as const
rust-lang/rust/pull/92385
add Atomic*::get_mut_slice
rust-lang/rust/pull/94816
add core::hint::must_use
rust-lang/rust/pull/94723
unix: reduce the size of DirEntry
rust-lang/rust/pull/94750
portable-simd: add .min and .max for integers
rust-lang/portable-simd/pull/260
compiler-builtins: add support for Apple watchOS
rust-lang/compiler-builtins/pull/456
futures: add Mutex::lock_owned and Mutex::try_lock_owned
rust-lang/futures-rs/pull/2571
rustfmt: improve mod resolution error for mods with multiple candidate files
rust-lang/rustfmt/pull/5243
clippy: improve styles of filtering options for Clippy's lint list
rust-lang/rust-clippy/pull/8070
clippy: new lint that detects useless match expression
rust-lang/rust-clippy/pull/8471
clippy: new lint: only_used_in_recursion
rust-lang/rust-clippy/pull/8422
clippy: allow single_component_path_imports for all macros
rust-lang/rust-clippy/pull/8537
clippy: make search_is_somes suggestion MachineApplicable
rust-lang/rust-clippy/pull/8536
diagnostics: do not spuriously claim something is "not an iterator"
rust-lang/rust/pull/94870
diagnostics: single colon within <> probably, not type anoscription
rust-lang/rust/pull/94865
improve suggestion when casting usize to (possibly) wide pointer
rust-lang/rust/pull/92150
warn users about || in let chain expressions
rust-lang/rust/pull/94754
suggest if let/let_else for refutable pat in let
rust-lang/rust/pull/94739
suggest using double colon when a struct field type include single colon
rust-lang/rust/pull/94839
miri: implement simd_{shuffle, gather, scatter}
rust-lang/miri/pull/2013
CTFE/Miri: detect out-of-bounds pointers in offset_from
rust-lang/rust/pull/94827
change several HashMaps to IndexMap to improve incremental hashing performance
rust-lang/rust/pull/90253
improve AdtDef interning
rust-lang/rust/pull/94733
optimize ascii::escape_default
rust-lang/rust/pull/94776
make some Clone impls const
rust-lang/rust/pull/91804
remove argument from closure in thread::Scope::spawn
rust-lang/rust/pull/94559
use MaybeUninit in VecDeque to remove the undefined behavior of slice
rust-lang/rust/pull/94472
constify Index{,Mut} for [T], str, and [T; N]
rust-lang/rust/pull/94657
fix soundness issue in scoped threads
rust-lang/rust/pull/94644
implement BITS constant for non-zero integers
rust-lang/rust/pull/93292
implement MIN/MAX constants for non-zero integers
rust-lang/rust/pull/93293
add Result::{ok, err, and, or, unwrap_or} as const
rust-lang/rust/pull/92385
add Atomic*::get_mut_slice
rust-lang/rust/pull/94816
add core::hint::must_use
rust-lang/rust/pull/94723
unix: reduce the size of DirEntry
rust-lang/rust/pull/94750
portable-simd: add .min and .max for integers
rust-lang/portable-simd/pull/260
compiler-builtins: add support for Apple watchOS
rust-lang/compiler-builtins/pull/456
futures: add Mutex::lock_owned and Mutex::try_lock_owned
rust-lang/futures-rs/pull/2571
rustfmt: improve mod resolution error for mods with multiple candidate files
rust-lang/rustfmt/pull/5243
clippy: improve styles of filtering options for Clippy's lint list
rust-lang/rust-clippy/pull/8070
clippy: new lint that detects useless match expression
rust-lang/rust-clippy/pull/8471
clippy: new lint: only_used_in_recursion
rust-lang/rust-clippy/pull/8422
clippy: allow single_component_path_imports for all macros
rust-lang/rust-clippy/pull/8537
clippy: make search_is_somes suggestion MachineApplicable
rust-lang/rust-clippy/pull/8536
Updates from Rust Community
Official
Lang team March update
blog.rust-lang.org
Rust Compiler March 2022 Steering Cycle
blog.rust-lang.org
Newsletters
This Month in Rust GameDev #31 - February 2022
gamedev.rs
Project/Tooling Updates
Rust-Analyzer Changelog #120
rust-analyzer.github.io
Tantivy 0.17 is out | Quickwit
quickwit.io
Knurling-rs changelog #34
ferrous-systems.com
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W10
www.fornjot.app
Slint Version 0.2.1 released -- weekly update
slint-ui.com
Arti 0.1.0 is released: Your somewhat-stable API is here!
blog.torproject.org
Dioxus v0.2 Release: TUI, Router, Fermi, and Tooling
dioxuslabs.com
Observations/Thoughts
Introducing Rustler Precompiled - Dashbit Blog
dashbit.co
Announcing Savage, a computer algebra system written in Rust
www.reddit.com
Oxide at Home: Propolis says Hello
artemis.sh
Things I hate about Rust, redux
blog.yossarian.net
Async IO with completion-model IO systems
www.ncameron.org
Trannoscript: What's New in Rust 1.58 and 1.59
rustacean-station.org
[video] Rust Gamedev Meetup #14: March 2022
www.youtube.com
[video] Rust fuzzing using cargo-libafl (LibAFL-based fuzzer) - Rust Security #4
www.youtube.com
[audio] Interview with Fish Fight | Rust Game Dev
rustgamedev.com
[audio] PancakeDB with Martin Loncaric :: Rustacean Station
rustacean-station.org
Rust Walkthroughs
An In-Depth Introduction To Idempotency | A learning journal
www.lpalmieri.com
A Rust Gem: The Rust Map API
www.thecodedmessage.com
RPATH, or why lld doesn’t work on NixOS
matklad.github.io
Rust WebAssembly OCR experiments
hugopeixoto.net
Miscellaneous
AUTOSAR announces WG for Rust in automotive
www.autosar.org
[audio] Nick Cameron on Juggling Open Source Work and Parenthood
anchor.fm
[audio] Devtools podcast: building a new terminal in Rust
console.dev
Official
Lang team March update
blog.rust-lang.org
Rust Compiler March 2022 Steering Cycle
blog.rust-lang.org
Newsletters
This Month in Rust GameDev #31 - February 2022
gamedev.rs
Project/Tooling Updates
Rust-Analyzer Changelog #120
rust-analyzer.github.io
Tantivy 0.17 is out | Quickwit
quickwit.io
Knurling-rs changelog #34
ferrous-systems.com
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W10
www.fornjot.app
Slint Version 0.2.1 released -- weekly update
slint-ui.com
Arti 0.1.0 is released: Your somewhat-stable API is here!
blog.torproject.org
Dioxus v0.2 Release: TUI, Router, Fermi, and Tooling
dioxuslabs.com
Observations/Thoughts
Introducing Rustler Precompiled - Dashbit Blog
dashbit.co
Announcing Savage, a computer algebra system written in Rust
www.reddit.com
Oxide at Home: Propolis says Hello
artemis.sh
Things I hate about Rust, redux
blog.yossarian.net
Async IO with completion-model IO systems
www.ncameron.org
Trannoscript: What's New in Rust 1.58 and 1.59
rustacean-station.org
[video] Rust Gamedev Meetup #14: March 2022
www.youtube.com
[video] Rust fuzzing using cargo-libafl (LibAFL-based fuzzer) - Rust Security #4
www.youtube.com
[audio] Interview with Fish Fight | Rust Game Dev
rustgamedev.com
[audio] PancakeDB with Martin Loncaric :: Rustacean Station
rustacean-station.org
Rust Walkthroughs
An In-Depth Introduction To Idempotency | A learning journal
www.lpalmieri.com
A Rust Gem: The Rust Map API
www.thecodedmessage.com
RPATH, or why lld doesn’t work on NixOS
matklad.github.io
Rust WebAssembly OCR experiments
hugopeixoto.net
Miscellaneous
AUTOSAR announces WG for Rust in automotive
www.autosar.org
[audio] Nick Cameron on Juggling Open Source Work and Parenthood
anchor.fm
[audio] Devtools podcast: building a new terminal in Rust
console.dev
Crate of the week: noline
This week's crate is noline, a small no-std compatible readline-like line editor.
This week's crate is noline, a small no-std compatible readline-like line editor.
This week in Rust #435 — 23 mar 2022
https://this-week-in-rust.org/blog/2022/03/23/this-week-in-rust-435/
https://this-week-in-rust.org/blog/2022/03/23/this-week-in-rust-435/
👍2
Updates from core
always evaluate all cfg predicate in all() and any()
rust-lang/rust/pull/94295
stabilise aarch64_target_feature
rust-lang/rust/pull/90621
implement -Z oom=panic
rust-lang/rust/pull/88098
make negative coherence work when there's impl negative on super predicates
rust-lang/rust/pull/95039
more robust fallback for use suggestion
rust-lang/rust/pull/94584
suggest removing type anoscription in bad parsing position
rust-lang/rust/pull/95104
improve unsafe diagnostic
rust-lang/rust/pull/91133
fix diagnostics for #![feature(deprecated_suggestion)]
rust-lang/rust/pull/94948
miri: add a lot more information to SB fatal errors
rust-lang/miri/pull/1971
miri: make backtraces work with #[global_allocator]
rust-lang/miri/pull/1975
miri: implement SIMD float rounding functions
rust-lang/miri/pull/2028
miri: implement SIMD square root and fused multiply-add
rust-lang/miri/pull/2031
miri: implement SIMD bitmask intrinsics
rust-lang/miri/pull/2029
add #[inline] to trivial AsRef/AsMut impls
rust-lang/rust/pull/94372
BTreeMap::entry: avoid allocating if no insertion
rust-lang/rust/pull/92962
implement Write for Cursor<[u8; N]>, plus A: Allocator cursor support
rust-lang/rust/pull/92663
improve expect impl and handle #[expect(unfulfilled_lint_expectations)] (RFC 2383)
rust-lang/rust/pull/94670
make Weak::new const
rust-lang/rust/pull/94991
portable-simd: fix big-endian bitmasks smaller than a byte
rust-lang/portable-simd/pull/267
libc: add support for Apple WatchOS
rust-lang/libc/pull/2717
codegen_gcc: fix ice in box alloc
rust-lang/rustc_codegen_gcc/pull/137
codegen_gcc: fix shift of unsigned integer by signed integer
rust-lang/rustc_codegen_gcc/pull/141
codegen_gcc: fix version of compiler_builtins to fix compilation failure
rust-lang/rustc_codegen_gcc/pull/139
cargo: fix panic when artifact target is used for [target.'cfg(<target>)'.dependencies
rust-lang/cargo/pull/10433
rustfmt: add short_item_threshold config option
rust-lang/rustfmt/pull/5228
rustfmt: honor #[rustfmt::skip::attributes(derive)] attribute
rust-lang/rustfmt/pull/5271
rustfmt: search for struct body span after any generic arguments
rust-lang/rustfmt/pull/5274
clippy: add lint cast_enum_constructor
rust-lang/rust-clippy/pull/8562
clippy: add or_then_unwrap
rust-lang/rust-clippy/pull/8561
clippy: don't lint ptr_arg on &mut Cow<_>
rust-lang/rust-clippy/pull/8552
clippy: don't lint transmute_undefined_repr when changing the type of generic params
rust-lang/rust-clippy/pull/8553
clippy: fix unncessary_to_owned false positive
rust-lang/rust-clippy/pull/8509
clippy: unnecessary_lazy_eval show suggestions on multiline lint
rust-lang/rust-clippy/pull/8543
clippy: fix suggestion on map_flatten being cropped causing possible information loss
rust-lang/rust-clippy/pull/8520
clippy: match_same_arms fix
rust-lang/rust-clippy/pull/8232
clippy: more transmute_undefined_repr fixes
rust-lang/rust-clippy/pull/8547
clippy: move iter_with_drain to nursery
rust-lang/rust-clippy/pull/8541
clippy: move try_err to restriction
rust-lang/rust-clippy/pull/8544
always evaluate all cfg predicate in all() and any()
rust-lang/rust/pull/94295
stabilise aarch64_target_feature
rust-lang/rust/pull/90621
implement -Z oom=panic
rust-lang/rust/pull/88098
make negative coherence work when there's impl negative on super predicates
rust-lang/rust/pull/95039
more robust fallback for use suggestion
rust-lang/rust/pull/94584
suggest removing type anoscription in bad parsing position
rust-lang/rust/pull/95104
improve unsafe diagnostic
rust-lang/rust/pull/91133
fix diagnostics for #![feature(deprecated_suggestion)]
rust-lang/rust/pull/94948
miri: add a lot more information to SB fatal errors
rust-lang/miri/pull/1971
miri: make backtraces work with #[global_allocator]
rust-lang/miri/pull/1975
miri: implement SIMD float rounding functions
rust-lang/miri/pull/2028
miri: implement SIMD square root and fused multiply-add
rust-lang/miri/pull/2031
miri: implement SIMD bitmask intrinsics
rust-lang/miri/pull/2029
add #[inline] to trivial AsRef/AsMut impls
rust-lang/rust/pull/94372
BTreeMap::entry: avoid allocating if no insertion
rust-lang/rust/pull/92962
implement Write for Cursor<[u8; N]>, plus A: Allocator cursor support
rust-lang/rust/pull/92663
improve expect impl and handle #[expect(unfulfilled_lint_expectations)] (RFC 2383)
rust-lang/rust/pull/94670
make Weak::new const
rust-lang/rust/pull/94991
portable-simd: fix big-endian bitmasks smaller than a byte
rust-lang/portable-simd/pull/267
libc: add support for Apple WatchOS
rust-lang/libc/pull/2717
codegen_gcc: fix ice in box alloc
rust-lang/rustc_codegen_gcc/pull/137
codegen_gcc: fix shift of unsigned integer by signed integer
rust-lang/rustc_codegen_gcc/pull/141
codegen_gcc: fix version of compiler_builtins to fix compilation failure
rust-lang/rustc_codegen_gcc/pull/139
cargo: fix panic when artifact target is used for [target.'cfg(<target>)'.dependencies
rust-lang/cargo/pull/10433
rustfmt: add short_item_threshold config option
rust-lang/rustfmt/pull/5228
rustfmt: honor #[rustfmt::skip::attributes(derive)] attribute
rust-lang/rustfmt/pull/5271
rustfmt: search for struct body span after any generic arguments
rust-lang/rustfmt/pull/5274
clippy: add lint cast_enum_constructor
rust-lang/rust-clippy/pull/8562
clippy: add or_then_unwrap
rust-lang/rust-clippy/pull/8561
clippy: don't lint ptr_arg on &mut Cow<_>
rust-lang/rust-clippy/pull/8552
clippy: don't lint transmute_undefined_repr when changing the type of generic params
rust-lang/rust-clippy/pull/8553
clippy: fix unncessary_to_owned false positive
rust-lang/rust-clippy/pull/8509
clippy: unnecessary_lazy_eval show suggestions on multiline lint
rust-lang/rust-clippy/pull/8543
clippy: fix suggestion on map_flatten being cropped causing possible information loss
rust-lang/rust-clippy/pull/8520
clippy: match_same_arms fix
rust-lang/rust-clippy/pull/8232
clippy: more transmute_undefined_repr fixes
rust-lang/rust-clippy/pull/8547
clippy: move iter_with_drain to nursery
rust-lang/rust-clippy/pull/8541
clippy: move try_err to restriction
rust-lang/rust-clippy/pull/8544
👍3
Updates from Rust Community
Official
[video] 2022-03-21 Cross Team Collaboration Fun Times (CTCFT)
www.youtube.com
Foundation
Rust Community Grants Program - Survey Responses
foundation.rust-lang.org
Announcing three new Rust Foundation Board Members
foundation.rust-lang.org
Project/Tooling Updates
Rust-Analyzer Changelog #121
rust-analyzer.github.io
Rust superpowered DHCP cli with Rhai noscripts
leshow.github.io
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W11
www.fornjot.app
A Year of BonsaiDb: A retrospective and looking to the future
bonsaidb.io
Slint (GUI crate) weekly update
slint-ui.com
This week in Fluvio #25: the programmable streaming platform
www.fluvio.io
Nushell 0.60
www.nushell.sh
Skytable 0.7.4 is here: authn, entity syntax, fixes and more
blog.skytable.io
Boa release v0.14
boa-dev.github.io
This week in Databend #34: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs
Observations/Thoughts
Rust is minimalist
kerkour.com
Rustc Reading Club Phase I Retrospective
https://mojosd.medium.com/rrc-phase-i-retrospective-74141fb246e4
Rust's Unsafe Pointer Types Need An Overhaul - Faultlore
gankra.github.io
Learning Rust: My 6 Key Moments
apollolabsblog.hashnode.dev
I do understand the * operator in Rust now
micouy.github.io
The code is the specification? Introducing cargo spec
www.cryptologie.net
Functional Futures: Live-Coding Rust with Tim McNamara
serokell.io
Help stabilize hyper in curl
seanmonstar.com
Do we really need language support for self-references?
robinmoussu.gitlab.io
[video] Runtime-agnostic async crates by Zeeshan Ali
www.youtube.com
[video] Tauri Foundations by Daniel Thompson-Yvetot
www.youtube.com
[audio] id3 with Roel
rustacean-station.org
Rust Walkthroughs
Procedural macros under the hood: Part I
blog.jetbrains.com
A tour of the Rust and C++ interoperability ecosystem
blog.tetrane.com
Architecture Experiment: Moving a front-end to Rust and WASM
nutsys.com
Web Socket for Productivity in Rust
www.ahmadrosid.com
Advanced logging in rust with log4rs: rotation, retention, patterns, multiple loggers
medium.com/nikmas-group
Why your first FizzBuzz implementation may not work
chrismorgan.info
[ZH] Exploring Rust Mobile Development and Cross-Platform Patterns (Rust 移动开发与跨平台模式探究)
zhuanlan.zhihu.com
[series] [video] Writing a Programming Language (in Rust) 22: Laurel: Continuing a bash noscript port
www.youtube.com
[video] Fyrox - Making an Animation Blending State Machine Editor
www.youtube.com
[video] Petrochenkov reviews the name resolution code
www.youtube.com
[video] UIUC CS 128 Honors Rust Lectures
www.youtube.com
Miscellaneous
Cross-platform Brainfuck Interpreter implementation in Rust - Part 1
rtoch.com
Cross-platform Brainfuck Interpreter implementation in Rust - Part 2
rtoch.com
Rust talks I2C on Apache NuttX RTOS
lupyuen.github.io
Rust Patches For The Linux Kernel Updated A Fifth Time With New Features
www.phoronix.com
[DE] Programmiersprache: Rust könnte neue Technik für Unsafe Pointer bekommen
www.golem.de
Official
[video] 2022-03-21 Cross Team Collaboration Fun Times (CTCFT)
www.youtube.com
Foundation
Rust Community Grants Program - Survey Responses
foundation.rust-lang.org
Announcing three new Rust Foundation Board Members
foundation.rust-lang.org
Project/Tooling Updates
Rust-Analyzer Changelog #121
rust-analyzer.github.io
Rust superpowered DHCP cli with Rhai noscripts
leshow.github.io
Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W11
www.fornjot.app
A Year of BonsaiDb: A retrospective and looking to the future
bonsaidb.io
Slint (GUI crate) weekly update
slint-ui.com
This week in Fluvio #25: the programmable streaming platform
www.fluvio.io
Nushell 0.60
www.nushell.sh
Skytable 0.7.4 is here: authn, entity syntax, fixes and more
blog.skytable.io
Boa release v0.14
boa-dev.github.io
This week in Databend #34: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs
Observations/Thoughts
Rust is minimalist
kerkour.com
Rustc Reading Club Phase I Retrospective
https://mojosd.medium.com/rrc-phase-i-retrospective-74141fb246e4
Rust's Unsafe Pointer Types Need An Overhaul - Faultlore
gankra.github.io
Learning Rust: My 6 Key Moments
apollolabsblog.hashnode.dev
I do understand the * operator in Rust now
micouy.github.io
The code is the specification? Introducing cargo spec
www.cryptologie.net
Functional Futures: Live-Coding Rust with Tim McNamara
serokell.io
Help stabilize hyper in curl
seanmonstar.com
Do we really need language support for self-references?
robinmoussu.gitlab.io
[video] Runtime-agnostic async crates by Zeeshan Ali
www.youtube.com
[video] Tauri Foundations by Daniel Thompson-Yvetot
www.youtube.com
[audio] id3 with Roel
rustacean-station.org
Rust Walkthroughs
Procedural macros under the hood: Part I
blog.jetbrains.com
A tour of the Rust and C++ interoperability ecosystem
blog.tetrane.com
Architecture Experiment: Moving a front-end to Rust and WASM
nutsys.com
Web Socket for Productivity in Rust
www.ahmadrosid.com
Advanced logging in rust with log4rs: rotation, retention, patterns, multiple loggers
medium.com/nikmas-group
Why your first FizzBuzz implementation may not work
chrismorgan.info
[ZH] Exploring Rust Mobile Development and Cross-Platform Patterns (Rust 移动开发与跨平台模式探究)
zhuanlan.zhihu.com
[series] [video] Writing a Programming Language (in Rust) 22: Laurel: Continuing a bash noscript port
www.youtube.com
[video] Fyrox - Making an Animation Blending State Machine Editor
www.youtube.com
[video] Petrochenkov reviews the name resolution code
www.youtube.com
[video] UIUC CS 128 Honors Rust Lectures
www.youtube.com
Miscellaneous
Cross-platform Brainfuck Interpreter implementation in Rust - Part 1
rtoch.com
Cross-platform Brainfuck Interpreter implementation in Rust - Part 2
rtoch.com
Rust talks I2C on Apache NuttX RTOS
lupyuen.github.io
Rust Patches For The Linux Kernel Updated A Fifth Time With New Features
www.phoronix.com
[DE] Programmiersprache: Rust könnte neue Technik für Unsafe Pointer bekommen
www.golem.de
Crate of the week: heph
This week's crate is heph, an event-driven, non-blocking I/O, share-nothing actor framework.
This week's crate is heph, an event-driven, non-blocking I/O, share-nothing actor framework.
This week in Rust #436 — 30 mar 2022
https://this-week-in-rust.org/blog/2022/03/30/this-week-in-rust-436/
https://this-week-in-rust.org/blog/2022/03/30/this-week-in-rust-436/
Updates from core
proc-macro: stop wrapping ident matchers into groups
rust-lang/rust/pull/92472
debuginfo: fix debuginfo for Box<T> where T is unsized
rust-lang/rust/pull/95270
better errors when a Copy impl on a Struct is not self-consistent
rust-lang/rust/pull/94249
provide suggestion for missing > in a type parameter list
rust-lang/rust/pull/94495
suggest constraining param for unary ops when missing trait impl
rust-lang/rust/pull/95197
suggest replacing a field when using the same type
rust-lang/rust/pull/95396
tell users that || operators are not currently supported in let chain expressions
rust-lang/rust/pull/95314
diagnostics: correct generic bounds with doubled colon
rust-lang/rust/pull/95318
diagnostics: do not give Option::as_ref suggestion for complex match
rust-lang/rust/pull/95127
diagnostics: do not suggest fn foo({ <body> }
rust-lang/rust/pull/95220
diagnostics: suggest missing comma in bad FRU syntax
rust-lang/rust/pull/94939
fix function pointers of different param counts unifying
rust-lang/chalk/pull/759
change Thir to lazily create constants
rust-lang/rust/pull/94876
fix perf issue for auto trait selection
rust-lang/rust/pull/95333
overlap inherent impls
rust-lang/rust/pull/95082
more macro expansion optimizations
rust-lang/rust/pull/95259
ignore doc comments in a declarative macro matcher
rust-lang/rust/pull/95390
allow comparing Vecs with different allocators using ==
rust-lang/rust/pull/93755
stabilize const_ptr_offset
rust-lang/rust/pull/93957
impl From<&[T; N]> and From<&mut [T; N]> for Vec<T>
rust-lang/rust/pull/95098
resolve: do not build expensive suggestions if they are not actually used
rust-lang/rust/pull/95255
codegen_gcc: add --release-sysroot flag to build.sh
rust-lang/rustc_codegen_gcc/pull/143
codegen_gcc: don't pass --target in cargo.sh
rust-lang/rustc_codegen_gcc/pull/147
clippy: check if lhs < rhs in modulos in identity_op
rust-lang/rust-clippy/pull/8519
clippy: map_identity checks for needless map_err
rust-lang/rust-clippy/pull/8487
clippy: unnecessary_join lint
rust-lang/rust-clippy/pull/8579
proc-macro: stop wrapping ident matchers into groups
rust-lang/rust/pull/92472
debuginfo: fix debuginfo for Box<T> where T is unsized
rust-lang/rust/pull/95270
better errors when a Copy impl on a Struct is not self-consistent
rust-lang/rust/pull/94249
provide suggestion for missing > in a type parameter list
rust-lang/rust/pull/94495
suggest constraining param for unary ops when missing trait impl
rust-lang/rust/pull/95197
suggest replacing a field when using the same type
rust-lang/rust/pull/95396
tell users that || operators are not currently supported in let chain expressions
rust-lang/rust/pull/95314
diagnostics: correct generic bounds with doubled colon
rust-lang/rust/pull/95318
diagnostics: do not give Option::as_ref suggestion for complex match
rust-lang/rust/pull/95127
diagnostics: do not suggest fn foo({ <body> }
rust-lang/rust/pull/95220
diagnostics: suggest missing comma in bad FRU syntax
rust-lang/rust/pull/94939
fix function pointers of different param counts unifying
rust-lang/chalk/pull/759
change Thir to lazily create constants
rust-lang/rust/pull/94876
fix perf issue for auto trait selection
rust-lang/rust/pull/95333
overlap inherent impls
rust-lang/rust/pull/95082
more macro expansion optimizations
rust-lang/rust/pull/95259
ignore doc comments in a declarative macro matcher
rust-lang/rust/pull/95390
allow comparing Vecs with different allocators using ==
rust-lang/rust/pull/93755
stabilize const_ptr_offset
rust-lang/rust/pull/93957
impl From<&[T; N]> and From<&mut [T; N]> for Vec<T>
rust-lang/rust/pull/95098
resolve: do not build expensive suggestions if they are not actually used
rust-lang/rust/pull/95255
codegen_gcc: add --release-sysroot flag to build.sh
rust-lang/rustc_codegen_gcc/pull/143
codegen_gcc: don't pass --target in cargo.sh
rust-lang/rustc_codegen_gcc/pull/147
clippy: check if lhs < rhs in modulos in identity_op
rust-lang/rust-clippy/pull/8519
clippy: map_identity checks for needless map_err
rust-lang/rust-clippy/pull/8487
clippy: unnecessary_join lint
rust-lang/rust-clippy/pull/8579