mirror of
https://seed.radicle.dev/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5.git
synced 2026-11-15 15:50:38 +08:00
f3c4a53e1eb50cd9f6fbf8eb82778bde397ee92e
This is a minimal port of the collaborative objects code from radicle-link[0]. A `CollaborativeObject` is made up of a `History` of `Change`s that are expected to be stored in a `git` backend. The library exposes a CRU series of functions `create`, `get`, `list`, and `update`. This implementation differs, to previous one, in that it does not assume any kind of identity system -- its only assumption is that identities have an identifier and can be addressed in the `git` database. This means that it does not require an `author` to be passed in and it only uses the `resource` (previously `authorizing_identity`) to store its content-address in the `Change`. It also foregoes any caching to simplify the port and not make any early optimisation assumptions. [0]: https://github.com/radicle-dev/radicle-link/tree/master/cob Signed-off-by: Fintan Halpenny <fintan.halpenny@gmail.com>
❤️🪵
Radicle Heartwood Protocol & Stack
Languages
Rust
97.8%
Shell
0.5%
CUE
0.4%
Nix
0.3%
Just
0.3%
Other
0.6%