pub ThisWeekInRust {} – Telegram
pub ThisWeekInRust {}
991 subscribers
2 photos
2.41K links
Handpicked Rust updates,
delivered to your telegram.

Contacts: @sergeysova
Reposted from: https://this-week-in-rust.org
Source code: https://github.com/sergeysova/this_week_in_rust.rs
Another: @this_week_in_react
Download Telegram
Updates from core

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
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.
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
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
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.
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
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
Crate of the week: cargo-udeps

This week's crate is cargo-udeps, a cargo subcommand to find unused dependencies.
👍1
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
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
Crate of the week: viu

This week's crate is viu, a terminal image viewer.
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
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
Crate of the week: texture-synthesis

This week's crate is texture-synthesis, a program to generate textures by choosing examples.