arthurio / fastapi-filter

Filter and order your endpoints
https://fastapi-filter.netlify.app/
MIT License
189 stars 26 forks source link

Starting from v2.4, pydantic deprecated `FieldValidationInfo` in favor for `ValidationInfo` #524

Closed morian closed 6 months ago

morian commented 6 months ago

Hi!

I am using Pydantic v2.5.3 and noticed the following warning when running tests:

venv/lib/python3.11/site-packages/pydantic_core/core_schema.py:3928
venv/lib/python3.11/site-packages/pydantic_core/core_schema.py:3928
venv/lib/python3.11/site-packages/pydantic_core/core_schema.py:3928
venv/lib/python3.11/site-packages/pydantic_core/core_schema.py:3928
  /project/venv/lib/python3.11/site-packages/pydantic_core/core_schema.py:3928: DeprecationWarning: `FieldValidationInfo` is deprecated, use `ValidationInfo` instead.
    warnings.warn(msg, DeprecationWarning, stacklevel=1)

It turns out pydantic deprecated it as seen on a note on their documentation: https://docs.pydantic.dev/latest/concepts/validators/#field-validators

It is used in a few locations on fastapi-filter:

$ git grep FieldValidationInfo
fastapi_filter/base/filter.py:8:from pydantic import BaseModel, ConfigDict, FieldValidationInfo, ValidationError, create_model, field_validator
fastapi_filter/base/filter.py:78:    def strip_order_by_values(cls, value, field: FieldValidationInfo):
fastapi_filter/base/filter.py:94:    def validate_order_by(cls, value, field: FieldValidationInfo):
fastapi_filter/contrib/mongoengine/filter.py:3:from pydantic import FieldValidationInfo, field_validator
fastapi_filter/contrib/mongoengine/filter.py:37:    def split_str(cls, value, field: FieldValidationInfo):
fastapi_filter/contrib/sqlalchemy/filter.py:6:from pydantic import FieldValidationInfo, field_validator
fastapi_filter/contrib/sqlalchemy/filter.py:91:    def split_str(cls, value, field: FieldValidationInfo):

Nothing too critical for now, but it should not be too hard to fix!

Regards!

morian commented 6 months ago

Well, it was not opened as an issue but this is addressed in a pending merge request #510. Closing this issue, sorry for the duplicate report.