Radish alpha
r
rad:z4D5UCArafTzTQpDZNQRuqswh3ury
Radicle desktop app
Radicle
Git
Fix update checker not detecting new versions
Merged rudolfs opened 1 month ago

enable() was called before invoke(“version”) resolved, so the first checkNewVersion() could run while sanitizedCurrentVersion was still undefined. Even though newVersion is a derived value, Svelte 5 may not reliably recompute it when state changes asynchronously on a module-level class instance.

Moving enable() inside the invoke callback ensures sanitizedCurrentVersion is always set before any version comparison runs.

lint unit-test e2e 👉 Workflow runs 👉 Branch on GitHub

1 file changed +3 -3 7fa9c42c b6facd02
modified src/lib/updateChecker.svelte.ts
@@ -58,9 +58,6 @@ class UpdateChecker {

  public static init(): UpdateChecker {
    const updateChecker = new UpdateChecker();
-
    if (isEnabledStore.value) {
-
      updateChecker.enable();
-
    }

    void invoke<string>("version").then(currentVersion => {
      updateChecker.currentVersion = currentVersion.toString();
@@ -68,6 +65,9 @@ class UpdateChecker {
      if (version) {
        updateChecker.sanitizedCurrentVersion = version.toString();
      }
+
      if (isEnabledStore.value) {
+
        updateChecker.enable();
+
      }
    });

    return updateChecker;