pub ThisWeekInRust {} – Telegram
pub ThisWeekInRust {}
993 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 core

fix stack overflow detection on FreeBSD 11.1+
rust-lang/rust/pull/83771

disallow the use of high byte registes as operands on x86_64
rust-lang/rust/pull/83853

resolve/expand: cache intermediate results of #[derive] expansion
rust-lang/rust/pull/82907

panic early when TrustedLen indicates a length > usize::MAX
rust-lang/rust/pull/83726

suggest box/pin/arcing receiver on method calls
rust-lang/rust/pull/83667

run LLVM coverage instrumentation passes before optimization passes
rust-lang/rust/pull/83666

simplify logical operations CFG
rust-lang/rust/pull/83663

remove unneeded type resolving
rust-lang/rust/pull/83839

unaligned_references: align(N) fields in packed(N) structs are fine
rust-lang/rust/pull/83605

prevent very long compilation runtimes in LateBoundRegionNameCollector
rust-lang/rust/pull/83406

reduce the impact of Vec::reserve calls that do not cause any allocation
rust-lang/rust/pull/83357

BTree: no longer search arrays twice to check Ord
rust-lang/rust/pull/83267

stream the dep-graph to a file instead of storing it in-memory
rust-lang/rust/pull/82780

implement SourceIterator and InPlaceIterable for ResultShunt
rust-lang/rust/pull/81619

optimize jumps in PartialOrd::le
rust-lang/rust/pull/83819

ffi::c_str removed bound checks on as_bytes, to_bytes
rust-lang/rust/pull/83609

added as_slice method to BinaryHeap collection
rust-lang/rust/pull/82331

use #[inline(always)] on trivial UnsafeCell methods
rust-lang/rust/pull/83858

add #[inline] to IpAddr methods
rust-lang/rust/pull/83831

disallow octal format in Ipv4 string
rust-lang/rust/pull/83652

constify methods of std::net::SocketAddr, SocketAddrV4 and SocketAddrV6
rust-lang/rust/pull/82487

constify some slice methods
rust-lang/rust/pull/83571

stdsimd: add saturating abs/neg
rust-lang/stdsimd/pull/87

hashbrown: make RawTable::insert_no_grow unsafe
rust-lang/hashbrown/pull/254

cargo: add cargo config subcommand
rust-lang/cargo/pull/9302

rustdoc: only look at blanket impls in get_blanket_impls
rust-lang/rust/pull/83681

rustdoc: add unstable option to only emit shared/crate-specific files
rust-lang/rust/pull/83478

rustdoc: don't enter an infer_ctxt in get_blanket_impls for impls that aren't blanket impls
rust-lang/rust/pull/82864

rustdoc: highlight macros more efficiently
rust-lang/rust/pull/83793

clippy: add non_octal_unix_permissions lint
rust-lang/rust-clippy/pull/7001

clippy: don't lint manual_map in const functions
rust-lang/rust-clippy/pull/6976

clippy: new Lint: needless_for_each
rust-lang/rust-clippy/pull/6706

clippy: new Lint: branches_sharing_code
rust-lang/rust-clippy/pull/6463

clippy: lint: filter(Option::is_some).map(Option::unwrap)
rust-lang/rust-clippy/pull/6342

clippy: remove author requirement for cargo_common_metadata
rust-lang/rust-clippy/pull/7026

Clippy going dark: adding a dark theme to Clippy's lint list
rust-lang/rust-clippy/pull/7030

crates.io: topologically sort db-dump.tar.gz
rust-lang/crates.io/pull/3409

parallelize tidy
rust-lang/rust/pull/82347
Updates from Rust Community

Official
[Inside] Core Team updates
blog.rust-lang.org

[Foundation] Introducing Peixin Hou
foundation.rust-lang.org

[Foundation] Introducing Florian Gilcher
foundation.rust-lang.org

Newsletters
This Month in Rust OSDev (March 2021)
rust-osdev.com

RiB Newsletter #22 - A few tweaks
www.reddit.com

Project/Tooling Updates
GCC Rust Monthly Report #4 March 2021
thephilbert.io

mrustc upgrade: rustc 1.39.0
www.reddit.com

