Skip to content
This repository has been archived by the owner on Apr 3, 2024. It is now read-only.

v1.4.0: Map parsing errors #205

Closed
4 tasks done
vandalon opened this issue Jul 6, 2022 · 1 comment · Fixed by DeebotUniverse/client.py#141 or #206
Closed
4 tasks done

v1.4.0: Map parsing errors #205

vandalon opened this issue Jul 6, 2022 · 1 comment · Fixed by DeebotUniverse/client.py#141 or #206
Labels
bug Something isn't working

Comments

@vandalon
Copy link

vandalon commented Jul 6, 2022

Checks

  • I have searched the existing issues and no issue is describing my issue
  • I have checked the FAQ
  • I have checked the documentation
  • I have installed the latest version

The problem

Although the add-on seems to work just fine, i see a lot of errors when starting home assistant:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/clean_logs.py", line 42, in _handle_requested
    stop_reason=CleanJobStatus(int(log["stopReason"])),
KeyError: 'stopReason'
2022-07-06 22:55:59 WARNING (MainThread) [deebot_client.commands.clean_logs] Skipping log entry: {'ts': 1655551621, 'last': 5, 'area': 0, 'id': '4a0cb92c-9861-4f56-a5d0-ace21b09b930@1608006014@8KTk', 'imageUrl': 'https://portal-eu.ecouser.net/api/lg/image/4a0cb92c-9861-4f56-a5d0-ace21b09b930@1608006014@8KTk', 'type': 'auto', 'aiavoid': 0, 'aitypes': [], 'aiopen': 1, 'powerMopType': 1}
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/clean_logs.py", line 42, in _handle_requested
    stop_reason=CleanJobStatus(int(log["stopReason"])),
KeyError: 'stopReason'
2022-07-06 22:55:59 WARNING (MainThread) [deebot_client.commands.common] Could not parse getCachedMapInfo: {'ret': 'ok', 'resp': {'header': {'pri': 1, 'tzm': 480, 'ts': '1657140955957', 'ver': '0.0.1', 'fwVer': '1.2.0', 'hwVer': '0.1.1'}, 'body': {'code': 0, 'msg': 'ok', 'data': {'enable': 1, 'info': [{'mid': '1842152678', 'status': 1, 'index': 3, 'using': 1, 'built': 0, 'name': ''}, {'mid': '0', 'status': 0, 'index': 2, 'using': 0, 'built': 0, 'name': ''}, {'mid': '1452164744', 'status': 1, 'index': 0, 'using': 0, 'built': 1, 'name': 'Boven'}, {'mid': '854074650', 'status': 1, 'index': 1, 'using': 0, 'built': 1, 'name': 'Beneden'}]}}}, 'id': 'PZI2'}
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1488, in warning
    if self.isEnabledFor(WARNING):
RecursionError: maximum recursion depth exceeded

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1612, in _log
    fn, lno, func, sinfo = self.findCaller(stack_info, stacklevel)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1554, in findCaller
    f = currentframe()
