Skip to content

Releases: VoxDroid/krnr

v1.2.9

20 Feb 01:37
3378058

Choose a tag to compare

v1.2.9 - 2026-02-20

This patch corrects a TUI/status reporting inaccuracy: previously a system directory appearing on PATH could cause krnr status (and the TUI) to report on PATH: true for a system install even when the krnr binary was not present in that directory.

Fix: krnr status now only reports on PATH:true when the krnr binary is actually present at the expected user/system location (or when exec.LookPath resolves the executable). The change prevents false-positive status messages in the TUI and CLI.

No DB or CLI-breaking changes. Users should upgrade to v1.2.9 to get more accurate installer/status diagnostics.

Download krnr

v1.2.8

20 Feb 00:54
f1764a2

Choose a tag to compare

v1.2.8 - 2026-02-20

This patch improves installer robustness when the installer is executed under sudo but a per-user install is requested. It ensures recorded metadata and installed files are visible and removable by the original invoking user.

Bug fixes

Correct metadata ownership for sudo→user installs

When krnr install runs under sudo and the user chooses a user install, metadata and PATH modifications were sometimes recorded under root and not visible to the invoking user.

Fix: the installer writes a copy of the install metadata into the original user's ~/.krnr (when SUDO_USER is set) and ensures the metadata file and related directories are owned by that user. This allows krnr status and krnr uninstall to work when run later as the normal user.

Ensure installed binary ownership and uninstallability

Binaries installed by root into a user's directory are now chowned to the target user so subsequent non-root krnr uninstall works as expected.

Status & reinstall fixes

krnr status now respects recorded AddedToPath so it reports on PATH: true immediately after add-to-PATH installs. Reinstall-after-uninstall under sudo no longer leaves stale or unreadable metadata.

Tests & docs

  • Added unit tests for SUDO_USER install/uninstall/reinstall and metadata-based status inference.
  • Documented sudo→user installer behavior in docs/install.md.

Upgrade notes

No DB or CLI-breaking changes. Upgrade to v1.2.8 to receive installer fixes.

Download krnr

v1.2.7

19 Feb 08:49
3597742

Choose a tag to compare

v1.2.7 - 2026-02-19

This patch prevents passwords from being visible when running interactive commands (for example sudo) via krnr or the TUI by disabling local echo on the host terminal while a PTY-backed child is running.

Bug fixes

Hide password input during interactive runs

Interactive programs (such as sudo) already read from the child's PTY, but the host terminal could locally echo typed keystrokes — which made passwords visible to observers of the host terminal.

Fix: temporarily disable the host terminal's ECHO flag while the PTY-backed child runs and restore the previous terminal state afterwards. The change only toggles local echo (preserves output post-processing) to avoid affecting child output rendering.

Tests & docs

  • Unit tests added to validate host-terminal echo toggling in PTY scenarios.
  • Documentation updated to mention the behavior in docs/executor.md and docs/tui.md.

Upgrade notes

No DB or user-facing CLI changes required — upgrade to v1.2.7 to get the fix.

Download krnr

v1.2.6

17 Feb 08:23
681d463

Choose a tag to compare

v1.2.6 - 2026-02-17

This patch fixes a rollback bug that created duplicate version entries, eliminates flaky test failures, and adds Windows cross-compilation support.

Bug fixes

Rollback duplicate version entries

Rolling back to a previous version was creating two new version records (an "update" + a "rollback") instead of just one. Now only a single "rollback" version entry is created.

Version preview not updating after a run

After running a command, stale run logs were overriding the left panel — pressing Enter on a version appeared to do nothing, and switching panes didn't update the preview. Run logs are now cleared on pane navigation so version previews and the original detail display correctly.

Flaky test failures

Fixed intermittent "database is locked" errors when running go test ./... — test packages now use isolated temporary databases instead of sharing a single file.

Portability

Windows cross-compilation

Unix-only PTY code has been split into build-tagged platform files (pty_unix.go, pty_windows.go), so GOOS=windows builds succeed.

Upgrade notes

No DB schema changes. Existing version history is unaffected — the fix only prevents future duplicate entries during rollback.

Download krnr

v1.2.5

17 Feb 07:56
37c3d7e

Choose a tag to compare

v1.2.5 - 2026-02-17

This patch delivers full interactive command support in the TUI and fixes several output rendering issues.

What's new

Hybrid PTY for interactive commands

The TUI now uses a hybrid PTY approach: stdin and the controlling terminal use a PTY (so sudo, pacman, and other programs that read from /dev/tty work), while stdout/stderr remain as pipes (so programs like fastfetch produce clean, viewport-friendly output). Prompts appear inside the run output panel, not in the bottom bar.

Live output streaming

Command output now streams live into the viewport immediately — no keypress required to see results.