rust-analyzer Changelog #71
rust-analyzer.github.io

A new Left Recursive PEG Parser Generator for rust
www.mess.org

Last Month in Flott (Motion Control Toolkit in Rust) - April 2021
flott-motion.org

Recent updates in IntelliJ Rust
blog.jetbrains.com

Bevy 0.5
bevyengine.org

Observations/Thoughts
Interfacing a low-level actor system to Rust async/await, part 1
uazu.github.io

A Tour of Safe Tracing GC Designs in Rust
manishearth.github.io

How I Used Rust + Lunatic to Build a TelNet Chat Server with WebAssembly
www.hackernoon.com

Eliminating Data Races in Firefox - A Technical Report
hacks.mozilla.org

First-class IO
blog.sunfishcode.online

The modern packager's security nightmare
blogs.gentoo.org

Ordering Requests to Accelerate I/O
pkolaczk.github.io

An essay of checked exceptions in Rust
users.rust-lang.org

Weird architectures weren't supported to begin with
blog.yossarian.net

[video] I tried learning OpenGL in 7 days - using Rust
youtu.be

Rust Walkthroughs
How we built our Python Client that's mostly Rust
www.fluvio.io

Hello world with KAS GUI
kas-gui.github.io

How to create small Docker images for Rust
kerkour.com

Oxidizing the Kubernetes Operator
www.pavel.cool

Sending tuples from Node to Rust and back
www.fluvio.io

Getting started with Kafka and Rust: Part 1
dev.to

A Beginner's Guide to Handling Errors in Rust
dev.to

Using Seahorn
project-oak.github.io

Asynchronous streams in Rust (part 1) - Futures, buffering and mysterious compilation error messages
gendignoux.com

[series] What would SQLite look like if written in Rust? — Part 3
medium.com/the-polyglot-programmer

[video] Return a value from a function in Rust
www.youtube.com

[video] Crust of Rust: Atomics and Memory Ordering
youtu.be

[video] Async/Await in Rust: Introduction
youtu.be

[video] OpenVehicleDiag Rust live coding with Macchina's A0!!
youtu.be

[video] [series] Easy Rust - learn to program in Rust with simple English
youtube.com

Miscellaneous
best-of-ml-rust: A ranked list of awesome machine learning Rust libraries
e-tony/best-of-ml-rust

Rust in the Android platform
security.googleblog.com

David Tolnay - thank you
www.reddit.com

My "shiny future"
smallcultfollowing.com
Crate of the week: rs-pbrt

This week's crate is rs-pbrt, a counterpart to the PBRT book's (3rd edition) C++ code.
Updates from core

allow specifying alignment for functions
rust-lang/rust/pull/81234

fix handling of --output-format json flag
rust-lang/rust/pull/82497

don't tell users to use a nightly flag on the stable channel
rust-lang/rust/pull/84055

improve trait/impl method discrepancy errors
rust-lang/rust/pull/84014

account for ExprKind::Block when suggesting .into() and deref
rust-lang/rust/pull/83952

let #[allow(unstable_name_collisions)] work for things other than function
rust-lang/rust/pull/81922

add bad_asm_style to HardwiredLints
rust-lang/rust/pull/84068

improve debuginfo for closures and async functions on Windows MSVC
rust-lang/rust/pull/83941

use AnonConst for asm! constants
rust-lang/rust/pull/83916

add FromIterator and IntoIterator impls for ThinVec
rust-lang/rust/pull/83821

add strong_count mutation methods to Rc
rust-lang/rust/pull/83476

use a SmallVec in impl_or_trait_item
rust-lang/rust/pull/83932

use FromStr trait for number option parsing
rust-lang/rust/pull/82483

reduce threads spawned by ui-tests
rust-lang/rust/pull/81942

core: disable ptr::swap_nonoverlapping_one's block optimization on SPIR-V
rust-lang/rust/pull/83019

stabilize cmp_min_max_by
rust-lang/rust/pull/81047

stabilize peekable_peek_mut
rust-lang/rust/pull/81938

stabilize duration_saturating_ops
rust-lang/rust/pull/84090

