Add Anova integration
Proposed change
Adding read only entities for Anova Sous Vides with Wifi support. Uses anova-wifi
Type of change
- [ ] Dependency upgrade
- [ ] Bugfix (non-breaking change which fixes an issue)
- [x] 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: https://github.com/home-assistant/home-assistant.io/pull/25851
Checklist
- [x] The code change is tested and works locally.
- [x] Local tests pass. Your PR cannot be merged unless tests pass
- [x] There is no commented out code in this PR.
- [x] I have followed the development checklist
- [x] The code has been formatted using Black (
black --fast homeassistant tests) - [x] Tests have been added to verify that the new code works.
If user exposed functionality or configuration variables are added/changed:
- [x] Documentation added/updated for www.home-assistant.io
If the code communicates with devices, web services, or third-party tools:
- [x] The manifest file has all fields filled out correctly.
Updated and included derived files by running:python3 -m script.hassfest. - [x] New or updated dependencies have been added to
requirements_all.txt.
Updated by runningpython3 -m script.gen_requirements_all. - [x] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
- [x] Untested files have been added to
.coveragerc.
To help with the load of incoming pull requests:
- [x] I have reviewed two other open pull requests in this repository.
I noticed that the docs mentioned YAML configuration. I don't think that will be accepted here per ADR 0010 integrations that communicate with a device/service should be config flow only.
I noticed that the docs mentioned YAML configuration. I don't think that will be accepted here per ADR 0010 integrations that communicate with a device/service should be config flow only.
Thanks for the heads up! I have resolved that now
Hi Lash-L
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!
Hello. I have a couple of comments which might help improve the code a bit as well as the component itself
Thanks for the feedback! I agreed with everything you had to say, so I went ahead and applied them.
Tested this PR using the corresponding HACS integration. I can confirm it works on my Anova AN500-US00 model. I get a set of entities that update as expected.
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks :+1:
Thank you for keeping the initial PR small 👍
Of course! Thank you for taking the time to review.
Lets rename this to the Anova integration as they have multiple products and we don't want to end up with a seperate integration for each device type in the future.
https://anovaculinary.com/products/anova-precision-oven
Lets rename this to the Anova integration as they have multiple products and we don't want to end up with a seperate integration for each device type in the future.
https://anovaculinary.com/products/anova-precision-oven
Can do.
so the new domain should be "anova"? I can go through and make that change here and on docs and on brands
I am planning to add authentication to be able to control the sous vide. It is best if I wait for this PR to be merged and then add authentication correct?
I ended up adding authentication to this PR, as it will completely change the config flow, so I figured it made more sense to have it as it will be for the long-term future. As well, it makes setup significantly easier for the end user.
If I need to revert it because you already partially reviewed this. Let me know and I will. It is a relatively small change, with most of the changes coming from the test config flow.
Thank you!
Functioning after all of our changes
Bumped this and docs to 2023.5
Edit: rerun to try to fix checks
Merging dev to fix frontend test
merged to fix conflicts
Let me know what else you need me to do for this. No rush, I know you have plenty going on! Would love to have this included in 2023.05 so I can add more functionality before 2023.06, but I completely understand if that doesn't happen.
Not sure why that Mariadb one keeps failing- I assume it's just the ci pipeline being weird?
Not sure why that Mariadb one keeps failing- I assume it's just the ci pipeline being weird?
I think I recently fixed that test. It might have just needed dev merged in
Thanks bdraco! I appreciate all your help!