about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFlorian Klink <flokli@flokli.de>2024-07-23T13·12+0200
committerclbot <clbot@tvl.fyi>2024-07-23T13·24+0000
commitb9aa6456e22c562fbf849609112194d7ae7c1447 (patch)
tree0cf831a49fa3270b94ddc3894e75f934d73105d2
parent9f10a71ec5be4746cb67cc8dcb275a2436debaba (diff)
docs(tvix/docs): add TODO for protobuf r/8406
Change-Id: Iacf4ef517885bdd6d6366446124863d9a138b12b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12024
Autosubmit: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Reviewed-by: raitobezarius <tvl@lahfa.xyz>
-rw-r--r--tvix/docs/src/TODO.md14
1 files changed, 14 insertions, 0 deletions
diff --git a/tvix/docs/src/TODO.md b/tvix/docs/src/TODO.md
index e29559f92386..3d8ffb4f24ff 100644
--- a/tvix/docs/src/TODO.md
+++ b/tvix/docs/src/TODO.md
@@ -25,6 +25,20 @@ sure noone is working on this, or has some specific design in mind already.
    with a different level of `--strict`, but the toplevel doc-comment suggests
    its generic?
 
+### castore
+  - The `Directory` struct is currently being generated from the protobuf definitions.
+    We should change this, have `Directory` be our own type (holding a `B3Digest`),
+    rather than a `Vec<u8>`, and move impls to there.
+    The protobuf struct can stay in `castore/proto`, but should only be used
+    when converting to/from Protobuf definitons:
+     - gRPC client/server impls
+     - implementations that use protobuf as a internal data format
+     - `digest()` implementation of our stricter `Directory` struct
+
+    The traits should use our stricter type. This would allow removing a lot of
+    the checks we currently have when converting from `Vec<u8>` to `B3Digest` in
+    various places.
+
 ## Perf
  - String Contexts currently do a lot of indirections (edef)
    (NixString -> NixStringInner -> HashSet[element] -> NixContextElement -> String -> data)