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

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
Crate of the week: tokio-console

This week's crate is tokio-console, a "top"-like utility to view your tasks run.
Updates from core

implement more Iterator methods on core::iter::Repeat
rust-lang/rust/pull/85338

override clone_from for some types
rust-lang/rust/pull/85176

stabilize const_fn_unsize
rust-lang/rust/pull/85078

implement the new desugaring from try_trait_v2
rust-lang/rust/pull/84767

impl FromStr for proc_macro::Literal
rust-lang/rust/pull/84717

stabilize extended_key_value_attributes
rust-lang/rust/pull/83366

fix auto-hide for implementations and implementors
rust-lang/rust/pull/85575

add rustc_mir::interpret::Machine::enforce_abi()
rust-lang/rust/pull/85557

check for more things in THIR unsafeck
rust-lang/rust/pull/85555

suppress spurious errors inside async fn
rust-lang/rust/pull/85393

avoid zero-length memcpy in formatting
rust-lang/rust/pull/85391

always produce sub-obligations when using cached projection result
rust-lang/rust/pull/85382

CTFE core engine allocation & memory API improvemenets
rust-lang/rust/pull/85376

CTFE get_alloc_extra_mut: also provide ref to MemoryExtra
rust-lang/rust/pull/85578

fix missing lifetimes diagnostics
rust-lang/rust/pull/85375

suggest borrowing if a trait implementation is found for &/&mut T
rust-lang/rust/pull/85369

remove InPlaceIterable marker from Peekable due to unsoundness
rust-lang/rust/pull/85340

extend rustc_on_implemented to improve more ? error messages
rust-lang/rust/pull/85596

cargo: add cargo:rustc-link-arg-bin flag
rust-lang/cargo/pull/9486

rustdoc: don't hide inherent implementations by default
rust-lang/rust/pull/85602

clippy: fix ICE in implicit_return
rust-lang/rust-clippy/pull/7242

clippy: fix invalid syntax in from_iter_instead_of_collect suggestion
rust-lang/rust-clippy/pull/7264

clippy: fix needless_borrow suggestion
rust-lang/rust-clippy/pull/7105

clippy: fix redundant_closure for vec![] macro in a closure with arguments
rust-lang/rust-clippy/pull/7263

clippy: don't lint multiple_inherent_impl with generic arguments
rust-lang/rust-clippy/pull/7089

clippy: early return from LintPass registration when collecting metadata
rust-lang/rust-clippy/pull/7253

clippy: adding the default lint level to the metadata collection
rust-lang/rust-clippy/pull/7246
Updates from Rust Community

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

This Week In TensorBase 4
tensorbase.io

rustc_codegen_gcc can now run libcore’s tests and pass most of them!
blog.antoyo.xyz

Parcel 2 beta 3
v2.parceljs.org

Announcing lettre 0.10.0-rc.1
lettre.rs

Announcing typed-sql beta! Zero-cost ORM with fast compile times
www.reddit.com

Announcing Valuable, a library for object-safe value inspection
tokio.rs

Observations/Thoughts
Why and how we wrote a compiler in Rust (blog post series 1/X): the context
https://bnjjj.medium.com/why-and-how-we-wrote-a-compiler-in-rust-blog-post-series-1-x-the-context-e2f83b10edb9

2D Web Rendering with Rust
medium.com/lagierandlagier

A fast-to-sync/search and space-optimized replication algorithm written in Rust, the gun-db data replication model
mateusfreira.github.io

Adventures in rustc Forking
jam1.re

Baseline implementations should be predictable
pvk.ca

Naming Your Lifetimes
www.possiblerust.com

Rucredstash release & Rust experience from a Haskeller
psibi.in

Rust Walkthroughs
Creating an Infinite Mixture Model in Rust with the rv crate
redpoll.ai

Debug rust application inside container
blog.erebe.dev

Write Rust lints without forking Clippy
www.trailofbits.com

Zig Makes Rust Cross-Compilation Just Work
actually.fyi

Routing traffic in Rust using eBPF
www.infinyon.com

