diff --git a/api/tests/requirements.txt b/api/tests/requirements.txt index 1bbadfb1796b..c6fecb4c6f4f 100644 --- a/api/tests/requirements.txt +++ b/api/tests/requirements.txt @@ -1,6 +1,6 @@ aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c ../../requirements/constraints.txt # -r requirements.in diff --git a/ci/helpers/requirements/requirements.txt b/ci/helpers/requirements/requirements.txt index a0c85e922fba..f6b4cef02852 100644 --- a/ci/helpers/requirements/requirements.txt +++ b/ci/helpers/requirements/requirements.txt @@ -1,4 +1,6 @@ -aiohttp==3.9.5 +aiohappyeyeballs==2.6.1 + # via aiohttp +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -r requirements/requirements.in @@ -33,6 +35,10 @@ multidict==6.0.5 # via # aiohttp # yarl +propcache==0.3.1 + # via + # aiohttp + # yarl pydantic==2.10.5 # via # -c requirements/../../../requirements/constraints.txt @@ -57,5 +63,5 @@ urllib3==2.3.0 # -c requirements/../../../requirements/constraints.txt # docker # requests -yarl==1.9.4 +yarl==1.20.0 # via aiohttp diff --git a/packages/aws-library/requirements/_base.txt b/packages/aws-library/requirements/_base.txt index 4834672e6186..a9140269b7d3 100644 --- a/packages/aws-library/requirements/_base.txt +++ b/packages/aws-library/requirements/_base.txt @@ -18,7 +18,7 @@ aiofiles==24.1.0 # aioboto3 aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/packages/notifications-library/requirements/_test.txt b/packages/notifications-library/requirements/_test.txt index 53aa4b19cad2..f7c0476d7962 100644 --- a/packages/notifications-library/requirements/_test.txt +++ b/packages/notifications-library/requirements/_test.txt @@ -2,7 +2,7 @@ aiodocker==0.24.0 # via -r requirements/_test.in aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # aiodocker diff --git a/packages/service-library/requirements/_aiohttp.txt b/packages/service-library/requirements/_aiohttp.txt index 345626fc06bf..e0134b56569b 100644 --- a/packages/service-library/requirements/_aiohttp.txt +++ b/packages/service-library/requirements/_aiohttp.txt @@ -1,6 +1,6 @@ aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/packages/service-library/requirements/_base.txt b/packages/service-library/requirements/_base.txt index 598db33e9949..4a34a20926cc 100644 --- a/packages/service-library/requirements/_base.txt +++ b/packages/service-library/requirements/_base.txt @@ -10,7 +10,7 @@ aiofiles==24.1.0 # via -r requirements/_base.in aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/packages/service-library/requirements/_test.txt b/packages/service-library/requirements/_test.txt index 67f982dff88c..6961302ed027 100644 --- a/packages/service-library/requirements/_test.txt +++ b/packages/service-library/requirements/_test.txt @@ -3,7 +3,7 @@ aiohappyeyeballs==2.4.6 # -c requirements/_aiohttp.txt # -c requirements/_base.txt # aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_aiohttp.txt diff --git a/packages/service-library/src/servicelib/aiohttp/rest_middlewares.py b/packages/service-library/src/servicelib/aiohttp/rest_middlewares.py index 8fdf88544982..423965e2d9fb 100644 --- a/packages/service-library/src/servicelib/aiohttp/rest_middlewares.py +++ b/packages/service-library/src/servicelib/aiohttp/rest_middlewares.py @@ -5,7 +5,7 @@ import logging from collections.abc import Awaitable, Callable -from typing import Any, Union +from typing import Any from aiohttp import web from aiohttp.web_request import Request @@ -37,7 +37,7 @@ def is_api_request(request: web.Request, api_version: str) -> bool: return bool(request.path.startswith(base_path)) -def error_middleware_factory( +def error_middleware_factory( # noqa: C901 api_version: str, ) -> Middleware: _is_prod: bool = is_production_environ() @@ -69,7 +69,7 @@ def _process_and_raise_unexpected_error(request: web.BaseRequest, err: Exception raise http_error @web.middleware - async def _middleware_handler(request: web.Request, handler: Handler): + async def _middleware_handler(request: web.Request, handler: Handler): # noqa: C901 """ Ensure all error raised are properly enveloped and json responses """ @@ -147,12 +147,14 @@ async def _middleware_handler(request: web.Request, handler: Handler): return _middleware_handler -_ResponseOrBodyData = Union[StreamResponse, Any] +_ResponseOrBodyData = StreamResponse | Any HandlerFlexible = Callable[[Request], Awaitable[_ResponseOrBodyData]] MiddlewareFlexible = Callable[[Request, HandlerFlexible], Awaitable[StreamResponse]] -def envelope_middleware_factory(api_version: str) -> MiddlewareFlexible: +def envelope_middleware_factory( + api_version: str, +) -> Callable[..., Awaitable[StreamResponse]]: # FIXME: This data conversion is very error-prone. Use decorators instead! _is_prod: bool = is_production_environ() @@ -197,4 +199,4 @@ def append_rest_middlewares( ): """Helper that appends rest-middlewares in the correct order""" app.middlewares.append(error_middleware_factory(api_version)) - app.middlewares.append(envelope_middleware_factory(api_version)) # type: ignore[arg-type] + app.middlewares.append(envelope_middleware_factory(api_version)) diff --git a/packages/service-library/src/servicelib/docker_utils.py b/packages/service-library/src/servicelib/docker_utils.py index 98c897e3eca4..552a6d936047 100644 --- a/packages/service-library/src/servicelib/docker_utils.py +++ b/packages/service-library/src/servicelib/docker_utils.py @@ -124,7 +124,7 @@ def get_image_complete_url( # NOTE: entries like nginx:latest or ngingx:1.3 will raise an exception here url = URL(f"https://{image}") assert url.host # nosec - if not url.port or "." not in url.host: + if not url.port or ("." not in f"{url.host}"): # this is Dockerhub + official images are in /library url = _create_docker_hub_complete_url(image) except ValueError: diff --git a/packages/simcore-sdk/requirements/_base.txt b/packages/simcore-sdk/requirements/_base.txt index 16690f9cea44..203d56394823 100644 --- a/packages/simcore-sdk/requirements/_base.txt +++ b/packages/simcore-sdk/requirements/_base.txt @@ -14,7 +14,7 @@ aiofiles==24.1.0 # -r requirements/_base.in aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/packages/simcore-sdk/requirements/_test.txt b/packages/simcore-sdk/requirements/_test.txt index 4526ce1b63b7..37933e80c6c5 100644 --- a/packages/simcore-sdk/requirements/_test.txt +++ b/packages/simcore-sdk/requirements/_test.txt @@ -10,7 +10,7 @@ aiohappyeyeballs==2.4.6 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/packages/simcore-sdk/src/simcore_sdk/node_ports_common/_filemanager_utils.py b/packages/simcore-sdk/src/simcore_sdk/node_ports_common/_filemanager_utils.py index 08bd0a8cf97a..484380fded76 100644 --- a/packages/simcore-sdk/src/simcore_sdk/node_ports_common/_filemanager_utils.py +++ b/packages/simcore-sdk/src/simcore_sdk/node_ports_common/_filemanager_utils.py @@ -48,8 +48,8 @@ def _get_https_link_if_storage_secure(url: str) -> str: # DY-SIDECAR (simcore-sdk) -> STORAGE (httpS requests) # https://github.com/ITISFoundation/osparc-simcore/issues/5390 parsed_url = URL(url) - if is_storage_secure() and parsed_url.scheme != "https": - return f'{parsed_url.with_scheme("https")}' + if bool(is_storage_secure()): + return f"{parsed_url.with_scheme('https')}" return url diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 204b2f7572d3..16fb75bc4794 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -9,7 +9,7 @@ # # Vulnerabilities ----------------------------------------------------------------------------------------- # -aiohttp>=3.7.4 # https://github.com/advisories/GHSA-v6wp-4m6f-gcjg +aiohttp>=3.7.4, !=3.11.13 # https://github.com/advisories/GHSA-v6wp-4m6f-gcjg, 3.11.13 was yanked https://github.com/aio-libs/aiohttp/issues/10617 certifi>=2023.7.22 # https://github.com/advisories/GHSA-xqr8-7jwr-rhp7 cryptography>=41.0.6 # https://github.com/advisories/GHSA-v8gr-m533-ghj9 httpx>=0.23.0 # https://github.com/advisories/GHSA-h8pj-cxx2-jfg2 / CVE-2021-41945 diff --git a/services/agent/requirements/_base.txt b/services/agent/requirements/_base.txt index be74471a8763..11c43e63206b 100644 --- a/services/agent/requirements/_base.txt +++ b/services/agent/requirements/_base.txt @@ -12,7 +12,7 @@ aiofiles==24.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in aiohappyeyeballs==2.5.0 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/agent/requirements/_test.txt b/services/agent/requirements/_test.txt index 0ebac574bac7..919390224e5b 100644 --- a/services/agent/requirements/_test.txt +++ b/services/agent/requirements/_test.txt @@ -10,7 +10,7 @@ aiohappyeyeballs==2.5.0 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/api-server/requirements/_base.txt b/services/api-server/requirements/_base.txt index 806e91abc2ea..5a7695ce29a9 100644 --- a/services/api-server/requirements/_base.txt +++ b/services/api-server/requirements/_base.txt @@ -23,7 +23,7 @@ aiofiles==24.1.0 # -r requirements/_base.in aiohappyeyeballs==2.4.4 # via aiohttp -aiohttp==3.11.10 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/api-server/requirements/_test.txt b/services/api-server/requirements/_test.txt index b0708a30202e..957df7471874 100644 --- a/services/api-server/requirements/_test.txt +++ b/services/api-server/requirements/_test.txt @@ -2,7 +2,7 @@ aiohappyeyeballs==2.4.4 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.10 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/autoscaling/requirements/_base.txt b/services/autoscaling/requirements/_base.txt index f9cbe95c27c9..efb32f5b2b40 100644 --- a/services/autoscaling/requirements/_base.txt +++ b/services/autoscaling/requirements/_base.txt @@ -28,7 +28,7 @@ aiofiles==24.1.0 # aioboto3 aiohappyeyeballs==2.4.4 # via aiohttp -aiohttp==3.11.10 +aiohttp==3.11.18 # via # -c requirements/../../../packages/aws-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/aws-library/requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/catalog/requirements/_base.txt b/services/catalog/requirements/_base.txt index f003df17d88d..1ec6f75dac7a 100644 --- a/services/catalog/requirements/_base.txt +++ b/services/catalog/requirements/_base.txt @@ -12,7 +12,7 @@ aiofiles==24.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in aiohappyeyeballs==2.6.1 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/catalog/requirements/_test.txt b/services/catalog/requirements/_test.txt index 4507c72f4c6b..40781a24dfb3 100644 --- a/services/catalog/requirements/_test.txt +++ b/services/catalog/requirements/_test.txt @@ -2,7 +2,7 @@ aiohappyeyeballs==2.6.1 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/clusters-keeper/requirements/_base.txt b/services/clusters-keeper/requirements/_base.txt index fb84b2d55cfd..a3a7859e4689 100644 --- a/services/clusters-keeper/requirements/_base.txt +++ b/services/clusters-keeper/requirements/_base.txt @@ -26,7 +26,7 @@ aiofiles==24.1.0 # aioboto3 aiohappyeyeballs==2.4.4 # via aiohttp -aiohttp==3.11.10 +aiohttp==3.11.18 # via # -c requirements/../../../packages/aws-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/aws-library/requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/clusters-keeper/requirements/_test.txt b/services/clusters-keeper/requirements/_test.txt index ec30974581e3..7d9cea7f2b78 100644 --- a/services/clusters-keeper/requirements/_test.txt +++ b/services/clusters-keeper/requirements/_test.txt @@ -6,7 +6,7 @@ aiohappyeyeballs==2.4.4 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.10 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/dask-sidecar/requirements/_base.txt b/services/dask-sidecar/requirements/_base.txt index f59d2014f251..1f8c1363f024 100644 --- a/services/dask-sidecar/requirements/_base.txt +++ b/services/dask-sidecar/requirements/_base.txt @@ -16,7 +16,7 @@ aiofiles==24.1.0 # -r requirements/_base.in aiohappyeyeballs==2.4.4 # via aiohttp -aiohttp==3.11.10 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/dask-task-models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/datcore-adapter/requirements/_base.txt b/services/datcore-adapter/requirements/_base.txt index 20ad90c81173..fe75179d8458 100644 --- a/services/datcore-adapter/requirements/_base.txt +++ b/services/datcore-adapter/requirements/_base.txt @@ -12,7 +12,9 @@ aiofiles==23.2.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/_base.in -aiohttp==3.9.3 +aiohappyeyeballs==2.6.1 + # via aiohttp +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -270,6 +272,10 @@ prometheus-client==0.20.0 # prometheus-fastapi-instrumentator prometheus-fastapi-instrumentator==6.1.0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in +propcache==0.3.1 + # via + # aiohttp + # yarl protobuf==4.25.4 # via # googleapis-common-protos @@ -494,7 +500,7 @@ wrapt==1.16.0 # deprecated # opentelemetry-instrumentation # opentelemetry-instrumentation-redis -yarl==1.9.4 +yarl==1.20.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # aio-pika diff --git a/services/director-v2/requirements/_base.txt b/services/director-v2/requirements/_base.txt index a5ea32be6990..f048b5f73af2 100644 --- a/services/director-v2/requirements/_base.txt +++ b/services/director-v2/requirements/_base.txt @@ -25,7 +25,7 @@ aiofiles==24.1.0 # -r requirements/../../../packages/simcore-sdk/requirements/_base.in aiohappyeyeballs==2.5.0 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/dask-task-models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/director-v2/requirements/_test.txt b/services/director-v2/requirements/_test.txt index e572ea1f8b5b..6c006fe3205c 100644 --- a/services/director-v2/requirements/_test.txt +++ b/services/director-v2/requirements/_test.txt @@ -14,7 +14,7 @@ aiohappyeyeballs==2.5.0 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/director/requirements/_base.txt b/services/director/requirements/_base.txt index f0a9700476ea..92c6bdb2a1e8 100644 --- a/services/director/requirements/_base.txt +++ b/services/director/requirements/_base.txt @@ -14,7 +14,7 @@ aiofiles==24.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in aiohappyeyeballs==2.4.3 # via aiohttp -aiohttp==3.11.1 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/director/requirements/_test.txt b/services/director/requirements/_test.txt index 76200593ee1a..e636c947e3dd 100644 --- a/services/director/requirements/_test.txt +++ b/services/director/requirements/_test.txt @@ -2,7 +2,7 @@ aiohappyeyeballs==2.4.3 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.1 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/docker-api-proxy/requirements/_test.txt b/services/docker-api-proxy/requirements/_test.txt index a30e184bfa91..438d2c6ac098 100644 --- a/services/docker-api-proxy/requirements/_test.txt +++ b/services/docker-api-proxy/requirements/_test.txt @@ -12,7 +12,7 @@ aiofiles==24.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/dynamic-scheduler/requirements/_base.txt b/services/dynamic-scheduler/requirements/_base.txt index cf0ac62a6085..6b3c54c64f82 100644 --- a/services/dynamic-scheduler/requirements/_base.txt +++ b/services/dynamic-scheduler/requirements/_base.txt @@ -12,7 +12,7 @@ aiofiles==24.1.0 # nicegui aiohappyeyeballs==2.5.0 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/dynamic-sidecar/requirements/_base.txt b/services/dynamic-sidecar/requirements/_base.txt index 5ff8a3fc5ea6..c74f2aa223e4 100644 --- a/services/dynamic-sidecar/requirements/_base.txt +++ b/services/dynamic-sidecar/requirements/_base.txt @@ -25,7 +25,7 @@ aiofiles==24.1.0 # -r requirements/_base.in aiohappyeyeballs==2.5.0 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/dynamic-sidecar/requirements/_test.txt b/services/dynamic-sidecar/requirements/_test.txt index 056bff46d247..9683064e14ee 100644 --- a/services/dynamic-sidecar/requirements/_test.txt +++ b/services/dynamic-sidecar/requirements/_test.txt @@ -10,7 +10,7 @@ aiohappyeyeballs==2.5.0 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/efs-guardian/requirements/_base.txt b/services/efs-guardian/requirements/_base.txt index 11e62cdfdf1b..6333e720eac7 100644 --- a/services/efs-guardian/requirements/_base.txt +++ b/services/efs-guardian/requirements/_base.txt @@ -26,7 +26,7 @@ aiofiles==24.1.0 # aioboto3 aiohappyeyeballs==2.4.3 # via aiohttp -aiohttp==3.10.10 +aiohttp==3.11.18 # via # -c requirements/../../../packages/aws-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/aws-library/requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -417,8 +417,10 @@ prometheus-client==0.21.0 # prometheus-fastapi-instrumentator prometheus-fastapi-instrumentator==6.1.0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -propcache==0.2.0 - # via yarl +propcache==0.3.1 + # via + # aiohttp + # yarl protobuf==4.25.5 # via # googleapis-common-protos @@ -820,7 +822,7 @@ wrapt==1.16.0 # deprecated # opentelemetry-instrumentation # opentelemetry-instrumentation-redis -yarl==1.15.4 +yarl==1.20.0 # via # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/postgres-database/requirements/_base.in diff --git a/services/efs-guardian/requirements/_test.txt b/services/efs-guardian/requirements/_test.txt index 60859c73d83d..d31b4fbb511d 100644 --- a/services/efs-guardian/requirements/_test.txt +++ b/services/efs-guardian/requirements/_test.txt @@ -6,7 +6,7 @@ aiohappyeyeballs==2.4.3 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.10.10 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt @@ -198,9 +198,10 @@ pluggy==1.5.0 # via pytest ply==3.11 # via jsonpath-ng -propcache==0.2.0 +propcache==0.3.1 # via # -c requirements/_base.txt + # aiohttp # yarl psutil==6.1.0 # via @@ -337,7 +338,7 @@ wrapt==1.16.0 # aws-xray-sdk xmltodict==0.14.2 # via moto -yarl==1.15.4 +yarl==1.20.0 # via # -c requirements/_base.txt # aiohttp diff --git a/services/invitations/requirements/_base.txt b/services/invitations/requirements/_base.txt index 5940608f49a9..7782b5b9799b 100644 --- a/services/invitations/requirements/_base.txt +++ b/services/invitations/requirements/_base.txt @@ -10,7 +10,7 @@ aiofiles==24.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in aiohappyeyeballs==2.6.1 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/notifications/requirements/_base.txt b/services/notifications/requirements/_base.txt index 3e5d8ce47dd2..8b48b47bfb69 100644 --- a/services/notifications/requirements/_base.txt +++ b/services/notifications/requirements/_base.txt @@ -10,7 +10,7 @@ aiofiles==24.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in aiohappyeyeballs==2.6.1 # via aiohttp -aiohttp==3.11.14 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/payments/requirements/_base.txt b/services/payments/requirements/_base.txt index 0d9c9bb03a57..db10f20ca989 100644 --- a/services/payments/requirements/_base.txt +++ b/services/payments/requirements/_base.txt @@ -10,7 +10,7 @@ aiofiles==24.1.0 # via -r requirements/../../../packages/service-library/requirements/_base.in aiohappyeyeballs==2.4.3 # via aiohttp -aiohttp==3.11.8 +aiohttp==3.11.18 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/payments/requirements/_test.txt b/services/payments/requirements/_test.txt index 011201390a51..93a17917d9e8 100644 --- a/services/payments/requirements/_test.txt +++ b/services/payments/requirements/_test.txt @@ -2,7 +2,7 @@ aiohappyeyeballs==2.4.3 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.8 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/payments/tests/unit/test_services_payments_gateway.py b/services/payments/tests/unit/test_services_payments_gateway.py index 37350508929b..2fa8ebd5d03f 100644 --- a/services/payments/tests/unit/test_services_payments_gateway.py +++ b/services/payments/tests/unit/test_services_payments_gateway.py @@ -8,6 +8,7 @@ import pytest from faker import Faker from fastapi import FastAPI, status +from httpx import URL as HttpxURL from httpx import ASGITransport from models_library.payments import UserInvoiceAddress from pytest_simcore.helpers.monkeypatch_envs import EnvVarsDict, setenvs_from_dict @@ -122,7 +123,11 @@ async def test_one_time_payment_workflow( ) app_settings: ApplicationSettings = app.state.settings - assert submission_link.host == URL(f"{app_settings.PAYMENTS_GATEWAY_URL}").host + assert isinstance(submission_link, HttpxURL) + assert ( + URL(f"{submission_link}").host + == URL(f"{app_settings.PAYMENTS_GATEWAY_URL}").host + ) # cancel payment_canceled = await payment_gateway_api.cancel_payment(payment_initiated) @@ -161,7 +166,8 @@ async def test_payment_methods_workflow( ) app_settings: ApplicationSettings = app.state.settings - assert form_link.host == URL(f"{app_settings.PAYMENTS_GATEWAY_URL}").host + assert isinstance(form_link, HttpxURL) + assert URL(f"{form_link}").host == URL(f"{app_settings.PAYMENTS_GATEWAY_URL}").host # CRUD payment_method_id = initiated.payment_method_id diff --git a/services/resource-usage-tracker/requirements/_base.txt b/services/resource-usage-tracker/requirements/_base.txt index eb25cc58c01d..ea8e5cfedbcf 100644 --- a/services/resource-usage-tracker/requirements/_base.txt +++ b/services/resource-usage-tracker/requirements/_base.txt @@ -25,7 +25,9 @@ aiofiles==23.2.1 # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/service-library/requirements/_base.in # aioboto3 -aiohttp==3.9.3 +aiohappyeyeballs==2.6.1 + # via aiohttp +aiohttp==3.11.18 # via # -c requirements/../../../packages/aws-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/aws-library/requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -447,6 +449,10 @@ prometheus-client==0.20.0 # prometheus-fastapi-instrumentator prometheus-fastapi-instrumentator==6.1.0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in +propcache==0.3.1 + # via + # aiohttp + # yarl protobuf==4.25.4 # via # googleapis-common-protos @@ -881,7 +887,7 @@ wrapt==1.16.0 # deprecated # opentelemetry-instrumentation # opentelemetry-instrumentation-redis -yarl==1.9.4 +yarl==1.20.0 # via # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/postgres-database/requirements/_base.in diff --git a/services/storage/requirements/_base.txt b/services/storage/requirements/_base.txt index f5eea0f34d05..2a693e903c8e 100644 --- a/services/storage/requirements/_base.txt +++ b/services/storage/requirements/_base.txt @@ -29,7 +29,7 @@ aiofiles==24.1.0 # aioboto3 aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.12 +aiohttp==3.11.18 # via # -c requirements/../../../packages/aws-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/aws-library/requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt diff --git a/services/storage/requirements/_test.txt b/services/storage/requirements/_test.txt index 221cc0b62eec..9d9ea51915ac 100644 --- a/services/storage/requirements/_test.txt +++ b/services/storage/requirements/_test.txt @@ -2,7 +2,7 @@ aiohappyeyeballs==2.4.6 # via # -c requirements/_base.txt # aiohttp -aiohttp==3.11.12 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -c requirements/_base.txt diff --git a/services/web/server/requirements/_base.txt b/services/web/server/requirements/_base.txt index 47c5f69c36eb..40c7857d6a13 100644 --- a/services/web/server/requirements/_base.txt +++ b/services/web/server/requirements/_base.txt @@ -25,7 +25,9 @@ aiofiles==0.8.0 # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/_base.in # -r requirements/_base.in -aiohttp==3.8.5 +aiohappyeyeballs==2.6.1 + # via aiohttp +aiohttp==3.11.18 # via # -c requirements/../../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -112,9 +114,7 @@ arrow==1.2.3 # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../packages/models-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in async-timeout==4.0.3 - # via - # aiohttp - # aiopg + # via aiopg asyncpg==0.27.0 # via # -r requirements/_base.in @@ -172,9 +172,7 @@ certifi==2023.7.22 cffi==1.17.1 # via cryptography charset-normalizer==2.0.12 - # via - # aiohttp - # requests + # via requests click==8.1.3 # via typer cryptography==41.0.7 @@ -592,6 +590,10 @@ pint==0.24.3 # -r requirements/_base.in prometheus-client==0.14.1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in +propcache==0.3.1 + # via + # aiohttp + # yarl protobuf==4.25.4 # via # googleapis-common-protos @@ -1030,7 +1032,7 @@ wrapt==1.16.0 # opentelemetry-instrumentation-aiopg # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-redis -yarl==1.9.4 +yarl==1.20.0 # via # -c requirements/./constraints.txt # -r requirements/../../../../packages/notifications-library/requirements/../../../packages/postgres-database/requirements/_base.in diff --git a/services/web/server/requirements/_test.txt b/services/web/server/requirements/_test.txt index 256b7662b207..be28ea0836aa 100644 --- a/services/web/server/requirements/_test.txt +++ b/services/web/server/requirements/_test.txt @@ -1,4 +1,8 @@ -aiohttp==3.8.5 +aiohappyeyeballs==2.6.1 + # via + # -c requirements/_base.txt + # aiohttp +aiohttp==3.11.18 # via # -c requirements/../../../../requirements/constraints.txt # -c requirements/_base.txt @@ -24,10 +28,6 @@ anyio==4.3.0 # httpx # starlette # watchfiles -async-timeout==4.0.3 - # via - # -c requirements/_base.txt - # aiohttp asyncpg==0.27.0 # via # -c requirements/_base.txt @@ -52,7 +52,6 @@ certifi==2023.7.22 charset-normalizer==2.0.12 # via # -c requirements/_base.txt - # aiohttp # requests click==8.1.3 # via @@ -182,6 +181,11 @@ pluggy==1.5.0 # via pytest pprintpp==0.4.0 # via pytest-icdiff +propcache==0.3.1 + # via + # -c requirements/_base.txt + # aiohttp + # yarl py-cpuinfo==9.0.0 # via pytest-benchmark pydantic==2.10.2 @@ -358,7 +362,7 @@ websockets==15.0 # via # -r requirements/_test.in # uvicorn -yarl==1.9.4 +yarl==1.20.0 # via # -c requirements/_base.txt # aiohttp diff --git a/services/web/server/src/simcore_service_webserver/session/plugin.py b/services/web/server/src/simcore_service_webserver/session/plugin.py index d971f3c169b4..702c5df40dff 100644 --- a/services/web/server/src/simcore_service_webserver/session/plugin.py +++ b/services/web/server/src/simcore_service_webserver/session/plugin.py @@ -1,6 +1,4 @@ -""" user's session plugin - -""" +"""user's session plugin""" import logging @@ -43,4 +41,4 @@ def setup_session(app: web.Application): samesite=settings.SESSION_COOKIE_SAMESITE, ) aiohttp_session.setup(app=app, storage=encrypted_cookie_sessions) - app.middlewares[-1].__middleware_name__ = f"{__name__}.session" # type: ignore[union-attr] # PC this attribute does not exist and mypy does not like it + app.middlewares[-1].__middleware_name__ = f"{__name__}.session" # type: ignore[attr-defined] # PC this attribute does not exist and mypy does not like it diff --git a/services/web/server/src/simcore_service_webserver/studies_dispatcher/_constants.py b/services/web/server/src/simcore_service_webserver/studies_dispatcher/_constants.py index ed596b9f1fa8..b36820434b00 100644 --- a/services/web/server/src/simcore_service_webserver/studies_dispatcher/_constants.py +++ b/services/web/server/src/simcore_service_webserver/studies_dispatcher/_constants.py @@ -18,8 +18,8 @@ ) MSG_GUESTS_NOT_ALLOWED: Final[str] = ( - "Access restricted to registered users.\n" - "If you don't have an account, please email to support and request one\n" + "Access restricted to registered users.

