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
Как видите в канале давно не было обновлений.

Все потому, что у меня сейчас не хватает времени починить бота.

https://github.com/sergeysova/this_week_in_rust.rs

Очень нужна помощь, там похоже верстку поменяли, надо помочь обновить. Принимаются PR!
😢1
Updates from core

asm: allow using r9 (ARM) and x18 (AArch64) if they are not reserved by the current target
rust-lang/rust/pull/91643

suggest using a temporary variable to fix borrowck errors
rust-lang/rust/pull/83174

tweak "call this function" suggestion to have smaller span
rust-lang/rust/pull/91503

tweak assoc type obligation spans
rust-lang/rust/pull/91769

better span for unexpected normalization failure in CTFE engine
rust-lang/rust/pull/91815

give more help in the unaligned_references lint
rust-lang/rust/pull/91718

suggest casting between i/u32 and char
rust-lang/rust/pull/91245

add a suggestion if macro_rules is misspelled
rust-lang/rust/pull/91337

avoid cloning refcounted types during folding
rust-lang/rust/pull/91353

deduplicate projection sub-obligations
rust-lang/rust/pull/90423

do not ICE when suggesting elided lifetimes on non-existent spans
rust-lang/rust/pull/91764

do not add ; to expected tokens list when it's wrong
rust-lang/rust/pull/91531

do not attempt to suggest help for overly malformed struct/function call
rust-lang/rust/pull/91634

improve 'cannot contain emoji' error
rust-lang/rust/pull/91476

add spin_loop hint for RISC-V architecture
rust-lang/rust/pull/91548

override Iterator::advance(_back)_by for array::IntoIter
rust-lang/rust/pull/91512

replace dominators algorithm with simple Lengauer-Tarjan
rust-lang/rust/pull/85013

add <*{const|mut} T>::{to|from}_bits
rust-lang/rust/pull/91127

add array::IntoIter::{empty, from_raw_parts}
rust-lang/rust/pull/91341

add rsplit_array variants to slices and arrays
rust-lang/rust/pull/91515

make Option::cloned const
rust-lang/rust/pull/90741

make (*mut T)::write_bytes const
rust-lang/rust/pull/91824

make Borrow and BorrowMut impls const
rust-lang/rust/pull/90270

make Uniques methods const
rust-lang/rust/pull/91806

make intrinsics::write_bytes const
rust-lang/rust/pull/90081

implement TryFrom<&'_ mut [T]> for [T; N]
rust-lang/rust/pull/91086

implement core::future::join!
rust-lang/rust/pull/91645

implement concat_bytes!
rust-lang/rust/pull/87599

provide the ReadBuf abstraction
rust-lang/rust/pull/81156

stabilise feature(const_generics_defaults)
rust-lang/rust/pull/90207

stabilize ControlFlow::{is_break, is_continue}
rust-lang/rust/pull/91091

stabilize const_cstr_unchecked
rust-lang/rust/pull/91855

cargo: improve I/O error message for fingerprint of build noscript
rust-lang/cargo/pull/10191

rustdoc: show type layout for type aliases
rust-lang/rust/pull/91682

clippy: add new lint to warn when #[must_use] attribute should be used on a method
rust-lang/rust-clippy/pull/8071

clippy: fix FP on question_mark if returned object is not local
rust-lang/rust-clippy/pull/8080

clippy: fix blocks_in_if_conditions false positive
rust-lang/rust-clippy/pull/8100

clippy: fix bad suggestion on option_if_let_else when there is complex subpat
rust-lang/rust-clippy/pull/8086

clippy: ignore associated types in traits when considering type complexity
rust-lang/rust-clippy/pull/8030
Updates from Rust Community

Official
Launching the 2021 State of Rust Survey
blog.rust-lang.org

Foundation
Member Spotlight: Automata
foundation.rust-lang.org

Newsletters
WebAssembly Weekly
wasmweekly.news

