radicle-heartwood-lfs/crates/radicle-node/src
Lorenz Leutgeb 3f81e83d36 radicle/crefs: Support Symbolic References
Canonical references can not be used to model symbolic references.

Relax this restriction by adding another member to the payload, named
"symbolic". Its key-value/name-target pairs then translate directly to
canonical symbolic references.

Care is taken to not allow circular references, and that there always
is a rule that could generate the target of a symbolic reference
(or a chain of symbolic references). Still, a symbolic reference may
dangle (for example when its target reference cannot be computed
because of divergence), but at least it can be prevented that a
symref *always* dangles, because there is no rule that would produce
its target.

Co-authored-by: Fintan Halpenny <fintan.halpenny@gmail.com>
2026-05-06 20:51:04 +02:00
..
reactor rust/edition/fmt: 2021 → 2024 2026-03-30 16:57:51 +02:00
runtime treewide: Spelling 2026-04-30 15:50:29 -04:00
test node/test: `NodeHandle::commit_to` should namespace 2026-05-05 14:41:52 +01:00
tests e2e: Fix false-positive in canonical ref update test 2026-05-05 14:41:52 +01:00
worker radicle/crefs: Support Symbolic References 2026-05-06 20:51:04 +02:00
control.rs rust/edition/fmt: 2021 → 2024 2026-03-30 16:57:51 +02:00
fingerprint.rs cargo: Update `cyphernet` from 0.5.2 to 0.5.3 2026-04-15 11:59:15 +01:00
lib.rs radicle: Add Version to User Agent 2026-04-02 16:26:46 +01:00
main.rs node: Rename systemd Credentials 2026-04-27 18:21:26 +02:00
reactor.rs rust/edition/fmt: 2021 → 2024 2026-03-30 16:57:51 +02:00
runtime.rs node: Fix conditions for socket activation 2026-04-22 12:03:05 +01:00
test.rs node, protocol: Refactor 2025-07-16 21:15:52 +02:00
tests.rs treewide: Spelling 2026-04-30 15:50:29 -04:00
wire.rs treewide: Spelling 2026-04-30 15:50:29 -04:00
worker.rs rust/edition/fmt: 2021 → 2024 2026-03-30 16:57:51 +02:00