" + "If you don't have an account, please email to support and request one

" ) MSG_TOO_MANY_GUESTS: Final[str] = ( diff --git a/services/web/server/tests/unit/isolated/test_application_settings.py b/services/web/server/tests/unit/isolated/test_application_settings.py index 3d8c0c8002d3..22c8a2102013 100644 --- a/services/web/server/tests/unit/isolated/test_application_settings.py +++ b/services/web/server/tests/unit/isolated/test_application_settings.py @@ -145,6 +145,7 @@ class DevSettings(ApplicationSettings): assert settings.TEST_BAR is None +@pytest.mark.filterwarnings("ignore::aiohttp.web_exceptions.NotAppKeyWarning") @pytest.mark.filterwarnings("error") def test_avoid_sensitive_info_in_public(app_settings: ApplicationSettings): # avoids display of sensitive info diff --git a/services/web/server/tests/unit/with_dbs/03/login/test_login_change_email.py b/services/web/server/tests/unit/with_dbs/03/login/test_login_change_email.py index 045dce69c02a..ce08c455852a 100644 --- a/services/web/server/tests/unit/with_dbs/03/login/test_login_change_email.py +++ b/services/web/server/tests/unit/with_dbs/03/login/test_login_change_email.py @@ -80,7 +80,7 @@ async def test_change_and_confirm( login_url = client.app.router["auth_login"].url_for() logout_url = client.app.router["auth_logout"].url_for() - assert index_url.path == URL(login_options.LOGIN_REDIRECT).path + assert URL(f"{index_url}").path == URL(login_options.LOGIN_REDIRECT).path async with LoggedUser(client) as user: # request change email diff --git a/tests/public-api/requirements/_test.txt b/tests/public-api/requirements/_test.txt index dec101da0806..95e13d0874d5 100644 --- a/tests/public-api/requirements/_test.txt +++ b/tests/public-api/requirements/_test.txt @@ -2,7 +2,7 @@ aiodocker==0.24.0 # via -r requirements/_test.in aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../requirements/constraints.txt # -r requirements/_test.in diff --git a/tests/swarm-deploy/requirements/_test.txt b/tests/swarm-deploy/requirements/_test.txt index 0aec051d9f7a..23ecb5c4c51a 100644 --- a/tests/swarm-deploy/requirements/_test.txt +++ b/tests/swarm-deploy/requirements/_test.txt @@ -24,7 +24,7 @@ aiofiles==24.1.0 # -r requirements/../../../packages/simcore-sdk/requirements/_base.in aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.13 +aiohttp==3.11.18 # via # -c requirements/../../../packages/models-library/requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt