github rroller/dahua 3.0.0-rc.1

pre-release43 minutes ago

⚠️ BREAKING CHANGES — ACTION REQUIRED BEFORE UPGRADING

Warning

Infrared entities are removed from indoor monitors that explicitly report no local camera. Affected devices no longer create the Infrared light or Infrared Mode select. Before upgrading, review automations and dashboards that reference those entities and remove or retarget the references. Existing registry entries may remain unavailable.

This is a major-version release candidate because existing entities disappear. Take a Home Assistant backup before upgrading. The exclusion requires a reported VTH device class and an explicit no-camera answer; monitors with a camera or an unknown camera answer retain their previous infrared behavior.

Inherited camera identity migration: Cameras whose normal identity call fails but whose alternate CGI reports a serial adopt that serial. Migration preserves entity IDs. Unresolved collisions stop setup and require a repair or manual guidance. Once a serial is adopted, a temporarily unavailable serial read causes setup to retry rather than rebuilding entities under a generated identity. Keep a Home Assistant backup and review any proposed registry removals before confirming a repair.

Upgrading from 1.x? These earlier breaking changes also apply:

  • Illuminator entities: Channels explicitly reporting a white emitter without a supported MiddleLight, NearLight or FarLight brightness bank no longer get an Illuminator light. Update affected automation and dashboard references.
  • Camera-less indoor monitors: Affected VTH monitors lose camera-related entities for a local camera they do not have. Retire references to unavailable camera and motion controls.
  • HTTP indoor-monitor identities: Generated identities migrate to reported serials while preserving entity IDs. An unresolved conflict stops setup; a backup failure retries without mutating the registries. Keep your Home Assistant backup and resolve logged conflicts before retrying.
  • Recorder alarm inputs: Replace references to old per-camera Alarm Local sensors with the corresponding physical recorder terminal sensors.
  • Recorder relay outputs: Replace references to duplicate per-channel relay switches with the recorder’s relay switches.

Release candidate for 3.0.0. Requires Home Assistant 2026.8.0 or newer. The latest stable release remains 2.1.0.

New in 3.0.0-rc.1

  • Apply the existing no-camera answer to infrared support: Indoor monitors reporting VTH and an explicit own-video false answer no longer create the Infrared light or Infrared Mode select. Placing the rule in the shared capability check also stops the recurring infrared Lighting read on those monitors. Cameras, doorbells, monitors reporting a camera, and monitors with an unknown camera answer retain the previous capability behavior. (#1168)
  • Repository documentation: Include the directory-map corrections from 2.1.1-rc.1: 38 integration modules, about 35,000 lines, 32 services and the missing audio.py/late.py descriptions. AGENTS.md is not part of the HACS integration ZIP. (#1167)

The #1168 contributor supplied diagnostics from two VTH5221D monitors reporting a Lighting table containing only Mode=Off, without a brightness bank. This release uses the device’s existing explicit no-camera answer; absence of a dimmer alone does not decide infrared support. Hardware measurements were supplied by the contributor.

Validation

The reviewed integration passed 5,743 tests, including all three real-ffmpeg conversion cases. All 359 Python files pass Black 26.10.0. Ten independent checks exercise the real capability rule through both Light and Select platform creation paths: only a VTH explicitly reporting no camera loses the infrared entity. Removing the gate makes two of those checks fail; excluding every VTH makes four fail. The merged source tree matches the tested PR tree exactly.

Release CI validates HACS, Hassfest, formatting, the full test suite, tag/manifest agreement, ZIP layout and HACS visibility. The 59-file downloadable ZIP is verified byte for byte against the tagged integration files.

This release inherits the remaining hardware and channel-search limitations described in the 2.1.0 release notes, including unverified targeted Gamma/Style writes, NTP writes, autofocus response-body/recorder behavior, and the channel-search progress race.

Full changelog: 2.1.0...3.0.0-rc.1

Changes since the previous RC: 2.1.1-rc.1...3.0.0-rc.1

Don't miss a new dahua release

NewReleases is sending notifications on new releases.