Files
bahmcloud_store/CHANGELOG.md

5.1 KiB

Changelog

All notable changes to this repository will be documented in this file.

Sections:

  • Added
  • Changed
  • Fixed
  • Removed
  • Security

[0.5.0] - 2026-01-15

Added

  • Manual refresh button that triggers a full backend refresh (store index + provider data).
  • Unified refresh pipeline: startup, timer and UI now use the same refresh logic.
  • Cache-busting for store index requests to always fetch the latest store.yaml.

Improved

  • Logging for store index loading and parsing.
  • Refresh behavior now deterministic and verifiable via logs.

Fixed

  • Refresh button previously only reloaded cached data.
  • Store index was not always reloaded immediately on user action.

[0.4.1] - 2026-01-15

Fixed

  • Fixed GitLab README loading by using robust raw file endpoints.
  • Added support for nested GitLab groups when resolving README paths.
  • Added fallback handling for multiple README filenames (README.md, README, README.rst, etc.).
  • Added branch fallback logic for README loading (default, main, master).
  • Improved error resilience so README loading failures never break the store core.
  • No behavior change for GitHub and Gitea providers.

[0.4.0] - 2026-01-15

Added

  • Initial public release of the Bahmcloud Store integration.
  • Sidebar panel with repository browser UI.
  • Support for loading repositories from a central store.yaml index.
  • Support for custom repositories added by the user.
  • Provider abstraction for GitHub, GitLab and Gitea:
    • Fetch repository information (name, description, default branch).
    • Resolve latest version from:
      • Releases
      • Tags
      • Fallback mechanisms.
  • Repository metadata support via:
    • bcs.yaml
    • hacs.yaml
    • hacs.json
  • README loading and rendering pipeline:
    • Fetch raw README files.
    • Server-side Markdown rendering.
    • Sanitized HTML output for the panel UI.
  • Auto refresh mechanism for store index and repository metadata.
  • API endpoints:
    • List repositories
    • Add custom repository
    • Remove repository
      Persisted via Home Assistant storage (.storage/bcs_store).
  • Public static asset endpoint for panel JS (/api/bahmcloud_store_static/...) without auth (required for HA custom panels).
  • Initial API namespace:
    • GET /api/bcs list merged repositories (index + custom)
    • POST /api/bcs add custom repository
    • DELETE /api/bcs/custom_repo remove custom repository

Changed

  • Repository cards are now clickable to open the detail view.

[0.3.2] - 2026-01-15

Added

  • Metadata resolver:
    • Reads bcs.yaml (preferred), then hacs.yaml, then hacs.json from repository root.
    • Extracts name, description, category, author, maintainer (best-effort).
  • UI now prefers metadata description over provider description.
  • Provider repository name is now only used as a fallback if no metadata name is provided.

Changed

  • Repo display name priority:
    1. metadata (bcs.yaml / hacs.*)
    2. store index name (store.yaml)
    3. provider repo name
    4. repository URL

[0.3.1] - 2026-01-15

Fixed

  • Panel header version is now derived from manifest.json via backend API (no more hardcoded version strings).
  • Mobile navigation/header visibility improved by explicitly disabling iframe embedding for the custom panel.
  • When adding a custom repository without a display name, the name is now fetched from the git provider (GitHub/Gitea) and shown automatically.

[0.3.0] - 2026-01-15

Added

  • Repository enrichment for the Store UI:
    • GitHub: fetch owner and description via GitHub REST API.
    • Gitea: fetch owner and description via Gitea REST API (/api/v1).
  • Provider detection for GitHub/GitLab/Gitea (best-effort).
  • Automatic UI description line populated from provider data (when available).

Changed

  • Panel module URL cache-busting updated to avoid stale frontend assets.

Fixed

  • Store "Refresh" now triggers immediate backend refresh (from 0.2.0).
  • Avoided circular imports by using TYPE_CHECKING for type references.

Notes

  • Installation/README details view/update entities will be added in later versions.

[0.2.0] - 2026-01-15

Added

  • Foundation architecture for BCS (Bahmcloud Component Store) inside a Home Assistant custom component.
  • Custom panel (no iframe) using hass.callApi() to avoid authentication issues.
  • Store index loader (store.yaml) with periodic refresh (data only).
  • Manual repository management:
    • Add repository
    • List repositories
    • Remove repository Persisted via Home Assistant storage (.storage/bcs_store).
  • Public static asset endpoint for panel JS (/api/bahmcloud_store_static/...) without auth (required for HA custom panels).
  • Initial API namespace:
    • GET /api/bcs list merged repositories (index + custom)
    • POST /api/bcs add custom repository
    • DELETE /api/bcs/custom_repo remove custom repository

Changed

  • Store API/UI terminology standardized to "BCS" (Bahmcloud Component Store), while integration domain remains bahmcloud_store for compatibility.

Notes

  • Installation, README rendering, provider enrichment (GitHub/Gitea/GitLab), and Update entities will be implemented in later versions.