AutoUpdaterController class
Controller for auto-update functionality.
Manages version checking, lock file management for preventing concurrent updates, installation, and shell config cleanup.
- Inheritance
-
- Object
- Listenable
- ListNotifier
- SintController
- AutoUpdaterController
Constructors
Properties
- appVersion → String
-
Current app version.
final
- configHomeDir → String
-
Config home directory.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- initialized → bool
-
Checks whether the controller has already been initialized.
no setterinherited
- isClosed → bool
-
Checks whether the controller has already been closed.
no setterinherited
- isDisposed → bool
-
no setterinherited
- isRunningWithBun → bool
-
Whether running with Bun runtime.
final
- latestVersion → RxnString
-
Latest available version.
final
- listenersLength → int
-
no setterinherited
- lockFilePath → String
-
Get the path to the lock file.
no setter
- packageUrl → String
-
Package URL for npm operations.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
updateStatus
→ Rx<
AutoUpdateInstallStatus?> -
Current update status.
final
- userType → String?
-
User type (ant, external).
final
Methods
-
acquireLock(
) → Future< bool> - Attempts to acquire a lock for auto-updater. Returns true if lock was acquired, false if another process holds it.
-
addListener(
SintStateUpdate listener) → Disposer -
Register a closure to be called when the object notifies its listeners.
inherited
-
addListenerId(
Object? key, SintStateUpdate listener) → Disposer -
inherited
-
assertMinVersion(
String minVersion) → String? - Checks if the current version meets the minimum required version.
-
checkGlobalInstallPermissions(
) → Future< ({bool hasPermissions, String? npmPrefix})> - Check global install permissions.
-
containsListener(
SintStateUpdate listener) → bool -
inherited
-
debounce<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(milliseconds: 400)}) → void -
Calls
callbackafterrxstops changing forduration. Useful for search-as-you-type, form validation, etc.inherited -
dispose(
) → void -
inherited
-
ever<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackevery timerxchanges. Auto-cancels on controller disposal.inherited -
getLatestVersion(
ReleaseChannel channel) → Future< String?> - Get the latest version from npm registry for a given channel.
-
getMaxVersion(
MaxVersionConfig config) → String? - Returns the maximum allowed version for the current user type.
-
getMaxVersionMessage(
MaxVersionConfig config) → String? - Returns the server-driven message explaining a known issue.
-
getNpmDistTags(
) → Future< NpmDistTags> - Get npm dist-tags (latest and stable versions).
-
getVersionHistory(
int limit) → Future< List< String> > -
Get version history from npm registry.
Returns versions sorted newest-first, limited to
limit. -
installGlobalPackage(
{String? specificVersion}) → Future< AutoUpdateInstallStatus> - Install a global package.
-
interval<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(seconds: 1)}) → void -
Calls
callbackat most once perduration, ignoring intermediate changes. Useful for rate-limiting UI updates.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
once<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackonly the first timerxchanges, then cancels.inherited -
onClose(
) → void -
Called before onDelete method. onClose might be used to
dispose resources used by the controller. Like closing events,
or streams before the controller is destroyed.
Or dispose objects that can potentially create some memory leaks,
like TextEditingControllers, AnimationControllers.
Might be useful as well to persist some data on disk.
inherited
-
onDelete(
) → void -
inherited
-
onInit(
) → void -
Called immediately after the widget is allocated in memory.
You might use this to initialize something for the controller.
inherited
-
onReady(
) → void -
Called 1 frame after onInit(). It is the perfect place to enter
navigation events, like snackbar, dialogs, or a new route, or
async request.
inherited
-
onStart(
) → void -
Called at the exact moment the widget is allocated in memory.
It uses an internal "callable" type, to avoid any @overrides in subclasses.
This method should be internal and is required to define the
lifetime cycle of the subclass.
inherited
-
refresh(
) → void -
inherited
-
refreshGroup(
Object id) → void -
inherited
-
releaseLock(
) → Future< void> - Releases the update lock if it is held by this process.
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies.
inherited
-
removeListenerId(
Object id, VoidCallback listener) → void -
inherited
-
reportAdd(
VoidCallback disposer) → void -
inherited
-
reportRead(
) → void -
inherited
-
shouldSkipVersion(
{required String targetVersion, String? minimumVersion}) → bool - Checks if a target version should be skipped due to minimumVersion setting.
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
[List< Object> ? ids, bool condition = true]) → void -
Notifies listeners to update the UI.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited