Skip to content

v1.1.0 — Security & robustness hardening

Choose a tag to compare

@fross100 fross100 released this 23 Aug 03:12
· 47 commits to main since this release

Security and robustness hardening release. No new features — everything here makes the plugin safer to run.

Install flow

  • Only GitHub repository URLs are accepted (https://github.com/owner/repo or git@github.com:owner/repo.git); whitespace, traversal, and non-GitHub hosts are rejected with a clear error (#925 review)
  • Install output is capped at ~8 KB at write time (drain keeps the clone running), the real exit code is preserved, and done is always the final marker so the dialog can never get stuck
  • Status file created via mktemp under $XDG_RUNTIME_DIR with 0600 perms; symlink checks on every write (no /tmp race)
  • 180 s watchdog ends the install dialog if a detached helper dies

Update / Remove / Scans

  • Remove, Update, Update-all, repo-link scan, and update-check outputs are capped (8–64 KB) with drain; failed removals now stop the queue and report failure (real exit codes via PIPESTATUS)

UI hardening

  • Every dynamic text sink renders as plain text (Text.PlainText) — plugin-supplied names, descriptions, URLs, and errors can no longer trigger rich-text resource loading
  • Tooltips are static strings; the SOURCE button opens only http(s) repository links

Full diff: v1.0.0...v1.1.0