This Month in Rust GameDev #28 - November 2021
gamedev.rs

Project/Tooling Updates
Rust Analyzer Changelog #107
rust-analyzer.github.io

Cranelift Progress Report: A Look Back at 2021
bytecodealliance.org

Rust for Linux
lore.kernel.org

Announcing rsadsb v0.4.0: View Airplanes in the sky with Rust
rsadsb.github.io

SixtyFPS (GUI crate): Changelog for 12th of December 2021
sixtyfps.io

sysinfo: version 0.22 and FreeBSD support
blog.guillaume-gomez.fr

Announcing the Grafana Plugin SDK for Rust
www.reddit.com

Announcing Enzyme for Rust
www.reddit.com

This week in Databend #20: an elastic and reliable cloud warehouse
weekly.databend.rs

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

git-cliff 0.5.0 (changelog generator)
orhun.dev

Observations/Thoughts
Rust as a platform for IoT
blog.ysndr.de

https://madsravn.dk/posts/using-liquid-rust-with-serde
madsravn.dk

Rust Error Handling
www.unwoundstack.com

How not to learn Rust
dystroy.org

[audio] Refactoring to Rust with Lily Mara
rustacean-station.org

[video] Talking about the Rust Programming Language with Luca Palmieri
www.youtube.com

Rust Walkthroughs
A brutally effective hash function in Rust
nnethercote.github.io

Less Painful Linear Types
aidancully.blogspot.com

A Rust Api pattern (Actix)
ctprods.cyprientaque.com

Authoring a SIMD enhanced Wasm library with Rust
nickb.dev

Getting better insights into your Rust applications
21-lessons.com

Validating JSON input in Rust web services
vinted.engineering

[video] Building a networked Web and Native app with Rust
www.youtube.com

[series] [video] rg3d - live game development #4
www.youtube.com

Miscellaneous
The DevX Initiative Sponsorship Program: Goals and Principles
medium.com/concordium

Introducing the new Relay compiler
relay.dev

[DE] Linux-Kernel: Rust-Entwicklung schreitet mit neuer Edition voran
www.heise.de
Crate of the week: efg

This week's crate is efg, a proc macro to allow boolean expression like syntax for #[cfg]s.
Updates from core

add user seed to -Z randomize-layout
rust-lang/rust/pull/91932

improve suggestion to change struct field to &mut
rust-lang/rust/pull/91516

suggest to specify a target triple when lang item is missing
rust-lang/rust/pull/91820

tweak errors coming from for-loop, ? and .await desugaring
rust-lang/rust/pull/90939

show the unused type for unused_results lint
rust-lang/rust/pull/91818

recover on invalid operators <> and <=>
rust-lang/rust/pull/91597

perf: manually implement Hash for DefId
rust-lang/rust/pull/91660

enable #[thread_local] for all windows-msvc targets
rust-lang/rust/pull/92042

add entry_ref API to HashMap
rust-lang/hashbrown/pull/301

add [T]::as_simd(_mut)  
rust-lang/rust/pull/91479

add BinaryHeap::try_reserve and BinaryHeap::try_reserve_exact
rust-lang/rust/pull/91529

add io::Error::other
rust-lang/rust/pull/91947

avoid sorting in hash map stable hashing
rust-lang/rust/pull/91837

constify (most) Option methods
rust-lang/rust/pull/91928

constify bool::then{,_some}
rust-lang/rust/pull/91918

make MaybeUninit::zeroed const
rust-lang/rust/pull/91851

mark defaulted PartialEq/PartialOrd methods as const
rust-lang/rust/pull/91439

optimize vec::retain performance
rust-lang/rust/pull/91527

readd track_caller to Result::from_residual
rust-lang/rust/pull/91752

stabilize destructuring_assignment
rust-lang/rust/pull/90521

stabilize iter::zip
rust-lang/rust/pull/91881

stabilize asm! and global_asm!
rust-lang/rust/pull/91728

