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

This week's crate is kanata, a keyboard remapper for Linux and Windows.
👍2
Updates from Rust Community

Foundation
2023 Rust Foundation Fellowship Application Open Through June 30
foundation.rust-lang.org

Project/Tooling Updates
Fyrox Game Engine 0.30
fyrox.rs

Announcing Nickel 1.0
www.tweag.io

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

Announcing Zebra 1.0.0: a Rust implementation of Zcash
ZcashFoundation/zebra

Observations/Thoughts
Iterating on Testing in Rust
epage.github.io

Higher-ranked projections (send bound problem, part 4)
smallcultfollowing.com

[video] Raph Levien on Xilem Vector Graphics
www.youtube.com

[video] Unsafe Rust and Miri by Ralf Jung
www.youtube.com

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

Rust Walkthroughs
A Beginner’s Guide to Rust Procedural Macros: Creating a JSON Derive Macro
medium.com/@otukof

Implementing data parallelism with Rayon Rust
blog.logrocket.com

Write a Redux library in Rust
developerlife.com

Check AI-Generated Code Perfectly and Automatically: My Experience Applying Kani’s Formal Verification to ChatGPT-Suggested Rust Code
medium.com/p

Observing your Rust application with Quickwit, Jaeger and Grafana
quickwit.io

[video] Introducing the enum data type in Rust
www.youtube.com

[video] Rust streams: Diving into WebAssembly and WASI (series)
www.youtube.com
👍3
Crate of the week: mailtutan

This week's crate is mailtutan, a simulating SMTP server.
👍1
Updates from Rust Community

Official
Introducing the Rust Leadership Council
blog.rust-lang.org

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

Tantivy 0.20: Schemaless
quickwit.io

lz4_flex 0.11: Gainzzzzz Unleashed!
flexineering.com

redb (Rust Embedded DataBase) 1.0 release
www.redb.org

rust-libp2p v0.52.0: a modular p2p networking stack
libp2p/rust-libp2p/releases/tag/libp2p-v0.52.0

autometrics 0.5 - Automatically connecting Prometheus metrics to traces with exemplars
fiberplane.com

Introducing ducktor: Duck typed constructors for Rust structs with wasm-bindgen JsValue
mhamza.dev

Observations/Thoughts
How we built the Grafbase local development experience in Rust
grafbase.com

Encoding ML-style modules in Rust
blog.waleedkhan.name

Shuttle Launchpad #2: Structs and Enums
www.shuttle.rs

Building vector search in 200 lines of Rust
fennel.ai

Leveraging the Type System for Domain Modeling in Rust
kellnr.io

Building an out-of-tree Rust Kernel Module Part Three
blog.rnstlr.ch

Paying with (in memory) cache
juspay/hyperswitch/wiki/Paying-with-%28in-memory%29-cache

Rewriting Ockam in Rust
www.ockam.io

Rust Walkthroughs
API with Axum, SurrealDB, GraphQL - Template
radim.xyz

Miscellaneous
Fossil Data Platform Rewritten in Rust 🦀
blog.duyet.net

Build a CLI Tool for Data Masking, Encryption, and Decryption With Rust
medium.com/better-programming

Santiago Pastorino: Maintainer Retention
yaah.dev

Meilisearch across the Semantic Verse
meilisearch/meilisearch/issues/3838

[DE] Programmiersprachen: Die Beliebtheit von Rust bleibt ungebrochen
www.heise.de
Crate of the week: release-plz

This week's crate is release-plz, a crate to automate changelog generation, GitHub/Gitea release tagging, publishing on crates.io and bumping the version.
Updates from Rust Community

Official
Improved API tokens for crates.io
blog.rust-lang.org

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

Youki v0.1.0 has been released for use with Kubernetes and more
containers/youki/releases/tag/v0.1.0

Build Zellij WebAssembly (Rust) plugins for your Terminal
zellij.dev

Slint 1.1 Released with additional Royalty-Free License
slint.dev

Exograph: Declarative GraphQL backends with a Rust-powered runtime
exograph.dev

Nutype v0.3
greyblake/nutype/releases/tag/v0.3.0

Observations/Thoughts
Rust fact vs. fiction: 5 Insights from Google's Rust journey in 2022
opensource.googleblog.com

Escaping Macrophages
www.unnoscript.net

Code coverage in Rust
rrmprogramming.com

[video] Verus - Verified Rust for low-level systems code by Andrea Lattuada
www.youtube.com

[audio] Daily with Kwindla Hultman Kramer :: Rustacean Station
rustacean-station.org

[audio] Fish Folk with Erlend Sogge Heggen :: Rustacean Station
rustacean-station.org

Rust Walkthroughs
Serde Errors When Deserializing Untagged Enums Are Bad - But Easy to Make Better
www.gustavwengel.dk

Blowing up my compile times for dubious benefits
claytonwramsey.github.io

Walk-Through: Prefix Ranges in Rust, a Surprisingly Deep Dive
www.thecodedmessage.com