RecursionError: maximum recursion depth exceeded

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1622, in _log
    record = self.makeRecord(self.name, level, fn, lno, msg, args,
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1591, in makeRecord
    rv = _logRecordFactory(name, level, fn, lno, msg, args, exc_info, func,
  File "/usr/local/lib/python3.10/logging/__init__.py", line 288, in __init__
    ct = time.time()
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1622, in _log
    record = self.makeRecord(self.name, level, fn, lno, msg, args,
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1591, in makeRecord
    rv = _logRecordFactory(name, level, fn, lno, msg, args, exc_info, func,
  File "/usr/local/lib/python3.10/logging/__init__.py", line 317, in __init__
    self.filename = os.path.basename(pathname)
  File "/usr/local/lib/python3.10/posixpath.py", line 143, in basename
    sep = _get_sep(p)
  File "/usr/local/lib/python3.10/posixpath.py", line 42, in _get_sep
    if isinstance(path, bytes):
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1624, in _log
    self.handle(record)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1633, in handle
    if (not self.disabled) and self.filter(record):
  File "/usr/local/lib/python3.10/logging/__init__.py", line 821, in filter
    result = f.filter(record)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in filter
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in <genexpr>
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 43, in _sanitize_data
    if any(substring in key.lower() for substring in self._SANITIZE_LOG_KEYS):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 43, in <genexpr>
    if any(substring in key.lower() for substring in self._SANITIZE_LOG_KEYS):
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1624, in _log
    self.handle(record)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1633, in handle
    if (not self.disabled) and self.filter(record):
  File "/usr/local/lib/python3.10/logging/__init__.py", line 821, in filter
    result = f.filter(record)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in filter
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in <genexpr>
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 49, in _sanitize_data
    sanitized_data = copy.deepcopy(data)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 229, in _deepcopy_dict
    memo[id(x)] = y
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1624, in _log
    self.handle(record)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1633, in handle
    if (not self.disabled) and self.filter(record):
  File "/usr/local/lib/python3.10/logging/__init__.py", line 821, in filter
    result = f.filter(record)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in filter
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in <genexpr>
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 49, in _sanitize_data
    sanitized_data = copy.deepcopy(data)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 229, in _deepcopy_dict
    memo[id(x)] = y
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1624, in _log
    self.handle(record)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1633, in handle
    if (not self.disabled) and self.filter(record):
  File "/usr/local/lib/python3.10/logging/__init__.py", line 821, in filter
    result = f.filter(record)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in filter
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in <genexpr>
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 49, in _sanitize_data
    sanitized_data = copy.deepcopy(data)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 229, in _deepcopy_dict
    memo[id(x)] = y
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1624, in _log
    self.handle(record)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1633, in handle
    if (not self.disabled) and self.filter(record):
  File "/usr/local/lib/python3.10/logging/__init__.py", line 821, in filter
    result = f.filter(record)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in filter
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in <genexpr>
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 49, in _sanitize_data
    sanitized_data = copy.deepcopy(data)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 203, in _deepcopy_list
    memo[id(x)] = y
RecursionError: maximum recursion depth exceeded while calling a Python object

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 48, in handle_requested
    result = self._handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/map.py", line 47, in _handle_requested
    result = super().handle_requested(event_bus, response)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/commands/common.py", line 60, in handle_requested
    _LOGGER.warning(
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1489, in warning
    self._log(WARNING, msg, args, **kwargs)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1624, in _log
    self.handle(record)
  File "/usr/local/lib/python3.10/logging/__init__.py", line 1633, in handle
    if (not self.disabled) and self.filter(record):
  File "/usr/local/lib/python3.10/logging/__init__.py", line 821, in filter
    result = f.filter(record)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in filter
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 29, in <genexpr>
    record.args = tuple(self._sanitize_data(value) for value in record.args)
  File "/usr/local/lib/python3.10/site-packages/deebot_client/logging_filter.py", line 49, in _sanitize_data
    sanitized_data = copy.deepcopy(data)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 206, in _deepcopy_list
    append(deepcopy(a, memo))
  File "/usr/local/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/local/lib/python3.10/copy.py", line 229, in _deepcopy_dict
    memo[id(x)] = y
RecursionError: maximum recursion depth exceeded while calling a Python object

Diagnostics information

deebot-f24a3fd5f5cd9571101b6dc67f38cd09-Mega Maid-974c1ad186ae501a46a58d8b8a2fba11.json.txt

Anything in the logs that might be useful for us?

No response

Additional information

No response

@vandalon vandalon added the bug Something isn't working label Jul 6, 2022
@edenhaus edenhaus changed the title Lots of errors when using the latest release of the plugin with HA 2022.07 v1.4.0: Map errors Jul 6, 2022
@edenhaus edenhaus changed the title v1.4.0: Map errors v1.4.0: Map parsing errors Jul 6, 2022
@edenhaus
Copy link
Contributor

edenhaus commented Jul 6, 2022

I already noticed this bug and fix is coming.
Forgotten to test the map on my test system 🙈. Added tests now

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
2 participants