Skip to content

Releases

v3.5.3

Choose a tag to compare

@mk-maddin mk-maddin released this 12 Oct 15:11
e003001

Full Changelog: v3.5.2...v3.5.3

v3.5.2

Choose a tag to compare

@mk-maddin mk-maddin released this 10 Oct 18:59
7b1778d

Full Changelog: v3.5.1...v3.5.2

v3.5.1

Choose a tag to compare

@mk-maddin mk-maddin released this 07 Oct 06:30
916dce0

v3.5.1

Fixes

  • async_SetLight: the error message was missing an argument, so failures were never logged.
  • install.sh: install exactly the wheel of the current version (current setuptools name it dscriptmodule-… in lower case, which the script did not find).
  • uninstall.sh: uninstall by package name; removed the stale version variable.

Tests

  • New test checks that every logging call has as many arguments as placeholders.

Full Changelog: v3.5.0...v3.5.1

v3.5.0

Choose a tag to compare

@mk-maddin mk-maddin released this 06 Oct 15:09
6dee4d7

v3.5.0 – Connection stability

This release makes the communication with dScript boards more robust. No API changes; existing code keeps working.

Fixes

  • Requests to a board are serialized (one connection at a time). The firmware processes one request at a time, so parallel requests could cause lost or mixed-up answers.
  • Timeouts for connect, send and receive. An unresponsive board no longer blocks the caller indefinitely.
  • Responses are read until complete (TCP fragmentation could cut answers short).
  • Sockets are always closed (a typo leaked connections on errors).
  • The async retry now returns its result instead of None.
  • Async BinaryAES responses are decrypted correctly.
  • Event handlers are stored per instance instead of being shared by all boards and servers. Duplicate registrations are ignored, so handlers no longer pile up on Home Assistant reloads.
  • dScriptServer: stop and restart work; all 3 trigger bytes are received in sync mode; no busy loop in thread mode; malformed messages no longer raise.
  • The blocking reverse DNS lookup in async_InitBoard runs in an executor.
  • TCP184 and dS2832 modules are recognized; unknown module IDs no longer raise.

Packaging / CI

  • setup.py no longer imports the package, so isolated builds (python -m build) work.
  • New test suite against an emulated board, run on Python 3.9–3.13 before every release.

Compatibility

Recommended together with dScriptRoomControl firmware 3.8 and dScriptModule-HA 3.7.0.