From dda66e1d8b030ac7b9a0f4ec8f1bc4917ae746c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20Niederb=C3=BChl?= Date: Wed, 21 Jul 2021 08:58:12 +0200 Subject: [PATCH] Replace gt=0 with ge=1 to avoid problems with exclusiveMinimum exclusiveMinimum causes problems with openapi spec validation: https://github.com/tiangolo/fastapi/issues/240 https://github.com/tiangolo/fastapi/issues/3541 --- docs/customization.md | 2 +- fastapi_pagination/default.py | 8 ++++---- fastapi_pagination/limit_offset.py | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/customization.md b/docs/customization.md index 0f32e1d2..b5cee64e 100644 --- a/docs/customization.md +++ b/docs/customization.md @@ -93,7 +93,7 @@ T = TypeVar("T") class Params(BaseParams): - size: int = Query(500, gt=0, le=1_000, description="Page size") + size: int = Query(500, ge=1, le=1_000, description="Page size") class Page(BasePage[T], Generic[T]): diff --git a/fastapi_pagination/default.py b/fastapi_pagination/default.py index 3704038f..55f1dd85 100644 --- a/fastapi_pagination/default.py +++ b/fastapi_pagination/default.py @@ -12,8 +12,8 @@ class Params(BaseModel, AbstractParams): - page: int = Query(1, gt=0, description="Page number") - size: int = Query(50, gt=0, le=100, description="Page size") + page: int = Query(1, ge=1, description="Page number") + size: int = Query(50, ge=1, le=100, description="Page size") def to_raw_params(self) -> RawParams: return RawParams( @@ -29,8 +29,8 @@ def __init__(self, **kwargs: Any) -> None: # pragma: no cover class Page(BasePage[T], Generic[T]): - page: conint(gt=0) # type: ignore - size: conint(gt=0) # type: ignore + page: conint(ge=1) # type: ignore + size: conint(ge=1) # type: ignore __params_type__ = Params diff --git a/fastapi_pagination/limit_offset.py b/fastapi_pagination/limit_offset.py index 9f7e6d70..ed5ef2db 100644 --- a/fastapi_pagination/limit_offset.py +++ b/fastapi_pagination/limit_offset.py @@ -13,7 +13,7 @@ class LimitOffsetParams(BaseModel, AbstractParams): - limit: int = Query(50, gt=0, le=100, description="Page size limit") + limit: int = Query(50, ge=1, le=100, description="Page size limit") offset: int = Query(0, ge=0, description="Page offset") def to_raw_params(self) -> RawParams: @@ -24,7 +24,7 @@ def to_raw_params(self) -> RawParams: class LimitOffsetPage(BasePage[T], Generic[T]): - limit: conint(gt=0) # type: ignore + limit: conint(ge=1) # type: ignore offset: conint(ge=0) # type: ignore __params_type__ = LimitOffsetParams