diff --git a/guillotina/tests/utils.py b/guillotina/tests/utils.py index 9acd100b8..33e0454ab 100644 --- a/guillotina/tests/utils.py +++ b/guillotina/tests/utils.py @@ -201,6 +201,7 @@ def make_mocked_request( if protocol is sentinel: protocol = mock.Mock() + type(protocol).ssl_context = mock.PropertyMock(return_value=sslcontext) if transport is sentinel: transport = test_utils._create_transport(sslcontext) diff --git a/guillotina/traversal.py b/guillotina/traversal.py index d60de6196..66c652557 100644 --- a/guillotina/traversal.py +++ b/guillotina/traversal.py @@ -160,6 +160,10 @@ def add_app(self, app): def current_app(self): return self._current_app + @current_app.setter + def current_app(self, app): + self._current_app = app + @contextmanager def set_current_app(self, app): assert app in self._apps, "Expected one of the following apps {!r}, got {!r}".format(self._apps, app) @@ -174,6 +178,11 @@ def set_current_app(self, app): def apps(self): return tuple(self._apps) + @property + def route(self): + # aiohttp 3.11+ accesses match_info.route for middleware caching + return None + def freeze(self): self._frozen = True diff --git a/requirements.txt b/requirements.txt index 26afeefd3..65e4eea66 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,10 +1,9 @@ Cython==0.29.34 -aiohttp==3.8.4 +aiohttp==3.13.3 asyncpg==0.29.0 cffi==1.15.1 -chardet==3.0.4 jsonschema==2.6.0 -multidict==4.5.2 +multidict==6.1.0 pycparser==2.18 pycryptodome==3.6.6 PyJWT==2.9.0 @@ -12,10 +11,10 @@ python-dateutil==2.8.2 PyYaml==5.1 six==1.11.0 ujson==1.35 -yarl==1.2.6 +yarl==1.22.0 zope.interface==5.1.0 argon2-cffi==19.2.0 backoff==1.10.0 prometheus-client==0.8.0 brotli==1.1.0 -openapi-spec-validator==0.2.8 +openapi-spec-validator==0.2.8 \ No newline at end of file