Skip to content

K2GO-430 feat(dependency): require a minimum dash-node version per module (Forgejo 1.3.7) - #598

Merged
luisguzman-adfa merged 4 commits into
mainfrom
feat/K2GO-430-dashnode-dependency
Sep 26, 2026
Merged

luisguzman-adfa merged 4 commits into
mainfrom
feat/K2GO-430-dashnode-dependency

Conversation

@luisguzman-adfa

Copy link
Copy Markdown
Collaborator

Gate module install on the box dash-node version so an old dashboard cannot silently break a module.

  • Hard block: a module below its declared minimum (DashNodeRequirement; Forgejo -> 1.3.7) cannot install;
    a dialog routes to the dashboard update. Wired in openModuleIndex (all batch installs) and ModuleRetry.
  • Soft suggest: when a dashboard update is available, recommend updating first (Update / Install anyway).
  • Reuses DashboardVersion, UpdateStatusCache, BrandDialog, OpReturnNavigator. New dependency/ package
    (domain registry + gate). l10n to all 33 locales. App-only (no dash-node change).

Verified: unit tests + lint green; device-tested on a box with dash-node 1.3.5 (Forgejo install blocked,
routes to the dashboard update).

…ersion

Forgejo needs dash-node 1.3.7 (its repo status/refresh endpoints); an older dashboard breaks it silently. DashNodeGate hard-blocks a module install below its declared minimum (DashNodeRequirement) and routes to the dashboard update; otherwise, when a dashboard update is available, it suggests updating first. Wired once in openModuleIndex, where every install batch starts. Reuses DashboardVersion, UpdateStatusCache and OpReturnNavigator.
ModuleRetry.fire now checks DashNodeGate.allowInstall, since a retry starts the index directly and bypassed the batch gate. Dismissing the soft suggestion now proceeds with the install instead of swallowing it. Add a DashboardVersion.atLeast unit test.
@luisguzman-adfa
luisguzman-adfa merged commit e77d26d into main Sep 26, 2026
3 checks passed
@luisguzman-adfa
luisguzman-adfa deleted the feat/K2GO-430-dashnode-dependency branch September 26, 2026 02:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant