From 0bc9bed597bb4d3333834da0ce4a4dc03b6b2d0d Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Tue, 3 Dec 2024 00:34:39 -0600 Subject: [PATCH] more refactor to protobuf --- configfile.go | 108 +----------------------------------------------- getPatches.go | 5 +++ newRepo.go | 4 ++ scanIterator.go | 7 ++-- 4 files changed, 14 insertions(+), 110 deletions(-) diff --git a/configfile.go b/configfile.go index 2cab8fa..d24fc8e 100644 --- a/configfile.go +++ b/configfile.go @@ -1,113 +1,6 @@ package repolist -import ( - "errors" - - "go.wit.com/lib/gui/repostatus" - "go.wit.com/log" -) - /* -func (v *RepoList) InitRepoList(cfgfile string) { - v.cfgfile = cfgfile - lines := parsecfg(cfgfile) - for _, line := range lines { - var repo *RepoRow - var err error - line = strings.TrimSpace(line) - if line == "" { - // skip empty lines - continue - } - if strings.HasPrefix(line, "#") { - // skip config file comment lines - continue - } - parts := strings.Split(line, " ") - var private bool = false - var readonly bool = false - var userdir bool = false - if len(parts) > 1 { - repodir := parts[0] - for _, s := range parts[1:] { - option := strings.Split(s, "=") - if len(option) != 2 { - log.Log(REPOWARN, "can not parse cfgfile line:", line) - continue - } - switch option[0] { - case "private": - if option[1] == "true" { - log.Log(REPOWARN, repodir, "setting private to true") - private = true - } else { - log.Log(REPOWARN, repodir, "setting private to false") - private = false - } - case "readonly": - if option[1] == "true" { - log.Log(REPOWARN, repodir, "setting ReadOnly to true") - readonly = true - } else { - log.Log(REPOWARN, repodir, "setting ReadOnly to false") - readonly = false - } - case "userdir": - if option[1] == "true" { - log.Log(REPOWARN, repodir, "setting this directory as Writable()") - userdir = true - } else { - userdir = false - } - default: - log.Log(REPOWARN, "unknown config file option", s) - } - } - } - if userdir { - log.Log(REPOWARN, "add this as a writable dir", line) - continue - } - if len(parts) > 0 { - path := parts[0] - repo, err = v.NewRepo(path) - } - if err != nil { - log.Log(REPOWARN, line, "repo could not be added", err) - continue - } - if repo == nil { - // there is not a new repo - continue - } - if private { - repo.Status.SetPrivate(true) - } else { - repo.Status.SetPrivate(false) - } - if readonly { - repo.Status.SetReadOnly(true) - } else { - repo.Status.SetReadOnly(false) - } - } -} - -func parsecfg(f string) []string { - homeDir, _ := os.UserHomeDir() - cfgfile := filepath.Join(homeDir, f) - content, err := ioutil.ReadFile(cfgfile) - if err != nil { - log.Log(REPOWARN, "read cfgfile error", err) - return nil - } - out := string(content) - out = strings.TrimSpace(out) - lines := strings.Split(out, "\n") - return lines -} -*/ - func (rl *RepoList) ArgGitPull() bool { var localonly int var badmap int @@ -195,3 +88,4 @@ func (rl *RepoList) ArgCheckoutUser() bool { func (rl *RepoList) Cfgfile() string { return rl.cfgfile } +*/ diff --git a/getPatches.go b/getPatches.go index aaaa472..90c429f 100644 --- a/getPatches.go +++ b/getPatches.go @@ -82,6 +82,11 @@ func (repo *RepoRow) GetMasterPatches() (int, []*Patch) { return c, all } +func isEmpty(a any) bool { + return false +} + + func (r *RepoList) MakePatchset(setdir string) bool { for _, repo := range r.allrepos { userv := repo.Status.GetUserVersion() diff --git a/newRepo.go b/newRepo.go index b0c583f..f8e5065 100644 --- a/newRepo.go +++ b/newRepo.go @@ -62,21 +62,25 @@ func (r *RepoRow) Show2() { // adds a gui row to the table based off the repo protobuf func (r *RepoList) AddRepo(pb *gitpb.Repo) (*RepoRow, error) { + log.Info("isdir() start") if !pb.IsDirectory() { // this directory doesn't exist anymore // was moved, or isn't in the ~/go/src or wherever go.work is return nil, errors.New("path is gone: " + pb.FullPath) } + log.Info("isdir() end") test, ok := r.allrepos[pb.GetGoPath()] if ok { // this repo gopath was already added return test, nil } + log.Info("isdir() end 2") status, err := repostatus.NewRepoStatusWindow(pb) if err != nil { return nil, err } + log.Info("isdir() end 3") newRepo := new(RepoRow) newRepo.Status = status newRepo.pb = pb diff --git a/scanIterator.go b/scanIterator.go index af1c28e..8c50767 100644 --- a/scanIterator.go +++ b/scanIterator.go @@ -63,6 +63,7 @@ func (r *RepoList) ReposSortByName() *RepoIterator { return iterator } +/* func (r *RepoList) UnmergedRepos() *RepoIterator { repoPointers := r.selectUnmergedRepos() @@ -72,6 +73,7 @@ func (r *RepoList) UnmergedRepos() *RepoIterator { return iterator } +*/ type ByName []*RepoRow @@ -97,15 +99,13 @@ func (r *RepoList) selectRepoAll() []*RepoRow { if !repo.Status.InitOk { continue } - if repo.Status.Whitelist { - continue - } repoPointers = append(repoPointers, repo) // Copy pointers for safe iteration } return repoPointers } +/* // this sort doesn't really work. I think it forgets to sort the last two // todo: sort this out. literally // SelectRepoPointers safely returns a slice of pointers to Repo records. @@ -143,3 +143,4 @@ func (r *RepoList) selectUnmergedRepos() []*RepoRow { return repoPointers } +*/