1
0

Compare commits

...

67 Commits

16 changed files with 105 additions and 406 deletions

View File

@@ -15,45 +15,47 @@ jobs:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4.1.1
- uses: actions/setup-python@v4.8.0
with:
python-version: '3.11'
- run: pip install -r script/requirements.txt
- run: script/bump-version.py ${{ github.event.inputs.version }}
- name: Write Beta changelog
run: |
cat > esphome-beta/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }}
- uses: actions/checkout@v4.1.6
- uses: actions/setup-python@v5.1.0
with:
python-version: "3.11"
- run: pip install -r script/requirements.txt
- run: script/bump-version.py ${{ github.event.inputs.version }}
- name: Write Beta changelog
if: ${{ !contains(github.event.inputs.version, 'dev') }}
run: |
cat > esphome-beta/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }}
${{ github.event.inputs.content }}
EOF
- name: Write Stable changelog
if: ${{ !contains(github.event.inputs.version, 'b') }}
run: |
cat > esphome/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }}
${{ github.event.inputs.content }}
EOF
- name: Write Stable changelog
if: ${{ !contains(github.event.inputs.version, 'b') && !contains(github.event.inputs.version, 'dev') }}
run: |
cat > esphome/CHANGELOG.md << 'EOF'
## ${{ github.event.inputs.version }}
${{ github.event.inputs.content }}
EOF
- name: Commit version bump
id: commit_version
run: |
git config user.name esphomebot
git config user.email esphome@nabucasa.com
git add .
git commit -m "Bump version to ${{ github.event.inputs.version }}"
git push
COMMIT=$(git rev-parse HEAD)
echo "::set-output name=commit_sha::${COMMIT}"
- name: Create a Release
uses: actions/create-release@v1.1.4
continue-on-error: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.event.inputs.version }}
release_name: ${{ github.event.inputs.version }}
body: ${{ github.event.inputs.content }}
prerelease: ${{ contains(github.event.inputs.version, 'b') }}
commitish: ${{ steps.commit_version.outputs.commit_sha }}
${{ github.event.inputs.content }}
EOF
- name: Commit version bump
id: commit_version
run: |
git config user.name esphomebot
git config user.email esphome@nabucasa.com
git add .
git commit -m "Bump version to ${{ github.event.inputs.version }}"
git push
COMMIT=$(git rev-parse HEAD)
echo "::set-output name=commit_sha::${COMMIT}"
- name: Create a Release
uses: actions/create-release@v1.1.4
continue-on-error: true
if: ${{ !contains(github.event.inputs.version, 'dev') }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.event.inputs.version }}
release_name: ${{ github.event.inputs.version }}
body: ${{ github.event.inputs.content }}
prerelease: ${{ contains(github.event.inputs.version, 'b') }}
commitish: ${{ steps.commit_version.outputs.commit_sha }}

View File

@@ -19,9 +19,9 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v4.1.6
- name: Log in to the GitHub container registry
uses: docker/login-action@v3.0.0
uses: docker/login-action@v3.2.0
if: github.event_name != 'pull_request'
with:
registry: ghcr.io
@@ -30,9 +30,9 @@ jobs:
- name: Set up QEMU
uses: docker/setup-qemu-action@v3.0.0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3.0.0
uses: docker/setup-buildx-action@v3.3.0
- name: Build and Push
uses: docker/build-push-action@v5.1.0
uses: docker/build-push-action@v5.3.0
with:
context: .
file: .devcontainer/Dockerfile

View File

@@ -19,9 +19,9 @@ jobs:
channel: dev
steps:
- name: ⤵️ Check out code from GitHub
uses: actions/checkout@v4.1.1
uses: actions/checkout@v4.1.6
- name: 🛠 Setup Python
uses: actions/setup-python@v4.8.0
uses: actions/setup-python@v5.1.0
with:
python-version: '3.11'
- name: 🛠 Install dependencies
@@ -29,6 +29,6 @@ jobs:
- name: 🛠 Generate files from template
run: python script/generate.py ${{ matrix.channels.channel }}
- name: 🚀 Run Home Assistant Add-on Lint on ${{ matrix.channels.channel }}
uses: frenck/action-addon-linter@v2.15.0
uses: frenck/action-addon-linter@v2.15.1
with:
path: "./${{ matrix.channels.folder }}"

View File

