on main help sign in
style: small code style updates
commitfb7d5b6a93336b36e0acc570df29e03dc82969a3 authorAndrey Nering <andreynering@users.noreply.github.com> dateTue 18 Nov 2025, 14:43 (1 year ago) parent8f437ac
3 files changed+10−9
internal/app/app.go+1 internal/update/update.go+7−9 internal/update/update_test.go+2
internal/app/app.go+1
@@ -400,6 +400,7 @@ func (app *App) Shutdown() {
400400func (app *App) checkForUpdates(ctx context.Context) {
401401 checkCtx, cancel := context.WithTimeout(ctx, 30*time.Second)
402402 defer cancel()
403+
403404 info, err := update.Check(checkCtx, version.Version, update.Default)
404405 if err != nil || !info.Available() {
405406 return
internal/update/update.go+7−9
@@ -11,7 +11,7 @@ import (
1111)
1212
1313const (
14− githubAPIURL = "https://api.github.com/repos/charmbracelet/crush/releases/latest"
14+ githubApiUrl = "https://api.github.com/repos/charmbracelet/crush/releases/latest"
1515 userAgent = "crush/1.0"
1616)
1717
@@ -34,13 +34,11 @@ type Info struct {
3434func (i Info) Available() bool {
3535 cpr := strings.Contains(i.Current, "-")
3636 lpr := strings.Contains(i.Latest, "-")
37− // current is pre release
38− if cpr {
39− // latest isn't a prerelease
40− if !lpr {
41− return true
42− }
37+ // current is pre release && latest isn't a prerelease
38+ if cpr && !lpr {
39+ return true
4340 }
41+ // latest is pre release && current isn't a prerelease
4442 if lpr && !cpr {
4543 return false
4644 }
@@ -88,7 +86,7 @@ func (c *github) Latest(ctx context.Context) (*Release, error) {
8886 Timeout: 30 * time.Second,
8987 }
9088
91− req, err := http.NewRequestWithContext(ctx, "GET", githubAPIURL, nil)
89+ req, err := http.NewRequestWithContext(ctx, "GET", githubApiUrl, nil)
9290 if err != nil {
9391 return nil, err
9492 }
@@ -103,7 +101,7 @@ func (c *github) Latest(ctx context.Context) (*Release, error) {
103101
104102 if resp.StatusCode != http.StatusOK {
105103 body, _ := io.ReadAll(resp.Body)
106− return nil, fmt.Errorf("GitHub API returned status %d: %s", resp.StatusCode, string(body))
104+ return nil, fmt.Errorf("github api returned status %d: %s", resp.StatusCode, string(body))
107105 }
108106
109107 var release Release
internal/update/update_test.go+2
@@ -28,12 +28,14 @@ func TestCheckForUpdate_Beta(t *testing.T) {
2828 require.NotNil(t, info)
2929 require.False(t, info.Available())
3030 })
31+
3132 t.Run("current is also beta", func(t *testing.T) {
3233 info, err := Check(t.Context(), "v0.11.0-beta.1", testClient{"v0.11.0-beta.2"})
3334 require.NoError(t, err)
3435 require.NotNil(t, info)
3536 require.True(t, info.Available())
3637 })
38+
3739 t.Run("current is beta, latest isn't", func(t *testing.T) {
3840 info, err := Check(t.Context(), "v0.11.0-beta.1", testClient{"v0.11.0"})
3941 require.NoError(t, err)