v3.2.1
v3.2.1
Date: 2026-06-17
Previous release: v3.2.0
Summary
Improves remote terminal session shutdown behavior so local termination paths
cleanly close websocket sessions and reduce stale DeviceConnect session state.
Highlights
- Graceful terminal shutdown path:
mender-cli terminalnow uses an
idempotent shutdown flow that performs best-effort shell stop, websocket
close handshake, unconditional transport close, and bounded cleanup wait. - Signal/hangup handling improvements: terminal shutdown behavior is aligned
for local escape and host termination paths (including terminal hangup and
stdin EOF cases), with safer signal subscription handling. - Race/deadlock hardening: replaced shared terminal runtime state with
coordinated stop signaling to avoid shutdown races and blocking stop calls. - Better websocket handshake errors: connection failures now include HTTP
status and bounded response body content when available, making session-limit
or authorization problems easier to diagnose. - Tests: adds targeted unit coverage for shutdown idempotency, shutdown
ordering, failure-continuation behavior, and handshake diagnostics, plus
integration test coverage for SIGTERM/stdin-EOF terminal termination followed
by immediate reconnect. - Acceptance test UX:
make build-acceptanceandmake run-acceptance
now fail fast with a clear message when thetests/mender_serversubmodule
is not initialized.
Upgrading
- No breaking changes. Existing commands and flags are unchanged.