# Libs-API Meeting 2021-06-30
###### tags: `Libs Meetings` `Minutes`
**Attendees**: David, Amanieu, Mara, Jane, Josh, bstrie, The 8472
## Agenda
- Triage
- Anything else?
## Triage
### FCPs
9 open T-libs-api FCPs:
<details><summary><a href="https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-libs-api+label%3Aproposed-final-comment-period">9 <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 63567](https://github.com/rust-lang/rust/issues/63567#issuecomment-867342451)] *Tracking issue for \`#!\[feature(maybe\_uninit\_extra)\]\`* - (3 checkboxes left)
- [[merge 84111](https://github.com/rust-lang/rust/issues/84111#issuecomment-818005366)] *Stabilize \`impl From<\[(K, V); N\]> 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<char>\` for \`u8\`* - (1 checkboxes left)
- [[merge 85766](https://github.com/rust-lang/rust/issues/85766#issuecomment-849994105)] *Stabilize File::options()* - (2 checkboxes left)
- [[merge 86335](https://github.com/rust-lang/rust/issues/86335#issuecomment-865364311)] *Commit to not supporting IPv4\-in\-IPv6 addresses* - (3 checkboxes left)
- [[merge 85835](https://github.com/rust-lang/rust/issues/85835#issuecomment-860237594)] *Implement Extend<(A, B)> for (Extend<A>, Extend<B>)* - (3 checkboxes left)
- [[merge 44434](https://github.com/rust-lang/rust/issues/44434#issuecomment-865374685)] *Provide an API to extract fields from Command builder* - (4 checkboxes left)
- [[merge 75243](https://github.com/rust-lang/rust/issues/75243#issuecomment-866045324)] *Tracking Issue for \`array\_map\`* - (3 checkboxes left)
</details>
<p></p>
[Amanieu (1)](https://rfcbot.rs/fcp/Amanieu), [BurntSushi (0)](https://rfcbot.rs/fcp/BurntSushi), [dtolnay (0)](https://rfcbot.rs/fcp/dtolnay), [joshtriplett (5)](https://rfcbot.rs/fcp/joshtriplett), [m-ou-se (4)](https://rfcbot.rs/fcp/m-ou-se), [sfackler (5)](https://rfcbot.rs/fcp/sfackler), [yaahc (4)](https://rfcbot.rs/fcp/yaahc)
### Nominated
- [2 `rust-lang/rust` `T-libs-api` `I-nominated` items](https://github.com/rust-lang/rust/issues?q=is:open+label:T-libs-api+label:I-nominated)
- [[81363](https://github.com/rust-lang/rust/pull/81363)] *Remove P: Unpin bound on impl Future for Pin*
- Discussed last time. Needs review/discussion.
- Handled.
- [[82413](https://github.com/rust-lang/rust/pull/82413)] *Add \`Iterator::map\_windows\`*
- We don't have a concrete use case for generic N
- Let's investigate map_pairs/pairwise instead.
- One owned, one borrowed? Both borrowed?
- map_peek?
- Amanieu: i like this, better than the Peek interface
- David: Not worried about performance, writing this conveniently is important, and performance isn't always as important.
- David: It's O(1) (every element moved inside at most once) if we keep an array of N*2-1 length, instead of just N.
- David to review and ask for the O(1) behaviour change.
- [1 `rust-lang/rfcs` `T-libs-api` `I-nominated` items](https://github.com/rust-lang/rfcs/issues?q=is:open+label:T-libs-api+label:I-nominated)
- [[3128](https://github.com/rust-lang/rfcs/pull/3128)] *RFC: I/O Safety*
- Josh explains the proposal
- The 8472: RawFd is like a pointer, as BorrowedFd is like a reference.
- write/read/etc. on it? Or only Drop/close().
- Why not just use fs::File instead of OwnedFd?
- File is too specific to files in a filesystem.
- We already have Socket/File/etc. types.
- Semantic separation (similar to various uses of newtypes).
- FCP merge!
- Move some parts to 'future possibilities' for clarification.
### Waiting on team
- [4 `rust-lang/rust` `T-libs-api` `S-waiting-on-team` items](https://github.com/rust-lang/rust/issues?q=is:open+label:T-libs-api+label:S-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*
- [[84770](https://github.com/rust-lang/rust/pull/84770)] *Stabilize Bufwriter::into\_raw\_parts and IntoInnerError::into\_raw\_parts, ::into\_error*
- [[86344](https://github.com/rust-lang/rust/pull/86344)] *Split MaybeUninit::write into new feature gate and stabilize it*
### Needs decision
- [7 `rust-lang/rust` `T-libs-api` `I-needs-decision` items](https://github.com/rust-lang/rust/issues?q=is:open+label:T-libs-api+label:I-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)] `P-low` *Abort on some large allocation requests, Panic on other*
- [[29494](https://github.com/rust-lang/rust/issues/29494)] `P-low` *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
- [x] 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)_