-
-
Notifications
You must be signed in to change notification settings - Fork 31.6k
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 quality_scale.yaml for KNX #133937
Add quality_scale.yaml for KNX #133937
Conversation
Hey there @Julius2342, @marvin-w, mind taking a look at this pull request as it has been labeled with an integration ( Code owner commandsCode owners of
|
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.
CI is failing (all seems related to missing translations)
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍 |
Should be fixed by #134078 |
Bronze
config-flow
- Integration needs to be able to be set up via the UIhttps://github.com/home-assistant/core/blob/dev/homeassistant/components/knx/config_flow.py
data_description
to give context to fieldshttps://github.com/home-assistant/core/blob/dev/homeassistant/components/knx/strings.json
ConfigEntry.data
andConfigEntry.options
correctlytest-before-configure
- Test a connection in the config flowunique-config-entry
- Don't allow the same device or service to be able to be set up twiceconfig-flow-test-coverage
- Full test coverage for the config flowhttps://github.com/home-assistant/core/blob/dev/tests/components/knx/test_config_flow.py
runtime-data
- Use ConfigEntry.runtime_data to store runtime datatest-before-setup
- Check during integration initialization if we are able to set it up correctlycore/homeassistant/components/knx/__init__.py
Lines 158 to 160 in bd0edd4
appropriate-polling
- If it's a polling integration, set an appropriate polling intervalentity-unique-id
- Entities have a unique IDcore/homeassistant/components/knx/entity.py
Line 110 in 253098d
YAML entities do it in their platform modules
has-entity-name
- Entities use has_entity_name = Truecore/homeassistant/components/knx/entity.py
Line 103 in 253098d
YAML entities don't use this as they don't support devices
entity-event-setup
- Entities event setupcore/homeassistant/components/knx/entity.py
Line 78 in 253098d
dependency-transparency
- Dependency transparencyhttps://github.com/XKNX
action-setup
- Service actions are registered in async_setupcore/homeassistant/components/knx/__init__.py
Line 140 in 253098d
common-modules
- Place common patterns in common moduleshttps://github.com/home-assistant/core/blob/dev/homeassistant/components/knx/entity.py
docs-high-level-description
- The documentation includes a high-level description of the integration brand, product, or servicehttps://www.home-assistant.io/integrations/knx/
docs-installation-instructions
- The documentation provides step-by-step installation instructions for the integration, including, if needed, prerequisiteshttps://www.home-assistant.io/integrations/knx/#configuration
docs-removal-instructions
- The documentation provides removal instructionsdocs-actions
- The documentation describes the provided service actions that can be usedhttps://www.home-assistant.io/integrations/knx/#actions
brands
- Has branding assets available for the integrationhttps://github.com/home-assistant/brands/tree/master/core_integrations/knx
Silver
config-entry-unloading
- Support config entry unloadingcore/homeassistant/components/knx/__init__.py
Line 186 in bd0edd4
log-when-unavailable
- If internet/device/service is unavailable, log once when unavailable and once when back connectedentity-unavailable
- Mark entity unavailable if appropriatecore/homeassistant/components/knx/entity.py
Lines 64 to 66 in 8f6e4cd
action-exceptions
- Service actions raise exceptions when encountering failuresreauthentication-flow
- Reauthentication flowparallel-updates
- Set Parallel updatestest-coverage
- Above 95% test coverage for all integration modulesintegration-owner
- Has an integration ownerhttps://github.com/home-assistant/core/blob/dev/homeassistant/components/knx/manifest.json
docs-installation-parameters
- The documentation describes all integration installation parametersdocs-configuration-parameters
- The documentation describes all integration configuration optionsGold
entity-translations
- Entities have translated namesentity-device-class
- Entities use device classes where possibledevices
- The integration creates devicesentity-category
- Entities are assigned an appropriate EntityCategoryentity-disabled-by-default
- Integration disables less popular (or noisy) entitiesdiscovery
- Can be discoveredstale-devices
- Clean up stale devicesdiagnostics
- Implements diagnosticshttps://github.com/home-assistant/core/blob/dev/homeassistant/components/knx/diagnostics.py
exception-translations
- Exception messages are translatableicon-translations
- Icon translationsreconfiguration-flow
- Integrations should have a reconfigure flowdynamic-devices
- Devices added after integration setupdiscovery-update-info
- Integration uses discovery info to update network informationrepair-issues
- Repair issues and repair flows are used when user intervention is neededdocs-use-cases
- The documentation describes use cases to illustrate how this integration can be useddocs-supported-devices
- The documentation describes known supported / unsupported devicesdocs-supported-functions
- The documentation describes the supported functionality, including entities, and platformsdocs-data-update
- The documentation describes how data is updateddocs-known-limitations
- The documentation describes known limitations of the integration (not to be confused with bugs)docs-troubleshooting
- The documentation provides troubleshooting informationdocs-examples
- The documentation provides automation examples the user can use.Platinum
async-dependency
- Dependency is asyncinject-websession
- The integration dependency supports passing in a websessionstrict-typing
- Strict typing