nathanmarlor / foxess_modbus

FoxESS inverter integration. Connect directly to your FoxESS inverter (no cloud!) for real-time status and control.
MIT License
105 stars 14 forks source link

Integration breaks with Core 2024.1.0 #491

Closed Twilek-de closed 6 months ago

Twilek-de commented 6 months ago

Since updating to Core 2024.1.0 foxess_modbus won´t load anymore. In the log there are

`Logger: homeassistant.setup Source: setup.py:251 First occurred: 22:59:42 (1 occurrences) Last logged: 22:59:42

Setup failed for custom integration 'foxess_modbus': Unable to import component: Exception importing custom_components.foxess_modbus Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/loader.py", line 822, in get_component ComponentProtocol, importlib.import_module(self.pkg_path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/importlib/init.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 1204, in _gcd_import File "", line 1176, in _find_and_load File "", line 1147, in _find_and_load_unlocked File "", line 690, in _load_unlocked File "", line 940, in exec_module File "", line 241, in _call_with_frames_removed File "/config/custom_components/foxess_modbus/init.py", line 43, in from .inverter_profiles import inverter_connection_type_profile_from_config File "/config/custom_components/foxess_modbus/inverter_profiles.py", line 25, in from .entities.charge_periods import CHARGE_PERIODS File "/config/custom_components/foxess_modbus/entities/charge_periods.py", line 8, in from .modbus_charge_period_config import ChargePeriodAddressSpec File "/config/custom_components/foxess_modbus/entities/modbus_charge_period_config.py", line 13, in from .modbus_binary_sensor import ModbusBinarySensorDescription File "/config/custom_components/foxess_modbus/entities/modbus_binary_sensor.py", line 52, in class ModbusBinarySensor(ModbusEntityMixin, BinarySensorEntity): TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/setup.py", line 251, in _async_setup_component component = integration.get_component() ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/loader.py", line 830, in get_component raise ImportError(f"Exception importing {self.pkg_path}") from err ImportError: Exception importing custom_components.foxess_modbus `

and

`Logger: homeassistant.loader Source: loader.py:822 First occurred: 22:59:41 (1 occurrences) Last logged: 22:59:41

Unexpected exception importing component custom_components.foxess_modbus Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/loader.py", line 822, in get_component ComponentProtocol, importlib.import_module(self.pkg_path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/importlib/init.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 1204, in _gcd_import File "", line 1176, in _find_and_load File "", line 1147, in _find_and_load_unlocked File "", line 690, in _load_unlocked File "", line 940, in exec_module File "", line 241, in _call_with_frames_removed File "/config/custom_components/foxess_modbus/init.py", line 43, in from .inverter_profiles import inverter_connection_type_profile_from_config File "/config/custom_components/foxess_modbus/inverter_profiles.py", line 25, in from .entities.charge_periods import CHARGE_PERIODS File "/config/custom_components/foxess_modbus/entities/charge_periods.py", line 8, in from .modbus_charge_period_config import ChargePeriodAddressSpec File "/config/custom_components/foxess_modbus/entities/modbus_charge_period_config.py", line 13, in from .modbus_binary_sensor import ModbusBinarySensorDescription File "/config/custom_components/foxess_modbus/entities/modbus_binary_sensor.py", line 52, in class ModbusBinarySensor(ModbusEntityMixin, BinarySensorEntity): TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases `

canton7 commented 6 months ago

Dup of #480