aboutsummaryrefslogtreecommitdiff
path: root/receivepack/service/options.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-22 23:34:38 +0000
committerGravatar Runxi Yu2026-03-22 23:34:38 +0000
commit5c4e61830242a3a25e332bf623adb2eb65037f2b (patch)
tree2607e02fc552057e6d8406218a3102e08667fafb /receivepack/service/options.go
parentrefstore: Update invariants (diff)
signatureNo signature
receivepack/service: Clarify ownership and requirements
Diffstat (limited to 'receivepack/service/options.go')
-rw-r--r--receivepack/service/options.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/receivepack/service/options.go b/receivepack/service/options.go
index 21b84e2d..a49b6b95 100644
--- a/receivepack/service/options.go
+++ b/receivepack/service/options.go
@@ -16,6 +16,13 @@ type PromotedObjectPermissions struct {
}
// Options configures one protocol-independent receive-pack service.
+//
+// Service borrows all configured dependencies.
+//
+// Refs and ExistingObjects are required and must be non-nil.
+// ObjectsRoot is required if Execute may need to ingest or promote a pack.
+// Progress, ProgressFlush, Hook, and HookIO are optional; when provided they
+// are also borrowed for the duration of Execute.
type Options struct {
Algorithm objectid.Algorithm
Refs refstore.ReadWriteStore