Skip to content

v1.4.1

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Sep 22:57
· 1 commit to main since this release
Immutable release. Only release title and notes can be modified.
e79862a

godman 1.4.1

A follow-up to 1.4.0: fixes for edge cases found while reviewing it, plus the Windows
Start Menu collision. Nothing here changes the 1.4.0 layout or needs any migration step.

Fixes

  • install --force over the active install keeps it active. The reinstalled entry
    used to get a new id while ActiveId kept the old one, so list showed nothing active
    and deactivate refused, although godot kept working. The entry now keeps its id, so
    your registry stays valid however the install ran, including a global reinstall under
    sudo, whose HOME reset hides your registry from it. When godman can see the entry is
    active (not the case under sudo), it also rewrites the shim so it follows the
    reinstalled directory, and on Windows keeps the desktop shortcut instead of deleting it.
  • Linux: removing the active global install. When you can't write the global
    locations, godman remove stops and prints the sudo command. sudo resets HOME, so
    that command would remove the install without deactivating it, leaving godot pointing
    at a deleted binary. The message now says to run godman deactivate first (it needs no
    sudo, and it names any global shim it cannot delete so you can sudo rm it). The TUI
    says the same.
  • Windows: clean removes an unmigrated old global root. A C:\Program Files\GodotManager
    that hadn't been moved yet was skipped: no UAC prompt, and the installs survived. clean
    now asks for elevation and removes its installs, shims and registry, the same parts it
    removes from the current layout. The folder itself goes only if nothing else is in it, and
    a root that holds the running godman is left alone.
  • Windows: GODMAN_GLOBAL_ROOT and the old root. With GODMAN_GLOBAL_ROOT set, a
    <prefix>\GodotManager is now moved to <prefix>\godman on the first run, as the one
    under the default %ProgramFiles% always was. doctor used to offer that move under a
    custom prefix while no run made it.
  • Windows: two installs of one version. Two installs of the same version and edition
    in the same scope, at different --paths, shared one Start Menu shortcut: the second
    overwrote the first's, and removing either deleted both. The second now gets its own
    (Godot 4.5.1 (Standard) (1a2b3c4d).lnk). Two installs made before 1.4.1 that already
    share a shortcut keep sharing it; re-run godman activate <id> on the survivor after
    removing one.
  • Windows: removing an install made with --no-shortcut no longer deletes the Start Menu
    shortcut of another install of the same version and edition.
  • A failed shadow check no longer prints a warning unasked. If godman can't check
    whether a global godot shim outranks your activation, it now says so only with
    --verbose, like other best-effort steps. A shim it does find is still always reported.

Internal

  • The install-then-elevated-activate flow now lives in InstallerService, shared by the CLI
    and the TUI install dialog; clean and doctor share one launcher service and one
    registry-read helper; doctor's destination probe has an explicit "unreadable" state.
    No behaviour change.

Known limitations

  • Reinstalling a different version over the same directory of the active global
    install with install --force under sudo leaves /usr/local/bin/godot on the old
    binary: sudo cannot see that the entry is active, so it does not rewrite the shim.
    Reinstall the same version, or use a new --path and activate it.

  • Under a relative GODMAN_GLOBAL_ROOT, doctor can call a pre-1.4.0 install root
    "removable" once a current registry exists there, even though only the old registry lists
    some installs. A relative value is not migrated at all; use an absolute one.