From dc1ff882c5fb734e3e5cc6bc0661531c9323b305 Mon Sep 17 00:00:00 2001 From: Lorenz Leutgeb Date: Sun, 8 Dec 2024 12:17:12 +0100 Subject: [PATCH] cli/sync: Also print node addresses --- radicle-cli/examples/git/git-push-amend.md | 2 +- radicle-cli/examples/git/git-push-converge.md | 24 ++--- radicle-cli/examples/git/git-push-diverge.md | 2 +- radicle-cli/examples/git/git-push-rollback.md | 2 +- radicle-cli/examples/git/git-tag.md | 4 +- radicle-cli/examples/rad-clone-all.md | 2 +- radicle-cli/examples/rad-clone-connect.md | 4 +- radicle-cli/examples/rad-clone-directory.md | 4 +- .../examples/rad-clone-partial-fail.md | 4 +- radicle-cli/examples/rad-clone.md | 2 +- radicle-cli/examples/rad-fetch.md | 2 +- radicle-cli/examples/rad-id-collaboration.md | 36 ++++---- radicle-cli/examples/rad-id-conflict.md | 6 +- radicle-cli/examples/rad-id-multi-delegate.md | 6 +- radicle-cli/examples/rad-id-threshold.md | 10 +-- .../examples/rad-init-private-clone-seed.md | 4 +- .../examples/rad-init-private-clone.md | 4 +- radicle-cli/examples/rad-init-private-seed.md | 4 +- .../examples/rad-patch-checkout-force.md | 2 +- radicle-cli/examples/rad-patch-delete.md | 2 +- radicle-cli/examples/rad-patch-pull-update.md | 2 +- .../examples/rad-push-and-pull-patches.md | 2 +- radicle-cli/examples/rad-sync.md | 12 +-- .../workflow/5-patching-maintainer.md | 2 +- .../workflow/6-pulling-contributor.md | 2 +- radicle-cli/src/commands/sync.rs | 90 ++++++++++++------- 26 files changed, 133 insertions(+), 103 deletions(-) diff --git a/radicle-cli/examples/git/git-push-amend.md b/radicle-cli/examples/git/git-push-amend.md index f656d626..a547341d 100644 --- a/radicle-cli/examples/git/git-push-amend.md +++ b/radicle-cli/examples/git/git-push-amend.md @@ -5,7 +5,7 @@ c036c0d89ce26aef3ad7da402157dba16b5163b4 ``` ~bob $ rad sync --fetch -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` diff --git a/radicle-cli/examples/git/git-push-converge.md b/radicle-cli/examples/git/git-push-converge.md index ef9f54aa..62d90aee 100644 --- a/radicle-cli/examples/git/git-push-converge.md +++ b/radicle-cli/examples/git/git-push-converge.md @@ -14,15 +14,15 @@ responsibilities: ``` ~bob $ rad sync --fetch -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 2 seed(s) ``` ``` ~eve $ rad sync --fetch -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 2 seed(s) ``` @@ -58,14 +58,14 @@ found` error is showing up: ``` ~alice $ rad remote add did:key:z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk --name bob ✓ Follow policy updated for z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk (bob) -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Remote bob added ✓ Remote-tracking branch bob/master created for z6Mkt67…v4N1tRk $ rad remote add did:key:z6Mkux1aUQD2voWWukVb5nNUR7thrHveQG4pDQua8nVhib7Z --name eve ✓ Follow policy updated for z6Mkux1aUQD2voWWukVb5nNUR7thrHveQG4pDQua8nVhib7Z (eve) -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Remote eve added ✓ Remote-tracking branch eve/master created for z6Mkux1…nVhib7Z ``` @@ -100,8 +100,8 @@ To rad://z42hL2jL4XNk6K8oHQaSWfMgCL7ji/z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkE ``` ~bob $ rad remote add did:key:z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --name alice ✓ Follow policy updated for z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi (alice) -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Remote alice added ✓ Remote-tracking branch alice/master created for z6MknSL…StBU8Vi $ git reset --hard alice/master @@ -126,8 +126,8 @@ Once Eve also resets to the merge commits, the canonical `master` is set to this ``` ~eve $ rad remote add did:key:z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --name alice ✓ Follow policy updated for z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi (alice) -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Remote alice added ✓ Remote-tracking branch alice/master created for z6MknSL…StBU8Vi $ git reset --hard alice/master diff --git a/radicle-cli/examples/git/git-push-diverge.md b/radicle-cli/examples/git/git-push-diverge.md index cbf8fb3d..a9b86e54 100644 --- a/radicle-cli/examples/git/git-push-diverge.md +++ b/radicle-cli/examples/git/git-push-diverge.md @@ -13,7 +13,7 @@ Then, as Bob, we commit some code on top of the canonical head: ``` ~bob $ rad sync --fetch -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) $ rad inspect --delegates did:key:z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi (alice) diff --git a/radicle-cli/examples/git/git-push-rollback.md b/radicle-cli/examples/git/git-push-rollback.md index 1994624b..b0c47845 100644 --- a/radicle-cli/examples/git/git-push-rollback.md +++ b/radicle-cli/examples/git/git-push-rollback.md @@ -12,7 +12,7 @@ Bob then syncs these changes and adds a new commit: ``` ~bob $ rad sync --fetch -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) $ git commit -m "Third commit" --allow-empty -q $ git push rad diff --git a/radicle-cli/examples/git/git-tag.md b/radicle-cli/examples/git/git-tag.md index 6768f8c9..96b74e9f 100644 --- a/radicle-cli/examples/git/git-tag.md +++ b/radicle-cli/examples/git/git-tag.md @@ -37,7 +37,7 @@ Bob fetches the tag from Alice, by adding her as a remote: $ cd heartwood $ rad remote add z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --name alice ✓ Follow policy updated for z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi (alice) -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Remote alice added ✓ Remote-tracking branch alice/master created for z6MknSL…StBU8Vi ``` @@ -73,7 +73,7 @@ update of the tag: ``` ~bob $ rad sync -f -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` diff --git a/radicle-cli/examples/rad-clone-all.md b/radicle-cli/examples/rad-clone-all.md index 0c1378b5..9ee1980b 100644 --- a/radicle-cli/examples/rad-clone-all.md +++ b/radicle-cli/examples/rad-clone-all.md @@ -1,7 +1,7 @@ ``` $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --scope all ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'all' -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi diff --git a/radicle-cli/examples/rad-clone-connect.md b/radicle-cli/examples/rad-clone-connect.md index 4d824774..852906ec 100644 --- a/radicle-cli/examples/rad-clone-connect.md +++ b/radicle-cli/examples/rad-clone-connect.md @@ -5,9 +5,9 @@ automatically connect to the necessary seeds. $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'all' ✓ Connecting to z6Mkt67…v4N1tRk@[..] -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Connecting to z6MknSL…StBU8Vi@[..] -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi diff --git a/radicle-cli/examples/rad-clone-directory.md b/radicle-cli/examples/rad-clone-directory.md index 02f48cb2..f499fac5 100644 --- a/radicle-cli/examples/rad-clone-directory.md +++ b/radicle-cli/examples/rad-clone-directory.md @@ -4,7 +4,7 @@ by specifying the directory in the `rad clone` command: ``` $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --scope followed Developer/Radicle ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'followed' -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Creating checkout in ./Developer/Radicle.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi @@ -22,6 +22,6 @@ and is not empty, will fail: ``` (fail) $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --scope followed Developer/Radicle -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✗ Error: the directory path "Developer/Radicle" already exists ``` diff --git a/radicle-cli/examples/rad-clone-partial-fail.md b/radicle-cli/examples/rad-clone-partial-fail.md index c0270700..6fd8dd6b 100644 --- a/radicle-cli/examples/rad-clone-partial-fail.md +++ b/radicle-cli/examples/rad-clone-partial-fail.md @@ -16,8 +16,8 @@ still returns successfully. ``` $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --timeout 3 ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'all' -✗ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. error: failed to perform fetch handshake -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✗ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. error: failed to perform fetch handshake +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✗ Connecting to z6MksFq…bS9wzpT@[..].. error: connection reset ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added diff --git a/radicle-cli/examples/rad-clone.md b/radicle-cli/examples/rad-clone.md index df2662ca..4dc68cd8 100644 --- a/radicle-cli/examples/rad-clone.md +++ b/radicle-cli/examples/rad-clone.md @@ -4,7 +4,7 @@ To create a local copy of a repository on the radicle network, we use the ``` $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --scope followed ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'followed' -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi diff --git a/radicle-cli/examples/rad-fetch.md b/radicle-cli/examples/rad-fetch.md index c4b32464..8e03ce15 100644 --- a/radicle-cli/examples/rad-fetch.md +++ b/radicle-cli/examples/rad-fetch.md @@ -19,7 +19,7 @@ by passing the `--fetch` option. ``` $ rad sync --fetch rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` diff --git a/radicle-cli/examples/rad-id-collaboration.md b/radicle-cli/examples/rad-id-collaboration.md index 5b21d7bb..d36892e2 100644 --- a/radicle-cli/examples/rad-id-collaboration.md +++ b/radicle-cli/examples/rad-id-collaboration.md @@ -9,8 +9,8 @@ to have a fork of the project and Alice must be aware of the fork: ``` ~bob $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --scope followed ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'followed' -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi @@ -50,15 +50,15 @@ So, instead Alice needs to first follow Bob and fetch his references: $ rad follow did:key:z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk --alias bob ✓ Follow policy updated for z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk (bob) $ rad sync -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. ✓ Fetched repository from 2 seed(s) ✓ Synced with 1 node(s) $ rad id update --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --title "Add Bob" --description "" --threshold 2 --delegate did:key:z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk --no-confirm -q 069e7d58faa9a7473d27f5510d676af33282796f $ rad sync -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. ✓ Fetched repository from 2 seed(s) ✓ Synced with 3 node(s) ``` @@ -67,8 +67,8 @@ Bob can confirm that he was made a delegate by fetching the update: ``` ~bob $ rad sync -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. ✓ Fetched repository from 2 seed(s) ✓ Synced with 1 node(s) $ rad inspect --delegates @@ -83,8 +83,8 @@ between Alice and Bob. Eve first needs to setup a fork: ``` ~eve $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --scope followed ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'followed' -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi @@ -107,8 +107,8 @@ Bob then adds Eve as a delegate: $ rad id update --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --title "Add Eve" --description "" --delegate did:key:z6Mkux1aUQD2voWWukVb5nNUR7thrHveQG4pDQua8nVhib7Z --no-confirm -q 3cd3c7f9900de0fcb19705856a7cc339a38fb0b3 $ rad sync -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. ✓ Fetched repository from 2 seed(s) ✓ Synced with 3 node(s) ``` @@ -122,8 +122,8 @@ the change to meet a quorum of votes (`votes >= (delegates / 2) + 1`): ``` ~alice $ rad sync -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. ✓ Fetched repository from 2 seed(s) ✓ Nothing to announce, already in sync with 3 node(s) (see `rad sync status`) $ rad id list @@ -157,8 +157,8 @@ since she has become a delegate: ``` ~alice $ rad sync --timeout 3 -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. ✓ Fetched repository from 2 seed(s) ✓ Synced with 3 node(s) $ rad inspect rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --sigrefs @@ -173,8 +173,8 @@ see that both seeds are `synced`: ``` ~eve $ rad sync -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkvVv…Z1Ct4tD@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MkuPZ…xEuaPUp@[..].. ✓ Fetched repository from 2 seed(s) ✓ Synced with 3 node(s) $ rad sync status diff --git a/radicle-cli/examples/rad-id-conflict.md b/radicle-cli/examples/rad-id-conflict.md index 11f7e177..49d65306 100644 --- a/radicle-cli/examples/rad-id-conflict.md +++ b/radicle-cli/examples/rad-id-conflict.md @@ -7,7 +7,7 @@ $ rad id update --title "Add Bob" --description "Add Bob as a delegate" --delega ``` ~bob $ cd heartwood $ rad sync --fetch rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` @@ -28,7 +28,7 @@ revisions. ``` ~alice $ rad sync --fetch rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Fetched repository from 1 seed(s) $ rad id list ╭─────────────────────────────────────────────────────────────────────────────────╮ @@ -62,7 +62,7 @@ accepted now. ``` ~bob $ rad sync --fetch rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` ``` ~bob (fail) diff --git a/radicle-cli/examples/rad-id-multi-delegate.md b/radicle-cli/examples/rad-id-multi-delegate.md index 26d5cb06..d2d057cf 100644 --- a/radicle-cli/examples/rad-id-multi-delegate.md +++ b/radicle-cli/examples/rad-id-multi-delegate.md @@ -6,7 +6,7 @@ $ rad id update --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --title "Add Bob" --des ``` ~bob $ rad watch --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --node z6Mkux1aUQD2voWWukVb5nNUR7thrHveQG4pDQua8nVhib7Z -r 'refs/rad/sigrefs' -t c9a828fc2fb01f893d6e6e9e17b9092dea2b3aba -i 500 --timeout 5000 $ rad sync --fetch rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) $ rad id --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji ╭────────────────────────────────────────────────────────────────────────────────╮ @@ -57,8 +57,8 @@ $ rad id update --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --title "Add Eve" --des ``` ~alice $ rad sync --fetch rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Fetched repository from 2 seed(s) $ rad inspect rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --delegates did:key:z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi (alice) diff --git a/radicle-cli/examples/rad-id-threshold.md b/radicle-cli/examples/rad-id-threshold.md index 73d6ccc6..482f1b9a 100644 --- a/radicle-cli/examples/rad-id-threshold.md +++ b/radicle-cli/examples/rad-id-threshold.md @@ -96,7 +96,7 @@ errors: ``` ~seed $ rad sync rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji -f -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` @@ -170,8 +170,8 @@ sync` and fetch his references: ``` ~bob $ rad clone rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji ✓ Seeding policy updated for rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji with scope 'all' -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi @@ -192,8 +192,8 @@ $ rad fork ``` ~alice $ rad sync -f -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Fetched repository from 2 seed(s) $ rad inspect --sigrefs z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi ae3c6b77dc1ed51c1c1e6a2772339c2779fa9ba8 diff --git a/radicle-cli/examples/rad-init-private-clone-seed.md b/radicle-cli/examples/rad-init-private-clone-seed.md index 1094892a..859f86dc 100644 --- a/radicle-cli/examples/rad-init-private-clone-seed.md +++ b/radicle-cli/examples/rad-init-private-clone-seed.md @@ -31,7 +31,7 @@ $ rad inspect --identity $ rad ls --all --private $ rad clone rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu --seed z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --timeout 1 ✓ Seeding policy updated for rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu with scope 'all' -✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi.. +✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi @@ -49,5 +49,5 @@ We can also use `rad seed` to seed and fetch without creating a checkout. ``` ~bob $ rad seed rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu --from z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --timeout 1 ✓ Seeding policy exists for rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu with scope 'all' -✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi.. +✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi@[..].. ``` diff --git a/radicle-cli/examples/rad-init-private-clone.md b/radicle-cli/examples/rad-init-private-clone.md index fe57bcfc..89f94965 100644 --- a/radicle-cli/examples/rad-init-private-clone.md +++ b/radicle-cli/examples/rad-init-private-clone.md @@ -7,7 +7,7 @@ $ rad ls ``` ~bob (fail) $ rad clone rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu --seed z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --timeout 1 ✓ Seeding policy updated for rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu with scope 'all' -✗ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi.. error: failed to perform fetch handshake +✗ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi@[..].. error: failed to perform fetch handshake ✗ Error: repository rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu not found ``` @@ -26,7 +26,7 @@ that Alice has the repo after she announced her refs: ``` ~bob $ rad sync rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu --fetch -✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi.. +✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) $ rad ls --private --all ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────╮ diff --git a/radicle-cli/examples/rad-init-private-seed.md b/radicle-cli/examples/rad-init-private-seed.md index 7db7de8b..50132530 100644 --- a/radicle-cli/examples/rad-init-private-seed.md +++ b/radicle-cli/examples/rad-init-private-seed.md @@ -24,7 +24,7 @@ He has to specify a seed that isn't in his routing table: ``` ~bob $ rad sync rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu --fetch --seed z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi -✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi.. +✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` @@ -42,7 +42,7 @@ seed succeeds. ``` ~bob $ rad sync rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu --fetch --seed z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi --seed z6MkwPUeUS2fJMfc2HZN1RQTQcTTuhw4HhPySB8JeUg2mVvx -✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi.. +✓ Fetching rad:z2ug5mwNKZB8KGpBDRTrWHAMbvHCu from z6MknSL…StBU8Vi@[..].. ! Warning: no addresses found for z6MkwPUeUS2fJMfc2HZN1RQTQcTTuhw4HhPySB8JeUg2mVvx, skipping.. ✓ Fetched repository from 1 seed(s) ``` diff --git a/radicle-cli/examples/rad-patch-checkout-force.md b/radicle-cli/examples/rad-patch-checkout-force.md index c08c0373..279959e1 100644 --- a/radicle-cli/examples/rad-patch-checkout-force.md +++ b/radicle-cli/examples/rad-patch-checkout-force.md @@ -24,7 +24,7 @@ On the other end, Bob uses `rad patch checkout` to view the patch: ``` ~bob $ cd heartwood $ rad sync -f -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) $ rad patch checkout aa45913 --name alice-init ✓ Switched to branch alice-init at revision aa45913 diff --git a/radicle-cli/examples/rad-patch-delete.md b/radicle-cli/examples/rad-patch-delete.md index 200124cb..5d33d685 100644 --- a/radicle-cli/examples/rad-patch-delete.md +++ b/radicle-cli/examples/rad-patch-delete.md @@ -19,7 +19,7 @@ To rad://z42hL2jL4XNk6K8oHQaSWfMgCL7ji/z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkE ``` ~bob $ cd heartwood $ rad sync -f -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) $ rad patch comment 6c61ef1 -m "I think we should use MIT" ╭───────────────────────────╮ diff --git a/radicle-cli/examples/rad-patch-pull-update.md b/radicle-cli/examples/rad-patch-pull-update.md index 9f93cfa8..8a280467 100644 --- a/radicle-cli/examples/rad-patch-pull-update.md +++ b/radicle-cli/examples/rad-patch-pull-update.md @@ -23,7 +23,7 @@ To push changes, run `git push`. ``` ~bob $ rad clone rad:zhbMU4DUXrzB8xT6qAJh6yZ7bFMK ✓ Seeding policy updated for rad:zhbMU4DUXrzB8xT6qAJh6yZ7bFMK with scope 'all' -✓ Fetching rad:zhbMU4DUXrzB8xT6qAJh6yZ7bFMK from z6MknSL…StBU8Vi.. +✓ Fetching rad:zhbMU4DUXrzB8xT6qAJh6yZ7bFMK from z6MknSL…StBU8Vi@[..].. ✓ Creating checkout in ./heartwood.. ✓ Remote alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi added ✓ Remote-tracking branch alice@z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi/master created for z6MknSL…StBU8Vi diff --git a/radicle-cli/examples/rad-push-and-pull-patches.md b/radicle-cli/examples/rad-push-and-pull-patches.md index 8c5f2e1e..1fee53d3 100644 --- a/radicle-cli/examples/rad-push-and-pull-patches.md +++ b/radicle-cli/examples/rad-push-and-pull-patches.md @@ -17,7 +17,7 @@ $ rad patch checkout d004b67 ✓ Branch patch/d004b67 setup to track rad/patches/d004b67355456c46de10c0d287e4a791ad1a6945 $ rad remote add z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk ✓ Follow policy updated for z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Remote bob@z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk added ✓ Remote-tracking branch bob@z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk/master created for z6Mkt67…v4N1tRk $ git checkout master -q diff --git a/radicle-cli/examples/rad-sync.md b/radicle-cli/examples/rad-sync.md index 172f9f62..851b0382 100644 --- a/radicle-cli/examples/rad-sync.md +++ b/radicle-cli/examples/rad-sync.md @@ -55,8 +55,8 @@ We can also use the `--fetch` option to only fetch objects: ``` $ rad sync --fetch -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Fetched repository from 2 seed(s) ``` @@ -64,8 +64,8 @@ Specifying both `--fetch` and `--announce` is equivalent to specifying none: ``` $ rad sync --fetch --announce -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Fetched repository from 2 seed(s) ✓ Nothing to announce, already in sync with 2 node(s) (see `rad sync status`) ``` @@ -74,7 +74,7 @@ It's also possible to use the `--seed` flag to only sync with a specific node: ``` $ rad sync --fetch --seed z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Fetched repository from 1 seed(s) ``` @@ -87,7 +87,7 @@ $ rad issue open --title "Test `rad sync --replicas`" --description "Check that ``` $ rad sync --replicas 1 -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkux1…nVhib7Z@[..].. ✓ Fetched repository from 1 seed(s) ✓ Synced with 1 node(s) ``` diff --git a/radicle-cli/examples/workflow/5-patching-maintainer.md b/radicle-cli/examples/workflow/5-patching-maintainer.md index f1f3ee0e..b20a2e34 100644 --- a/radicle-cli/examples/workflow/5-patching-maintainer.md +++ b/radicle-cli/examples/workflow/5-patching-maintainer.md @@ -8,7 +8,7 @@ of this. ``` $ rad remote add z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk --name bob --sync --fetch ✓ Follow policy updated for z6Mkt67GdsW7715MEfRuP4pSZxJRJh6kj6Y48WRqVv4N1tRk (bob) -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6Mkt67…v4N1tRk@[..].. ✓ Remote bob added ✓ Remote-tracking branch bob/master created for z6Mkt67…v4N1tRk ``` diff --git a/radicle-cli/examples/workflow/6-pulling-contributor.md b/radicle-cli/examples/workflow/6-pulling-contributor.md index 2e57b5c7..5d3f2083 100644 --- a/radicle-cli/examples/workflow/6-pulling-contributor.md +++ b/radicle-cli/examples/workflow/6-pulling-contributor.md @@ -10,7 +10,7 @@ f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 Then, we call `rad sync --fetch` to fetch from the maintainer: ``` $ rad sync --fetch -✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi.. +✓ Fetching rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji from z6MknSL…StBU8Vi@[..].. ✓ Fetched repository from 1 seed(s) ``` diff --git a/radicle-cli/src/commands/sync.rs b/radicle-cli/src/commands/sync.rs index d9db82d7..e8b52e56 100644 --- a/radicle-cli/src/commands/sync.rs +++ b/radicle-cli/src/commands/sync.rs @@ -9,9 +9,9 @@ use anyhow::{anyhow, Context as _}; use radicle::node; use radicle::node::address::Store; -use radicle::node::AliasStore; -use radicle::node::Seed; -use radicle::node::{FetchResult, FetchResults, Handle as _, Node, SyncStatus}; +use radicle::node::{ + AliasStore, FetchResult, FetchResults, Handle as _, Node, Seed, Session, SyncStatus, +}; use radicle::prelude::{NodeId, Profile, RepoId}; use radicle::storage::{ReadStorage, RemoteRepository}; use radicle_term::Element; @@ -461,25 +461,35 @@ pub fn fetch( // Fetch from specified seeds, connecting to them if necessary. for nid in &settings.seeds { - if node.session(*nid)?.is_some_and(|s| s.is_connected()) { - fetch_from(rid, nid, settings.timeout, &mut results, node)?; - } else { - let addrs = db.addresses_of(nid)?; - if addrs.is_empty() { - results.push( + match node.session(*nid)? { + Some(session) if session.is_connected() => { + fetch_from( + rid, + nid, + &session.addr, + settings.timeout, + &mut results, + node, + )?; + } + _ => { + let addrs = db.addresses_of(nid)?; + if addrs.is_empty() { + results.push( + *nid, + FetchResult::Failed { + reason: format!("no addresses found in routing table for {nid}"), + }, + ); + term::warning(format!("no addresses found for {nid}, skipping..")); + } else if let Some(addr) = connect( *nid, - FetchResult::Failed { - reason: format!("no addresses found in routing table for {nid}"), - }, - ); - term::warning(format!("no addresses found for {nid}, skipping..")); - } else if connect( - *nid, - addrs.into_iter().map(|ka| ka.addr), - settings.timeout, - node, - ) { - fetch_from(rid, nid, settings.timeout, &mut results, node)?; + addrs.into_iter().map(|ka| ka.addr), + settings.timeout, + node, + ) { + fetch_from(rid, nid, &addr, settings.timeout, &mut results, node)?; + } } } // We are done when we either hit our replica count, @@ -512,7 +522,18 @@ pub fn fetch( let Some(nid) = connected.pop_front() else { break; }; - fetch_from(rid, &nid, settings.timeout, &mut results, node)?; + if let Some(session) = node.session(nid)? { + fetch_from( + rid, + &nid, + &session.addr, + settings.timeout, + &mut results, + node, + )?; + } else { + log::warn!("Could not obtain session for seed with ID {nid}, even though it should be connected.") + } } // Try to connect to disconnected seeds and fetch from them. @@ -524,13 +545,13 @@ pub fn fetch( // Skip our own node. continue; } - if connect( + if let Some(addr) = connect( seed.nid, seed.addrs.into_iter().map(|ka| ka.addr), settings.timeout, node, ) { - fetch_from(rid, &seed.nid, settings.timeout, &mut results, node)?; + fetch_from(rid, &seed.nid, &addr, settings.timeout, &mut results, node)?; } } @@ -542,7 +563,7 @@ fn connect( addrs: impl Iterator, timeout: time::Duration, node: &mut Node, -) -> bool { +) -> Option { // Try all addresses until one succeeds. for addr in addrs { let spinner = term::spinner(format!( @@ -552,7 +573,7 @@ fn connect( )); let cr = node.connect( nid, - addr, + addr.clone(), node::ConnectOptions { persistent: false, timeout, @@ -562,7 +583,7 @@ fn connect( match cr { Ok(node::ConnectResult::Connected) => { spinner.finish(); - return true; + return Some(addr); } Ok(node::ConnectResult::Disconnected { reason }) => { spinner.error(reason); @@ -574,20 +595,29 @@ fn connect( } } } - false + None } fn fetch_from( rid: RepoId, seed: &NodeId, + addr: &node::Address, timeout: time::Duration, results: &mut FetchResults, node: &mut Node, ) -> Result<(), node::Error> { + // NOTE: addr is only used for better output. + // Whether it actually corresponds to the addr + // of the connection to seed is not checked. + // There could be races. + // Our goal is to provide better output to the user, + // and it should be good enough for that. + let spinner = term::spinner(format!( - "Fetching {} from {}..", + "Fetching {} from {}@{}..", term::format::tertiary(rid), - term::format::tertiary(term::format::node(seed)) + term::format::tertiary(term::format::node(seed)), + addr, )); let result = node.fetch(rid, *seed, timeout)?;