StephanJoubert / home_assistant_solarman

Home Assistant component for Solarman collectors used with a variety of inverters.
Apache License 2.0
508 stars 190 forks source link

Warning after HA core 2024.2 #511

Open coserotondo opened 4 months ago

coserotondo commented 4 months ago

Logger: py.warnings Source: loader.py:864 First occurred: 08:09:49 (1 occurrences) Last logged: 08:09:49

/config/custom_components/solarman/sensor.py:191: SyntaxWarning: invalid escape sequence '\S' if uom and (re.match("\S+", uom)):

CrazyUs3r commented 1 month ago

The warning you're seeing is because Python is treating \S as an invalid escape sequence within the regular expression. In Python strings, the backslash \ is used as an escape character, so \S without a preceding r (indicating a raw string) is problematic.

To fix this, you should use a raw string for your regular expression. This way, backslashes are treated literally, not as escape characters. Here's the corrected line of code:

python

if uom and (re.match(r"\S+", uom)):

By adding the r before the string, it tells Python to treat the backslashes as literal characters. This should resolve the SyntaxWarning.