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

Improve Airzone climate code #93515

Closed
wants to merge 2 commits into from

Conversation

Noltari
Copy link
Contributor

@Noltari Noltari commented May 25, 2023

Proposed change

This makes the code more robust for those cases where the key isn't found on the translation dicts.

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 Black (black --fast 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:

This makes the code more robust against unavaialable device issues.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
@MartinHjelmare MartinHjelmare changed the title improve Airzone climate code Improve Airzone climate code May 25, 2023
Copy link
Contributor

@emontnemery emontnemery left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please fill in the PR description to explain why this is an improvement

@home-assistant home-assistant bot marked this pull request as draft May 25, 2023 08:56
@home-assistant
Copy link

Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍

Learn more about our pull request process.

@Noltari Noltari marked this pull request as ready for review May 25, 2023 09:08
@home-assistant home-assistant bot requested a review from emontnemery May 25, 2023 09:08
@emontnemery
Copy link
Contributor

This makes the code more robust for those cases where the key isn't found on the translation dicts.

Does it mean the library may return some unexpected value? Should that be logged?

@Noltari
Copy link
Contributor Author

Noltari commented May 25, 2023

This makes the code more robust for those cases where the key isn't found on the translation dicts.

Does it mean the library may return some unexpected value? Should that be logged?

I've only seen it return None when one of my thermostats ran out of battery.
I guess that I need to implement proper availability in the library, but the local API doesn't help since it just stops providing the zone data for offline devices...

@emontnemery
Copy link
Contributor

This makes the code more robust for those cases where the key isn't found on the translation dicts.

Does it mean the library may return some unexpected value? Should that be logged?

I've only seen it return None when one of my thermostats ran out of battery. I guess that I need to implement proper availability in the library, but the local API doesn't help since it just stops providing the zone data for offline devices...

OK, I see. Then I think the code in the PR is OK, but please add some comments explaining the get.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
@Noltari
Copy link
Contributor Author

Noltari commented May 26, 2023

This makes the code more robust for those cases where the key isn't found on the translation dicts.

Does it mean the library may return some unexpected value? Should that be logged?

I've only seen it return None when one of my thermostats ran out of battery. I guess that I need to implement proper availability in the library, but the local API doesn't help since it just stops providing the zone data for offline devices...

OK, I see. Then I think the code in the PR is OK, but please add some comments explaining the get.

Done in e8b965e

@Noltari
Copy link
Contributor Author

Noltari commented May 27, 2023

With the changes done in the library and in the integration in the following PR this is no longer needed:
#93629

@Noltari Noltari closed this May 27, 2023
@github-actions github-actions bot locked and limited conversation to collaborators May 28, 2023
@Noltari Noltari deleted the airzone-climate-dict-get branch May 29, 2023 09:02
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.

None yet

2 participants