Update voluptuous to 0.15.2 (#120631)
* Update voluptuous to 0.15.1 * Fix typing issues * Add type ignores for json result type * Update voluptuous to 0.15.2 --------- Co-authored-by: J. Nick Koston <nick@koston.org>
This commit is contained in:
parent
0d0ca22103
commit
0e52d149e4
11 changed files with 13 additions and 15 deletions
|
@ -215,7 +215,7 @@ def _prepare_result_json(
|
||||||
data = result.copy()
|
data = result.copy()
|
||||||
|
|
||||||
if (schema := data["data_schema"]) is None:
|
if (schema := data["data_schema"]) is None:
|
||||||
data["data_schema"] = []
|
data["data_schema"] = [] # type: ignore[typeddict-item] # json result type
|
||||||
else:
|
else:
|
||||||
data["data_schema"] = voluptuous_serialize.convert(schema)
|
data["data_schema"] = voluptuous_serialize.convert(schema)
|
||||||
|
|
||||||
|
|
|
@ -156,7 +156,7 @@ def _prepare_result_json(
|
||||||
data = result.copy()
|
data = result.copy()
|
||||||
|
|
||||||
if (schema := data["data_schema"]) is None:
|
if (schema := data["data_schema"]) is None:
|
||||||
data["data_schema"] = []
|
data["data_schema"] = [] # type: ignore[typeddict-item] # json result type
|
||||||
else:
|
else:
|
||||||
data["data_schema"] = voluptuous_serialize.convert(schema)
|
data["data_schema"] = voluptuous_serialize.convert(schema)
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ from __future__ import annotations
|
||||||
from collections.abc import Mapping
|
from collections.abc import Mapping
|
||||||
from contextlib import suppress
|
from contextlib import suppress
|
||||||
from enum import StrEnum
|
from enum import StrEnum
|
||||||
from typing import Any, cast
|
from typing import Any
|
||||||
|
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
from voluptuous.humanize import humanize_error
|
from voluptuous.humanize import humanize_error
|
||||||
|
@ -90,7 +90,7 @@ async def _async_validate_config_item( # noqa: C901
|
||||||
def _humanize(err: Exception, config: ConfigType) -> str:
|
def _humanize(err: Exception, config: ConfigType) -> str:
|
||||||
"""Humanize vol.Invalid, stringify other exceptions."""
|
"""Humanize vol.Invalid, stringify other exceptions."""
|
||||||
if isinstance(err, vol.Invalid):
|
if isinstance(err, vol.Invalid):
|
||||||
return cast(str, humanize_error(config, err))
|
return humanize_error(config, err)
|
||||||
return str(err)
|
return str(err)
|
||||||
|
|
||||||
def _log_invalid_automation(
|
def _log_invalid_automation(
|
||||||
|
|
|
@ -145,7 +145,7 @@ def websocket_command(
|
||||||
|
|
||||||
def decorate(func: const.WebSocketCommandHandler) -> const.WebSocketCommandHandler:
|
def decorate(func: const.WebSocketCommandHandler) -> const.WebSocketCommandHandler:
|
||||||
"""Decorate ws command function."""
|
"""Decorate ws command function."""
|
||||||
if is_dict and len(schema) == 1: # type only empty schema
|
if is_dict and len(schema) == 1: # type: ignore[arg-type] # type only empty schema
|
||||||
func._ws_schema = False # type: ignore[attr-defined] # noqa: SLF001
|
func._ws_schema = False # type: ignore[attr-defined] # noqa: SLF001
|
||||||
elif is_dict:
|
elif is_dict:
|
||||||
func._ws_schema = messages.BASE_COMMAND_MESSAGE_SCHEMA.extend(schema) # type: ignore[attr-defined] # noqa: SLF001
|
func._ws_schema = messages.BASE_COMMAND_MESSAGE_SCHEMA.extend(schema) # type: ignore[attr-defined] # noqa: SLF001
|
||||||
|
|
|
@ -947,7 +947,7 @@ def _log_pkg_error(
|
||||||
def _identify_config_schema(module: ComponentProtocol) -> str | None:
|
def _identify_config_schema(module: ComponentProtocol) -> str | None:
|
||||||
"""Extract the schema and identify list or dict based."""
|
"""Extract the schema and identify list or dict based."""
|
||||||
if not isinstance(module.CONFIG_SCHEMA, vol.Schema):
|
if not isinstance(module.CONFIG_SCHEMA, vol.Schema):
|
||||||
return None
|
return None # type: ignore[unreachable]
|
||||||
|
|
||||||
schema = module.CONFIG_SCHEMA.schema
|
schema = module.CONFIG_SCHEMA.schema
|
||||||
|
|
||||||
|
|
|
@ -112,9 +112,7 @@ class UnknownStep(FlowError):
|
||||||
"""Unknown step specified."""
|
"""Unknown step specified."""
|
||||||
|
|
||||||
|
|
||||||
# ignore misc is required as vol.Invalid is not typed
|
class InvalidData(vol.Invalid):
|
||||||
# mypy error: Class cannot subclass "Invalid" (has type "Any")
|
|
||||||
class InvalidData(vol.Invalid): # type: ignore[misc]
|
|
||||||
"""Invalid data provided."""
|
"""Invalid data provided."""
|
||||||
|
|
||||||
def __init__(
|
def __init__(
|
||||||
|
@ -386,7 +384,7 @@ class FlowManager(abc.ABC, Generic[_FlowResultT, _HandlerT]):
|
||||||
) is not None and user_input is not None:
|
) is not None and user_input is not None:
|
||||||
data_schema = cast(vol.Schema, data_schema)
|
data_schema = cast(vol.Schema, data_schema)
|
||||||
try:
|
try:
|
||||||
user_input = data_schema(user_input) # type: ignore[operator]
|
user_input = data_schema(user_input)
|
||||||
except vol.Invalid as ex:
|
except vol.Invalid as ex:
|
||||||
raised_errors = [ex]
|
raised_errors = [ex]
|
||||||
if isinstance(ex, vol.MultipleInvalid):
|
if isinstance(ex, vol.MultipleInvalid):
|
||||||
|
|
|
@ -47,7 +47,7 @@ class _BaseFlowManagerView(HomeAssistantView, Generic[_FlowManagerT]):
|
||||||
data = result.copy()
|
data = result.copy()
|
||||||
|
|
||||||
if (schema := data["data_schema"]) is None:
|
if (schema := data["data_schema"]) is None:
|
||||||
data["data_schema"] = []
|
data["data_schema"] = [] # type: ignore[typeddict-item] # json result type
|
||||||
else:
|
else:
|
||||||
data["data_schema"] = voluptuous_serialize.convert(
|
data["data_schema"] = voluptuous_serialize.convert(
|
||||||
schema, custom_serializer=cv.custom_serializer
|
schema, custom_serializer=cv.custom_serializer
|
||||||
|
|
|
@ -60,7 +60,7 @@ ulid-transform==0.9.0
|
||||||
urllib3>=1.26.5,<2
|
urllib3>=1.26.5,<2
|
||||||
voluptuous-openapi==0.0.4
|
voluptuous-openapi==0.0.4
|
||||||
voluptuous-serialize==2.6.0
|
voluptuous-serialize==2.6.0
|
||||||
voluptuous==0.13.1
|
voluptuous==0.15.2
|
||||||
webrtc-noise-gain==1.2.3
|
webrtc-noise-gain==1.2.3
|
||||||
yarl==1.9.4
|
yarl==1.9.4
|
||||||
zeroconf==0.132.2
|
zeroconf==0.132.2
|
||||||
|
|
|
@ -29,7 +29,7 @@ class NodeStrClass(str):
|
||||||
|
|
||||||
def __voluptuous_compile__(self, schema: vol.Schema) -> Any:
|
def __voluptuous_compile__(self, schema: vol.Schema) -> Any:
|
||||||
"""Needed because vol.Schema.compile does not handle str subclasses."""
|
"""Needed because vol.Schema.compile does not handle str subclasses."""
|
||||||
return _compile_scalar(self)
|
return _compile_scalar(self) # type: ignore[no-untyped-call]
|
||||||
|
|
||||||
|
|
||||||
class NodeDictClass(dict):
|
class NodeDictClass(dict):
|
||||||
|
|
|
@ -67,7 +67,7 @@ dependencies = [
|
||||||
# Temporary setting an upper bound, to prevent compat issues with urllib3>=2
|
# Temporary setting an upper bound, to prevent compat issues with urllib3>=2
|
||||||
# https://github.com/home-assistant/core/issues/97248
|
# https://github.com/home-assistant/core/issues/97248
|
||||||
"urllib3>=1.26.5,<2",
|
"urllib3>=1.26.5,<2",
|
||||||
"voluptuous==0.13.1",
|
"voluptuous==0.15.2",
|
||||||
"voluptuous-serialize==2.6.0",
|
"voluptuous-serialize==2.6.0",
|
||||||
"voluptuous-openapi==0.0.4",
|
"voluptuous-openapi==0.0.4",
|
||||||
"yarl==1.9.4",
|
"yarl==1.9.4",
|
||||||
|
|
|
@ -39,7 +39,7 @@ SQLAlchemy==2.0.31
|
||||||
typing-extensions>=4.12.2,<5.0
|
typing-extensions>=4.12.2,<5.0
|
||||||
ulid-transform==0.9.0
|
ulid-transform==0.9.0
|
||||||
urllib3>=1.26.5,<2
|
urllib3>=1.26.5,<2
|
||||||
voluptuous==0.13.1
|
voluptuous==0.15.2
|
||||||
voluptuous-serialize==2.6.0
|
voluptuous-serialize==2.6.0
|
||||||
voluptuous-openapi==0.0.4
|
voluptuous-openapi==0.0.4
|
||||||
yarl==1.9.4
|
yarl==1.9.4
|
||||||
|
|
Loading…
Add table
Reference in a new issue