pub ThisWeekInRust {} – Telegram
pub ThisWeekInRust {}
992 subscribers
2 photos
2.41K links
Handpicked Rust updates,
delivered to your telegram.

Contacts: @sergeysova
Reposted from: https://this-week-in-rust.org
Source code: https://github.com/sergeysova/this_week_in_rust.rs
Another: @this_week_in_react
Download Telegram
Updates from Rust Community

Official
Security advisory: malicious crate rustdecimal
blog.rust-lang.org

CTCFT 2022-05-16 Agenda
blog.rust-lang.org

Newsletters
Rust Nigeria Community Newsletter #5
rustnigeria.curated.co

This Month in Rust OSDev: April 2022
rust-osdev.com

Project/Tooling Updates
rust-analyzer changelog #128
rust-analyzer.github.io

Fornjot 0.6
www.fornjot.app

Announcing the Kani Rust Verifier Project
model-checking.github.io

Slint (UI crate) weekly update -- Version 0.2.2 Release
slint-ui.com

This week in Fluvio #32: the programmable streaming platform
www.fluvio.io

Rocket's 2nd v0.5 Release Candidate - Rocket Web Framework
rocket.rs

rustc_codegen_gcc: Progress Report #11
blog.antoyo.xyz

GCC Rust Monthly Report #16 April 2022
thephilbert.io

RepliByte - An open-source tool to seed your dev database with real data
www.reddit.com

Introducing Crane: Composable and Cacheable Builds with Cargo and Nix
ipetkov.dev

The run-up to v1.0 for Postcard
jamesmunns.com

Observations/Thoughts
Programming languages are platforms, not products
kerkour.com

Introducing Rust in security research
tweedegolf.nl

Xilem: an architecture for UI in Rust
raphlinus.github.io

Modeling Finite State Machines with Rust | Ramnivas Laddad
www.ramnivas.com

Secure computation in Rust: Using Intel's SGX instructions with Teaclave and Fortanix
www.notamonadtutorial.com

Securing Crates
tl8.co

Over-Engineering A Fairly Simple Coding Challenge
ada-x64.github.io

Building Rust code for my OpenWrt Wi-Fi router
blog.dend.ro

Lisp interpreter in Rust
vishpat.github.io

Demystifying Rust Embedded HAL Split and Constrain Methods
apollolabsblog.hashnode.dev

An O(1) Generic Blog Post About Rust
peterkos.me

Rust Walkthroughs
Building a crawler in Rust: Crawling a JSON API
kerkour.com

Rust-raspberrypi-OS-tutorials: Tutorial 17 - Kernel Symbols
rust-embedded/rust-raspberrypi-OS-tutorials/tree/master/17_kernel_symbols#readme

Rust-raspberrypi-OS-tutorials: Tutorial 18 - Backtracing
rust-embedded/rust-raspberrypi-OS-tutorials/tree/master/18_backtrace#readme

Parsing/Recursive Descent Parser
www.huy.rocks

Converting Integers to Floats Using Hyperfocus
blog.m-ou.se

Easy Lossless Trees with Nom and Rowan
blog.kiranshila.com

Research
Evolving Collaboration, Dependencies, and Use in the Rust Open Source Software Ecosystem
arxiv.org

Modeling Interconnected Social and Technical Risks in Open Source Software Ecosystems
arxiv.org

Miscellaneous
Building a startup with Rust
www.shuttle.rs

Decentralized cluster membership implementation in Rust
quickwit.io

Black Hat Rust discount: Happy 2022
kerkour.com

[DE] Redox OS: Ein Betriebssystem, geschrieben in Rust
www.heise.de

[video] Let's Code Minesweeper with Rust and WASM
www.youtube.com

[audio] Rust Safety with Quentin Ochem and Florian Gilcher
rustacean-station.org
👍1
Crate of the week: enum_dispatch

This week's crate is enum_dispatch, a proc-macro-attribute to replace dynamic dispatch with enum dispatch to gain performance.
👍3
Updates from Rust Community

Newsletters
This Month in Rust GameDev #33 - April 2022
gamedev.rs

Project/Tooling Updates
rust-analyzer changelog #129
rust-analyzer.github.io

