Skip to content

v0.5.2

Choose a tag to compare

@github-actions github-actions released this 19 Oct 07:59
· 105 commits to main since this release

Termlet v0.5.2 🚀

Termlet v0.5.2 brings comprehensive, production-grade error handling across the entire stack, eliminating white-screen crashes, introducing actionable diagnostic hints, and bolstering backend fault tolerance alongside our automatic updater and UI refinements.


✨ What's New & Highlights

🛡️ Robust Error Handling & Crash Protection

  • React Sectional <ErrorBoundary>:
    • Integrated error boundaries around all major workspace zones (Side panels, Explorer, Editor, Settings, and Release Notes).
    • Component crashes or syntax errors in editors no longer cause white-screen failures.
    • Includes user-facing recovery controls: Reload View, collapsible Technical Details stack viewer, and Full Restart.
  • Centralized Error Parsing & Actionable Hints (formatErrorMessage):
    • Automatically translates cryptic Go, SSH, SFTP, and OS errors into structured { title, message, hint, raw } objects across 13 categories:
      • Authentication Failures: Clear advice on username, password, or key passphrases.
      • Connection Refused: Guides users to check sshd status, listening ports, and firewall rules.
      • DNS / Host Resolution: Pinpoints DNS lookups and typos.
      • Connection Timeouts & Network Unreachability: Actionable hints on server reachability and VPN routing.
      • Host Key Verification & Security Warnings: Explicit guidance on untrusted or changed host keys.
      • SFTP Permissions & Missing Files: Clear Linux file permission (chmod/chown) hints.
      • Concurrent File Modification: Interactive conflict warnings with "Overwrite anyway" options.
      • Buffer Limits: Guards on files exceeding editor size limits.
      • Disconnected Sessions: Contextual prompts to reconnect.
  • Inline Connection Error Banners:
    • Replaced fleeting toasts in ConnectDialog with persistent inline error alerts above action buttons, complete with troubleshooting hints and a toggleable raw technical details view.
  • Remote Explorer Failure Recovery:
    • Replaced misleading "Directory is empty" states during SFTP failures with an explicit error screen and an inline Retry action.
  • Go Backend Panic Prevention & Nil Safety:
    • Added centralized getSFTPClient in app.go with strict nil checks and session validation.
    • Added receiver and client nil guards across sftpclient.Client methods before mutex acquisitions.

📦 Artifacts Included

  • Linux:
    • termlet-linux-amd64.deb (Debian, Ubuntu, Linux Mint, Pop!_OS)
    • termlet-linux-amd64.rpm (Fedora, RHEL, CentOS, openSUSE)
    • termlet-linux-amd64.tar.gz (Portable Linux archive)
  • Windows:
    • termlet-windows-amd64.zip (Portable 64-bit Windows archive)
    • termlet-windows-amd64-installer.exe (NSIS setup wizard installer)
  • macOS:
    • termlet-darwin-universal.dmg (Apple Silicon & Intel Universal DMG)
    • termlet-darwin-universal.zip (Portable macOS bundle)

Full Changelog: v0.5.1...v0.5.2