omlish 0.0.0.dev99__py3-none-any.whl → 0.0.0.dev100__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- omlish/__about__.py +2 -2
- omlish/asyncs/bridge.py +11 -2
- omlish/collections/hasheq.py +6 -1
- omlish/sql/queries/rendering.py +1 -1
- {omlish-0.0.0.dev99.dist-info → omlish-0.0.0.dev100.dist-info}/METADATA +1 -1
- {omlish-0.0.0.dev99.dist-info → omlish-0.0.0.dev100.dist-info}/RECORD +10 -10
- {omlish-0.0.0.dev99.dist-info → omlish-0.0.0.dev100.dist-info}/LICENSE +0 -0
- {omlish-0.0.0.dev99.dist-info → omlish-0.0.0.dev100.dist-info}/WHEEL +0 -0
- {omlish-0.0.0.dev99.dist-info → omlish-0.0.0.dev100.dist-info}/entry_points.txt +0 -0
- {omlish-0.0.0.dev99.dist-info → omlish-0.0.0.dev100.dist-info}/top_level.txt +0 -0
omlish/__about__.py
CHANGED
omlish/asyncs/bridge.py
CHANGED
@@ -8,10 +8,19 @@ KEEP THE SPACE SHUTTLE FLYING.
|
|
8
8
|
|
9
9
|
TODO:
|
10
10
|
- reuse greenlet if nested somehow?
|
11
|
+
- test cancel
|
11
12
|
|
12
13
|
See:
|
13
|
-
- https://
|
14
|
-
|
14
|
+
- https://github.com/sqlalchemy/sqlalchemy/blob/21ea01eebe0350ad1185c7288dca61f363ebd2fe/lib/sqlalchemy/util/concurrency.py
|
15
|
+
- ( https://gist.github.com/snaury/202bf4f22c41ca34e56297bae5f33fef )
|
16
|
+
- Baked into sqlalchemy and hard-bound to asyncio.
|
17
|
+
- https://github.com/oremanj/greenback/blob/ca69b023a9b7b58b715f3b1d78fc116e788a2c9f/greenback/_impl.py
|
18
|
+
- ( https://gist.github.com/oremanj/f18ef3e55b9487c2e93eee42232583f2 )
|
19
|
+
- Similar to this, but does horrible things with ctypes and is hard-bound to greenlet.
|
20
|
+
- https://github.com/fastapi/asyncer/blob/2a4b8ef2540ec687af13d3f361c4ed0cf0cb624d/asyncer/_main.py
|
21
|
+
- https://github.com/django/asgiref/blob/05ae3eee3fae4005ae4cfb0bb22d281725fabade/asgiref/sync.py
|
22
|
+
- Both are much heavier weight and hard-bound to threads.
|
23
|
+
""" # noqa
|
15
24
|
import functools # noqa
|
16
25
|
import itertools
|
17
26
|
import sys # noqa
|
omlish/collections/hasheq.py
CHANGED
@@ -60,7 +60,7 @@ class hash_eq(HashEq[K], lang.NotInstantiable, lang.Final): # noqa
|
|
60
60
|
raise TypeError
|
61
61
|
|
62
62
|
|
63
|
-
class HashEqMap(ta.
|
63
|
+
class HashEqMap(ta.MutableMapping[K, V]):
|
64
64
|
class _Node(ta.NamedTuple, ta.Generic[K2, V2]):
|
65
65
|
k: K2
|
66
66
|
v: V2
|
@@ -70,6 +70,7 @@ class HashEqMap(ta.Mapping[K, V]):
|
|
70
70
|
super().__init__()
|
71
71
|
|
72
72
|
self._hash_eq = hash_eq
|
73
|
+
|
73
74
|
self._dct: dict[int, list[HashEqMap._Node[K, V]]] = {}
|
74
75
|
self._len = 0
|
75
76
|
|
@@ -79,6 +80,10 @@ class HashEqMap(ta.Mapping[K, V]):
|
|
79
80
|
def __len__(self) -> int:
|
80
81
|
return self._len
|
81
82
|
|
83
|
+
def clear(self) -> None:
|
84
|
+
self._dct.clear()
|
85
|
+
self._len = 0
|
86
|
+
|
82
87
|
def __contains__(self, k: K) -> bool: # type: ignore[override]
|
83
88
|
h = self._hash_eq.hash(k)
|
84
89
|
try:
|
omlish/sql/queries/rendering.py
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
omlish/.manifests.json,sha256=hTFp9tvE72BxKloIq1s1SS0LRQlIsvMtO69Sbc47rKg,1704
|
2
|
-
omlish/__about__.py,sha256=
|
2
|
+
omlish/__about__.py,sha256=yVqFrqrMN4BTjvYSB13be3wGA95pIC84Yq_0m2yFPyA,3352
|
3
3
|
omlish/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
4
|
omlish/argparse.py,sha256=Dc73G8lyoQBLvXhMYUbzQUh4SJu_OTvKUXjSUxq_ang,7499
|
5
5
|
omlish/c3.py,sha256=4vogWgwPb8TbNS2KkZxpoWbwjj7MuHG2lQG-hdtkvjI,8062
|
@@ -82,7 +82,7 @@ omlish/asyncs/__init__.py,sha256=uUz9ziKh4_QrgmdhKFMgq6j7mFbiZd3LiogguDCQsGI,587
|
|
82
82
|
omlish/asyncs/anyio.py,sha256=gfpx-D8QGmUfhnQxHEaHXcAP8zSMQjcGw4COFTGNnHI,8021
|
83
83
|
omlish/asyncs/asyncio.py,sha256=JfM59QgB3asgEbrps0zoVbNjWD4kL2XdsEkRMEIoFos,971
|
84
84
|
omlish/asyncs/asyncs.py,sha256=Tf7ZodTGepkM7HAuFcDNh9lLzzrMw6rELWvopGmFkh4,2035
|
85
|
-
omlish/asyncs/bridge.py,sha256=
|
85
|
+
omlish/asyncs/bridge.py,sha256=GJOjXVwZJvpq2q9rCwRI2u7Tg-KLUx-SY92b873-M4c,9738
|
86
86
|
omlish/asyncs/flavors.py,sha256=1mNxGNRVmjUHzA13K5ht8vdJv4CLEmzYTQ6BZXr1520,4866
|
87
87
|
omlish/asyncs/trio.py,sha256=fmZ5b_lKdVV8NQ3euCUutWgnkqTFzSnOjvJSA_jvmrE,367
|
88
88
|
omlish/asyncs/trio_asyncio.py,sha256=oqdOHy0slj9PjVxaDf3gJkq9AAgg7wYZbB469jOftVw,1327
|
@@ -100,7 +100,7 @@ omlish/collections/_io_abc.py,sha256=Cxs8KB1B_69rxpUYxI-MTsilAmNooJJn3w07DKqYKkE
|
|
100
100
|
omlish/collections/coerce.py,sha256=o11AMrUiyoadd8WkdqeKPIpXf2xd0LyylzNCyJivCLU,7036
|
101
101
|
omlish/collections/exceptions.py,sha256=shcS-NCnEUudF8qC_SmO2TQyjivKlS4TDjaz_faqQ0c,44
|
102
102
|
omlish/collections/frozen.py,sha256=DGxemj_pVID85tSBm-Wns_x4ov0wOEIT6X5bVgJtmkA,4152
|
103
|
-
omlish/collections/hasheq.py,sha256=
|
103
|
+
omlish/collections/hasheq.py,sha256=Q3tmo0f-vVlNNICNvxCfqgOPwVJymKSahdlG1w6TtTU,3899
|
104
104
|
omlish/collections/identity.py,sha256=jhEpC8tnfh3Sg-MJff1Fp9eMydt150wits_UeVdctUk,2723
|
105
105
|
omlish/collections/indexed.py,sha256=tFQsIWH4k9QqsF5VB7DsIVNsRThiQNx-ooRF36X_PnU,2203
|
106
106
|
omlish/collections/mappings.py,sha256=eEifLZez-BWunTuj6974bGxBFfNRODZpu6Oa7_2ME94,3190
|
@@ -421,7 +421,7 @@ omlish/sql/queries/multi.py,sha256=7x6x-4jnPzxA6ZasBjnjFuhHFpWt5rGCua3UvuTMIJ0,8
|
|
421
421
|
omlish/sql/queries/names.py,sha256=YiIyS6ehYMYrdLlUxMawV_Xf2zdi7RwVO9Qsxr_W4_4,772
|
422
422
|
omlish/sql/queries/ops.py,sha256=B7IDfjr2DW5LJhWoNaY1WW90BJhe5ZtmxIELhWXbW-0,129
|
423
423
|
omlish/sql/queries/relations.py,sha256=-d3n-dN17c3TPMZmzSplhWawllUzdq12XPDAuzoeMEQ,838
|
424
|
-
omlish/sql/queries/rendering.py,sha256=
|
424
|
+
omlish/sql/queries/rendering.py,sha256=DUmdsQqChCBxCSXSL0dDUz0H5joTL_qayhdErsWz6dQ,5945
|
425
425
|
omlish/sql/queries/selects.py,sha256=8dqm4KyrJvOsW3KHSO7qLEfPlZa7sJDp8puuGxrfvoA,1369
|
426
426
|
omlish/sql/queries/stmts.py,sha256=pBqwD7dRlqMu6uh6vR3xaWOEgbZCcFWbOQ9ryYd17T4,441
|
427
427
|
omlish/sql/queries/unary.py,sha256=MEYBDZn_H0bexmUrJeONOv5-gIpYowUaXOsEHeQM4ks,1144
|
@@ -458,9 +458,9 @@ omlish/text/delimit.py,sha256=ubPXcXQmtbOVrUsNh5gH1mDq5H-n1y2R4cPL5_DQf68,4928
|
|
458
458
|
omlish/text/glyphsplit.py,sha256=Ug-dPRO7x-OrNNr8g1y6DotSZ2KH0S-VcOmUobwa4B0,3296
|
459
459
|
omlish/text/indent.py,sha256=6Jj6TFY9unaPa4xPzrnZemJ-fHsV53IamP93XGjSUHs,1274
|
460
460
|
omlish/text/parts.py,sha256=7vPF1aTZdvLVYJ4EwBZVzRSy8XB3YqPd7JwEnNGGAOo,6495
|
461
|
-
omlish-0.0.0.
|
462
|
-
omlish-0.0.0.
|
463
|
-
omlish-0.0.0.
|
464
|
-
omlish-0.0.0.
|
465
|
-
omlish-0.0.0.
|
466
|
-
omlish-0.0.0.
|
461
|
+
omlish-0.0.0.dev100.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
462
|
+
omlish-0.0.0.dev100.dist-info/METADATA,sha256=TdLGZ5Orn-POreEB-DwNEVxZtZLSzc-J_wm9QxN6WVM,4000
|
463
|
+
omlish-0.0.0.dev100.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
464
|
+
omlish-0.0.0.dev100.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
|
465
|
+
omlish-0.0.0.dev100.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
|
466
|
+
omlish-0.0.0.dev100.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|