Skip to content

WireTrace v1.2.0

Latest

Choose a tag to compare

@shahin-hashim shahin-hashim released this 21 Jun 17:13

Maintenance release. Hardens data durability, fixes disconnect handling on Linux and a plot-pattern hang, and corrects window restore after a monitor change. Linux binaries (AppImage and .deb) are now published, with working in-app updates. Fully backwards-compatible — no API breaks, no file-format breaks, no user action required to upgrade.

Fixed

  • Data durability. Preferences are saved atomically (write-temp, fsync, rename), log writes/fsyncs/closes run under a single lock so the periodic flush can't interleave with the final flush, and fsync now runs after CSV finalisation on log stop. An interrupted save or hard kill can no longer empty the preferences file or truncate the last log line.
  • ANSI/VT100 escape codes stripped from firmware output at the read layer, so the console, the disk log, the CSV export, and the plot parsers all receive plain text. Stripping only — terminal rendering remains out of scope.
  • CSV exports hardened against spreadsheet formula injection. Values beginning with =, +, -, @, tab, or carriage return are prefixed with a single quote so spreadsheets render them as text instead of executing them.
  • Linux serial reconnection. On an unplug or resource error the port is released immediately, so the kernel frees the tty node and the device reconnects to the same path.
  • Memory held across disconnect/reconnect released. Closing a tab disconnects the plot view from the theme manager, and disconnecting a device detaches all reader and log-engine signals — so repeated bring-up cycles no longer accumulate buffers.
  • Custom plot patterns can no longer freeze the app. Manual plot regexes run with a per-line time limit; a pattern that triggers catastrophic backtracking is treated as a non-match and the line is skipped.
  • Linux AppImage now bundles its dependencies and runs on its own (it previously shipped only the launcher and could not start).
  • The tab now resets when a device drops on its own. Any disconnect — button, unplug, or error — flows through one path that resets the controls and, for an unexpected drop, shows a clear notice.
  • Linux in-app updates now install. Running as an AppImage, the updater replaces the running image and relaunches; .deb and source installs fall back to a manual download.
  • Window no longer opens off-screen after a monitor change. The saved position is validated against the connected screens on restore and centred on the primary screen if it isn't visible on any of them.

Changed

  • Manual-mode plot patterns are evaluated with the regex library (new dependency) to support the per-line timeout.

Install

  • Windows: download and run WireTrace-Setup-v1.2.0.exe.
  • Linux: download WireTrace-v1.2.0-x86_64.AppImage, mark it executable (chmod +x), and run it; or install wiretrace_1.2.0_amd64.deb.
  • macOS: build from source — see the build guide in the repository.

Existing users are prompted to update on next launch.

WireTrace is an independent open-source project by The Nuance Project. Not affiliated with any other product or company that may use a similar name in a different category.