Files
rust/library/std/src/sys/unix
Matthias Krüger 6d1cdcaee5 Rollup merge of #105458 - Ayush1325:blocking_spawn, r=Mark-Simulacrum
Allow blocking `Command::output`

### Problem
Currently, `Command::output` is internally implemented using `Command::spawn`. This is problematic because some targets (like UEFI) do not actually support multitasking and thus block while the program is executing. This coupling does not make much sense as `Command::output` is supposed to block until the execution is complete anyway and thus does not need to rely on a non-blocking `Child` or any other intermediate.

### Solution
This PR moves the implementation of `Command::output` to `std::sys`. This means targets can choose to implement only `Command::output` without having to implement `Command::spawn`.

### Additional Information

This was originally conceived when working on https://github.com/rust-lang/rust/pull/100316. Currently, the only target I know about that will benefit from this change is UEFI.

This PR can also be used to implement more efficient `Command::output` since the intermediate `Process` is not actually needed anymore, but that is outside the scope of this PR.

Since this is not a public API change, I'm not sure if an RFC is needed or not.
2022-12-17 23:44:26 +01:00
..
2021-08-19 12:02:39 -07:00
2022-08-20 12:49:20 -04:00
2022-06-13 20:44:39 -07:00
2022-07-20 08:57:36 +01:00
2021-04-28 14:25:04 +02:00
2022-07-20 08:57:36 +01:00
2022-08-18 10:34:40 +01:00
2022-12-07 19:58:04 +00:00
2022-05-09 11:12:32 +02:00
2022-12-07 19:58:04 +00:00
2022-08-20 12:49:20 -04:00
2022-12-08 18:12:15 +05:30
2022-12-07 19:58:04 +00:00
2022-12-05 15:05:43 -08:00