ez-a-sync 0.24.14__tar.gz → 0.24.16__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ez-a-sync might be problematic. Click here for more details.
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/PKG-INFO +1 -1
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/_smart.py +2 -3
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_flags.c +676 -149
- ez_a_sync-0.24.16/a_sync/a_sync/_flags.pxd +3 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_flags.pyx +7 -2
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_kwargs.c +286 -790
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_kwargs.pyx +4 -12
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/abstract.c +722 -1089
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/abstract.pyx +34 -41
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/base.c +1127 -1628
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/base.pyx +30 -41
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/function.c +5 -5
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/function.pyx +1 -1
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/method.c +1055 -920
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/method.pyx +13 -9
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/property.c +2100 -1961
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/property.pyx +21 -17
- ez_a_sync-0.24.16/a_sync/asyncio/as_completed.pyi +109 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/gather.c +7 -7
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/gather.pyx +1 -1
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_debug.c +62 -62
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_debug.pyx +8 -8
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_loggable.c +8 -7
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_loggable.pxd +1 -1
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_loggable.pyx +1 -1
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/counter.c +9 -8
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/counter.pxd +1 -1
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/counter.pyx +1 -1
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/prio_semaphore.c +1396 -1090
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/prio_semaphore.pyx +32 -19
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/task.py +57 -36
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/utils/iterators.py +16 -8
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/ez_a_sync.egg-info/PKG-INFO +1 -1
- ez_a_sync-0.24.14/a_sync/a_sync/_flags.pxd +0 -1
- ez_a_sync-0.24.14/a_sync/asyncio/as_completed.pyi +0 -14
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.coverage +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.github/workflows/black.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.github/workflows/codeql.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.github/workflows/docs.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.github/workflows/mypy.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.github/workflows/pytest.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.github/workflows/release.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.gitignore +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/.sourcery.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/LICENSE.txt +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/MANIFEST.in +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/Makefile +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/README.md +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/TODO +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/ENVIRONMENT_VARIABLES.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/__init__.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/_typing.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_descriptor.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_helpers.c +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_helpers.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_helpers.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_helpers.pyx +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_kwargs.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/_meta.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/abstract.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/base.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/config.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/decorator.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/flags.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/function.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/method.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/method.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/cache/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/cache/memory.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/limiter.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/manager.c +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/manager.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/manager.pyx +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/modifiers/semaphores.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/property.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/a_sync/singleton.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/aliases.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/as_completed.c +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/as_completed.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/as_completed.pyx +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/create_task.c +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/create_task.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/create_task.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/create_task.pyx +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/asyncio/gather.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/exceptions.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/executor.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/future.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/iter.c +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/iter.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/iter.pyx +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/__init__.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_debug.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_debug.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/_loggable.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/__init__.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/counter.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/event.c +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/event.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/event.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/event.pyx +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/prio_semaphore.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/prio_semaphore.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/semaphore.c +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/semaphore.pxd +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/semaphore.pyi +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/locks/semaphore.pyx +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/primitives/queue.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/py.typed +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/sphinx/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/sphinx/ext.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/a_sync/utils/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/Makefile +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/alabaster.css +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/basic.css +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/custom.css +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/doctools.js +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/documentation_options.js +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/file.png +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/language_data.js +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/minus.png +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/plus.png +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/pygments.css +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/searchtools.js +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/_build/html/_static/sphinx_highlight.js +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/conf.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/index.rst +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/docs/make.bat +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/ez_a_sync.egg-info/SOURCES.txt +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/ez_a_sync.egg-info/dependency_links.txt +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/ez_a_sync.egg-info/not-zip-safe +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/ez_a_sync.egg-info/requires.txt +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/ez_a_sync.egg-info/top_level.txt +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/pyproject.yaml +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/requirements-dev.txt +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/requirements.txt +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/setup.cfg +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/setup.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/__init__.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_abstract.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_base.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_cache.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_decorator.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_limiter.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_meta.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_modified.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/a_sync/test_singleton.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/asyncio/test_as_completed.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/asyncio/test_create_task.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/asyncio/test_gather.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/conftest.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/executor.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/fixtures.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/primitives/test_counter.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/primitives/test_event.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/primitives/test_prio_semaphore.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/primitives/test_queue.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/primitives/test_semaphore.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/task/test_task.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/task/test_task_mapping_views.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/test_executor.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/test_future.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/test_helpers.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/test_iter.py +0 -0
- {ez_a_sync-0.24.14 → ez_a_sync-0.24.16}/tests/test_smart.py +0 -0
|
@@ -6,7 +6,6 @@ to protect tasks from cancellation.
|
|
|
6
6
|
"""
|
|
7
7
|
|
|
8
8
|
import asyncio
|
|
9
|
-
import contextvars
|
|
10
9
|
import logging
|
|
11
10
|
import warnings
|
|
12
11
|
import weakref
|
|
@@ -198,7 +197,7 @@ class SmartFuture(_SmartFutureMixin[T], asyncio.Future):
|
|
|
198
197
|
if key:
|
|
199
198
|
self._key = key
|
|
200
199
|
self._waiters = weakref.WeakSet()
|
|
201
|
-
self.
|
|
200
|
+
self.add_done_callback(SmartFuture._self_done_cleanup_callback)
|
|
202
201
|
|
|
203
202
|
def __repr__(self):
|
|
204
203
|
return f"<{type(self).__name__} key={self._key} waiters={self.num_waiters} {self._state}>"
|
|
@@ -299,7 +298,7 @@ class SmartTask(_SmartFutureMixin[T], asyncio.Task):
|
|
|
299
298
|
"""
|
|
300
299
|
asyncio.Task.__init__(self, coro, loop=loop, name=name)
|
|
301
300
|
self._waiters: Set["asyncio.Task[T]"] = set()
|
|
302
|
-
self.
|
|
301
|
+
self.add_done_callback(SmartTask._self_done_cleanup_callback)
|
|
303
302
|
|
|
304
303
|
|
|
305
304
|
def smart_task_factory(
|