This week in Rust #300 — 20 aug 2019
https://this-week-in-rust.org/blog/2019/08/20/this-week-in-rust-300/
https://this-week-in-rust.org/blog/2019/08/20/this-week-in-rust-300/
Updates from core
Hash the remapped sysroot instead of the original
rust-lang/rust/pull/63505
Make sure that all file loading happens via SourceMap
rust-lang/rust/pull/63525
syntax: Account for CVarArgs being in the argument list
rust-lang/rust/pull/63459
Remove redundant ty fields from mir::Constant and hair::pattern::PatternRange
rust-lang/rust/pull/63495
resolve: Remove remaining special cases from built-in macros
rust-lang/rust/pull/63449
resolve: Properly integrate derives and macro_rules scopes
rust-lang/rust/pull/63667
Point at the right enclosing scope when using await in non-async fn
rust-lang/rust/pull/63509
typeck: Prohibit RPIT types that inherit lifetimes
rust-lang/rust/pull/62849
Handle elision in async fn correctly
rust-lang/rust/pull/63499
When needing type annotations in local bindings, account for impl Trait and closures
rust-lang/rust/pull/63507
Improved error message for break in async block
rust-lang/rust/pull/63659
Suggest Rust 2018 on <expr>.await with no such field
rust-lang/rust/pull/63539
Crank up invalid value lint
rust-lang/rust/pull/63657
Refactor Miri ops (unary, binary) to have more types
rust-lang/rust/pull/63658
Do not generate allocations for zero sized allocations
rust-lang/rust/pull/63635
Feature gate 'yield $expr?' pre-expansion
rust-lang/rust/pull/63545
Provide map_ok and map_err method for Poll>>
rust-lang/rust/pull/63512
Implement Clone, Display for ascii::EscapeDefault
rust-lang/rust/pull/63421
Add APIs for uninitialized Box, Rc, and Arc (Plus get_mut_unchecked)
rust-lang/rust/pull/62451
Reduce the genericity of closures in the iterator traits
rust-lang/rust/pull/62429
Add custom nth_back for Chain
rust-lang/rust/pull/60492
cargo install: Remove orphaned executables
rust-lang/cargo/pull/7246
Hash the remapped sysroot instead of the original
rust-lang/rust/pull/63505
Make sure that all file loading happens via SourceMap
rust-lang/rust/pull/63525
syntax: Account for CVarArgs being in the argument list
rust-lang/rust/pull/63459
Remove redundant ty fields from mir::Constant and hair::pattern::PatternRange
rust-lang/rust/pull/63495
resolve: Remove remaining special cases from built-in macros
rust-lang/rust/pull/63449
resolve: Properly integrate derives and macro_rules scopes
rust-lang/rust/pull/63667
Point at the right enclosing scope when using await in non-async fn
rust-lang/rust/pull/63509
typeck: Prohibit RPIT types that inherit lifetimes
rust-lang/rust/pull/62849
Handle elision in async fn correctly
rust-lang/rust/pull/63499
When needing type annotations in local bindings, account for impl Trait and closures
rust-lang/rust/pull/63507
Improved error message for break in async block
rust-lang/rust/pull/63659
Suggest Rust 2018 on <expr>.await with no such field
rust-lang/rust/pull/63539
Crank up invalid value lint
rust-lang/rust/pull/63657
Refactor Miri ops (unary, binary) to have more types
rust-lang/rust/pull/63658
Do not generate allocations for zero sized allocations
rust-lang/rust/pull/63635
Feature gate 'yield $expr?' pre-expansion
rust-lang/rust/pull/63545
Provide map_ok and map_err method for Poll>>
rust-lang/rust/pull/63512
Implement Clone, Display for ascii::EscapeDefault
rust-lang/rust/pull/63421
Add APIs for uninitialized Box, Rc, and Arc (Plus get_mut_unchecked)
rust-lang/rust/pull/62451
Reduce the genericity of closures in the iterator traits
rust-lang/rust/pull/62429
Add custom nth_back for Chain
rust-lang/rust/pull/60492
cargo install: Remove orphaned executables
rust-lang/cargo/pull/7246
News
🎈🎉 Announcing Rust 1.37.0. 🎉🎈
blog.rust-lang.org
Announcing async-std beta: an async port of the Rust standard library.
async.rs
How Rust optimizes async/await: Part 1.
tmandry.gitlab.io
System 76 releases new GTK firmware manager written in Rust.
blog.system76.com
Writing a Linux kernel module in Rust.
lizhuohua/linux-kernel-module-rust
Introducing the Rust Game Development Working Group.
rust-gamedev.github.io
Steam wishlist announced for Way of Rhea, a sidescrolling puzzle game written in Rust.
store.steampowered.com
Visual embedded Rust programming with Visual Studio Code.
medium.com/@ly.lee
How to diagnose async apps with tracing.
tokio.rs
Using C libraries in Rust: A practical guide to FFI using bindgen.
medium.com/dwelo-r-d
Pre-/Post-conf events: Sustainable 🚄 train travels from and to RustFest Barcelona.
blog.rustfest.eu
<_>::v::<_> - A fun little piece of Rust artwork.
chrismorgan.info
🎈🎉 Announcing Rust 1.37.0. 🎉🎈
blog.rust-lang.org
Announcing async-std beta: an async port of the Rust standard library.
async.rs
How Rust optimizes async/await: Part 1.
tmandry.gitlab.io
System 76 releases new GTK firmware manager written in Rust.
blog.system76.com
Writing a Linux kernel module in Rust.
lizhuohua/linux-kernel-module-rust
Introducing the Rust Game Development Working Group.
rust-gamedev.github.io
Steam wishlist announced for Way of Rhea, a sidescrolling puzzle game written in Rust.
store.steampowered.com
Visual embedded Rust programming with Visual Studio Code.
medium.com/@ly.lee
How to diagnose async apps with tracing.
tokio.rs
Using C libraries in Rust: A practical guide to FFI using bindgen.
medium.com/dwelo-r-d
Pre-/Post-conf events: Sustainable 🚄 train travels from and to RustFest Barcelona.
blog.rustfest.eu
<_>::v::<_> - A fun little piece of Rust artwork.
chrismorgan.info
Crate of the week: async-std
This week's crate is async-std, a library with async variants of the standard library's IO etc.
This week's crate is async-std, a library with async variants of the standard library's IO etc.
This week in Rust #301 — 27 aug 2019
https://this-week-in-rust.org/blog/2019/08/27/this-week-in-rust-301/
https://this-week-in-rust.org/blog/2019/08/27/this-week-in-rust-301/
Updates from core
Stabilize async_await in Rust 1.39.0
rust-lang/rust/pull/63209
When declaring a declarative macro in an item it's only accessible inside it
rust-lang/rust/pull/63624
Improve diagnostics: break/continue in wrong context
rust-lang/rust/pull/63780
Audit uses of apply_mark in built-in macros + Remove default macro transparencies
rust-lang/rust/pull/63823
Ensure miri can do bit ops on pointer values
rust-lang/rust/pull/63839
Use more optimal Ord implementation for integers
rust-lang/rust/pull/63767
Fix bug in iter::Chain::size_hint
rust-lang/rust/pull/63691
Implement nth_back for ChunksExactMut
rust-lang/rust/pull/63265
Avoid unnecessary reservations in std::io::Take::read_to_end
rust-lang/rust/pull/63216
cargo: Fix error:/warning: coloring inconsistency with rustc
rust-lang/cargo/pull/7294
rustdoc: Support impl Trait in inlined documentation
rust-lang/rust/pull/61613
rustup: Replace mem::uninitialized with MaybeUninit
rust-lang/rustup.rs/pull/1963
Stabilize async_await in Rust 1.39.0
rust-lang/rust/pull/63209
When declaring a declarative macro in an item it's only accessible inside it
rust-lang/rust/pull/63624
Improve diagnostics: break/continue in wrong context
rust-lang/rust/pull/63780
Audit uses of apply_mark in built-in macros + Remove default macro transparencies
rust-lang/rust/pull/63823
Ensure miri can do bit ops on pointer values
rust-lang/rust/pull/63839
Use more optimal Ord implementation for integers
rust-lang/rust/pull/63767
Fix bug in iter::Chain::size_hint
rust-lang/rust/pull/63691
Implement nth_back for ChunksExactMut
rust-lang/rust/pull/63265
Avoid unnecessary reservations in std::io::Take::read_to_end
rust-lang/rust/pull/63216
cargo: Fix error:/warning: coloring inconsistency with rustc
rust-lang/cargo/pull/7294
rustdoc: Support impl Trait in inlined documentation
rust-lang/rust/pull/61613
rustup: Replace mem::uninitialized with MaybeUninit
rust-lang/rustup.rs/pull/1963
News
Should small Rust structs be passed by-copy or by-borrow?
www.forrestthewoods.com
Thoughts on Rust bloat.
raphlinus.github.io
Rust GUI ecosystem overview.
gitlab.com
Introduction to C2Rust.
immunant.com
Async stack traces in Rust.
fitzgeraldnick.com
Polsim - a case study for small-scale scientific computing in Rust.
tinkering.xyz
Managing memory in Rust: Entity-component systems.
mmstick.keybase.pub
Actually using Crev, or, the problem of trusting software dependencies.
wiki.alopex.li
Review of “Everything in Rust” of COSCUP 2019.
medium.com/coding-neutrino-blog
Should small Rust structs be passed by-copy or by-borrow?
www.forrestthewoods.com
Thoughts on Rust bloat.
raphlinus.github.io
Rust GUI ecosystem overview.
gitlab.com
Introduction to C2Rust.
immunant.com
Async stack traces in Rust.
fitzgeraldnick.com
Polsim - a case study for small-scale scientific computing in Rust.
tinkering.xyz
Managing memory in Rust: Entity-component systems.
mmstick.keybase.pub
Actually using Crev, or, the problem of trusting software dependencies.
wiki.alopex.li
Review of “Everything in Rust” of COSCUP 2019.
medium.com/coding-neutrino-blog
Crate of the week: include_flate
This week's crate is include_flate, a variant of include_bytes!/include_str with compile-time DEFLATE compression and runtime lazy decompression.
This week's crate is include_flate, a variant of include_bytes!/include_str with compile-time DEFLATE compression and runtime lazy decompression.
This week in Rust #302 — 03 sep 2019
https://this-week-in-rust.org/blog/2019/09/03/this-week-in-rust-302/
https://this-week-in-rust.org/blog/2019/09/03/this-week-in-rust-302/
Updates from core
rustc: Handle modules in "fat" LTO more robustly
rust-lang/rust/pull/63956
Add default serialization for Idents
rust-lang/rust/pull/63853
Correctly suggest adding bounds to impl Trait argument
rust-lang/rust/pull/63811
Strip code to the left and right in diagnostics for long lines
rust-lang/rust/pull/63402
Do not complain about unused code when used in impl Self type
rust-lang/rust/pull/63317
Simplify eager normalization of constants
rust-lang/rust/pull/63820
miri: Stacked Borrows: Don't read from memory during retagging
rust-lang/miri/pull/931
miri: detect too large dynamically sized objects
rust-lang/rust/pull/64014
Small improvement for Ord implementation of integers
rust-lang/rust/pull/63992
Improve Rustdoc's handling of procedural macros
rust-lang/rust/pull/62855
crates.io: Show right-hand column for yanked versions to crate owners
rust-lang/crates.io/pull/1759
rustc: Handle modules in "fat" LTO more robustly
rust-lang/rust/pull/63956
Add default serialization for Idents
rust-lang/rust/pull/63853
Correctly suggest adding bounds to impl Trait argument
rust-lang/rust/pull/63811
Strip code to the left and right in diagnostics for long lines
rust-lang/rust/pull/63402
Do not complain about unused code when used in impl Self type
rust-lang/rust/pull/63317
Simplify eager normalization of constants
rust-lang/rust/pull/63820
miri: Stacked Borrows: Don't read from memory during retagging
rust-lang/miri/pull/931
miri: detect too large dynamically sized objects
rust-lang/rust/pull/64014
Small improvement for Ord implementation of integers
rust-lang/rust/pull/63992
Improve Rustdoc's handling of procedural macros
rust-lang/rust/pull/62855
crates.io: Show right-hand column for yanked versions to crate owners
rust-lang/crates.io/pull/1759
News
Introduction to Rust web applications.
erwabook.com
This month in Rust GameDev #1 - August 2019.
rust-gamedev.github.io
HHVM is rewriting some of its OCaml code to Rust.
hhvm.com
Announcing cargo-udeps.
https://gist.github.com/est31/3d9e880be746c3a443c699d9ff1888d2
Announcing structopt 0.3.
www.reddit.com
Semantic validation in Rust.
slowtec.de
Low power NB-IoT on STM32 Blue Pill with Apache Mynewt and embedded Rust.
medium.com/@ly.lee
Introduction to Rust web applications.
erwabook.com
This month in Rust GameDev #1 - August 2019.
rust-gamedev.github.io
HHVM is rewriting some of its OCaml code to Rust.
hhvm.com
Announcing cargo-udeps.
https://gist.github.com/est31/3d9e880be746c3a443c699d9ff1888d2
Announcing structopt 0.3.
www.reddit.com
Semantic validation in Rust.
slowtec.de
Low power NB-IoT on STM32 Blue Pill with Apache Mynewt and embedded Rust.
medium.com/@ly.lee
Crate of the week: cargo-udeps
This week's crate is cargo-udeps, a cargo subcommand to find unused dependencies.
This week's crate is cargo-udeps, a cargo subcommand to find unused dependencies.
👍1
This week in Rust #303 — 10 sep 2019
https://this-week-in-rust.org/blog/2019/09/10/this-week-in-rust-303/
https://this-week-in-rust.org/blog/2019/09/10/this-week-in-rust-303/
Updates from core
Support both static and dynamic linking mode in testing for vxWorks
rust-lang/rust/pull/63789
Point at variant on pattern field count mismatch
rust-lang/rust/pull/64161
Use hygiene for AST passes
rust-lang/rust/pull/63919
Account for doc comments coming from proc macros without spans
rust-lang/rust/pull/63930
Reduce span to function name in unreachable calls
rust-lang/rust/pull/64229
Move path parsing earlier
rust-lang/rust/pull/64120
or-patterns: Uniformly use PatKind::Or in AST & Fix/Cleanup resolve
rust-lang/rust/pull/64111
Allow checking of run-pass execution output in compiletest
rust-lang/rust/pull/63825
Rust 2018: NLL migrate mode => hard error
rust-lang/rust/pull/63565
Extend Polonius fact generation for (some) move tracking
rust-lang/rust/pull/62800
polonius: Finalise initialisation calculations
rust-lang/polonius/pull/110
libc: Remove WASI Core API
rust-lang/libc/pull/1461
Use wasi crate for Core API
rust-lang/rust/pull/63676
Use unicode-xid crate instead of libcore
rust-lang/rust/pull/62848
Add Result::cloned{,_err} and Result::copied{,_err}
rust-lang/rust/pull/63166
Stabilize bind_by_move_pattern_guards in Rust 1.39.0
rust-lang/rust/pull/63118
Stabilize checked_duration_since for 1.38.0
rust-lang/rust/pull/62860
Stabilize pin_into_inner in 1.39.0
rust-lang/rust/pull/63985
Rev::rposition counts from the wrong end
rust-lang/rust/pull/63549
Override StepBy::{try_fold, try_rfold}
rust-lang/rust/pull/64121
Add Iterator comparison methods that take a comparison function
rust-lang/rust/pull/62205
Add methods for converting bool to Option<T>
rust-lang/rust/pull/64255
cargo: Rename --all to --workspace
rust-lang/cargo/pull/7241
Support both static and dynamic linking mode in testing for vxWorks
rust-lang/rust/pull/63789
Point at variant on pattern field count mismatch
rust-lang/rust/pull/64161
Use hygiene for AST passes
rust-lang/rust/pull/63919
Account for doc comments coming from proc macros without spans
rust-lang/rust/pull/63930
Reduce span to function name in unreachable calls
rust-lang/rust/pull/64229
Move path parsing earlier
rust-lang/rust/pull/64120
or-patterns: Uniformly use PatKind::Or in AST & Fix/Cleanup resolve
rust-lang/rust/pull/64111
Allow checking of run-pass execution output in compiletest
rust-lang/rust/pull/63825
Rust 2018: NLL migrate mode => hard error
rust-lang/rust/pull/63565
Extend Polonius fact generation for (some) move tracking
rust-lang/rust/pull/62800
polonius: Finalise initialisation calculations
rust-lang/polonius/pull/110
libc: Remove WASI Core API
rust-lang/libc/pull/1461
Use wasi crate for Core API
rust-lang/rust/pull/63676
Use unicode-xid crate instead of libcore
rust-lang/rust/pull/62848
Add Result::cloned{,_err} and Result::copied{,_err}
rust-lang/rust/pull/63166
Stabilize bind_by_move_pattern_guards in Rust 1.39.0
rust-lang/rust/pull/63118
Stabilize checked_duration_since for 1.38.0
rust-lang/rust/pull/62860
Stabilize pin_into_inner in 1.39.0
rust-lang/rust/pull/63985
Rev::rposition counts from the wrong end
rust-lang/rust/pull/63549
Override StepBy::{try_fold, try_rfold}
rust-lang/rust/pull/64121
Add Iterator comparison methods that take a comparison function
rust-lang/rust/pull/62205
Add methods for converting bool to Option<T>
rust-lang/rust/pull/64255
cargo: Rename --all to --workspace
rust-lang/cargo/pull/7241
News
How Rust optimizes async/await II: program analysis.
tmandry.gitlab.io
Rust on the ESP32.
mabez.dev
Linux.Fe2O3: a Rust virus.
www.guitmz.com
Improvement to the compile time of a crate.
antoyo.ml
hyper 0.13 alpha supports async/await.
seanmonstar.com
Writing an OS in Rust: updates in August 2019.
os.phil-opp.com
Rust in large organizations - meeting notes.
users.rust-lang.org
Futures concurrency.
blog.yoshuawuyts.com
How Rust optimizes async/await II: program analysis.
tmandry.gitlab.io
Rust on the ESP32.
mabez.dev
Linux.Fe2O3: a Rust virus.
www.guitmz.com
Improvement to the compile time of a crate.
antoyo.ml
hyper 0.13 alpha supports async/await.
seanmonstar.com
Writing an OS in Rust: updates in August 2019.
os.phil-opp.com
Rust in large organizations - meeting notes.
users.rust-lang.org
Futures concurrency.
blog.yoshuawuyts.com
This week in Rust #304 — 17 sep 2019
https://this-week-in-rust.org/blog/2019/09/17/this-week-in-rust-304/
https://this-week-in-rust.org/blog/2019/09/17/this-week-in-rust-304/
Updates from core
rustc: Allow the cdylib crate type with wasm32-wasi
rust-lang/rust/pull/64188
Hide diagnostics emitted during --cfg parsing
rust-lang/rust/pull/64467
Improve hygiene of alloc::format!
rust-lang/rust/pull/64060
Cleanup handling of hygiene for built-in macros
rust-lang/rust/pull/64469
resolve: Tweak some "cannot find" wording for macros
rust-lang/rust/pull/64483
Provide a span if main function is not present in crate
rust-lang/rust/pull/64290
def_collector: Do not ICE on attributes on unnamed fields
rust-lang/rust/pull/64457
Permit impls referencing errors to overlap
rust-lang/rust/pull/64474
lowering: Extend temporary lifetimes around await
rust-lang/rust/pull/64292
Shrink ObligationCauseCode
rust-lang/rust/pull/64302
check_match: Refactor + improve non-exhaustive diagnostics for default binding modes
rust-lang/rust/pull/64271
fn ptr is structural match
rust-lang/rust/pull/64431
rustc_mir: Buffer -Zdump-mir output instead of pestering the kernel constantly
rust-lang/rust/pull/64344
std: Add a backtrace module
rust-lang/rust/pull/64154
Stabilize Vec::new and String::new as const fns
rust-lang/rust/pull/64028
Stabilise weak_ptr_eq
rust-lang/rust/pull/61797
Make abs, wrapping_abs, overflowing_abs const functions
rust-lang/rust/pull/63786
Use try_fold instead of manually carrying an accumulator
rust-lang/rust/pull/64473
Improve BTreeSet::Intersection::size_hint
rust-lang/rust/pull/64383
cargo: Don't build libstd as a dylib
rust-lang/cargo/pull/7353
rustup: Update to most recent viable nightly
rust-lang/rustup.rs/pull/1997
rustc: Allow the cdylib crate type with wasm32-wasi
rust-lang/rust/pull/64188
Hide diagnostics emitted during --cfg parsing
rust-lang/rust/pull/64467
Improve hygiene of alloc::format!
rust-lang/rust/pull/64060
Cleanup handling of hygiene for built-in macros
rust-lang/rust/pull/64469
resolve: Tweak some "cannot find" wording for macros
rust-lang/rust/pull/64483
Provide a span if main function is not present in crate
rust-lang/rust/pull/64290
def_collector: Do not ICE on attributes on unnamed fields
rust-lang/rust/pull/64457
Permit impls referencing errors to overlap
rust-lang/rust/pull/64474
lowering: Extend temporary lifetimes around await
rust-lang/rust/pull/64292
Shrink ObligationCauseCode
rust-lang/rust/pull/64302
check_match: Refactor + improve non-exhaustive diagnostics for default binding modes
rust-lang/rust/pull/64271
fn ptr is structural match
rust-lang/rust/pull/64431
rustc_mir: Buffer -Zdump-mir output instead of pestering the kernel constantly
rust-lang/rust/pull/64344
std: Add a backtrace module
rust-lang/rust/pull/64154
Stabilize Vec::new and String::new as const fns
rust-lang/rust/pull/64028
Stabilise weak_ptr_eq
rust-lang/rust/pull/61797
Make abs, wrapping_abs, overflowing_abs const functions
rust-lang/rust/pull/63786
Use try_fold instead of manually carrying an accumulator
rust-lang/rust/pull/64473
Improve BTreeSet::Intersection::size_hint
rust-lang/rust/pull/64383
cargo: Don't build libstd as a dylib
rust-lang/cargo/pull/7353
rustup: Update to most recent viable nightly
rust-lang/rustup.rs/pull/1997
News
Upcoming docs.rs changes.
blog.rust-lang.org
GitHub Actions for Rust.
svartalf.info
Rustconf 2019 videos.
www.youtube.com
Improved C variadics in Rust and C2Rust.
immunant.com
Oreboot: Coreboot minus C, a talk by Google.
osfc.io
Announcing awesome-rust-mentors.
rustbeginners.github.io
Adventures in motion control.
adventures.michaelfbryan.com
Upcoming docs.rs changes.
blog.rust-lang.org
GitHub Actions for Rust.
svartalf.info
Rustconf 2019 videos.
www.youtube.com
Improved C variadics in Rust and C2Rust.
immunant.com
Oreboot: Coreboot minus C, a talk by Google.
osfc.io
Announcing awesome-rust-mentors.
rustbeginners.github.io
Adventures in motion control.
adventures.michaelfbryan.com
Crate of the week: texture-synthesis
This week's crate is texture-synthesis, a program to generate textures by choosing examples.
This week's crate is texture-synthesis, a program to generate textures by choosing examples.
This week in Rust #305 — 24 sep 2019
https://this-week-in-rust.org/blog/2019/09/24/this-week-in-rust-305/
https://this-week-in-rust.org/blog/2019/09/24/this-week-in-rust-305/