This patch contains a number of changes, with the main goal of getting radicle-cli to build on Windows.
In order to achieve this, I removed some features:
- The spinner in
radicle-termdoes not react to signals on Windows, of course it still reacts to signals on Unix-like platforms. - In
radiclefile limits are not set on Windows, the implementation always errors. Of course, file limits are still set on Unix-like platforms.
One feature was added: radicle and radicle-ssh now support not only Unix Domain Socket on Unix-like platforms but also Named Pipes on Windows, via the winpipe crate.
The (useless?) implementation for connecting to SSH agents via TCP streams was removed.
Some behaviour was changed in radicle-term so that it does not depend on libc and raw file descriptors (which are only available on Unix-like platforms).
This patch contains a number of changes, with the main goal of getting radicle-cli to build on Windows.
In order to achieve this, I removed some features:
- The spinner in
radicle-termdoes not react to signals on Windows, of course it still reacts to signals on Unix-like platforms. - In
radiclefile limits are not set on Windows, the implementation always errors. Of course, file limits are still set on Unix-like platforms.
One feature was added: radicle and radicle-ssh now support not only Unix Domain Socket on Unix-like platforms but also Named Pipes on Windows, via the winpipe crate.
The (useless?) implementation for connecting to SSH agents via TCP streams was removed.
Some behaviour was changed in radicle-term so that it does not depend on libc and raw file descriptors (which are only available on Unix-like platforms).
Rebase
Improve SSH encoding
Refactor home detection to not require any mutable variables and limit scope of variables.
Changes
ssh: provide path on connect error
Provide the path that is being used for connecting to the SSH agent, when an I/O error occurs.
term: provide default HELP message
Provide a default message that informs the user of the (e), (enter), and
(esc) functionality.
Unfortunately, it is not possible to provide any message that is better
customised to each case, due to inquire requiring a 'a lifetime on all its
inputs – this rules out providing any kind of String input.
The first paramter of Editor::new can already be used to provide more
contextual information. The second parameter is left configurable, but for now
Editor::HELP is used everywhere.
Rebase