From 973193a527723731608da5bebbe10bcb602f170b Mon Sep 17 00:00:00 2001 From: Andrei Neagu Date: Fri, 7 Mar 2025 05:20:16 +0100 Subject: [PATCH 1/5] upgraded dynamic-scheduler requirements --- .../dynamic-scheduler/requirements/_base.txt | 145 ++++++++++-------- .../dynamic-scheduler/requirements/_test.txt | 14 +- .../dynamic-scheduler/requirements/_tools.txt | 4 +- 3 files changed, 88 insertions(+), 75 deletions(-) diff --git a/services/dynamic-scheduler/requirements/_base.txt b/services/dynamic-scheduler/requirements/_base.txt index a1b42fff0641..cf0ac62a6085 100644 --- a/services/dynamic-scheduler/requirements/_base.txt +++ b/services/dynamic-scheduler/requirements/_base.txt @@ -1,4 +1,4 @@ -aio-pika==9.5.0 +aio-pika==9.5.5 # via -r requirements/../../../packages/service-library/requirements/_base.in aiocache==0.12.3 # via -r requirements/../../../packages/service-library/requirements/_base.in @@ -10,9 +10,9 @@ aiofiles==24.1.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # nicegui -aiohappyeyeballs==2.4.3 +aiohappyeyeballs==2.5.0 # via aiohttp -aiohttp==3.11.7 +aiohttp==3.11.13 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -33,13 +33,13 @@ aiohttp==3.11.7 # python-socketio aiormq==6.8.1 # via aio-pika -aiosignal==1.3.1 +aiosignal==1.3.2 # via aiohttp -alembic==1.14.0 +alembic==1.15.1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in annotated-types==0.7.0 # via pydantic -anyio==4.6.2.post1 +anyio==4.8.0 # via # fast-depends # faststream @@ -56,14 +56,14 @@ asgiref==3.8.1 # via opentelemetry-instrumentation-asgi asyncpg==0.30.0 # via sqlalchemy -attrs==24.2.0 +attrs==25.1.0 # via # aiohttp # jsonschema # referencing bidict==0.23.1 # via python-socketio -certifi==2024.8.30 +certifi==2025.1.31 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -83,13 +83,13 @@ certifi==2024.8.30 # httpx # nicegui # requests -charset-normalizer==3.4.0 +charset-normalizer==3.4.1 # via requests -click==8.1.7 +click==8.1.8 # via # typer # uvicorn -deprecated==1.2.15 +deprecated==1.2.18 # via # opentelemetry-api # opentelemetry-exporter-otlp-proto-grpc @@ -105,7 +105,7 @@ exceptiongroup==1.2.2 # via aio-pika fast-depends==2.4.12 # via faststream -fastapi==0.115.5 +fastapi==0.115.11 # via # -r requirements/../../../packages/service-library/requirements/_fastapi.in # -r requirements/_base.in @@ -113,19 +113,19 @@ fastapi==0.115.5 # nicegui fastapi-lifespan-manager==0.1.4 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -faststream==0.5.31 +faststream==0.5.35 # via -r requirements/../../../packages/service-library/requirements/_base.in frozenlist==1.5.0 # via # aiohttp # aiosignal -googleapis-common-protos==1.66.0 +googleapis-common-protos==1.69.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http greenlet==3.1.1 # via sqlalchemy -grpcio==1.68.0 +grpcio==1.70.0 # via opentelemetry-exporter-otlp-proto-grpc h11==0.14.0 # via @@ -136,7 +136,7 @@ httpcore==1.0.7 # via httpx httptools==0.6.4 # via uvicorn -httpx==0.27.2 +httpx==0.28.1 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -168,7 +168,7 @@ importlib-metadata==8.5.0 # via opentelemetry-api itsdangerous==2.2.0 # via nicegui -jinja2==3.1.4 +jinja2==3.1.6 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -191,7 +191,7 @@ jsonschema==4.23.0 # -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in jsonschema-specifications==2024.10.1 # via jsonschema -mako==1.3.6 +mako==1.3.9 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -210,7 +210,7 @@ mako==1.3.6 # alembic markdown-it-py==3.0.0 # via rich -markdown2==2.5.1 +markdown2==2.5.3 # via nicegui markupsafe==3.0.2 # via @@ -222,9 +222,9 @@ multidict==6.1.0 # via # aiohttp # yarl -nicegui==2.7.0 +nicegui==2.12.1 # via -r requirements/_base.in -opentelemetry-api==1.28.2 +opentelemetry-api==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -239,17 +239,17 @@ opentelemetry-api==1.28.2 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.28.2 +opentelemetry-exporter-otlp==1.30.0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.28.2 +opentelemetry-exporter-otlp-proto-common==1.30.0 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.28.2 +opentelemetry-exporter-otlp-proto-grpc==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.28.2 +opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.49b2 +opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg @@ -258,31 +258,31 @@ opentelemetry-instrumentation==0.49b2 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-asgi==0.49b2 +opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.49b2 +opentelemetry-instrumentation-asyncpg==0.51b0 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.49b2 +opentelemetry-instrumentation-fastapi==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.49b2 +opentelemetry-instrumentation-httpx==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.49b2 +opentelemetry-instrumentation-logging==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.49b2 +opentelemetry-instrumentation-redis==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.49b2 +opentelemetry-instrumentation-requests==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.28.2 +opentelemetry-proto==1.30.0 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.28.2 +opentelemetry-sdk==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.49b2 +opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -292,13 +292,13 @@ opentelemetry-semantic-conventions==0.49b2 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.49b2 +opentelemetry-util-http==0.51b0 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-requests -orjson==3.10.12 +orjson==3.10.15 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -330,29 +330,29 @@ packaging==24.2 # opentelemetry-instrumentation pamqp==3.3.0 # via aiormq -prometheus-client==0.21.0 +prometheus-client==0.21.1 # via # -r requirements/../../../packages/service-library/requirements/_fastapi.in # prometheus-fastapi-instrumentator -prometheus-fastapi-instrumentator==7.0.0 +prometheus-fastapi-instrumentator==7.0.2 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -propcache==0.2.0 +propcache==0.3.0 # via # aiohttp # yarl -protobuf==5.28.3 +protobuf==5.29.3 # via # googleapis-common-protos # opentelemetry-proto pscript==0.7.7 # via vbuild -psutil==6.1.0 +psutil==7.0.0 # via -r requirements/../../../packages/service-library/requirements/_base.in psycopg2-binary==2.9.10 # via sqlalchemy pycryptodome==3.21.0 # via stream-zip -pydantic==2.10.2 +pydantic==2.10.6 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -385,9 +385,9 @@ pydantic==2.10.2 # fastapi # pydantic-extra-types # pydantic-settings -pydantic-core==2.27.1 +pydantic-core==2.27.2 # via pydantic -pydantic-extra-types==2.10.0 +pydantic-extra-types==2.10.2 # via # -r requirements/../../../packages/common-library/requirements/_base.in # -r requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/_base.in @@ -398,17 +398,31 @@ pydantic-extra-types==2.10.0 # -r requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in # -r requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../packages/common-library/requirements/_base.in # -r requirements/../../../packages/settings-library/requirements/../../../packages/common-library/requirements/_base.in -pydantic-settings==2.6.1 +pydantic-settings==2.7.0 # via + # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/postgres-database/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/service-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt + # -c requirements/../../../packages/settings-library/requirements/../../../packages/common-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/service-library/requirements/../../../packages/models-library/requirements/_base.in # -r requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/_base.in # -r requirements/../../../packages/settings-library/requirements/_base.in -pygments==2.18.0 +pygments==2.19.1 # via # nicegui # rich -pyinstrument==5.0.0 +pyinstrument==5.0.1 # via -r requirements/../../../packages/service-library/requirements/_base.in python-dateutil==2.9.0.post0 # via arrow @@ -416,11 +430,11 @@ python-dotenv==1.0.1 # via # pydantic-settings # uvicorn -python-engineio==4.10.1 +python-engineio==4.11.2 # via python-socketio -python-multipart==0.0.17 +python-multipart==0.0.20 # via nicegui -python-socketio==5.11.4 +python-socketio==5.12.1 # via # -r requirements/_base.in # nicegui @@ -486,7 +500,7 @@ rich==13.9.4 # -r requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/_base.in # -r requirements/../../../packages/settings-library/requirements/_base.in # typer -rpds-py==0.21.0 +rpds-py==0.23.1 # via # jsonschema # referencing @@ -494,12 +508,10 @@ shellingham==1.5.4 # via typer simple-websocket==1.1.0 # via python-engineio -six==1.16.0 +six==1.17.0 # via python-dateutil sniffio==1.3.1 - # via - # anyio - # httpx + # via anyio sqlalchemy==1.4.54 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -518,7 +530,7 @@ sqlalchemy==1.4.54 # -c requirements/../../../requirements/constraints.txt # -r requirements/../../../packages/postgres-database/requirements/_base.in # alembic -starlette==0.41.3 +starlette==0.46.0 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -544,17 +556,18 @@ toolz==1.0.0 # via -r requirements/../../../packages/service-library/requirements/_base.in tqdm==4.67.1 # via -r requirements/../../../packages/service-library/requirements/_base.in -typer==0.13.1 +typer==0.15.2 # via # -r requirements/../../../packages/service-library/requirements/../../../packages/settings-library/requirements/_base.in # -r requirements/../../../packages/settings-library/requirements/_base.in # -r requirements/_base.in -types-python-dateutil==2.9.0.20241003 +types-python-dateutil==2.9.0.20241206 # via arrow typing-extensions==4.12.2 # via # aiodebug # alembic + # anyio # fastapi # faststream # nicegui @@ -565,7 +578,7 @@ typing-extensions==4.12.2 # typer u-msgpack-python==2.8.0 # via -r requirements/_base.in -urllib3==2.2.3 +urllib3==2.3.0 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -583,7 +596,7 @@ urllib3==2.2.3 # -c requirements/../../../requirements/constraints.txt # nicegui # requests -uvicorn==0.32.1 +uvicorn==0.34.0 # via # -r requirements/../../../packages/service-library/requirements/_fastapi.in # -r requirements/_base.in @@ -592,13 +605,13 @@ uvloop==0.21.0 # via uvicorn vbuild==0.8.2 # via nicegui -watchfiles==1.0.0 +watchfiles==1.0.4 # via # nicegui # uvicorn -websockets==14.1 +websockets==15.0.1 # via uvicorn -wrapt==1.17.0 +wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation @@ -606,7 +619,7 @@ wrapt==1.17.0 # opentelemetry-instrumentation-redis wsproto==1.2.0 # via simple-websocket -yarl==1.18.0 +yarl==1.18.3 # via # -r requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../packages/service-library/requirements/_base.in diff --git a/services/dynamic-scheduler/requirements/_test.txt b/services/dynamic-scheduler/requirements/_test.txt index 772c1cd3793e..f8ded032d0b0 100644 --- a/services/dynamic-scheduler/requirements/_test.txt +++ b/services/dynamic-scheduler/requirements/_test.txt @@ -1,17 +1,17 @@ -anyio==4.6.2.post1 +anyio==4.8.0 # via # -c requirements/_base.txt # httpx asgi-lifespan==2.1.0 # via -r requirements/_test.in -certifi==2024.8.30 +certifi==2025.1.31 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt # httpcore # httpx # requests -charset-normalizer==3.4.0 +charset-normalizer==3.4.1 # via # -c requirements/_base.txt # requests @@ -21,7 +21,7 @@ coverage==7.6.12 # pytest-cov docker==7.1.0 # via -r requirements/_test.in -faker==36.1.1 +faker==36.2.2 # via -r requirements/_test.in greenlet==3.1.1 # via @@ -41,7 +41,7 @@ httpcore==1.0.7 # via # -c requirements/_base.txt # httpx -httpx==0.27.2 +httpx==0.28.1 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt @@ -112,16 +112,16 @@ sniffio==1.3.1 # -c requirements/_base.txt # anyio # asgi-lifespan - # httpx termcolor==2.5.0 # via pytest-sugar typing-extensions==4.12.2 # via # -c requirements/_base.txt + # anyio # pyee tzdata==2025.1 # via faker -urllib3==2.2.3 +urllib3==2.3.0 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/dynamic-scheduler/requirements/_tools.txt b/services/dynamic-scheduler/requirements/_tools.txt index b945f542a488..3c53f6540c2a 100644 --- a/services/dynamic-scheduler/requirements/_tools.txt +++ b/services/dynamic-scheduler/requirements/_tools.txt @@ -8,7 +8,7 @@ bump2version==1.0.1 # via -r requirements/../../../requirements/devenv.txt cfgv==3.4.0 # via pre-commit -click==8.1.7 +click==8.1.8 # via # -c requirements/_base.txt # black @@ -76,7 +76,7 @@ typing-extensions==4.12.2 # -c requirements/_base.txt # -c requirements/_test.txt # mypy -virtualenv==20.29.2 +virtualenv==20.29.3 # via pre-commit wheel==0.45.1 # via pip-tools From 860be073e15b4922d9eb79b20ea42fd7a593e525 Mon Sep 17 00:00:00 2001 From: Andrei Neagu Date: Fri, 7 Mar 2025 06:57:55 +0100 Subject: [PATCH 2/5] fixed issue --- .../dynamic-scheduler/tests/unit/api_frontend/conftest.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py b/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py index be92830ee54a..dcd1a33aabce 100644 --- a/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py +++ b/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py @@ -19,8 +19,8 @@ from settings_library.rabbit import RabbitSettings from settings_library.redis import RedisSettings from settings_library.utils_service import DEFAULT_FASTAPI_PORT -from simcore_service_dynamic_scheduler.api.frontend._utils import get_settings from simcore_service_dynamic_scheduler.core.application import create_app +from simcore_service_dynamic_scheduler.core.settings import ApplicationSettings from tenacity import AsyncRetrying, stop_after_delay, wait_fixed _MODULE: Final["str"] = "simcore_service_dynamic_scheduler" @@ -93,8 +93,10 @@ async def _run_server() -> None: server_task = asyncio.create_task(_run_server()) + settings: ApplicationSettings = not_initialized_app.state.settings + home_page_url = ( - f"http://{server_host_port}{get_settings().DYNAMIC_SCHEDULER_UI_MOUNT_PATH}" + f"http://{server_host_port}{settings.DYNAMIC_SCHEDULER_UI_MOUNT_PATH}" ) async for attempt in AsyncRetrying( reraise=True, wait=wait_fixed(0.1), stop=stop_after_delay(2) From db55a9a6bf5ffce863fb26f3a9ec0b3345ffc505 Mon Sep 17 00:00:00 2001 From: Andrei Neagu Date: Fri, 7 Mar 2025 07:18:56 +0100 Subject: [PATCH 3/5] fixed tests due to nicegui upgrade --- .../dynamic-scheduler/tests/unit/api_frontend/conftest.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py b/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py index dcd1a33aabce..62f0ea0a2f35 100644 --- a/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py +++ b/services/dynamic-scheduler/tests/unit/api_frontend/conftest.py @@ -8,6 +8,7 @@ from typing import Final from unittest.mock import AsyncMock +import nicegui import pytest from fastapi import FastAPI, status from httpx import AsyncClient @@ -69,6 +70,9 @@ def server_host_port() -> str: @pytest.fixture def not_initialized_app(app_environment: EnvVarsDict) -> FastAPI: + # forces rebuild of middleware stack on next test + nicegui.app.user_middleware.clear() + nicegui.app.middleware_stack = None return create_app() From 3641078d43f7bf9fe9dbc42bc1caf7db9543a4e6 Mon Sep 17 00:00:00 2001 From: Andrei Neagu Date: Fri, 7 Mar 2025 07:28:00 +0100 Subject: [PATCH 4/5] fixed import/initialize issues --- services/dynamic-scheduler/tests/conftest.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/dynamic-scheduler/tests/conftest.py b/services/dynamic-scheduler/tests/conftest.py index 76d091ef3c77..5b2ed7db3617 100644 --- a/services/dynamic-scheduler/tests/conftest.py +++ b/services/dynamic-scheduler/tests/conftest.py @@ -6,6 +6,7 @@ from pathlib import Path from typing import Final +import nicegui import pytest import simcore_service_dynamic_scheduler import yaml @@ -124,6 +125,9 @@ def disable_status_monitor_lifespan(mocker: MockerFixture) -> None: async def app( app_environment: EnvVarsDict, is_pdb_enabled: bool ) -> AsyncIterator[FastAPI]: + # forces rebuild of middleware stack on next test + nicegui.app.user_middleware.clear() + nicegui.app.middleware_stack = None test_app = create_app() async with LifespanManager( test_app, From c452944829613186e2e5ae17ea66c409c481e22e Mon Sep 17 00:00:00 2001 From: Andrei Neagu Date: Fri, 7 Mar 2025 07:43:56 +0100 Subject: [PATCH 5/5] updated specs --- services/dynamic-scheduler/openapi.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/services/dynamic-scheduler/openapi.json b/services/dynamic-scheduler/openapi.json index 0b593da90d14..1f05e29ea25e 100644 --- a/services/dynamic-scheduler/openapi.json +++ b/services/dynamic-scheduler/openapi.json @@ -77,6 +77,9 @@ }, "docs_url": { "type": "string", + "maxLength": 2083, + "minLength": 1, + "format": "uri", "title": "Docs Url" } },