-
-
Notifications
You must be signed in to change notification settings - Fork 28.4k
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 integration for APsystems EZ1 microinverter #114531
Add integration for APsystems EZ1 microinverter #114531
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple of comments don't forget to add a link to the library
I've just checked the test coverage: 96% as the lines returning the successfully created config never get tested, as |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I won't have any room to do more reviews the coming weeks
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍 |
Maybe @CM000n, could you leave a review? |
@joostlek Pinging you in the hopes that you've got capacity for hopefully the last review for this PR. |
No, I'm still busy with my thesis |
* Ensure coverage entries are sorted * Use autofix * Adjust * Add comment to coverage file * test CI * revert CI test --------- Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
1972fe5
to
b89434a
Compare
Did you run |
Nope, that seemed to be the problem. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please fix these comments in a follow up PR
@@ -81,6 +81,10 @@ omit = | |||
homeassistant/components/aprilaire/climate.py | |||
homeassistant/components/aprilaire/coordinator.py | |||
homeassistant/components/aprilaire/entity.py | |||
homeassistant/components/apsystems/__init__.py | |||
homeassistant/components/apsystems/const.py |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
const doesn't have any coverage checks
|
||
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: | ||
"""Set up this integration using UI.""" | ||
entry.runtime_data = {} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can be removed
api = APsystemsEZ1M(ip_address=entry.data[CONF_IP_ADDRESS], timeout=8) | ||
coordinator = ApSystemsDataCoordinator(hass, api) | ||
await coordinator.async_config_entry_first_refresh() | ||
entry.runtime_data = {"COORDINATOR": coordinator} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should type the ConfigEntry using the generic type
{ | ||
"config": { | ||
"step": { | ||
"user": { | ||
"data": { | ||
"host": "[%key:common::config_flow::data::host%]", | ||
"username": "[%key:common::config_flow::data::username%]", | ||
"password": "[%key:common::config_flow::data::password%]" | ||
} | ||
} | ||
}, | ||
"error": { | ||
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]", | ||
"invalid_auth": "[%key:common::config_flow::error::invalid_auth%]", | ||
"unknown": "[%key:common::config_flow::error::unknown%]" | ||
}, | ||
"abort": { | ||
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]" | ||
} | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The strings are not updated. I am missing the config flow string and I am missing all of the entity translations
Proposed change
The APsystems EZ1 microinverter has an open local HTTP api and I've created the integration over at https://github.com/SonnenladenGmbH/APsystems-EZ1-API-HomeAssistant but the people wanted to be integrated into HomeAssistant directly.
The following library is used: https://github.com/SonnenladenGmbH/APsystems-EZ1-API
Type of change
Additional information
This is my first PR, so I tried my best.
Checklist
ruff format homeassistant tests
)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest
.requirements_all.txt
.Updated by running
python3 -m script.gen_requirements_all
..coveragerc
.To help with the load of incoming pull requests: