diff options
Diffstat (limited to 'cache')
-rw-r--r-- | cache/bug_cache.go | 13 | ||||
-rw-r--r-- | cache/bug_excerpt.go | 7 | ||||
-rw-r--r-- | cache/filter.go | 4 | ||||
-rw-r--r-- | cache/identity_cache.go | 2 | ||||
-rw-r--r-- | cache/identity_excerpt.go | 2 | ||||
-rw-r--r-- | cache/repo_cache.go | 4 | ||||
-rw-r--r-- | cache/repo_cache_bug.go | 16 | ||||
-rw-r--r-- | cache/repo_cache_common.go | 4 | ||||
-rw-r--r-- | cache/repo_cache_identity.go | 2 | ||||
-rw-r--r-- | cache/repo_cache_test.go | 2 |
10 files changed, 31 insertions, 25 deletions
diff --git a/cache/bug_cache.go b/cache/bug_cache.go index 7503fc37..6caaeb11 100644 --- a/cache/bug_cache.go +++ b/cache/bug_cache.go @@ -5,7 +5,7 @@ import ( "sync" "time" - "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/entities/bug" "github.com/MichaelMure/git-bug/entity" "github.com/MichaelMure/git-bug/entity/dag" "github.com/MichaelMure/git-bug/repository" @@ -209,7 +209,7 @@ func (c *BugCache) EditCreateCommentRaw(author *IdentityCache, unixTime int64, b return op, c.notifyUpdated() } -func (c *BugCache) EditComment(target entity.Id, message string) (*bug.EditCommentOperation, error) { +func (c *BugCache) EditComment(target entity.CombinedId, message string) (*bug.EditCommentOperation, error) { author, err := c.repoCache.GetUserIdentity() if err != nil { return nil, err @@ -218,9 +218,14 @@ func (c *BugCache) EditComment(target entity.Id, message string) (*bug.EditComme return c.EditCommentRaw(author, time.Now().Unix(), target, message, nil) } -func (c *BugCache) EditCommentRaw(author *IdentityCache, unixTime int64, target entity.Id, message string, metadata map[string]string) (*bug.EditCommentOperation, error) { +func (c *BugCache) EditCommentRaw(author *IdentityCache, unixTime int64, target entity.CombinedId, message string, metadata map[string]string) (*bug.EditCommentOperation, error) { + comment, err := c.Snapshot().SearchComment(target) + if err != nil { + return nil, err + } + c.mu.Lock() - op, err := bug.EditComment(c.bug, author.Identity, unixTime, target, message, nil, metadata) + op, err := bug.EditComment(c.bug, author.Identity, unixTime, comment.TargetId(), message, nil, metadata) c.mu.Unlock() if err != nil { return nil, err diff --git a/cache/bug_excerpt.go b/cache/bug_excerpt.go index 342a0553..7e3bcad4 100644 --- a/cache/bug_excerpt.go +++ b/cache/bug_excerpt.go @@ -5,9 +5,10 @@ import ( "fmt" "time" - "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/entities/bug" + "github.com/MichaelMure/git-bug/entities/common" + "github.com/MichaelMure/git-bug/entities/identity" "github.com/MichaelMure/git-bug/entity" - "github.com/MichaelMure/git-bug/identity" "github.com/MichaelMure/git-bug/util/lamport" ) @@ -27,7 +28,7 @@ type BugExcerpt struct { EditUnixTime int64 AuthorId entity.Id - Status bug.Status + Status common.Status Labels []bug.Label Title string LenComments int diff --git a/cache/filter.go b/cache/filter.go index 7ea40673..299e7c83 100644 --- a/cache/filter.go +++ b/cache/filter.go @@ -3,7 +3,7 @@ package cache import ( "strings" - "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/entities/common" "github.com/MichaelMure/git-bug/entity" "github.com/MichaelMure/git-bug/query" ) @@ -18,7 +18,7 @@ type resolver interface { type Filter func(excerpt *BugExcerpt, resolver resolver) bool // StatusFilter return a Filter that match a bug status -func StatusFilter(status bug.Status) Filter { +func StatusFilter(status common.Status) Filter { return func(excerpt *BugExcerpt, resolver resolver) bool { return excerpt.Status == status } diff --git a/cache/identity_cache.go b/cache/identity_cache.go index e419387f..3b7bb818 100644 --- a/cache/identity_cache.go +++ b/cache/identity_cache.go @@ -1,7 +1,7 @@ package cache import ( - "github.com/MichaelMure/git-bug/identity" + "github.com/MichaelMure/git-bug/entities/identity" "github.com/MichaelMure/git-bug/repository" ) diff --git a/cache/identity_excerpt.go b/cache/identity_excerpt.go index 18514e9a..0166f493 100644 --- a/cache/identity_excerpt.go +++ b/cache/identity_excerpt.go @@ -5,8 +5,8 @@ import ( "fmt" "strings" + "github.com/MichaelMure/git-bug/entities/identity" "github.com/MichaelMure/git-bug/entity" - "github.com/MichaelMure/git-bug/identity" ) // Package initialisation used to register the type for (de)serialization diff --git a/cache/repo_cache.go b/cache/repo_cache.go index 8af221bb..71abf968 100644 --- a/cache/repo_cache.go +++ b/cache/repo_cache.go @@ -8,9 +8,9 @@ import ( "strconv" "sync" - "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/entities/bug" + "github.com/MichaelMure/git-bug/entities/identity" "github.com/MichaelMure/git-bug/entity" - "github.com/MichaelMure/git-bug/identity" "github.com/MichaelMure/git-bug/repository" "github.com/MichaelMure/git-bug/util/process" ) diff --git a/cache/repo_cache_bug.go b/cache/repo_cache_bug.go index a3f195ff..4522f1bc 100644 --- a/cache/repo_cache_bug.go +++ b/cache/repo_cache_bug.go @@ -12,7 +12,7 @@ import ( "github.com/blevesearch/bleve" - "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/entities/bug" "github.com/MichaelMure/git-bug/entity" "github.com/MichaelMure/git-bug/query" "github.com/MichaelMure/git-bug/repository" @@ -263,7 +263,7 @@ func (c *RepoCache) resolveBugMatcher(f func(*BugExcerpt) bool) (entity.Id, erro // ResolveComment search for a Bug/Comment combination matching the merged // bug/comment Id prefix. Returns the Bug containing the Comment and the Comment's // Id. -func (c *RepoCache) ResolveComment(prefix string) (*BugCache, entity.Id, error) { +func (c *RepoCache) ResolveComment(prefix string) (*BugCache, entity.CombinedId, error) { bugPrefix, _ := entity.SeparateIds(prefix) bugCandidate := make([]entity.Id, 0, 5) @@ -277,7 +277,7 @@ func (c *RepoCache) ResolveComment(prefix string) (*BugCache, entity.Id, error) c.muBug.RUnlock() matchingBugIds := make([]entity.Id, 0, 5) - matchingCommentId := entity.UnsetId + matchingCommentId := entity.UnsetCombinedId var matchingBug *BugCache // search for matching comments @@ -286,22 +286,22 @@ func (c *RepoCache) ResolveComment(prefix string) (*BugCache, entity.Id, error) for _, bugId := range bugCandidate { b, err := c.ResolveBug(bugId) if err != nil { - return nil, entity.UnsetId, err + return nil, entity.UnsetCombinedId, err } for _, comment := range b.Snapshot().Comments { - if comment.Id().HasPrefix(prefix) { + if comment.CombinedId().HasPrefix(prefix) { matchingBugIds = append(matchingBugIds, bugId) matchingBug = b - matchingCommentId = comment.Id() + matchingCommentId = comment.CombinedId() } } } if len(matchingBugIds) > 1 { - return nil, entity.UnsetId, entity.NewErrMultipleMatch("bug/comment", matchingBugIds) + return nil, entity.UnsetCombinedId, entity.NewErrMultipleMatch("bug/comment", matchingBugIds) } else if len(matchingBugIds) == 0 { - return nil, entity.UnsetId, errors.New("comment doesn't exist") + return nil, entity.UnsetCombinedId, errors.New("comment doesn't exist") } return matchingBug, matchingCommentId, nil diff --git a/cache/repo_cache_common.go b/cache/repo_cache_common.go index 49ec72d0..43ac6beb 100644 --- a/cache/repo_cache_common.go +++ b/cache/repo_cache_common.go @@ -6,9 +6,9 @@ import ( "github.com/go-git/go-billy/v5" "github.com/pkg/errors" - "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/entities/bug" + "github.com/MichaelMure/git-bug/entities/identity" "github.com/MichaelMure/git-bug/entity" - "github.com/MichaelMure/git-bug/identity" "github.com/MichaelMure/git-bug/repository" ) diff --git a/cache/repo_cache_identity.go b/cache/repo_cache_identity.go index 75453cb8..eb30687c 100644 --- a/cache/repo_cache_identity.go +++ b/cache/repo_cache_identity.go @@ -5,8 +5,8 @@ import ( "encoding/gob" "fmt" + "github.com/MichaelMure/git-bug/entities/identity" "github.com/MichaelMure/git-bug/entity" - "github.com/MichaelMure/git-bug/identity" ) const identityCacheFile = "identity-cache" diff --git a/cache/repo_cache_test.go b/cache/repo_cache_test.go index c01f5478..a9557ff0 100644 --- a/cache/repo_cache_test.go +++ b/cache/repo_cache_test.go @@ -8,7 +8,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/entities/bug" "github.com/MichaelMure/git-bug/query" "github.com/MichaelMure/git-bug/repository" ) |