IntelliJ Rust Changelog #170
intellij-rust.github.io

What's new in SeaORM 0.8.0
www.sea-ql.org

Fornjot (code-first CAD in Rust) - Weekly Dev Log - 2022-W19
www.fornjot.app

Introducing BlindAI, an open-source privacy-friendly AI deployment in Rust
blog.mithrilsecurity.io

Slint (UI crate) weekly update -- Version 0.2.4 Release
slint-ui.com

This week in Databend #41: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs

This week in Databend #42: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs

Fyrox 0.25 Feature Highlights
fyrox.rs

Observations/Thoughts
Things Are Getting Rusty In Kernel Land
hackaday.com

A new impl Trait
davidkoloski.me

Our Experience Porting the YJIT Ruby Compiler to Rust
shopify.engineering

Comparing Rust supply chain safety tools
blog.logrocket.com

Supply Chain Thoughts
insanitybit.github.io

Can you have too many programming language features?
www.thecodedmessage.com

Asteracea (platform-agnostic mixed-style frontend components)
blog.schichler.dev

PixelBox Public Alpha
www.josephcatrambone.com

[video] Building a Postgres storage system in Rust
www.youtube.com

[video] Rust: Your code can be perfect
www.youtube.com

[video] Systems Programmers Can Have Nice Things
www.infoq.com

[video] The Rust Borrow Checker - a Deep Dive
www.infoq.com

[audio] Slint with Tobias Hunger
rustacean-station.org

Rust Walkthroughs
Extending SQLite with Rust
ricardoanderegg.com

Let's talk about this async
conradludgate.com

Bitsquatting attacks and exploit in Rust
kerkour.com

Building a crawler in Rust: Scraping Javanoscript Single Page Applications (SPA) with a headless browser
kerkour.com

Learning Rust - creating a full-text search engine
www.rsarai.xyz

Compiler Adventures, part 3: Value Numbering
medium.com/@predrag.gruevski

Do not wait for Rust generators
https://david-delassus.medium.com/do-not-wait-for-rust-generators-9e7753465f59

Rust Ergonomics: Default and From
elijahcaine.me

Audio Libraries Considered Challenging
tesselode.github.io

Linking Rust Crates, Part 1
blog.pnkfx.org

A Guided Tour of Streams in Rust
www.qovery.com

[video] Rust Bevy 0.7 - Full Tutorial - Game Development with Rust
www.youtube.com

Research
Ferrite: A Judgmental Embedding of Session Types in Rust
arxiv.org
Crate of the week: cargo-supply-chain

This week's crate is cargo-supply-chain, a cargo subcommand to gather author, contributor and publisher data on crates in your dependency graph.
Updates from core

recover when resolution did not resolve lifetimes
rust-lang/rust/pull/97236

add new lint to enforce whitespace after keywords
rust-lang/rust/pull/97179

lint single-use lifetimes during AST resolution
rust-lang/rust/pull/96833

fix misleading "cannot infer type for type parameter" error
rust-lang/rust/pull/97109

improve u32 as char cast diagnostic
rust-lang/rust/pull/97169

suggest dereferencing non-lval mutable reference on assignment
rust-lang/rust/pull/94639

add a query for checking whether a function is an intrinsic
rust-lang/rust/pull/97012

types with reachable constructors are reachable
rust-lang/rust/pull/97096

miri: adjust diagnostics assertion so we don't ICE in setup
rust-lang/miri/pull/2141

miri: initial work on Miri permissive-exposed-provenance
rust-lang/miri/pull/2059

miri: make allow_data_races_* public and use it during EnvVars::cleanup
rust-lang/miri/pull/2142

remove quadratic behaviour from -Zunpretty=hir-tree
rust-lang/rust/pull/97223

clean up derived obligation creation
rust-lang/rust/pull/96892

correctly deal with user type anoscriptions in pat
rust-lang/rust/pull/96515

rustc_parse: move AST -> TokenStream conversion logic to rustc_ast
rust-lang/rust/pull/97251

stabilize Ipv6Addr::to_ipv4_mapped
rust-lang/rust/pull/96906

