FYI - when I try to use Python3.9 with HABapp, I get errors and the platform fails to start.
Reverting to Python 3.8.6 and it appears to work again.
Error is:
Traceback (most recent call last):
File "/usr/local/bin/habapp", line 5, in <module>
from HABApp.__main__ import main
File "/usr/local/lib/python3.9/site-packages/HABApp/__init__.py", line 14, in <module>
import HABApp.mqtt
File "/usr/local/lib/python3.9/site-packages/HABApp/mqtt/__init__.py", line 2, in <module>
from . import items
File "/usr/local/lib/python3.9/site-packages/HABApp/mqtt/items/__init__.py", line 1, in <module>
from .mqtt_item import MqttItem
File "/usr/local/lib/python3.9/site-packages/HABApp/mqtt/items/mqtt_item.py", line 1, in <module>
import HABApp.mqtt.mqtt_interface
File "/usr/local/lib/python3.9/site-packages/HABApp/mqtt/mqtt_interface.py", line 5, in <module>
from .mqtt_connection import MqttConnection, log
File "/usr/local/lib/python3.9/site-packages/HABApp/mqtt/mqtt_connection.py", line 9, in <module>
from HABApp.runtime.shutdown_helper import ShutdownHelper
File "/usr/local/lib/python3.9/site-packages/HABApp/runtime/__init__.py", line 3, in <module>
from .runtime import Runtime
File "/usr/local/lib/python3.9/site-packages/HABApp/runtime/runtime.py", line 7, in <module>
import HABApp.util
File "/usr/local/lib/python3.9/site-packages/HABApp/util/__init__.py", line 5, in <module>
from . import multimode
File "/usr/local/lib/python3.9/site-packages/HABApp/util/multimode/__init__.py", line 1, in <module>
from .mode_base import BaseMode
File "/usr/local/lib/python3.9/site-packages/HABApp/util/multimode/mode_base.py", line 32, in <module>
from .item import MultiModeItem # noqa: E402
File "/usr/local/lib/python3.9/site-packages/HABApp/util/multimode/item.py", line 9, in <module>
from HABApp.rule import get_parent_rule
File "/usr/local/lib/python3.9/site-packages/HABApp/rule/__init__.py", line 2, in <module>
from .rule import Rule, get_parent_rule
File "/usr/local/lib/python3.9/site-packages/HABApp/rule/rule.py", line 13, in <module>
import HABApp.openhab
File "/usr/local/lib/python3.9/site-packages/HABApp/openhab/__init__.py", line 3, in <module>
import HABApp.openhab.events
File "/usr/local/lib/python3.9/site-packages/HABApp/openhab/events/__init__.py", line 2, in <module>
from .item_events import ItemStateEvent, ItemStateChangedEvent, ItemCommandEvent, ItemAddedEvent,\
File "/usr/local/lib/python3.9/site-packages/HABApp/openhab/events/item_events.py", line 4, in <module>
from ..map_values import map_openhab_values
File "/usr/local/lib/python3.9/site-packages/HABApp/openhab/map_values.py", line 3, in <module>
from HABApp.openhab.definitions import HSBValue, OnOffValue, OpenClosedValue, PercentValue, QuantityValue, RawValue, \
File "/usr/local/lib/python3.9/site-packages/HABApp/openhab/definitions/__init__.py", line 3, in <module>
from . import rest
File "/usr/local/lib/python3.9/site-packages/HABApp/openhab/definitions/rest/__init__.py", line 1, in <module>
from .items import OpenhabItemDefinition
File "/usr/local/lib/python3.9/site-packages/HABApp/openhab/definitions/rest/items.py", line 55, in <module>
OpenhabItemDefinition.update_forward_refs()
File "/usr/local/lib/python3.9/site-packages/pydantic/main.py", line 677, in update_forward_refs
update_field_forward_refs(f, globalns=globalns, localns=localns)
File "/usr/local/lib/python3.9/site-packages/pydantic/typing.py", line 233, in update_field_forward_refs
field.type_ = evaluate_forwardref(field.type_, globalns, localns or None)
File "/usr/local/lib/python3.9/site-packages/pydantic/typing.py", line 50, in evaluate_forwardref
return type_._evaluate(globalns, localns)
TypeError: _evaluate() missing 1 required positional argument: 'recursive_guard'