Merge pull request #965 from MichaelMure/nitpic

Michael Muré created

commands: don't double build the lamport clocks

Change summary

cache/subcache.go       | 2 ++
commands/execenv/env.go | 7 ++++---
commands/root.go        | 3 +--
3 files changed, 7 insertions(+), 5 deletions(-)

Detailed changes

cache/subcache.go 🔗

@@ -139,6 +139,8 @@ func (sc *SubCache[EntityT, ExcerptT, CacheT]) Load() error {
 		return fmt.Errorf("count mismatch between bleve and %s excerpts", sc.namespace)
 	}
 
+	// TODO: find a way to check lamport clocks
+
 	return nil
 }
 

commands/execenv/env.go 🔗

@@ -8,7 +8,6 @@ import (
 	"github.com/spf13/cobra"
 
 	"github.com/MichaelMure/git-bug/cache"
-	"github.com/MichaelMure/git-bug/entities/bug"
 	"github.com/MichaelMure/git-bug/entities/identity"
 	"github.com/MichaelMure/git-bug/repository"
 	"github.com/MichaelMure/git-bug/util/interrupt"
@@ -87,11 +86,13 @@ func LoadRepo(env *Env) func(*cobra.Command, []string) error {
 			return fmt.Errorf("unable to get the current working directory: %q", err)
 		}
 
-		env.Repo, err = repository.OpenGoGitRepo(cwd, gitBugNamespace, []repository.ClockLoader{bug.ClockLoader})
+		// Note: we are not loading clocks here because we assume that LoadRepo is only used
+		//  when we don't manipulate entities, or as a child call of LoadBackend which will
+		//  read all clocks anyway.
+		env.Repo, err = repository.OpenGoGitRepo(cwd, gitBugNamespace, nil)
 		if err == repository.ErrNotARepo {
 			return fmt.Errorf("%s must be run from within a git Repo", RootCommandName)
 		}
-
 		if err != nil {
 			return err
 		}

commands/root.go 🔗

@@ -8,10 +8,9 @@ import (
 	"github.com/spf13/cobra"
 
 	"github.com/MichaelMure/git-bug/commands/bridge"
-	usercmd "github.com/MichaelMure/git-bug/commands/user"
-
 	"github.com/MichaelMure/git-bug/commands/bug"
 	"github.com/MichaelMure/git-bug/commands/execenv"
+	"github.com/MichaelMure/git-bug/commands/user"
 )
 
 // These variables are initialized externally during the build. See the Makefile.