Removes references to croniter from utility_meter (#132364)

remove croniter
This commit is contained in:
Diogo Gomes 2024-12-05 17:45:04 +00:00 committed by Franck Nijhof
parent 92392ab3d4
commit dad81927cb
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
2 changed files with 8 additions and 6 deletions

View File

@ -1,9 +1,9 @@
"""Support for tracking consumption over given periods of time.""" """Support for tracking consumption over given periods of time."""
from datetime import timedelta from datetime import datetime, timedelta
import logging import logging
from croniter import croniter from cronsim import CronSim, CronSimError
import voluptuous as vol import voluptuous as vol
from homeassistant.components.select import DOMAIN as SELECT_DOMAIN from homeassistant.components.select import DOMAIN as SELECT_DOMAIN
@ -47,9 +47,12 @@ DEFAULT_OFFSET = timedelta(hours=0)
def validate_cron_pattern(pattern): def validate_cron_pattern(pattern):
"""Check that the pattern is well-formed.""" """Check that the pattern is well-formed."""
if croniter.is_valid(pattern): try:
CronSim(pattern, datetime(2020, 1, 1)) # any date will do
except CronSimError as err:
_LOGGER.error("Invalid cron pattern %s: %s", pattern, err)
raise vol.Invalid("Invalid pattern") from err
return pattern return pattern
raise vol.Invalid("Invalid pattern")
def period_or_cron(config): def period_or_cron(config):

View File

@ -6,7 +6,6 @@
"documentation": "https://www.home-assistant.io/integrations/utility_meter", "documentation": "https://www.home-assistant.io/integrations/utility_meter",
"integration_type": "helper", "integration_type": "helper",
"iot_class": "local_push", "iot_class": "local_push",
"loggers": ["croniter"],
"quality_scale": "internal", "quality_scale": "internal",
"requirements": ["cronsim==2.6"] "requirements": ["cronsim==2.6"]
} }