From a4489d7c13841352ada0a33ba9b70db384dead48 Mon Sep 17 00:00:00 2001 From: Erwin Douna Date: Sat, 7 Dec 2024 17:09:12 +0000 Subject: [PATCH 1/3] Update sigstore & PyPI --- .github/workflows/release.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 2eafe57..a28b817 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -65,12 +65,12 @@ jobs: - name: 🏗 Build package run: poetry build --no-interaction - name: 🚀 Publish to PyPi - uses: pypa/gh-action-pypi-publish@v1.8.14 + uses: pypa/gh-action-pypi-publish@v1.12.1 with: verbose: true print-hash: true - name: ✍️ Sign published artifacts - uses: sigstore/gh-action-sigstore-python@v2.1.1 + uses: sigstore/gh-action-sigstore-python@v3.0.0 with: inputs: ./dist/*.tar.gz ./dist/*.whl release-signing-artifacts: true From b545bd1b02a24ac52d8b13bcdb16e3206310ae85 Mon Sep 17 00:00:00 2001 From: Erwin Douna Date: Sat, 7 Dec 2024 18:57:37 +0000 Subject: [PATCH 2/3] Replace enum to str --- src/tadoasync/models.py | 83 +++-------- tests/__snapshots__/test_tado.ambr | 220 ++++++++++++++--------------- 2 files changed, 130 insertions(+), 173 deletions(-) diff --git a/src/tadoasync/models.py b/src/tadoasync/models.py index b621de5..e5a459e 100644 --- a/src/tadoasync/models.py +++ b/src/tadoasync/models.py @@ -3,7 +3,6 @@ from __future__ import annotations from dataclasses import dataclass, field -from enum import Enum from typing import Any from mashumaro import field_options @@ -302,62 +301,20 @@ class Capabilities(DataClassORJSONMixin): heat: HeatAC | None = field(metadata=field_options(alias="HEAT"), default=None) -class VerticalSwing(Enum): - """VerticalSwing model represents the vertical swing modes of a zone.""" - - OFF = "OFF" - MID_UP = "MID_UP" - MID_DOWN = "MID_DOWN" - ON = "ON" - DOWN = "DOWN" - UP = "UP" - MID = "MID" - - -class HorizontalSwing(Enum): - """HorizontalSwing model represents the horizontal swing modes of a zone.""" - - OFF = "OFF" - ON = "ON" - RIGHT = "RIGHT" - LEFT = "LEFT" - MID_RIGHT = "MID_RIGHT" - MID_LEFT = "MID_LEFT" - - -class FanLevel(Enum): - """FanLevel model represents the fan levels of a zone.""" - - AUTO = "AUTO" - LEVEL1 = "LEVEL1" - LEVEL2 = "LEVEL2" - LEVEL3 = "LEVEL3" - LEVEL4 = "LEVEL4" - LEVEL5 = "LEVEL5" - SILENT = "SILENT" - - -class Light(Enum): - """Light model represents the light settings of a zone.""" - - ON = "ON" - OFF = "OFF" - - @dataclass class AutoAC(DataClassORJSONMixin): """AutoAC model represents the auto AC capabilities of a zone.""" - fan_level: list[FanLevel] | None = field( + fan_level: list[str] | None = field( default=None, metadata=field_options(alias="fanLevel") ) - vertical_swing: list[VerticalSwing] | None = field( + vertical_swing: list[str] | None = field( default=None, metadata=field_options(alias="verticalSwing") ) - horizontal_swing: list[HorizontalSwing] | None = field( + horizontal_swing: list[str] | None = field( default=None, metadata=field_options(alias="horizontalSwing") ) - light: list[Light] | None = None + light: list[str] | None = None temperatures: Temperatures | None = None @@ -365,16 +322,16 @@ class AutoAC(DataClassORJSONMixin): class CoolAC(DataClassORJSONMixin): """CoolAC model represents the cool AC capabilities of a zone.""" - fan_level: list[FanLevel] | None = field( + fan_level: list[str] | None = field( default=None, metadata=field_options(alias="fanLevel") ) - vertical_swing: list[VerticalSwing] | None = field( + vertical_swing: list[str] | None = field( default=None, metadata=field_options(alias="verticalSwing") ) - horizontal_swing: list[HorizontalSwing] | None = field( + horizontal_swing: list[str] | None = field( default=None, metadata=field_options(alias="horizontalSwing") ) - light: list[Light] | None = None + light: list[str] | None = None temperatures: Temperatures | None = None @@ -382,16 +339,16 @@ class CoolAC(DataClassORJSONMixin): class DryAC(DataClassORJSONMixin): """DryAC model represents the dry AC capabilities of a zone.""" - fan_level: list[FanLevel] | None = field( + fan_level: list[str] | None = field( default=None, metadata=field_options(alias="fanLevel") ) - vertical_swing: list[VerticalSwing] | None = field( + vertical_swing: list[str] | None = field( default=None, metadata=field_options(alias="verticalSwing") ) - horizontal_swing: list[HorizontalSwing] | None = field( + horizontal_swing: list[str] | None = field( default=None, metadata=field_options(alias="horizontalSwing") ) - light: list[Light] | None = None + light: list[str] | None = None temperatures: Temperatures | None = None @@ -399,16 +356,16 @@ class DryAC(DataClassORJSONMixin): class FanAC(DataClassORJSONMixin): """FanAC model represents the fan AC capabilities of a zone.""" - fan_level: list[FanLevel] | None = field( + fan_level: list[str] | None = field( default=None, metadata=field_options(alias="fanLevel") ) - vertical_swing: list[VerticalSwing] | None = field( + vertical_swing: list[str] | None = field( default=None, metadata=field_options(alias="verticalSwing") ) - horizontal_swing: list[HorizontalSwing] | None = field( + horizontal_swing: list[str] | None = field( default=None, metadata=field_options(alias="horizontalSwing") ) - light: list[Light] | None = None + light: list[str] | None = None temperatures: Temperatures | None = None @@ -416,16 +373,16 @@ class FanAC(DataClassORJSONMixin): class HeatAC(DataClassORJSONMixin): """HeatAC model represents the heat AC capabilities of a zone.""" - fan_level: list[FanLevel] | None = field( + fan_level: list[str] | None = field( default=None, metadata=field_options(alias="fanLevel") ) - vertical_swing: list[VerticalSwing] | None = field( + vertical_swing: list[str] | None = field( default=None, metadata=field_options(alias="verticalSwing") ) - horizontal_swing: list[HorizontalSwing] | None = field( + horizontal_swing: list[str] | None = field( default=None, metadata=field_options(alias="horizontalSwing") ) - light: list[Light] | None = None + light: list[str] | None = None temperatures: Temperatures | None = None diff --git a/tests/__snapshots__/test_tado.ambr b/tests/__snapshots__/test_tado.ambr index 63c2326..84ca37c 100644 --- a/tests/__snapshots__/test_tado.ambr +++ b/tests/__snapshots__/test_tado.ambr @@ -104,25 +104,25 @@ dict({ 'auto': dict({ 'fan_level': list([ - , - , - , - , - , - , - , + 'AUTO', + 'LEVEL1', + 'LEVEL2', + 'LEVEL3', + 'LEVEL4', + 'LEVEL5', + 'SILENT', ]), 'horizontal_swing': list([ - , - , - , - , - , - , + 'OFF', + 'ON', + 'RIGHT', + 'LEFT', + 'MID_RIGHT', + 'MID_LEFT', ]), 'light': list([ - , - , + 'OFF', + 'ON', ]), 'temperatures': dict({ 'celsius': dict({ @@ -137,37 +137,37 @@ }), }), 'vertical_swing': list([ - , - , - , - , - , - , - , + 'OFF', + 'MID_UP', + 'MID_DOWN', + 'ON', + 'DOWN', + 'UP', + 'MID', ]), }), 'can_set_temperature': None, 'cool': dict({ 'fan_level': list([ - , - , - , - , - , - , - , + 'AUTO', + 'LEVEL1', + 'LEVEL2', + 'LEVEL3', + 'LEVEL4', + 'LEVEL5', + 'SILENT', ]), 'horizontal_swing': list([ - , - , - , - , - , - , + 'OFF', + 'ON', + 'RIGHT', + 'LEFT', + 'MID_RIGHT', + 'MID_LEFT', ]), 'light': list([ - , - , + 'OFF', + 'ON', ]), 'temperatures': dict({ 'celsius': dict({ @@ -182,36 +182,36 @@ }), }), 'vertical_swing': list([ - , - , - , - , - , - , - , + 'OFF', + 'MID_UP', + 'MID_DOWN', + 'ON', + 'DOWN', + 'UP', + 'MID', ]), }), 'dry': dict({ 'fan_level': list([ - , - , - , - , - , - , - , + 'AUTO', + 'LEVEL1', + 'LEVEL2', + 'LEVEL3', + 'LEVEL4', + 'LEVEL5', + 'SILENT', ]), 'horizontal_swing': list([ - , - , - , - , - , - , + 'OFF', + 'ON', + 'RIGHT', + 'LEFT', + 'MID_RIGHT', + 'MID_LEFT', ]), 'light': list([ - , - , + 'OFF', + 'ON', ]), 'temperatures': dict({ 'celsius': dict({ @@ -226,36 +226,36 @@ }), }), 'vertical_swing': list([ - , - , - , - , - , - , - , + 'OFF', + 'MID_UP', + 'MID_DOWN', + 'ON', + 'DOWN', + 'UP', + 'MID', ]), }), 'fan': dict({ 'fan_level': list([ - , - , - , - , - , - , - , + 'AUTO', + 'LEVEL1', + 'LEVEL2', + 'LEVEL3', + 'LEVEL4', + 'LEVEL5', + 'SILENT', ]), 'horizontal_swing': list([ - , - , - , - , - , - , + 'OFF', + 'ON', + 'RIGHT', + 'LEFT', + 'MID_RIGHT', + 'MID_LEFT', ]), 'light': list([ - , - , + 'OFF', + 'ON', ]), 'temperatures': dict({ 'celsius': dict({ @@ -270,36 +270,36 @@ }), }), 'vertical_swing': list([ - , - , - , - , - , - , - , + 'OFF', + 'MID_UP', + 'MID_DOWN', + 'ON', + 'DOWN', + 'UP', + 'MID', ]), }), 'heat': dict({ 'fan_level': list([ - , - , - , - , - , - , - , + 'AUTO', + 'LEVEL1', + 'LEVEL2', + 'LEVEL3', + 'LEVEL4', + 'LEVEL5', + 'SILENT', ]), 'horizontal_swing': list([ - , - , - , - , - , - , + 'OFF', + 'ON', + 'RIGHT', + 'LEFT', + 'MID_RIGHT', + 'MID_LEFT', ]), 'light': list([ - , - , + 'OFF', + 'ON', ]), 'temperatures': dict({ 'celsius': dict({ @@ -314,13 +314,13 @@ }), }), 'vertical_swing': list([ - , - , - , - , - , - , - , + 'OFF', + 'MID_UP', + 'MID_DOWN', + 'ON', + 'DOWN', + 'UP', + 'MID', ]), }), 'temperatures': None, From be39acec92409a2f12a19ef79a52e47c3e85bb28 Mon Sep 17 00:00:00 2001 From: Erwin Douna Date: Sat, 7 Dec 2024 19:41:21 +0000 Subject: [PATCH 3/3] Upgrade the version 0.1.21 --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 9446c28..b9630ed 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "tadoasync" -version = "0.1.20" +version = "0.1.21" authors = ["Erwin Douna "] classifiers = [ "Development Status :: 5 - Production/Stable",