aboutsummaryrefslogtreecommitdiff
path: root/network/receivepack
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-29 10:22:19 +0000
committerGravatar Runxi Yu2026-03-29 10:22:19 +0000
commitcdac77529a3f7416843b1d455d413c9b0f21cfff (patch)
tree274775de36c302716f43efdaffbb00ca5f3070f9 /network/receivepack
parentobject/id: Split files (diff)
signatureNo signature
object/id: Zero is a property of the algorithm v0.1.140
Diffstat (limited to 'network/receivepack')
-rw-r--r--network/receivepack/hooks/reject_force_push.go3
-rw-r--r--network/receivepack/int_test.go28
-rw-r--r--network/receivepack/service/apply.go5
-rw-r--r--network/receivepack/service/command.go2
-rw-r--r--network/receivepack/service/service_test.go8
5 files changed, 22 insertions, 24 deletions
diff --git a/network/receivepack/hooks/reject_force_push.go b/network/receivepack/hooks/reject_force_push.go
index 41153841..5902ef73 100644
--- a/network/receivepack/hooks/reject_force_push.go
+++ b/network/receivepack/hooks/reject_force_push.go
@@ -7,7 +7,6 @@ import (
"codeberg.org/lindenii/furgit/commitquery"
receivepack "codeberg.org/lindenii/furgit/network/receivepack"
- objectid "codeberg.org/lindenii/furgit/object/id"
objectmix "codeberg.org/lindenii/furgit/object/store/mix"
refstore "codeberg.org/lindenii/furgit/ref/store"
)
@@ -33,7 +32,7 @@ func RejectForcePush() receivepack.Hook {
}
for i, update := range req.Updates {
- if update.OldID == objectid.Zero(update.OldID.Algorithm()) || update.NewID == objectid.Zero(update.NewID.Algorithm()) {
+ if update.OldID == update.OldID.Algorithm().Zero() || update.NewID == update.NewID.Algorithm().Zero() {
continue
}
diff --git a/network/receivepack/int_test.go b/network/receivepack/int_test.go
index 360d66a9..79662bc1 100644
--- a/network/receivepack/int_test.go
+++ b/network/receivepack/int_test.go
@@ -36,7 +36,7 @@ func TestReceivePackDeleteOnlyAtomicDeleteSucceeds(t *testing.T) {
)
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00report-status atomic delete-refs object-format=" + algo.String() + "\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/main\x00report-status atomic delete-refs object-format=" + algo.String() + "\n",
))
input.WriteString("0000")
@@ -83,10 +83,10 @@ func TestReceivePackDeleteOnlyNonAtomicAppliesIndependentDeletes(t *testing.T) {
)
input.WriteString(pktlineData(
- staleID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00report-status delete-refs object-format=" + algo.String() + "\n",
+ staleID.String() + " " + algo.Zero().String() + " refs/heads/main\x00report-status delete-refs object-format=" + algo.String() + "\n",
))
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/topic\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/topic\n",
))
input.WriteString("0000")
@@ -138,10 +138,10 @@ func TestReceivePackDeleteOnlyAtomicFailureLeavesAllRefsUntouched(t *testing.T)
)
input.WriteString(pktlineData(
- staleID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00report-status atomic delete-refs object-format=" + algo.String() + "\n",
+ staleID.String() + " " + algo.Zero().String() + " refs/heads/main\x00report-status atomic delete-refs object-format=" + algo.String() + "\n",
))
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/topic\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/topic\n",
))
input.WriteString("0000")
@@ -242,7 +242,7 @@ func TestReceivePackWithoutReportStatusWritesNoStatusPayload(t *testing.T) {
)
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00delete-refs atomic object-format=" + algo.String() + "\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/main\x00delete-refs atomic object-format=" + algo.String() + "\n",
))
input.WriteString("0000")
@@ -281,7 +281,7 @@ func testReceivePackProtocolFallback(t *testing.T, gitProtocol string) {
)
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00report-status atomic delete-refs object-format=" + algo.String() + "\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/main\x00report-status atomic delete-refs object-format=" + algo.String() + "\n",
))
input.WriteString("0000")
@@ -365,7 +365,7 @@ func TestReceivePackPackCreatePromotesObjectsAndUpdatesRef(t *testing.T) {
)
input.WriteString(pktlineData(
- objectid.Zero(algo).String() + " " + commitID.String() + " refs/heads/main\x00report-status-v2 atomic object-format=" + algo.String() + "\n",
+ algo.Zero().String() + " " + commitID.String() + " refs/heads/main\x00report-status-v2 atomic object-format=" + algo.String() + "\n",
))
input.WriteString("0000")
@@ -437,7 +437,7 @@ func TestReceivePackHookSeesQuarantinedObjectsAndCanRejectBeforePromotion(t *tes
)
input.WriteString(pktlineData(
- objectid.Zero(algo).String() + " " + commitID.String() + " refs/heads/main\x00report-status-v2 atomic object-format=" + algo.String() + "\n",
+ algo.Zero().String() + " " + commitID.String() + " refs/heads/main\x00report-status-v2 atomic object-format=" + algo.String() + "\n",
))
input.WriteString("0000")
@@ -519,10 +519,10 @@ func TestReceivePackHookCanRejectSubsetOfNonAtomicDeleteOnlyPush(t *testing.T) {
)
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00report-status delete-refs object-format=" + algo.String() + "\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/main\x00report-status delete-refs object-format=" + algo.String() + "\n",
))
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/topic\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/topic\n",
))
input.WriteString("0000")
@@ -577,7 +577,7 @@ func TestReceivePackHookProgressUsesSideBand64K(t *testing.T) {
)
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00report-status side-band-64k atomic delete-refs object-format=" + algo.String() + "\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/main\x00report-status side-band-64k atomic delete-refs object-format=" + algo.String() + "\n",
))
input.WriteString("0000")
@@ -725,7 +725,7 @@ func TestReceivePackReportStatusV2IncludesRefDetails(t *testing.T) {
)
input.WriteString(pktlineData(
- commitID.String() + " " + objectid.Zero(algo).String() + " refs/heads/main\x00report-status-v2 atomic delete-refs object-format=" + algo.String() + "\n",
+ commitID.String() + " " + algo.Zero().String() + " refs/heads/main\x00report-status-v2 atomic delete-refs object-format=" + algo.String() + "\n",
))
input.WriteString("0000")
@@ -747,7 +747,7 @@ func TestReceivePackReportStatusV2IncludesRefDetails(t *testing.T) {
t.Fatalf("missing option old-oid in %q", got)
}
- if !strings.Contains(got, "option new-oid "+objectid.Zero(algo).String()+"\n") {
+ if !strings.Contains(got, "option new-oid "+algo.Zero().String()+"\n") {
t.Fatalf("missing option new-oid in %q", got)
}
})
diff --git a/network/receivepack/service/apply.go b/network/receivepack/service/apply.go
index 8fa500ca..aae61340 100644
--- a/network/receivepack/service/apply.go
+++ b/network/receivepack/service/apply.go
@@ -2,7 +2,6 @@ package service
import (
"codeberg.org/lindenii/furgit/internal/utils"
- objectid "codeberg.org/lindenii/furgit/object/id"
refstore "codeberg.org/lindenii/furgit/ref/store"
)
@@ -101,7 +100,7 @@ func queueWriteTransaction(tx refstore.Transaction, command Command) error {
return tx.Delete(command.Name, command.OldID)
}
- if command.OldID == objectid.Zero(command.OldID.Algorithm()) {
+ if command.OldID == command.OldID.Algorithm().Zero() {
return tx.Create(command.Name, command.NewID)
}
@@ -115,7 +114,7 @@ func queueWriteBatch(batch refstore.Batch, command Command) {
return
}
- if command.OldID == objectid.Zero(command.OldID.Algorithm()) {
+ if command.OldID == command.OldID.Algorithm().Zero() {
batch.Create(command.Name, command.NewID)
return
diff --git a/network/receivepack/service/command.go b/network/receivepack/service/command.go
index 0fd8961e..4d234214 100644
--- a/network/receivepack/service/command.go
+++ b/network/receivepack/service/command.go
@@ -22,7 +22,7 @@ func fillCommandErrors(result *Result, commands []Command, errText string) {
}
func isDelete(command Command) bool {
- return command.NewID == objectid.Zero(command.NewID.Algorithm())
+ return command.NewID == command.NewID.Algorithm().Zero()
}
func objectIDPointer(id objectid.ObjectID) *objectid.ObjectID {
diff --git a/network/receivepack/service/service_test.go b/network/receivepack/service/service_test.go
index fcbc355a..ffb08ea4 100644
--- a/network/receivepack/service/service_test.go
+++ b/network/receivepack/service/service_test.go
@@ -29,8 +29,8 @@ func TestExecutePackExpectedWithoutObjectsRoot(t *testing.T) {
result, err := svc.Execute(context.Background(), &service.Request{
Commands: []service.Command{{
Name: "refs/heads/main",
- OldID: objectid.Zero(algo),
- NewID: objectid.Zero(algo),
+ OldID: algo.Zero(),
+ NewID: algo.Zero(),
}},
PackExpected: true,
Pack: strings.NewReader("not a pack"),
@@ -73,8 +73,8 @@ func TestExecuteRemovesDerivedQuarantineAfterIngestFailure(t *testing.T) {
result, err := svc.Execute(context.Background(), &service.Request{
Commands: []service.Command{{
Name: "refs/heads/main",
- OldID: objectid.Zero(algo),
- NewID: objectid.Zero(algo),
+ OldID: algo.Zero(),
+ NewID: algo.Zero(),
}},
PackExpected: true,
Pack: strings.NewReader("not a pack"),