remove P: Unpin bound on impl Stream for Pin
rust-lang/rust/pull/92020

futures: add StreamExt::count method
rust-lang/futures-rs/pull/2495

futures: limit FuturesUnordered max value of yield_every
rust-lang/futures-rs/pull/2527

cargo: detect filesystem loop during walking the projects
rust-lang/cargo/pull/10188

cargo: display alias target on cargo help <alias>
rust-lang/cargo/pull/10193

rustdoc: fix source code page sidebar on mobile
rust-lang/rust/pull/91905

clippy: add unnecessary_to_owned lint
rust-lang/rust-clippy/pull/7978

clippy: don't emit return_self_not_must_use lint if Self already is marked as #[must_use]
rust-lang/rust-clippy/pull/8146

clippy: ensure that return_self_not_must_use is not emitted if the method already has #[must_use]
rust-lang/rust-clippy/pull/8143

clippy: fix SAFETY comment tag casing in undocumented_unsafe_blocks
rust-lang/rust-clippy/pull/8138

rustfmt: prevent duplicate comma when formatting struct pattern with ".."
rust-lang/rustfmt/pull/5090
Updates from Rust Community

Official
Follow-up on the moderation issue
blog.rust-lang.org

Foundation
Take the State of Rust Survey
foundation.rust-lang.org

Member Spotlight: Spectral
foundation.rust-lang.org

Project/Tooling Updates
Zellij 0.23.0 released with new collaboration features
zellij.dev

SixtyFPS (GUI crate): Changelog for 19th of December 2021
sixtyfps.io

You can now buy Black Hat Rust with PayPal, Apple Pay & Google Pay
kerkour.com

This week in Databend #21: an elastic and reliable cloud warehouse
weekly.databend.rs

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

Announcing Tokio Console 0.1
tokio.rs

Rust Analyzer Changelog #108
rust-analyzer.github.io

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

GCC Rust in 2021
thephilbert.io

Observations/Thoughts
Contexts and capabilities in Rust
tmandry.gitlab.io

Stop Whining about Rust Hype - A Pro-Rust Rant
thenewwazoo.github.io

Thread Safety in C++ and Rust
blog.reverberate.org

Rust in Production: Astropad
serokell.io

Unbuffered I/O Can Make Your Rust Programs Much Slower
era.co

[video] Safe && Portable Data Structure Design (10 minute lightning talk)
www.youtube.com

Rust Walkthroughs
Cross-compiling Rust Lambdas on macOS without Docker
noserve.rs

A Beginner's Guide to Parsing in Rust
depth-first.com

Building a CEDICT parser in Rust with Nom
briankung.dev

[DE] Ferris Talk #4: Asynchrone Programmierung in Rust
www.heise.de

[ZH] 「Pin 三部曲」第二部之 《Rust Pin 进阶》
folyd.com

Miscellaneous
TypeVille Call for Papers (ends 9th of January 2022)
docs.google.com

Homegrown rendering with Rust
medium.com/embarkstudios

[audio] SE-Radio: Tim McNamara on Rust 2021 Edition
www.se-radio.net

[video] Web api benchmarking: Rust (Warp) vs Rust (actix-web)
www.youtube.com

[PT] Olá e seja bem vindo a outra edição de esta semana em: Rust! #420 (08/12/2021). 🌟
luisvonmuller/Esta-Semana-Em-Rust/blob/main/%23420.md
Crate of the week: kajiya

This week's crate is kajiya, an experimental real-time global illumination renderer made with Rust and Vulkan.
Updates from core

miri: provide slightly better notes when tracking a pointer tag
rust-lang/miri/pull/1945

backport LLVM changes to disable deferred inlining
rust-lang/rust/pull/92110

fix duplicate derive clone suggestion
rust-lang/rust/pull/91544

perf: change Backtrace::enabled atomic from SeqCst to Relaxed
rust-lang/rust/pull/92139