How to to_string in Rust
loige.co

Building small desktop apps with Ember.js and Tauri
dev.to

Coming to Rust from Django
meesha.blog

Structural Typing in Rust
beachape.com

Idiomatic Rust? Implementing binary search
shane-o.dev

[ZH] Practice of web crawling with async Rust (使用 Rust 做异步数据采集的实践)
blog.budshome.com

[video] Lock-Free to Wait-Free Simulation in Rust
youtu.be

Miscellaneous
Rust Web Development - MEAP
www.manning.com

Fuchsia OS partially written in Rust has shipped
www.reddit.com
Crate of the week: typed-index-collections

This week's crate is typed-index-collections, a crate that lets you make Vecs with custom-typed indices.
Updates from core

post-monomorphization errors traces MVP
rust-lang/rust/pull/85633

make closures inherit their parent's "safety context"
rust-lang/rust/pull/85607

fix low-memory issue and lower tier platforms with no sysinfo
rust-lang/rustup/pull/2779

fix bootstrap using host exe suffix for cargo
rust-lang/rust/pull/85590

const-eval: disallow unwinding across functions that !fn_can_unwind()
rust-lang/rust/pull/85546

deal with const_evaluatable_checked in ConstEquate
rust-lang/rust/pull/85481

disallow shadowing const parameters
rust-lang/rust/pull/85478

optimize proc macro bridge
rust-lang/rust/pull/85390

fix incorrect suggestions for E0605
rust-lang/rust/pull/84968

stabilize member constraints
rust-lang/rust/pull/84701

E0599 suggestions and elision of generic argument if no canditate is found
rust-lang/rust/pull/84221

a bit more polish on const eval errors
rust-lang/rust/pull/85767

merge CrateDisambiguator into StableCrateId
rust-lang/rust/pull/85804

do not try to build LLVM with Zlib on Windows
rust-lang/rust/pull/85762

use u64 for the GroupWord on WebAssembly
rust-lang/hashbrown/pull/271

don't hash thir_body
rust-lang/rust/pull/85729

emit a hard error when a panic occurs during const-eval
rust-lang/rust/pull/85704

don't sort a Vec before computing its DepTrackingHash
rust-lang/rust/pull/85702

demote ControlFlow::{from, into}_try to pub(crate)
rust-lang/rust/pull/85645

remove Ipv6Addr::is_unicast_link_local_strict
rust-lang/rust/pull/85819

make Step trait safe to implement
rust-lang/rust/pull/83772

fix unsoundness of Debug implementation for linked_list::IterMut
rust-lang/rust/pull/85814

Weak's type parameter may dangle on drop
rust-lang/rust/pull/85535

add TrustedRandomAccess specialization for Vec::extend()
rust-lang/rust/pull/83770

enable Vec's calloc optimization for Option<NonZero>
rust-lang/rust/pull/85737

prevent double drop in Vec::dedup_by if a destructor panics
rust-lang/rust/pull/85625

fix pointer provenance in <[T]>::copy_within
rust-lang/rust/pull/85610

add String::extend_from_within
rust-lang/rust/pull/85801

add inline attr to CString::into_inner so it can optimize out NonNull checks
rust-lang/rust/pull/85719

hashbrown: guard against allocations exceeding isize::MAX
rust-lang/hashbrown/pull/268

futures: allow no limit for buffered stream combinators
rust-lang/futures-rs/pull/2429

cargo: cargo tree -e no-proc-macro to hide procedural macro dependencies
rust-lang/cargo/pull/9488

rustup: bring back x86_64-sun-solaris target to rustup
rust-lang/rust/pull/85252

clippy: add avoid_breaking_exported_api config option
rust-lang/rust-clippy/pull/7187

clippy: add lint suspicious_splitn
rust-lang/rust-clippy/pull/7292

clippy: move semicolon_if_nothing_returned to pedantic
rust-lang/rust-clippy/pull/7268

clippy: improve message for not_unsafe_ptr_arg_deref lint
rust-lang/rust-clippy/pull/7294

