This week in Rust #271 — 29 jan 2019
https://this-week-in-rust.org/blog/2019/01/29/this-week-in-rust-271/
https://this-week-in-rust.org/blog/2019/01/29/this-week-in-rust-271/
Updates from core
enable RISC-V atomic compare and swap
https://github.com/rust-lang/rust/pull/57925
recover from parse errors in literal struct fields and incorrect float literals
https://github.com/rust-lang/rust/pull/57779
merge visitors in AST validation
https://github.com/rust-lang/rust/pull/57730
resolve: Fix span arithmetics in the import conflict error
https://github.com/rust-lang/rust/pull/57908
fix race condition when emitting stored diagnostics
https://github.com/rust-lang/rust/pull/57066
don't ICE when logging unusual types
https://github.com/rust-lang/rust/pull/57865
combine all builtin early lints
https://github.com/rust-lang/rust/pull/57726
add suggestion for moving type declaration before associated type bindings in generic arguments
https://github.com/rust-lang/rust/pull/57886
add suggestion for incorrect field syntax
https://github.com/rust-lang/rust/pull/57863
suggest removing leading left angle brackets
https://github.com/rust-lang/rust/pull/57852
add error for trailing angle brackets
https://github.com/rust-lang/rust/pull/57817
print visible name for types as well as modules
https://github.com/rust-lang/rust/pull/57802
use structured suggestion instead of notes
https://github.com/rust-lang/rust/pull/57795
explain type mismatch cause pointing to return type when it is impl Trait
https://github.com/rust-lang/rust/pull/57793
when using value after move, point at span of local
https://github.com/rust-lang/rust/pull/57294
conditionally skip two passes if their related attributes were not found
https://github.com/rust-lang/rust/pull/57691
fix evaluating trivial drop glue in constants
https://github.com/rust-lang/rust/pull/57734
const_eval: predetermine the layout of all locals when pushing a stack frame
https://github.com/rust-lang/rust/pull/57677
fix memory leak in P::filter_map
https://github.com/rust-lang/rust/pull/57667
get rid of the fake stack frame for reading from constants
https://github.com/rust-lang/rust/pull/57606
add intrinsic to create an integer bitmask from a vector mask
https://github.com/rust-lang/rust/pull/57269
un-deprecate mem::zeroed
https://github.com/rust-lang/rust/pull/57825
make MutexGuard's Debug implementation more useful
https://github.com/rust-lang/rust/pull/57703
make str indexing generic on SliceIndex
https://github.com/rust-lang/rust/pull/57604
small perf improvement for fmt
https://github.com/rust-lang/rust/pull/57537
add signed num::NonZeroI* types
https://github.com/rust-lang/rust/pull/57475
std: stabilize fixed-width integer atomics
https://github.com/rust-lang/rust/pull/57425
use pinning for generators to make trait safe
https://github.com/rust-lang/rust/pull/55704
implement optimize(size) and optimize(speed) attributes
https://github.com/rust-lang/rust/pull/55641
cargo: make incremental compilation the default for all profiles
https://github.com/rust-lang/cargo/pull/6564
rustdoc: fix ICE from loading proc-macro stubs
https://github.com/rust-lang/rust/pull/57846
enable RISC-V atomic compare and swap
https://github.com/rust-lang/rust/pull/57925
recover from parse errors in literal struct fields and incorrect float literals
https://github.com/rust-lang/rust/pull/57779
merge visitors in AST validation
https://github.com/rust-lang/rust/pull/57730
resolve: Fix span arithmetics in the import conflict error
https://github.com/rust-lang/rust/pull/57908
fix race condition when emitting stored diagnostics
https://github.com/rust-lang/rust/pull/57066
don't ICE when logging unusual types
https://github.com/rust-lang/rust/pull/57865
combine all builtin early lints
https://github.com/rust-lang/rust/pull/57726
add suggestion for moving type declaration before associated type bindings in generic arguments
https://github.com/rust-lang/rust/pull/57886
add suggestion for incorrect field syntax
https://github.com/rust-lang/rust/pull/57863
suggest removing leading left angle brackets
https://github.com/rust-lang/rust/pull/57852
add error for trailing angle brackets
https://github.com/rust-lang/rust/pull/57817
print visible name for types as well as modules
https://github.com/rust-lang/rust/pull/57802
use structured suggestion instead of notes
https://github.com/rust-lang/rust/pull/57795
explain type mismatch cause pointing to return type when it is impl Trait
https://github.com/rust-lang/rust/pull/57793
when using value after move, point at span of local
https://github.com/rust-lang/rust/pull/57294
conditionally skip two passes if their related attributes were not found
https://github.com/rust-lang/rust/pull/57691
fix evaluating trivial drop glue in constants
https://github.com/rust-lang/rust/pull/57734
const_eval: predetermine the layout of all locals when pushing a stack frame
https://github.com/rust-lang/rust/pull/57677
fix memory leak in P::filter_map
https://github.com/rust-lang/rust/pull/57667
get rid of the fake stack frame for reading from constants
https://github.com/rust-lang/rust/pull/57606
add intrinsic to create an integer bitmask from a vector mask
https://github.com/rust-lang/rust/pull/57269
un-deprecate mem::zeroed
https://github.com/rust-lang/rust/pull/57825
make MutexGuard's Debug implementation more useful
https://github.com/rust-lang/rust/pull/57703
make str indexing generic on SliceIndex
https://github.com/rust-lang/rust/pull/57604
small perf improvement for fmt
https://github.com/rust-lang/rust/pull/57537
add signed num::NonZeroI* types
https://github.com/rust-lang/rust/pull/57475
std: stabilize fixed-width integer atomics
https://github.com/rust-lang/rust/pull/57425
use pinning for generators to make trait safe
https://github.com/rust-lang/rust/pull/55704
implement optimize(size) and optimize(speed) attributes
https://github.com/rust-lang/rust/pull/55641
cargo: make incremental compilation the default for all profiles
https://github.com/rust-lang/cargo/pull/6564
rustdoc: fix ICE from loading proc-macro stubs
https://github.com/rust-lang/rust/pull/57846
News
Writing an OS in Rust: Advanced paging.
https://os.phil-opp.com/advanced-paging/
Embedding WebAssembly in your Rust application.
https://medium.com/wasmer/executing-webassembly-in-your-rust-application-d5cd32e8ce46
Lock-free Rust: Crossbeam in 2019.
https://stjepang.github.io/2019/01/29/lock-free-rust-crossbeam-in-2019.html
Performance of Rust's match vs. lookup tables.
https://kevinlynagh.com/notes/match-vs-lookup/
Librnoscript's GObject boilerplate is in Rust now.
https://people.gnome.org/~federico/blog/librnoscript-gobject-in-rust.html
Enjoy a slice of QUIC, and Rust. Quiche is an implementation of the QUIC transport protocol, by Cloudflare.
https://blog.cloudflare.com/enjoy-a-slice-of-quic-and-rust/
Exporting Serde types to TypeScript.
http://timryan.org/2019/01/22/exporting-serde-types-to-typenoscript.html
Writing an OS in Rust: Advanced paging.
https://os.phil-opp.com/advanced-paging/
Embedding WebAssembly in your Rust application.
https://medium.com/wasmer/executing-webassembly-in-your-rust-application-d5cd32e8ce46
Lock-free Rust: Crossbeam in 2019.
https://stjepang.github.io/2019/01/29/lock-free-rust-crossbeam-in-2019.html
Performance of Rust's match vs. lookup tables.
https://kevinlynagh.com/notes/match-vs-lookup/
Librnoscript's GObject boilerplate is in Rust now.
https://people.gnome.org/~federico/blog/librnoscript-gobject-in-rust.html
Enjoy a slice of QUIC, and Rust. Quiche is an implementation of the QUIC transport protocol, by Cloudflare.
https://blog.cloudflare.com/enjoy-a-slice-of-quic-and-rust/
Exporting Serde types to TypeScript.
http://timryan.org/2019/01/22/exporting-serde-types-to-typenoscript.html
Crate of the week: typetag
This week's crate is typetag, a small crate to allow for serde trait objects. Thanks to Christopher Durham for the suggestion!
This week's crate is typetag, a small crate to allow for serde trait objects. Thanks to Christopher Durham for the suggestion!
This week in Rust #272 — 05 feb 2019
https://this-week-in-rust.org/blog/2019/02/05/this-week-in-rust-272/
https://this-week-in-rust.org/blog/2019/02/05/this-week-in-rust-272/
Updates from core
HirIdification: add key HirId methods
https://github.com/rust-lang/rust/pull/58090
don't panic when accessing enum variant ctor using Self in match
https://github.com/rust-lang/rust/pull/58007
use LLVM intrinsics for saturating add/sub
https://github.com/rust-lang/rust/pull/58003
add MOVBE x86 CPU feature
https://github.com/rust-lang/rust/pull/57999
NVPTX target specification
https://github.com/rust-lang/rust/pull/57937
fix bug in integer range matching
https://github.com/rust-lang/rust/pull/57978
unused variable suggestions apply on all patterns
https://github.com/rust-lang/rust/pull/57899
add information to higher-ranked lifetimes conflicts error messages
https://github.com/rust-lang/rust/pull/57901
rustc: use multiple threads by default
https://github.com/rust-lang/rust/pull/57948
misc performance tweaks
https://github.com/rust-lang/rust/pull/57916
simplify ConstValue::ScalarPair
https://github.com/rust-lang/rust/pull/57442
mark str::trim* functions as #[must_use]
https://github.com/rust-lang/rust/pull/57106
override VecDeque's Iter::try_fold
https://github.com/rust-lang/rust/pull/57974
introduce into_raw_non_null on Rc and Arc
https://github.com/rust-lang/rust/pull/57934
implement Weak::{strong_count, weak_count}
https://github.com/rust-lang/rust/pull/56696
rename iter::unfold to iter::from_fn and remove explicit state
https://github.com/rust-lang/rust/pull/58062
stabilize std::error::Error::type_id
https://github.com/rust-lang/rust/pull/58048
stabilize split_ascii_whitespace
https://github.com/rust-lang/rust/pull/58047
cargo: fix overlapping progress with stdout
https://github.com/rust-lang/cargo/pull/6618
cargo: improve progress bar flickering
https://github.com/rust-lang/cargo/pull/6615
HirIdification: add key HirId methods
https://github.com/rust-lang/rust/pull/58090
don't panic when accessing enum variant ctor using Self in match
https://github.com/rust-lang/rust/pull/58007
use LLVM intrinsics for saturating add/sub
https://github.com/rust-lang/rust/pull/58003
add MOVBE x86 CPU feature
https://github.com/rust-lang/rust/pull/57999
NVPTX target specification
https://github.com/rust-lang/rust/pull/57937
fix bug in integer range matching
https://github.com/rust-lang/rust/pull/57978
unused variable suggestions apply on all patterns
https://github.com/rust-lang/rust/pull/57899
add information to higher-ranked lifetimes conflicts error messages
https://github.com/rust-lang/rust/pull/57901
rustc: use multiple threads by default
https://github.com/rust-lang/rust/pull/57948
misc performance tweaks
https://github.com/rust-lang/rust/pull/57916
simplify ConstValue::ScalarPair
https://github.com/rust-lang/rust/pull/57442
mark str::trim* functions as #[must_use]
https://github.com/rust-lang/rust/pull/57106
override VecDeque's Iter::try_fold
https://github.com/rust-lang/rust/pull/57974
introduce into_raw_non_null on Rc and Arc
https://github.com/rust-lang/rust/pull/57934
implement Weak::{strong_count, weak_count}
https://github.com/rust-lang/rust/pull/56696
rename iter::unfold to iter::from_fn and remove explicit state
https://github.com/rust-lang/rust/pull/58062
stabilize std::error::Error::type_id
https://github.com/rust-lang/rust/pull/58048
stabilize split_ascii_whitespace
https://github.com/rust-lang/rust/pull/58047
cargo: fix overlapping progress with stdout
https://github.com/rust-lang/cargo/pull/6618
cargo: improve progress bar flickering
https://github.com/rust-lang/cargo/pull/6615
News
Cargo's next few years.
https://www.ncameron.org/blog/cargos-next-few-years/
The steps towards rustc, the great optimiser.
https://kazlauskas.me/entries/the-road-to-bestest-optimiser.html
Salsa: Incremental recompilation.
http://smallcultfollowing.com/babysteps/blog/2019/01/29/salsa-incremental-recompilation/
Collection of Rust hacks.
https://vorner.github.io/2019/02/03/hacks.html
Writing Neovim plugins in Rust.
https://medium.com/@srishanbhattarai/a-detailed-guide-to-writing-your-first-neovim-plugin-in-rust-a81604c606b1
osaka.rs - rust async without the noise.
https://aep.github.io/rust-async-without-the-noise/
Rust on iOS (and Android).
https://medium.com/visly/rust-on-ios-39f799b3c1dd
Rust: regretless concurrency.
https://medium.com/@polyglot_factotum/rust-regret-less-concurrency-2238b9e53333
Learning Rust via Advent of Code.
https://www.forrestthewoods.com/blog/learning-rust-via-advent-of-code/
Creating web-server .deb binary with rust.
https://gill.net.in/posts/creating-web-server-deb-binary-with-rust/
An introduction to the Rust programming language for Node developers.
https://twitter.com/PipoPeperoni/status/1092842843637456899
Cargo's next few years.
https://www.ncameron.org/blog/cargos-next-few-years/
The steps towards rustc, the great optimiser.
https://kazlauskas.me/entries/the-road-to-bestest-optimiser.html
Salsa: Incremental recompilation.
http://smallcultfollowing.com/babysteps/blog/2019/01/29/salsa-incremental-recompilation/
Collection of Rust hacks.
https://vorner.github.io/2019/02/03/hacks.html
Writing Neovim plugins in Rust.
https://medium.com/@srishanbhattarai/a-detailed-guide-to-writing-your-first-neovim-plugin-in-rust-a81604c606b1
osaka.rs - rust async without the noise.
https://aep.github.io/rust-async-without-the-noise/
Rust on iOS (and Android).
https://medium.com/visly/rust-on-ios-39f799b3c1dd
Rust: regretless concurrency.
https://medium.com/@polyglot_factotum/rust-regret-less-concurrency-2238b9e53333
Learning Rust via Advent of Code.
https://www.forrestthewoods.com/blog/learning-rust-via-advent-of-code/
Creating web-server .deb binary with rust.
https://gill.net.in/posts/creating-web-server-deb-binary-with-rust/
An introduction to the Rust programming language for Node developers.
https://twitter.com/PipoPeperoni/status/1092842843637456899
Crate of the week: log-derive
This week's crate is log-derive, a procedural macro to log function outputs. Thanks to elichai2 for the suggestion!
This week's crate is log-derive, a procedural macro to log function outputs. Thanks to elichai2 for the suggestion!
This week in Rust #273 — 12 feb 2019
https://this-week-in-rust.org/blog/2019/02/12/this-week-in-rust-273/
https://this-week-in-rust.org/blog/2019/02/12/this-week-in-rust-273/
Updates from core
Initial addition of the Embedded Rust Book.
https://github.com/rust-lang/rust/pull/56291
Add const generics to the AST.
https://github.com/rust-lang/rust/pull/58191
Error on duplicate matcher bindings.
https://github.com/rust-lang/rust/pull/57617
libc: RFC 2235 - Implement PartialEq,Eq,Hash,Debug for all types.
https://github.com/rust-lang/libc/pull/1217
Lower constant patterns with ascribed types.
https://github.com/rust-lang/rust/pull/58161
Make intern_lazy_const actually intern its argument.
https://github.com/rust-lang/rust/pull/58207
Avoid committing to autoderef in object method probing.
https://github.com/rust-lang/rust/pull/57885
Add #[must_use] to core::task::Poll.
https://github.com/rust-lang/rust/pull/58145
Add #[must_use] message to Fn* traits.
https://github.com/rust-lang/rust/pull/58262
Avoid some bounds checks in binary_heap::{PeekMut,Hole}.
https://github.com/rust-lang/rust/pull/58123
Make -Zdump-mir dump shims.
https://github.com/rust-lang/rust/pull/58103
Cargo: Bail when trying to run "test --doc --no-run".
https://github.com/rust-lang/cargo/pull/6628
Improve error message and docs for non-UTF-8 bytes in stdio on Windows.
https://github.com/rust-lang/rust/pull/58136
Move privacy checking later in the pipeline and make some passes run in parallel.
https://github.com/rust-lang/rust/pull/58010
Overhaul syntax::fold::Folder.
https://github.com/rust-lang/rust/pull/58061
Factor out error reporting from smart_resolve_path_fragment fn.
https://github.com/rust-lang/rust/pull/58065
Do not ICE in codegen when using a extern_type static.
https://github.com/rust-lang/rust/pull/58192
hir: add more HirId methods.
https://github.com/rust-lang/rust/pull/58139
Implement more detailed self profiling.
https://github.com/rust-lang/rust/pull/58085
Add a forever unstable opt-out of const qualification checks.
https://github.com/rust-lang/rust/pull/56123
Initial implementation of rustfixable unused_imports lint.
https://github.com/rust-lang/rust/pull/56645
Add a query type which is always marked as red if it runs.
https://github.com/rust-lang/rust/pull/57770
Don't try to clean predicates involving ReErased.
https://github.com/rust-lang/rust/pull/57851
Deduplicate mismatched delimiter errors.
https://github.com/rust-lang/rust/pull/57944
Add suggestion for duplicated import.
https://github.com/rust-lang/rust/pull/57973
Allow #[repr(align(x))] on enums.
https://github.com/rust-lang/rust/pull/57998
Initial addition of the Embedded Rust Book.
https://github.com/rust-lang/rust/pull/56291
Add const generics to the AST.
https://github.com/rust-lang/rust/pull/58191
Error on duplicate matcher bindings.
https://github.com/rust-lang/rust/pull/57617
libc: RFC 2235 - Implement PartialEq,Eq,Hash,Debug for all types.
https://github.com/rust-lang/libc/pull/1217
Lower constant patterns with ascribed types.
https://github.com/rust-lang/rust/pull/58161
Make intern_lazy_const actually intern its argument.
https://github.com/rust-lang/rust/pull/58207
Avoid committing to autoderef in object method probing.
https://github.com/rust-lang/rust/pull/57885
Add #[must_use] to core::task::Poll.
https://github.com/rust-lang/rust/pull/58145
Add #[must_use] message to Fn* traits.
https://github.com/rust-lang/rust/pull/58262
Avoid some bounds checks in binary_heap::{PeekMut,Hole}.
https://github.com/rust-lang/rust/pull/58123
Make -Zdump-mir dump shims.
https://github.com/rust-lang/rust/pull/58103
Cargo: Bail when trying to run "test --doc --no-run".
https://github.com/rust-lang/cargo/pull/6628
Improve error message and docs for non-UTF-8 bytes in stdio on Windows.
https://github.com/rust-lang/rust/pull/58136
Move privacy checking later in the pipeline and make some passes run in parallel.
https://github.com/rust-lang/rust/pull/58010
Overhaul syntax::fold::Folder.
https://github.com/rust-lang/rust/pull/58061
Factor out error reporting from smart_resolve_path_fragment fn.
https://github.com/rust-lang/rust/pull/58065
Do not ICE in codegen when using a extern_type static.
https://github.com/rust-lang/rust/pull/58192
hir: add more HirId methods.
https://github.com/rust-lang/rust/pull/58139
Implement more detailed self profiling.
https://github.com/rust-lang/rust/pull/58085
Add a forever unstable opt-out of const qualification checks.
https://github.com/rust-lang/rust/pull/56123
Initial implementation of rustfixable unused_imports lint.
https://github.com/rust-lang/rust/pull/56645
Add a query type which is always marked as red if it runs.
https://github.com/rust-lang/rust/pull/57770
Don't try to clean predicates involving ReErased.
https://github.com/rust-lang/rust/pull/57851
Deduplicate mismatched delimiter errors.
https://github.com/rust-lang/rust/pull/57944
Add suggestion for duplicated import.
https://github.com/rust-lang/rust/pull/57973
Allow #[repr(align(x))] on enums.
https://github.com/rust-lang/rust/pull/57998
News
Learning Rust in 2019.
https://www.ragona.com/posts/learning_rust_2019
A quick look at trait objects in Rust.
https://tratt.net/laurie/blog/entries/a_quick_look_at_trait_objects_in_rust.html
Allocations in Rust: An introduction to the memory model.
https://speice.io/2019/02/understanding-allocations-in-rust.html
Custom exit status codes with ? in main.
https://www.joshmcguigan.com/blog/custom-exit-status-codes-rust/
Rust: a unique perspective.
https://limpet.net/mbrubeck/2019/02/07/rust-a-unique-perspective.html
Rust on STM32: Blinking an LED.
https://jonathanklimt.de/electrics/programming/rust-STM32F103-blink/
Generators I: Toward a minimum viable product.
https://boats.gitlab.io/blog/post/generators-i/
Aturon retires from the Core Team (but not from Rust).
https://internals.rust-lang.org/t/aturon-retires-from-the-core-team-but-not-from-rust/9392
Rewriting stackcollapse-xdebug in Rust.
https://daniellockyer.com/rewriting-stackcollapse-xdebug/
Are you still using 'println' in Rust for debugging?
https://blog.knoldus.com/are-you-still-using-println-in-rust-for-debugging/
UCG+Miri All-Hands 2019 Recap.
https://www.ralfj.de/blog/2019/02/12/all-hands-recap.html
Learning Rust in 2019.
https://www.ragona.com/posts/learning_rust_2019
A quick look at trait objects in Rust.
https://tratt.net/laurie/blog/entries/a_quick_look_at_trait_objects_in_rust.html
Allocations in Rust: An introduction to the memory model.
https://speice.io/2019/02/understanding-allocations-in-rust.html
Custom exit status codes with ? in main.
https://www.joshmcguigan.com/blog/custom-exit-status-codes-rust/
Rust: a unique perspective.
https://limpet.net/mbrubeck/2019/02/07/rust-a-unique-perspective.html
Rust on STM32: Blinking an LED.
https://jonathanklimt.de/electrics/programming/rust-STM32F103-blink/
Generators I: Toward a minimum viable product.
https://boats.gitlab.io/blog/post/generators-i/
Aturon retires from the Core Team (but not from Rust).
https://internals.rust-lang.org/t/aturon-retires-from-the-core-team-but-not-from-rust/9392
Rewriting stackcollapse-xdebug in Rust.
https://daniellockyer.com/rewriting-stackcollapse-xdebug/
Are you still using 'println' in Rust for debugging?
https://blog.knoldus.com/are-you-still-using-println-in-rust-for-debugging/
UCG+Miri All-Hands 2019 Recap.
https://www.ralfj.de/blog/2019/02/12/all-hands-recap.html
Crate of the week: sysinfo
This week's crate is sysinfo, a system handler to get information and interact with processes. Thanks to GuillaumeGomez for the suggestion!
This week's crate is sysinfo, a system handler to get information and interact with processes. Thanks to GuillaumeGomez for the suggestion!
This week in Rust #274 — 19 feb 2019
https://this-week-in-rust.org/blog/2019/02/19/this-week-in-rust-274/
https://this-week-in-rust.org/blog/2019/02/19/this-week-in-rust-274/
Updates from core
Implement incremental "fat" LTO
https://github.com/rust-lang/rust/pull/58378
Enable comparing fat pointers
https://github.com/rust-lang/rust/pull/58301
impl iter() for dyn Error
https://github.com/rust-lang/rust/pull/58289
Improve the error messages for missing stability attributes
https://github.com/rust-lang/rust/pull/58276
Cut down on number formating code size
https://github.com/rust-lang/rust/pull/58272
Reduce the size of hir::Expr
https://github.com/rust-lang/rust/pull/58258
Make saturating_add and saturating_sub const functions
https://github.com/rust-lang/rust/pull/58246
Stabilize slice_sort_by_cached_key
https://github.com/rust-lang/rust/pull/58074
Stabilize str::escape_* methods with new return types
https://github.com/rust-lang/rust/pull/58051
Stabilize the time_checked_add feature
https://github.com/rust-lang/rust/pull/58034
Update the future/task API
https://github.com/rust-lang/rust/pull/57992
Speed up the fast path for assert_eq! and assert_ne!
https://github.com/rust-lang/rust/pull/57815
cargo: Stabilize Alternative Registries
https://github.com/rust-lang/cargo/pull/6654
Implement incremental "fat" LTO
https://github.com/rust-lang/rust/pull/58378
Enable comparing fat pointers
https://github.com/rust-lang/rust/pull/58301
impl iter() for dyn Error
https://github.com/rust-lang/rust/pull/58289
Improve the error messages for missing stability attributes
https://github.com/rust-lang/rust/pull/58276
Cut down on number formating code size
https://github.com/rust-lang/rust/pull/58272
Reduce the size of hir::Expr
https://github.com/rust-lang/rust/pull/58258
Make saturating_add and saturating_sub const functions
https://github.com/rust-lang/rust/pull/58246
Stabilize slice_sort_by_cached_key
https://github.com/rust-lang/rust/pull/58074
Stabilize str::escape_* methods with new return types
https://github.com/rust-lang/rust/pull/58051
Stabilize the time_checked_add feature
https://github.com/rust-lang/rust/pull/58034
Update the future/task API
https://github.com/rust-lang/rust/pull/57992
Speed up the fast path for assert_eq! and assert_ne!
https://github.com/rust-lang/rust/pull/57815
cargo: Stabilize Alternative Registries
https://github.com/rust-lang/cargo/pull/6654
News
Moving from Ruby to Rust.
https://deliveroo.engineering/2019/02/14/moving-from-ruby-to-rust.html
Rust lifetime visualization ideas.
https://blog.adamant-lang.org/2019/rust-lifetime-visualization-ideas/
Generators II: The question mark problem.
https://boats.gitlab.io/blog/post/generators-ii/
A list of itch.io games written in Rust.
https://itch.io/c/449652/rustlang-games
Cross-compiling Rust code to Minix.
https://iandouglasscott.com/2019/02/18/cross-compiling-rust-code-to-minix/
One hundred Rust PRs later.
https://phansch.net/2019/02/18/onehundred-rust-prs/
This week in Rust and WebAssembly 10.
https://rustwasm.github.io/2019/02/13/this-week-in-rust-and-wasm-010.html
Moving from Ruby to Rust.
https://deliveroo.engineering/2019/02/14/moving-from-ruby-to-rust.html
Rust lifetime visualization ideas.
https://blog.adamant-lang.org/2019/rust-lifetime-visualization-ideas/
Generators II: The question mark problem.
https://boats.gitlab.io/blog/post/generators-ii/
A list of itch.io games written in Rust.
https://itch.io/c/449652/rustlang-games
Cross-compiling Rust code to Minix.
https://iandouglasscott.com/2019/02/18/cross-compiling-rust-code-to-minix/
One hundred Rust PRs later.
https://phansch.net/2019/02/18/onehundred-rust-prs/
This week in Rust and WebAssembly 10.
https://rustwasm.github.io/2019/02/13/this-week-in-rust-and-wasm-010.html
Crate of the week: num-format
This week's crate is num-format, a crate to format numbers to international standards. Thanks to Vikrant for the suggestion!
This week's crate is num-format, a crate to format numbers to international standards. Thanks to Vikrant for the suggestion!
This week in Rust #275 — 26 feb 2019
https://this-week-in-rust.org/blog/2019/02/26/this-week-in-rust-275/
https://this-week-in-rust.org/blog/2019/02/26/this-week-in-rust-275/
Updates from core
Add an unstable option to build proc macros for both the host and the target
https://github.com/rust-lang/cargo/pull/6547
Avoid ICE when region sneaks into impl trait
https://github.com/rust-lang/rust/pull/58649
Add const generics to the HIR
https://github.com/rust-lang/rust/pull/58503
Improve parsing diagnostic for negative supertrait bounds
https://github.com/rust-lang/rust/pull/57364
Optimise vec![false; N] to zero-alloc
https://github.com/rust-lang/rust/pull/58628
Add expected/provided byte alignments to validation error message
https://github.com/rust-lang/rust/pull/58658
Remove LazyTokenStream
https://github.com/rust-lang/rust/pull/58476
Add better error message for partial move
https://github.com/rust-lang/rust/pull/58199
Suggest removing parentheses surrounding lifetimes
https://github.com/rust-lang/rust/pull/58198
Use normal mutable borrows in matches
https://github.com/rust-lang/rust/pull/57609
Monomorphize less code in fs::{read, write}
https://github.com/rust-lang/rust/pull/58530
Make overflowing and wrapping negation const
https://github.com/rust-lang/rust/pull/58044
Fix overlapping references in BTree
https://github.com/rust-lang/rust/pull/58431
Relax some Ord bounds on BinaryHeap
https://github.com/rust-lang/rust/pull/58421
Relax some Hash bounds on HashMap and HashSet
https://github.com/rust-lang/rust/pull/58370
Turn duration consts into associated consts
https://github.com/rust-lang/rust/pull/58595
RangeInclusive internal iteration performance improvement
https://github.com/rust-lang/rust/pull/58122
Override VecDeque::try_rfold, also update iterator
https://github.com/rust-lang/rust/pull/58064
Stabilize TryFrom and TryInto with a convert::Infallible empty enum
https://github.com/rust-lang/rust/pull/58302
Stabilize iter::successors and iter::from_fn
https://github.com/rust-lang/rust/pull/58576
Destabilize fixed-width const defined atomic integers
https://github.com/rust-lang/rust/pull/58616
Deprecate the unstable Vec::resize_default
https://github.com/rust-lang/rust/pull/57656
Modify doctest's auto-fn main() to allow Results
https://github.com/rust-lang/rust/pull/56470
crates.io: Stop logging the referer header
https://github.com/rust-lang/crates.io/pull/1636
Add an unstable option to build proc macros for both the host and the target
https://github.com/rust-lang/cargo/pull/6547
Avoid ICE when region sneaks into impl trait
https://github.com/rust-lang/rust/pull/58649
Add const generics to the HIR
https://github.com/rust-lang/rust/pull/58503
Improve parsing diagnostic for negative supertrait bounds
https://github.com/rust-lang/rust/pull/57364
Optimise vec![false; N] to zero-alloc
https://github.com/rust-lang/rust/pull/58628
Add expected/provided byte alignments to validation error message
https://github.com/rust-lang/rust/pull/58658
Remove LazyTokenStream
https://github.com/rust-lang/rust/pull/58476
Add better error message for partial move
https://github.com/rust-lang/rust/pull/58199
Suggest removing parentheses surrounding lifetimes
https://github.com/rust-lang/rust/pull/58198
Use normal mutable borrows in matches
https://github.com/rust-lang/rust/pull/57609
Monomorphize less code in fs::{read, write}
https://github.com/rust-lang/rust/pull/58530
Make overflowing and wrapping negation const
https://github.com/rust-lang/rust/pull/58044
Fix overlapping references in BTree
https://github.com/rust-lang/rust/pull/58431
Relax some Ord bounds on BinaryHeap
https://github.com/rust-lang/rust/pull/58421
Relax some Hash bounds on HashMap and HashSet
https://github.com/rust-lang/rust/pull/58370
Turn duration consts into associated consts
https://github.com/rust-lang/rust/pull/58595
RangeInclusive internal iteration performance improvement
https://github.com/rust-lang/rust/pull/58122
Override VecDeque::try_rfold, also update iterator
https://github.com/rust-lang/rust/pull/58064
Stabilize TryFrom and TryInto with a convert::Infallible empty enum
https://github.com/rust-lang/rust/pull/58302
Stabilize iter::successors and iter::from_fn
https://github.com/rust-lang/rust/pull/58576
Destabilize fixed-width const defined atomic integers
https://github.com/rust-lang/rust/pull/58616
Deprecate the unstable Vec::resize_default
https://github.com/rust-lang/rust/pull/57656
Modify doctest's auto-fn main() to allow Results
https://github.com/rust-lang/rust/pull/56470
crates.io: Stop logging the referer header
https://github.com/rust-lang/crates.io/pull/1636
News
Rust case study: Community makes Rust an easy choice for npm.
https://www.rust-lang.org/static/pdfs/Rust-npm-Whitepaper.pdf
Combine results for improved Rust validation logic.
https://www.joshmcguigan.com/blog/multi-try-improved-validation-logic-rust/
Rust now runs on the new Cortex-M33 based Nordic nRF9160 LTE SiP.
https://twitter.com/42Technology/status/1099009843967471617
Scientific computing: a Rust adventure - part 0 - vectors.
https://www.lpalmieri.com/posts/2019-02-23-scientific-computing-a-rust-adventure-part-0-vectors/
HTML code coverage reports for Rust.
https://blog.knoldus.com/bid-adieu-to-tarpaulin-html-reports-are-here-for-rust/
Blockchain in Rust - a video series.
https://www.youtube.com/watch?v=vJdT05zl6jk&list=PLwnSaD6BDfXL0RiKT_5nOIdxTxZWpPtAv&index=2&t=0s
Changes in the core team.
https://blog.rust-lang.org/2019/02/22/Core-team-changes.html
Rust lang team working groups.
http://smallcultfollowing.com/babysteps/blog/2019/02/22/rust-lang-team-working-groups/
This week in Rust and WebAssembly 11.
https://rustwasm.github.io/2019/02/21/this-week-in-rust-and-wasm-011.html
The embedded WG newsletter 15.
https://rust-embedded.github.io/blog/newsletter-15/
Rust case study: Community makes Rust an easy choice for npm.
https://www.rust-lang.org/static/pdfs/Rust-npm-Whitepaper.pdf
Combine results for improved Rust validation logic.
https://www.joshmcguigan.com/blog/multi-try-improved-validation-logic-rust/
Rust now runs on the new Cortex-M33 based Nordic nRF9160 LTE SiP.
https://twitter.com/42Technology/status/1099009843967471617
Scientific computing: a Rust adventure - part 0 - vectors.
https://www.lpalmieri.com/posts/2019-02-23-scientific-computing-a-rust-adventure-part-0-vectors/
HTML code coverage reports for Rust.
https://blog.knoldus.com/bid-adieu-to-tarpaulin-html-reports-are-here-for-rust/
Blockchain in Rust - a video series.
https://www.youtube.com/watch?v=vJdT05zl6jk&list=PLwnSaD6BDfXL0RiKT_5nOIdxTxZWpPtAv&index=2&t=0s
Changes in the core team.
https://blog.rust-lang.org/2019/02/22/Core-team-changes.html
Rust lang team working groups.
http://smallcultfollowing.com/babysteps/blog/2019/02/22/rust-lang-team-working-groups/
This week in Rust and WebAssembly 11.
https://rustwasm.github.io/2019/02/21/this-week-in-rust-and-wasm-011.html
The embedded WG newsletter 15.
https://rust-embedded.github.io/blog/newsletter-15/
Crate of the week: shellfn
This week's crate is shellfn, a proc macro to easily and safely use shell noscripts in Rust. Thanks to Willi Kappler for the suggestion!
This week's crate is shellfn, a proc macro to easily and safely use shell noscripts in Rust. Thanks to Willi Kappler for the suggestion!
This week in Rust #276 — 05 mar 2019
https://this-week-in-rust.org/blog/2019/03/05/this-week-in-rust-276/
https://this-week-in-rust.org/blog/2019/03/05/this-week-in-rust-276/