This week in Rust #372 — 06 jan 2021
https://this-week-in-rust.org/blog/2021/01/06/this-week-in-rust-372/
https://this-week-in-rust.org/blog/2021/01/06/this-week-in-rust-372/
Updates from core
add edition 2021
rust-lang/rust/pull/79576
sync rustc_codegen_cranelift
rust-lang/rust/pull/80408
diag: print enum variant instead of enum type
rust-lang/rust/pull/80613
suggest renaming or escaping when fixing non-snake-case identifiers which would conflict with keywords
rust-lang/rust/pull/80592
support pattern as const parents in type_of
rust-lang/rust/pull/80551
parse const generics defaults
rust-lang/rust/pull/80547
miri: make size/align_of_val work for dangling raw ptrs
rust-lang/rust/pull/80491
slightly more typed interface to panic implementation
rust-lang/rust/pull/80260
remove all doc_comment!{} hacks by using #[doc = expr] where needed
rust-lang/rust/pull/79150
make copy(_nonoverlapping) const
rust-lang/rust/pull/79684
add Iterator::intersperse
rust-lang/rust/pull/79479
add fallible Box, Arc, and Rc allocator APIs
rust-lang/rust/pull/80310
do not create dangling &T in Weak<T>::drop
rust-lang/rust/pull/80488
de-stabilize unsized raw ptr methods for Weak
rust-lang/rust/pull/80422
add edition 2021
rust-lang/rust/pull/79576
sync rustc_codegen_cranelift
rust-lang/rust/pull/80408
diag: print enum variant instead of enum type
rust-lang/rust/pull/80613
suggest renaming or escaping when fixing non-snake-case identifiers which would conflict with keywords
rust-lang/rust/pull/80592
support pattern as const parents in type_of
rust-lang/rust/pull/80551
parse const generics defaults
rust-lang/rust/pull/80547
miri: make size/align_of_val work for dangling raw ptrs
rust-lang/rust/pull/80491
slightly more typed interface to panic implementation
rust-lang/rust/pull/80260
remove all doc_comment!{} hacks by using #[doc = expr] where needed
rust-lang/rust/pull/79150
make copy(_nonoverlapping) const
rust-lang/rust/pull/79684
add Iterator::intersperse
rust-lang/rust/pull/79479
add fallible Box, Arc, and Rc allocator APIs
rust-lang/rust/pull/80310
do not create dangling &T in Weak<T>::drop
rust-lang/rust/pull/80488
de-stabilize unsized raw ptr methods for Weak
rust-lang/rust/pull/80422
Updates from Rust Community
Official
Announcing Rust 1.49.0
blog.rust-lang.org
mdBook security advisory
blog.rust-lang.org
Newsletters
RiB Newsletter #19 - Rust and smart contracts
www.reddit.com
Project/Tooling Updates
Rust Analyzer Changelog #58
rust-analyzer.github.io
Rust Search Extension Changelog v1.1
rust.extension.sh
Rust Design Patterns now also as a book
www.reddit.com
Pijul - How to survive?
pijul.org
RustFFT 5.0 has been released!
users.rust-lang.org
napi 1.0 released
napi.rs
Insta got a new website with docs and a Visual Studio Code Extension
insta.rs/
Isahc 1.0 and Retrospective
stephencoakley.com
slotmap 1.0 has been released! Copy restriction removed, no_std support, and more
www.reddit.com
libbpf-rs: eBPF for the Rust ecosystem
dxuuu.xyz
Observations/Thoughts
Reflecting on developing a database (2020 edition)
alex-dukhno.github.io
bore(1) + nonymous: lessons learned writing a DNS query tool and #![no_std] DNS library
www.azabani.com
Exploring RustFFT's SIMD Architecture
users.rust-lang.org
Understanding Yew Part 1
dev.to
Transposing options/results with iterators
dev.to
Dark side of POSIX APIs
vorner.github.io
Redesigning coca's Storage Abstraction
https://gist.github.com/teryror/7b9a23fd0cd8dcfbcb6ebd34ee2639f8
Generic associated types encode higher-order functions on types
willcrichton.net
Rust's SemVer Snares: Sizedness and Size
jack.wrenn.fyi
Why using WebAssembly and Rust together improves Node.js performance
developer.ibm.com
Rust Walkthroughs
Building a runtime reflection system for Rust 🦀️ (Part 3)
www.osohq.com
Writing a Kubernetes CRD Controller in Rust
technosophos.com
Adding FFI Support in x7
dpbriggs.ca
Recursive Iterators in Rust
fasterthanli.me
Writing a Prometheus MPD Exporter
beyermatthias.de
Rust Programming Language Tutorial - How to Build a To-Do List App
www.freecodecamp.org
Diving into Rust with a CLI
dev.to
Creating a GUI for a Rust application
dev.to
Zero to Production #6.5: An Introduction To Property-Based Testing In Rust
www.lpalmieri.com
Holiday Hacking - Tracking my heart rate while playing Call of Duty
jcdav.is
Introducing Rustybot (part 1 of n)
objectdisoriented.evokewonder.com
Introducing Rustybot (part 2 of n)
objectdisoriented.evokewonder.com
Extracting Files From an Archive Format I Understand Way Too Much
jam1.re
[series] eBPF Networking in Rust
dev.to
[video] FLTK Rust: use FLUID (RAD tool) with Rust
youtu.be
Miscellaneous
Rust 1.49.0 Released With 64-bit ARM Linux Support Rated Tier-1
www.phoronix.com
Rust will drop official support for Windows XP
www.reddit.com
Rust is the second most used language for Advent of Code, after Python
www.reddit.com
Rust grew 94% on O'Reilly online learning this year
www.reddit.com
Rust is now overall faster than C in benchmarks
www.reddit.com
Official
Announcing Rust 1.49.0
blog.rust-lang.org
mdBook security advisory
blog.rust-lang.org
Newsletters
RiB Newsletter #19 - Rust and smart contracts
www.reddit.com
Project/Tooling Updates
Rust Analyzer Changelog #58
rust-analyzer.github.io
Rust Search Extension Changelog v1.1
rust.extension.sh
Rust Design Patterns now also as a book
www.reddit.com
Pijul - How to survive?
pijul.org
RustFFT 5.0 has been released!
users.rust-lang.org
napi 1.0 released
napi.rs
Insta got a new website with docs and a Visual Studio Code Extension
insta.rs/
Isahc 1.0 and Retrospective
stephencoakley.com
slotmap 1.0 has been released! Copy restriction removed, no_std support, and more
www.reddit.com
libbpf-rs: eBPF for the Rust ecosystem
dxuuu.xyz
Observations/Thoughts
Reflecting on developing a database (2020 edition)
alex-dukhno.github.io
bore(1) + nonymous: lessons learned writing a DNS query tool and #![no_std] DNS library
www.azabani.com
Exploring RustFFT's SIMD Architecture
users.rust-lang.org
Understanding Yew Part 1
dev.to
Transposing options/results with iterators
dev.to
Dark side of POSIX APIs
vorner.github.io
Redesigning coca's Storage Abstraction
https://gist.github.com/teryror/7b9a23fd0cd8dcfbcb6ebd34ee2639f8
Generic associated types encode higher-order functions on types
willcrichton.net
Rust's SemVer Snares: Sizedness and Size
jack.wrenn.fyi
Why using WebAssembly and Rust together improves Node.js performance
developer.ibm.com
Rust Walkthroughs
Building a runtime reflection system for Rust 🦀️ (Part 3)
www.osohq.com
Writing a Kubernetes CRD Controller in Rust
technosophos.com
Adding FFI Support in x7
dpbriggs.ca
Recursive Iterators in Rust
fasterthanli.me
Writing a Prometheus MPD Exporter
beyermatthias.de
Rust Programming Language Tutorial - How to Build a To-Do List App
www.freecodecamp.org
Diving into Rust with a CLI
dev.to
Creating a GUI for a Rust application
dev.to
Zero to Production #6.5: An Introduction To Property-Based Testing In Rust
www.lpalmieri.com
Holiday Hacking - Tracking my heart rate while playing Call of Duty
jcdav.is
Introducing Rustybot (part 1 of n)
objectdisoriented.evokewonder.com
Introducing Rustybot (part 2 of n)
objectdisoriented.evokewonder.com
Extracting Files From an Archive Format I Understand Way Too Much
jam1.re
[series] eBPF Networking in Rust
dev.to
[video] FLTK Rust: use FLUID (RAD tool) with Rust
youtu.be
Miscellaneous
Rust 1.49.0 Released With 64-bit ARM Linux Support Rated Tier-1
www.phoronix.com
Rust will drop official support for Windows XP
www.reddit.com
Rust is the second most used language for Advent of Code, after Python
www.reddit.com
Rust grew 94% on O'Reilly online learning this year
www.reddit.com
Rust is now overall faster than C in benchmarks
www.reddit.com
Crate of the week: nom-supreme
This week's crate is nom-supreme, a crate of utilities for nom parsers, especially for great parse error handling.
This week's crate is nom-supreme, a crate of utilities for nom parsers, especially for great parse error handling.
This week in Rust #373 — 13 jan 2021
https://this-week-in-rust.org/blog/2021/01/13/this-week-in-rust-373/
https://this-week-in-rust.org/blog/2021/01/13/this-week-in-rust-373/
Updates from core
use correct span for structured suggestion
rust-lang/rust/pull/80801
rustc_parse: better spans for synthesized token streams
rust-lang/rust/pull/80784
ast: remove some indirection layers from values in key-value attributes
rust-lang/rust/pull/80441
resolve: scope visiting doesn't need an Ident
rust-lang/rust/pull/80782
resolve/expand: improve attribute expansion on macro definitions and calls
rust-lang/rust/pull/80563
optimize DST field access
rust-lang/rust/pull/80200
allow references to interior mutable data behind a feature gate
rust-lang/rust/pull/80418
fixed const_generics error help
rust-lang/rust/pull/80714
use an empty TokenCursorFrame stack when capturing tokens
rust-lang/rust/pull/80830
deduplicate solution enum in chalk-recursive
rust-lang/chalk/pull/674
optimize away some fs::metadata calls
rust-lang/rust/pull/80756
optimize away some path lookups in the generic fs::copy implementation
rust-lang/rust/pull/80755
implement From<char> for u64 and u128
rust-lang/rust/pull/79502
stabilize slice::strip_prefix and slice::strip_suffix
rust-lang/rust/pull/77853
add [T; N]::each_ref and [T; N]::each_mut
rust-lang/rust/pull/75490
futures: perf: avoid an Option in the Map* futures
rust-lang/futures-rs/pull/2306
backtrace: use the symbol table if the DWARF only has line numbers
rust-lang/backtrace-rs/pull/401
cargo: stabilize -Zfeatures and -Zpackage-features
rust-lang/cargo/pull/8997
rustdoc: fix macros 2.0 and built-in derives being shown at the wrong path
rust-lang/rust/pull/77862
docs.rs: fix N+1 queries when fetching crate details
rust-lang/docs.rs/pull/1239
docs.rs: fix performance regression in all releases-views
rust-lang/docs.rs/pull/1237
clippy: new lint: vec_init_then_push
rust-lang/rust-clippy/pull/6538
use correct span for structured suggestion
rust-lang/rust/pull/80801
rustc_parse: better spans for synthesized token streams
rust-lang/rust/pull/80784
ast: remove some indirection layers from values in key-value attributes
rust-lang/rust/pull/80441
resolve: scope visiting doesn't need an Ident
rust-lang/rust/pull/80782
resolve/expand: improve attribute expansion on macro definitions and calls
rust-lang/rust/pull/80563
optimize DST field access
rust-lang/rust/pull/80200
allow references to interior mutable data behind a feature gate
rust-lang/rust/pull/80418
fixed const_generics error help
rust-lang/rust/pull/80714
use an empty TokenCursorFrame stack when capturing tokens
rust-lang/rust/pull/80830
deduplicate solution enum in chalk-recursive
rust-lang/chalk/pull/674
optimize away some fs::metadata calls
rust-lang/rust/pull/80756
optimize away some path lookups in the generic fs::copy implementation
rust-lang/rust/pull/80755
implement From<char> for u64 and u128
rust-lang/rust/pull/79502
stabilize slice::strip_prefix and slice::strip_suffix
rust-lang/rust/pull/77853
add [T; N]::each_ref and [T; N]::each_mut
rust-lang/rust/pull/75490
futures: perf: avoid an Option in the Map* futures
rust-lang/futures-rs/pull/2306
backtrace: use the symbol table if the DWARF only has line numbers
rust-lang/backtrace-rs/pull/401
cargo: stabilize -Zfeatures and -Zpackage-features
rust-lang/cargo/pull/8997
rustdoc: fix macros 2.0 and built-in derives being shown at the wrong path
rust-lang/rust/pull/77862
docs.rs: fix N+1 queries when fetching crate details
rust-lang/docs.rs/pull/1239
docs.rs: fix performance regression in all releases-views
rust-lang/docs.rs/pull/1237
clippy: new lint: vec_init_then_push
rust-lang/rust-clippy/pull/6538
Updates from Rust Community
Newsletters
This Month in Rust GameDev #17 - December 2020
rust-gamedev.github.io
This Month in Rust OSDev (December 2020)
rust-osdev.com
Project/Tooling Updates
rust-analyzer Changelog #59
rust-analyzer.github.io
Knurling-rs Changelog #12
ferrous-systems.com
GCC Rust – How it can be achieved
www.embecosm.com
Open Source Security, Inc. Announces Funding of GCC Front-End for Rust
opensrcsec.com
Progress report on rustc_codegen_cranelift (Dec 2020)
bjorn3.github.io
Observations/Thoughts
XML parsing in Rust
simplabs.com
parsing baseball files in Rust instead of Python for an 8x speedup!
gregstoll.wordpress.com
Philosophies of Rust and Haskell
www.fpcomplete.com
Maybe you don't need Rust and WASM to speed up your JS
mrale.ph
Simplifying Endian-Specific file parsers in Rust with Omnom and type inference
www.parsed.uk
Rust's SemVer Snares: repr(transparent) Super-Cut
jack.wrenn.fyi
Exploiting Mixed Binaries
www.cs.ucy.ac.cy
[audio] The Virtual World: Embedded Rust part 2 - James Munns
anchor.fm
Rust Walkthroughs
Setting a Rust Executable's Icon in Windows
www.anthropicstudios.com
The Little Book of Rust Books
lborb.github.io
Rust Design Patterns
rust-unofficial.github.io
Hecto: Build your own text editor in Rust
www.philippflenker.com
CLI Shell Completions in Rust
dev.to
Dynamically Aligned Types?
dev.to
Polishing Rust - Temporary Value Dropped While Borrowed
https://mrtact.medium.com/polishing-rust-42d9131d1c3
Testing Hardware Using Rust Firmware and Rust Based CLI
www.jaredwolff.com
Exposing a Rust Library to Other Languages
sixtyfps.io
Replacing FastAPI with Rust: Part 3 - Trying Actix
dev.to
[video] Learning Rust by following the "Too Many Linked Lists" tutorial (Episode 1)
youtu.be
[video] Rust Parser and State Machine
youtu.be
Miscellaneous
Rust Language Cheat Sheet
cheats.rs/
Another Rust-y OS: Theseus joins Redox in pursuit of safer, more resilient systems
www.theregister.com
[video] OSDI '20 - Redleaf: Isolation and Communication in a Safe Operating System
youtu.be
[video] Read a paper: Theseus--An OS written in Rust
youtu.be
Newsletters
This Month in Rust GameDev #17 - December 2020
rust-gamedev.github.io
This Month in Rust OSDev (December 2020)
rust-osdev.com
Project/Tooling Updates
rust-analyzer Changelog #59
rust-analyzer.github.io
Knurling-rs Changelog #12
ferrous-systems.com
GCC Rust – How it can be achieved
www.embecosm.com
Open Source Security, Inc. Announces Funding of GCC Front-End for Rust
opensrcsec.com
Progress report on rustc_codegen_cranelift (Dec 2020)
bjorn3.github.io
Observations/Thoughts
XML parsing in Rust
simplabs.com
parsing baseball files in Rust instead of Python for an 8x speedup!
gregstoll.wordpress.com
Philosophies of Rust and Haskell
www.fpcomplete.com
Maybe you don't need Rust and WASM to speed up your JS
mrale.ph
Simplifying Endian-Specific file parsers in Rust with Omnom and type inference
www.parsed.uk
Rust's SemVer Snares: repr(transparent) Super-Cut
jack.wrenn.fyi
Exploiting Mixed Binaries
www.cs.ucy.ac.cy
[audio] The Virtual World: Embedded Rust part 2 - James Munns
anchor.fm
Rust Walkthroughs
Setting a Rust Executable's Icon in Windows
www.anthropicstudios.com
The Little Book of Rust Books
lborb.github.io
Rust Design Patterns
rust-unofficial.github.io
Hecto: Build your own text editor in Rust
www.philippflenker.com
CLI Shell Completions in Rust
dev.to
Dynamically Aligned Types?
dev.to
Polishing Rust - Temporary Value Dropped While Borrowed
https://mrtact.medium.com/polishing-rust-42d9131d1c3
Testing Hardware Using Rust Firmware and Rust Based CLI
www.jaredwolff.com
Exposing a Rust Library to Other Languages
sixtyfps.io
Replacing FastAPI with Rust: Part 3 - Trying Actix
dev.to
[video] Learning Rust by following the "Too Many Linked Lists" tutorial (Episode 1)
youtu.be
[video] Rust Parser and State Machine
youtu.be
Miscellaneous
Rust Language Cheat Sheet
cheats.rs/
Another Rust-y OS: Theseus joins Redox in pursuit of safer, more resilient systems
www.theregister.com
[video] OSDI '20 - Redleaf: Isolation and Communication in a Safe Operating System
youtu.be
[video] Read a paper: Theseus--An OS written in Rust
youtu.be
Crate of the week: fast-float
This week's crate is fast-float, a crate providing methods to parse floats really fast.
This week's crate is fast-float, a crate providing methods to parse floats really fast.
This week in Rust #374 — 20 jan 2021
https://this-week-in-rust.org/blog/2021/01/20/this-week-in-rust-374/
https://this-week-in-rust.org/blog/2021/01/20/this-week-in-rust-374/
Updates from core
use correct ABI for wasm32 by default
rust-lang/rust/pull/79998
improve diagnostics when closure doesn't meet trait bound
rust-lang/rust/pull/80635
enhance type inference errors involving the ? operator
rust-lang/rust/pull/80517
explain method-call move errors in loops
rust-lang/rust/pull/80324
make CTFE able to check for undefined behavior
rust-lang/rust/pull/78407
split a func into cold/hot parts, reducing rustc binary size
rust-lang/rust/pull/80042
suggest _ and .. if a pattern has too few fields
rust-lang/rust/pull/80017
suggest async {} for async || {}
rust-lang/rust/pull/76580
do not suggest invalid code in pattern with loop
rust-lang/rust/pull/80941
add allow-by-default lint on implicit ABI in extern function pointers and items
rust-lang/rust/pull/76219
reintroduce hir::ExprKind::If
rust-lang/rust/pull/79328
remove redundant def_id lookups
rust-lang/rust/pull/80232
serialize incr comp structures to file via fixed-size buffer
rust-lang/rust/pull/80463
turn type inhabitedness into a query to fix exhaustive_patterns perf
rust-lang/rust/pull/79670
box Item::Attributes
rust-lang/rust/pull/80802
resolve: simplify collection of traits in scope
rust-lang/rust/pull/80765
use Once instead of Mutex to manage capture resolution
rust-lang/rust/pull/80736
consistently avoid constructing optimized MIR when not doing codegen
rust-lang/rust/pull/80718
add benchmark and fast path for BufReader::read_exact
rust-lang/rust/pull/80201
add MaybeUninit method array_assume_init
rust-lang/rust/pull/80600
change BinaryHeap::append rebuild heuristic
rust-lang/rust/pull/77435
implement ptr::write without dedicated intrinsic
rust-lang/rust/pull/80290
introduce {Ref, RefMut}::try_map' for optional projections inRefCell`
rust-lang/rust/pull/78455
re-stabilize Weak::as_ptr and friends for unsized T
rust-lang/rust/pull/80764
add Iterator::intersperse_with
rust-lang/rust/pull/80567
TrustedRandomAaccess specialization composes incorrectly for nested iter::Zips
rust-lang/rust/pull/80670
remove unreachable panics from VecDeque::{front/back}(_mut)
rust-lang/rust/pull/80834
add NonZeroUn::is_power_of_two
rust-lang/rust/pull/81107
stabilize split_inclusive
rust-lang/rust/pull/77858
stabilize the poll_map feature
rust-lang/rust/pull/80968
add as_rchunks (and friends) to slices
rust-lang/rust/pull/78818
hashbrown: hide allocator details and default to Global
rust-lang/hashbrown/pull/227
hashbrown: export AllocError as well as Allocator
rust-lang/hashbrown/pull/223
regex: implement regex::Replacer for String, &String, Cow<'a, str>, &Cow<'a, str>
rust-lang/regex/pull/728
futures: fix type-inference in sink::unfold() by specifying more of its types
rust-lang/futures-rs/pull/2311
clippy: roadmap for 2021
rust-lang/rust-clippy/pull/6462
use correct ABI for wasm32 by default
rust-lang/rust/pull/79998
improve diagnostics when closure doesn't meet trait bound
rust-lang/rust/pull/80635
enhance type inference errors involving the ? operator
rust-lang/rust/pull/80517
explain method-call move errors in loops
rust-lang/rust/pull/80324
make CTFE able to check for undefined behavior
rust-lang/rust/pull/78407
split a func into cold/hot parts, reducing rustc binary size
rust-lang/rust/pull/80042
suggest _ and .. if a pattern has too few fields
rust-lang/rust/pull/80017
suggest async {} for async || {}
rust-lang/rust/pull/76580
do not suggest invalid code in pattern with loop
rust-lang/rust/pull/80941
add allow-by-default lint on implicit ABI in extern function pointers and items
rust-lang/rust/pull/76219
reintroduce hir::ExprKind::If
rust-lang/rust/pull/79328
remove redundant def_id lookups
rust-lang/rust/pull/80232
serialize incr comp structures to file via fixed-size buffer
rust-lang/rust/pull/80463
turn type inhabitedness into a query to fix exhaustive_patterns perf
rust-lang/rust/pull/79670
box Item::Attributes
rust-lang/rust/pull/80802
resolve: simplify collection of traits in scope
rust-lang/rust/pull/80765
use Once instead of Mutex to manage capture resolution
rust-lang/rust/pull/80736
consistently avoid constructing optimized MIR when not doing codegen
rust-lang/rust/pull/80718
add benchmark and fast path for BufReader::read_exact
rust-lang/rust/pull/80201
add MaybeUninit method array_assume_init
rust-lang/rust/pull/80600
change BinaryHeap::append rebuild heuristic
rust-lang/rust/pull/77435
implement ptr::write without dedicated intrinsic
rust-lang/rust/pull/80290
introduce {Ref, RefMut}::try_map' for optional projections inRefCell`
rust-lang/rust/pull/78455
re-stabilize Weak::as_ptr and friends for unsized T
rust-lang/rust/pull/80764
add Iterator::intersperse_with
rust-lang/rust/pull/80567
TrustedRandomAaccess specialization composes incorrectly for nested iter::Zips
rust-lang/rust/pull/80670
remove unreachable panics from VecDeque::{front/back}(_mut)
rust-lang/rust/pull/80834
add NonZeroUn::is_power_of_two
rust-lang/rust/pull/81107
stabilize split_inclusive
rust-lang/rust/pull/77858
stabilize the poll_map feature
rust-lang/rust/pull/80968
add as_rchunks (and friends) to slices
rust-lang/rust/pull/78818
hashbrown: hide allocator details and default to Global
rust-lang/hashbrown/pull/227
hashbrown: export AllocError as well as Allocator
rust-lang/hashbrown/pull/223
regex: implement regex::Replacer for String, &String, Cow<'a, str>, &Cow<'a, str>
rust-lang/regex/pull/728
futures: fix type-inference in sink::unfold() by specifying more of its types
rust-lang/futures-rs/pull/2311
clippy: roadmap for 2021
rust-lang/rust-clippy/pull/6462
Updates from Rust Community
Official
[Inside] Rustdoc performance improvements
blog.rust-lang.org
[Inside] Changes to the Rustdoc team
blog.rust-lang.org
Newsletters
This Month in Rust GameDev #17 - December 2020
rust-gamedev.github.io
Project/Tooling Updates
IntelliJ Rust Changelog #139
intellij-rust.github.io
rust-analyzer Changelog #60
rust-analyzer.github.io
Knurling-rs Changelog #13
ferrous-systems.com
This week in Ballista #1
ballistacompute.org
Deno in 2020
deno.land
async-std v1.9.0
async-rs/async-std/releases/tag/v1.9.0
[video] Penrose 0.2.0 Overview
www.youtube.com
Observations/Thoughts
Cryptoxide perf (SHA2 / Blake2)
vincenthz.github.io
About variadics in Rust
https://gist.github.com/PoignardAzur/aea33f28e2c58ffe1a93b8f8d3c58667
Rust in Production: 1Password
serokell.io
Unconditional loops are unconditionally awesome
brson.github.io
Rust is a hard way to make a web API
macwright.com
Writing a better Line Iterator in Rust
dev.to
Implementing cross-process Sanakirja locks
pijul.org
future::join and const-eval
blog.yoshuawuyts.com
I used Rust in production for 6 months! Here's my feedback
www.qovery.com
[video] Learning Rust with "Too Many Linked Lists" (Episode 2) - Pop & Drop
youtu.be
[video] std::process::exit is evil - a Rust bug fixing story
youtu.be
Rust Walkthroughs
OS in Rust: Running our custom kernel on an emulator: Part-5
blog.knoldus.com
Polishing Rust: Boxing and Unboxing Results
https://mrtact.medium.com/polishing-rust-30eeac3c4bf3
Efficient custom shapes in QtQuick with Rust
carlschwan.eu
Scientific Computing in Rust
aftix.xyz
Rust GUI: Introduction a.k.a. the state of Rust GUI libraries (as of January 2021)
dev.to
How to Fetch a Web API with Rust 🦀
dev.to
Replacing FastAPI with Rust: Part 4 - A Solution
dev.to
Getting started with Rust and Redis
dev.to
How To Write A REST Client In Rust
www.lpalmieri.com
[video] Rust live coding - Tower deep dive
youtu.be
Miscellaneous
Rust/WebAssembly on AWS Lambda@Edge
markentier.tech
[video] (Live Coding) Zola, a Static Site Generator. Migrating my blog & reviewing Zola's source code.
youtu.be
Official
[Inside] Rustdoc performance improvements
blog.rust-lang.org
[Inside] Changes to the Rustdoc team
blog.rust-lang.org
Newsletters
This Month in Rust GameDev #17 - December 2020
rust-gamedev.github.io
Project/Tooling Updates
IntelliJ Rust Changelog #139
intellij-rust.github.io
rust-analyzer Changelog #60
rust-analyzer.github.io
Knurling-rs Changelog #13
ferrous-systems.com
This week in Ballista #1
ballistacompute.org
Deno in 2020
deno.land
async-std v1.9.0
async-rs/async-std/releases/tag/v1.9.0
[video] Penrose 0.2.0 Overview
www.youtube.com
Observations/Thoughts
Cryptoxide perf (SHA2 / Blake2)
vincenthz.github.io
About variadics in Rust
https://gist.github.com/PoignardAzur/aea33f28e2c58ffe1a93b8f8d3c58667
Rust in Production: 1Password
serokell.io
Unconditional loops are unconditionally awesome
brson.github.io
Rust is a hard way to make a web API
macwright.com
Writing a better Line Iterator in Rust
dev.to
Implementing cross-process Sanakirja locks
pijul.org
future::join and const-eval
blog.yoshuawuyts.com
I used Rust in production for 6 months! Here's my feedback
www.qovery.com
[video] Learning Rust with "Too Many Linked Lists" (Episode 2) - Pop & Drop
youtu.be
[video] std::process::exit is evil - a Rust bug fixing story
youtu.be
Rust Walkthroughs
OS in Rust: Running our custom kernel on an emulator: Part-5
blog.knoldus.com
Polishing Rust: Boxing and Unboxing Results
https://mrtact.medium.com/polishing-rust-30eeac3c4bf3
Efficient custom shapes in QtQuick with Rust
carlschwan.eu
Scientific Computing in Rust
aftix.xyz
Rust GUI: Introduction a.k.a. the state of Rust GUI libraries (as of January 2021)
dev.to
How to Fetch a Web API with Rust 🦀
dev.to
Replacing FastAPI with Rust: Part 4 - A Solution
dev.to
Getting started with Rust and Redis
dev.to
How To Write A REST Client In Rust
www.lpalmieri.com
[video] Rust live coding - Tower deep dive
youtu.be
Miscellaneous
Rust/WebAssembly on AWS Lambda@Edge
markentier.tech
[video] (Live Coding) Zola, a Static Site Generator. Migrating my blog & reviewing Zola's source code.
youtu.be
Crate of the week: dotenv-linter
This week's crate is dotenv-linter, a lightning fast linter for .env files.
This week's crate is dotenv-linter, a lightning fast linter for .env files.
This week in Rust #375 — 27 jan 2021
https://this-week-in-rust.org/blog/2021/01/27/this-week-in-rust-375/
https://this-week-in-rust.org/blog/2021/01/27/this-week-in-rust-375/
Updates from core
improve unknown external crate error
rust-lang/rust/pull/81046
gracefully handle loop labels missing leading ' in different positions
rust-lang/rust/pull/81236
improve diagnostics when parsing angle args
rust-lang/rust/pull/80065
permit mutable references in all const contexts
rust-lang/rust/pull/78578
prevent query cycles in the MIR inliner
rust-lang/rust/pull/68828
mir: improve size_of handling when arg is unsized
rust-lang/rust/pull/81243
implement Error for &(impl Error)
rust-lang/rust/pull/75180
change branching in iter.skip()
rust-lang/rust/pull/80715
BufWriter: Provide into_raw_parts
rust-lang/rust/pull/79705
fix soundness issue for replace_range and range
rust-lang/rust/pull/81169
avoid hash_slice in VecDeque's Hash implementation
rust-lang/rust/pull/81170
turn alloc's force_expr macro into a regular macro_rules
rust-lang/rust/pull/81241
hashbrown: add try_insert_no_grow method on RawTable
rust-lang/hashbrown/pull/229
fix a bug in Cargo's cyclic dep graph detection
rust-lang/cargo/pull/9075
cargo: add some extra help to cargo new and invalid package names
rust-lang/cargo/pull/9098
rustdoc: fix rendering of stabilization version for trait implementors
rust-lang/rust/pull/81302
clippy: manual_filter_map and manual_find_map
rust-lang/rust-clippy/pull/6591
clippy: new lint: exhaustive_enums, exhaustive_structs
rust-lang/rust-clippy/pull/6617
improve unknown external crate error
rust-lang/rust/pull/81046
gracefully handle loop labels missing leading ' in different positions
rust-lang/rust/pull/81236
improve diagnostics when parsing angle args
rust-lang/rust/pull/80065
permit mutable references in all const contexts
rust-lang/rust/pull/78578
prevent query cycles in the MIR inliner
rust-lang/rust/pull/68828
mir: improve size_of handling when arg is unsized
rust-lang/rust/pull/81243
implement Error for &(impl Error)
rust-lang/rust/pull/75180
change branching in iter.skip()
rust-lang/rust/pull/80715
BufWriter: Provide into_raw_parts
rust-lang/rust/pull/79705
fix soundness issue for replace_range and range
rust-lang/rust/pull/81169
avoid hash_slice in VecDeque's Hash implementation
rust-lang/rust/pull/81170
turn alloc's force_expr macro into a regular macro_rules
rust-lang/rust/pull/81241
hashbrown: add try_insert_no_grow method on RawTable
rust-lang/hashbrown/pull/229
fix a bug in Cargo's cyclic dep graph detection
rust-lang/cargo/pull/9075
cargo: add some extra help to cargo new and invalid package names
rust-lang/cargo/pull/9098
rustdoc: fix rendering of stabilization version for trait implementors
rust-lang/rust/pull/81302
clippy: manual_filter_map and manual_find_map
rust-lang/rust-clippy/pull/6591
clippy: new lint: exhaustive_enums, exhaustive_structs
rust-lang/rust-clippy/pull/6617
Updates from Rust Community
Official
[Inside] Rust & the case of the disappearing stack frames
blog.rust-lang.org
Project/Tooling Updates
rust-analyzer Changelog #61
rust-analyzer.github.io
Performance improvement on front-end generated by rustdoc
blog.guillaume-gomez.fr
Criterion.rs v0.3.4 and Iai 0.1.0
bheisler.github.io
The RustyHermit Unikernel
rust-osdev.com
Introducing usb-ids.rs
blog.yossarian.net
⚡️ Dotenv-linter v3.0.0: Overview 🦀
evrone.com
Observations/Thoughts
Porting a serverless chatbot from Python to Rust
blog.console.dev
Unsafe Rust: How and when (not) to use it
blog.logrocket.com
Rust and Go department directories
dev.to
Parsing real-world data with Rust: introducing the alias_all attribute in Serde
deaddabe.fr
Rust Walkthroughs
Wrapping Errors in Rust
edgarluque.com
Implementing Raft's Leader Election in Rust
laurocaetano.com
2048 WASM
dev.to
Implementing an LRU Cache in Rust
dev.to
JSON input validation in Warp
dev.to
Make A Language - Part Nineteen: Code Representations
arzg.github.io
Make A Language - Part Twenty: Testing
arzg.github.io
How to optimise compilation times with Rust
lemmy.ml
Automatic flamegraphs for benchmarks with Criterion
www.jibbow.com
Implementing Raft's Leader Election in Rust
laurocaetano.com
First time using Yew: A Go game board in just a few lines of Rust.
radim.xyz
[ES] El juego de la vida usando Rust y Iced
irvingfisica/iced_examples/blob/master/Life.md
Miscellaneous
Are we learning yet?
www.arewelearningyet.com/
Microsoft Opens Up Old Win32 APIs to C# and Rust, More Languages to Come
visualstudiomagazine.com
A fix for the LLVM noalias bug has landed in time for LLVM 12 branches
www.reddit.com
Dynamic type systems aren't even simpler
hisham.hm
Everywhere I go, I miss Rust's `enum`s
www.reddit.com
Open-Source Rust: 24 Awesome Frameworks, Projects, and Libraries
serokell.io
Official
[Inside] Rust & the case of the disappearing stack frames
blog.rust-lang.org
Project/Tooling Updates
rust-analyzer Changelog #61
rust-analyzer.github.io
Performance improvement on front-end generated by rustdoc
blog.guillaume-gomez.fr
Criterion.rs v0.3.4 and Iai 0.1.0
bheisler.github.io
The RustyHermit Unikernel
rust-osdev.com
Introducing usb-ids.rs
blog.yossarian.net
⚡️ Dotenv-linter v3.0.0: Overview 🦀
evrone.com
Observations/Thoughts
Porting a serverless chatbot from Python to Rust
blog.console.dev
Unsafe Rust: How and when (not) to use it
blog.logrocket.com
Rust and Go department directories
dev.to
Parsing real-world data with Rust: introducing the alias_all attribute in Serde
deaddabe.fr
Rust Walkthroughs
Wrapping Errors in Rust
edgarluque.com
Implementing Raft's Leader Election in Rust
laurocaetano.com
2048 WASM
dev.to
Implementing an LRU Cache in Rust
dev.to
JSON input validation in Warp
dev.to
Make A Language - Part Nineteen: Code Representations
arzg.github.io
Make A Language - Part Twenty: Testing
arzg.github.io
How to optimise compilation times with Rust
lemmy.ml
Automatic flamegraphs for benchmarks with Criterion
www.jibbow.com
Implementing Raft's Leader Election in Rust
laurocaetano.com
First time using Yew: A Go game board in just a few lines of Rust.
radim.xyz
[ES] El juego de la vida usando Rust y Iced
irvingfisica/iced_examples/blob/master/Life.md
Miscellaneous
Are we learning yet?
www.arewelearningyet.com/
Microsoft Opens Up Old Win32 APIs to C# and Rust, More Languages to Come
visualstudiomagazine.com
A fix for the LLVM noalias bug has landed in time for LLVM 12 branches
www.reddit.com
Dynamic type systems aren't even simpler
hisham.hm
Everywhere I go, I miss Rust's `enum`s
www.reddit.com
Open-Source Rust: 24 Awesome Frameworks, Projects, and Libraries
serokell.io
Crate of the week: aquamarine
This week's crate is aquamarine bringing you inline diagrams for your rustdocs.
This week's crate is aquamarine bringing you inline diagrams for your rustdocs.
This week in Rust #376 — 03 feb 2021
https://this-week-in-rust.org/blog/2021/02/03/this-week-in-rust-376/
https://this-week-in-rust.org/blog/2021/02/03/this-week-in-rust-376/
Updates from core
rustc: stabilize -Zrun-dsymutil as -Csplit-debuginfo
rust-lang/rust/pull/79570
point only at generic arguments when they are unexpected
rust-lang/rust/pull/79591
improve diagnostics for Precise Capture
rust-lang/rust/pull/81062
account for existing _ field pattern when suggesting ..
rust-lang/rust/pull/81422
tweak suggestion for missing field in patterns
rust-lang/rust/pull/81416
visit only statements in always live locals
rust-lang/rust/pull/81440
avoid memory allocation when removing dead blocks
rust-lang/rust/pull/81470
make hitting the recursion limit in projection non-fatal
rust-lang/rust/pull/81055
clashing_extern_declarations: use symbol interning to avoid string alloc
rust-lang/rust/pull/81453
miri: add random failures to compare_exchange_weak
rust-lang/miri/pull/1686
trying to Vec::shrink_to greater than capacity should be no-op
rust-lang/rust/pull/81335
implement Rust 2021 panic
rust-lang/rust/pull/80851
implement missing AsMut<str> for str
rust-lang/rust/pull/80279
implement io::Seek for io::Empty
rust-lang/rust/pull/78044
let io::copy reuse BufWriter buffers
rust-lang/rust/pull/78641
add 'Box::downcast()fordyn Any + Send + Sync`
rust-lang/rust/pull/80945
add unwrap_unchecked() methods for Option and Result
rust-lang/rust/pull/80876
add core::stream::Stream
rust-lang/rust/pull/79023
stabilize core::slice::fill_with
rust-lang/rust/pull/81048
stabilize unsigned_abs
rust-lang/rust/pull/80959
stabilize raw ref macros
rust-lang/rust/pull/80886
stabilize by-value [T; N] iterator core::array::IntoIter
rust-lang/rust/pull/80470
stabilise cargo test -- --include-ignored
rust-lang/rust/pull/80053
stabilize Arc::{increment, decrement}_strong_count
rust-lang/rust/pull/79285
stabilize Seek::stream_position (feature seek_convenience)
rust-lang/rust/pull/70904
optimize decimal formatting of 128-bit integers
rust-lang/rust/pull/81484
stabilize int_bits_const
rust-lang/rust/pull/81590
hashbrown: reduce the amount of llvm IR instantiated
rust-lang/hashbrown/pull/205
libtest: wait for test threads to exit after they report completion
rust-lang/rust/pull/81367
cargo: impl warn for locked install without Cargo.lock
rust-lang/cargo/pull/9108
rustdoc: improve docblock readability on small screen
rust-lang/rust/pull/81563
rustc: stabilize -Zrun-dsymutil as -Csplit-debuginfo
rust-lang/rust/pull/79570
point only at generic arguments when they are unexpected
rust-lang/rust/pull/79591
improve diagnostics for Precise Capture
rust-lang/rust/pull/81062
account for existing _ field pattern when suggesting ..
rust-lang/rust/pull/81422
tweak suggestion for missing field in patterns
rust-lang/rust/pull/81416
visit only statements in always live locals
rust-lang/rust/pull/81440
avoid memory allocation when removing dead blocks
rust-lang/rust/pull/81470
make hitting the recursion limit in projection non-fatal
rust-lang/rust/pull/81055
clashing_extern_declarations: use symbol interning to avoid string alloc
rust-lang/rust/pull/81453
miri: add random failures to compare_exchange_weak
rust-lang/miri/pull/1686
trying to Vec::shrink_to greater than capacity should be no-op
rust-lang/rust/pull/81335
implement Rust 2021 panic
rust-lang/rust/pull/80851
implement missing AsMut<str> for str
rust-lang/rust/pull/80279
implement io::Seek for io::Empty
rust-lang/rust/pull/78044
let io::copy reuse BufWriter buffers
rust-lang/rust/pull/78641
add 'Box::downcast()fordyn Any + Send + Sync`
rust-lang/rust/pull/80945
add unwrap_unchecked() methods for Option and Result
rust-lang/rust/pull/80876
add core::stream::Stream
rust-lang/rust/pull/79023
stabilize core::slice::fill_with
rust-lang/rust/pull/81048
stabilize unsigned_abs
rust-lang/rust/pull/80959
stabilize raw ref macros
rust-lang/rust/pull/80886
stabilize by-value [T; N] iterator core::array::IntoIter
rust-lang/rust/pull/80470
stabilise cargo test -- --include-ignored
rust-lang/rust/pull/80053
stabilize Arc::{increment, decrement}_strong_count
rust-lang/rust/pull/79285
stabilize Seek::stream_position (feature seek_convenience)
rust-lang/rust/pull/70904
optimize decimal formatting of 128-bit integers
rust-lang/rust/pull/81484
stabilize int_bits_const
rust-lang/rust/pull/81590
hashbrown: reduce the amount of llvm IR instantiated
rust-lang/hashbrown/pull/205
libtest: wait for test threads to exit after they report completion
rust-lang/rust/pull/81367
cargo: impl warn for locked install without Cargo.lock
rust-lang/cargo/pull/9108
rustdoc: improve docblock readability on small screen
rust-lang/rust/pull/81563
Updates from Rust Community
Newsletters
RiB Newsletter #20 - Old fashioned chill
www.reddit.com
Project/Tooling Updates
rust-analyzer Changelog #62
rust-analyzer.github.io
IntelliJ Rust Changelog #140
intellij-rust.github.io
Llama Rust SDK preview 0.1.3
ericsink.com
Gfx-rs Release of v0.7
gfx-rs.github.io
Open-sourcing Datanymizer: in-flight template-driven data anonymization
evrone.com
Announcing Step/Dir - Universal Stepper Motor Interface
flott-motion.org
Announcing RampMaker - Stepper Motor Acceleration Ramp Generator
flott-motion.org
Krustlet v0.6.0
deislabs/krustlet/releases/tag/v0.6.0
Observations/Thoughts
Is Rust a Functional Programming Language?
robert.kra.hn
Rust Collections Case Study: BTreeMap
cglab.ca
Saving some allocations
vorner.github.io
Bringing Stack Clash Protection to Clang/X86 - the Open Source Way
blog.llvm.org
Announcing Krator: Build Kubernetes Operators with state machines.
deislabs.io
Rust Walkthroughs
Returning Rust Iterators
depth-first.com
How to Read Rust Functions, Part 1
www.possiblerust.com
Parsing PDF Documents in Rust
adventures.michaelfbryan.com
Building and deploying Rust utilities
robert.kra.hn
Learning to Fly: Let's create a simulation in Rust! (pt 2)
pwy.io
Rust made my open source project 1000x faster
www.reddit.com
Introducing Drogue Device
blog.drogue.io
3 Things to Try When You Can't Make A Trait Object
www.possiblerust.com
Making concurrency fearless with Rust (for C++ developers)
https://radekvit.medium.com/making-concurrency-fearless-with-rust-for-c-developers-d5d8da50a452
Exploring WebSocket with Rust and Tide
javierviola.com
Macros in Rust: A tutorial with examples
blog.logrocket.com
[PL] CrabbyBird #5 Obsługa kolizji
postacnormalna.pl
Miscellaneous
RustBelt: Securing the Foundations of the Rust Programming Language
people.mpi-sws.org
Polymorphisation: Improving Rust compilation times through intelligent monomorphisation
davidtw.co
A Memory Safe TLS Module for the Apache HTTP Server
www.abetterinternet.org
Chats with James: 006 - Bryan Cantrill
jamesmunns.com
Long range networking with LoRa: an overview featuring a Rust modem driver
tweedegolf.nl
Newsletters
RiB Newsletter #20 - Old fashioned chill
www.reddit.com
Project/Tooling Updates
rust-analyzer Changelog #62
rust-analyzer.github.io
IntelliJ Rust Changelog #140
intellij-rust.github.io
Llama Rust SDK preview 0.1.3
ericsink.com
Gfx-rs Release of v0.7
gfx-rs.github.io
Open-sourcing Datanymizer: in-flight template-driven data anonymization
evrone.com
Announcing Step/Dir - Universal Stepper Motor Interface
flott-motion.org
Announcing RampMaker - Stepper Motor Acceleration Ramp Generator
flott-motion.org
Krustlet v0.6.0
deislabs/krustlet/releases/tag/v0.6.0
Observations/Thoughts
Is Rust a Functional Programming Language?
robert.kra.hn
Rust Collections Case Study: BTreeMap
cglab.ca
Saving some allocations
vorner.github.io
Bringing Stack Clash Protection to Clang/X86 - the Open Source Way
blog.llvm.org
Announcing Krator: Build Kubernetes Operators with state machines.
deislabs.io
Rust Walkthroughs
Returning Rust Iterators
depth-first.com
How to Read Rust Functions, Part 1
www.possiblerust.com
Parsing PDF Documents in Rust
adventures.michaelfbryan.com
Building and deploying Rust utilities
robert.kra.hn
Learning to Fly: Let's create a simulation in Rust! (pt 2)
pwy.io
Rust made my open source project 1000x faster
www.reddit.com
Introducing Drogue Device
blog.drogue.io
3 Things to Try When You Can't Make A Trait Object
www.possiblerust.com
Making concurrency fearless with Rust (for C++ developers)
https://radekvit.medium.com/making-concurrency-fearless-with-rust-for-c-developers-d5d8da50a452
Exploring WebSocket with Rust and Tide
javierviola.com
Macros in Rust: A tutorial with examples
blog.logrocket.com
[PL] CrabbyBird #5 Obsługa kolizji
postacnormalna.pl
Miscellaneous
RustBelt: Securing the Foundations of the Rust Programming Language
people.mpi-sws.org
Polymorphisation: Improving Rust compilation times through intelligent monomorphisation
davidtw.co
A Memory Safe TLS Module for the Apache HTTP Server
www.abetterinternet.org
Chats with James: 006 - Bryan Cantrill
jamesmunns.com
Long range networking with LoRa: an overview featuring a Rust modem driver
tweedegolf.nl
Crate of the week: fancy-regex
This week's crate is fancy-regex a regex implementation using regex for speed and backtracking for fancy features.
This week's crate is fancy-regex a regex implementation using regex for speed and backtracking for fancy features.