clippy: fix ICE in too_many_lines
rust-lang/rust-clippy/pull/7287

clippy: fix allow on some statement lints
rust-lang/rust-clippy/pull/7282

clippy: fix missing_docs_in_private_items false negative
rust-lang/rust-clippy/pull/7281

clippy: add the ability to invalidate caches to force metadata collection
rust-lang/rust-clippy/pull/7256
Updates from Rust Community

Newsletters
RiB Newsletter #24 - Bridges
www.reddit.com

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

GCC Rust Monthly Report #6 May 2021
thephilbert.io

This Week In TensorBase 5
tensorbase.io

Announcing tower-http
tokio.rs

Turning rusty tech into Rust ~ When you need to FTP but don’t want to
blog.abstractinvoke.com

Observations/Thoughts
Object Oriented Programming Concepts in Rust
blog.knoldus.com

My first cup of Rust
blog.frankel.ch

Demystifying Mutability and References in Rust
dev.to

The simpler alternative to GCC-RS
https://shnatsel.medium.com/the-simpler-alternative-to-gcc-rs-90da2b3685d3

Why I support GCC-rs
https://chorman64.medium.com/why-i-support-gcc-rs-dc69ebfffd60

Taking Rust for a Test Drive
ferrous-systems.com

A Polkadot Postmortem - 24.05.2021
polkadot.network

The Most Annoying Bug I've Had To Track Down
www.reddit.com

[video] There and back again - Our Rust adoption journey [Open Source North 2021 / Luca Palmieri]
youtu.be

Rust Walkthroughs
RESTful API in Sync & Async Rust
pretzelhammer/rust-blog/blob/master/posts/restful-api-in-sync-and-async-rust.md

Rust Closures will make your life easy.
blog.knoldus.com

Idiomatic Rust Binary Search Extended
c-hirsch.de

The Relation between “Rust and Safe Programming” !!
blog.knoldus.com

Tightness Driven Development in Rust
www.ecorax.net

Writing a "hello world" Riscv Kernel with Nix in Rust
justin.restivo.me

Rust for Fsharpers and F# for Rustaceans
Dhghomon/rust-fsharp

Creating a Deno plugin with Rust
alexandrempsantos.com

How to use the Firebird database with Rust language
itnext.io

Reactive UI components in Rust
dev.to

Redis Streams in Action - Part 2 (Rust app to consume from the Twitter Streaming API)
dev.to

How to make plugins system with Rust and WebAssembly
devblog.arcana.rs

Getting started with ECS using Planck ECS
jojolepro.com

Designing Rust bindings for REST APIs
plume.benboeckel.net

WebRTC Video chat tutorial using Rust+WASM
https://charles-schleich.medium.com/webrtc-video-chat-tutorial-using-rust-wasm-fa340f7aeef9

[ZH] Take Web Screenshot & Make Watermark in Rust (Rust 中,对网址进行异步快照,并添加水印效果的实践)
blog.budshome.com

[video] A Firehose of Rust, for busy people who know some C++
youtu.be

Miscellaneous
New Rust book: Rust for Rustaceans by Jon Gjengset
www.reddit.com

Just to say, thank you
www.reddit.com
Crate of the week: rust-codegen-gcc

This week's crate is rust-codegen-gcc, a drop-in replacement for the LLVM-based rust compiler backend targetting GCC.
Updates from core

BPF target support
rust-lang/rust/pull/79608

support for force-warns
rust-lang/rust/pull/85788

improve debugging experience for enums on windows-msvc
rust-lang/rust/pull/85292

parser: ensure that all nonterminals have tokens after parsing
rust-lang/rust/pull/84995

don't suggest unsized indirection in where-clauses
rust-lang/rust/pull/85979

rustc: allow safe #[target_feature] on wasm
rust-lang/rust/pull/84988

always go through the expn_that_defined query
rust-lang/rust/pull/86002

perf: miscellaneous inlining improvements
rust-lang/rust/pull/85892

perf: only compute the trait map once
rust-lang/rust/pull/85905

