Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow inheriting base component entity descriptions in frozen dataclasses #105512

Merged
merged 3 commits into from
Dec 16, 2023

Conversation

emontnemery
Copy link
Contributor

@emontnemery emontnemery commented Dec 11, 2023

Proposed change

Allow inheriting base component entity descriptions in both frozen and mutable dataclasses

This is a follow-up to #105211

Background in PR #105211

Depends on:

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • I have followed the perfect PR recommendations
  • The code has been formatted using Ruff (ruff format homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • Untested files have been added to .coveragerc.

To help with the load of incoming pull requests:

@emontnemery emontnemery requested review from a team and raman325 as code owners December 11, 2023 19:39
@emontnemery emontnemery marked this pull request as draft December 11, 2023 20:05
@emontnemery emontnemery marked this pull request as ready for review December 11, 2023 20:19
@emontnemery emontnemery marked this pull request as draft December 11, 2023 23:44
@emontnemery emontnemery mentioned this pull request Dec 12, 2023
20 tasks
@emontnemery emontnemery force-pushed the freeze_base_component_entity_descriptions branch from 2abce99 to 6a07f2e Compare December 12, 2023 14:15
@emontnemery emontnemery reopened this Dec 13, 2023
@emontnemery emontnemery reopened this Dec 14, 2023
@emontnemery emontnemery marked this pull request as ready for review December 14, 2023 07:18
@emontnemery emontnemery requested a review from bdraco as a code owner December 14, 2023 07:18
@emontnemery emontnemery force-pushed the freeze_base_component_entity_descriptions branch from 6a07f2e to 057a7b4 Compare December 14, 2023 07:31
@bdraco
Copy link
Member

bdraco commented Dec 14, 2023

LGTM if CI passes

@bdraco
Copy link
Member

bdraco commented Dec 14, 2023

Looks like there is one integration left to fix
FAILED tests/components/efergy/test_sensor.py::test_sensor_readings - dataclasses.FrozenInstanceError: cannot assign to field 'entity_registry_enabled_default'
FAILED tests/components/efergy/test_sensor.py::test_multi_sensor_readings - dataclasses.FrozenInstanceError: cannot assign to field 'entity_registry_enabled_default'

@emontnemery
Copy link
Contributor Author

emontnemery commented Dec 14, 2023

Looks like there is one integration left to fix FAILED tests/components/efergy/test_sensor.py::test_sensor_readings - dataclasses.FrozenInstanceError: cannot assign to field 'entity_registry_enabled_default' FAILED tests/components/efergy/test_sensor.py::test_multi_sensor_readings - dataclasses.FrozenInstanceError: cannot assign to field 'entity_registry_enabled_default'

Weird, that was supposed to be fixed by #105626

Oh, the efergy tests also mutate the entity descriptions 🤦

@bdraco
Copy link
Member

bdraco commented Dec 16, 2023

Let's hope the CI passes now

@bdraco bdraco merged commit 104bcc6 into dev Dec 16, 2023
53 checks passed
@bdraco bdraco deleted the freeze_base_component_entity_descriptions branch December 16, 2023 09:33
@github-actions github-actions bot locked and limited conversation to collaborators Dec 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants