Files
mux-py/CHANGELOG.md
T
swaits e64ce852ba feat: add keepalive ping, state restoration, and fix baud rate
Add keepalive ping (5s interval, 2s timeout) to detect unresponsive
dongles behind UART bridges where the serial port stays open across
ESP32 resets. On reconnect, saved radio config and RX state are
re-sent so connected clients continue working transparently.

Also fix serial port opened without baud rate (defaulted to 9600
instead of 115200), preventing connection to UART boards.
2026-04-11 02:46:05 -06:00

41 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog
## Unreleased
### Added
- Keepalive ping: detects unresponsive dongles (e.g. UART boards behind a
CP2102 bridge where the serial port stays open across ESP32 resets). Pings
every 5 seconds of idle, declares dongle lost after 2-second timeout.
- Radio state restoration after reconnect: saved SetConfig and StartRx are
re-sent to the dongle so clients don't need to know a reset happened.
### Fixed
- Serial port opened without baud rate (defaulted to 9600 instead of 115200),
preventing connection to UART boards behind CP2102 bridges.
## 0.2.0 — 2026-04-08
### Features
- **PyPI-ready metadata** — full classifiers, URLs, keywords, readme. Publishable
as `donglora-mux`.
- **Interception test suite** — 11 tests ported from the Rust mux covering
SetConfig locking, StartRx/StopRx reference counting, and passthrough
behaviour.
- **GitHub Actions CI** — ruff lint + format, pytest on Python 3.10–3.13, PyPI
publish on tag.
- **Strict ruff linting** — E, W, F, I, UP, B, C4, ARG, SIM, RUF rules.
### Fixes
- Fixed broken dependency path (`../../clients/python` → `../client-py`).
- Fixed dependency name (`donglora-python` → `donglora`).
- Applied `contextlib.suppress` where ruff/SIM105 flagged try-except-pass.
- Collapsed nested `if` per ruff/SIM102.
## 0.1.0 — 2026-04-06
Initial release.