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