Commit aedcf3c

Eric Bower  ·  2025-03-23 23:23:14 -0400 EDT
parent ec17d58
chore: comments and cleanup
2 files changed,  +22, -11
+8, -0
......@@ -21,6 +21,14 @@ fmt:
2121 go fmt ./...
2222 .PHONY: fmt
2323
24+lint:
25+ golangci-lint run -E goimports -E godot --timeout 10m
26+.PHONY: lint
27+
28+test:
29+ go test ./...
30+.PHONY: test
31+
2432 static: build clean
2533 ./pgit \
2634 --out ./public \
+14, -11
......@@ -75,7 +75,6 @@ type RevInfo interface {
7575 Name() string
7676 }
7777
78-// revision data
7978 type RevData struct {
8079 id string
8180 name string
......@@ -239,7 +238,7 @@ func diffFileType(_type git.DiffFileType) string {
239238 return ""
240239 }
241240
242-// converts contents of files in git tree to pretty formatted code
241+// converts contents of files in git tree to pretty formatted code.
243242 func (c *Config) parseText(filename string, text string) (string, error) {
244243 lexer := lexers.Match(filename)
245244 if lexer == nil {
......@@ -344,7 +343,8 @@ func (c *Config) copyStatic(dir string) error {
344343 bail(err)
345344 fp := filepath.Join(c.Outdir, e.Name())
346345 c.Logger.Info("writing", "filepath", fp)
347- os.WriteFile(fp, w, 0644)
346+ err = os.WriteFile(fp, w, 0644)
347+ bail(err)
348348 }
349349
350350 return nil
......@@ -522,8 +522,8 @@ func (c *Config) getRefsURL() template.URL {
522522 }
523523
524524 // controls the url for trees and logs
525-// /logs/getRevIDForURL()/index.html
526-// /tree/getRevIDForURL()/item/file.x.html
525+// - /logs/getRevIDForURL()/index.html
526+// - /tree/getRevIDForURL()/item/file.x.html.
527527 func getRevIDForURL(info RevInfo) string {
528528 return info.Name()
529529 }
......@@ -625,7 +625,6 @@ func (c *Config) writeRepo() *BranchOutput {
625625 }
626626
627627 refInfoMap := map[string]*RefInfo{}
628- mainOutput := &BranchOutput{}
629628 for _, revData := range revs {
630629 refInfoMap[revData.Name()] = &RefInfo{
631630 ID: revData.ID(),
......@@ -664,6 +663,9 @@ func (c *Config) writeRepo() *BranchOutput {
664663 return urlI > urlJ
665664 })
666665
666+ // we assume the first revision in the list is the "main" revision which mostly
667+ // means that's the README we use for the default summary page.
668+ mainOutput := &BranchOutput{}
667669 var wg sync.WaitGroup
668670 for i, revData := range revs {
669671 c.Logger.Info("writing revision", "revision", revData.Name())
......@@ -758,7 +760,7 @@ func (tw *TreeWalker) calcBreadcrumbs(curpath string) []*Breadcrumb {
758760 return crumbs
759761 }
760762
761-func FilenameToDevIcon(filename string) string {
763+func filenameToDevIcon(filename string) string {
762764 ext := filepath.Ext(filename)
763765 extMappr := map[string]string{
764766 ".html": "html5",
......@@ -831,7 +833,7 @@ func (tw *TreeWalker) NewTreeItem(entry *git.TreeEntry, curpath string, crumbs [
831833 "index.html",
832834 )
833835 } else if typ == git.ObjectBlob {
834- item.Icon = FilenameToDevIcon(item.Name)
836+ item.Icon = filenameToDevIcon(item.Name)
835837 }
836838 item.URL = fpath
837839
......@@ -1056,8 +1058,8 @@ func main() {
10561058 var revsFlag = flag.String("revs", "HEAD", "list of revs to generate logs and tree (e.g. main,v1,c69f86f,HEAD)")
10571059 var themeFlag = flag.String("theme", "dracula", "theme to use for site")
10581060 var labelFlag = flag.String("label", "", "pretty name for the subdir where we create the repo, default is last folder in --repo")
1059- var cloneFlag = flag.String("clone-url", "", "git clone URL")
1060- var homeFlag = flag.String("home-url", "", "URL for breadcumbs to get to list of repositories")
1061+ var cloneFlag = flag.String("clone-url", "", "git clone URL for upstream")
1062+ var homeFlag = flag.String("home-url", "", "URL for breadcumbs to go to root page, hidden if empty")
10611063 var descFlag = flag.String("desc", "", "description for repo")
10621064 var rootRelativeFlag = flag.String("root-relative", "/", "html root relative")
10631065 var maxCommitsFlag = flag.Int("max-commits", 0, "maximum number of commits to generate")
......@@ -1113,7 +1115,8 @@ func main() {
11131115 }
11141116
11151117 config.writeRepo()
1116- config.copyStatic("static")
1118+ err = config.copyStatic("static")
1119+ bail(err)
11171120
11181121 styles := style(*theme)
11191122 fmt.Println(styles)