Skip to content

Commit 6d4a11c

Browse files
authored
Merge pull request #1323 from llogiq/twir-344
C/QotW + notable changes
2 parents 8fa036a + 80d0ef3 commit 6d4a11c

File tree

1 file changed

+65
-62
lines changed

1 file changed

+65
-62
lines changed

draft/2020-06-23-this-week-in-rust.md

Lines changed: 65 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,9 @@ Check out [this week's *This Week in Rust Podcast*]()
6161

6262
# Crate of the Week
6363

64-
This week's crate is [safer_ffi](https://github.com/getditto/safer_ffi), a library to help write safe FFI code.
64+
This week's crate is [diskonaut](https://github.com/imsnif/diskonaut), a disk usage explorer.
6565

66-
Thanks to [Vlad Frolov](https://users.rust-lang.org/t/crate-of-the-week/2704/780) for the suggestion!
66+
Thanks to [Aram Drevekenin](https://users.rust-lang.org/t/crate-of-the-week/2704/781) for the suggestion!
6767

6868
[Submit your suggestions and votes for next week][submit_crate]!
6969

@@ -85,64 +85,67 @@ If you are a Rust project owner and are looking for contributors, please submit
8585

8686
# Updates from Rust Core
8787

88-
354 pull requests were [merged in the last week][merged]
89-
90-
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2020-06-08..2020-06-15
91-
92-
* [enable AVR as a Tier 3 target upstream](https://github.com/rust-lang/rust/pull/69478)
93-
* [enable LVI hardening for x86_64-fortanix-unknown-sgx](https://github.com/rust-lang/rust/pull/72655)
94-
* [add `-Z span-debug` to allow for easier debugging of proc macros](https://github.com/rust-lang/rust/pull/72799)
95-
* [add methods to go from a null-terminated `Vec<u8>` to a `CString`](https://github.com/rust-lang/rust/pull/73139)
96-
* [check for live drops in constants after drop elaboration](https://github.com/rust-lang/rust/pull/71824)
97-
* [display information about captured variable in `FnMut` error](https://github.com/rust-lang/rust/pull/72598)
98-
* [don't create impl candidates when obligation contains errors](https://github.com/rust-lang/rust/pull/73005)
99-
* [enforce unwind invariants](https://github.com/rust-lang/rust/pull/73133)
100-
* [explain move errors that occur due to method calls involving `self`](https://github.com/rust-lang/rust/pull/72389)
101-
* [fix `#[thread_local]` statics as `asm!` sym operands](https://github.com/rust-lang/rust/pull/73033)
102-
* [fix trait alias inherent impl resolution](https://github.com/rust-lang/rust/pull/72556)
103-
* [free `default()` forwarding to `Default::default()`](https://github.com/rust-lang/rust/pull/73001)
104-
* [handle assembler warnings properly](https://github.com/rust-lang/rust/pull/73169)
105-
* [on recursive ADT, provide indirection structured suggestion](https://github.com/rust-lang/rust/pull/72740)
106-
* [provide suggestion to convert numeric op LHS rather than unwrapping RHS](https://github.com/rust-lang/rust/pull/73195)
107-
* [querify whether a type has structural equality](https://github.com/rust-lang/rust/pull/73066)
108-
* [relate existential associated types with variance Invariant](https://github.com/rust-lang/rust/pull/71896)
109-
* [suggest including unused asm arguments in a comment to avoid error](https://github.com/rust-lang/rust/pull/73230)
110-
* [support proc macros in intra doc link resolution](https://github.com/rust-lang/rust/pull/73183)
111-
* [track span of function in method calls, and use this in `#[track_caller]`](https://github.com/rust-lang/rust/pull/73182)
112-
* [use `min_specialization` in the remaining rustc crates](https://github.com/rust-lang/rust/pull/72707)
113-
* [use shorthand linker strip arguments in order to support MacOS](https://github.com/rust-lang/rust/pull/73138)
114-
* [expand: more precise locations for expansion-time lints](https://github.com/rust-lang/rust/pull/73178)
115-
* [extend network support for HermitCore](https://github.com/rust-lang/rust/pull/73331)
116-
* [fix caller_location intrinsic for Miri](https://github.com/rust-lang/rust/pull/73277)
117-
* [improper ctypes: normalize return types and transparent structs](https://github.com/rust-lang/rust/pull/72890)
118-
* [normalize adt fields during structural match checking](https://github.com/rust-lang/rust/pull/72897)
119-
* [resolve: do not suggest imports from the same module in which we are resolving](https://github.com/rust-lang/rust/pull/72789)
120-
* [structural_match: non-structural-match ty closures](https://github.com/rust-lang/rust/pull/73353)
121-
* [chalk: add FnOnce trait, and provide impl for Function type](https://github.com/rust-lang/chalk/pull/494)
122-
* [chalk: model function ABI in the Rust IR](https://github.com/rust-lang/chalk/pull/481)
123-
* [chalk: recursive solver factoring and privacy](https://github.com/rust-lang/chalk/pull/513)
124-
* [chalk: refactor ProgramClauseData to remove Implies variant](https://github.com/rust-lang/chalk/pull/514)
125-
* [chalk: add `Unsize` trait implementation](https://github.com/rust-lang/chalk/pull/427)
126-
* [miri: avoid tracking current location three times](https://github.com/rust-lang/rust/pull/72879)
127-
* [remove `RawVec::reserve_in_place`](https://github.com/rust-lang/rust/pull/72417)
128-
* [stabilize `Option::zip`](https://github.com/rust-lang/rust/pull/72938)
129-
* [stabilize `vec::Drain::as_slice`](https://github.com/rust-lang/rust/pull/72584)
130-
* [impl `AsRef<[T]>` for `vec::IntoIter<T>`](https://github.com/rust-lang/rust/pull/72583)
131-
* [std: enable atomic.fence emission on wasm32](https://github.com/rust-lang/rust/pull/73036)
132-
* [stdarch: fix x86 extract_epi{8,16} functions](https://github.com/rust-lang/stdarch/pull/868)
88+
325 pull requests were [merged in the last week][merged]
89+
90+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2020-06-15..2020-06-22
91+
92+
* [add `asm!()` support for hexagon](https://github.com/rust-lang/rust/pull/73214)
93+
* [enable LLVM zlib](https://github.com/rust-lang/rust/pull/72696)
94+
* [add methods to go from a nul-terminated `Vec<u8>` to a `CString`](https://github.com/rust-lang/rust/pull/73139)
95+
* [allow multiple `asm!` options groups and report an error on duplicate options](https://github.com/rust-lang/rust/pull/73227)
96+
* [diagnose use of incompatible sanitizers](https://github.com/rust-lang/rust/pull/73347)
97+
* [disallow loading crates with non-ascii identifier name](https://github.com/rust-lang/rust/pull/73305)
98+
* [export `#[inline]` fns with extern indicators](https://github.com/rust-lang/rust/pull/73034)
99+
* [fix up autoderef when reborrowing](https://github.com/rust-lang/rust/pull/72280)
100+
* [further tweak lifetime errors involving `dyn Trait` and `impl Trait` in return position](https://github.com/rust-lang/rust/pull/72804)
101+
* [implement crate-level-only lints checking.](https://github.com/rust-lang/rust/pull/73300)
133102
* [implement new gdb/lldb pretty-printers](https://github.com/rust-lang/rust/pull/72357)
134-
* [cargo: add environment variables to identify the binary and crate name](https://github.com/rust-lang/cargo/pull/8270)
135-
* [cargo: allow passing a registry index url directly to `cargo install`](https://github.com/rust-lang/cargo/pull/8344)
136-
* [cargo: fix doctests not running with `--target=HOST`](https://github.com/rust-lang/cargo/pull/8358)
137-
* [cargo: support `{prefix}` and `{lowerprefix}` markers in `config.json` `dl` key](https://github.com/rust-lang/cargo/pull/8267)
138-
* [crates.io: allow configuring the application's domain name](https://github.com/rust-lang/crates.io/pull/2543)
139-
* [crates.io: modifiers/highlight-syntax: Disable aggressive whitespace stripping](https://github.com/rust-lang/crates.io/pull/2564)
140-
* [doc: make impl block collapsible if it has an associated constant](https://github.com/rust-lang/rust/pull/71842)
141-
* [docs.rs: add compression for uploaded documentation](https://github.com/rust-lang/docs.rs/pull/780)
142-
* [docs.rs: limit the size of served files](https://github.com/rust-lang/docs.rs/pull/834)
143-
* [clippy: macro use suggestion](https://github.com/rust-lang/rust-clippy/pull/5279)
144-
* [clippy: let_and_return: avoid "does not live long enough" errors](https://github.com/rust-lang/rust-clippy/pull/5680)
145-
* [rustfmt: pick up comments between visibility modifier and item name](https://github.com/rust-lang/rustfmt/pull/4239)
103+
* [improve diagnostics for `let x += 1`](https://github.com/rust-lang/rust/pull/71976)
104+
* [make `need_type_info_err` more conservative](https://github.com/rust-lang/rust/pull/73027)
105+
* [make all uses of ty::Error delay a span bug](https://github.com/rust-lang/rust/pull/70551)
106+
* [make new type param suggestion more targetted](https://github.com/rust-lang/rust/pull/73320)
107+
* [make novel structural match violations not a `bug`](https://github.com/rust-lang/rust/pull/73446)
108+
* [only display other method receiver candidates if they actually apply](https://github.com/rust-lang/rust/pull/73382)
109+
* [prefer accessible paths in 'use' suggestions](https://github.com/rust-lang/rust/pull/72623)
110+
* [prevent attacker from manipulating FPU tag word used in SGX enclave](https://github.com/rust-lang/rust/pull/73471)
111+
* [projection bound validation](https://github.com/rust-lang/rust/pull/72788)
112+
* [report error when casting an C-like enum implementing Drop](https://github.com/rust-lang/rust/pull/72331)
113+
* [specialization is unsound](https://github.com/rust-lang/rust/pull/71420)
114+
* [use min_specialization in the remaining rustc crates](https://github.com/rust-lang/rust/pull/72707)
115+
* [add specialization of `ToString for char`](https://github.com/rust-lang/rust/pull/73465)
116+
* [suggest `?Sized` when applicable for ADTs](https://github.com/rust-lang/rust/pull/73261)
117+
* [support sanitizers on aarch64-unknown-linux-gnu](https://github.com/rust-lang/rust/pull/73058)
118+
* [test that bounds checks are elided when slice len is checked up-front](https://github.com/rust-lang/rust/pull/73362)
119+
* [try to suggest dereferences on trait selection failed](https://github.com/rust-lang/rust/pull/72456)
120+
* [use track caller for bug! macro](https://github.com/rust-lang/rust/pull/73373)
121+
* [forbid mutable references in all constant contexts except for const-fns](https://github.com/rust-lang/rust/pull/72934)
122+
* [linker: MSVC supports linking static libraries as a whole archive](https://github.com/rust-lang/rust/pull/72785)
123+
* [linker: never pass `-no-pie` to non-gnu linkers](https://github.com/rust-lang/rust/pull/73384)
124+
* [lint: normalize projections using opaque types](https://github.com/rust-lang/rust/pull/73287)
125+
* [add a lint to catch clashing `extern` fn declarations.](https://github.com/rust-lang/rust/pull/70946)
126+
* [memory access sanity checks: abort instead of panic](https://github.com/rust-lang/rust/pull/73054)
127+
* [pretty/mir: const value enums with no variants](https://github.com/rust-lang/rust/pull/73442)
128+
* [store `ObligationCause` on the heap](https://github.com/rust-lang/rust/pull/72962)
129+
* [chalk: add closures](https://github.com/rust-lang/chalk/pull/519)
130+
* [chalk: ignore auto traits order](https://github.com/rust-lang/chalk/pull/531)
131+
* [fix asinh of negative values](https://github.com/rust-lang/rust/pull/72486)
132+
* [stabilize Option::zip](https://github.com/rust-lang/rust/pull/72938)
133+
* [stabilize vec::Drain::as_slice](https://github.com/rust-lang/rust/pull/72584)
134+
* [use `Ipv4Addr::from<[u8; 4]>` when possible](https://github.com/rust-lang/rust/pull/73389)
135+
* [core/time: Add Duration methods for zero](https://github.com/rust-lang/rust/pull/72790)
136+
* [deprecate wrapping_offset_from](https://github.com/rust-lang/rust/pull/73580)
137+
* [impl PartialEq<Vec<B>> for &[A], &mut [A]](https://github.com/rust-lang/rust/pull/71660)
138+
* [hashbrown: avoid creating small tables with a capacity of 1](https://github.com/rust-lang/hashbrown/pull/162)
139+
* [stdarch: add AVX 512f gather, scatter and compare intrinsics](https://github.com/rust-lang/stdarch/pull/866)
140+
* [cargo: adding environment variable CARGO_PKG_LICENSE](https://github.com/rust-lang/cargo/pull/8325)
141+
* [cargo: cut down on data fetch from git dependencies](https://github.com/rust-lang/cargo/pull/8363)
142+
* [cargo: fix doctests not running with --target=HOST](https://github.com/rust-lang/cargo/pull/8358)
143+
* [cargo: fix order-dependent feature resolution.](https://github.com/rust-lang/cargo/pull/8395)
144+
* [cargo: fix overzealous `clean -p` for reserved names](https://github.com/rust-lang/cargo/pull/8398)
145+
* [cargo: support linker with -Zdoctest-xcompile.](https://github.com/rust-lang/cargo/pull/8359)
146+
* [rustfmt: avoid using Symbol::intern](https://github.com/rust-lang/rustfmt/pull/4268)
147+
* [rustfmt: ensure idempotency on empty match blocks](https://github.com/rust-lang/rustfmt/pull/4271)
148+
146149

147150
## Rust Compiler Performance Triage
148151

@@ -210,11 +213,11 @@ Email the [Rust Community Team][community] for access.
210213

211214
# Quote of the Week
212215

213-
> It feels like being part of a village that learns to love the dragon it battles.
216+
> Rust's beauty lies in the countless decisions made by the development community that constantly make you feel like you can have ten cakes and eat all of them too.
214217
215-
[turbinerneiter on Hacker News](https://news.ycombinator.com/item?id=23437950)
218+
[Jake McGinty et al on the tonari blog](https://blog.tonari.no/why-we-love-rust)
216219

217-
Thanks to [blonk](https://users.rust-lang.org/t/twir-quote-of-the-week/328/892) for the suggestions!
220+
Thanks to [llogiq](https://users.rust-lang.org/t/twir-quote-of-the-week/328/896) for the suggestions!
218221

219222
[Please submit quotes and vote for next week!](https://users.rust-lang.org/t/twir-quote-of-the-week/328)
220223

0 commit comments

Comments
 (0)