stabilize array_from_fn
rust-lang/rust/pull/94119

add convenience byte offset/check align functions to pointers
rust-lang/rust/pull/95643

add functions to un-poison Mutex and RwLock
rust-lang/rust/pull/96422

improve codegen of String::retain method
rust-lang/rust/pull/96605

change NonNull::as_uninit_* to take self by value (as opposed to reference), matching primitive pointers
rust-lang/rust/pull/96100

remove unneeded null pointer asserts in ptr2int casts
rust-lang/rust/pull/97188

make ptr::invalid not the same as a regular int2ptr cast
rust-lang/rust/pull/97219

use pointers in cell::{Ref,RefMut} to avoid noalias
rust-lang/rust/pull/97027

portable SIMD: add Mask::cast
rust-lang/portable-simd/pull/251

backtrace: make Miri backtraces work with #[global_allocator]
rust-lang/backtrace-rs/pull/462

hashbrown: add function for getting access to map table: RawTable<(K, V), A> field
rust-lang/hashbrown/pull/335

cargo: add unstable rustc-check-cfg build noscript output
rust-lang/cargo/pull/10539

cargo: restore proper error for crate not in local reg
rust-lang/cargo/pull/10683

rustdoc: reduce clean::Type size
rust-lang/rust/pull/93963

rustdoc: resolve some more doc links early 2
rust-lang/rust/pull/96713

rustfmt: import_granularity: Don't normalize imports with comments
rust-lang/rustfmt/pull/5311

clippy: fix cmp_owned on copy types
rust-lang/rust-clippy/pull/8807

clippy: improve "unknown field" error messages
rust-lang/rust-clippy/pull/8823

clippy: lint indirect usages in disallowed_methods
rust-lang/rust-clippy/pull/8852

clippy: dbg_macro tolerates use of dbg! in test items
rust-lang/rust-clippy/pull/8838

clippy: add suggestions to rc_clone_in_vec_init
rust-lang/rust-clippy/pull/8814

rust-analyzer: fix inference when pattern matching a tuple field with a wildcard
rust-lang/rust-analyzer/pull/12355

rust-analyzer: generate enum variant assist
rust-lang/rust-analyzer/pull/12334

rust-analyzer: add "cargo clippy" task preset
rust-lang/rust-analyzer/pull/12326

rust-analyzer: implement inlay hint tooltips
rust-lang/rust-analyzer/pull/12285

rust-analyzer: improve docs generation assist
rust-lang/rust-analyzer/pull/12303

rust-analyzer: add a "Add attribute" assist
rust-lang/rust-analyzer/pull/12296

rust-analyzer: don't swallow build noscript errors
rust-lang/rust-analyzer/pull/12329

rust-analyzer: fix broken async callback in join lines
rust-lang/rust-analyzer/pull/12342

rustup: don't send logging to stdout
rust-lang/rustup/pull/2985
👍1
Updates from Rust Community

Official
Announcing Rust 1.61.0 | Rust Blog
blog.rust-lang.org

Project/Tooling Updates
What’s New in IntelliJ Rust for 2022.1
blog.jetbrains.com

rust-analyzer changelog #130
rust-analyzer.github.io

Fornjot (code-first CAD in Rust) - Weekly Dev Log - 2022-W20
www.fornjot.app

Slint (UI crate) weekly update
slint-ui.com

Apache Arrow has released version 8.0.0 of the DataFusion in-process SQL query engine
arrow.apache.org

Redust: a new Redis client
www.reddit.com

[libblendinfo] Return information from Rust crate to C library
www.janwalter.org

This week in Databend #43: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs

This week in Fluvio #34: the programmable streaming platform
www.fluvio.io

Observations/Thoughts
Rust: A Critical Retrospective
www.bunniestudios.com

Building a Cloud Database from Scratch: Why We Moved from C++ to Rust
singularity-data.com

How we use Rust, SQLx and Rocket for Oso Cloud
www.osohq.com

Fixing Memory Leaks in Rust
onesignal.com

Crash Reporting in Rust
jake-shadle.github.io

Rust Environment and Docker Build with Nix Flakes
johns.codes

BonsaiDb performance update: A deep-dive on file synchronization
bonsaidb.io

