Versions in this module Expand all Collapse all v0 v0.5.0 Nov 12, 2026 Changes in this version + const DefaultAPI + const ReasonDevelopment + const ReasonManual + const ReasonReadOnly + const ReasonUnsupported + var ErrBusy = errors.New("update: an update is already under way") + var ErrCannot = errors.New("update: Exhale cannot update itself here") + var ErrNotYet = errors.New("update: GitHub has not been asked yet") + var ErrUpToDate = errors.New("update: this is already the newest version") + func InstallPackage(ctx context.Context, kind, file string) error + func Newer(a, b string) bool + func PackageCommand(kind, file string, has func(string) bool) []string + func PackageKind() string + type Install struct + Bundle string + Exe string + GOOS string + Method Method + Package string + Service bool + Writable bool + func Detect(exe string, desktopApp bool) Install + type InstallProgress struct + Done int64 + Error string + Phase Phase + Total int64 + Version string + type Method string + const MethodBinary + const MethodDocker + const MethodMacApp + const MethodPackage + const MethodWindows + type Phase string + const PhaseDownloading + const PhaseFailed + const PhaseIdle + const PhaseInstalling + const PhaseRestarting + type Release struct + Assets map[string]string + Notes string + Published time.Time + URL string + Version string + type Updater struct + API string + Client *http.Client + Dir string + Every time.Duration + Install Install + Log *slog.Logger + Now func() time.Time + OnlyWhenAsked bool + Restart func() + Version string + func (u *Updater) Apply(ctx context.Context) (VersionInfo, error) + func (u *Updater) Check(ctx context.Context, refresh bool) (*Release, error) + func (u *Updater) DownloadPackage(ctx context.Context, kind string) (string, string, error) + func (u *Updater) Finish() error + func (u *Updater) Info(ctx context.Context, refresh bool) VersionInfo + func (u *Updater) Plan(ctx context.Context) (VersionInfo, error) + func (u *Updater) Restarting() bool + func (u *Updater) Serve(ctx context.Context) error + func (u *Updater) String() string + type VersionInfo struct + Available bool + CanApply bool + CheckError string + CheckedAt string + Command string + Current string + Download string + Latest string + Method Method + Notes string + NotesURL string + Progress InstallProgress + PublishedAt string + Reason string