Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to pydantic2 (mixed versions) #6263

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion api/specs/storage/scripts/storage.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
from models_library.projects_nodes import NodeID
from models_library.projects_nodes_io import LocationID, StorageFileID
from models_library.users import UserID
from pydantic import AnyUrl, ByteSize
from pydantic.v1 import AnyUrl, ByteSize
from servicelib.long_running_tasks._models import TaskGet, TaskId, TaskStatus
from settings_library.s3 import S3Settings
from simcore_service_storage._meta import API_VTAG
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
UnregisterCheck,
)
from models_library.generics import Envelope
from pydantic import BaseModel, Field, confloat
from pydantic.v1 import BaseModel, Field, confloat
from simcore_service_webserver._meta import API_VTAG
from simcore_service_webserver.login._2fa_handlers import Resend2faBody
from simcore_service_webserver.login._auth_handlers import (
Expand Down
4 changes: 2 additions & 2 deletions api/specs/web-server/_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
import yaml
from fastapi import FastAPI
from models_library.basic_types import LogLevel
from pydantic import BaseModel, Field
from pydantic.fields import FieldInfo
from pydantic.v1 import BaseModel, Field
from pydantic.v1.fields import FieldInfo
from servicelib.fastapi.openapi import override_fastapi_openapi_method

CURRENT_DIR = Path(sys.argv[0] if __name__ == "__main__" else __file__).resolve().parent
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_folders.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
)
from models_library.generics import Envelope
from models_library.rest_pagination import PageQueryParameters
from pydantic import Json
from pydantic.v1 import Json
from simcore_service_webserver._meta import API_VTAG
from simcore_service_webserver.folders._folders_handlers import FoldersPathParams
from simcore_service_webserver.folders._groups_api import FolderGroupGet
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_nih_sparc_redirections.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
from fastapi.responses import RedirectResponse
from models_library.projects import ProjectID
from models_library.services import ServiceKey, ServiceKeyVersion
from pydantic import HttpUrl, PositiveInt
from pydantic.v1 import HttpUrl, PositiveInt

