Skip to content

v0.35.1-beta.1

Pre-release
Pre-release

Choose a tag to compare

@cmgrayb cmgrayb released this 08 Jul 21:27

fix: probe map API version dynamically instead of hardcoding device type

Probe logic:

  • v1 probe succeeds (2xx) → cache and use api_version=1
  • v1 probe returns 4xx/5xx → cache and use api_version=2
  • Auth error → do not cache, return 1 as best-guess
  • Non-HTTP error → do not cache, return 1 (retry next call)

This fixes the regression where Dyson 360 Vis Nav (H8T/276B) devices
received HTTP 500 after libdyson-rest 0.15.0 silently changed all three
map endpoints from /v1/ to /v2/. With this change, any v1 device
(current or future) is self-identifying without a maintained lookup table.

Updates all three call sites (image.py, services.py, vacuum.py) and
both test fixtures (test_image.py, test_vacuum.py).