---
# System prepended metadata

title: Libs-API Meeting 2023-08-29
tags: [Minutes, Libs Meetings]

---

# Libs-API Meeting 2023-08-29

###### tags: `Libs Meetings` `Minutes`

**Meeting Link**: https://meet.jit.si/rust-libs-meeting-crxoz2at8hiccp7b3ixf89qgxfymlbwr
**Attendees**: Amanieu, David, Mara, The 8472, Urgau, wayne

## Agenda

- Triage
- Anything else?

## Triage

### FCPs

1 rust-lang/rfcs T-libs-api FCPs

  - merge rust.tf/rfc3453 *Add \`f16\` and \`f128\` float types* - (5 checkboxes left)

13 rust-lang/rust T-libs-api FCPs

  - merge rust.tf/80437 *Tracking Issue for \`box\_into\_inner\`* - (1 checkboxes left)
  - merge rust.tf/52331 *Correcting Path::components on Redox* - (5 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/99262 *Tracking Issue for \`io\_error\_downcast\`* - (4 checkboxes left)
  - merge rust.tf/106655 *Tracking Issue for \`#!\[feature(offset\_of)\]\`* - (0 checkboxes left)
  - merge rust.tf/107587 *Mark \`std\` integral modules as deprecated (\`std::u32\`, \`std::i16\`, etc.)* - (3 checkboxes left)
  - merge rust.tf/62726 *Tracking issue for io\_slice\_advance* - (3 checkboxes left)
  - merge rust.tf/80552 *Tracking Issue for the GroupBy and GroupByMut iterators* - (3 checkboxes left)
  - merge rust.tf/85528 *Implement iterator specialization traits on more adapters* - (4 checkboxes left)
  - merge rust.tf/114986 *FCP process: Require 2/3 majority for FCP* - (5 checkboxes left)
  - merge rust.tf/106418 *Implement \`PartialOrd\` and \`Ord\` for \`Discriminant\`* - (1 checkboxes left)
  - merge rust.tf/115108 *Fix exit status / wait status on non\-Unix cfg(unix) platforms* - (3 checkboxes left)

[joshtriplett (4)](https://rfcbot.rs/fcp/joshtriplett), [Amanieu (5)](https://rfcbot.rs/fcp/Amanieu), [m-ou-se (9)](https://rfcbot.rs/fcp/m-ou-se),  [BurntSushi (7)](https://rfcbot.rs/fcp/BurntSushi), [dtolnay (5)](https://rfcbot.rs/fcp/dtolnay)

### (nominated) rust.tf/85122 *Tracking Issue for inherent unchecked integer methods*

Waiting on Mara to reply from last meeting.

### (nominated) rust.tf/91345 *Tracking Issue for \`result\_option\_inspect\`*

Waiting on Mara to reply from last meeting.

### (nominated) rust.tf/111090 *Tracking Issue for const \`\[u8\]::is\_ascii\` (\`const\_slice\_is\_ascii\`)*

FCP ongoing. Nominated label removed.

### (nominated) rust.tf/114564 *Attempt to describe the intent behind the \`From\` trait further*

Waiting on author. Removed nominated label.

Seems fine after applying Josh's suggestion.

Amanieu to comment.

### (nominated) rust.tf/114737 *\`std::process::Command::env\_clear\` is unusable on Windows*

Pinged windows ping group with the question.

### (nominated) rust.tf/114780 *add more explicit I/O safety documentation*

Amanieu: We should make clear that uniquely owning a fd does not mean uniquely owning the underlying file.

Mara: text already says underlying "file description" is not unique.

Mara: https://github.com/nix-rust/nix/issues/1421 is relevant. close(123) is no longer safe under these rules.

Mara: nix::unistd::close is still a safe function today.. but it's nearly impossible to write a safe library if you have to assume another library can randomly close (and reopen) your file descriptors..

Amanieu: I'll read through it. It's on Josh's review queue.


### (waiting on team) rust.tf/87920 *Tracking Issue for \`Saturating\` type*

Waiting for FCP to complete

### (waiting on team) rust.tf/114149 *\`read\_dir\` has unexpected behavior for \`""\`*

Discussed before, but didn't reach consensus. (Some of us wanted "" to work for the CWD, others didn't want "" to work.)

Mara left a comment a few weeks ago with her perspective.

The 8472 to write up the opposing perspective.

David: Either way, *a* change is necessary. (Either fix on Windows or make "" work on Unix.)

### (new change proposal) rust.tf/libs256 *Add a \`CStr::len()\` method*

Discussed last time. Mara replied earlier today.

### (new change proposal) rust.tf/libs257 *Implement \`From\<&'a &'static str\>\` for \`Arguments\<'a\>\`*

Mara: I implemented a new fmt::Arguments that supports Arguments::from_str(&str). Still tweaking perf. Can merge that soon.

David: When would we stabilize that?

Mara: We should leave it unstable for a few months, while I try out a few more fmt::Arguments implementations. But I'm pretty confident we should always support Arguments::from_str.

### (new change proposal) rust.tf/libs259 *Add openat/unlinkat/etc. abstractions to ReadDir/DirEntry/OpenOptions*

### (new change proposal) rust.tf/libs260 *Include MappedRwLocKWriteGuard from lock\_api or parking\_lot*

[Discussion about use cases]

Amanieu: I've used it twice

David: I just write a wrapper struct. The API of a guard is very very small.

Amanieu: I'm in favor of adding it. It's not obvious how to write it yourself.

Mara: You can't write it safely yourself.

Amanieu: right

Mara: lock_api has `map` and `try_map`. Do we need both?

Amanieu: probably.

Mara: Not convinced we need this. What's wrong with writing your own wrapper, keeping the original guard?

Amanieu: Then you might have to expose generic args that you don't want to expose.

Mara: Right.

Mara: Not fully convinced, but adding as unstable is fine with me.

Amanieu to reply.

### (new change proposal) rust.tf/libs261 *add \`write\_fmt\` method to String, to make \`write!\` macro work without imports*


### (stalled change proposal) rust.tf/libs152 *Feature item\_find\_many*

### (stalled change proposal) rust.tf/libs156 *&mut \[MaybeUninit\<T\>\]: Fill with value or with closure.*

### (stalled change proposal) rust.tf/libs155 *Arbitrary alternate flags in \`std::fmt::Formatter\`*

### (stalled change proposal) rust.tf/libs124 *Integrate \`Error\` trait with panic interfaces*

### (stalled change proposal) rust.tf/libs111 *Restructure ptr\_metadata to minimal support*


_Generated by [fully-automatic-rust-libs-team-triage-meeting-agenda-generator](https://github.com/rust-lang/libs-team/tree/main/tools/agenda-generator)_