ESP32 Embedded Rust at the HAL: Remote Control Peripheral
apollolabsblog.hashnode.dev

Auto-Generating & Validating OpenAPI Docs in Rust: A Streamlined Approach with Utoipa and Schemathesis
identeco.de

[video] Writing a Rust-based ring buffer
www.youtube.com

[video] Supercharge your I/O in Rust with io_uring
www.youtube.com

[video] Graph Traversal with Breadth-First Search in Rust
www.youtube.com

[video] Nine Rules for Writing Python Extensions in Rust | PyData Seattle 2023
www.youtube.com

Research
Friend or Foe Inside? Exploring In-Process Isolation to Maintain Memory Safety for Unsafe Rust
arxiv.org

Agile Development of Linux Schedulers with Ekiben
arxiv.org

Miscellaneous
How to Deploy Cross-Platform Rust Binaries with GitHub Actions
dzfrias.dev
Crate of the week: Parsel

This week's crate is Parsel, an easy to use parser generator.
Updates from Rust Community

Official
Rustfmt support for let-else statements
blog.rust-lang.org

Newsletters
This Month in Rust GameDev #46 - May 2023
gamedev.rs

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

Pavex DevLog #5: redesigning our runtime types
www.lpalmieri.com

Bevy XPBD: A physics engine for the Bevy game engine
joonaa.dev

complgen: Generate {bash,fish,zsh} completions from a single EBNF-like grammar
adaszko/complgen

projectable: a command line TUI file manager
dzfrias.dev

Observations/Thoughts
How To Wrap Your Errors With Enums When Using Error-Stack
betterprogramming.pub

Exploring Graphs in Rust. Yikes
www.confessionsofadataguy.com

Writing a Linked List in Rust: A Walkthrough
cmooneycollett.github.io

Tree-Structured Concurrency
blog.yoshuawuyts.com

Rust Notes on Temporary values (usage of Mutex) - 4
dev.to

Method Overloading (kinda), and Advanced Trait Usage
youtu.be

Unlocking Possibilities: 4 Reasons Why ESP32 and Rust Make a Winning Combination
apollolabsblog.hashnode.dev

The magic of dependency resolution
ochagavia.nl

Writing E2E Tests for Axum & GraphQL
estebanborai.com

Detailed web-based 3D rendering of mining spatial data
www.kurtlawrence.info

[video] Choose the Right Option
www.youtube.com

[video] 4 levels of Rust error handling
www.youtube.com

Rust Walkthroughs
Build a Ray Tracer, pt. 4 - The Next Dimension
www.superperfundo.dev

Nine Rules for Running Rust on the Web and on Embedded: Practical Lessons from Porting range-set-blaze to no_std and WASM
towardsdatascience.com

Full Stack Rust Workshop: Shuttle, Actix Web, SQLx & Diouxus
bcnrust.github.io

Intercepting Allocations with the Global Allocator
bd103.github.io

A compressed indexable bitset
quickwit.io

A persistent task queue in Rust
jmmv.dev

How I finally understood async/await in Rust (part 2: how does a pending future get woken?)
hegdenu.net

Miscellaneous
Verify Rust code in VS Code with the Kani VS Code extension
model-checking.github.io

Reduce memory footprint by about 600% for M.E.D. — Performance Matters
medium.com/gitconnected

New MeetUp Group in Canada: Rust Halifax
www.meetup.com
🎉3👍1
Crate of the week: rustypaste

This week's crate is rustypaste, a minimal file upload/pastebin service.
Updates from Rust Community

Official
Announcing regex 1.9
blog.rust-lang.org

Newsletters
This Month in Rust OSDev: June 2023
rust-osdev.com

Project/Tooling Updates
Regex engine internals as a library
blog.burntsushi.net

Bevy 0.11
bevyengine.org

rustc_codegen_gcc: Progress Report #24
blog.antoyo.xyz

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

Vector storage is coming to Meilisearch to empower search through AI | Rust SDK
blog.meilisearch.com

Rust on Espressif chips - June 30 2023
mabez.dev

esp-rs quarterly planning: Q3 2023
beta7.io

SQLPage • Build dynamic websites in SQL
crates.io

Observations/Thoughts
Deref specialization in const contexts
GoldsteinE/gh-blog/blob/master/const_deref_specialization/src/lib.md

How to think about async/await in Rust
cliffle.com

Back-end parallelism in the Rust compiler
nnethercote.github.io

bridging fuzzing and property testing
blog.yoshuawuyts.com

Mastering Rust: 2 Years of Building Brilliance and Lessons Learned
opeolluwa.hashnode.dev

Learning Rust - the first month
szabgab.com

Ideas for crafting CLI in Rust
dev.to

Beyond Pointers: How Rust outshines C++ with its Borrow Checker
dev.to

[audio] Shuttle with Ivan Cernja
rustacean-station.org

Rust Walkthroughs
[video] Build A Full Stack Chatbot in Rust (feat. Leptos & Rustformers)
www.youtube.com

