aboutsummaryrefslogtreecommitdiff
path: root/format/pack/ingest/resolve_all.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-10 14:07:54 +0800
committerGravatar Runxi Yu2026-03-10 14:07:54 +0800
commitc2cb06aa23a1769a0d84756acccf1ac1358f61ef (patch)
tree86d991b67542dd8e8509a74c832b749ccf948342 /format/pack/ingest/resolve_all.go
parentcommitgraph: Move out of format/ (diff)
signatureNo signature
*: format/pack -> packfile; format/delta -> delta; delete format
Diffstat (limited to 'format/pack/ingest/resolve_all.go')
-rw-r--r--format/pack/ingest/resolve_all.go71
1 files changed, 0 insertions, 71 deletions
diff --git a/format/pack/ingest/resolve_all.go b/format/pack/ingest/resolve_all.go
deleted file mode 100644
index e0ad2281..00000000
--- a/format/pack/ingest/resolve_all.go
+++ /dev/null
@@ -1,71 +0,0 @@
-package ingest
-
-import (
- "errors"
-
- "codeberg.org/lindenii/furgit/internal/progress"
-)
-
-// resolveAll resolves all delta records and finalizes ObjectID/RealType for every record.
-func resolveAll(state *ingestState) error {
- state.unresolvedRefDeltas = state.unresolvedRefDeltas[:0]
-
- var pending uint32
-
- for idx := range state.records {
- if !state.records[idx].resolved {
- pending++
- }
- }
-
- if pending == 0 {
- return nil
- }
-
- var done uint32
-
- meter := progress.New(progress.Options{
- Writer: state.opts.Progress,
- Flush: state.opts.ProgressFlush,
- Title: "resolving deltas",
- Total: uint64(pending),
- })
-
- for idx := range state.records {
- if state.records[idx].resolved {
- continue
- }
-
- done++
- meter.Set(uint64(done), 0)
-
- visiting := make(map[int]struct{})
-
- ty, content, err := resolveRecord(state, idx, visiting)
- if err != nil {
- if errors.Is(err, errExternalThinBase) {
- state.unresolvedRefDeltas = append(state.unresolvedRefDeltas, idx)
-
- continue
- }
-
- return err
- }
-
- id, err := hashCanonicalObject(state.algo, ty, content)
- if err != nil {
- return err
- }
-
- record := &state.records[idx]
- record.realType = ty
- record.objectID = id
- record.resolved = true
- state.objectToRecord[id] = idx
- state.baseCache.add(idx, ty, content)
- }
-
- meter.Stop("done")
-
- return nil
-}