Rust Docker Tutorial
tutorialedge.net

Rust Walkthroughs
Optimizing the size of your Rust binaries
kerkour.com

Testing and building your Rust project with GitHub Actions
kerkour.com

Rust-raspberrypi-OS-tutorials: Tutorial 19 - Kernel Heap
rust-embedded/rust-raspberrypi-OS-tutorials/tree/master/19_kernel_heap#readme

[video] Deref and Drop Traits
www.youtube.com

Miscellaneous
Developer survey: JavaScript and Python reign, but Rust is rising
www.infoworld.com

[DE] Programmiersprache Rust 1.61 kann Programme aussagekräftig beenden
www.heise.de
Crate of the week: rustdoc-types

This week's crate is rustdoc-types, a crate with types to deserialize Rustdoc's JSON output.
Updates from core

prepare Rust for opaque pointers
rust-lang/rust/pull/94214

parse expression after else as a condition if followed by {
rust-lang/rust/pull/97298

macros: introduce fluent_messages macro
rust-lang/rust/pull/97327

improve error message for E0081
rust-lang/rust/pull/97456

minor improvement on else-no-if diagnostic
rust-lang/rust/pull/97370

output correct type responsible for structural match violation
rust-lang/rust/pull/97351

miri: adjust Miri to also require return places everywhere
rust-lang/miri/pull/2138

miri: avoid error patterns matching themselves
rust-lang/miri/pull/2158

miri: enable number validity checking and ptr::invalid checking by default
rust-lang/miri/pull/2151

do writeback of Closure params before visiting the parent expression
rust-lang/rust/pull/97302

implement Hash for core::alloc::Layout
rust-lang/rust/pull/97034

refactor call terminator to always include destination place
rust-lang/rust/pull/96098

split out the various responsibilities of rustc_metadata::Lazy
rust-lang/rust/pull/97291

try to cache region_scope_tree as a query
rust-lang/rust/pull/97383

add a deep fast_reject routine
rust-lang/rust/pull/97345

extend ptr::null and null_mut to all thin (including extern) types
rust-lang/rust/pull/94954

stabilize cell_filter_map
rust-lang/rust/pull/97308

partially stabilize (const_)slice_ptr_len feature by stabilizing NonNull::len
rust-lang/rust/pull/94640

use rounding instead of truncation in float to Duration conversion methods
rust-lang/rust/pull/96051

improve case conversion happy path
rust-lang/rust/pull/97046

rustc: fix ICE in native library error reporting
rust-lang/rust/pull/97328

codegen_gcc: Define immutable statics with const qualified types
rust-lang/rustc_codegen_gcc/pull/165

libcore: add iter::from_generator which is like iter::from_fn, but for coroutines instead of functions
rust-lang/rust/pull/96298

builtins: faster float conversion operations
rust-lang/compiler-builtins/pull/464

clippy: add new lint unused_rounding
rust-lang/rust-clippy/pull/8866

clippy: add doc_link_with_quotes lint
rust-lang/rust-clippy/pull/8385

clippy: new lint about use first() instead of get(0)
rust-lang/rust-clippy/pull/8882

clippy: new lint no_effect_replace
rust-lang/rust-clippy/pull/8754

clippy: support Weak in rc_clone_in_vec_init
rust-lang/rust-clippy/pull/8885

clippy: get_last_with_len: lint VecDeque and any deref to slice
rust-lang/rust-clippy/pull/8862

clippy: fix empty_line_after_outer_attribute false positive
rust-lang/rust-clippy/pull/8892

clippy: identity_op: add parenthesis to suggestions where required
rust-lang/rust-clippy/pull/8786

clippy: introduce allow-dbg-in-tests config value
rust-lang/rust-clippy/pull/8897

rust-analyzer: add implicit static lifetime hints
rust-lang/rust-analyzer/pull/12416

rust-analyzer: generate variant: insert code in file with enum definition
rust-lang/rust-analyzer/pull/12384

rust-analyzer: fix overflow during type inference for tuple struct patterns
rust-lang/rust-analyzer/pull/12409

rust-analyzer: correct single-file module rename
rust-lang/rust-analyzer/pull/12387

rust-analyzer: clear native diagnostics for files when they are deleted
rust-lang/rust-analyzer/pull/12383

rust-analyzer: retrigger visibility completion after parentheses
rust-lang/rust-analyzer/pull/12412

rust-analyzer: f32 and f64 representation during lowering
rust-lang/rust-analyzer/pull/12395

rust-analyzer: make files.excludeDirs work
rust-lang/rust-analyzer/pull/12341
Updates from Rust Community

Official
Concluding the events of last November
blog.rust-lang.org

Project/Tooling Updates
rust-analyzer changelog #131
rust-analyzer.github.io

Helix editor 22.05 released
helix-editor.com

Slint UI crate weekly updates
slint-ui.com

Fornjot (code-first CAD in Rust) - Weekly Dev Log - 2022-W21
www.fornjot.app

IntelliJ Rust Changelog #171
intellij-rust.github.io

Observations/Thoughts
Introducing the Ferrocene Language Specification
ferrous-systems.com

The Rust Jobs Market
www.rustjobs.com

[video] Rust makes you feel like a GENIUS
www.youtube.com

[audio] This Week in Rust Issue 443
rustacean-station.org

Rust Walkthroughs
Impl-tools: beyond derive
kas-gui.github.io

Introduction to Rust generics (1/2): Traits
kerkour.com

Builder Lite
matklad.github.io

The curse of strong typing
fasterthanli.me

Simple rust interview questions
flakm.github.io

Profiling heap allocation in rust
flakm.github.io

Arc and Mutex in Rust
itsallaboutthebit.com

How I speeded up my Rust builds on GitHub ~30 times
ectobit.com

Some notes on internal working of profiler
inspektor.cloud

Rewriting the lexer benchmark in Rust
eli.thegreenplace.net

Parallel programming design with BipBuffer
dev-random.io

A Neophyte's Introduction to the async/await landscape in Rust
www.geekabyte.io

Research
Hardware/Software Co-Assurance using the Rust Programming Language and ACL2
arxiv.org

Miscellaneous
RustConf 2022 Presentation Schedule
rustconf.com
👍2
Crate of the week: pgfplots

This week's crate is pgfplots, a crate to generate publication-quality figures (with or without LaTeX).
👍2
Updates from Rust Community

Official
Rust Compiler June 2022 Steering Cycle
blog.rust-lang.org

Newsletters
This Month in Rust GameDev #34 - May 2022
gamedev.rs

Project/Tooling Updates
rust-analyzer changelog #132
rust-analyzer.github.io

This week in Databend #44: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs

This week in Databend #45: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs

Slint UI crate weekly updates
slint-ui.com

This week in Fluvio #35: the programmable streaming platform
www.fluvio.io

Fornjot (code-first CAD in Rust) - Weekly Dev Log - 2022-W22
www.fornjot.app

GCC Rust Monthly Report #17 May 2022
thephilbert.io

Zellij 0.30.0: use your $EDITOR to search and save your scrollback
zellij.dev

Observations/Thoughts
Stacked Futures and why they are impossible
conradludgate.com

Rust Is Hard, Or: The Misery of Mainstream Programming
hirrolot.github.io

Trivia About Rust Types: An (Authorized) Trannoscription of Jon Gjengset’s Twitter Thread
www.thecodedmessage.com

Hyper vs Rocket - Low Level vs Batteries included
www.shuttle.rs

(async) Rust doesn't have to be hard
itsallaboutthebit.com

Rust language’s explosive popularity comes with challenges
thestack.technology

[audio] egui with Emil Ernerfeldt
rustacean-station.org

Rust Walkthroughs
Introduction to Rust generics (2/2): Trait Objects - Static vs Dynamic dispatch
kerkour.com

Beginner-Intermediate Errror Handling in Rust
desmondwillowbrook.github.io

Macro Patterns - A match made in heaven
conradludgate.com

Using the Kani Rust Verifier on a Rust Standard Library CVE
model-checking.github.io

The entrait pattern
audunhalland.github.io

Web Scraping with Rust
www.scrapingbee.com

Logan Keenan - A Rust Server App Compiled to WASM as an SPA
logankeenan.com

[video] Async I/O in Depth: Creating a High Performance HTTP Web Server in Rust (Part 1)
www.youtube.com

[video] Stream Ingestion with Kafka & Kinesis
www.youtube.com

[video] is salvo really the simplest rust web framework?
www.youtube.com

[video] Rust wgpu Graphics Programming Tutorial
www.youtube.com

Research
End-to-End Security for Distributed Event-Driven Enclave Applications on Heterogeneous TEEs
arxiv.org
Crate of the week: osmpbf

This week's crate is osmpbf an OpenStreetMap pbf-file reader.
Updates from core

add support for emitting functions with coldcc to LLVM
rust-lang/rust/pull/97512

allow unstable items to be re-exported unstably without requiring the feature be enabled
rust-lang/rust/pull/97301

don't suggest adding let in certain if conditions
rust-lang/rust/pull/97856

fix ICEs from zsts within unsized types with non-zero offsets
rust-lang/rust/pull/97738

fix precise field capture of univariant enums
rust-lang/rust/pull/97325

never regard macro rules with compile_error! invocations as unused
rust-lang/rust/pull/97903

use more targeted suggestion when confusing i8 with std::i8
rust-lang/rust/pull/97845

ValuePairs::PolyTraitRefs should be called "trait"s in type error diagnostics
rust-lang/rust/pull/98012

use precise spans for recursive const evaluation
rust-lang/rust/pull/97740

suggest escaping box as identifier
rust-lang/rust/pull/97857

suggest to swap a struct and a trait in trait impls
rust-lang/rust/pull/97812

suggest using iter() or into_iter() for Vec
rust-lang/rust/pull/97871

tidy up miscellaneous bounds suggestions
rust-lang/rust/pull/97778

cleanup bound variable handling
rust-lang/rust/pull/97648

do not introduce bindings for types and consts in higher-ranked trait bounds
rust-lang/rust/pull/97927

folding revamp
rust-lang/rust/pull/97447

make Encodable and Encoder infallible
rust-lang/rust/pull/94732

re-use the type op instead of calling the implied_outlives_bounds query directly
rust-lang/rust/pull/97081

remove redundant calls to reserve in impl Write for VecDeque
rust-lang/rust/pull/97922

remove unnecessary to_string and String::new
rust-lang/rust/pull/98043

miri: make scheduler preemptive
rust-lang/miri/pull/2208

stabilize $$ in Rust 1.63.0
rust-lang/rust/pull/95860

stabilize the bundle native library modifier
rust-lang/rust/pull/95818

stabilize explicit_generic_args_with_impl_trait
rust-lang/rust/pull/96868

stabilize const_intrinsic_copy
rust-lang/rust/pull/97276

stabilize scoped threads
rust-lang/rust/pull/97992

allow ptr_from_addr_cast to fail
rust-lang/rust/pull/97763

add the Provider api to core::any
rust-lang/rust/pull/91970

BTreeSet: avoid intermediate sorting when collecting sorted iterators
rust-lang/rust/pull/97868

impl Read and Write for VecDeque<u8>
rust-lang/rust/pull/95632

change Direction::{is_forward,is_backward} functions into constants
rust-lang/rust/pull/97832

fix infinite recursion in x86_64 memcmp if SSE2 is not present
rust-lang/compiler-builtins/pull/471

fix Termination impl panic on closed stderr
rust-lang/rust/pull/97970

hashbrown: add Extend<&'a (K, V)> for HashMap<K, V, S, A>
rust-lang/hashbrown/pull/340

hashbrown: editing do_alloc for reducing LLVM IR
rust-lang/hashbrown/pull/341

codegen_gcc: feature/more simd
rust-lang/rustc_codegen_gcc/pull/176

clippy: fix iter_overeager_cloned false positive
rust-lang/rust-clippy/pull/8960

clippy: fix some #[expect] lint interaction
rust-lang/rust-clippy/pull/8976

clippy: fix derive_partial_eq_without_eq
rust-lang/rust-clippy/pull/8950

clippy: check const context
rust-lang/rust-clippy/pull/8907

rustfmt: dedup imports_granularity = "Item" (#4737)
rust-lang/rustfmt/pull/5380

rust-analyzer: more precise proc-macro errors
rust-lang/rust-analyzer/pull/12514

rust-analyzer: restart server automatically on settings changes
rust-lang/rust-analyzer/pull/12477

rust-analyzer: add proc macro ABI for rustc 1.63
rust-lang/rust-analyzer/pull/12492

rust-analyzer: on assoc item name hover, render trait decl docs
rust-lang/rust-analyzer/pull/12519

rust-analyzer: add label to loop
rust-lang/rust-analyzer/pull/12481

rust-analyzer: fix inline variable produce mismatched type
rust-lang/rust-analyzer/pull/12464

rust-analyzer: don't respond to cancelled requests when retrying them
rust-lang/rust-analyzer/pull/12508

rustup: Visual Studio: add the English language pack
rust-lang/rustup/pull/3006

rustup: Visual Studio: let the user choose install method
rust-lang/rustup/pull/3008

rustup: improve handling of Visual Studio errors
rust-lang/rustup/pull/3004
Updates from Rust Community

Foundation
Cloud Compute Program Update
foundation.rust-lang.org

Community Grants Program Awards Announcement
foundation.rust-lang.org

Newsletters
This Month in Rust OSDev: May 2022
rust-osdev.com

Project/Tooling Updates
Announcing error-stack
hash.dev

Rust Explorer: Rust playground with the top 10k crates
www.rustexplorer.com

Clap 3.2: Last Call Before 4.0
epage.github.io

C2Rust is Back
immunant.com

rust-analyzer changelog #133
rust-analyzer.github.io

Progress report on rustc_codegen_cranelift (June 2022)
bjorn3.github.io

rustc_codegen_gcc: Progress Report #12
blog.antoyo.xyz

IntelliJ Rust Changelog #172
intellij-rust.github.io

Fornjot (code-first CAD in Rust) - Weekly Dev Log - 2022-W23
www.fornjot.app

Slint UI crate weekly updates
slint-ui.com

This week in Databend #46: A Modern Cloud Data Warehouse for Everyone
weekly.databend.rs

This week in Fluvio #36: The programmable streaming platform
www.fluvio.io

Observations/Thoughts
Into the Future with IntoFuture - Improving Rust Async Ergonomics
refaktory.net

The Rust borrow checker just got (a little bit) smarter
jackh726.github.io

Async cancellation: a case study of pub-sub in mini-redis
smallcultfollowing.com

Local Async Executors and Why They Should be the Default
maciej.codes

Rust advocacy at a medium-sized startup
briankung.dev

Carcinisation of mirrord (or: why we use Rust)
metalbear.co

Everything Is Broken: Shipping rust-minidump at Mozilla – Part 1
hacks.mozilla.org

How to Make Rust Leak Memory (Also: How to Make It Stop)
fly.io

[video] Post-Crust of Rust Q&A
www.youtube.com

[audio] Rust Foundation with Rebecca Rumbul
rustacean-station.org

[audio] This Week in Rust - Issue 444
rustacean-station.org

Rust Walkthroughs
Caches In Rust
matklad.github.io

Flavors of enums with Rust bindgen
www.mdaverde.com

Implementing strace in Rust
jakobwaibel.com

Async Cancellation II: Time and Signals
blog.yoshuawuyts.com

Tidy up your Rust imports with a prelude.rs
justinwoodring.com

Hitchikers guide to Lunatic TCP Servers in 🦀
towardsdev.com

Building a web application with Rust and WebAssembly
kerkour.com

Unwrap a value with the question mark operator in Rust
shane-o.dev

[video] Async I/O in Depth: State Machines, Event Loops and Non-Blocking I/O System Calls in Rust (Part 2)
www.youtube.com

[video] Crust of Rust: Send, Sync, and their implementors
www.youtube.com

[video] [series] Introduction to Yew.rs
www.youtube.com

Miscellaneous
Rusty Jam 2
gamedev.rs

GitHub brings supply chain security features to the Rust community
github.blog
Crate of the week: dxf-rs

This week's crate is dxf-rs, a library to parse AutoCAD files.