Skip to content

Commit

Permalink
fix: check other possible readme paths/branches (#450)
Browse files Browse the repository at this point in the history
* fix: check other possible readme paths/branches

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: url

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: Readme.md

---------

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
  • Loading branch information
caarlos0 authored Jul 3, 2024
1 parent f3d0cb8 commit 8e51396
Show file tree
Hide file tree
Showing 4 changed files with 50 additions and 42 deletions.
29 changes: 16 additions & 13 deletions github.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package main

import (
"errors"
"fmt"
"net/http"
"net/url"
"strings"
Expand Down Expand Up @@ -29,19 +30,21 @@ func findGitHubREADME(s string) (*source, error) {
}
u.Host = "raw.githubusercontent.com"

for _, r := range readmeNames {
v := u
v.Path += "/master/" + r

// nolint:bodyclose
// it is closed on the caller
resp, err := http.Get(v.String())
if err != nil {
return nil, err
}

if resp.StatusCode == http.StatusOK {
return &source{resp.Body, v.String()}, nil
for _, b := range readmeBranches {
for _, r := range readmeNames {
v := *u
v.Path += fmt.Sprintf("/%s/%s", b, r)

// nolint:bodyclose
// it is closed on the caller
resp, err := http.Get(v.String())
if err != nil {
return nil, err
}

if resp.StatusCode == http.StatusOK {
return &source{resp.Body, v.String()}, nil
}
}
}

Expand Down
29 changes: 16 additions & 13 deletions gitlab.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package main

import (
"errors"
"fmt"
"net/http"
"net/url"
"strings"
Expand All @@ -28,19 +29,21 @@ func findGitLabREADME(s string) (*source, error) {
return nil, err
}

for _, r := range readmeNames {
v := u
v.Path += "/raw/master/" + r

// nolint:bodyclose
// it is closed on the caller
resp, err := http.Get(v.String())
if err != nil {
return nil, err
}

if resp.StatusCode == http.StatusOK {
return &source{resp.Body, v.String()}, nil
for _, b := range readmeBranches {
for _, r := range readmeNames {
v := *u
v.Path += fmt.Sprintf("/raw/%s/%s", b, r)

// nolint:bodyclose
// it is closed on the caller
resp, err := http.Get(v.String())
if err != nil {
return nil, err
}

if resp.StatusCode == http.StatusOK {
return &source{resp.Body, v.String()}, nil
}
}
}

Expand Down
19 changes: 10 additions & 9 deletions glow_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,16 @@ func TestGlowSources(t *testing.T) {
}

for _, v := range tt {
buf := &bytes.Buffer{}
err := executeArg(rootCmd, v, buf)

if err != nil {
t.Errorf("Error during execution (args: %s): %v", v, err)
}
if buf.Len() == 0 {
t.Errorf("Output buffer should not be empty (args: %s)", v)
}
t.Run(v, func(t *testing.T) {
buf := &bytes.Buffer{}
err := executeArg(rootCmd, v, buf)
if err != nil {
t.Errorf("Error during execution (args: %s): %v", v, err)
}
if buf.Len() == 0 {
t.Errorf("Output buffer should not be empty (args: %s)", v)
}
})
}
}

Expand Down
15 changes: 8 additions & 7 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,14 @@ var (
// CommitSHA as provided by goreleaser.
CommitSHA = ""

readmeNames = []string{"README.md", "README"}
configFile string
pager bool
style string
width uint
showAllFiles bool
mouse bool
readmeNames = []string{"README.md", "README", "Readme.md", "Readme", "readme.md", "readme"}
readmeBranches = []string{"main", "master"}
configFile string
pager bool
style string
width uint
showAllFiles bool
mouse bool

rootCmd = &cobra.Command{
Use: "glow [SOURCE|DIR]",
Expand Down

0 comments on commit 8e51396

Please sign in to comment.