stabilize vecdeque_binary_search
rust-lang/rust/pull/83362

update standard library for IntoIterator implementation of arrays
rust-lang/rust/pull/85930

clippy: don't warn about cfg!(..) as a constant in assertions
rust-lang/rust-clippy/pull/7319

clippy: fix needless_collect with binding shadowing
rust-lang/rust-clippy/pull/7289

clippy: add lint manual_str_repeat
rust-lang/rust-clippy/pull/7265
Updates from Rust Community

Official
Announcing Rustup 1.24.3
blog.rust-lang.org

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

Project/Tooling Updates
Filecoin Forest update
medium.com/chainsafe-systems

Mina Protocol update
medium.com/chainsafe-systems

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

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

Rust/C++ Interop in the Android Platform
security.googleblog.com

Rocket v0.5 Release Candidate
rocket.rs

This Week In TensorBase 6
tensorbase.io

Dotenv-linter v3.1.0: Overview of key changes
dotenv-linter.github.io

AWS SDK Rust: 9 New Services Added
awslabs/aws-sdk-rust/releases/tag/v0.0.7-alpha

Observations/Thoughts
Untapped potential in Rust's type system
www.jakobmeier.ch

Idiomatic Rust? Implementing binary search (part 2)
shane-o.dev

Designing Rust bindings for REST APIs
plume.benboeckel.net

Rust zero-cost abstractions in action
medium.com/ingeniouslysimple

Translating Quake 3 into Rust
immunant.com

First impressions of Rust programming on Solana
brson.github.io

Optimizing Pairing-Based Cryptography: Montgomery Arithmetic in Rust
research.nccgroup.com

My second cup of Rust
blog.frankel.ch

A Goose In The Clouds: Load Testing At Scale
www.tag1consulting.com

Walking through "The Java Tutorials" with Rust
rust-java-tutorials.netlify.app

Behavior inheritance in Rust
abadcafe.wordpress.com

[audio] Building with Rust: Ralf Jung on GhostCell and working as a PL researcher
anchor.fm

Rust Walkthroughs
Rust Derive Macro Guide
imbolc/rust-derive-macro-guide

Calibration From Scratch Using Rust: Part 1 of 3
www.tangramvision.com

Calibration From Scratch Using Rust: Part 2 of 3
www.tangramvision.com

Calibration From Scratch Using Rust: Part 3 of 3
www.tangramvision.com

Rust from a JavaScript perspective
blogs.harvard.edu

!#[no_std] with WASI is more complicated than I thought it would be
dev.to

Rust - What made it "click" for me (Ownership and memory models)
deavid.wordpress.com

Creating an NPM package written in Rust
https://popcornpaws.medium.com/creating-an-npm-package-written-in-rust-ce02f7c55458

Rise and Shine: Putting the nRF52840 to sleep, and waking it back up
tweedegolf.nl

Iterator producing iterator in Rust is really helpful.
blog.knoldus.com

Speed up your Rust CI with cache image and Buildkit
blog.erebe.dev

[ZH] [series] Build front-end web apps with Yew and WebAssembly in Rust -part 1: crates (Rust 和 Wasm 的融合,使用 yew 构建 WebAssembly 标准的 web 前端(1)- 起步及 crate 选择)
blog.budshome.com

[ZH] [series] Build front-end web apps with Yew and WebAssembly in Rust -part 2: Components & Routers (Rust 和 Wasm 的融合,使用 yew 构建 WebAssembly 标准的 web 前端(2)- 组件和路由)
blog.budshome.com

[video] Rust Beginners 5 - Tuples
youtu.be

Miscellaneous
QUIC Version 1 is live on Cloudflare
blog.cloudflare.com

What are the most "professional" crates?
www.reddit.com

What's your favourite under-rated Rust crate and why?
www.reddit.com

It's not much, but I graduated from middle-school today with Rust as my language of choice
www.reddit.com

From Julia to Rust
miguelraz.github.io

How To Use fastText and Rust For Instant Translations
instantdomainsearch.com