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

Add support for zhimi.airp.mb5a to xiaomi_miio integration #108593

Draft
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

angelsl
Copy link

@angelsl angelsl commented Jan 21, 2024

Proposed change

Add support for zhimi.airp.mb5a to the Xiaomi Miio integration. This device is, at least from an interface perspective, identical to the zhimi.airp.mb5.

Note that this will have to wait for a new release of python-miio, since this depends on the changes in rytilahti/python-miio#1527.

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

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:

Copy link

@home-assistant home-assistant bot left a comment

Choose a reason for hiding this comment

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

Hi @angelsl

It seems you haven't yet signed a CLA. Please do so here.

Once you do that we will be able to review and accept this pull request.

Thanks!

@home-assistant home-assistant bot added the small-pr PRs with less than 30 lines. label Jan 21, 2024
@home-assistant home-assistant bot marked this pull request as draft January 21, 2024 17:13
@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.

@home-assistant
Copy link

Hey there @rytilahti, @syssi, @starkillerOG, mind taking a look at this pull request as it has been labeled with an integration (xiaomi_miio) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of xiaomi_miio can trigger bot actions by commenting:

  • @home-assistant close Closes the pull request.
  • @home-assistant rename Awesome new title Renames the pull request.
  • @home-assistant reopen Reopen the pull request.
  • @home-assistant unassign xiaomi_miio Removes the current integration label and assignees on the pull request, add the integration domain after the command.
  • @home-assistant add-label needs-more-information Add a label (needs-more-information, problem in dependency, problem in custom component) to the pull request.
  • @home-assistant remove-label needs-more-information Remove a label (needs-more-information, problem in dependency, problem in custom component) on the pull request.

@verdel
Copy link

verdel commented Feb 26, 2024

@rytilahti could I ask you to release a new version of the python-miio library? I noticed that the library is currently undergoing refactoring, and for using the new functionality, you recommend getting the version directly from the GitHub repository.

Unfortunately, due to the specifics of the script implementation in home-assistant/core, which collects all dependencies of all core integrations, it's not possible to specify a dependency version in the format package @ git+https:// in the manifest.json of an integration.

Support for zhimi.airp.mb5a was added to your library slightly after version 0.5.12 was released.

As a result, without releasing an updated version of the python-miio library, it's impossible to add support for zhimi.airp.mb5a to the xiaomi_miio integration.

@rytilahti rytilahti added the waiting-for-upstream We're waiting for a change upstream label Mar 13, 2024
@rytilahti
Copy link
Member

rytilahti commented Mar 13, 2024

I will prepare a new dev release (0.6.0.dev0) tonight, if there is nothing so serious that it would block doing that. You can subscribe for notifications at rytilahti/python-miio#1808 to follow the process. It will be necessary to make several changes in the xiaomi_miio integration to work with the restructured library (there are breaking), so those needs to be done before this specific PR can be merged.

edit: release available on pypi: https://github.com/rytilahti/python-miio/releases/tag/0.6.0.dev0 - note that this is just a dev release to make it easier to port the integration over as there are breaking API changes, so this PR will have to wait until that's done.

@emontnemery
Copy link
Contributor

I'm setting this to draft since the PR is waiting for changes to python-miio, please hit the "Ready for review"-button once this PR is ready for review, including a bump of python-miio.

@emontnemery emontnemery marked this pull request as draft April 22, 2024 14:24
@tbb98
Copy link

tbb98 commented May 4, 2024

This addon from HACS works :)
https://github.com/al-one/hass-xiaomi-miot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unsupported Xiaomi Smart Air Purifier 4 zhimi.airp.mb5a
8 participants