|
| 1 | +Title: This Week in Rust 312 |
| 2 | +Number: 312 |
| 3 | +Date: 2019-11-12 |
| 4 | +Category: This Week in Rust |
| 5 | + |
| 6 | +Hello and welcome to another issue of *This Week in Rust*! |
| 7 | +[Rust](http://rust-lang.org) is a systems language pursuing the trifecta: safety, concurrency, and speed. |
| 8 | +This is a weekly summary of its progress and community. |
| 9 | +Want something mentioned? Tweet us at [@ThisWeekInRust](https://twitter.com/ThisWeekInRust) or [send us a pull request](https://github.com/cmr/this-week-in-rust). |
| 10 | +Want to get involved? [We love contributions](https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md). |
| 11 | + |
| 12 | +*This Week in Rust* is openly developed [on GitHub](https://github.com/cmr/this-week-in-rust). |
| 13 | +If you find any errors in this week's issue, [please submit a PR](https://github.com/cmr/this-week-in-rust/pulls). |
| 14 | + |
| 15 | +# Updates from Rust Community |
| 16 | + |
| 17 | +## News & Blog Posts |
| 18 | + |
| 19 | +### #Rust2020 |
| 20 | + |
| 21 | +Find all #Rust2020 posts at [Read Rust](https://readrust.net/rust-2020/). |
| 22 | + |
| 23 | +# Crate of the Week |
| 24 | + |
| 25 | +This week's crate is [displaydoc](https://github.com/yaahc/displaydoc), a procedural derive macro to implement `Display` by string-interpolating the doc comment. |
| 26 | + |
| 27 | +Thanks to [Willi Kappler](https://users.rust-lang.org/t/crate-of-the-week/2704/652) for the suggesion! |
| 28 | + |
| 29 | +[Submit your suggestions and votes for next week][submit_crate]! |
| 30 | + |
| 31 | +[submit_crate]: https://users.rust-lang.org/t/crate-of-the-week/2704 |
| 32 | + |
| 33 | +# Call for Participation |
| 34 | + |
| 35 | +Always wanted to contribute to open-source projects but didn't know where to start? |
| 36 | +Every week we highlight some tasks from the Rust community for you to pick and get started! |
| 37 | + |
| 38 | +Some of these tasks may also have mentors available, visit the task page for more information. |
| 39 | + |
| 40 | +* [Announcing safety-dance: removing unnecessary unsafe code from popular crates](https://github.com/rust-secure-code/safety-dance). |
| 41 | +* [RFC: make Cargo embed dependency versions in the compiled binary](https://github.com/rust-lang/rfcs/pull/2801). |
| 42 | +* [good first issue] [cargo-sweep: Could cargo-sweep work without rustup](https://github.com/holmgr/cargo-sweep/issues/26)? |
| 43 | +* [good first issue] [Rubble: Add a function for reading the device address to rubble-nrf52](https://github.com/jonas-schievink/rubble/issues/89). |
| 44 | +* [good first issue] [Rubble: Don't give up when missing the initial transmit window](https://github.com/jonas-schievink/rubble/issues/77). |
| 45 | +* [good first issue] [Rubble: LLCP updates are not applied when the event is missed](https://github.com/jonas-schievink/rubble/issues/74). |
| 46 | +* [good first issue] [Rubble: Log buffer overflow on nrf52832](https://github.com/jonas-schievink/rubble/issues/69). |
| 47 | +* [good first issue] [Rubble: Try out `scroll` or `zerocopy` for de/encoding of PDUs](https://github.com/jonas-schievink/rubble/issues/53). |
| 48 | +* [good first issue] [Rubble: Only reply to LL_VERSION_IND once](https://github.com/jonas-schievink/rubble/issues/49). |
| 49 | + |
| 50 | +If you are a Rust project owner and are looking for contributors, please submit tasks [here][guidelines]. |
| 51 | + |
| 52 | +[guidelines]: https://users.rust-lang.org/t/twir-call-for-participation/4821 |
| 53 | + |
| 54 | +# Updates from Rust Core |
| 55 | + |
| 56 | +217 pull requests were [merged in the last week][merged] |
| 57 | + |
| 58 | +[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2019-10-28..2019-11-04 |
| 59 | + |
| 60 | +* [Allow foreign exceptions to unwind through Rust code and Rust panics to unwind through FFI](https://github.com/rust-lang/rust/pull/65646) |
| 61 | +* [expand: Feature gate out-of-line modules in proc macro input](https://github.com/rust-lang/rust/pull/66078) |
| 62 | +* [Lint ignored `#[inline]` on function prototypes](https://github.com/rust-lang/rust/pull/65294) |
| 63 | +* [Improve the "try using a variant of the expected type" hint](https://github.com/rust-lang/rust/pull/65562) |
| 64 | +* [Use heuristics to recover parsing of missing `;`](https://github.com/rust-lang/rust/pull/65640) |
| 65 | +* [Point at local similarly named element and tweak references to variants](https://github.com/rust-lang/rust/pull/65421) |
| 66 | +* [Custom lifetime error for `impl` item doesn't conform to `trait`](https://github.com/rust-lang/rust/pull/65068) |
| 67 | +* [Add lint and tests for unnecessary parens around types](https://github.com/rust-lang/rust/pull/65112) |
| 68 | +* [Correct handling of type flags with `ConstValue::Placeholder`](https://github.com/rust-lang/rust/pull/65643) |
| 69 | +* [Use structured suggestion for unnecessary bounds in type aliases](https://github.com/rust-lang/rust/pull/65914) |
| 70 | +* [save-analysis: Account for async desugaring in async fn return types](https://github.com/rust-lang/rust/pull/65936) |
| 71 | +* [Switch CrateMetadata's source_map_import_info from RwLock to Once](https://github.com/rust-lang/rust/pull/65979) |
| 72 | +* [Don't use `eval_always` for miri queries used from codegen](https://github.com/rust-lang/rust/pull/65927) |
| 73 | +* [rustc: use IndexVec<DefIndex, T> instead of Vec<T>](https://github.com/rust-lang/rust/pull/65825) |
| 74 | +* [Make `promote_consts` emit the errors when required promotion fails](https://github.com/rust-lang/rust/pull/65946) |
| 75 | +* [Implement ordered/sorted iterators on `BinaryHeap`](https://github.com/rust-lang/rust/pull/65091) |
| 76 | +* [Make `*`{`const`, `mut`} `T>::offset_from` const fn](https://github.com/rust-lang/rust/pull/63810) |
| 77 | +* [Stabilize `float_to_from_bytes` feature](https://github.com/rust-lang/rust/pull/66002) |
| 78 | +* [hashbrown: Introduce `ahash-compile-time-rng` feature](https://github.com/rust-lang/hashbrown/pull/125) |
| 79 | +* [cargo: Add --filter-platform to `cargo metadata`](https://github.com/rust-lang/cargo/pull/7376) |
| 80 | +* [cargo: Fix `cargo fix` not showing colors](https://github.com/rust-lang/cargo/pull/7550) |
| 81 | +* [chalk: Remove delayed literals](https://github.com/rust-lang/chalk/pull/270) |
| 82 | +* [chalk: Add TypeName::Error variant](https://github.com/rust-lang/chalk/pull/269) |
| 83 | +* [chalk: Output multiple solutions](https://github.com/rust-lang/chalk/pull/263) |
| 84 | +* [rustdoc: Stabilize `cfg(doctest)`](https://github.com/rust-lang/rust/pull/63803) |
| 85 | + |
| 86 | +## Approved RFCs |
| 87 | + |
| 88 | +Changes to Rust follow the Rust [RFC (request for comments) |
| 89 | +process](https://github.com/rust-lang/rfcs#rust-rfcs). These |
| 90 | +are the RFCs that were approved for implementation this week: |
| 91 | + |
| 92 | +*No RFCs were approved this week.* |
| 93 | + |
| 94 | +## Final Comment Period |
| 95 | + |
| 96 | +Every week [the team](https://www.rust-lang.org/team.html) announces the |
| 97 | +'final comment period' for RFCs and key PRs which are reaching a |
| 98 | +decision. Express your opinions now. |
| 99 | + |
| 100 | +### [RFCs](https://github.com/rust-lang/rfcs/labels/final-comment-period) |
| 101 | + |
| 102 | +* [disposition: merge] [Announcing the FFI-unwinding Project Group](https://github.com/rust-lang/rfcs/pull/2797). |
| 103 | +* [disposition: postpone] [Signing registry index commits](https://github.com/rust-lang/rfcs/pull/2474). |
| 104 | + |
| 105 | +### [Tracking Issues & PRs](https://github.com/rust-lang/rust/labels/final-comment-period) |
| 106 | + |
| 107 | +* [disposition: merge] [Stabilize --extern flag without a path](https://github.com/rust-lang/rust/pull/64882). |
| 108 | +* [disposition: merge] [Fully integrate derive helpers into name resolution](https://github.com/rust-lang/rust/pull/64694). |
| 109 | +* [disposition: merge] [Make the semantics of Vec::truncate(N) consistent with slices](https://github.com/rust-lang/rust/pull/64432). |
| 110 | +* [disposition: merge] [Use ptr::drop_in_place for VecDeque::truncate and VecDeque::clear](https://github.com/rust-lang/rust/pull/65933). |
| 111 | + |
| 112 | +## New RFCs |
| 113 | + |
| 114 | +* [Add method Result::into_ok](https://github.com/rust-lang/rfcs/pull/2799). |
| 115 | +* [Make Cargo embed dependency versions in the compiled binary](https://github.com/rust-lang/rfcs/pull/2801). |
| 116 | +* [Vec::recycle](https://github.com/rust-lang/rfcs/pull/2802). |
| 117 | +* [Target tier policy](https://github.com/rust-lang/rfcs/pull/2803). |
| 118 | +* [[T]::rejoin](https://github.com/rust-lang/rfcs/pull/2806). |
| 119 | + |
| 120 | +# Upcoming Events |
| 121 | + |
| 122 | +### Asia Pacific |
| 123 | + |
| 124 | +* [Nov 13. Selangor, MY - Rust Malaysia Meetup November 2019](https://docs.google.com/forms/d/e/1FAIpQLSfZM9XYmBXq9tjqRziR-O3vBmm4rt1Ltnc9bGcleVrLmZHrSg/viewform). |
| 125 | + |
| 126 | +### Europe |
| 127 | + |
| 128 | +* **[Nov 9 & 10. Barcelona, ES - RustFest Barcelona 2019](https://barcelona.rustfest.eu/).** |
| 129 | +* [Nov 12. Hamburg, DE - Rust Hack & Learn November 2019](https://www.meetup.com/Rust-Meetup-Hamburg/events/265899865/). |
| 130 | +* [Nov 13. Wrocław, PL - Rust Wrocław Meetup #14](https://www.meetup.com/Rust-Wroclaw/events/265813648/). |
| 131 | +* [Nov 13. Berlin, DE - OpenTechSchool Berlin - Rust Hack and Learn](https://www.meetup.com/opentechschool-berlin/events/nxdpgryzpbrb/). |
| 132 | +* [Nov 14. Zurich, CH - Rust Zurich - RustFest Decompression Zürich](https://www.meetup.com/Rust-Zurich/events/265593126/). |
| 133 | +* [Nov 14. Moscow, RU - Rust Moscow November 2019 Meetup](https://www.meetup.com/ru-RU/Rust-%D0%B2-%D0%9C%D0%BE%D1%81%D0%BA%D0%B2%D0%B5/events/266184946/). |
| 134 | +* [Nov 15. Barcelona, ES - Rust GTK/GStreamer Workshop at Linux Application Summit 2019](https://www.meetup.com/Barcelona-Free-Software/events/265596417/). |
| 135 | +* [Nov 21. Turin, IT - Mozilla Torino - Gruppo di studio Rust](https://www.meetup.com/Mozilla-Torino/events/265961100). |
| 136 | + |
| 137 | +### North America |
| 138 | + |
| 139 | +* [Nov 12. Seattle, WA, US - Seattle Rust Meetup - Monthly meetup](https://www.meetup.com/Seattle-Rust-Meetup/events/prbtdryzpbqb/). |
| 140 | +* [Nov 13. Atlanta, GA, US - Grab a beer with fellow Rustaceans](https://www.meetup.com/Rust-ATL/events/qxqdgryzpbrb/). |
| 141 | +* [Nov 13. Vancouver, BC, CA - Vancouver Rust meetup](https://www.meetup.com/Vancouver-Rust/events/rwcpfryzpbrb/). |
| 142 | +* [Nov 14. San Diego, CA, US - San Diego Rust November Meetup](https://www.meetup.com/San-Diego-Rust/events/265981542/). |
| 143 | +* [Nov 14. Lehi, UT, US - Utah Rust - November 2019 Regular Meetup](https://www.meetup.com/utah-rust/events/265905259/). |
| 144 | +* [Nov 14. Columbus, OH, US - Columbus Rust Society - Monthly Meeting](https://www.meetup.com/columbus-rs/events/dpkhgryzpbsb/). |
| 145 | +* [Nov 14. Montreal, QC, CA - Montreal Rust Meetup - November 2019 RustMTL: November Common Traits & Causal Profiling](https://www.meetup.com/Rust-Montreal/events/prvrjryzpbqb/). |
| 146 | +* [Nov 20. Portland, OR, US - PDXRust - Hack Night](https://www.meetup.com/PDXRust/events/265998640/). |
| 147 | + |
| 148 | +If you are running a Rust event please add it to the [calendar] to get |
| 149 | +it mentioned here. Please remember to add a link to the event too. |
| 150 | +Email the [Rust Community Team][community] for access. |
| 151 | + |
| 152 | +[calendar]: https://www.google.com/calendar/embed?src=apd9vmbc22egenmtu5l6c5jbfc%40group.calendar.google.com |
| 153 | +[community]: mailto:community-team@rust-lang.org |
| 154 | + |
| 155 | +# Rust Jobs |
| 156 | + |
| 157 | +*Tweet us at [@ThisWeekInRust](https://twitter.com/ThisWeekInRust) to get your job offers listed here!* |
| 158 | + |
| 159 | +# Quote of the Week |
| 160 | + |
| 161 | +> I did manage to get this compile in the end - does anyone else find that the process of asking the question well on a public forum organizes their thoughts well enough to solve the problem? |
| 162 | +
|
| 163 | +– [David Mason on rust-users](https://users.rust-lang.org/t/std-phantomdata-and-unused-fields-in-structs/34271/3) |
| 164 | + |
| 165 | +Thanks to [Daniel H-M](https://users.rust-lang.org/t/twir-quote-of-the-week/328/725) for the suggestion! |
| 166 | + |
| 167 | +[Please submit quotes and vote for next week!](https://users.rust-lang.org/t/twir-quote-of-the-week/328) |
| 168 | + |
| 169 | +*This Week in Rust is edited by: [nasa42](https://github.com/nasa42), [llogiq](https://github.com/llogiq), and [Flavsditz](https://github.com/Flavsditz).* |
| 170 | + |
| 171 | +<small>[Discuss on r/rust]().</small> |
0 commit comments