Skip to content

Commit 698e1e4

Browse files
author
Andrei Neagu
committed
revert all other typeadapter patters
1 parent 1147997 commit 698e1e4

File tree

12 files changed

+30
-59
lines changed

12 files changed

+30
-59
lines changed

packages/models-library/src/models_library/api_schemas_dynamic_sidecar/containers.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
from typing import Final, TypeAlias
1+
from typing import TypeAlias
22

3-
from pydantic import BaseModel, ConfigDict, NonNegativeFloat, TypeAdapter
3+
from pydantic import BaseModel, ConfigDict, NonNegativeFloat
44

55

66
class ActivityInfo(BaseModel):
@@ -15,7 +15,4 @@ class ActivityInfo(BaseModel):
1515
)
1616

1717

18-
ActivityInfoAdapter: Final[TypeAdapter[ActivityInfo]] = TypeAdapter(ActivityInfo)
19-
20-
2118
ActivityInfoOrNone: TypeAlias = ActivityInfo | None

packages/models-library/src/models_library/projects_nodes_io.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"""
88

99
from pathlib import Path
10-
from typing import Annotated, Final, TypeAlias
10+
from typing import Annotated, TypeAlias
1111
from uuid import UUID
1212

1313
from common_library.pydantic_basic_types import ConstrainedStr
@@ -44,9 +44,6 @@
4444
SimcoreS3FileID: TypeAlias = Annotated[
4545
str, StringConstraints(pattern=SIMCORE_S3_FILE_ID_RE)
4646
]
47-
SimcoreS3FileIDTypeAdapter: Final[TypeAdapter[SimcoreS3FileID]] = TypeAdapter(
48-
SimcoreS3FileID
49-
)
5047

5148

5249
class SimcoreS3DirectoryID(ConstrainedStr):

packages/models-library/src/models_library/services_creation.py

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,9 @@
1-
from typing import Any, Final
1+
from typing import Any
22

33
from pydantic import BaseModel, ConfigDict, TypeAdapter
44

55
from .services_resources import ServiceResourcesDict
6-
from .services_types import (
7-
ServiceKey,
8-
ServiceKeyAdapter,
9-
ServiceVersion,
10-
ServiceVersionAdapter,
11-
)
6+
from .services_types import ServiceKey, ServiceVersion
127
from .wallets import WalletID
138

149

@@ -41,18 +36,13 @@ class CreateServiceMetricsAdditionalParams(BaseModel):
4136
"user_email": "[email protected]",
4237
"project_name": "_!New Study",
4338
"node_name": "the service of a lifetime _ *!",
44-
"service_key": ServiceKeyAdapter.validate_python(
39+
"service_key": TypeAdapter(ServiceKey).validate_python(
4540
"simcore/services/dynamic/test"
4641
),
47-
"service_version": ServiceVersionAdapter.validate_python("0.0.1"),
42+
"service_version": TypeAdapter(ServiceVersion).validate_python("0.0.1"),
4843
"service_resources": {},
4944
"service_additional_metadata": {},
5045
"pricing_unit_cost_id": None,
5146
}
5247
}
5348
)
54-
55-
56-
CreateServiceMetricsAdditionalParamsAdapter: Final[
57-
TypeAdapter[CreateServiceMetricsAdditionalParams]
58-
] = TypeAdapter(CreateServiceMetricsAdditionalParams)

packages/models-library/src/models_library/services_io.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Annotated, Any, Final, TypeAlias
1+
from typing import Annotated, Any, TypeAlias
22

33
from pydantic import (
44
BaseModel,
@@ -8,7 +8,6 @@
88
StrictFloat,
99
StrictInt,
1010
StringConstraints,
11-
TypeAdapter,
1211
ValidationInfo,
1312
field_validator,
1413
)
@@ -258,6 +257,3 @@ def from_json_schema(cls, port_schema: dict[str, Any]) -> "ServiceOutput":
258257
"""Creates output port model from a json-schema"""
259258
data = cls._from_json_schema_base_implementation(port_schema)
260259
return cls.model_validate(data)
261-
262-
263-
ServiceOutputAdapter: Final[TypeAdapter[ServiceOutput]] = TypeAdapter(ServiceOutput)

packages/models-library/src/models_library/services_types.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
from typing import Annotated, Final, TypeAlias
1+
from typing import Annotated, TypeAlias
22
from uuid import uuid4
33

44
import arrow
5-
from pydantic import StringConstraints, TypeAdapter, ValidationInfo
5+
from pydantic import StringConstraints, ValidationInfo
66

77
from .basic_regex import PROPERTY_KEY_RE, SIMPLE_VERSION_RE
88
from .services_regex import (
@@ -18,7 +18,6 @@
1818
FileName: TypeAlias = Annotated[str, StringConstraints(pattern=FILENAME_RE)]
1919

2020
ServiceKey: TypeAlias = Annotated[str, StringConstraints(pattern=SERVICE_KEY_RE)]
21-
ServiceKeyAdapter: Final[TypeAdapter[ServiceKey]] = TypeAdapter(ServiceKey)
2221

2322
ServiceKeyEncoded: TypeAlias = Annotated[
2423
str, StringConstraints(pattern=SERVICE_ENCODED_KEY_RE)
@@ -33,7 +32,6 @@
3332
]
3433

3534
ServiceVersion: TypeAlias = Annotated[str, StringConstraints(pattern=SIMPLE_VERSION_RE)]
36-
ServiceVersionAdapter: Final[TypeAdapter[ServiceVersion]] = TypeAdapter(ServiceVersion)
3735

3836

3937
class RunID(str):

services/director-v2/tests/unit/test_modules_dynamic_sidecar_client_api_thin.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,7 @@
99
from faker import Faker
1010
from fastapi import FastAPI, status
1111
from httpx import Response
12-
from models_library.services_creation import (
13-
CreateServiceMetricsAdditionalParams,
14-
CreateServiceMetricsAdditionalParamsAdapter,
15-
)
12+
from models_library.services_creation import CreateServiceMetricsAdditionalParams
1613
from models_library.sidecar_volumes import VolumeCategory, VolumeStatus
1714
from pydantic import AnyHttpUrl, parse_obj_as
1815
from pytest_simcore.helpers.typing_env import EnvVarsDict
@@ -285,7 +282,9 @@ async def test_put_volumes(
285282
"post_containers_tasks",
286283
"/containers",
287284
{
288-
"metrics_params": CreateServiceMetricsAdditionalParamsAdapter.validate_python(
285+
"metrics_params": TypeAdapter(
286+
CreateServiceMetricsAdditionalParams
287+
).validate_python(
289288
CreateServiceMetricsAdditionalParams.model_config[
290289
"json_schema_extra"
291290
]["example"],

services/dynamic-sidecar/src/simcore_service_dynamic_sidecar/api/containers.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010
from fastapi import Query, Request, status
1111
from models_library.api_schemas_dynamic_sidecar.containers import (
1212
ActivityInfo,
13-
ActivityInfoAdapter,
1413
ActivityInfoOrNone,
1514
)
16-
from pydantic import ValidationError
15+
from pydantic import TypeAdapter, ValidationError
1716
from servicelib.fastapi.requests_decorators import cancel_on_disconnect
1817

1918
from ..core.docker_utils import docker_client
@@ -175,7 +174,7 @@ async def get_containers_activity(
175174
return ActivityInfo(seconds_inactive=_INACTIVE_FOR_LONG_TIME)
176175

177176
try:
178-
return ActivityInfoAdapter.validate_json(inactivity_response)
177+
return TypeAdapter(ActivityInfo).validate_json(inactivity_response)
179178
except ValidationError:
180179
_logger.warning(
181180
"Could not parse command result '%s' as '%s'",

services/dynamic-sidecar/src/simcore_service_dynamic_sidecar/core/storage.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515

1616
_LIVENESS_TIMEOUT: Final[timedelta] = timedelta(seconds=5)
1717

18-
AnyUrlTypeAdapter = TypeAdapter(AnyUrl)
19-
2018

2119
class _AuthTuple(NamedTuple):
2220
username: str
@@ -35,7 +33,7 @@ def _get_auth_or_none(storage_auth_settings: StorageAuthSettings) -> _AuthTuple
3533

3634

3735
def _get_url(storage_auth_settings: StorageAuthSettings) -> str:
38-
url: AnyUrl = AnyUrlTypeAdapter.validate_python(
36+
url: AnyUrl = TypeAdapter(AnyUrl).validate_python(
3937
f"{storage_auth_settings.api_base_url}/"
4038
)
4139
return f"{url}"

services/dynamic-sidecar/tests/conftest.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,10 @@
1818
from models_library.projects import ProjectID
1919
from models_library.projects_nodes import NodeID
2020
from models_library.services import RunID
21-
from models_library.services_creation import (
22-
CreateServiceMetricsAdditionalParams,
23-
CreateServiceMetricsAdditionalParamsAdapter,
24-
)
21+
from models_library.services_creation import CreateServiceMetricsAdditionalParams
2522
from models_library.users import UserID
2623
from models_library.utils.json_serialization import json_dumps
24+
from pydantic import TypeAdapter
2725
from pytest_mock.plugin import MockerFixture
2826
from pytest_simcore.helpers.monkeypatch_envs import (
2927
EnvVarsDict,
@@ -333,7 +331,7 @@ def mock_stop_heart_beat_task(mocker: MockerFixture) -> AsyncMock:
333331

334332
@pytest.fixture
335333
def mock_metrics_params(faker: Faker) -> CreateServiceMetricsAdditionalParams:
336-
return CreateServiceMetricsAdditionalParamsAdapter.validate_python(
334+
return TypeAdapter(CreateServiceMetricsAdditionalParams).validate_python(
337335
CreateServiceMetricsAdditionalParams.model_config["json_schema_extra"][
338336
"example"
339337
],

services/dynamic-sidecar/tests/integration/test_modules_long_running_tasks.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
from fastapi import FastAPI
2222
from models_library.api_schemas_storage import S3BucketName
2323
from models_library.projects import ProjectID
24-
from models_library.projects_nodes_io import NodeID, SimcoreS3FileIDTypeAdapter
24+
from models_library.projects_nodes_io import NodeID, SimcoreS3FileID
2525
from models_library.users import UserID
2626
from pydantic import AnyUrl, TypeAdapter
2727
from pytest_mock import MockerFixture
@@ -199,7 +199,7 @@ async def restore_legacy_state_archives(
199199
user_id=user_id,
200200
store_id=SIMCORE_LOCATION,
201201
store_name=None,
202-
s3_object=SimcoreS3FileIDTypeAdapter.validate_python(s3_path),
202+
s3_object=TypeAdapter(SimcoreS3FileID).validate_python(s3_path),
203203
path_to_upload=legacy_archive_zip,
204204
io_log_redirect_cb=None,
205205
)

0 commit comments

Comments
 (0)