redis-om-python icon indicating copy to clipboard operation
redis-om-python copied to clipboard

redis-om 0.3.2 no longer supports pydantic<2

Open woutdenolf opened this issue 6 months ago • 4 comments

https://github.com/redis/redis-om-python/blob/c5068e561116d6d19e571aa336175de91311d695/pyproject.toml#L40

pip install "redis-om" "pydantic<2"
from redis_om import JsonModel
  File.../site-packages/redis_om/__init__.py", line 4, in <module>
    from .model.migrations.migrator import MigrationError, Migrator
  File.../site-packages/redis_om/model/__init__.py", line 2, in <module>
    from .model import (
  File.../site-packages/redis_om/model/model.py", line 2216, in <module>
    class EmbeddedJsonModel(JsonModel, abc.ABC):
  File.../site-packages/redis_om/model/model.py", line 1311, in __new__
    new_class = super().__new__(cls, name, bases, attrs, **kwargs)
  File "pydantic/main.py", line 282, in pydantic.main.ModelMetaclass.__new__
  File "/usr/lib/python3.10/abc.py", line 106, in __new__
    cls = super().__new__(mcls, name, bases, namespace, **kwargs)
  File.../site-packages/redis_om/model/model.py", line 1896, in __init_subclass__
    cls.redisearch_schema()
  File.../site-packages/redis_om/model/model.py", line 1965, in redisearch_schema
    schema_parts = [schema_prefix] + cls.schema_for_fields()
  File.../site-packages/redis_om/model/model.py", line 1983, in schema_for_fields
    fields[name] = PydanticFieldInfo.from_annotation(field)
AttributeError: type object 'FieldInfo' has no attribute 'from_annotation'

It works for redis-om 0.3.1 so the issue was introduced in 0.3.2.

woutdenolf avatar Aug 07 '24 16:08 woutdenolf