aboutsummaryrefslogtreecommitdiff
path: root/repository
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-29 15:43:50 +0000
committerGravatar Runxi Yu2026-03-29 15:45:18 +0000
commitf50ac551c56569e109a8350f27dab53bb2378d4d (patch)
tree0d48976ffaab3455c0c26e2840cb88d2c8d4a3d4 /repository
parentci: Disable dupl (diff)
signatureNo signature
*: Remove Close from object/ref store interfaces
At places where you own the object, you should have the literal implementation with Close. If you're using it via the interface, then you probably don't own that store, and you shouldn't be closing it. Thanks to Michael Muré from git-bug for this point.
Diffstat (limited to 'repository')
-rw-r--r--repository/close.go14
-rw-r--r--repository/objects.go2
-rw-r--r--repository/refs.go2
3 files changed, 2 insertions, 16 deletions
diff --git a/repository/close.go b/repository/close.go
index 5d728c5b..c1261821 100644
--- a/repository/close.go
+++ b/repository/close.go
@@ -8,20 +8,6 @@ import "errors"
func (repo *Repository) Close() error {
var errs []error
- if repo.refs != nil {
- err := repo.refs.Close()
- if err != nil {
- errs = append(errs, err)
- }
- }
-
- if repo.objects != nil {
- err := repo.objects.Close()
- if err != nil {
- errs = append(errs, err)
- }
- }
-
if repo.commitGraph != nil {
err := repo.commitGraph.Close()
if err != nil {
diff --git a/repository/objects.go b/repository/objects.go
index 62170514..2e63ad65 100644
--- a/repository/objects.go
+++ b/repository/objects.go
@@ -81,7 +81,7 @@ func openObjectStore(
// bytes, or streamed object contents. Callers who want typed object values
// should usually prefer [Repository.Fetcher].
//
-// Labels: Life-Parent, Close-No.
+// Labels: Life-Parent.
//
//nolint:ireturn
func (repo *Repository) Objects() objectstore.ReadingStore {
diff --git a/repository/refs.go b/repository/refs.go
index 0403e001..17816168 100644
--- a/repository/refs.go
+++ b/repository/refs.go
@@ -8,7 +8,7 @@ import refstore "codeberg.org/lindenii/furgit/ref/store"
// A common pattern is to resolve a reference first and then pass the resulting
// object ID to [Repository.Fetcher] or [Repository.Objects].
//
-// Labels: Life-Parent, Close-No.
+// Labels: Life-Parent.
//
//nolint:ireturn
func (repo *Repository) Refs() refstore.ReadWriteStore {