perf: eliminate ObligationCauseData
rust-lang/rust/pull/91844

fix bad caching of ~const Drop bounds
rust-lang/rust/pull/92149

constify core::intrinsics::black_box and core::hint::black_box
rust-lang/rust/pull/92226

make PTR::as_ref and similar methods const
rust-lang/rust/pull/91823

RawVec: don't recompute capacity after allocating
rust-lang/rust/pull/92220

allow reverse iteration of lowercase'd/uppercase'd chars
rust-lang/rust/pull/88858

stabilise entry_insert
rust-lang/rust/pull/90345

suggest adding #[cfg(test)] to a test module
rust-lang/rust/pull/91770

cargo: make levenshtein distance case insensitive.
rust-lang/cargo/pull/10224

clippy: add suggestion for neg_multiply lint
rust-lang/rust-clippy/pull/8144

clippy: fix iter_skip_next false positives
rust-lang/rust-clippy/pull/8133

clippy: improve unwrap_or_else_default when handling unwrap_or_else(XXX::new)
rust-lang/rust-clippy/pull/8163

clippy: fix shadow_reuse false negative for if let bindings
rust-lang/rust-clippy/pull/8165

clippy: fix an ICE on unwrapping a None
rust-lang/rust-clippy/pull/8167

clippy: new lint: init-numbered-fields
rust-lang/rust-clippy/pull/8170

rustfmt: fix static async closure qualifier order
rust-lang/rustfmt/pull/5150

rustfmt: retain qualified path when rewriting struct literal expressions
rust-lang/rustfmt/pull/5152
Updates from Rust Community

Project/Tooling Updates
Hello, youki! (low-level container runtime written in Rust)
www.utam0k.jp

Nushell 0.42
www.nushell.sh

This Year in Wgpu - 2021
gfx-rs.github.io

SixtyFPS (GUI crate): 2021 in Review
sixtyfps.io

BonsaiDb December Update: Finishing up alpha 1
community.khonsulabs.com

NAPI-RS 2.0 released
napi.rs

This Year in Embedded Rust: 2021 Edition
blog.rust-embedded.org

Rust Analyzer Changelog #108
rust-analyzer.github.io

End of year 2021: 20 months of Gitoxide
Byron/gitoxide/discussions/285

This week in Databend #22: an elastic and reliable cloud warehouse
weekly.databend.rs

Research
Deadlock-free asynchronous message reordering in Rust with multiparty session types
arxiv.org

Observations/Thoughts
Thoughts on Context and Capabilities in Rust
jam1.re

My negative views on Rust
chrisdone.com

Learning Rust – Why now?
garrellco.com

[audio] What's New in Rust 1.56 and 1.57
rustacean-station.org

[audio] Code Like a Pro in Rust with Brenden Matthews
rustacean-station.org

Rust Walkthroughs
Vange-rs: WebAssembly in Rust
https://caiiiycuk.medium.com/vange-rs-webassembly-in-rust-498e2f960a04

Writing a minimal Lua implementation with a virtual machine from scratch in Rust
notes.eatonphil.com

Bringing Rust to Space - Setting up a Rust ecosystem for the VA108XX MCU family
robamu.github.io

Scala and Rust interoperability via JNI
engineering.avast.io

Writing a prometheus exporter in rust from idea to grafana chart
mateusfreira.github.io

Futuristic Rust: context emulation
haibane-tenshi.github.io

Mocking HTTP Services in Rust
alexliesenfeld.com

LLVM Infrastructure and Rust
www.bexxmodd.com

Making Games in Rust - Part 6 - Generating a Map
dev.to

Procedural Macros: Parsing custom syntax
blog.turbo.fish

A Data Pipeline for Go Trains Delay Analysis — ML in Action with Rust
towardsdatascience.com

[video] Tetris in Rust from scratch
www.youtube.com

[video] Rust Modules - Explained Like I'm 5
www.youtube.com