stabilize atomic_fetch_update methods on AtomicBool and AtomicPtr
rust-lang/rust/pull/84085

fix HashMap/HashSet LLDB pretty-printer after hashbrown
rust-lang/rust/pull/83920

futures: move try_fold, try_for_each, and try_for_each_concurrent to StreamExt
rust-lang/futures-rs/pull/2342

futures: add stream::Peekable::{next_if, next_if_eq}
rust-lang/futures-rs/pull/2379

fix perf regression in rustdoc::bare_urls
rust-lang/rust/pull/84034

rustdoc: cleanup handling of associated items for intra-doc links
rust-lang/rust/pull/83849

rustdoc: sort search index items for compression
rust-lang/rust/pull/83835

rustdoc: store intra-doc links in Cache instead of on items directly
rust-lang/rust/pull/83833

rustdoc: use ThinVec in a few places
rust-lang/rust/pull/83828

rustdoc: merge idents when generating source content
rust-lang/rust/pull/83992

clippy: fix false positive in single_component_path_imports lint
rust-lang/rust-clippy/pull/6905

clippy: fix explicit_into_iter_loop
rust-lang/rust-clippy/pull/6982

clippy: consider mutability on useless_vec suggestions
rust-lang/rust-clippy/pull/7036

clippy: fix missing_panics_doc not detecting assert_eq! and assert_ne!
rust-lang/rust-clippy/pull/7029
Updates from Rust Community

Official
Brainstorming Async Rust's Shiny Future
blog.rust-lang.org

[Foundation] Introducing Florian Gilcher
foundation.rust-lang.org

[Foundation] Introducing Peixin Hou
foundation.rust-lang.org

Newsletters
This Month in Rust GameDev #20 - March 2021
gamedev.rs

Project/Tooling Updates
Progress report on rustc_codegen_cranelift (April 2021)
bjorn3.github.io

IntelliJ Rust: Updates for 2021.1
blog.jetbrains.com

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

rust-analyzer Changelog #72
rust-analyzer.github.io

Ballista has been donated to the Apache Arrow project
www.reddit.com

Observations/Thoughts
Rust in Production: MeiliSearch
serokell.io

Rust is for Professionals
gregoryszorc.com

Rust async is colored, and that's not a big deal
morestina.net

Using Rust for Scientific Numerical applications: Learning from Past Experiences
blog.esciencecenter.nl

PlaintDB Servers - another milestone reached
dev.to

Why Rust for Robots?
dev.to

Integrating const-generics to nalgebra 0.26
www.dimforge.com

[podcast] Building with Rust: Tim McNamara on Rust in Action [trannoscript]
anchor.fm

Rust Walkthroughs
Build an End-to-End Encrypted messaging app in rust, with the Ockam crate, in this step by step guide.
ockam-network/ockam/tree/develop/documentation/guides/rust/get-started#readme

Introducing easy-cast
kas-gui.github.io

Why Rust strings seem hard
www.brandons.me

Rust shenanigans: return type polymporphism
loige.co

Writing Neovim plugins in Rust
blog.usejournal.com

A zero-overhead linked list in Rust
aloso.github.io

Integrating Rust into Python
www.vortexa.com

Setting Up a gRPC Protobuf Server With Tonic
dev.to

Getting started with Kafka and Rust: Part 2
dev.to

Rust lib error management, multiple enum approach
www.tglman.com

Asynchronous streams in Rust (part 2) - Cancelling expired requests
gendignoux.com

[series] Engaging Warp: REST API with Rust
dev.to

[ZH] [series] Build GraphQL services based on Async Rust using tide + async-graphql + mongodb (基于 Async Rust 构建 GraphQL 服务,使用 tide + async-graphql + mongodb) - Part 1
blog.budshome.com

[video] Flocking Boids in Rust: With Piston vs Tetra vs Amethyst vs Bevy
youtu.be

Miscellaneous
Rust, not Firefox, is Mozilla's greatest industry contribution
www.techrepublic.com

AWS's Shane Miller to head the newly created Rust Foundation
www.zdnet.com

[RFC] Rust support for Linux kernel
lkml.org

A look at LLVM - comparing clamp implementations
secret.club

