--- date: 2024-05-28 url: https://hackmd.io/rhZwtqRmTe6bZTsthrnODQ --- # Libs-API Meeting 2024-05-28 ###### tags: `Libs Meetings` `Minutes` **Meeting Link**: https://meet.jit.si/rust-libs-meeting-crxoz2at8hiccp7b3ixf89qgxfymlbwr **Attendees**: Amanieu, Chris Denton, The8472, Josh, TC ## Agenda - Triage - Anything else? ## Triage ### FCPs 20 rust-lang/rust T-libs-api FCPs - merge rust.tf/80437 *Tracking Issue for \`box\_into\_inner\`* - (1 checkboxes left) - merge rust.tf/82901 *Tracking Issue for \`Option::get\_or\_insert\_default\`* - (2 checkboxes left) - merge rust.tf/83871 *Tracking Issue for CharIndices::offset function* - (3 checkboxes left) - merge rust.tf/102012 *Tracking Issue for \`const\_waker\`* - (3 checkboxes left) - merge rust.tf/106943 *Implement DoubleEnded and ExactSize for Take\<Repeat\> and Take\<RepeatWith\>* - (3 checkboxes left) - merge rust.tf/62726 *Tracking issue for io\_slice\_advance* - (3 checkboxes left) - merge rust.tf/109402 *Implement owned ops for \`HashSet\` and \`BTreeSet\`* - (3 checkboxes left) - merge rust.tf/116113 * Generalize \`{Rc,Arc}::make\_mut()\` to unsized types.* - (3 checkboxes left) - merge rust.tf/115974 *Split core's PanicInfo and std's PanicInfo* - (2 checkboxes left) - merge rust.tf/117468 *Stabilize Wasm relaxed SIMD* - (3 checkboxes left) - merge rust.tf/101196 *Tracking Issue for \`Ready::into\_inner()\`* - (1 checkboxes left) - merge rust.tf/119131 *Tracking Issue for \`hint::assert\_unchecked\`* - (1 checkboxes left) - merge rust.tf/106418 *Implement \`PartialOrd\` and \`Ord\` for \`Discriminant\`* - (2 checkboxes left) - close rust.tf/56167 *Tracking issue for HashMap::raw\_entry* - (3 checkboxes left) - merge rust.tf/113219 *Tracking Issue for \`const\_cstr\_from\_ptr\`* - (5 checkboxes left) - merge rust.tf/55132 *Tracking issue for thread::Builder::spawn\_unchecked* - (3 checkboxes left) - merge rust.tf/123723 *Make \`std::os::tvos\`, \`std::os::visionos\` and \`std::os::watchos\` public* - (4 checkboxes left) - merge rust.tf/125112 *Document behavior of \`create\_dir\_all\` wrt. empty path* - (4 checkboxes left) - merge rust.tf/117618 *Tracking Issue for \`duration\_abs\_diff\`* - (3 checkboxes left) - merge rust.tf/53485 *Tracking issue for RFC 2351, "Add \`is\_sorted\` to the standard library"* - (4 checkboxes left) [m-ou-se (11)](https://rfcbot.rs/fcp/m-ou-se), [nikomatsakis (2)](https://rfcbot.rs/fcp/nikomatsakis), [tmandry (2)](https://rfcbot.rs/fcp/tmandry), [scottmcm (1)](https://rfcbot.rs/fcp/scottmcm), [Amanieu (7)](https://rfcbot.rs/fcp/Amanieu), [BurntSushi (10)](https://rfcbot.rs/fcp/BurntSushi), [joshtriplett (17)](https://rfcbot.rs/fcp/joshtriplett), [yaahc (2)](https://rfcbot.rs/fcp/yaahc), [dtolnay (2)](https://rfcbot.rs/fcp/dtolnay), [pnkfelix (2)](https://rfcbot.rs/fcp/pnkfelix) ### (nominated) rust.tf/libs212 *\`Option::is\_none\_or\`* Accepted. Josh: Could folks also give feedback on the `is` [RFC](https://github.com/rust-lang/rfcs/pull/3573), please? ### (nominated) rust.tf/libs362 *Make \`ptr::from\_raw\_parts\` more general* Accepted. ### (nominated) rust.tf/79024 *Tracking Issue for #!\[feature(async\_iterator)\]* Stale nomination, already discussed (and deferred to wg-async + lang), un-nominating. ### (nominated) rust.tf/103765 *Tracking Issue for \`Error\` in \`core\`* Starting FCP. ### (nominated) rust.tf/rfc3642 *\[RFC\] Thread spawn hook (inheriting thread locals)* Amanieu: I'm concerned about the global nature of this. If the only purpose of this is to enable inherited thread locals, then we should do that more directly. Josh: I'm curious what that implementation would look like. Would this essentially just be a spawn hook? Amanieu: We could add an attribute in the thread locals. The 8472: If that's possible, that sounds maybe reasonable. Josh: If we already had a lang mechanisms for scoped contexts, would we use that for this? (Discussion of that.) (Let's defer until Mara is available.) ### (waiting on team) rust.tf/119550 *Rename \`AsyncIterator\` back to \`Stream\`, introduce an AFIT\-based \`AsyncIterator\` trait* Not waiting on our team. ### (new change proposal) rust.tf/libs381 *Add method for computing the difference of two unsigned integers in a signed* `fn checked_signed_diff(self, other: Self) -> Option<Signed>` Discussion about naming and bikeshedding ensued. Conclusion: `checked_signed_diff` makes sense. Ask author to change signature, then accept. ### (new change proposal) rust.tf/libs382 *Bring back \`subslice\_offset\` methods* Action items: - Return `Option` - Rename `substr_range`, `elem_offset` - Maybe add `subslice_offset` Josh to reply ### (new change proposal) rust.tf/libs383 *Add \`FRAC\_1\_SQRT\_2PI\` constant* Looks good, ping Mara for second opinion. Josh to reply ### (new change proposal) rust.tf/libs384 *Add an mpmc concurrent queue* - Needs a proper API proposal. - Can we do this by just changing the existing types? - Add `mpmc` or `channel` module alias? The8472 to reply ### (new change proposal) rust.tf/libs385 *Add \`Iterator::as\_rev\`* Reject. This doesn't seem sufficiently justified over just `.as_ref().rev()`. Josh to reply ### (stalled change proposal) rust.tf/libs154 *Add \`core::iter::chain\` method* Accept. Amanieu to reply. ### (stalled change proposal) rust.tf/libs142 *Add \`take\_while\_inclusive\` method to \`Iterator\`* Defer until we can do a full review of itertools for uplifting. Amanieu to reply. ### (stalled change proposal) rust.tf/libs117 *ACP: Unchecked construction of \`core::time::Duration\`* Prefer `new_checked` instead. The8472 to reply. ### (stalled change proposal) rust.tf/libs255 *Adding \`set\_route\` to \`sys::unix::net\`* ### (stalled change proposal) rust.tf/libs248 *ACP: Add \`finish\_non\_exhaustive\` to \`DebugList\`, \`DebugMap\`, and\`DebugTuple\`* _Generated by [fully-automatic-rust-libs-team-triage-meeting-agenda-generator](https://github.com/rust-lang/libs-team/tree/main/tools/agenda-generator)_