radicle-heartwood-lfs/radicle-cli/examples
Fintan Halpenny ea7f26dbdf
radicle: wire up radicle-fetch
Wire up the `radicle-fetch` crate to the fetch logic in the
`radicle-node` worker.

Any required traits for storage, identity, tracking, and transport
used by `radicle-fetch`.

The worker adds a new module to run the `git upload-pack` process and
pipes the `stdout`/`stdin` to the respective channels.

The `Worker` type required adding a `FetchConfig` to easily allow the
configuration of fetches and passing the signer and tracking store
location through to the fetch `Handle`.

The channels code is adapted to have a new writer that always flushes
when a call to `write_all` is made. This is necessary since the
Gitoxide code never calls `flush`, and so it will hang since no data
is sent until `flush` is called.

Since `UserInfo` is used to set up a newly cloned repository, this
changed some of the SHA1 hashes output in the CLI test examples. It
was also necessary to update the CLI's clone code to be deterministic
in its output for tests.

Signed-off-by: Fintan Halpenny <fintan.halpenny@gmail.com>
X-Clacks-Overhead: GNU Terry Pratchett
2023-11-06 12:06:13 +01:00
..
framework cli-test: Update framework with new features 2023-08-04 12:23:49 +02:00
git cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
workflow radicle: wire up radicle-fetch 2023-11-06 12:06:13 +01:00
rad-auth.md cli: Minor output improvements to `rad auth` 2023-10-11 14:49:37 +02:00
rad-checkout-repo-config-linux.md cli: Add canonical remote to `init` and `checkout` 2023-04-24 15:42:00 +02:00
rad-checkout-repo-config-macos.md cli: Add canonical remote to `init` and `checkout` 2023-04-24 15:42:00 +02:00
rad-checkout.md cli: Add canonical remote to `init` and `checkout` 2023-04-24 15:42:00 +02:00
rad-clone-all.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-clone-connect.md cli: Adjust output of `rad sync` slightly 2023-09-05 11:16:09 +02:00
rad-clone-unknown.md cli: Simplify fatal error output 2023-09-01 15:17:41 +02:00
rad-clone.md cli: Show repo summary on `rad clone` 2023-09-01 12:22:50 +02:00
rad-cob.md radicle: Pin timestamp for testing 2023-10-30 14:48:38 +01:00
rad-fetch.md cli: Fix rad-fetch readme link 2023-07-25 11:52:24 +02:00
rad-fork.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-id-conflict.md radicle: wire up radicle-fetch 2023-11-06 12:06:13 +01:00
rad-id-multi-delegate.md radicle: wire up radicle-fetch 2023-11-06 12:06:13 +01:00
rad-id.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-init-no-git.md cli: Move `init` errors up so it fails sooner 2023-09-03 17:21:39 +02:00
rad-init-private-clone.md radicle: wire up radicle-fetch 2023-11-06 12:06:13 +01:00
rad-init-private.md cli: Add tests for `rad publish` 2023-09-05 11:16:09 +02:00
rad-init-sync.md cli: Choose repo visibility on init 2023-09-03 17:21:37 +02:00
rad-init.md cli: Update tracking without a running node 2023-11-03 17:17:07 +01:00
rad-inspect-noauth.md cli: Simplify fatal error output 2023-09-01 15:17:41 +02:00
rad-inspect.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-issue.md radicle: Pin timestamp for testing 2023-10-30 14:48:38 +01:00
rad-label.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-merge-after-update.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-merge-no-ff.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-merge-via-push.md radicle: Pin timestamp for testing 2023-10-30 14:48:38 +01:00
rad-node.md cli: Improve `rad node` output 2023-09-01 12:22:50 +02:00
rad-patch-ahead-behind.md remote-helper: Accept revision for `patch.base` 2023-10-30 15:20:39 +01:00
rad-patch-checkout.md cli: Check for branch on checkout 2023-10-30 15:25:27 +01:00
rad-patch-draft.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-patch-pull-update.md radicle: wire up radicle-fetch 2023-11-06 12:06:13 +01:00
rad-patch-update.md radicle: Pin timestamp for testing 2023-10-30 14:48:38 +01:00
rad-patch-via-push.md radicle: Pin timestamp for testing 2023-10-30 14:48:38 +01:00
rad-patch.md radicle: Pin timestamp for testing 2023-10-30 14:48:38 +01:00
rad-publish.md cli: Add tests for `rad publish` 2023-09-05 11:16:09 +02:00
rad-remote.md remote-helper: Run sync on `git-fetch` 2023-09-27 12:29:46 +02:00
rad-review-by-hunk.md cob: Introduce `xyz.radicle.id` COB 2023-10-12 17:32:33 +02:00
rad-rm.md cli: Show repo visibility in `rad ls` 2023-09-03 17:21:39 +02:00
rad-self.md node: Make node aliases required 2023-07-11 18:08:59 +02:00
rad-sync-without-node.md cli: Update tracking without a running node 2023-11-03 17:17:07 +01:00
rad-sync.md cli: Simplify fatal error output 2023-09-01 15:17:41 +02:00
rad-track.md cli: Get fetch after track working 2023-04-26 09:49:37 +02:00