Tokio-uring design proposal
www.reddit.com

Google is now writing low-level Android code in Rust
arstechnica.com

Rust in the Linux kernel
security.googleblog.com
Crate of the week: dipa

This week's crate is dipa, a crate to derive delta-encoding for Rust data structures.
Updates from core

detect when suggested paths enter extern crates more rigorously
rust-lang/rust/pull/84113

don't set fast-math for the SIMD operations we set it for previously
rust-lang/rust/pull/84274

add lint deref_nullptr detecting when a null ptr is dereferenced
rust-lang/rust/pull/83948

fix suggestion for unsized function parameters
rust-lang/rust/pull/84313

suggest to borrow after failing to cast from T to *const/mut T
rust-lang/rust/pull/84228

stabilize non-ascii-idents
rust-lang/rust/pull/83799

stabilize is_subnormal
rust-lang/rust/pull/84086

stabilize duration_zero
rust-lang/rust/pull/84084

stabilize nonzero_leading_trailing_zeros
rust-lang/rust/pull/84082

stabilize bufreader_seek_relative
rust-lang/rust/pull/82992

stabilize BTree{Map, Set}::retain
rust-lang/rust/pull/84121

fix aliasing violations in thread_local_const_init
rust-lang/rust/pull/84291

fix join_paths error display
rust-lang/rust/pull/84177

merge same condition branch in vec spec_extend
rust-lang/rust/pull/84209

improve vecdeque_binary_search
rust-lang/rust/pull/84145/files

regex: shrink size of Inst
rust-lang/regex/pull/760

cargo: don't re-use rustc cache when RUSTC_WRAPPER changes
rust-lang/cargo/pull/9348

clippy: split is_diagnostic_assoc_item
rust-lang/rust-clippy/pull/7074

clippy: fix single_match
rust-lang/rust-clippy/pull/7093

clippy: fix a false negative on needless_return
rust-lang/rust-clippy/pull/7067

clippy: fix a false positive in missing_const_for_fn
rust-lang/rust-clippy/pull/7076

clippy: fix false positive in wrong_self_convention lint
rust-lang/rust-clippy/pull/7064

clippy: fix redundant_pattern_matching drop order
rust-lang/rust-clippy/pull/6568

clippy: un-double return on try_err
rust-lang/rust-clippy/pull/7108
Updates from Rust Community

Official
[Inside] Rust Compiler April Steering Cycle
blog.rust-lang.org

[Inside] Lang team April update
blog.rust-lang.org

[Inside] Jacob Hoffman-Andrews joins the Rustdoc team
blog.rust-lang.org

[Foundation] Introducing Jane Lusby
foundation.rust-lang.org

[Foundation] Introducing Shane Miller
foundation.rust-lang.org

Project/Tooling Updates
rust-analyzer Changelog #73
rust-analyzer.github.io

Knurling-rs changelog #23
ferrous-systems.com

This Week in Ballista #11
ballistacompute.org

Welcoming Alice Ryhl as the first paid Tokio contributor
tokio.rs

Zellij: a Rusty terminal multiplexer releases a beta version
zellij.dev

faux: a struct mocking library - landing v0.1
nrxus.github.io

Otter - a game server for arbitrary board games. It is mainly written in Rust
diziet.dreamwidth.org

[audio] What's New in Rust 1.50 and 1.51
rustacean-station.org

Observations/Thoughts
Red & blue functions are actually a good thing
blainehansen.me

Why Rust powers Temporal's new Core SDK
docs.temporal.io

Optimizing a sudoku solver in Rust
www.simonclark.dev

My journey to understand rust-lang
https://daveshawley.medium.com/my-journey-to-understand-rust-lang-28e4cf808b12

How I Implemented /dev/printerfact in Rust
christine.website

Why fnm was rewritten in Rust
gal.hagever.com

Running GraphQL on Lambda with Rust
dev.to

Runtime Alias Detection
myrrlyn.net

What's in the box?
fasterthanli.me

[video] An Overview of the Embedded Rust Ecosystem
youtu.be

Rust Walkthroughs
Late Night Confessions — Building a Website Using Rust, Rocket, Diesel, and Askama - Part 1
medium.com/perimeterx

