cli: `rad cob {show → log}`

This commit is contained in:
Lorenz Leutgeb 2024-05-07 15:39:41 +02:00 committed by cloudhead
parent 30c9b0db0b
commit 72dad241e2
No known key found for this signature in database
4 changed files with 13 additions and 13 deletions

View File

@ -61,7 +61,7 @@ aa45913e757cacd46972733bddee5472c78fa32a
We can look at the issue COB. We can look at the issue COB.
``` ```
$ rad cob show --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --type xyz.radicle.issue --object d87dcfe8c2b3200e78b128d9b959cfdf7063fefe $ rad cob log --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --type xyz.radicle.issue --object d87dcfe8c2b3200e78b128d9b959cfdf7063fefe
commit d87dcfe8c2b3200e78b128d9b959cfdf7063fefe commit d87dcfe8c2b3200e78b128d9b959cfdf7063fefe
resource 0656c217f917c3e06234771e9ecae53aba5e173e resource 0656c217f917c3e06234771e9ecae53aba5e173e
author z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi author z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi
@ -82,7 +82,7 @@ date Thu, 15 Dec 2022 17:28:04 +0000
We can look at the patch COB too. We can look at the patch COB too.
``` ```
$ rad cob show --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --type xyz.radicle.patch --object aa45913e757cacd46972733bddee5472c78fa32a $ rad cob log --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --type xyz.radicle.patch --object aa45913e757cacd46972733bddee5472c78fa32a
commit aa45913e757cacd46972733bddee5472c78fa32a commit aa45913e757cacd46972733bddee5472c78fa32a
resource 0656c217f917c3e06234771e9ecae53aba5e173e resource 0656c217f917c3e06234771e9ecae53aba5e173e
rel 3e674d1a1df90807e934f9ae5da2591dd6848a33 rel 3e674d1a1df90807e934f9ae5da2591dd6848a33
@ -109,7 +109,7 @@ Finally let's updated the issue and see the `parent` header:
``` ```
$ rad issue label d87dcfe --add bug --no-announce $ rad issue label d87dcfe --add bug --no-announce
$ rad cob show --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --type xyz.radicle.issue --object d87dcfe8c2b3200e78b128d9b959cfdf7063fefe $ rad cob log --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji --type xyz.radicle.issue --object d87dcfe8c2b3200e78b128d9b959cfdf7063fefe
commit abec0a9f3c945594c4e78d24d8ec679e56b22b79 commit abec0a9f3c945594c4e78d24d8ec679e56b22b79
resource 0656c217f917c3e06234771e9ecae53aba5e173e resource 0656c217f917c3e06234771e9ecae53aba5e173e
parent d87dcfe8c2b3200e78b128d9b959cfdf7063fefe parent d87dcfe8c2b3200e78b128d9b959cfdf7063fefe

View File

@ -93,7 +93,7 @@ $ rad inspect --identity
We can also look at the document's COB directly: We can also look at the document's COB directly:
``` ```
$ rad cob show --object 0656c217f917c3e06234771e9ecae53aba5e173e --type xyz.radicle.id --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji $ rad cob log --object 0656c217f917c3e06234771e9ecae53aba5e173e --type xyz.radicle.id --repo rad:z42hL2jL4XNk6K8oHQaSWfMgCL7ji
commit 0ca42d376bd566631083c8913cf86bec722da392 commit 0ca42d376bd566631083c8913cf86bec722da392
parent 0656c217f917c3e06234771e9ecae53aba5e173e parent 0656c217f917c3e06234771e9ecae53aba5e173e
author z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi author z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi

View File

@ -22,12 +22,12 @@ Usage
rad cob <command> [<option>...] rad cob <command> [<option>...]
rad cob list --repo <rid> --type <typename> rad cob list --repo <rid> --type <typename>
rad cob show --repo <rid> --type <typename> --object <oid> rad cob log --repo <rid> --type <typename> --object <oid>
Commands Commands
list List all COBs of a given type (--object is not needed) list List all COBs of a given type (--object is not needed)
show Show a COB as raw operations log Print a log of all raw operations on a COB
Options Options
@ -37,12 +37,12 @@ Options
enum OperationName { enum OperationName {
List, List,
Show, Log,
} }
enum Operation { enum Operation {
List, List,
Show(Rev), Log(Rev),
} }
pub struct Options { pub struct Options {
@ -64,8 +64,8 @@ impl Args for Options {
while let Some(arg) = parser.next()? { while let Some(arg) = parser.next()? {
match arg { match arg {
Value(val) if op.is_none() => match val.to_string_lossy().as_ref() { Value(val) if op.is_none() => match val.to_string_lossy().as_ref() {
"l" | "list" => op = Some(OperationName::List), "list" => op = Some(OperationName::List),
"s" | "show" => op = Some(OperationName::Show), "log" => op = Some(OperationName::Log),
unknown => anyhow::bail!("unknown operation '{unknown}'"), unknown => anyhow::bail!("unknown operation '{unknown}'"),
}, },
Long("type") | Short('t') => { Long("type") | Short('t') => {
@ -99,7 +99,7 @@ impl Args for Options {
op: { op: {
match op.ok_or_else(|| anyhow!("a command must be specified"))? { match op.ok_or_else(|| anyhow!("a command must be specified"))? {
OperationName::List => Operation::List, OperationName::List => Operation::List,
OperationName::Show => Operation::Show(oid.ok_or_else(|| { OperationName::Log => Operation::Log(oid.ok_or_else(|| {
anyhow!("an object id must be specified with `--object") anyhow!("an object id must be specified with `--object")
})?), })?),
} }
@ -126,7 +126,7 @@ pub fn run(options: Options, ctx: impl term::Context) -> anyhow::Result<()> {
println!("{}", cob.id); println!("{}", cob.id);
} }
} }
Operation::Show(oid) => { Operation::Log(oid) => {
let oid = oid.resolve(&repo.backend)?; let oid = oid.resolve(&repo.backend)?;
let ops = cob::store::ops(&oid, &options.type_name, &repo)?; let ops = cob::store::ops(&oid, &options.type_name, &repo)?;

View File

@ -166,7 +166,7 @@ fn rad_cob() {
fixtures::repository(&working); fixtures::repository(&working);
test("examples/rad-init.md", &working, Some(home), []).unwrap(); test("examples/rad-init.md", &working, Some(home), []).unwrap();
test("examples/rad-cob.md", &working, Some(home), []).unwrap(); test("examples/rad-cob-log.md", &working, Some(home), []).unwrap();
} }
#[test] #[test]