# Libs Meeting 2021-06-09 ###### tags: `Libs Meetings` `Minutes` **Attendees**: Jane, Amanieu, Josh, David, Mara, bstrie, the8472 ## Agenda - [Open action items](https://hackmd.io/ovrbJj6CRduRgSA0Wzg2zg) - [rust-lang/project-error-handling#44](https://github.com/rust-lang/project-error-handling/issues/44): migration plan for `Display` vs `source` guidance - Triage - Anything else? ## Triage ### FCPs 12 open T-libs FCPs: <details><summary><a href="https://github.com/rust-lang/rfcs/issues?q=is%3Aopen+label%3AT-libs+label%3Aproposed-final-comment-period">1 <code>rust-lang/rfcs</code> FCPs</a></summary> - [[close 3057](https://github.com/rust-lang/rfcs/issues/3057#issuecomment-853330038)] *Add the boxed!() macro to &quot;de\-magic&quot; box syntax* - (3 checkboxes left) </details> <details><summary><a href="https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-libs+label%3Aproposed-final-comment-period">11 <code>rust-lang/rust</code> FCPs</a></summary> - [[merge 81050](https://github.com/rust-lang/rust/issues/81050#issuecomment-765341798)] *Stabilize core::task::ready!* - (0 checkboxes left) - [[merge 85272](https://github.com/rust-lang/rust/issues/85272#issuecomment-842222445)] *Allow leading pipe in \`matches!()\` patterns.* - (1 checkboxes left) - [[merge 85270](https://github.com/rust-lang/rust/issues/85270#issuecomment-854957852)] *When using \`process::Command\` on Windows, environment variable names must be case\-preserving but case\-insensitive* - (4 checkboxes left) - [[merge 84111](https://github.com/rust-lang/rust/issues/84111#issuecomment-818005366)] *Stabilize \`impl From&lt;\[(K, V); N\]&gt; for HashMap\` (and friends)* - (0 checkboxes left) Blocked on an open concern. - [[merge 84640](https://github.com/rust-lang/rust/issues/84640#issuecomment-829631948)] *Implement \`TryFrom&lt;char&gt;\` for \`u8\`* - (1 checkboxes left) - [[merge 61356](https://github.com/rust-lang/rust/issues/61356#issuecomment-856906528)] *Tracking issue for \`ops::Bound::cloned()\`* - (3 checkboxes left) - [[merge 80690](https://github.com/rust-lang/rust/issues/80690#issuecomment-846481791)] *Tracking Issue for BufWriter::into\_raw\_parts* - (3 checkboxes left) - [[merge 79704](https://github.com/rust-lang/rust/issues/79704#issuecomment-846481826)] *Tracking Issue for IntoInnerError::into\_parts etc. (io\_into\_inner\_error\_parts)* - (3 checkboxes left) - [[merge 85766](https://github.com/rust-lang/rust/issues/85766#issuecomment-849994105)] *Stabilize File::options()* - (3 checkboxes left) - [[merge 85655](https://github.com/rust-lang/rust/issues/85655#issuecomment-851174984)] *Change \`Ipv6Addr::is\_loopback\` to include IPv4\-mapped loopback addresses* - (5 checkboxes left) - [[merge 85746](https://github.com/rust-lang/rust/issues/85746#issuecomment-851666903)] *Redefine \`ErrorKind::Other\` and stop using it in std.* - (3 checkboxes left) </details> <p></p> [Amanieu (1)](https://rfcbot.rs/fcp/Amanieu), [BurntSushi (4)](https://rfcbot.rs/fcp/BurntSushi), [dtolnay (2)](https://rfcbot.rs/fcp/dtolnay), [joshtriplett (5)](https://rfcbot.rs/fcp/joshtriplett), [m-ou-se (5)](https://rfcbot.rs/fcp/m-ou-se), [sfackler (8)](https://rfcbot.rs/fcp/sfackler), [yaahc (4)](https://rfcbot.rs/fcp/yaahc) ### Nominated - [4 `rust-lang/rfcs` items](https://github.com/rust-lang/rfcs/issues?q=is%3Aopen+label%3AT-libs+label%3AI-nominated) - [[2475](https://github.com/rust-lang/rfcs/pull/2475)] *RFC: Add delete and delete\_by methods to Iterator* - Close. filter() with a stateful predicate - maybe try itertools first - Mara to reply - [[2647](https://github.com/rust-lang/rfcs/pull/2647)] *Add scoped threads to the standard library* - Question 1: Do we want something like this in std? - Jane, Josh, Mara: yes yes - Jane: This is useful in examples/books/tutorials, to not have to deal with Arc etc. - Amanieu: not convinced this is the right way of doing this. not right for `std`? - Mara: Regardless, it's useful in `#[test]`s - Amanieu: Okay, convinced - Question 2: Return type? - Jane: Concrete opaque error type instead of just Box - Josh: We can start with just `.rethrow_any_no_guarantees_which_one()`, later we can add more. - Amanieu: maybe just return `T` instead of `Result<T>` from `scope` and propagate the panic. If you don't want that, `.join()` manually on the join handle from the `spawn` inside the scope. - Josh, Mara: sounds good - Jane: I think rayon does that - Jane: Why rethrow an arbitrary panic instead of throwing an 'empty' standard error? - Rethrowing a random panic is never going to be useful. If you want that panic, .join() manually. - RFC author's github account is deleted - Ask people to continue in a new RFC, because we want this. Don't close it until a new one shows up - Josh to reply - [[2756](https://github.com/rust-lang/rfcs/pull/2756)] *New RFC: Collection Transmute* - [[2802](https://github.com/rust-lang/rfcs/pull/2802)] *RFC: Vec::recycle* - [2 `rust-lang/rust` items](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-libs+label%3AI-nominated) - [[86027](https://github.com/rust-lang/rust/issues/86027)] *Footgun with \`catch\_unwind\` when catching panic\-on\-drop types* - maybe make all Drop::drop `noexcept`? - Ask `lang` if we can just not unwind past Drop, ever. - Josh to do this. - David to comment with another suggestion - [[86048](https://github.com/rust-lang/rust/pull/86048)] *core: add unstable no\_floating\_point to disable float formatting code* ### Waiting on team - [0 `rust-lang/rfcs` items](https://github.com/rust-lang/rfcs/issues?q=is%3Aopen+label%3AT-libs+label%3AS-waiting-on-team) - [5 `rust-lang/rust` items](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-libs+label%3AS-waiting-on-team) - [[76901](https://github.com/rust-lang/rust/pull/76901)] *Implement RFC 2500 Needle API (Part 1)* - [[79965](https://github.com/rust-lang/rust/pull/79965)] *More ErrorKinds for common errnos* - [[84640](https://github.com/rust-lang/rust/pull/84640)] *Implement \`TryFrom\<char\>\` for \`u8\`* - [[84770](https://github.com/rust-lang/rust/pull/84770)] *Stabilize Bufwriter::into\_raw\_parts and IntoInnerError::into\_raw\_parts, ::into\_error* - [[85270](https://github.com/rust-lang/rust/pull/85270)] *When using \`process::Command\` on Windows, environment variable names must be case\-preserving but case\-insensitive* ### Needs decision - [7 `rust-lang/rust` items](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-libs+label%3AI-needs-decision) - [[25053](https://github.com/rust-lang/rust/issues/25053)] *UnsafeCell should implement the Copy trait* - [[26951](https://github.com/rust-lang/rust/issues/26951)] *Abort on some large allocation requests, Panic on other* - [[29494](https://github.com/rust-lang/rust/issues/29494)] *Command does not escape arguments as expected on windows* - [[37868](https://github.com/rust-lang/rust/issues/37868)] *std::process::Command's current\_dir behaves differently on Unix and Windows, with respect to relative exe paths* - [[56889](https://github.com/rust-lang/rust/issues/56889)] *Write::write\_all erroring when encountering Ok(0) interacts poorly with the contract of Write::write* - [[59878](https://github.com/rust-lang/rust/issues/59878)] *Box\<\[T\]\> should have an IntoIter implementation.* - [[62726](https://github.com/rust-lang/rust/issues/62726)] *Tracking issue for io\_slice\_advance* ## Actions - [ ] Reply to all issues/PRs discussed in this meeting, or add them to the [open action items](https://hackmd.io/ovrbJj6CRduRgSA0Wzg2zg). _Generated by [fully-automatic-rust-libs-team-triage-meeting-agenda-generator](https://github.com/rust-lang/libs-team/tree/main/tools/agenda-generator)_