diff --git a/pyproject.toml b/pyproject.toml index 275d33a..ed2c9b8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "socketify" -version = "0.0.25" +version = "0.0.26" dynamic = ["dependencies"] authors = [ { name="Ciro Spaciari", email="ciro.spaciari@gmail.com" }, diff --git a/setup.py b/setup.py index a4b4b7f..13a68e1 100644 --- a/setup.py +++ b/setup.py @@ -58,7 +58,7 @@ with open("README.md", "r", encoding="utf-8") as fh: setuptools.setup( name="socketify", - version="0.0.25", + version="0.0.26", platforms=["any"], author="Ciro Spaciari", author_email="ciro.spaciari@gmail.com", diff --git a/src/socketify/tasks.py b/src/socketify/tasks.py index aa6cefc..a32f8a7 100644 --- a/src/socketify/tasks.py +++ b/src/socketify/tasks.py @@ -5,9 +5,9 @@ from asyncio import ( exceptions, futures, _register_task, - # _enter_task, - # current_task, - # _leave_task, + _enter_task, + current_task, + _leave_task, _unregister_task, ) import contextvars @@ -92,6 +92,7 @@ class RequestTask: # status is still pending _log_destroy_pending = True + _parent_task = None def __init__( self, coro, loop, default_done_callback=None, no_register=False, context=None ): @@ -498,6 +499,11 @@ class RequestTask: self._must_cancel = False coro = self._coro self._fut_waiter = None + + # _parent_task = current_task(self._loop) + # if _parent_task is not None: + # _leave_task(self._loop, _parent_task) + # self._parent_task = _parent_task # _enter_task(self._loop, self) # Call either coro.throw(exc) or coro.send(None). try: @@ -569,6 +575,9 @@ class RequestTask: self._loop.call_soon(self.__step, new_exc, context=self._context) finally: # _leave_task(self._loop, self) + # if self._parent_task is not None: + # _enter_task(self._loop, self._parent_task) + # self._parent_task = None self = None # Needed to break cycles when an exception occurs. def __wakeup(self, future):