rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 heartwoodd0b815c1715dfd78a7aba632356513370d189eaa
{
"request": "trigger",
"version": 1,
"event_type": "patch",
"repository": {
"id": "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5",
"name": "heartwood",
"description": "Radicle Heartwood Protocol & Stack",
"private": false,
"default_branch": "master",
"delegates": [
"did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT",
"did:key:z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW",
"did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"did:key:z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz",
"did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz"
]
},
"action": "Created",
"patch": {
"id": "1cd8044782249b95d577e0678f10eba8c6f32e35",
"author": {
"id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
"alias": "lorenz"
},
"title": "A Little Less `git2`",
"state": {
"status": "draft",
"conflicts": []
},
"before": "5caa7b302a7d4f247aaa7cc688a692aac4486464",
"after": "d0b815c1715dfd78a7aba632356513370d189eaa",
"commits": [
"d0b815c1715dfd78a7aba632356513370d189eaa",
"190c37853390c28ffa4e2ef0a6beb15d23ac7eba",
"b0df7d409767066f816a9b3e1c056c309bb8a7b5",
"12b06748ea7647974e45cd9f1695a5a9f1398866",
"fd91acb244547864968010e51957e07925687c63",
"e3d95095ee67a7ef1f8fd8f59bcb304f634cb469",
"a5d80e3e929f2c01d50bf2bb11a47a419e550027",
"96f9a9e9faf48f8e11133e65e62d7fd3e574cf7f",
"8aa0a42a9fea64d6fada6e1943c21d7220b03880",
"853be107bf45d77139d7f20c198c6be231203b4c",
"58cccd47b823d33fea94bc08682c296e90b30afb",
"1d6a1c077cc918d533397300ecbcc579936a4cd1",
"2c09fdc8cd0a064aa4c0848c0b4506bee76e3332"
],
"target": "5caa7b302a7d4f247aaa7cc688a692aac4486464",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "1cd8044782249b95d577e0678f10eba8c6f32e35",
"author": {
"id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
"alias": "lorenz"
},
"description": "(I should write up a lengthy description\u2026)",
"base": "5caa7b302a7d4f247aaa7cc688a692aac4486464",
"oid": "d0b815c1715dfd78a7aba632356513370d189eaa",
"timestamp": 1759707360
}
]
}
}
{
"response": "triggered",
"run_id": {
"id": "f7f8f864-a851-4054-9e8d-0c712d84dff5"
},
"info_url": "https://cci.rad.levitte.org//f7f8f864-a851-4054-9e8d-0c712d84dff5.html"
}
Started at: 2025-10-06 01:40:14.444622+02:00
Commands:
$ rad clone rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 .
✓ Creating checkout in ./...
✓ Remote cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT added
✓ Remote-tracking branch cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/master created for z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT
✓ Remote cloudhead@z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW added
✓ Remote-tracking branch cloudhead@z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW/master created for z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW
✓ Remote fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM added
✓ Remote-tracking branch fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM/master created for z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM
✓ Remote erikli@z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz added
✓ Remote-tracking branch erikli@z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz/master created for z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz
✓ Remote lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz added
✓ Remote-tracking branch lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz/master created for z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz
✓ Repository successfully cloned under /opt/radcis/ci.rad.levitte.org/cci/state/f7f8f864-a851-4054-9e8d-0c712d84dff5/w/
╭────────────────────────────────────╮
│ heartwood │
│ Radicle Heartwood Protocol & Stack │
│ 124 issues · 26 patches │
╰────────────────────────────────────╯
Run `cd ./.` to go to the repository directory.
Exit code: 0
$ rad patch checkout 1cd8044782249b95d577e0678f10eba8c6f32e35
✓ Switched to branch patch/1cd8044 at revision 1cd8044
✓ Branch patch/1cd8044 setup to track rad/patches/1cd8044782249b95d577e0678f10eba8c6f32e35
Exit code: 0
$ git config advice.detachedHead false
Exit code: 0
$ git checkout d0b815c1715dfd78a7aba632356513370d189eaa
HEAD is now at d0b815c1 radicle-git2-metadata → radicle-git-metadata
Exit code: 0
$ git show d0b815c1715dfd78a7aba632356513370d189eaa
commit d0b815c1715dfd78a7aba632356513370d189eaa
Author: Lorenz Leutgeb <lorenz.leutgeb@radicle.xyz>
Date: Mon Oct 6 01:06:34 2025 +0200
radicle-git2-metadata → radicle-git-metadata
This crate now does not depend on `git2` anymore, it just carries a few
structs, so remove the "2" which would indicate the connection to
`git2`.
diff --git a/Cargo.lock b/Cargo.lock
index 9813440e..844a5d4f 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2779,8 +2779,8 @@ dependencies = [
"qcheck-macros",
"radicle-cob",
"radicle-crypto",
+ "radicle-git-metadata",
"radicle-git-ref-format",
- "radicle-git2-metadata",
"radicle-oid",
"radicle-ssh",
"schemars",
@@ -2867,8 +2867,8 @@ dependencies = [
"qcheck-macros",
"radicle-crypto",
"radicle-dag",
+ "radicle-git-metadata",
"radicle-git-ref-format",
- "radicle-git2-metadata",
"radicle-oid",
"serde",
"serde_json",
@@ -2941,17 +2941,17 @@ dependencies = [
]
[[package]]
-name = "radicle-git-ref-format"
+name = "radicle-git-metadata"
version = "0.1.0"
dependencies = [
- "git-ref-format-core",
+ "thiserror 1.0.69",
]
[[package]]
-name = "radicle-git2-metadata"
+name = "radicle-git-ref-format"
version = "0.1.0"
dependencies = [
- "thiserror 1.0.69",
+ "git-ref-format-core",
]
[[package]]
diff --git a/Cargo.toml b/Cargo.toml
index 24b1ccb3..528d1271 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -48,7 +48,7 @@ radicle-crypto = { version = "0.13", path = "crates/radicle-crypto" }
radicle-dag = { version = "0.10", path = "crates/radicle-dag" }
radicle-fetch = { version = "0.15", path = "crates/radicle-fetch" }
radicle-git-ref-format = { version = "0.1.0", path = "crates/radicle-git-ref-format", default-features = false }
-radicle-git2-metadata = { version = "0.1.0", path = "crates/radicle-git2-metadata", default-features = false }
+radicle-git-metadata = { version = "0.1.0", path = "crates/radicle-git-metadata", default-features = false }
radicle-node = { version = "0.15", path = "crates/radicle-node" }
radicle-oid = { version = "0.1.0", path = "crates/radicle-oid", default-features = false }
radicle-protocol = { version = "0.3", path = "crates/radicle-protocol" }
diff --git a/crates/radicle-cob/Cargo.toml b/crates/radicle-cob/Cargo.toml
index d141ebd3..25d27817 100644
--- a/crates/radicle-cob/Cargo.toml
+++ b/crates/radicle-cob/Cargo.toml
@@ -27,7 +27,7 @@ nonempty = { workspace = true, features = ["serialize"] }
radicle-crypto = { workspace = true, features = ["ssh"] }
radicle-dag = { workspace = true }
radicle-git-ref-format = { workspace = true, features = ["macro"] }
-radicle-git2-metadata = { workspace = true }
+radicle-git-metadata = { workspace = true }
radicle-oid = { workspace = true, features = ["git2", "serde", "std"] }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
diff --git a/crates/radicle-cob/src/lib.rs b/crates/radicle-cob/src/lib.rs
index 9fb9d0ee..3fb6d0de 100644
--- a/crates/radicle-cob/src/lib.rs
+++ b/crates/radicle-cob/src/lib.rs
@@ -61,7 +61,7 @@ extern crate qcheck_macros;
extern crate radicle_crypto as crypto;
extern crate radicle_dag as dag;
-extern crate radicle_git2_metadata as metadata;
+extern crate radicle_git_metadata as metadata;
extern crate radicle_git_ref_format as fmt;
extern crate radicle_oid as oid;
diff --git a/crates/radicle-git2-metadata/Cargo.toml b/crates/radicle-git-metadata/Cargo.toml
similarity index 91%
rename from crates/radicle-git2-metadata/Cargo.toml
rename to crates/radicle-git-metadata/Cargo.toml
index e72518e0..ab58b3f0 100644
--- a/crates/radicle-git2-metadata/Cargo.toml
+++ b/crates/radicle-git-metadata/Cargo.toml
@@ -1,5 +1,5 @@
[package]
-name = "radicle-git2-metadata"
+name = "radicle-git-metadata"
description = "Radicle structs that carry Git commit metadata"
homepage.workspace = true
repository.workspace = true
diff --git a/crates/radicle-git2-metadata/src/author.rs b/crates/radicle-git-metadata/src/author.rs
similarity index 100%
rename from crates/radicle-git2-metadata/src/author.rs
rename to crates/radicle-git-metadata/src/author.rs
diff --git a/crates/radicle-git2-metadata/src/commit.rs b/crates/radicle-git-metadata/src/commit.rs
similarity index 100%
rename from crates/radicle-git2-metadata/src/commit.rs
rename to crates/radicle-git-metadata/src/commit.rs
diff --git a/crates/radicle-git2-metadata/src/commit/headers.rs b/crates/radicle-git-metadata/src/commit/headers.rs
similarity index 100%
rename from crates/radicle-git2-metadata/src/commit/headers.rs
rename to crates/radicle-git-metadata/src/commit/headers.rs
diff --git a/crates/radicle-git2-metadata/src/commit/trailers.rs b/crates/radicle-git-metadata/src/commit/trailers.rs
similarity index 100%
rename from crates/radicle-git2-metadata/src/commit/trailers.rs
rename to crates/radicle-git-metadata/src/commit/trailers.rs
diff --git a/crates/radicle-git2-metadata/src/lib.rs b/crates/radicle-git-metadata/src/lib.rs
similarity index 100%
rename from crates/radicle-git2-metadata/src/lib.rs
rename to crates/radicle-git-metadata/src/lib.rs
diff --git a/crates/radicle/Cargo.toml b/crates/radicle/Cargo.toml
index 7bcc2715..b75d6447 100644
--- a/crates/radicle/Cargo.toml
+++ b/crates/radicle/Cargo.toml
@@ -62,4 +62,4 @@ qcheck = { workspace = true }
qcheck-macros = { workspace = true }
radicle-cob = { workspace = true, features = ["stable-commit-ids", "test"] }
radicle-crypto = { workspace = true, features = ["test"] }
-radicle-git2-metadata = { workspace = true }
\ No newline at end of file
+radicle-git-metadata = { workspace = true }
\ No newline at end of file
diff --git a/crates/radicle/src/cob/test.rs b/crates/radicle/src/cob/test.rs
index fab0250c..e6feb06b 100644
--- a/crates/radicle/src/cob/test.rs
+++ b/crates/radicle/src/cob/test.rs
@@ -254,7 +254,7 @@ fn encoded<T: Cob, G: Signer>(
parents: impl IntoIterator<Item = Oid>,
signer: &G,
) -> (Vec<u8>, crate::Oid) {
- use radicle_git2_metadata::{
+ use radicle_git_metadata::{
author::{Author, Time},
commit::{CommitData, headers::Headers, trailers::OwnedTrailer}
};
Exit code: 0
shell: 'export RUSTDOCFLAGS=''-D warnings'' cargo --version rustc --version cargo fmt --check cargo clippy --all-targets --workspace -- --deny warnings cargo build --all-targets --workspace cargo doc --workspace --no-deps cargo test --workspace --no-fail-fast '
Commands:
$ podman run --name f7f8f864-a851-4054-9e8d-0c712d84dff5 -v /opt/radcis/ci.rad.levitte.org/cci/state/f7f8f864-a851-4054-9e8d-0c712d84dff5/s:/f7f8f864-a851-4054-9e8d-0c712d84dff5/s:ro -v /opt/radcis/ci.rad.levitte.org/cci/state/f7f8f864-a851-4054-9e8d-0c712d84dff5/w:/f7f8f864-a851-4054-9e8d-0c712d84dff5/w -w /f7f8f864-a851-4054-9e8d-0c712d84dff5/w -v /opt/radcis/ci.rad.levitte.org/.radicle:/${id}/.radicle:ro -e RAD_HOME=/${id}/.radicle rust:bookworm bash /f7f8f864-a851-4054-9e8d-0c712d84dff5/s/script.sh
+ export 'RUSTDOCFLAGS=-D warnings'
+ RUSTDOCFLAGS='-D warnings'
+ cargo --version
info: syncing channel updates for '1.88-x86_64-unknown-linux-gnu'
info: latest update on 2025-06-26, rust version 1.88.0 (6b00bc388 2025-06-23)
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
info: downloading component 'rust-src'
info: downloading component 'rust-std'
info: downloading component 'rustc'
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
info: installing component 'rust-src'
info: installing component 'rust-std'
info: installing component 'rustc'
info: installing component 'rustfmt'
cargo 1.88.0 (873a06493 2025-05-10)
+ rustc --version
rustc 1.88.0 (6b00bc388 2025-06-23)
+ cargo fmt --check
Diff in /f7f8f864-a851-4054-9e8d-0c712d84dff5/w/crates/radicle/src/cob/test.rs:256:
) -> (Vec<u8>, crate::Oid) {
use radicle_git_metadata::{
author::{Author, Time},
- commit::{CommitData, headers::Headers, trailers::OwnedTrailer}
+ commit::{headers::Headers, trailers::OwnedTrailer, CommitData},
};
let data = encoding::encode(action).unwrap();
Diff in /f7f8f864-a851-4054-9e8d-0c712d84dff5/w/crates/radicle-cli/src/commands/patch/review/builder.rs:207:
Some((&copied.old_path, Oid::from(*copied.old.oid))),
Some((&copied.new_path, Oid::from(*copied.new.oid))),
),
- Self::FileModified { path, old, new, .. } => {
- (Some((path, Oid::from(*old.oid))), Some((path, Oid::from(*new.oid))))
- }
- Self::FileEofChanged { path, old, new, .. } => {
- (Some((path, Oid::from(*old.oid))), Some((path, Oid::from(*new.oid))))
- }
- Self::FileModeChanged { path, old, new, .. } => {
- (Some((path, Oid::from(*old.oid))), Some((path, Oid::from(*new.oid))))
- }
+ Self::FileModified { path, old, new, .. } => (
+ Some((path, Oid::from(*old.oid))),
+ Some((path, Oid::from(*new.oid))),
+ ),
+ Self::FileEofChanged { path, old, new, .. } => (
+ Some((path, Oid::from(*old.oid))),
+ Some((path, Oid::from(*new.oid))),
+ ),
+ Self::FileModeChanged { path, old, new, .. } => (
+ Some((path, Oid::from(*old.oid))),
+ Some((path, Oid::from(*new.oid))),
+ ),
}
}
Exit code: 1
{
"response": "finished",
"result": "failure"
}