cli: Improve syncing code
- radicle: Don’t update sync status redundantly
- cli: Correctly honor sync timeout
- cli: Unify all syncing code
See commits for details.
16 files changed
+432
-292
9f4227d3
→
25c71627
modified rad-patch.1.adoc
@@ -186,6 +186,9 @@ The full list of options follows:
|
|
|
|
|
|
| + | |
| + | |
| + | |
|
|
|
|
|
modified radicle-cli/src/commands/clone.rs
@@ -23,6 +23,7 @@ use radicle::storage::RepositoryError;
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -62,7 +63,7 @@ pub struct Options {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -74,7 +75,7 @@ impl Args for Options {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -150,8 +151,7 @@ pub fn run(options: Options, ctx: impl term::Context) -> anyhow::Result<()> {
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
|
|
|
@@ -236,8 +236,7 @@ pub fn clone<G: Signer>(
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
|
|
|
@@ -260,7 +259,7 @@ pub fn clone<G: Signer>(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified radicle-cli/src/commands/issue.rs
@@ -593,7 +593,13 @@ pub fn run(options: Options, ctx: impl term::Context) -> anyhow::Result<()> {
|
|
|
|
|
|
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
modified radicle-cli/src/commands/patch.rs
@@ -847,7 +847,13 @@ pub fn run(options: Options, ctx: impl term::Context) -> anyhow::Result<()> {
|
|
|
|
|
|
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
modified radicle-cli/src/commands/remote/add.rs
@@ -1,5 +1,4 @@
|
|
| - | |
|
|
|
|
|
@@ -10,6 +9,7 @@ use radicle_crypto::PublicKey;
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -31,8 +31,7 @@ pub fn run(
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
|
|
|
modified radicle-cli/src/commands/seed.rs
@@ -1,5 +1,4 @@
|
|
| - | |
|
|
|
|
|
@@ -10,6 +9,7 @@ use radicle::{prelude::*, storage, Node};
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -117,8 +117,7 @@ pub fn run(options: Options, ctx: impl term::Context) -> anyhow::Result<()> {
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
|
|
|
modified radicle-cli/src/commands/sync.rs
@@ -1,7 +1,6 @@
|
|
|
|
|
|
| - | |
|
|
|
|
|
@@ -12,9 +11,11 @@ use radicle::node::AliasStore;
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
| + | |
| + | |
|
|
|
|
|
@@ -100,7 +101,7 @@ impl FromStr for SortBy {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -109,58 +110,12 @@ pub enum SyncMode {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|
@@ -174,7 +129,6 @@ pub struct Options {
|
|
|
|
|
|
| - | |
|
|
|
|
|
@@ -266,16 +220,12 @@ impl Args for Options {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| + | |
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -287,7 +237,6 @@ impl Args for Options {
|
|
|
|
|
|
| - | |
|
|
|
|
|
@@ -335,7 +284,7 @@ pub fn run(options: Options, ctx: impl term::Context) -> anyhow::Result<()> {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -348,14 +297,7 @@ pub fn run(options: Options, ctx: impl term::Context) -> anyhow::Result<()> {
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
|
|
|
|
|
@@ -436,8 +378,7 @@ fn sync_status(
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
|
|
|
@@ -447,90 +388,18 @@ fn announce_refs(
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|
@@ -546,8 +415,7 @@ pub fn announce_inventory(mut node: Node) -> anyhow::Result<()> {
|
|
|
|
|
|
| - | |
| - | |
| + | |
|
|
|
|
|
@@ -567,7 +435,7 @@ pub fn fetch(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -582,7 +450,7 @@ pub fn fetch(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -598,10 +466,10 @@ pub fn fetch(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified radicle-cli/src/node.rs
@@ -1,44 +1,274 @@
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
|
|
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
| - | |
| + | |
|
|
| - | |
| + | |
|
|
|
|
|
|
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
|
|
|
|
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -48,6 +278,25 @@ fn announce_(rid: RepoId, node: &mut Node) -> Result<(), radicle::node::Error> {
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| + | |
|
modified radicle-cli/tests/commands.rs
@@ -332,7 +332,7 @@ fn rad_id() {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -540,7 +540,7 @@ fn rad_id_conflict() {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -982,7 +982,7 @@ fn rad_clean() {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -1116,7 +1116,7 @@ fn rad_clone_all() {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -1762,13 +1762,13 @@ fn rad_remote() {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified radicle-node/src/service.rs
@@ -1054,7 +1054,7 @@ where
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified radicle-node/src/test/environment.rs
@@ -308,14 +308,23 @@ impl<G: Signer + cyphernet::Ecdh> NodeHandle<G> {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
modified radicle-remote-helper/src/lib.rs
@@ -77,6 +77,8 @@ pub struct Allow {
|
|
|
|
|
|
| + | |
| + | |
|
|
|
|
|
@@ -210,6 +212,7 @@ fn push_option(args: &[&str], opts: &mut Options) -> Result<(), Error> {
|
|
|
|
|
|
| + | |
|
|
|
|
|
modified radicle-remote-helper/src/push.rs
@@ -1,10 +1,8 @@
|
|
| - | |
| + | |
|
|
| - | |
|
|
|
|
| - | |
|
|
|
|
|
@@ -18,19 +16,16 @@ use radicle::explorer::ExplorerResource;
|
|
|
|
|
|
| - | |
|
|
|
|
|
|
|
|
|
|
| - | |
| + | |
| + | |
|
|
|
|
|
|
| - | |
| - | |
| - | |
|
|
|
|
|
@@ -89,7 +84,7 @@ pub enum Error {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -329,8 +324,8 @@ pub fn run(
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -342,7 +337,7 @@ pub fn run(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -397,7 +392,7 @@ fn patch_open<G: Signer>(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -431,8 +426,8 @@ fn patch_open<G: Signer>(
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -509,7 +504,7 @@ fn patch_update<G: Signer>(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -527,9 +522,9 @@ fn patch_update<G: Signer>(
|
|
|
|
|
|
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -641,15 +636,15 @@ fn patch_merge<C: cob::cache::Update<patch::Patch>, G: Signer>(
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
|
|
|
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -681,57 +676,38 @@ fn push_ref(
|
|
|
|
|
|
| - | |
| + | |
|
|
| + | |
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
|
|
| - | |
| + | |
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| + | |
| + | |
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -744,7 +720,7 @@ fn sync(
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
modified radicle-term/src/io.rs
@@ -43,6 +43,9 @@ pub static CONFIG: Lazy<RenderConfig> = Lazy::new(|| RenderConfig {
|
|
|
|
|
|
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -50,9 +53,14 @@ macro_rules! info {
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -64,8 +72,12 @@ macro_rules! tip {
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
|
|
| - | |
| + | |
|
|
|
|
|
@@ -74,8 +86,8 @@ pub use notice;
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -86,8 +98,8 @@ pub fn tip_args(args: fmt::Arguments) {
|
|
|
|
|
|
| - | |
| - | |
| + | |
| + | |
|
|
|
|
|
modified radicle/src/node.rs
@@ -637,14 +637,24 @@ impl From<Vec<Seed>> for Seeds {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -937,34 +947,34 @@ impl Node {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
|
|
|
|
|
|
|
| - | |
|
|
|
|
|
|
|
|
|
|
|
|
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| - | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -972,7 +982,7 @@ impl Node {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -981,8 +991,9 @@ impl Node {
|
|
|
|
|
|
| + | |
|
|
| - | |
| + | |
|
|
|
|
|
modified radicle/src/node/seed/store.rs
@@ -59,7 +59,7 @@ impl Store for Database {
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|