skill-weather icon indicating copy to clipboard operation
skill-weather copied to clipboard

Error when I ask for the weather of a city in Italian

Open abrivio2 opened this issue 2 years ago • 0 comments

Describe the bug The skill doesn't work when I ask (in Italian) for the weather of a city (it throws an exception) but it works if I ask for today's weather.

To Reproduce Steps to reproduce the behavior:

  1. Set Mycroft language to Italian
  2. Ask "Qual è il tempo a Milano?" (What is the weather in Milan?) or "Dimmi il meteo di Milano" (Tell me the weather in Milan)

Expected behavior The weather in Milan, Lombardy (Italy)

Log files

2022-12-27 15:38:26.015 | ERROR    |  2891 | mycroft.skills.intent_service:handle_utterance:326 | invalid literal for int() with base 10: 'False'
Traceback (most recent call last):
  File "/opt/mycroft/mycroft/skills/intent_service.py", line 282, in handle_utterance
    combined = _normalize_all_utterances(utterances)
  File "/opt/mycroft/mycroft/skills/intent_service.py", line 60, in _normalize_all_utterances
    norm_utterances = [normalize(u.lower(), remove_articles=False)
  File "/opt/mycroft/mycroft/skills/intent_service.py", line 60, in <listcomp>
    norm_utterances = [normalize(u.lower(), remove_articles=False)
  File "/opt/mycroft/.venv/lib/python3.10/site-packages/lingua_franca/internal.py", line 597, in call_localized_function
    return _call_localized_function(func, *args, **kwargs)
  File "/opt/mycroft/.venv/lib/python3.10/site-packages/lingua_franca/internal.py", line 573, in _call_localized_function
    r_val = localized_func(*args,
  File "/opt/mycroft/.venv/lib/python3.10/site-packages/lingua_franca/lang/parse_it.py", line 430, in normalize_it
    val = int(extract_number_it(word))  # era extractnumber_long_it
  File "/opt/mycroft/.venv/lib/python3.10/site-packages/lingua_franca/lang/parse_it.py", line 378, in extract_number_it
    val = _extract_number_long_it(word)
  File "/opt/mycroft/.venv/lib/python3.10/site-packages/lingua_franca/lang/parse_it.py", line 213, in _extract_number_long_it
    result = int(factors[0]) * int(factors[1])
ValueError: invalid literal for int() with base 10: 'False'

Environment (please complete the following information):

  • Device type: Desktop
  • OS: I used the docker image of Mycroft with Ubuntu 22.04
  • Mycroft-core version: 21.2.2

abrivio2 avatar Dec 27 '22 18:12 abrivio2