Enable SSH remotes in native frontends (#117)

This commit is contained in:
2026-08-25 21:39:35 +02:00
parent 76e707f645
commit a737e74aae
22 changed files with 1214 additions and 140 deletions

View File

@@ -95,7 +95,8 @@ Private-key passphrases are stored by fingerprint in the operating-system
secret store and never appear in TOML. IronStorage does not read OpenSSH
configuration, try additional keys, prompt for passwords or
keyboard-interactive authentication, launch an agent, or invoke proxy/helper
commands. In builds with the `ssh` feature, the same configuration drives
commands. The normal CLI, TUI, and desktop builds enable the storage `ssh`
feature, so the same configuration drives
branch discovery, clone, fetch, and pull over the embedded upload-pack channel;
push and full pull-then-push synchronization use the matching embedded
receive-pack channel.
@@ -103,7 +104,10 @@ receive-pack channel.
The typed endpoint model is always available so an SSH remote remains readable
through the Rust API even when the binary was built without SSH. Such a build
returns a typed unsupported-transport error before connection or repository
mutation. The optional storage `ssh` feature contains `russh` 0.63.1 and Tokio;
mutation. The Apple bridge explicitly enables the storage `full` feature set
without `ssh`, keeping the iPhone, AutoFill, and Watch dependency graph
HTTPS-only until an Apple target opts in. The optional storage `ssh` feature
contains `russh` 0.63.1 and Tokio;
`russh` default features are disabled and the Ring backend plus RSA key support
are selected explicitly.