From 65f9d611a2a1c48022c1e4959a896da17d3664e4 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Sat, 22 Aug 2026 10:38:27 -0700 Subject: [PATCH] docs: say what the worker build needs from protoc The lance crates' build scripts are the ones that need it, not ours, and they take the same vendored binary. Claude-Session: https://claude.ai/code/session_01Rkp1Mw5E89Jp6dzJFYiMrm --- seaweed-worker/README.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/seaweed-worker/README.md b/seaweed-worker/README.md index 080ddfd4c..8c877a7e4 100644 --- a/seaweed-worker/README.md +++ b/seaweed-worker/README.md @@ -12,6 +12,18 @@ one. `core` knows nothing about any job. A second worker is a new crate beside `lance` that depends on it, not a fork of the protocol. +## Building + +`core` compiles `plugin.proto` with the protoc that protoc-bin-vendored ships, +the way seaweed-volume does, so it needs no system install. The lance crates +compile protos of their own and look for a protoc on PATH or in `PROTOC`, and +they honour the same vendored one: + + PROTOC=$(find ~/.cargo/registry/src -path '*protoc-bin-vendored-*/bin/protoc' | head -1) \ + cargo build --release + +which is what CI does. A protoc from the platform's package manager works too. + ## Running cargo run -p weed-lance-worker -- --admin 127.0.0.1:23646