Tour of Rust's Standard Library Traits
pretzelhammer/rust-blog/blob/master/posts/tour-of-rusts-standard-library-traits.md

Learning Rust #3: crates.io & publishing your package
hamatti.org

Making an online multiplayer game in Rust with Nakama
heroiclabs.com

Creating a Sleek Masonry Gallery with React and WebAssembly
dev.to

The GPIO war: macro bunkers for typestate explosions (2)
www.ecorax.net

Using std in embedded Rust
timmmm.github.io

Rust and TUI: Building a command-line interface in Rust
blog.logrocket.com

Rust: Serde: Working with untyped JSON values
youtu.be

[series] Writing NES Emulator in Rust
bugzmanov.github.io

Miscellaneous
rustc, iOS and an M1
fnordig.de

Microsoft Previews Rust For Windows
www.tectalk.co

Preparing Rustls for Wider Adoption
www.abetterinternet.org

Are We Yeet Yet?
areweyeetyet.rs/

Run Rust RISC-V Firmware with BL602 IoT SDK
lupyuen.github.io

[video] Stanford Seminar - The Soul of a New Machine: Rethinking the Computer
youtu.be
Crate of the week: deltoid

This week's crate is deltoid, another crate for delta-compressing Rust data structures.
Updates from core

use LLVM's new saturating float-to-int intrinsics
rust-lang/rust/pull/84339

enable sanitizers for x86_64-unknown-linux-musl
rust-lang/rust/pull/84126

add coverage to continue statements
rust-lang/rust/pull/84295

further split up const_fn feature flag
rust-lang/rust/pull/84310

various const parameter defaults improvements
rust-lang/rust/pull/84299

