FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

🗑️ Deprecate `min_items` and `max_items` parameters of `Field` by YuriiMotov · Pull Request #1731 · fastapi/sqlmodel · GitHub

Repository navigation

🗑️ Deprecate min_items and max_items parameters of Field - #1731

Merged
tiangolo merged 4 commits into
mainfrom
Fix-and-deprecate-min_items-max_items
Aug 28, 2026
Merged

tiangolo merged 4 commits into
mainfrom
Fix-and-deprecate-min_items-max_items

Conversation

Copy link
Copy Markdown
Member

min_items and max_items parameters of Field are deprecated in Pydantyc V2

This PR reflects this in sqlmodel's Field.

It will still work, but emit a deprecation warning.


Actually, these parameters don't currently work master. This PR also fixes this the same way it's done in Pydantic's Field (min_length = min_items)


Code example and its output in the details:

Details
from pydantic import ValidationError
from sqlmodel import Field, SQLModel


class Model(SQLModel):
    value: list[int] = Field(min_items=2, max_items=4)

# DeprecationWarning: `min_items` is deprecated and will be removed, use `min_length` instead
#   value: list[int] = Field(min_items=2, max_items=4)
# DeprecationWarning: `max_items` is deprecated and will be removed, use `max_length` instead
#   value: list[int] = Field(min_items=2, max_items=4)


try:
    a = Model(value=[1])
except ValidationError as e:
    print(e)

# 1 validation error for Model
# value
#   List should have at least 2 items after validation, not 1 [type=too_short, input_value=[1], input_type=list]
#     For further information visit https://errors.pydantic.dev/2.12/v/too_short


try:
    b = Model(value=[1, 2, 3, 4, 5])
except ValidationError as e:
    print(e)

# 1 validation error for Model
# value
#   List should have at most 4 items after validation, not 5 [type=too_long, input_value=[1, 2, 3, 4, 5], input_type=list]
#     For further information visit https://errors.pydantic.dev/2.12/v/too_long

YuriiMotov marked this pull request as ready for review January 29, 2026 12:50
github-actions Bot added the conflicts Automatically generated when a PR has a merge conflict label Feb 20, 2026

This comment was marked as resolved.

github-actions Bot removed the conflicts Automatically generated when a PR has a merge conflict label Feb 20, 2026
github-actions Bot added the conflicts Automatically generated when a PR has a merge conflict label Apr 3, 2026

This comment was marked as resolved.

github-actions Bot removed the conflicts Automatically generated when a PR has a merge conflict label Apr 3, 2026

tiangolo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Excellent, thank you! 🙌

tiangolo enabled auto-merge (squash) August 28, 2026 19:21
tiangolo merged commit 2d02c4c into main Aug 28, 2026
28 checks passed
tiangolo deleted the Fix-and-deprecate-min_items-max_items branch August 28, 2026 19:23
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants


Back | FazBrowse Home | New Git URL