[video] Render the Julia set in 3 dozen lines of Rust code
www.youtube.com

How We Generate JavaScript and Python SDKs From Our Canonical Rust SDK
postgresml.org

Put a Pin on That
ohadravid.github.io

Unit-testing a web service in Rust
jmmv.dev

Miscellaneous
Docker Desktop 4.21: Support for new Wasm runtimes, Docker Init support for Rust, Docker Scout Dashboard enhancements, Builds view (Beta), and more
www.docker.com

Rust Digger: identify low-hanging fruit improvements to crates
rust-digger.code-maven.com/
🎉4
Crate of the week: dysk

This week's crate is dysk, a nice df like utility to display the fill level of your disks.
👍5👎5
Updates from Rust Community

Official
Announcing Rust 1.71.0
blog.rust-lang.org

Rustc Trait System Refactor Initiative Update
blog.rust-lang.org

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

Generating terminal user interfaces with Ratatui + ChatGPT
blog.orhun.dev

Kani 0.32.0 has been released!
www.reddit.com

Bevy XPBD 0.2.0: Spatial queries, Bevy 0.11 support, and a lot more
www.reddit.com

bwrap : A fast, lightweight, embedded environment-friendly Rust library for wrapping text
www.reddit.com

We Just Released our Rust Teleconferencing System for Free | Repo
www.youtube.com

Observations/Thoughts
Mutex without lock, Queue without push: cancel safety in lilos
cliffle.com

Why Rust is a great fit for embedded software - 2023 update
tweedegolf.nl

{n} times faster than C, where n = 128
ipthomas.com

I have written a JVM in Rust
andreabergia.com

On Maximizing Your Rust Code's Performance
jbecker.dev

How rustdoc achieves a genius design
blog.goose.love

ESP32 Standard Library Embedded Rust: GPIO Control
apollolabsblog.hashnode.dev

Rust vs Julia in scientific computing
mo8it.com

Writing a toy DNS resolver in Rust
stace.dev

Rust Walkthroughs
[series] Rust multi crate monorepo microservices series with Kafka, Apache Avro, OpenTelemetry tracing
medium.com/@omprakashsridharan

The easiest way to speed up Python with Rust
pythonspeed.com

Writing an AI Chatbot in Rust and Solid.js
thetechtrailblazer.blog

Simple Rust Function Macros
antoniosbarotsis.github.io

Updated fluvio SQL sink connector (repo) | Walkthrough of deduplication on write using upsert function
infinyon/sql-connector

[video] Rust Releases! Rust 1.71.0
youtu.be

ratatui 0.22.0 is released! (community fork of tui-rs)
tui-rs-revival/ratatui/releases/tag/v0.22.0

Asynchronous Rust on Cortex-M Microcontrollers
interrupt.memfault.com

Research
RustSmith: Random Differential Compiler Testing for Rust
www.doc.ic.ac.uk

Miscellaneous
[video] How Functions Function
www.youtube.com

[video] Rust's iterators are more interesting than they look
www.youtube.com

[audio] Bootstrapping Rust with Albert Larsan
rustacean-station.org
🎉4👍1
Crate of the week: ratatui

This week's crate is ratatui, a crate to build rich terminal user interfaces and dashboards.
👍6
Updates from Rust Community

Official
crates.io Postmortem: Broken Crate Downloads
blog.rust-lang.org

July 2023 Leadership Council Update
blog.rust-lang.org

Foundation
My first three months at the Rust Foundation
foundation.rust-lang.org

Project/Tooling Updates
IntelliJ Rust Changelog #199
intellij-rust.github.io

Fyrox Game Engine 0.31
fyrox.rs

Writing a Rest HTTP Service with Axum
docs.shuttle.rs

Observations/Thoughts
Totality
blog.yoshuawuyts.com

Why the “Null” Lifetime Does Not Exist
sabrinajewson.org

First report: More than 80% of the crates link to their public VCS
rust-digger.code-maven.com

[video] Aram Drevekenin – Zellij - A terminal workspace with batteries included
www.youtube.com

Rust Walkthroughs
Make invalid states unrepresentable
geeklaunch.io

A visual tree iterator in Rust
blog.danieljanus.pl

A gentle introduction to IMAP
duesee.dev

ESP32 Standard Library Embedded Rust: UART Communication
apollolabsblog.hashnode.dev

Shuttle Launchpad #3: Sudoku, Ownership and Error Handling
www.shuttle.rs

[video] Pragmatic Intro to Rust Web Development: Overview
www.youtube.com

Research
ResourceGauge: Enabling Resource-Aware Software Components (with Rust)
www.ecrts.org

Miscellaneous
How to speed up the Rust compiler: data analysis assistance requested!
nnethercote.github.io

Programming language popularity: Rust
szabgab.com

Llama2.rs - Inference Llama 2 in one file of pure Rust
gaxler/llama2.rs/
🎉2