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 custom panel for LCN configuration #108664

Merged
merged 22 commits into from
Aug 21, 2024

Conversation

alengwenus
Copy link
Contributor

@alengwenus alengwenus commented Jan 22, 2024

Proposed change

This adds a custom panel for the LCN integration. The panel allows to add/delete LCN devices and entities and thus replaces the configuration via configuration.yaml. Along with the panel a Config Flow is added which allows setting up a new LCN integration via a host device.

The configuration via configuration.yaml is marked as deprecated, however an import is still possible.

New requirement

lcn-frontend - the package containing the panel frontend code https://github.com/alengwenus/lcn-frontend

Screenshots

Add/delete devices for LCN hardware modules/groups
lcn_devices_small

Add/delete entities to a LCN device for the corresponding domains.
lcn_create_entity_small

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:

@alengwenus alengwenus changed the title Add LCN configuration panel Add custom panel for LCN configuration Jan 22, 2024
@alengwenus alengwenus force-pushed the dev-lcn-frontend branch 4 times, most recently from f62bd47 to e842297 Compare January 26, 2024 17:44
@alengwenus alengwenus force-pushed the dev-lcn-frontend branch 2 times, most recently from dd7d04b to 7540c55 Compare March 9, 2024 15:34
@alengwenus alengwenus force-pushed the dev-lcn-frontend branch 2 times, most recently from abc597c to 9e2dc49 Compare March 15, 2024 18:17
@alengwenus alengwenus force-pushed the dev-lcn-frontend branch 2 times, most recently from 9641383 to 98b6246 Compare April 5, 2024 15:09
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 make this a configuration panel instead 👍

homeassistant/components/lcn/websocket.py Outdated Show resolved Hide resolved
@home-assistant
Copy link

home-assistant bot commented May 8, 2024

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 home-assistant bot marked this pull request as draft May 8, 2024 12:18
@alengwenus alengwenus force-pushed the dev-lcn-frontend branch 3 times, most recently from 7d5d9ef to 3a480e3 Compare May 9, 2024 12:53
@alengwenus alengwenus marked this pull request as ready for review May 9, 2024 13:57
@home-assistant home-assistant bot requested a review from emontnemery May 9, 2024 13:57
homeassistant/components/lcn/__init__.py Outdated Show resolved Hide resolved
homeassistant/components/lcn/__init__.py Outdated Show resolved Hide resolved
homeassistant/components/lcn/helpers.py Outdated Show resolved Hide resolved
homeassistant/components/lcn/manifest.json Outdated Show resolved Hide resolved
homeassistant/components/lcn/config_flow.py Outdated Show resolved Hide resolved
homeassistant/components/lcn/config_flow.py Outdated Show resolved Hide resolved
.coveragerc Outdated Show resolved Hide resolved
homeassistant/components/lcn/websocket.py Outdated Show resolved Hide resolved
tests/components/lcn/test_config_flow.py Show resolved Hide resolved
homeassistant/components/lcn/websocket.py Outdated Show resolved Hide resolved
@home-assistant home-assistant bot marked this pull request as draft May 14, 2024 13:47
@alengwenus alengwenus marked this pull request as ready for review May 18, 2024 14:04
@home-assistant home-assistant bot requested a review from emontnemery May 18, 2024 14:04
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.

Thanks, @alengwenus 👍

@emontnemery emontnemery merged commit c276cfc into home-assistant:dev Aug 21, 2024
40 checks passed
@alengwenus
Copy link
Contributor Author

Many thanks @emontnemery for the detailed review! Looking forward to the user feedback!

raman325 added a commit to raman325/home-assistant that referenced this pull request Aug 22, 2024
* dev: (642 commits)
  Improve config flow type hints (part 4) (home-assistant#124348)
  Improve config flow type hints (part 1) (home-assistant#124343)
  Add tests for Bring integration (home-assistant#123087)
  Add DROP Alert product support (home-assistant#117867)
  update ttn_client - fix crash with SenseCAP devices (home-assistant#124370)
  Add Aranet Radon Plus support (home-assistant#124197)
  Fix Spotify Media Browsing fails for new config entries (home-assistant#124368)
  Convert Bang & Olufsen testing logging patches to caplog (home-assistant#124366)
  Remove unneeded check for Bang & Olufsen events and device update (home-assistant#124363)
  Bump async-interrupt to 1.2.0 (home-assistant#124360)
  Rename OpenThermGatewayDevice to OpenThermGatewayHub (home-assistant#124361)
  Fix Weatherflow Cloud lightning (home-assistant#124082)
  Change POWER_VOLT_AMPERE_REACTIVE to UnitOfReactivePower (home-assistant#117153)
  Disable Habitica deprecated entities by default (home-assistant#123522)
  Add test cases for ViCare entities (home-assistant#122983)
  Add tests for IronOS integration (home-assistant#123078)
  Fix state name for binary_sensor Power from clear/detected to on/off (home-assistant#116994)
  Extend blebox shutterbox tilt support (home-assistant#110547)
  blebox: use blebox_uniapi.cover.BleboxCoverState enum members instead of plain integers (home-assistant#124302)
  Add custom panel for LCN configuration (home-assistant#108664)
  ...
@epenet epenet mentioned this pull request Aug 22, 2024
19 tasks
@github-actions github-actions bot locked and limited conversation to collaborators Aug 22, 2024
@home-assistant home-assistant unlocked this conversation Aug 25, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Aug 26, 2024
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.

4 participants