github BSkando/GoogleFindMy-HA 1.8.0

58 minutes ago

This release ships everything merged into main since v1.7.14: ten pull requests that bring the work of the fork jleinenbach/GoogleFindMy-HA (fork releases 1.7.14.1 to 1.15.36) to this repository. The full history, one entry per fork release, is at https://github.com/jleinenbach/GoogleFindMy-HA/releases.

Upgrading from v1.7.14

  • Update through HACS as usual. HACS stores the installed version per repository and compares version numbers, so 1.8.0 is offered as an update to v1.7.14. The tag of this release has no v prefix; the release workflow only stamps tags without it.
  • Home Assistant 2026.11 ships the built-in Marketplace integration, which takes over an existing HACS installation on its first setup, including the stored installed version, and compares versions the same way. The update path is the same with HACS or Marketplace.
  • Restart Home Assistant after the update. If the running version differs from the installed one, a repair issue asks for the restart; reloading the integration is not enough.
  • Minimum Home Assistant version: 2025.9.1 (unchanged).
  • Going back to v1.7.14 needs no reverse migration (see below). Take a backup before any downgrade.

Breaking changes and migrations

  • Config entry and storage migrations: None. CONFIG_ENTRY_VERSION stays 2, and no storage version changes.
  • Deprecated: live tracker attributes. The device trackers no longer update location_age and location_status between observations; they keep the value of the last observation. The main tracker holds the coarse_* attributes the same way, and the Last Location tracker no longer has them. For live values use the sensors "Location status", "Last Seen" and "Coarse fix". A repair issue per account lists the automations and scripts that use these trackers. The attributes will be removed at the latest with the first integration release from Home Assistant 2027.6.0 on. (#228)
  • Visible behaviour changes (#227):
    • New trackers are added silently, without a discovery card.
    • The new option accuracy_gate_enabled (on by default) drops a coarse fix while a much better fresh one exists.
    • On Home Assistant 2026.9 and later, map tiles are loaded through the Home Assistant tile proxy instead of directly from OpenStreetMap.
    • manifest.json no longer installs selenium and undetected_chromedriver. Only the standalone CLI and the optional docker login helper need them; both install them from requirements.txt.

Fixes

Ordered by effect for users.

  1. Stop sound no longer starts a new ring. The stop request keeps the cancel key of the running sound and holds back a stop that arrives too early. (#209, #239)
  2. No more heartbeat and memory leak after an FCM listener error. After an unknown listener error every restart left a heartbeat task and the old client behind until Home Assistant ran out of memory. (#238, fixed in #241)
  3. P-256 trackers (reported with a JBL TUNE770NC): crowdsourced location reports in the 32-byte P-256 format are decrypted, and the specification's P-256 EIDs are resolved. (#223, #227, #228)
  4. Registry entries survive reloads. Devices and entities are no longer removed and recreated on a reload, so trackers stay assigned to their persons. (#239)
  5. FCM and Spot fall back to IPv4 when the IPv6 path drops packets; before, the push client could hang without an FCM token. Whether this is the cause on the reporter's side is not confirmed. (#236, #239)
  6. Deprecated device registry calls are gone from Home Assistant 2026.8 on. (#219, #229, #227)
  7. A coarse fix no longer replaces a good fresh one and flips a zone state. (part of #216, #227)
  8. BLE: battery and UWT sensors exist right after setup, also for a tag out of range after a restart; the FMDN scanner callback is registered once per domain instead of once per account; proxy-relayed advertisements are no longer dropped. (#239, #227)
  9. Service permissions. Device actions check the control permission of the calling user; maintenance actions and buttons are restricted to administrators. (#239)
  10. Privacy in diagnostics and logs. The credential bundle and account-derived key names are redacted in diagnostics; identity keys and raw responses no longer reach the DEBUG log; account e-mail and device names stay out of unattended log records. (part of #218, #227, #228, #239)
  11. Credentials. An aas_et import keeps its key material on the first setup (#235); a regenerated FCM registration is kept in the config entry (#233).
  12. Startup. The location poll runs as a background task and no longer delays Home Assistant startup. (#230)
  13. Devices without a canonical ID are no longer reported as needing no action, the README lists which devices are known to show, and a diagnostic line helps to find out why a device is missing. The reported watch is still not offered. (part of #224, #239)
  14. Smaller fixes: an already fused report is not fused again; update failures are translated and their reason survives a setup retry; the in-flight poll is cancelled on stop; the UWT binary sensor falls back to the default key for a tracker without a usable group key. (#227, #239, #240)

Enhancements

  • Per-account option "Enable map view" (map_view_enabled, on by default). When it is off, map view requests are refused and device links are cleared. (#228)
  • UWT mode changes are logged with the age of the last location request, as a measurement for periodic ringing. (#210, #228)
  • EIDs of multi-component devices, for example earbuds with a case. (#239)
  • Diagnostics for FMDN Beacon Actions, including a read_beacon_state action. (#239)
  • Map view: Leaflet served locally, no-store headers, tiles through the Home Assistant proxy; a SECURITY.md with a private reporting channel. (part of #214, #227)
  • Local brand assets. (#231)
  • Optional docker login helper for users without a desktop Chrome. (#227)
  • CI and tooling: CodeQL, a supply-chain audit of the manifest, a working pre-commit configuration, many new tests. (#206, #227, #239, #240)

Adopted pull requests

Thanks to the authors of these pull requests:

  • Pull request 220 by heman22union (BLE scanner callback as connectable=False): included in #227.
  • Pull request 226 by lebdim (replace the deprecated device registry lookups): same goal as the registry change in #227, closed as superseded.
  • Pull request 230 by gszigethy (location poll as a background task): merged; carried on unchanged.
  • Pull request 231 by frenck (local brand assets): merged; #239 finishes the switch and removes the old icon.
  • Pull request 233 by smhc (keep a regenerated FCM registration): merged; carried on unchanged.

Known open issues

  • #211 and #234, periodic ringing of some tags: no cause was found in the integration; this release adds the measurement of UWT mode changes.
  • #224: the reported watch has no canonical ID and is still not offered.
  • #236: whether the IPv6 fallback fixes the reporter's case is not confirmed.

Pull requests in this release

#206, #227, #228, #230, #231, #233, #235, #239, #240, #241.

Don't miss a new GoogleFindMy-HA release

NewReleases is sending notifications on new releases.