Mark tag as entity component in pylint plugin (#126183)

* Move tag base entity to separate module

* Add tag to _ENTITY_COMPONENTS

* Move Entity back in

* Add tag to base platforms

* Adjust core_files

* Revert "Adjust core_files"

This reverts commit 180c5034de.

* Revert "Add tag to base platforms"

This reverts commit 381bcf12f0.
This commit is contained in:
epenet
2024-09-19 13:28:09 +02:00
committed by GitHub
parent c81d104822
commit 5864591150
2 changed files with 4 additions and 3 deletions

View File

@@ -360,7 +360,7 @@ async def async_scan_tag(
_LOGGER.debug("Tag: %s scanned by device: %s", tag_id, device_id)
class TagEntity(Entity): # pylint: disable=hass-enforce-class-module
class TagEntity(Entity):
"""Representation of a Tag entity."""
_unrecorded_attributes = frozenset({TAG_ID})

View File

@@ -65,7 +65,8 @@ _MODULES: dict[str, set[str]] = {
"WeatherEntityDescription",
},
}
_PLATFORMS: set[str] = {platform.value for platform in Platform}
_ENTITY_COMPONENTS: set[str] = {platform.value for platform in Platform}
_ENTITY_COMPONENTS.add("tag")
class HassEnforceClassModule(BaseChecker):
@@ -92,7 +93,7 @@ class HassEnforceClassModule(BaseChecker):
current_integration = parts[2]
current_module = parts[3] if len(parts) > 3 else ""
if current_module != "entity" and current_integration not in _PLATFORMS:
if current_module != "entity" and current_integration not in _ENTITY_COMPONENTS:
top_level_ancestors = list(node.ancestors(recurs=False))
for ancestor in top_level_ancestors: