starlette-admin
starlette-admin copied to clipboard
pydantic.color is moved to pydantic_extra_types.color in V2 resulting in an error in odmantic converts(pydantic.color.Color)
Describe the bug
Using pydantic V2 import starlette_admin.contrib.odmantic.Admin
results in an import error because pydantic.color is moved to pydantic_extra_types.color.
See the migration guide to V2.
To Reproduce
from starlette_admin.contrib.odmantic import Admin
raises this error
File "/usr/local/lib/python3.11/site-packages/starlette_admin/contrib/odmantic/converters.py", line 55, in <module>
class ModelConverter(BaseODMModelConverter):
File "/usr/local/lib/python3.11/site-packages/starlette_admin/contrib/odmantic/converters.py", line 120, in ModelConverter
@converts(pydantic.color.Color)
^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pydantic/__init__.py", line 363, in __getattr__
return _getattr_migration(attr_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pydantic/_migration.py", line 306, in wrapper
raise AttributeError(f'module {module!r} has no attribute {name!r}')
AttributeError: module 'pydantic' has no attribute 'color'
Environment (please complete the following information):
- Starlette-Admin version: 0.12.2
- ORM/ODMs: ODMantic
Additional context pydantic version: 2.5.3
If you pin your pydantic version, this will be resolved.