You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
RFC 6763/6: ServiceInfo _is_complete() returns True even if no TXT record has been received #1815
Every DNS-SD service MUST have a TXT record in addition to its SRV
record, with the same name, even if the service has no additional
data to store and the TXT record contains no more than a single zero
byte.
In ServiceInfo, a service is considered "complete" if: bool(self.text is not None and (self._ipv4_addresses or self._ipv6_addresses)). It seems like this was initially implemented to ensure a TXT record was received, however as far as I can tell self.text is never None. In the constructor, it is defaulted to an empty string so if the service has addresses but no TXT record, the record is still considered "complete".
In my use case, this has caused an issue where zeroconf says the service is fully resolved, but is missing the TXT record.
I can submit a PR to fix this issue, but wanted to confirm that this is a real issue and not expected.
Activity
bdraco commentedon Aug 26, 2026
@bluetoothbot fix
bdraco commentedon Aug 26, 2026
Any fix would need to handle empty txt record vs not received record
bdraco commentedon Aug 26, 2026
Bot has low confidence on a fix. It will make a PR but likely a throwaway discovery one
bdraco commentedon Aug 26, 2026
The fix it produced looks sane in #1821. Was expecting worse