Skip to content

Add config flow & config entry support#157

Open
iantrich wants to merge 8 commits intomasterfrom
modernization
Open

Add config flow & config entry support#157
iantrich wants to merge 8 commits intomasterfrom
modernization

Conversation

@iantrich
Copy link
Member

@iantrich iantrich commented Mar 4, 2026

This pull request introduces a major refactor and modernization of the Feedparser custom component for Home Assistant. The integration now supports a full config flow for UI-based setup and options management, improves documentation for both UI and YAML configuration paths, and standardizes option handling and migration. The codebase is restructured for clarity and maintainability, and a development container is added for easier local development.

Core integration and configuration improvements:

  • Added a full config flow (custom_components/feedparser/config_flow.py) for UI-based setup and options, including validation, migration, and options flow support. This enables users to add and configure Feedparser entirely through the Home Assistant UI.
  • Refactored the main integration file (custom_components/feedparser/__init__.py) to support config entry setup, unloading, migration, and option normalization for both UI and YAML paths.
  • Introduced a constants module (custom_components/feedparser/const.py) to centralize all option keys, defaults, and platform definitions, improving maintainability and consistency.

Documentation and user guidance:

  • Updated the README.md to clearly explain both UI and YAML configuration methods, provide detailed option references, clarify field behaviors, and add a section for development container usage.
  • Removed outdated or less relevant support messaging from the documentation for a more professional presentation.

Development and packaging:

  • Added a .devcontainer.json for VS Code development container support, streamlining local development and testing of the integration.
  • Updated manifest.json to enable config flow support, bump the version to 1.0.0, and format requirements and codeowners for clarity.

iantrich added 3 commits March 3, 2026 23:38
Introduce full config entry support and UI options for the Feedparser integration. Adds config_flow, options flow, constants, translations/strings, and migration logic (ENTRY_VERSION bump) with normalization helpers for inclusions/exclusions and scan_interval. Refactors sensor to support async_setup_entry, unique_id, configurable scan_interval, safer typing/casting, improved image/link/date handling, and keeps legacy YAML platform support. Updates manifest (config_flow:true, version bump), README with UI setup and configuration reference, adds devcontainer and helper scripts for development, and includes minor test and test-data cleanups.
Import Home Assistant config validation and add CONFIG_SCHEMA = cv.platform_only_config_schema(DOMAIN) to declare platform-only YAML configuration and enable proper config validation. Also import DOMAIN from consts and tidy manifest.json key ordering (move config_flow, domain, name) for consistency; no functional logic changes.
@iantrich iantrich mentioned this pull request Mar 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant