diff --git a/.codeclimate.yml b/.codeclimate.yml index 3f56ed6d..c0873f03 100644 --- a/.codeclimate.yml +++ b/.codeclimate.yml @@ -1,5 +1,5 @@ version: "2" - checks: - similar-code: - config: - threshold: 3 +checks: + similar-code: + config: + threshold: 3 diff --git a/Makefile b/Makefile index bde2f7a7..dfa59a84 100644 --- a/Makefile +++ b/Makefile @@ -11,6 +11,10 @@ install: go install -ldflags="-s -w -X main.version=$(shell git describe --always --abbrev=6) -X main.date=$(shell date +%FT%T%z)" which wtf +lint: + structcheck ./... + varcheck ./... + run: build bin/wtf diff --git a/clocks/display.go b/clocks/display.go index d59e243a..44fedbbf 100644 --- a/clocks/display.go +++ b/clocks/display.go @@ -8,7 +8,7 @@ import ( func (widget *Widget) display(clocks []Clock) { if len(clocks) == 0 { - fmt.Fprintf(widget.View, "\n%s", " no timezone data available") + widget.View.SetText(fmt.Sprintf("\n%s", " no timezone data available")) return } diff --git a/gerrit/display.go b/gerrit/display.go index 6a9cd499..24645197 100644 --- a/gerrit/display.go +++ b/gerrit/display.go @@ -10,7 +10,7 @@ func (widget *Widget) display() { project := widget.currentGerritProject() if project == nil { - fmt.Fprintf(widget.View, "%s", " Gerrit project data is unavailable (1)") + widget.View.SetText(fmt.Sprintf("%s", " Gerrit project data is unavailable (1)")) return } diff --git a/gitlab/widget.go b/gitlab/widget.go index 861e8ec3..3033e120 100644 --- a/gitlab/widget.go +++ b/gitlab/widget.go @@ -32,13 +32,8 @@ type Widget struct { } func NewWidget(app *tview.Application, pages *tview.Pages) *Widget { - apiKey := wtf.Config.UString( - "wtf.mods.gitlab.apiKey", - os.Getenv("WTF_GITLAB_TOKEN"), - ) - baseURL := wtf.Config.UString("wtf.mods.gitlab.domain") - gitlab := glb.NewClient(nil, apiKey) + gitlab := glb.NewClient(nil, apiKey()) if baseURL != "" { gitlab.SetBaseURL(baseURL) @@ -92,6 +87,13 @@ func (widget *Widget) Prev() { /* -------------------- Unexported Functions -------------------- */ +func apiKey() string { + return wtf.Config.UString( + "wtf.mods.gitlab.apiKey", + os.Getenv("WTF_GITLAB_TOKEN"), + ) +} + func (widget *Widget) buildProjectCollection(projectData map[string]interface{}) []*GitlabProject { gitlabProjects := []*GitlabProject{} diff --git a/logger/log.go b/logger/log.go index 69b5fceb..b654779d 100644 --- a/logger/log.go +++ b/logger/log.go @@ -36,7 +36,7 @@ func Log(msg string) { return } - f, err := os.OpenFile(logFilePath(), os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666) + f, err := os.OpenFile(logFilePath(), os.O_RDWR|os.O_CREATE|os.O_APPEND, 0600) if err != nil { log.Fatalf("error opening file: %v", err) } diff --git a/main.go b/main.go index 34b53e4b..5370557d 100644 --- a/main.go +++ b/main.go @@ -131,7 +131,10 @@ func refreshAllWidgets() { } func setTerm() { - os.Setenv("TERM", Config.UString("wtf.term", os.Getenv("TERM"))) + err := os.Setenv("TERM", Config.UString("wtf.term", os.Getenv("TERM"))) + if err != nil { + return + } } func watchForConfigChanges(app *tview.Application, configFilePath string, grid *tview.Grid, pages *tview.Pages) { diff --git a/travisci/client.go b/travisci/client.go index 6a88e5b3..dbd906fc 100644 --- a/travisci/client.go +++ b/travisci/client.go @@ -13,8 +13,6 @@ import ( "github.com/senorprogrammer/wtf/wtf" ) -const APIEnvToken = "WTF_TRAVIS_API_TOKEN" - var TRAVIS_HOSTS = map[bool]string{ false: "travis-ci.org", true: "travis-ci.com", @@ -75,7 +73,7 @@ func travisRequest(path string) (*http.Response, error) { func apiToken() string { return wtf.Config.UString( "wtf.mods.travisci.apiKey", - os.Getenv(APIEnvToken), + os.Getenv("WTF_TRAVIS_API_TOKEN"), ) }