@@ -1,121 +1,6 @@
## 2024.4.0
## 2024.5.5
## Full list of changes
### New Components
- Add sun_gtil2 component (for SUN-1000G2 / SUN-2000G2 grid tie inverters) [esphome#4958](https://github.com/esphome/esphome/pull/4958) by [@Mat931](https://github.com/Mat931) (new-integration)
- Add support for AT581x component [esphome#6297](https://github.com/esphome/esphome/pull/6297) by [@X-Ryl669](https://github.com/X-Ryl669) (new-integration)
- Add new Component: Ultrasonic Distance Sensor JSN-SR04T [esphome#6023](https://github.com/esphome/esphome/pull/6023) by [@Mafus1](https://github.com/Mafus1) (new-integration)
- feat: Add Daikin ARC (tested on Daikin ARC472A62) [esphome#6429](https://github.com/esphome/esphome/pull/6429) by [@magicbear](https://github.com/magicbear) (new-integration)
- add support for Tuya pink version of miflora [esphome#5402](https://github.com/esphome/esphome/pull/5402) by [@fariouche](https://github.com/fariouche) (new-integration)
- Implemented support for the TLC5971 as an output component [esphome#6494](https://github.com/esphome/esphome/pull/6494) by [@IJIJI](https://github.com/IJIJI) (new-integration)
### Breaking Changes
- Add support for new modes in Tuya Climate [esphome#5159](https://github.com/esphome/esphome/pull/5159) by [@moriahmorgan](https://github.com/moriahmorgan) (breaking-change)
- IPv6 string representation follows RFC5952 [esphome#6449](https://github.com/esphome/esphome/pull/6449) by [@HeMan](https://github.com/HeMan) (breaking-change)
### Beta Changes
- Add dooya remote transmitter test [esphome#6508](https://github.com/esphome/esphome/pull/6508) by [@jesserockz](https://github.com/jesserockz)
- ads1115: remove auto-load and split sensor into platform folder [esphome#5981](https://github.com/esphome/esphome/pull/5981) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20240412.0 [esphome#6517](https://github.com/esphome/esphome/pull/6517) by [@jesserockz](https://github.com/jesserockz)
- Fix missing ifdefs in voice assistant [esphome#6520](https://github.com/esphome/esphome/pull/6520) by [@jesserockz](https://github.com/jesserockz)
- Fix project version longer than 30 characters breaking compilation [esphome#6535](https://github.com/esphome/esphome/pull/6535) by [@jesserockz](https://github.com/jesserockz)
- Fix no-release bug on ft6x36 [esphome#6527](https://github.com/esphome/esphome/pull/6527) by [@clydebarrow](https://github.com/clydebarrow)
### All changes
- Bump docker/login-action from 3.0.0 to 3.1.0 [esphome#6367](https://github.com/esphome/esphome/pull/6367) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump peter-evans/create-pull-request from 6.0.1 to 6.0.2 [esphome#6361](https://github.com/esphome/esphome/pull/6361) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump docker/build-push-action from 5.2.0 to 5.3.0 in /.github/actions/build-image [esphome#6373](https://github.com/esphome/esphome/pull/6373) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump docker/setup-buildx-action from 3.1.0 to 3.2.0 [esphome#6372](https://github.com/esphome/esphome/pull/6372) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix deep_sleep for ESP32-C6 [esphome#6377](https://github.com/esphome/esphome/pull/6377) by [@ferrets6](https://github.com/ferrets6)
- Fix keeloq for IDF 5+ [esphome#6382](https://github.com/esphome/esphome/pull/6382) by [@kbx81](https://github.com/kbx81)
- Fix Nextion set_component_picture call [esphome#6378](https://github.com/esphome/esphome/pull/6378) by [@edwardtfn](https://github.com/edwardtfn)
- Add line_at_angle method to Display component [esphome#6381](https://github.com/esphome/esphome/pull/6381) by [@deisterhold](https://github.com/deisterhold)
- Check generated proto files are as expected if any are modified in PRs [esphome#6254](https://github.com/esphome/esphome/pull/6254) by [@jesserockz](https://github.com/jesserockz)
- ld2420: fix energy mode documentation [esphome#6225](https://github.com/esphome/esphome/pull/6225) by [@andresv](https://github.com/andresv)
- Add actions for component tests A, B and C [esphome#6256](https://github.com/esphome/esphome/pull/6256) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (V) [esphome#6231](https://github.com/esphome/esphome/pull/6231) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (X,Y,Z) [esphome#6233](https://github.com/esphome/esphome/pull/6233) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (E) [esphome#6176](https://github.com/esphome/esphome/pull/6176) by [@kbx81](https://github.com/kbx81)
- Make SPI compile with IDF >= 5.0 [esphome#6383](https://github.com/esphome/esphome/pull/6383) by [@HeMan](https://github.com/HeMan)
- Fix esp32-camera test yaml [esphome#6398](https://github.com/esphome/esphome/pull/6398) by [@kbx81](https://github.com/kbx81)
- Bump pytest-asyncio from 0.23.5.post1 to 0.23.6 [esphome#6402](https://github.com/esphome/esphome/pull/6402) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump actions/cache from 4.0.1 to 4.0.2 in /.github/actions/restore-python [esphome#6403](https://github.com/esphome/esphome/pull/6403) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump actions/cache from 4.0.1 to 4.0.2 [esphome#6404](https://github.com/esphome/esphome/pull/6404) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump ESP8266 Arduino versions [esphome#5359](https://github.com/esphome/esphome/pull/5359) by [@HeMan](https://github.com/HeMan)
- Allow accept/reject delta to be specified. [esphome#5060](https://github.com/esphome/esphome/pull/5060) by [@cvwillegen](https://github.com/cvwillegen)
- Allow setting htop for ledc [esphome#6340](https://github.com/esphome/esphome/pull/6340) by [@Gagootron](https://github.com/Gagootron)
- sm2135: add separate_modes option to support different chip variants [esphome#6152](https://github.com/esphome/esphome/pull/6152) by [@jasperro](https://github.com/jasperro)
- AHT10: fix temperature-only operation; add warning/error messages [esphome#6405](https://github.com/esphome/esphome/pull/6405) by [@clydebarrow](https://github.com/clydebarrow)
- Add support for new modes in Tuya Climate [esphome#5159](https://github.com/esphome/esphome/pull/5159) by [@moriahmorgan](https://github.com/moriahmorgan) (breaking-change)
- Add sun_gtil2 component (for SUN-1000G2 / SUN-2000G2 grid tie inverters) [esphome#4958](https://github.com/esphome/esphome/pull/4958) by [@Mat931](https://github.com/Mat931) (new-integration)
- SPI: Make some validation failures give more useful messages. [esphome#6413](https://github.com/esphome/esphome/pull/6413) by [@clydebarrow](https://github.com/clydebarrow)
- Bump aioesphomeapi from 23.1.1 to 23.2.0 [esphome#6412](https://github.com/esphome/esphome/pull/6412) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Add check for use of GPIOXX in config [esphome#6419](https://github.com/esphome/esphome/pull/6419) by [@clydebarrow](https://github.com/clydebarrow)
- WireGuard for esp8266 [esphome#6365](https://github.com/esphome/esphome/pull/6365) by [@droscy](https://github.com/droscy)
- setup.cfg: drop duplicate, underintended trove classifier [esphome#6421](https://github.com/esphome/esphome/pull/6421) by [@mweinelt](https://github.com/mweinelt)
- Store preferences in disk file on host platform [esphome#6428](https://github.com/esphome/esphome/pull/6428) by [@clydebarrow](https://github.com/clydebarrow)
- Add support for AT581x component [esphome#6297](https://github.com/esphome/esphome/pull/6297) by [@X-Ryl669](https://github.com/X-Ryl669) (new-integration)
- Add some components to the new testing framework (F) [esphome#6177](https://github.com/esphome/esphome/pull/6177) by [@kbx81](https://github.com/kbx81)
- Add get_contrast() and get_brightness() to SSD1306 class to get protected variables [esphome#6435](https://github.com/esphome/esphome/pull/6435) by [@benediktkr](https://github.com/benediktkr)
- Add new Component: Ultrasonic Distance Sensor JSN-SR04T [esphome#6023](https://github.com/esphome/esphome/pull/6023) by [@Mafus1](https://github.com/Mafus1) (new-integration)
- Add some components to the new testing framework (G) [esphome#6178](https://github.com/esphome/esphome/pull/6178) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (K) [esphome#6186](https://github.com/esphome/esphome/pull/6186) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (N) [esphome#6210](https://github.com/esphome/esphome/pull/6210) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (Q) [esphome#6218](https://github.com/esphome/esphome/pull/6218) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (U) [esphome#6230](https://github.com/esphome/esphome/pull/6230) by [@kbx81](https://github.com/kbx81)
- Fix spacing in new test yaml [esphome#6441](https://github.com/esphome/esphome/pull/6441) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (W) [esphome#6232](https://github.com/esphome/esphome/pull/6232) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (L) [esphome#6195](https://github.com/esphome/esphome/pull/6195) by [@kbx81](https://github.com/kbx81)
- feat: Add Daikin ARC (tested on Daikin ARC472A62) [esphome#6429](https://github.com/esphome/esphome/pull/6429) by [@magicbear](https://github.com/magicbear) (new-integration)
- Disable truthy yamllint rule [esphome#6442](https://github.com/esphome/esphome/pull/6442) by [@jesserockz](https://github.com/jesserockz)
- Add get_size method to QR Code header [esphome#6430](https://github.com/esphome/esphome/pull/6430) by [@deisterhold](https://github.com/deisterhold)
- Minor change to support sht85 sensor [esphome#6415](https://github.com/esphome/esphome/pull/6415) by [@mrtoy-me](https://github.com/mrtoy-me)
- IPv6 string representation follows RFC5952 [esphome#6449](https://github.com/esphome/esphome/pull/6449) by [@HeMan](https://github.com/HeMan) (breaking-change)
- Bump actions/setup-python from 5.0.0 to 5.1.0 [esphome#6437](https://github.com/esphome/esphome/pull/6437) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump actions/setup-python from 5.0.0 to 5.1.0 in /.github/actions/restore-python [esphome#6438](https://github.com/esphome/esphome/pull/6438) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Optimize QMC5883L: Read registers only for enabled sensors [esphome#6458](https://github.com/esphome/esphome/pull/6458) by [@tronikos](https://github.com/tronikos)
- minor refactor to allow commit hash as ref value. [esphome#6446](https://github.com/esphome/esphome/pull/6446) by [@LelandSindt](https://github.com/LelandSindt)
- TMP117 fix polling period config [esphome#6452](https://github.com/esphome/esphome/pull/6452) by [@mrtoy-me](https://github.com/mrtoy-me)
- Bump Arduino Pico Framework to 3.7.2 and Platform to 1.12.0 [esphome#6386](https://github.com/esphome/esphome/pull/6386) by [@HeMan](https://github.com/HeMan)
- Display menu: Allow "left" key to exit current menu if not editing [esphome#6460](https://github.com/esphome/esphome/pull/6460) by [@jesserockz](https://github.com/jesserockz)
- Fix NOLINT on inclusive-language check [esphome#6464](https://github.com/esphome/esphome/pull/6464) by [@jesserockz](https://github.com/jesserockz)
- Add yamllint to dev requirements [esphome#6466](https://github.com/esphome/esphome/pull/6466) by [@jesserockz](https://github.com/jesserockz)
- Add temperature for QMC5883L [esphome#6456](https://github.com/esphome/esphome/pull/6456) by [@tronikos](https://github.com/tronikos)
- web_server: Return early if no clients connected [esphome#6467](https://github.com/esphome/esphome/pull/6467) by [@jesserockz](https://github.com/jesserockz)
- ESP32 Arduino WiFi: misc bug fixes [esphome#6470](https://github.com/esphome/esphome/pull/6470) by [@paravoid](https://github.com/paravoid)
- Replace std::regex with sscanf calls [esphome#6468](https://github.com/esphome/esphome/pull/6468) by [@jesserockz](https://github.com/jesserockz)
- Include "Failed" status in config log. [esphome#6482](https://github.com/esphome/esphome/pull/6482) by [@clydebarrow](https://github.com/clydebarrow)
- Fix Microphone IsCapturingCondition [esphome#6490](https://github.com/esphome/esphome/pull/6490) by [@RaymiiOrg](https://github.com/RaymiiOrg)
- Remove misleading tag/line in messages [esphome#6495](https://github.com/esphome/esphome/pull/6495) by [@clydebarrow](https://github.com/clydebarrow)
- Send/Receive Voice Assistant audio via API [esphome#6471](https://github.com/esphome/esphome/pull/6471) by [@jesserockz](https://github.com/jesserockz)
- Datetime date initial value fix [esphome#6483](https://github.com/esphome/esphome/pull/6483) by [@RFDarter](https://github.com/RFDarter)
- If the loop() took more than the required time, don't delay further [esphome#6496](https://github.com/esphome/esphome/pull/6496) by [@clydebarrow](https://github.com/clydebarrow)
- Bump LibreTiny version to 1.5.1 [esphome#6500](https://github.com/esphome/esphome/pull/6500) by [@kuba2k2](https://github.com/kuba2k2)
- Internal temperature: Support Beken platform [esphome#6491](https://github.com/esphome/esphome/pull/6491) by [@Mat931](https://github.com/Mat931)
- Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 [esphome#6502](https://github.com/esphome/esphome/pull/6502) by [@dependabot[bot]](https://github.com/apps/dependabot)
- add support for Tuya pink version of miflora [esphome#5402](https://github.com/esphome/esphome/pull/5402) by [@fariouche](https://github.com/fariouche) (new-integration)
- Add MAC address to WiFi config reply [esphome#6489](https://github.com/esphome/esphome/pull/6489) by [@cvwillegen](https://github.com/cvwillegen)
- Adds i2c timeout config [esphome#4614](https://github.com/esphome/esphome/pull/4614) by [@tracestep](https://github.com/tracestep)
- Add ABB-Welcome / Busch-Welcome Door Intercom Protocol [esphome#4689](https://github.com/esphome/esphome/pull/4689) by [@Mat931](https://github.com/Mat931)
- Add support for time entities [esphome#6399](https://github.com/esphome/esphome/pull/6399) by [@jesserockz](https://github.com/jesserockz)
- Fix Match by IRK [esphome#6499](https://github.com/esphome/esphome/pull/6499) by [@MRemy2](https://github.com/MRemy2)
- Add rmt_channel to remote_transmitter and remote_receiver [esphome#6497](https://github.com/esphome/esphome/pull/6497) by [@jesserockz](https://github.com/jesserockz)
- Rework tlc5947 to remove AUTO_LOAD [esphome#6503](https://github.com/esphome/esphome/pull/6503) by [@jesserockz](https://github.com/jesserockz)
- UART: ignore require_tx/rx if not a native uart implementation [esphome#6504](https://github.com/esphome/esphome/pull/6504) by [@jesserockz](https://github.com/jesserockz)
- esp32_rmt_led_strip bugfixes [esphome#6506](https://github.com/esphome/esphome/pull/6506) by [@Mat931](https://github.com/Mat931)
- Implemented support for the TLC5971 as an output component [esphome#6494](https://github.com/esphome/esphome/pull/6494) by [@IJIJI](https://github.com/IJIJI) (new-integration)
- Add Dooya protocol to remote_base [esphome#6488](https://github.com/esphome/esphome/pull/6488) by [@bukureckid](https://github.com/bukureckid)
- Only give error for connected sensors at startup [esphome#6474](https://github.com/esphome/esphome/pull/6474) by [@leejoow](https://github.com/leejoow)
- Webserver float to string fix [esphome#6507](https://github.com/esphome/esphome/pull/6507) by [@RFDarter](https://github.com/RFDarter)
- Add dooya remote transmitter test [esphome#6508](https://github.com/esphome/esphome/pull/6508) by [@jesserockz](https://github.com/jesserockz)
- ads1115: remove auto-load and split sensor into platform folder [esphome#5981](https://github.com/esphome/esphome/pull/5981) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20240412.0 [esphome#6517](https://github.com/esphome/esphome/pull/6517) by [@jesserockz](https://github.com/jesserockz)
- Fix missing ifdefs in voice assistant [esphome#6520](https://github.com/esphome/esphome/pull/6520) by [@jesserockz](https://github.com/jesserockz)
- Fix project version longer than 30 characters breaking compilation [esphome#6535](https://github.com/esphome/esphome/pull/6535) by [@jesserockz](https://github.com/jesserockz)
- Fix no-release bug on ft6x36 [esphome#6527](https://github.com/esphome/esphome/pull/6527) by [@clydebarrow](https://github.com/clydebarrow)
- [voice_assistant] Half the microphone ringbuffer size [esphome#6830](https://github.com/esphome/esphome/pull/6830) by [@jesserockz](https://github.com/jesserockz)
- [i2s_speaker] Add buffer allocation failure checks [esphome#6829](https://github.com/esphome/esphome/pull/6829) by [@jesserockz](https://github.com/jesserockz)
- [improv_serial] Fix for IDF 4.4.7 [esphome#6855](https://github.com/esphome/esphome/pull/6855) by [@kbx81](https://github.com/kbx81)

View File

@@ -32,7 +32,7 @@ backup_exclude:
init: false
startup: services
name: ESPHome (beta)
version: 2024.4.0
version: 2024.5.5
slug: esphome-beta
description: Beta version of ESPHome add-on
image: ghcr.io/esphome/esphome-hassio

View File

@@ -1 +1 @@
See https://esphome.io/changelog/index.html
See https://github.com/esphome/esphome/commits/dev

View File

@@ -1,10 +0,0 @@
ARG BUILD_FROM=esphome/esphome-hassio-amd64:dev
FROM ${BUILD_FROM}
# Copy root filesystem
COPY rootfs /
# Labels
LABEL \
io.hass.type="addon" \
io.hass.version=dev

View File

@@ -1,5 +0,0 @@
---
build_from:
aarch64: ghcr.io/esphome/esphome-hassio:dev
amd64: ghcr.io/esphome/esphome-hassio:dev
armv7: ghcr.io/esphome/esphome-hassio:dev

View File

@@ -33,9 +33,10 @@ backup_exclude:
init: false
startup: services
name: ESPHome (dev)
version: dev
version: 2024.6.0-dev20240605
slug: esphome-dev
description: Development version of ESPHome add-on
image: ghcr.io/esphome/esphome-hassio
stage: experimental
advanced: true
options:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 69 KiB

View File

@@ -1,47 +0,0 @@
#!/usr/bin/with-contenv bashio
# ==============================================================================
# Community Hass.io Add-ons: ESPHome
# This files installs the user ESPHome fork if specified
# The fork must be up to date with the latest ESPHome dev branch
# and have no conflicts
# ==============================================================================
declare esphome_fork
if bashio::config.has_value 'esphome_fork'; then
esphome_fork=$(bashio::config 'esphome_fork')
if [[ $esphome_fork == *":"* ]]; then
IFS=':' read -r -a array <<< "$esphome_fork"
username=${array[0]}
ref=${array[1]}
else
username="esphome"
ref=$esphome_fork
fi
full_url="https://github.com/${username}/esphome/archive/${ref}.tar.gz"
bashio::log.info "Checking forked ESPHome"
dev_version=$(python3 -c "from esphome.const import __version__; print(__version__)")
bashio::log.info "Downloading ESPHome from fork '${esphome_fork}' (${full_url})..."
curl -L -o /tmp/esphome.tar.gz "${full_url}" -qq \
|| bashio::exit.nok "Failed downloading ESPHome fork."
bashio::log.info "Installing ESPHome from fork '${esphome_fork}' (${full_url})..."
rm -rf /esphome || bashio::exit.nok "Failed to remove ESPHome."
mkdir /esphome
tar -zxf /tmp/esphome.tar.gz -C /esphome --strip-components=1 \
|| bashio::exit.nok "Failed installing ESPHome from fork."
pip install -U -e /esphome || bashio::exit.nok "Failed installing ESPHome from fork."
rm -f /tmp/esphome.tar.gz
fork_version=$(python3 -c "from esphome.const import __version__; print(__version__)")
if [[ "$fork_version" != "$dev_version" ]]; then
bashio::log.error "############################"
bashio::log.error "Uninstalled fork as version does not match"
bashio::log.error "Update (or ask the author to update) the branch"
bashio::log.error "This is important as the dev addon and the dev ESPHome"
bashio::log.error "branch can have changes that are not compatible with old forks"
bashio::log.error "and get reported as bugs which we cannot solve easily."
bashio::log.error "############################"
bashio::exit.nok
fi
bashio::log.info "Installed ESPHome from fork '${esphome_fork}' (${full_url})..."
fi

View File

@@ -1,121 +1,6 @@
## 2024.4.0
## 2024.5.5
## Full list of changes
### New Components
- Add sun_gtil2 component (for SUN-1000G2 / SUN-2000G2 grid tie inverters) [esphome#4958](https://github.com/esphome/esphome/pull/4958) by [@Mat931](https://github.com/Mat931) (new-integration)
- Add support for AT581x component [esphome#6297](https://github.com/esphome/esphome/pull/6297) by [@X-Ryl669](https://github.com/X-Ryl669) (new-integration)
- Add new Component: Ultrasonic Distance Sensor JSN-SR04T [esphome#6023](https://github.com/esphome/esphome/pull/6023) by [@Mafus1](https://github.com/Mafus1) (new-integration)
- feat: Add Daikin ARC (tested on Daikin ARC472A62) [esphome#6429](https://github.com/esphome/esphome/pull/6429) by [@magicbear](https://github.com/magicbear) (new-integration)
- add support for Tuya pink version of miflora [esphome#5402](https://github.com/esphome/esphome/pull/5402) by [@fariouche](https://github.com/fariouche) (new-integration)
- Implemented support for the TLC5971 as an output component [esphome#6494](https://github.com/esphome/esphome/pull/6494) by [@IJIJI](https://github.com/IJIJI) (new-integration)
### Breaking Changes
- Add support for new modes in Tuya Climate [esphome#5159](https://github.com/esphome/esphome/pull/5159) by [@moriahmorgan](https://github.com/moriahmorgan) (breaking-change)
- IPv6 string representation follows RFC5952 [esphome#6449](https://github.com/esphome/esphome/pull/6449) by [@HeMan](https://github.com/HeMan) (breaking-change)
### Beta Changes
- Add dooya remote transmitter test [esphome#6508](https://github.com/esphome/esphome/pull/6508) by [@jesserockz](https://github.com/jesserockz)
- ads1115: remove auto-load and split sensor into platform folder [esphome#5981](https://github.com/esphome/esphome/pull/5981) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20240412.0 [esphome#6517](https://github.com/esphome/esphome/pull/6517) by [@jesserockz](https://github.com/jesserockz)
- Fix missing ifdefs in voice assistant [esphome#6520](https://github.com/esphome/esphome/pull/6520) by [@jesserockz](https://github.com/jesserockz)
- Fix project version longer than 30 characters breaking compilation [esphome#6535](https://github.com/esphome/esphome/pull/6535) by [@jesserockz](https://github.com/jesserockz)
- Fix no-release bug on ft6x36 [esphome#6527](https://github.com/esphome/esphome/pull/6527) by [@clydebarrow](https://github.com/clydebarrow)
### All changes
- Bump docker/login-action from 3.0.0 to 3.1.0 [esphome#6367](https://github.com/esphome/esphome/pull/6367) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump peter-evans/create-pull-request from 6.0.1 to 6.0.2 [esphome#6361](https://github.com/esphome/esphome/pull/6361) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump docker/build-push-action from 5.2.0 to 5.3.0 in /.github/actions/build-image [esphome#6373](https://github.com/esphome/esphome/pull/6373) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump docker/setup-buildx-action from 3.1.0 to 3.2.0 [esphome#6372](https://github.com/esphome/esphome/pull/6372) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Fix deep_sleep for ESP32-C6 [esphome#6377](https://github.com/esphome/esphome/pull/6377) by [@ferrets6](https://github.com/ferrets6)
- Fix keeloq for IDF 5+ [esphome#6382](https://github.com/esphome/esphome/pull/6382) by [@kbx81](https://github.com/kbx81)
- Fix Nextion set_component_picture call [esphome#6378](https://github.com/esphome/esphome/pull/6378) by [@edwardtfn](https://github.com/edwardtfn)
- Add line_at_angle method to Display component [esphome#6381](https://github.com/esphome/esphome/pull/6381) by [@deisterhold](https://github.com/deisterhold)
- Check generated proto files are as expected if any are modified in PRs [esphome#6254](https://github.com/esphome/esphome/pull/6254) by [@jesserockz](https://github.com/jesserockz)
- ld2420: fix energy mode documentation [esphome#6225](https://github.com/esphome/esphome/pull/6225) by [@andresv](https://github.com/andresv)
- Add actions for component tests A, B and C [esphome#6256](https://github.com/esphome/esphome/pull/6256) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (V) [esphome#6231](https://github.com/esphome/esphome/pull/6231) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (X,Y,Z) [esphome#6233](https://github.com/esphome/esphome/pull/6233) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (E) [esphome#6176](https://github.com/esphome/esphome/pull/6176) by [@kbx81](https://github.com/kbx81)
- Make SPI compile with IDF >= 5.0 [esphome#6383](https://github.com/esphome/esphome/pull/6383) by [@HeMan](https://github.com/HeMan)
- Fix esp32-camera test yaml [esphome#6398](https://github.com/esphome/esphome/pull/6398) by [@kbx81](https://github.com/kbx81)
- Bump pytest-asyncio from 0.23.5.post1 to 0.23.6 [esphome#6402](https://github.com/esphome/esphome/pull/6402) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump actions/cache from 4.0.1 to 4.0.2 in /.github/actions/restore-python [esphome#6403](https://github.com/esphome/esphome/pull/6403) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump actions/cache from 4.0.1 to 4.0.2 [esphome#6404](https://github.com/esphome/esphome/pull/6404) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump ESP8266 Arduino versions [esphome#5359](https://github.com/esphome/esphome/pull/5359) by [@HeMan](https://github.com/HeMan)
- Allow accept/reject delta to be specified. [esphome#5060](https://github.com/esphome/esphome/pull/5060) by [@cvwillegen](https://github.com/cvwillegen)
- Allow setting htop for ledc [esphome#6340](https://github.com/esphome/esphome/pull/6340) by [@Gagootron](https://github.com/Gagootron)
- sm2135: add separate_modes option to support different chip variants [esphome#6152](https://github.com/esphome/esphome/pull/6152) by [@jasperro](https://github.com/jasperro)
- AHT10: fix temperature-only operation; add warning/error messages [esphome#6405](https://github.com/esphome/esphome/pull/6405) by [@clydebarrow](https://github.com/clydebarrow)
- Add support for new modes in Tuya Climate [esphome#5159](https://github.com/esphome/esphome/pull/5159) by [@moriahmorgan](https://github.com/moriahmorgan) (breaking-change)
- Add sun_gtil2 component (for SUN-1000G2 / SUN-2000G2 grid tie inverters) [esphome#4958](https://github.com/esphome/esphome/pull/4958) by [@Mat931](https://github.com/Mat931) (new-integration)
- SPI: Make some validation failures give more useful messages. [esphome#6413](https://github.com/esphome/esphome/pull/6413) by [@clydebarrow](https://github.com/clydebarrow)
- Bump aioesphomeapi from 23.1.1 to 23.2.0 [esphome#6412](https://github.com/esphome/esphome/pull/6412) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Add check for use of GPIOXX in config [esphome#6419](https://github.com/esphome/esphome/pull/6419) by [@clydebarrow](https://github.com/clydebarrow)
- WireGuard for esp8266 [esphome#6365](https://github.com/esphome/esphome/pull/6365) by [@droscy](https://github.com/droscy)
- setup.cfg: drop duplicate, underintended trove classifier [esphome#6421](https://github.com/esphome/esphome/pull/6421) by [@mweinelt](https://github.com/mweinelt)
- Store preferences in disk file on host platform [esphome#6428](https://github.com/esphome/esphome/pull/6428) by [@clydebarrow](https://github.com/clydebarrow)
- Add support for AT581x component [esphome#6297](https://github.com/esphome/esphome/pull/6297) by [@X-Ryl669](https://github.com/X-Ryl669) (new-integration)
- Add some components to the new testing framework (F) [esphome#6177](https://github.com/esphome/esphome/pull/6177) by [@kbx81](https://github.com/kbx81)
- Add get_contrast() and get_brightness() to SSD1306 class to get protected variables [esphome#6435](https://github.com/esphome/esphome/pull/6435) by [@benediktkr](https://github.com/benediktkr)
- Add new Component: Ultrasonic Distance Sensor JSN-SR04T [esphome#6023](https://github.com/esphome/esphome/pull/6023) by [@Mafus1](https://github.com/Mafus1) (new-integration)
- Add some components to the new testing framework (G) [esphome#6178](https://github.com/esphome/esphome/pull/6178) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (K) [esphome#6186](https://github.com/esphome/esphome/pull/6186) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (N) [esphome#6210](https://github.com/esphome/esphome/pull/6210) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (Q) [esphome#6218](https://github.com/esphome/esphome/pull/6218) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (U) [esphome#6230](https://github.com/esphome/esphome/pull/6230) by [@kbx81](https://github.com/kbx81)
- Fix spacing in new test yaml [esphome#6441](https://github.com/esphome/esphome/pull/6441) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (W) [esphome#6232](https://github.com/esphome/esphome/pull/6232) by [@kbx81](https://github.com/kbx81)
- Add some components to the new testing framework (L) [esphome#6195](https://github.com/esphome/esphome/pull/6195) by [@kbx81](https://github.com/kbx81)
- feat: Add Daikin ARC (tested on Daikin ARC472A62) [esphome#6429](https://github.com/esphome/esphome/pull/6429) by [@magicbear](https://github.com/magicbear) (new-integration)
- Disable truthy yamllint rule [esphome#6442](https://github.com/esphome/esphome/pull/6442) by [@jesserockz](https://github.com/jesserockz)
- Add get_size method to QR Code header [esphome#6430](https://github.com/esphome/esphome/pull/6430) by [@deisterhold](https://github.com/deisterhold)
- Minor change to support sht85 sensor [esphome#6415](https://github.com/esphome/esphome/pull/6415) by [@mrtoy-me](https://github.com/mrtoy-me)
- IPv6 string representation follows RFC5952 [esphome#6449](https://github.com/esphome/esphome/pull/6449) by [@HeMan](https://github.com/HeMan) (breaking-change)
- Bump actions/setup-python from 5.0.0 to 5.1.0 [esphome#6437](https://github.com/esphome/esphome/pull/6437) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Bump actions/setup-python from 5.0.0 to 5.1.0 in /.github/actions/restore-python [esphome#6438](https://github.com/esphome/esphome/pull/6438) by [@dependabot[bot]](https://github.com/apps/dependabot)
- Optimize QMC5883L: Read registers only for enabled sensors [esphome#6458](https://github.com/esphome/esphome/pull/6458) by [@tronikos](https://github.com/tronikos)
- minor refactor to allow commit hash as ref value. [esphome#6446](https://github.com/esphome/esphome/pull/6446) by [@LelandSindt](https://github.com/LelandSindt)
- TMP117 fix polling period config [esphome#6452](https://github.com/esphome/esphome/pull/6452) by [@mrtoy-me](https://github.com/mrtoy-me)
- Bump Arduino Pico Framework to 3.7.2 and Platform to 1.12.0 [esphome#6386](https://github.com/esphome/esphome/pull/6386) by [@HeMan](https://github.com/HeMan)
- Display menu: Allow "left" key to exit current menu if not editing [esphome#6460](https://github.com/esphome/esphome/pull/6460) by [@jesserockz](https://github.com/jesserockz)
- Fix NOLINT on inclusive-language check [esphome#6464](https://github.com/esphome/esphome/pull/6464) by [@jesserockz](https://github.com/jesserockz)
- Add yamllint to dev requirements [esphome#6466](https://github.com/esphome/esphome/pull/6466) by [@jesserockz](https://github.com/jesserockz)
- Add temperature for QMC5883L [esphome#6456](https://github.com/esphome/esphome/pull/6456) by [@tronikos](https://github.com/tronikos)
- web_server: Return early if no clients connected [esphome#6467](https://github.com/esphome/esphome/pull/6467) by [@jesserockz](https://github.com/jesserockz)
- ESP32 Arduino WiFi: misc bug fixes [esphome#6470](https://github.com/esphome/esphome/pull/6470) by [@paravoid](https://github.com/paravoid)
- Replace std::regex with sscanf calls [esphome#6468](https://github.com/esphome/esphome/pull/6468) by [@jesserockz](https://github.com/jesserockz)
- Include "Failed" status in config log. [esphome#6482](https://github.com/esphome/esphome/pull/6482) by [@clydebarrow](https://github.com/clydebarrow)
- Fix Microphone IsCapturingCondition [esphome#6490](https://github.com/esphome/esphome/pull/6490) by [@RaymiiOrg](https://github.com/RaymiiOrg)
- Remove misleading tag/line in messages [esphome#6495](https://github.com/esphome/esphome/pull/6495) by [@clydebarrow](https://github.com/clydebarrow)
- Send/Receive Voice Assistant audio via API [esphome#6471](https://github.com/esphome/esphome/pull/6471) by [@jesserockz](https://github.com/jesserockz)
- Datetime date initial value fix [esphome#6483](https://github.com/esphome/esphome/pull/6483) by [@RFDarter](https://github.com/RFDarter)
- If the loop() took more than the required time, don't delay further [esphome#6496](https://github.com/esphome/esphome/pull/6496) by [@clydebarrow](https://github.com/clydebarrow)
- Bump LibreTiny version to 1.5.1 [esphome#6500](https://github.com/esphome/esphome/pull/6500) by [@kuba2k2](https://github.com/kuba2k2)
- Internal temperature: Support Beken platform [esphome#6491](https://github.com/esphome/esphome/pull/6491) by [@Mat931](https://github.com/Mat931)
- Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 [esphome#6502](https://github.com/esphome/esphome/pull/6502) by [@dependabot[bot]](https://github.com/apps/dependabot)
- add support for Tuya pink version of miflora [esphome#5402](https://github.com/esphome/esphome/pull/5402) by [@fariouche](https://github.com/fariouche) (new-integration)
- Add MAC address to WiFi config reply [esphome#6489](https://github.com/esphome/esphome/pull/6489) by [@cvwillegen](https://github.com/cvwillegen)
- Adds i2c timeout config [esphome#4614](https://github.com/esphome/esphome/pull/4614) by [@tracestep](https://github.com/tracestep)
- Add ABB-Welcome / Busch-Welcome Door Intercom Protocol [esphome#4689](https://github.com/esphome/esphome/pull/4689) by [@Mat931](https://github.com/Mat931)
- Add support for time entities [esphome#6399](https://github.com/esphome/esphome/pull/6399) by [@jesserockz](https://github.com/jesserockz)
- Fix Match by IRK [esphome#6499](https://github.com/esphome/esphome/pull/6499) by [@MRemy2](https://github.com/MRemy2)
- Add rmt_channel to remote_transmitter and remote_receiver [esphome#6497](https://github.com/esphome/esphome/pull/6497) by [@jesserockz](https://github.com/jesserockz)
- Rework tlc5947 to remove AUTO_LOAD [esphome#6503](https://github.com/esphome/esphome/pull/6503) by [@jesserockz](https://github.com/jesserockz)
- UART: ignore require_tx/rx if not a native uart implementation [esphome#6504](https://github.com/esphome/esphome/pull/6504) by [@jesserockz](https://github.com/jesserockz)
- esp32_rmt_led_strip bugfixes [esphome#6506](https://github.com/esphome/esphome/pull/6506) by [@Mat931](https://github.com/Mat931)
- Implemented support for the TLC5971 as an output component [esphome#6494](https://github.com/esphome/esphome/pull/6494) by [@IJIJI](https://github.com/IJIJI) (new-integration)
- Add Dooya protocol to remote_base [esphome#6488](https://github.com/esphome/esphome/pull/6488) by [@bukureckid](https://github.com/bukureckid)
- Only give error for connected sensors at startup [esphome#6474](https://github.com/esphome/esphome/pull/6474) by [@leejoow](https://github.com/leejoow)
- Webserver float to string fix [esphome#6507](https://github.com/esphome/esphome/pull/6507) by [@RFDarter](https://github.com/RFDarter)
- Add dooya remote transmitter test [esphome#6508](https://github.com/esphome/esphome/pull/6508) by [@jesserockz](https://github.com/jesserockz)
- ads1115: remove auto-load and split sensor into platform folder [esphome#5981](https://github.com/esphome/esphome/pull/5981) by [@jesserockz](https://github.com/jesserockz)
- Bump esphome-dashboard to 20240412.0 [esphome#6517](https://github.com/esphome/esphome/pull/6517) by [@jesserockz](https://github.com/jesserockz)
- Fix missing ifdefs in voice assistant [esphome#6520](https://github.com/esphome/esphome/pull/6520) by [@jesserockz](https://github.com/jesserockz)
- Fix project version longer than 30 characters breaking compilation [esphome#6535](https://github.com/esphome/esphome/pull/6535) by [@jesserockz](https://github.com/jesserockz)
- Fix no-release bug on ft6x36 [esphome#6527](https://github.com/esphome/esphome/pull/6527) by [@clydebarrow](https://github.com/clydebarrow)
- [voice_assistant] Half the microphone ringbuffer size [esphome#6830](https://github.com/esphome/esphome/pull/6830) by [@jesserockz](https://github.com/jesserockz)
- [i2s_speaker] Add buffer allocation failure checks [esphome#6829](https://github.com/esphome/esphome/pull/6829) by [@jesserockz](https://github.com/jesserockz)
- [improv_serial] Fix for IDF 4.4.7 [esphome#6855](https://github.com/esphome/esphome/pull/6855) by [@kbx81](https://github.com/kbx81)

View File

@@ -32,7 +32,7 @@ backup_exclude:
init: false
startup: services
name: ESPHome
version: 2024.4.0
version: 2024.5.5
slug: esphome
description: ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices
image: ghcr.io/esphome/esphome-hassio

View File

@@ -2,7 +2,6 @@
import argparse
import re
import subprocess
from dataclasses import dataclass
import sys
import os
@@ -17,72 +16,71 @@ class Version:
minor: int
patch: int
beta: int = 0
dev: bool = False
dev: str = ""
def __str__(self):
return f'{self.major}.{self.minor}.{self.full_patch}'
return f"{self.major}.{self.minor}.{self.full_patch}"
@property
def full_patch(self):
res = f'{self.patch}'
res = f"{self.patch}"
if self.beta > 0:
res += f'b{self.beta}'
res += f"b{self.beta}"
if self.dev:
res += '-dev'
res += f"-dev{self.dev}"
return res
@classmethod
def parse(cls, value):
match = re.match(r'(\d+).(\d+).(\d+)(b\d+)?(-dev)?', value)
match = re.match(r"(\d+).(\d+).(\d+)(b\d+)?(-dev\d+)?", value)
assert match is not None
major = int(match[1])
minor = int(match[2])
patch = int(match[3])
beta = int(match[4][1:]) if match[4] else 0
dev = bool(match[5])
return Version(
major=major, minor=minor, patch=patch,
beta=beta, dev=dev
)
dev = str(match[5][4:]) if match[5] else ""
return Version(major=major, minor=minor, patch=patch, beta=beta, dev=dev)
def sub(path, pattern, repl, expected_count=1):
with open(path) as fh:
def _sub(path, pattern, repl, expected_count=1):
with open(path, encoding="utf-8") as fh:
content = fh.read()
content, count = re.subn(pattern, repl, content, flags=re.MULTILINE)
content, count = re.subn(pattern, repl, content, flags=re.NOFLAG)
if expected_count is not None:
assert count == expected_count, f"Pattern {pattern} replacement failed!"
with open(path, "wt") as fh:
with open(path, "wt", encoding="utf-8") as fh:
fh.write(content)
def write_version(target: str, version: Version):
# version: '1.14.5' # BETA
# version: '1.14.5' # STABLE
sub(
'template/addon_config.yaml',
r" version: '[^']+' # {}".format(target.upper()),
f" version: '{version}' # {target.upper()}"
def _write_version(target: str, version: Version):
# version: "2024.5.0-dev20240412" # DEV
# version: "1.14.5" # BETA
# version: "1.14.5" # STABLE
_sub(
"template/addon_config.yaml",
f' version: "[^"]+" # {target.upper()}',
f' version: "{version}" # {target.upper()}',
)
def main():
parser = argparse.ArgumentParser()
parser.add_argument('new_version', type=str)
parser.add_argument("new_version", type=str)
args = parser.parse_args()
version = Version.parse(args.new_version)
assert not version.dev
print(f"Bumping to {version}")
if version.beta:
write_version('beta', version)
generate.main(['beta'])
if version.dev:
_write_version("dev", version)
generate.main(["dev"])
elif version.beta:
_write_version("beta", version)
generate.main(["beta"])
else:
assert not version.beta
write_version('stable', version)
write_version('beta', version)
generate.main(['stable', 'beta'])
_write_version("stable", version)
_write_version("beta", version)
generate.main(["stable", "beta"])
return 0

View File

@@ -1,13 +1,14 @@
#!/usr/bin/env python3
import argparse
import yaml
from pathlib import Path
from enum import Enum
from shutil import copyfile
import sys
import os
import yaml
class Channel(Enum):
stable = "stable"
@@ -25,17 +26,16 @@ def main(args):
root = Path(__file__).parent.parent
templ = root / "template"
with open(templ / "addon_config.yaml", "r") as f:
with open(templ / "addon_config.yaml", "r", encoding="utf-8") as f:
config = yaml.safe_load(f)
copyf = config["copy_files"]
for channel in args.channels:
conf = config[f"esphome-{channel.value}"]
base_image = conf.pop("base_image", None)
dir_ = root / conf.pop("directory")
path = dir_ / "config.yaml"
with open(path, "w") as f:
with open(path, "w", encoding="utf-8") as f:
yaml.dump(conf, f, indent=2, sort_keys=False, explicit_start=True)
for file_ in copyf:
@@ -46,19 +46,9 @@ def main(args):
copyfile(templ / file_, dir_ / file_)
path = dir_ / "FILES ARE GENERATED DO NOT EDIT"
with open(path, "w") as f:
with open(path, "w", encoding="utf-8") as f:
f.write("Any edits should be made to the files in the 'template' directory")
if channel == Channel.dev:
path = dir_ / "build.yaml"
build_conf = {
"build_from": {
arch: base_image for arch in conf["arch"]
}
}
with open(path, "w") as f:
yaml.dump(build_conf, f, indent=2, sort_keys=True, explicit_start=True)
if __name__ == "__main__":
main(sys.argv[1:])

View File

@@ -16,11 +16,11 @@ base: &base
# Ingress settings
ingress: true
ingress_port: 0
panel_icon: 'mdi:chip'
panel_icon: "mdi:chip"
# Automatically add UART devices to add-on
uart: true
ports:
'6052/tcp': null
"6052/tcp": null
map:
- ssl:ro
- config:rw
@@ -46,10 +46,11 @@ esphome-dev:
<<: *base
directory: esphome-dev
name: ESPHome (dev)
version: 'dev' # DEV
version: "2024.6.0-dev20240605" # DEV
slug: esphome-dev
description: "Development version of ESPHome add-on"
url: https://next.esphome.io/
image: ghcr.io/esphome/esphome-hassio
stage: experimental
advanced: true
schema:
@@ -62,15 +63,14 @@ esphome-dev:
certfile: str?
keyfile: str?
leave_front_door_open: bool?
base_image: ghcr.io/esphome/esphome-hassio:dev
options:
home_assistant_dashboard_integration: false
home_assistant_dashboard_integration: false
esphome-beta:
<<: *base
directory: esphome-beta
name: ESPHome (beta)
version: '2024.4.0' # BETA
version: "2024.5.5" # BETA
slug: esphome-beta
description: "Beta version of ESPHome add-on"
url: https://beta.esphome.io/
@@ -78,13 +78,13 @@ esphome-beta:
stage: experimental
advanced: true
options:
home_assistant_dashboard_integration: false
home_assistant_dashboard_integration: false
esphome-stable:
<<: *base
directory: esphome
name: ESPHome
version: '2024.4.0' # STABLE
version: "2024.5.5" # STABLE
slug: esphome
description: "ESPHome add-on for intelligently managing all your ESP8266/ESP32 devices"
image: ghcr.io/esphome/esphome-hassio