mirror of
https://github.com/home-assistant/supervisor.git
synced 2026-04-02 00:07:16 +01:00
main
* Fix version/requirements parsing in setup.py, set version in Dockerfile Remove the step patching const.py with detected version in CI and do this during Dockerfile version from BUILD_VERSION argument instead. Also, fix parsing of the version in `setup.py` - it wasn't working because it was splitting the files on "/n" instead of newlines, resulting in all Python packages installed having version string set to `9999.9.9.dev9999` instead of the expected version. (Note: setuptools are doing a version string normalization, so the installed package has stripped leading zeroes and the second component is `9` instead of the literal `09` used in default string in all places. Fixing this is out of scope of this change as the ideal solution would be to change the versioning schema but it should be noted.) Lastly, clean up builder.yaml environment variables (crane is not used anymore after #6679). * Generate setuptools-compatible version for PR builds For PR builds, we're using plain commit SHA as the version. This is perfectly fine for Docker tags but it's not acceptable for Python package version. By fixing the setup.py bug this error surfaced. Work it around by setting the Package version to the string we used previously suffixed by the commit SHA as build metadata (delimited by `+`).
Home Assistant Supervisor
First private cloud solution for home automation
Home Assistant (former Hass.io) is a container-based system for managing your Home Assistant Core installation and related applications. The system is controlled via Home Assistant which communicates with the Supervisor. The Supervisor provides an API to manage the installation. This includes changing network settings or installing and updating software.
Installation
Installation instructions can be found at https://home-assistant.io/getting-started.
Development
For small changes and bugfixes you can just follow this, but for significant changes open a RFC first. Development instructions can be found here.
Release
Releases are done in 3 stages (channels) with this structure:
- Pull requests are merged to the
mainbranch. - A new build is pushed to the
devstage. - Releases are published.
- A new build is pushed to the
betastage. - The
stable.jsonfile is updated. - The build that was pushed to
betawill now be pushed tostable.
Description
Languages
Python
95.5%
JavaScript
4.4%
