-
Notifications
You must be signed in to change notification settings - Fork 18
Open
Description
Hi,
After bumping pydantic to 2.7 version I've noticed that it's not possible to instantiate a Pydantic class having an attr of type aenum.MultiValueEnum.
Pydantic detects only the canonical value and raises a validation error when given other accepted values.
An example Model definition:
from pydantic import BaseModel
from aenum import MultiValueEnum
class MultiEnum(MultiValueEnum):
NAME = "VAL", "value"
class SomeModel(BaseModel):
attr: MultiEnumWhen using canonical value VAL the model is created:
SomeModel(attr="VAL")
SomeModel(attr=<MultiEnum.NAME: 'VAL'>)When using other value the model fails:
SomeModel(attr="value")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/pysetup/.venv/lib/python3.11/site-packages/pydantic/main.py", line 175, in __init__
self.__pydantic_validator__.validate_python(data, self_instance=self)
pydantic_core._pydantic_core.ValidationError: 1 validation error for SomeModel
attr
Input should be 'VAL' [type=enum, input_value='value', input_type=str]
For further information visit https://errors.pydantic.dev/2.7/v/enumCould this problem be resolved by a fix in the aenum package or would it require action from Pydantic maintainers?
burritoatspoton, Devligue, kunovg, RempelOliveira, tofulim and 4 more
Metadata
Metadata
Assignees
Labels
No labels