Bug fixes

  • Fixed doubled output when stdout and stderr are the same writer in PTY mode
  • Fixed UI border corruption from escape sequences split across read boundaries
  • Fixed nil pointer dereference panic when PTY starter returned nil buffers
  • Fixed truncated output for fastfetch and similar programs (buffer size 256→4096, EOF flush)
  • Improved CSI sanitizer: cursor-forward → spaces, cursor-horizontal-absolute → separator, SGR colors preserved
  • Fixed command list appearing empty on launch until a resize or keypress (Init() now returns a proper message for Update() to process)
  • Fixed run output not visible when command has version history (versions-panel rendering was overwriting the viewport)
  • Fixed inability to scroll run output after a run completes (auto-scroll now only active during run)
  • Enter on versions panel now loads the selected version's detail into the left preview pane

Quality

  • gocyclo (>10) added to pre-commit; complex functions refactored
  • All golangci-lint and gocyclo checks pass
  • New tests: escape splitting, EOF flush, fd-reader, PTY simulation, sanitizer, headless viewport prompt

New features

  • Delete version (D): Press D on a highlighted version in the versions panel to delete that specific version record (with y/N confirmation)
  • Enter on versions: Press Enter to view the full version detail in the left preview pane

Upgrade notes

No DB schema changes. Simply upgrade to v1.2.5 and interactive commands in the TUI will work automatically when running in a real terminal.

Download krnr

v1.2.4

04 Feb 01:13
d02d77e

Choose a tag to compare

v1.2.4 - 2026-02-04

  • Bugfix: Prevent UI deformation when running commands that emit terminal control sequences (alternate-screen, clear-screen, cursor movements, OSC sequences). The TUI now sanitizes run output and preserves SGR color codes while removing destructive sequences.
  • Tests: Add TestRunStreamsSanitizesControlSequences and sanitizer unit tests to prevent regressions.
  • Quality: Addressed gocyclo and golangci-lint items; no remaining high-complexity functions and no linter errors.

Upgrade notes: This is a backwards-compatible UI fix; no DB or CLI changes.

Download krnr

v1.2.3

03 Feb 01:04
f746cf1

Choose a tag to compare

v1.2.3 - 2026-02-03

  • Bugfix: Fix spacebar behavior in the TUI. Some terminals produce a KeySpace event which previously was ignored; the TUI now treats it as a typed space in both the editor and list filter, restoring expected typing behavior.
  • Tests: Add headless UI tests to cover KeySpace in filter and editor flows.
  • Quality: Ran gocyclo and golangci-lint — no actionable issues found.

Upgrade note: This is a backward-compatible TUI fix; no DB or CLI-breaking changes.

Download krnr

v1.2.2

17 Jan 06:09
0622252

Choose a tag to compare

v1.2.2 — 2026-01-17

Patch release focusing on a robustness fix for the save command.

What’s changed

  • Preserve comma-containing commands passed via a single -c flag (PowerShell Select-Object usage). A single quoted -c will now be stored as a single command and is no longer split on commas.
  • Internal: switched the repeatable command flag to StringArray to avoid unintended splitting and added tests to cover the behavior.

Upgrade notes

  • No DB schema changes are required.
  • When using Windows shells, prefer quoting -c values fully (e.g., -c 'Get-ComputerInfo | Select-Object OsName, OsVersion, OsArchitecture') to avoid shell-level tokenization issues.

Thanks to contributors and maintainers for quick turnaround on this fix.

Download krnr

v1.2.1

17 Jan 05:19
1f251f6

Choose a tag to compare

v1.2.1 — 2026-01-17

This patch release fixes Windows quoting and CLI save robustness issues:

  • krnr save: improved handling when shells split quoted arguments — joins or merges leftover tokens into a single command and heuristically re-quotes findstr /C:"..." patterns when appropriate.
  • Executor (Windows): directly handles simple <left> | findstr ... pipelines by executing the left command and piping its stdout into findstr (avoids cmd.exe quoting pitfalls).
  • Includes unit tests for both save and findstr pipeline scenarios, adds robust shell-token splitting (via github.com/kballard/go-shellquote), and cleans up linter/complexity issues.

Upgrade guidance: Simply upgrade to v1.2.1; no DB schema changes are required. If you rely heavily on complex Windows shell invocations, prefer quoting -c values fully or using a command file for maximum stability.

Download krnr

v1.2.0

17 Jan 03:14
0e3f7ee

Choose a tag to compare

v1.2.0 — Initial TUI release

This release introduces the initial Terminal UI (krnr tui) as an interactive entrypoint that complements the CLI without replacing it. The TUI delegates to existing internal packages (registry, executor, importer, exporter) so automation and scripting continue to use the CLI while users can interactively browse and run workflows.

Highlights

  • krnr tui (v1.2.0) — initial release: browse, preview, full-screen detail, run with parameter prompting and streaming logs, save/edit flows, import/export helpers, history viewing and rollback, installer views, and status diagnostics.
  • Tests: headless UI unit tests and a PTY E2E test were added.
  • Docs: docs/cli.md, docs/releases/v1.2.0.md, and krnr_docs/TUI_MILESTONE.md updated to document usage and testing guidance.

See CHANGELOG.md for full details.

Download krnr