c572fcfe04
Rename the Go module path from code.gitea.io/gitea to git.mokoconsulting.tech/MokoConsulting/MokoGitea across the entire codebase. Scope: - go.mod module declaration - 2,235 Go source files (import paths) - Dockerfile WORKDIR and COPY paths - Swagger API templates - golangci.yml linter config External dependencies (code.gitea.io/gitea-vet, code.gitea.io/sdk/gitea, gitea.com/gitea/act, etc.) are intentionally NOT renamed — they are separate upstream modules. Closes #132 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
49 lines
1.2 KiB
Go
49 lines
1.2 KiB
Go
// Copyright 2023 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package internal
|
|
|
|
import (
|
|
"strings"
|
|
|
|
"git.mokoconsulting.tech/MokoConsulting/MokoGitea/modules/indexer/internal"
|
|
"git.mokoconsulting.tech/MokoConsulting/MokoGitea/modules/log"
|
|
)
|
|
|
|
const filenameMatchNumberOfLines = 7 // Copied from GitHub search
|
|
|
|
func FilenameIndexerID(repoID int64, filename string) string {
|
|
return internal.Base36(repoID) + "_" + filename
|
|
}
|
|
|
|
func ParseIndexerID(indexerID string) (int64, string) {
|
|
before, after, ok := strings.Cut(indexerID, "_")
|
|
if !ok {
|
|
log.Error("Unexpected ID in repo indexer: %s", indexerID)
|
|
}
|
|
repoID, _ := internal.ParseBase36(before)
|
|
return repoID, after
|
|
}
|
|
|
|
func FilenameOfIndexerID(indexerID string) string {
|
|
_, after, ok := strings.Cut(indexerID, "_")
|
|
if !ok {
|
|
log.Error("Unexpected ID in repo indexer: %s", indexerID)
|
|
}
|
|
return after
|
|
}
|
|
|
|
// FilenameMatchIndexPos returns the boundaries of its first seven lines.
|
|
func FilenameMatchIndexPos(content string) (int, int) {
|
|
count := 1
|
|
for i, c := range content {
|
|
if c == '\n' {
|
|
count++
|
|
if count == filenameMatchNumberOfLines {
|
|
return 0, i
|
|
}
|
|
}
|
|
}
|
|
return 0, len(content)
|
|
}
|