[video] I'm learning Rust - Enums, patterns, and traits
www.youtube.com

[FR] [video] Parlons peu, parlons Rust!
www.youtube.com

[ZH] Rust性能评估与调优实践
zhuanlan.zhihu.com
Crate of the week: zoxide

This week's crate is zoxide, a smarter cd command.
Updates from core

allow loading LLVM plugins with both legacy and new pass manager
rust-lang/rust/pull/91125

suggest while let x = y when encountering while x = y
rust-lang/rust/pull/92402

refactor variance diagnostics to work with more types
rust-lang/rust/pull/89336

extend check for UnsafeCell in consts to cover unions
rust-lang/rust/pull/90383

parse and suggest moving where clauses after equals for type aliases
rust-lang/rust/pull/92118

relax priv-in-pub lint on generic bounds and where clauses of trait impls
rust-lang/rust/pull/90586

perf: store liveness in interval sets for region inference
rust-lang/rust/pull/90637

add try_reserve and try_reserve_exact for OsString
rust-lang/rust/pull/92338

support \[x; n\] expressions in concat_bytes!
rust-lang/rust/pull/92066

std-simd: impl std::simd::StdFloat
rust-lang/portable-simd/pull/219

rustdoc: use ThinVec for GenericArgs bindings
rust-lang/rust/pull/92395

clippy: extend unused_io_amount to cover async io
rust-lang/rust-clippy/pull/8179

clippy: fix enum_variants false positive on prefixes that are not camel-case
rust-lang/rust-clippy/pull/8127

clippy: fixed issues with to_radians and to_degrees lints
rust-lang/rust-clippy/pull/8187

clippy: limit the identity_op lint to integral operands
rust-lang/rust-clippy/pull/8183

clippy: erasing_op lint ignored when operation Output type is different from the type of constant 0
rust-lang/rust-clippy/pull/8204

clippy: perf: cache test item names
rust-lang/rust-clippy/pull/8182

clippy: fix redundant_closure fp with Rc<F>/Arc<F>
rust-lang/rust-clippy/pull/8193

clippy: wrong_self_convention: match SelfKind::No more restrictively
rust-lang/rust-clippy/pull/8208

rustfmt: do not flatten match arm block with leading attributes
rust-lang/rustfmt/pull/5158

rustfmt: improve out of line module resolution
rust-lang/rustfmt/pull/5142

rustfmt: support parsing of asm! args
rust-lang/rustfmt/pull/5156
Updates from Rust Community

Newsletters
Rust Nigeria #1
rustnigeria.curated.co

Project/Tooling Updates
rust-analyzer in 2021
rust-analyzer.github.io

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

The year 2021 in Dimforge and our objectives for 2022
dimforge.com

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

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

Ezio
www.ncameron.org

SixtyFPS (GUI crate): Changelog for 3rd of January 2022
sixtyfps.io

Introducing Dioxus v0.1
dioxuslabs.com

SNAFU 0.7 Released
users.rust-lang.org

hyper-ish 2021 in review
seanmonstar.com

This Week in Glean: Glean in 2021
fnordig.de

This week in Databend #23: an elastic and reliable cloud warehouse
weekly.databend.rs

Observations/Thoughts
Ranges and suffering
kaylynn.gay

Why is my Rust build so slow?
fasterthanli.me

Implementing Spinlock for RISC-V OS in Rust
vmm.dev

Writing bindings upside down
ilyabylich.svbtle.com

Rust 2021 – Looking Back and Forth
llogiq.github.io

How a Single Line of Code Made a 24-core Server Slower Than a Laptop
pkolaczk.github.io

In Defense of Async: Function Colors Are Rusty
www.thecodedmessage.com

Rust and Valgrind
nnethercote.github.io

Porting Rust's std to rustix
blog.sunfishcode.online

Improved portability and performance 🦀
pngquant.org

Thoughts on return, break and continue
blog.oberien.de

