feat: support auto check upgrade (#53)

This commit is contained in:
Li4n0
2022-01-09 23:51:46 +08:00
committed by GitHub
parent 30f9069e45
commit f6afe0fa12
16 changed files with 216 additions and 32 deletions
+25
View File
@@ -0,0 +1,25 @@
package update
import (
"strings"
"github.com/blang/semver"
"github.com/pkg/errors"
"github.com/rhysd/go-github-selfupdate/selfupdate"
)
func CheckUpgrade(currentVersion string) (bool, *selfupdate.Release, error) {
latest, found, err := selfupdate.DetectLatest("Li4n0/revsuit")
if err != nil {
return false, nil, errors.Wrap(err, "error when detecting version")
}
v, err := semver.Parse(strings.TrimPrefix(currentVersion, "v"))
if err != nil {
return false, nil, errors.Wrap(err, "error when parse version")
}
if !found || latest.Version.LTE(v) {
return false, nil, nil
}
return true, latest, nil
}