tweak trait not `use d suggestion
rust-lang/rust/pull/84499

on stable, suggest removing #![feature] for features that have been stabilized
rust-lang/rust/pull/83722

improve diagnostics for function passed when a type was expected
rust-lang/rust/pull/84520

add suggestion to "use break" when attempting to implicit-break a loop
rust-lang/rust/pull/84516

suggest .as_ref() on borrow error involving Option/Result
rust-lang/rust/pull/84353

implement a lint that highlights all moves larger than a configured limit
rust-lang/rust/pull/83519

introduce CompileMonoItem DepNode
rust-lang/rust/pull/84123

cautiously add IntoIterator for arrays by value
rust-lang/rust/pull/84147

stabilize Duration::MAX
rust-lang/rust/pull/84120

stabilize core::array::{from_ref, from_mut} in 1.53.0
rust-lang/rust/pull/84105

implement TrustedRandomAccess for Take iterator adapter
rust-lang/rust/pull/83990

format Struct { .. } on one line even with {:#?}
rust-lang/rust/pull/84390

added CharIndices::offset function
rust-lang/rust/pull/82585

improve rebuilding behaviour of BinaryHeap::retain
rust-lang/rust/pull/78681

hashbrown: add an allocator() getter to HashMap and HashSet
rust-lang/hashbrown/pull/257

libz: disable forced zlib vendoring on musl
rust-lang/libz-sys/pull/78

cargo: some changes to rustdoc fingerprint checking
rust-lang/cargo/pull/9404

rustdoc: remove most fields from ExternalCrate
rust-lang/rust/pull/84457

clippy: refactor MSRV aliases
rust-lang/rust-clippy/pull/7137

clippy: finish MSRV for cloned_instead_of_copied
rust-lang/rust-clippy/pull/7134

clippy: manual_unwrap_or: fix invalid code suggestion due to macro expansion
rust-lang/rust-clippy/pull/7136

clippy: cloned_instead_of_copied MSRV
rust-lang/rust-clippy/pull/7129

clippy: add flat_map_option lint
rust-lang/rust-clippy/pull/7101

clippy: unused_io_amount detects .read().ok()?
rust-lang/rust-clippy/pull/7100

clippy: add lint to check for boolean comparison in assert macro calls
rust-lang/rust-clippy/pull/7083
Updates from Rust Community

Official
Announcing Rustup 1.24.0
blog.rust-lang.org

[Inside] Congrats to compiler team member Aaron Hill
blog.rust-lang.org

[Foundation] Introducing Josh Stone
foundation.rust-lang.org

[Foundation] Introducing Lars Bergstrom
foundation.rust-lang.org

Project/Tooling Updates
rust-analyzer Changelog #74
rust-analyzer.github.io

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

Lemmy Release v0.11.0
lemmy.ml

simdutf v0.1.1 - A small step for semver, one giant leap for performance
www.reddit.com

The playable demo of Outer Wonders, our cute, colorful and Rust-powered puzzle game, is live on itch.io for Windows and Linux! Thank you Rust community for creating such awesome tools!
www.reddit.com

Observations/Thoughts
Rust Notebooks with Evcxr: Interview with David Lattimore
blog.abor.dev

Costs of iterators and Zero Cost Abstractions in Rust (with video)
mike-barber/rust-zero-cost-abstractions/blob/main/README.md

Move Constructors in Rust: Is it possible?
mcyoung.xyz

basedrop: a garbage collector for real-time audio in rust
glowcoil.com

Road to TurboWish; Part 1: Goals
blog.pnkfx.org

Road to TurboWish; Part 2: Stories
blog.pnkfx.org

The Pains of Path Parsing
www.fpcomplete.com

If you could re-design Rust from scratch today, what would you change?
www.reddit.com

Red & blue functions are actually a good thing
blainehansen.me

Rust Walkthroughs
Creating privacy-preserving signatures in Rust with BBS+
ockam-network/ockam/blob/develop/implementations/rust/ockam/signature_bbs_plus/GUIDE.md

Late Night Confessions — Building a Website Using Rust, Rocket, Diesel, and Askama - Part 2
medium.com/perimeterx

How to Build a Custom Test Harness in Rust
www.fluvio.io

Introduction to gRPC in Rust
romankudryashov.com

Writing a Postgres SQL Pretty Printer in Rust: Part 2
v

[series] A journey into Rust
dev.to

[ZH] [series] Build GraphQL services based on Async Rust using tide + async-graphql + mongodb (基于 Async Rust 构建 GraphQL 服务,使用 tide + async-graphql + mongodb) - Part 2
blog.budshome.com

[ZH] [series] Build GraphQL services based on Async Rust using actix-web + async-graphql + rbatis + postgresql / mysql (基于 actix-web + async-graphql + rbatis + postgresql / mysql 构建异步 Rust GraphQL 服务) - Part 1
blog.budshome.com

[video] What is Rust and why is it important?
youtu.be

[video] Using Iterator::colect in Rust
youtu.be

[video] RustConf 2020 - Macros for a More Productive Rust by jam1garner
youtu.be

Miscellaneous
An Interview With Linus Torvalds: Linux and Git
www.tag1consulting.com

Programming languages: JavaScript has most developers but Rust is the fastest growing
www.zdnet.com

Parts of Tensorboard are being rewritten in Rust for a 100x to 400x speedup
www.reddit.com

Are we finally about to gain guaranteed Tail Calls in Rust?
www.reddit.com

GitHub Actions best practices for Rust projects
www.fluvio.io
Crate of the week: cargo-rr

This week's crate is cargo-rr, a cargo subcommand to use the time-traveling rr debugger on our code.
Updates from core

adds feature-gated #[no_coverage] function attribute, to fix derived Eq 0 coverage
rust-lang/rust/pull/84562

give a better error when std or core are missing
rust-lang/rust/pull/84450

suggestion for unit enum variant when matched with a pattern
rust-lang/rust/pull/84818

avoid generating QueryMap::extend for each key type
rust-lang/rust/pull/84805

remove dead code in rustc_session::Options
rust-lang/rust/pull/84802

move iter_results to dyn FnMut rather than a generic
rust-lang/rust/pull/84719

miri: throw UB if f*_fast intrinsic called with non-finite value
rust-lang/miri/pull/1785

miri: use harness = false instead of #![feature(custom_test_frameworks)]
rust-lang/miri/pull/1784

LLVM: don't merge thread_local constants with non-thread_local constants
rust-lang/llvm-project/pull/105

be stricter about rejecting LLVM reserved registers in asm!
rust-lang/rust/pull/84658

stabilize vec_extend_from_within
rust-lang/rust/pull/84642

stabilize ordering_helpers
rust-lang/rust/pull/84523

override clone_from method for PathBuf and OsString
rust-lang/rust/pull/84615

simplify Mutex::into_inner
rust-lang/rust/pull/84650

i8 and u8::to_string() specialisation
rust-lang/rust/pull/82576

reuse sys::unix::cmath on other platforms
rust-lang/rust/pull/84522

add ErrorKind::OutOfMemory
rust-lang/rust/pull/84744

add std::os::unix::fs::chroot to change the root directory of the current process
rust-lang/rust/pull/84716

inline most raw socket, fd and handle conversions
rust-lang/rust/pull/84541

socket2: allow for niche optimization on Unix platforms
rust-lang/socket2/pull/222

regex: fix lazy DFA false quits on ASCII text
rust-lang/regex/pull/768

regex: update to latest memchr + upgrade to Rust 2018 + bump MSRV to Rust 1.41
rust-lang/regex/pull/767

cargo: add report subcommand
rust-lang/cargo/pull/9438

cargo: show transfer rate when fetching/updating registry index
rust-lang/cargo/pull/9395

rustdoc: remove unnecessary provided_trait_methods field from Impl
rust-lang/rust/pull/84463

rustdoc: shrink doctree::Module
rust-lang/rust/pull/84763

datafrog: micro-optimize binary_search
rust-lang/datafrog/pull/30

clippy: fix a false-positive inside const fn in comparison_chain
rust-lang/rust-clippy/pull/7118

clippy: implicit_return improvements
rust-lang/rust-clippy/pull/6951

clippy: while_immutable_cond: check condition for mutation
rust-lang/rust-clippy/pull/7144

clippy: fix false negative in iter_cloned_collect with a large array
rust-lang/rust-clippy/pull/7138
Updates from Rust Community

Official
Announcing Rustup 1.24.1
blog.rust-lang.org

[Inside] Rustup 1.24.0 release incident report for 2021-04-27
blog.rust-lang.org

[Inside] 1.52.0 pre-release testing
blog.rust-lang.org

[Inside] Core Team Update: May 2021
blog.rust-lang.org

[Foundation] Q12021 Membership Update
foundation.rust-lang.org

Newsletters
This Month in Rust OSDev (April 2021)
rust-osdev.com

Project/Tooling Updates
One Third Of 2021
isomorphicdb.io

This Week In TensorBase 1
tensorbase.io

gfx/wgpu releases 0.8
gfx-rs.github.io

Last Month in Flott (Motion Control Toolkit in Rust) - May 2021
flott-motion.org

rust-analyzer Changelog #75
rust-analyzer.github.io

GCC Rust Monthly Report #5 April 2021
thephilbert.io

RustCrypto Release Announcements (aead, cipher, crypto, elliptic-curve, ecdsa, and more)
users.rust-lang.org

Observations/Thoughts
How Rust makes Rayon's data parallelism magical
developers.redhat.com

Making Generative Art with Rust
blog.abor.dev

An Incomplete Explanation of the Proc Macro That Saved Me 4000 Lines of Rust
mbuffett.com

The most underrated but useful Rust standard library type
dev.to

Guaranteed unique; Or, why dogfooding can be taxing.
dev.to

The Great Rewriting in Rust
deprogrammaticaipsum.com

A story about async Rust and using !Send types
procmarco.netlify.app

Compilers as Teachers
ferrous-systems.com

Making Generative Art with Rust: interview with Alexis André
blog.abor.dev

Building on the Shoulders of Giants: Combining TensorFlow and Rust
www.crowdstrike.com

Let's make everything iterable - Iterate over pagination result in the Rest API
0x709394.me

[video] Interview with Niko Matsakis, Co-lead of the Rust language team
youtu.be

Rust Walkthroughs
Introduction to gRPC in Rust
dev.to

I2C on the Pinephone
dev.to

Late Night Confessions - Building a Website Using Rust, Rocket, Diesel, and Askama - Part 3
dev.to

Rust ownership and borrows - Fighting the borrow-checker
dev.to

Running Rust on Android
blog.noscriptames.pl

Using GDB and defmt to debug embedded programs
ferrous-systems.com

Data Modelling in Rust
phazer99.blogspot.com

Data Modelling in Rust Continued
phazer99.blogspot.com

Embedding Rust code in Java Jar for distribution
www.fluvio.io

Late Night Confessions — Building a Website Using Rust, Rocket, Diesel, and Askama - Part 3
medium.com/perimeterx

Make a Counter and Calculator with KAS GUI
kas-gui.github.io

[ZH] [series] Build GraphQL services based on Async Rust using tide + async-graphql + mongodb (基于 Async Rust 构建 GraphQL 服务,使用 tide + async-graphql + mongodb) - Part 3
blog.budshome.com

[ZH] [series] Build GraphQL services based on Async Rust using actix-web + async-graphql + rbatis + postgresql / mysql (基于 actix-web + async-graphql + rbatis + postgresql / mysql 构建异步 Rust GraphQL 服务) - Part 2
blog.budshome.com

[video] Crust of Rust: Dispatch and Fat Pointers
youtu.be

[video] Ockam | OSS Community Call | April 2021
www.youtube.com

Miscellaneous
Rust's Most Unrecognized Contributor
brson.github.io

Facebook Joins the Rust Foundation
developers.facebook.com

A brief history of Rust at Facebook
engineering.fb.com

rustc performance improvement from rust 1.46 to 1.51
www.reddit.com

Microsoft joins Bytecode Alliance to advance WebAssembly - aka the thing that lets you run compiled C/C++/Rust code in browsers
www.theregister.com

Using GDB and defmt to debug embedded programs
ferrous-systems.com
Crate of the week: display_utils

This week's crate is display_utils, a library with Displayable structs to make string manipulation easier.
Updates from core

fix duplicate unknown lint errors
rust-lang/rust/pull/85053

improve diagnostics for functions in struct definitions
rust-lang/rust/pull/76808

ensure failing promoteds in const/static bodies are handled correctly
rust-lang/rust/pull/85112

implement Native link modifiers (RFC #2951)
rust-lang/rust/pull/83507

deduplicate native libs before they are passed to the linker
rust-lang/rust/pull/84794

retain data in vectorized registers for longer
rust-lang/rust/pull/84915

only compute Obligation cache_key once in register_obligation_at
rust-lang/rust/pull/84923

"const" initialized thread locals in rustc
rust-lang/rust/pull/84833

streamline try_start code
rust-lang/rust/pull/84806

simplify chdir implementation and minimize unsafe block
rust-lang/rust/pull/84712

optimize BufWriter
rust-lang/rust/pull/79930

provide io::Seek::rewind
rust-lang/rust/pull/85146

stablize {HashMap, BTreeMap}::into_{keys, values}
rust-lang/rust/pull/84328

futures: add FuturesUnordered::into_iter, make iter_pin_ref public
rust-lang/futures-rs/pull/2423

regex: fix compilation with pattern feature
rust-lang/regex/pull/772

datafrog: speed up Relation::merge
rust-lang/datafrog/pull/29

cargo: improve two error messages
rust-lang/cargo/pull/9472

rustdoc: fix source code line number display and make it clickable again
rust-lang/rust/pull/85148

compiletest: add needs-unwind and beginning of support for testing panic=abort std
rust-lang/rust/pull/84734

clippy: fix stack overflow issue in redundant_pattern_matching
rust-lang/rust-clippy/pull/7170

clippy: fix eval_order_dependence async false positive
rust-lang/rust-clippy/pull/7174

clippy: fix unused_unit macro false positive
rust-lang/rust-clippy/pull/7167

clippy: fix needless_quesiton_mark false positive
rust-lang/rust-clippy/pull/7165

clippy: for to_* variant don't lint in trait impl taking self when non-Copy type
rust-lang/rust-clippy/pull/7182

clippy: fix unnecessary_filter_map false positive
rust-lang/rust-clippy/pull/7175

clippy needless_collect: Lint cases with type annotations for indirect usage and recognize BinaryHeap
rust-lang/rust-clippy/pull/7163