router = APIRouter(
prefix="", # NOTE: no API vtag!
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_projects_comments.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
from models_library.generics import Envelope
from models_library.projects import ProjectID
from models_library.projects_comments import CommentID, ProjectsCommentsAPI
from pydantic import NonNegativeInt
from pydantic.v1 import NonNegativeInt
from simcore_service_webserver._meta import API_VTAG
from simcore_service_webserver.projects._comments_handlers import (
_ProjectCommentsBodyParams,
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_projects_crud.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
from models_library.projects import ProjectID
from models_library.projects_nodes_io import NodeID
from models_library.rest_pagination import Page
from pydantic import Json
from pydantic.v1 import Json
from simcore_service_webserver._meta import API_VTAG
from simcore_service_webserver.projects._common_models import ProjectPathParams
from simcore_service_webserver.projects._crud_handlers import ProjectCreateParams
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_projects_states.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from models_library.api_schemas_webserver.projects import ProjectGet
from models_library.generics import Envelope
from models_library.projects_state import ProjectState
from pydantic import ValidationError
from pydantic.v1 import ValidationError
from servicelib.aiohttp import status
from simcore_service_webserver._meta import API_VTAG
from simcore_service_webserver.director_v2.exceptions import DirectorServiceError
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_resource_usage.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
)
from models_library.rest_pagination import DEFAULT_NUMBER_OF_ITEMS_PER_PAGE
from models_library.wallets import WalletID
from pydantic import Json, NonNegativeInt
from pydantic.v1 import Json, NonNegativeInt
from simcore_service_webserver._meta import API_VTAG
from simcore_service_webserver.resource_usage._pricing_plans_admin_handlers import (
_GetPricingPlanPathParams,
Expand Down
2 changes: 1 addition & 1 deletion api/specs/web-server/_storage.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
)
from models_library.generics import Envelope
from models_library.projects_nodes_io import LocationID
from pydantic import AnyUrl, ByteSize
from pydantic.v1 import AnyUrl, ByteSize
from simcore_service_webserver._meta import API_VTAG
from simcore_service_webserver.storage.schemas import DatasetMetaData, FileMetaData

Expand Down
14 changes: 6 additions & 8 deletions packages/aws-library/requirements/_base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ aiormq==6.8.0
# via aio-pika
aiosignal==1.3.1
# via aiohttp
annotated-types==0.7.0
# via pydantic
anyio==4.4.0
# via
# fast-depends
Expand All @@ -41,10 +43,6 @@ arrow==1.3.0
# -r requirements/../../../packages/models-library/requirements/_base.in
# -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in
# -r requirements/../../../packages/service-library/requirements/_base.in
async-timeout==4.0.3
# via
# aiohttp
# redis
attrs==24.2.0
# via
# aiohttp
Expand All @@ -65,8 +63,6 @@ dnspython==2.6.1
# via email-validator
email-validator==2.2.0
# via pydantic
exceptiongroup==1.2.2
# via anyio
fast-depends==2.4.8
# via faststream
faststream==0.5.18
Expand Down Expand Up @@ -110,7 +106,7 @@ orjson==3.10.7
# -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in
pamqp==3.3.0
# via aiormq
pydantic==1.10.17
pydantic==2.8.2
# via
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
# -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
Expand All @@ -125,6 +121,8 @@ pydantic==1.10.17
# -r requirements/../../../packages/settings-library/requirements/_base.in
# -r requirements/_base.in
# fast-depends
pydantic-core==2.20.1
# via pydantic
pygments==2.18.0
# via rich
pyinstrument==4.7.2
Expand Down Expand Up @@ -201,9 +199,9 @@ types-python-dateutil==2.9.0.20240821
typing-extensions==4.12.2
# via
# aiodebug
# anyio
# faststream
# pydantic
# pydantic-core
# typer
# types-aiobotocore
# types-aiobotocore-ec2
Expand Down
19 changes: 10 additions & 9 deletions packages/aws-library/requirements/_test.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
annotated-types==0.7.0
# via
# -c requirements/_base.txt
# pydantic
antlr4-python3-runtime==4.13.2
# via moto
appdirs==1.4.4
Expand Down Expand Up @@ -58,10 +62,6 @@ cryptography==43.0.0
# moto
docker==7.1.0
# via moto
exceptiongroup==1.2.2
# via
# -c requirements/_base.txt
# pytest
faker==27.0.0
# via -r requirements/_test.in
flask==3.0.3
Expand Down Expand Up @@ -155,11 +155,15 @@ py-partiql-parser==0.5.5
# via moto
pycparser==2.22
# via cffi
pydantic==1.10.17
pydantic==2.8.2
# via
# -c requirements/../../../requirements/constraints.txt
# -c requirements/_base.txt
# aws-sam-translator
pydantic-core==2.20.1
# via
# -c requirements/_base.txt
# pydantic
pyparsing==3.1.2
# via moto
pytest==8.3.2
Expand Down Expand Up @@ -246,10 +250,6 @@ sympy==1.13.2
# via cfn-lint
termcolor==2.4.0
# via pytest-sugar
tomli==2.0.1
# via
# coverage
# pytest
types-aioboto3==13.1.1
# via -r requirements/_test.in
types-aiobotocore==2.13.2
Expand All @@ -276,6 +276,7 @@ typing-extensions==4.12.2
# flexparser
# pint
# pydantic
# pydantic-core
# types-aioboto3
# types-aiobotocore
urllib3==2.2.2
Expand Down
10 changes: 0 additions & 10 deletions packages/aws-library/requirements/_tools.txt
Original file line number Diff line number Diff line change
Expand Up @@ -72,22 +72,12 @@ setuptools==73.0.1
# via
# -c requirements/_test.txt
# pip-tools
tomli==2.0.1
# via
# -c requirements/_test.txt
# black
# build
# mypy
# pip-tools
# pylint
tomlkit==0.13.2
# via pylint
typing-extensions==4.12.2
# via
# -c requirements/_base.txt
# -c requirements/_test.txt
# astroid
# black
# mypy
virtualenv==20.26.3
# via pre-commit
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/ec2/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import botocore.exceptions
from aiobotocore.session import ClientCreatorContext
from aiocache import cached # type: ignore[import-untyped]
from pydantic import ByteSize, PositiveInt
from pydantic.v1 import ByteSize, PositiveInt
from servicelib.logging_utils import log_context
from settings_library.ec2 import EC2Settings
from types_aiobotocore_ec2 import EC2Client
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/ec2/_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

import sh # type: ignore[import-untyped]
from models_library.docker import DockerGenericTag
from pydantic import (
from pydantic.v1 import (
BaseModel,
ByteSize,
ConstrainedStr,
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/s3/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from botocore.client import Config
from models_library.api_schemas_storage import ETag, S3BucketName, UploadedPart
from models_library.basic_types import SHA256Str
from pydantic import AnyUrl, ByteSize, parse_obj_as
from pydantic.v1 import AnyUrl, ByteSize, parse_obj_as
from servicelib.logging_utils import log_catch, log_context
from servicelib.utils import limited_gather
from settings_library.s3 import S3Settings
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/s3/_constants.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from typing import Final

from pydantic import ByteSize, parse_obj_as
from pydantic.v1 import ByteSize, parse_obj_as

# NOTE: AWS S3 upload limits https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html
MULTIPART_UPLOADS_MIN_TOTAL_SIZE: Final[ByteSize] = parse_obj_as(ByteSize, "100MiB")
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/s3/_errors.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from pydantic.errors import PydanticErrorMixin
from pydantic.v1.errors import PydanticErrorMixin


class S3RuntimeError(PydanticErrorMixin, RuntimeError):
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/s3/_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

from models_library.api_schemas_storage import ETag
from models_library.basic_types import SHA256Str
from pydantic import AnyUrl, BaseModel, ByteSize
from pydantic.v1 import AnyUrl, BaseModel, ByteSize
from types_aiobotocore_s3.type_defs import HeadObjectOutputTypeDef, ObjectTypeDef

S3ObjectKey: TypeAlias = str
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/s3/_utils.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from typing import Final

from pydantic import ByteSize, parse_obj_as
from pydantic.v1 import ByteSize, parse_obj_as

_MULTIPART_MAX_NUMBER_OF_PARTS: Final[int] = 10000

Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/src/aws_library/ssm/_errors.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from pydantic.errors import PydanticErrorMixin
from pydantic.v1.errors import PydanticErrorMixin


class SSMRuntimeError(PydanticErrorMixin, RuntimeError):
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/tests/test_ec2_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import pytest
from aws_library.ec2._models import AWSTagKey, AWSTagValue, EC2InstanceData, Resources
from faker import Faker
from pydantic import ByteSize, ValidationError, parse_obj_as
from pydantic.v1 import ByteSize, ValidationError, parse_obj_as


@pytest.mark.parametrize(
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/tests/test_s3_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
from models_library.api_schemas_storage import S3BucketName, UploadedPart
from models_library.basic_types import SHA256Str
from moto.server import ThreadedMotoServer
from pydantic import AnyUrl, ByteSize, parse_obj_as
from pydantic.v1 import AnyUrl, ByteSize, parse_obj_as
from pytest_benchmark.plugin import BenchmarkFixture
from pytest_simcore.helpers.logging_tools import log_context
from pytest_simcore.helpers.parametrizations import (
Expand Down
2 changes: 1 addition & 1 deletion packages/aws-library/tests/test_s3_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
_MULTIPART_UPLOADS_TARGET_MAX_PART_SIZE,
compute_num_file_chunks,
)
from pydantic import ByteSize, parse_obj_as
from pydantic.v1 import ByteSize, parse_obj_as
from pytest_simcore.helpers.parametrizations import byte_size_ids


Expand Down
7 changes: 6 additions & 1 deletion packages/dask-task-models-library/requirements/_base.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
annotated-types==0.7.0
# via pydantic
arrow==1.3.0
# via -r requirements/../../../packages/models-library/requirements/_base.in
attrs==24.2.0
Expand Down Expand Up @@ -65,14 +67,16 @@ partd==1.4.2
# via dask
psutil==6.0.0
# via distributed
pydantic==1.10.17
pydantic==2.8.2
# via
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
# -c requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt
# -c requirements/../../../requirements/constraints.txt
# -r requirements/../../../packages/models-library/requirements/_base.in
# -r requirements/../../../packages/settings-library/requirements/_base.in
# -r requirements/_base.in
pydantic-core==2.20.1
# via pydantic
pygments==2.18.0
# via rich
python-dateutil==2.9.0.post0
Expand Down Expand Up @@ -118,6 +122,7 @@ types-python-dateutil==2.9.0.20240821
typing-extensions==4.12.2
# via
# pydantic
# pydantic-core
# typer
urllib3==2.2.2
# via
Expand Down
6 changes: 0 additions & 6 deletions packages/dask-task-models-library/requirements/_test.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ coverage==7.6.1
# via
# -r requirements/_test.in
# pytest-cov
exceptiongroup==1.2.2
# via pytest
faker==27.0.0
# via -r requirements/_test.in
flexcache==0.3
Expand Down Expand Up @@ -67,10 +65,6 @@ six==1.16.0
# python-dateutil
termcolor==2.4.0
# via pytest-sugar
tomli==2.0.1
# via
# coverage
# pytest
typing-extensions==4.12.2
# via
# -c requirements/_base.txt
Expand Down
10 changes: 0 additions & 10 deletions packages/dask-task-models-library/requirements/_tools.txt
Original file line number Diff line number Diff line change
Expand Up @@ -70,22 +70,12 @@ ruff==0.6.1
# via -r requirements/../../../requirements/devenv.txt
setuptools==73.0.1
# via pip-tools
tomli==2.0.1
# via
# -c requirements/_test.txt
# black
# build
# mypy
# pip-tools
# pylint
tomlkit==0.13.2
# via pylint
typing-extensions==4.12.2
# via
# -c requirements/_base.txt
# -c requirements/_test.txt
# astroid
# black
# mypy
virtualenv==20.26.3
# via pre-commit
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from pydantic import BaseModel, Extra, SecretStr
from pydantic.v1 import BaseModel, Extra, SecretStr


class DockerBasicAuth(BaseModel):
Expand Down
Loading
Loading