This page describes the steps for publishing a new Home Assistant release. Those steps requires that you don’t use forks but work with the repositories themself.
devto make the PR mergeable.
- Cut a release branch from
dev. Example name
- Create a pull request from the release branch to
masterwith the upcoming release number as the title. PR message contains intro, highlighting major changes, and an overview of all changes tagging each author. Use hass-release to collect the details.
homeassistant/const.pywith the correct version number (remove the
devtag) and push that commit to release branch.
- From now until the release branch has been merged, we tag bugfixes with the milestone for the release (create if doesn’t exist).
homeassistant/const.pywith the upcoming version number (including the
devtag) and push that commit to the
- Cut release branch of
next. For example
- Open a PR from release branch to
currentwith the upcoming release number as the title.
- Merge pull request (DO NOT SQUASH!).
- Go to releases and tag a new release on the
masterbranch. “Tag version” and “Release title” are the version number (
O.xfor major version,
0.x.yfor minor and bug fix releases). Release description is the text from PR. Press “Publish release” to finish the process.
- Create a blog post in the release branch and base it on the text of the PR in the main repository. Add images, additional text, links, etc. if it adds value. Tag each platform/component in a message to documentation.
- Create missing documentation as stubs.
config.ymlwith link to the new release blog post and version number (at the bottom of the file).
currentinto release branch (
$ git checkout release-0-40 && git merge current) to make the PR mergeable.
- Merge pull request (blog post, updated frontpage, and all new documentation) to
current. DO NOT SQUASH!
Tags on Docker hub are automatically created when a release has been created on GitHub.
master branch and run
script/release to publish the new release on Python Package Index.
- Use hootsuite to publish a link to the release post on social media.