Skip to content

Releases: bluetti-community/pybluetti

v0.2.1rc1

v0.2.1rc1 Pre-release
Pre-release

Choose a tag to compare

@chpego chpego released this 31 Aug 16:46

Pre-release - for testing

A real PEP 440 pre-release: pip install pybluetti will not pick this up. Test with:

pip install pybluetti==0.2.1rc1

Fixed

  • _run() was leaving the abandoned websocket connection open on every exit path except a token-expiry (msgCode 805) - an ApplicationRuntimeException, a plain ERROR/CLOSE message, or an unexpected crash all skipped close(). This let a concurrently-running heartbeat send slip past its own is-it-closed check and fail against the transport, reported as Failed to send heartbeat: Cannot write to closing transport repeating on every ~30s reconnect cycle - confirmed in production on 0.2.0 itself, via bluetti-official/bluetti-home-assistant#145. _run() now closes the connection itself as soon as it decides to abandon it.

See the CHANGELOG for the full technical writeup.

v0.2.0

v0.2.0 Pre-release
Pre-release

Choose a tag to compare

@chpego chpego released this 31 Aug 13:45

StompClient reliability fixes

  • Fixed an orphaned heartbeat task on every reconnect that follows a dropped or rejected connection - the previous connection's heartbeat task was never cancelled before starting a new one, only the token-expiry (msgCode 805) path did that.
  • Fixed the same full traceback being re-logged on every retry of a persistently repeating STOMP ERROR frame, forever.
  • Added StompClient(on_error=...), invoked for any ERROR frame the cloud sends back other than a token-expiry, so a caller can react to a persistent error distinctly from an ordinary dropped connection.

Breaking: handler, on_auth_expired, and the new on_error are now keyword-only.

See the CHANGELOG for details. Root-caused from a real user report: bluetti-official/bluetti-home-assistant#145.

v0.1.2

Choose a tag to compare

@chpego chpego released this 30 Aug 06:46
feat: add update_access_token to let a live client use a refreshed OA…

v0.1.1

Choose a tag to compare

@chpego chpego released this 25 Aug 07:51
  • Adopted mypy --strict across the whole package, fulfilling the "strict-typing" requirement of Home Assistant's Platinum integration quality scale.
  • Moved to the bluetti-community GitHub organization (was pybluetti); no change to the PyPI package name or install command.

See CHANGELOG.md for details.

v0.1.0

Choose a tag to compare

@chpego chpego released this 24 Aug 12:30

First release: async BLUETTI cloud API client (HTTP + websocket push updates), extracted from bluetti-home-assistant custom_components/bluetti/api/, decoupled from Home Assistant. See CHANGELOG.md.