Parsing Decimals 4 times faster
cantortrading.fi

Beyond the Borrow Checker: Differential Fuzzing
tiemoko.com

Rust Walkthroughs
Don't shell out!
fasterthanli.me

12 Rust Tips and Tricks you might not know yet
federicoterzi.com

Indexing Strings in Rust and TypeScript: A Case Study of String
dawchihliou.github.io

Safe && Portable Data Structure Design
tiemoko.com

The joy of building a ray tracer, for fun, in Rust
blog.singleton.io

An Introduction To Session-based Authentication In Rust
www.lpalmieri.com

Profiling linkers
fasterthanli.me

Debian's approach to Rust - Dependency handling
diziet.dreamwidth.org

Nine Rules for Writing Python Extensions in Rust & Rayon
towardsdatascience.com

Why Rust enums are so cool
hashrust.com

[DE] Auf Nummer sicher: Sicheres Programmieren mit Rust
www.heise.de

[series] [video] Let's build a voice journal in Rust | Ep. 1: audio I/O, SQlite, CLI args
www.youtube.com

[series] [video] Rust Embedded for STM32 Microcontrollers - Intro
www.youtube.com

Miscellaneous
Fluvio SmartModules with user-defined parameters
www.infinyon.com

[Audio] LibertyOS with Daniel Teberian
rustacean-station.org

[Video] Web api benchmarking: Rust (Axum) vs Rust (Warp)
www.youtube.com

[Video] Adding while statements to Rena
www.youtube.com
👍1
Crate of the week: fltk-rs

This week's crate is fltk-rs, a crate with bindings to the FLTK GUI toolkit.
Updates from core

