Skip to content

v0.8.0 (bêta)

Pre-release
Pre-release

Choose a tag to compare

@gnocent gnocent released this 25 Oct 19:39
· 9 commits to main since this release

TermDevTools v0.8.0 (beta)

Version française : CHANGELOG_fr.md

In one sentence: several clusters can stay open in one session — Ctrl+O switches between them, each found again as it was left.

What's new

  • Several clusters in one session (Ctrl+O, #10): the connection screen opens again in session. Each connection stays open with all its state — requests, cursor, result — until exit: a cluster already open, marked open connection, goes back to its screen as you left it, without connecting again; another one goes through the form, as at startup. Esc goes back to the cluster on screen.
  • Switching cancels nothing: a request in progress, read or write, runs to completion; its answer lands in its cluster's panels, and the status bar on screen says it came.
  • Exiting saves every open connection (Ctrl+C, "Quit", SIGTERM/SIGHUP), and switching saves the left panel on screen.
  • A shorter README, with one line per release, and a larger demo that shows the switch and the protection.

Fixes

  • The confirmation of a write no longer lets the text behind it show through: its margin, a column on either side, was never drawn. There since 0.7.3.

Before upgrading from 0.7.5

  • Nothing to do: startup, the other shortcuts and the help bar don't change.

Checks

  • go vet and go test ./... pass on Windows, the interface's tests on Linux too; the switch is tested on a simulated 80×24 screen against two local test servers.
  • Tried by a contributor against an OpenSearch 3.9.0 and an Elasticsearch 9.5.4 actually running (lab instances, not production), with targeted race-detector tests.
  • An independent security review of the switch found that a connection attempt left in progress could, once an open cluster was gone back to, take the screen over and open a second connection to that cluster, the keys then going to the one whose protection wasn't the one shown. Fixed before this release, with a test reproducing it.
  • govulncheck: no known vulnerability, neither in the dependencies nor in the standard library of Go 1.27.3, which the binaries are built with. No independent external audit was carried out.

Known limits

  • One connection per URL: to change the protection or the credentials of an open connection, quit and relaunch.
  • Each open connection keeps its last result in memory, several times its size once displayed (a 60 MiB JSON response takes about 450 MiB); any request on that connection frees it.
  • The limits of 0.7 still apply: see the changelog.

Thanks to @amineamanzou for the idea, the discussion that shaped it, and the tests.

Binaries

One self-sufficient file per platform — no archive and no companion file:

  • termdevtools-linux-amd64 — Linux x86-64 (static binary)
  • termdevtools-windows-amd64.exe — Windows 10/11 x64
  • termdevtools-darwin-arm64 — macOS Apple Silicon
  • SHA256SUMS — SHA-256 checksums of the three files

Download the file for your platform and SHA256SUMS, check it (sha256sum -c SHA256SUMS --ignore-missing on Linux), make it executable (chmod +x, Linux and macOS), run it: termdevtools --version answers termdevtools v0.8.0. The binaries are not signed. Step by step, platform by platform: INSTALL.md (français). go install github.com/gnocent/termdevtools@v0.8.0 works too.