radicle-heartwood-lfs/radicle-cli/examples
Fintan Halpenny eec4dd4505 radicle: improve sync fetching
This patch changes separates the business logic of fetching from the process of
fetching itself. It does this through a sans-IO approach, where a `Fetcher`
provides the necessary state to help drive a fetch forward, without performing
any of the IO itself.

What the `Fetcher` cares about is:
- What nodes are going to be attempted to be fetched from
- In what order should they be attempted
- When should the fetching process be considered finished

The `Fetcher` is then used in `radicle-cli` to drive forward the `sync::fetch`
function, allowing it to only care about the IO.
2025-05-23 17:22:48 +01:00
..
framework cli-test: Update framework with new features 2023-08-04 12:23:49 +02:00
git radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
workflow radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-auth-errors.md radicle: Fix config loading with bad alias 2024-03-21 14:44:04 +01:00
rad-auth.md radicle: Fix config loading with bad alias 2024-03-21 14:44:04 +01:00
rad-block.md cli: add `rad unblock` command 2024-08-06 14:12:44 +02:00
rad-checkout-repo-config-linux.md radicle: add tags fetch refspec 2024-10-21 14:30:37 +02:00
rad-checkout-repo-config-macos.md radicle: add tags fetch refspec 2024-10-21 14:30:37 +02:00
rad-checkout.md cli: Add canonical remote to `init` and `checkout` 2023-04-24 15:42:00 +02:00
rad-clean.md Include new `rad/root` in signed refs 2024-10-21 16:32:49 +02:00
rad-clone-all.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-clone-connect.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-clone-directory.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-clone-partial-fail.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-clone-unknown.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-clone.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-cob-log.md node: Update inventory when unseeding 2024-06-12 15:36:34 +02:00
rad-cob-migrate.md cli: Fix `rad cob migrate` test 2024-11-27 10:19:51 +01:00
rad-cob-multiset cli: Introduce `cob [create|update]` 2025-04-28 16:19:02 +02:00
rad-cob-multiset.md cli: Introduce `cob [create|update]` 2025-04-28 16:19:02 +02:00
rad-cob-show.md cli/cob: Output JSON Lines 2024-12-03 12:36:02 +01:00
rad-cob-update-identity.md cli: Introduce `cob [create|update]` 2025-04-28 16:19:02 +02:00
rad-cob-update.md cli: Introduce `cob [create|update]` 2025-04-28 16:19:02 +02:00
rad-config.md node: rate limiter for channel reads 2025-04-25 20:27:51 +02:00
rad-diff.md cli: Improve pretty diff printing 2024-07-12 16:36:04 +02:00
rad-fetch.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-fork.md Include new `rad/root` in signed refs 2024-10-21 16:32:49 +02:00
rad-id-collaboration.md cli/sync: Also print node addresses 2025-04-17 14:20:21 +02:00
rad-id-conflict.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-id-multi-delegate.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-id-private.md cli: idempotent `rad id update` 2024-06-21 13:01:59 +02:00
rad-id-threshold-soft-fork.md Include new `rad/root` in signed refs 2024-10-21 16:32:49 +02:00
rad-id-threshold.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-id-unknown-field.md cli: Add test for unknown field in identity doc 2024-05-07 10:21:07 +02:00
rad-id-update-delete-field.md cli: verification of project for json errors only 2024-11-11 11:58:09 +01:00
rad-id.md cli: idempotent `rad id update` 2024-06-21 13:01:59 +02:00
rad-inbox.md cli: fix rad inbox clear output 2024-04-09 16:09:44 +02:00
rad-init-existing.md cli: Add way to init from existing repositories 2024-07-29 11:49:19 +02:00
rad-init-no-git.md cli: Improve `rad init` wording 2024-03-11 13:08:03 +01:00
rad-init-no-seed.md cli: Correctly update inventory with seed commands 2024-06-12 15:36:34 +02:00
rad-init-private-clone-seed.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-init-private-clone.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-init-private-no-seed.md cli: Clarify doc test example 2024-06-12 15:36:34 +02:00
rad-init-private-seed.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-init-private.md cli: Correctly update inventory with seed commands 2024-06-12 15:36:34 +02:00
rad-init-sync-not-connected.md cli: Show full path in `rad init` 2024-02-26 12:40:17 +01:00
rad-init-sync-preferred.md cli: watch for upload-pack events in `rad init` 2024-05-15 10:07:56 +01:00
rad-init-sync-timeout.md cli: Show full path in `rad init` 2024-02-26 12:40:17 +01:00
rad-init-sync.md cli: Show full path in `rad init` 2024-02-26 12:40:17 +01:00
rad-init-with-existing-remote.md test: Fix backwards incompatibility with git 2.34 2024-06-12 12:13:10 +02:00
rad-init.md cli: Correctly update inventory with seed commands 2024-06-12 15:36:34 +02:00
rad-inspect-noauth.md cli: Improve messaging when config doesn't load 2023-12-13 12:30:11 +01:00
rad-inspect.md Include new `rad/root` in signed refs 2024-10-21 16:32:49 +02:00
rad-issue.md cli: add comment edit for rad issue 2025-01-14 13:39:09 +01:00
rad-job.md cob: Add an experimental "job" COB 2024-11-06 17:26:00 +01:00
rad-merge-after-update.md cob: Properly authorize root actions 2024-02-23 12:31:13 +01:00
rad-merge-no-ff.md cob: Properly authorize root actions 2024-02-23 12:31:13 +01:00
rad-merge-via-push.md helper: Use the correct head when merging a patch 2024-11-18 16:10:13 +01:00
rad-node.md cli: Correctly update inventory with seed commands 2024-06-12 15:36:34 +02:00
rad-patch-ahead-behind.md node: Update inventory when unseeding 2024-06-12 15:36:34 +02:00
rad-patch-change-base.md node: Update inventory when unseeding 2024-06-12 15:36:34 +02:00
rad-patch-checkout-force.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-patch-checkout-revision.md node: Update inventory when unseeding 2024-06-12 15:36:34 +02:00
rad-patch-checkout.md remote-helper: Print `git range-diff` invocation 2025-04-24 16:51:38 +02:00
rad-patch-delete.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-patch-detached-head.md remote-helper: allow patch creation from detached HEAD 2024-07-23 17:13:30 +02:00
rad-patch-diff.md cob: Properly authorize root actions 2024-02-23 12:31:13 +01:00
rad-patch-draft.md node: Update inventory when unseeding 2024-06-12 15:36:34 +02:00
rad-patch-edit.md remote-helper: Print `git range-diff` invocation 2025-04-24 16:51:38 +02:00
rad-patch-fetch-1.md cli: use `git` for anonymous fetch 2024-01-02 15:04:49 +01:00
rad-patch-fetch-2.md cob: Properly authorize root actions 2024-02-23 12:31:13 +01:00
rad-patch-merge-draft.md cob: Properly authorize root actions 2024-02-23 12:31:13 +01:00
rad-patch-open-explore.md remote-helper: Print `git range-diff` invocation 2025-04-24 16:51:38 +02:00
rad-patch-pull-update.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-patch-revert-merge.md helper: Revert patches correctly 2024-08-23 15:59:59 +02:00
rad-patch-update.md node: Update inventory when unseeding 2024-06-12 15:36:34 +02:00
rad-patch-via-push.md remote-helper: Print `git range-diff` invocation 2025-04-24 16:51:38 +02:00
rad-patch.md remote-helper: Print `git range-diff` invocation 2025-04-24 16:51:38 +02:00
rad-publish.md cli: Correctly update inventory with seed commands 2024-06-12 15:36:34 +02:00
rad-push-and-pull-patches.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-remote.md cli: Improve `rad remote add` 2024-01-08 17:28:01 +01:00
rad-review-by-hunk.md cli: Write comments into draft patch review 2024-07-24 16:46:24 +02:00
rad-seed-and-follow.md cli: Fix some tests 2024-03-09 14:01:30 +01:00
rad-seed-many.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-self.md cli: Move node addresses command 2024-02-26 14:23:13 +01:00
rad-sync-without-node.md cli: From "tracking" to "seeding" and "following" 2023-12-06 09:56:57 +01:00
rad-sync.md radicle: improve sync fetching 2025-05-23 17:22:48 +01:00
rad-unseed-many.md cli: Allow multiple RIDs for `rad unseed` 2025-04-26 10:01:11 +02:00
rad-unseed.md cli: Correctly update inventory with seed commands 2024-06-12 15:36:34 +02:00
rad-watch.md cli: Add `watch` command 2023-12-11 12:04:26 +01:00