aiomisc 17.7.7__tar.gz → 17.7.8__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.
- {aiomisc-17.7.7 → aiomisc-17.7.8}/PKG-INFO +1 -1
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/iterator_wrapper.py +6 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/utils.py +4 -1
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/version.py +2 -2
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/worker_pool.py +1 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/pyproject.toml +1 -1
- {aiomisc-17.7.7 → aiomisc-17.7.8}/COPYING +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/README.rst +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/__init__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/_context_vars.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/aggregate.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/backoff.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/circuit_breaker.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/compat.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/context.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/counters.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/cron.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/entrypoint.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/io.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/log.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/periodic.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/plugins/__init__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/plugins/__main__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/pool.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/process_pool.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/py.typed +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/recurring.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/__init__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/aiohttp.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/asgi.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/base.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/carbon.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/cron.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/dns/__init__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/dns/records.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/dns/service.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/dns/store.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/dns/tree.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/dns/zone.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/grpc_server.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/periodic.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/process.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/profiler.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/raven.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/sdwatchdog.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/tcp.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/tls.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/tracer.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/udp.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/service/uvicorn.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/signal.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/thread_pool.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc/timeout.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/__init__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/enum.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/formatter/__init__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/formatter/color.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/formatter/journald.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/formatter/json.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/formatter/rich.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_log/py.typed +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/__init__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/__main__.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/forking.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/process.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/process_inner.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/protocol.py +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/py.typed +0 -0
- {aiomisc-17.7.7 → aiomisc-17.7.8}/aiomisc_worker/worker.py +0 -0
@@ -213,6 +213,12 @@ class IteratorWrapper(AsyncIterator, EventLoopMixin):
|
|
213
213
|
|
214
214
|
def close(self) -> Awaitable[None]:
|
215
215
|
self.__channel.close()
|
216
|
+
# if the iterator inside thread is blocked on `.put()`
|
217
|
+
# we need to wake it up to signal that it is closed.
|
218
|
+
try:
|
219
|
+
self.__channel.queue.get()
|
220
|
+
except QueueEmpty:
|
221
|
+
pass
|
216
222
|
return asyncio.ensure_future(self.wait_closed())
|
217
223
|
|
218
224
|
async def wait_closed(self) -> None:
|
@@ -88,6 +88,10 @@ def bind_socket(
|
|
88
88
|
if not args and ":" in address:
|
89
89
|
sock.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0)
|
90
90
|
|
91
|
+
unix_address_family = getattr(socket, "AF_UNIX", None)
|
92
|
+
if sock.family == unix_address_family:
|
93
|
+
reuse_port = False
|
94
|
+
|
91
95
|
if reuse_addr:
|
92
96
|
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
93
97
|
|
@@ -99,7 +103,6 @@ def bind_socket(
|
|
99
103
|
for level, option, value in options:
|
100
104
|
sock.setsockopt(level, option, value)
|
101
105
|
|
102
|
-
unix_address_family = getattr(socket, "AF_UNIX", None)
|
103
106
|
if sock.family == unix_address_family:
|
104
107
|
proto_name = proto_name or "unix"
|
105
108
|
sock.bind(address)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
[tool.poetry]
|
2
2
|
name = "aiomisc"
|
3
3
|
# This is a dummy version which will be rewritten with poem-plugins
|
4
|
-
version = "17.7.
|
4
|
+
version = "17.7.8"
|
5
5
|
description = "aiomisc - miscellaneous utils for asyncio"
|
6
6
|
authors = ["Dmitry Orlov <me@mosquito.su>"]
|
7
7
|
readme = "README.rst"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|