allow _ as the length of array types and repeat expressions (this implements the closed RFC PR #2545)
rust-lang/rust/pull/91907

cg: split dwarf for crate dependencies
rust-lang/rust/pull/89819

suggest single quotes when char expected, str provided
rust-lang/rust/pull/92507

add a query for resolving an impl item from the trait item
rust-lang/rust/pull/90639

miri: exclude mutable references to !Unpin types from uniqueness guarantees
rust-lang/miri/pull/1952

perf: do not use LEB128 for encoding u16 and i16
rust-lang/rust/pull/92314

rustc_metadata: optimize and document module children decoding
rust-lang/rust/pull/92086

normalize generator-local types with unevaluated constants
rust-lang/rust/pull/92636

normalize struct tail type when checking Pointee trait
rust-lang/rust/pull/92248

constify Box<T, A> methods
rust-lang/rust/pull/91884

do not hash leading zero bytes of i64 numbers in Sip128 hasher
rust-lang/rust/pull/92103

implement TryFrom<char> for u8
rust-lang/rust/pull/84640

implement const casts of raw pointers
rust-lang/rust/pull/92657

stabilize #[feature(available_parallelism)]
rust-lang/rust/pull/92632

stabilize result_cloned and result_copied
rust-lang/rust/pull/92483

modifications to std::io::Stdin on Windows so that there is no longer a 4-byte buffer minimum in read()
rust-lang/rust/pull/91754

core::ops::unsize: improve docs for DispatchFromDyn
rust-lang/rust/pull/91587

hashbrown: don't hash the key when searching in an empty table
rust-lang/hashbrown/pull/305

cargo: support rustflags per profile
rust-lang/cargo/pull/10217

cargo: be resilient to most IO error and filesystem loop while walking dirs
rust-lang/cargo/pull/10214

rustdoc: introduce a resolver cache for sharing data between early doc link resolution and later passes
rust-lang/rust/pull/92608

rustdoc: resolve associated traits for non-generic primitive types
rust-lang/rust/pull/92443

docs.rs: add "y" shortcut for permalink
rust-lang/docs.rs/pull/1583

clippy: better detect when a field can be moved from in while_let_on_iterator
rust-lang/rust-clippy/pull/8221

clippy: consider auto-deref when linting manual_swap
rust-lang/rust-clippy/pull/8220

clippy: fix type_repetition_in_bounds
rust-lang/rust-clippy/pull/8224

clippy: cover trait for trait_duplication_in_bounds
rust-lang/rust-clippy/pull/8252

clippy: fix iter_not_returning_iterator
rust-lang/rust-clippy/pull/8228
Updates from Rust Community

Official
1.58.0 pre-release testing
blog.rust-lang.org

Foundation
Happy New Year, Rustaceans
foundation.rust-lang.org

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

Project/Tooling Updates
Rust Analyzer Changelog #111
rust-analyzer.github.io

rustc_codegen_gcc: Progress Report #7
blog.antoyo.xyz

Bevy 0.6
bevyengine.org

rg3d 0.24 Feature Highlights
rg3d.rs

Lishwist (beta)
blog.polaris64.net

Rust on Espressif chips - 10-01-2022
mabez.dev

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

The engine was renamed to Fyrox
rg3d.rs

Observations/Thoughts
Dyn async traits, part 7: a design emerges?
smallcultfollowing.com

Rust in 2022
www.ncameron.org

Bringing include_dir Into the Modern Era
adventures.michaelfbryan.com

Rust Async and the Terrible, Horrible, No Good, Very Bad Day
https://kevinhoffman.medium.com/rust-async-and-the-terrible-horrible-no-good-very-bad-day-348ebc836274

Crate of the Week second chance list
briankung.dev

How we built a VS Code extension with Rust, WebAssembly, and TypeScript
www.osohq.com

App and OS Virtualization in Rust using crosvm
blog.openw3b.org

Rust 2030 Christmas list: Inout methods
poignardazur.github.io

What does a Rustc Reading Club do?
https://mojosd.medium.com/what-does-a-rustc-reading-club-do-8c9f9b336ff4

Why I Use a Debugger
blog.pnkfx.org

[audio] Yew with Julius Lungys
rustacean-station.org

[video] Flying High with Flutter #40
www.youtube.com

[video] The Downside of Rust
www.youtube.com

Research
Rast: A Language for Resource-Aware Session Types
arxiv.org

RISE & Shine: Language-Orientated Compiler Design
arxiv.org

SixtyFPS (GUI crate): Changelog for 9th of January 2022
sixtyfps.io

This week in Databend #24: an elastic and reliable cloud warehouse
weekly.databend.rs

Rust Walkthroughs
Three Kinds of Polymorphism in Rust
www.brandons.me

How Bevy uses Rust traits for labeling
deterministic.space

Parsing compressed files efficiently with Rust
edgarluque.com

Rust Any Part 1: Extension Maps in Rust
lucumr.pocoo.org

Rust Any Part 2: As-Any Hack
lucumr.pocoo.org

How to Implement a Naive Bayes Classifier with Rust
www.freecodecamp.org

Adding parallelism to your Rust iterators with dpc-pariter
dpc.pw

Parsing Text with Nom
blog.adamchalmers.com

Implementing a metronome with Rust and Flutter
beijaflor.io

Making Games in Rust - Part 9 - Main Menu Screen
dev.to

Emulating the Sega Genesis - Part I
jabberwocky.ca

How to install cargo-outdated in OSX without homebrew
estada.ch

Async Rust From The Ground Up: Concurrency With Threads
ibraheem.ca

Secure and immutable development environments with Dev Containers
kerkour.com

[ZH] 2021 年 Rust 生态调研报告 | 星辰大海(上篇)
zhuanlan.zhihu.com

Miscellaneous
Let's take a moment to thank Joshua Nelson for his work on rustdoc
www.reddit.com

Could Rust be the Future of JavaScript Infrastructure?
thenewstack.io

Rust Memory Layout Optimization (Enum)
frehberg.com
Crate of the week: rustix

This week's crate is rustix, a crate with safe bindings to POSIX-ish syscalls.