omlish 0.0.0.dev63__py3-none-any.whl → 0.0.0.dev64__py3-none-any.whl
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.
- omlish/__about__.py +3 -3
- omlish/lang/classes/simple.py +19 -14
- {omlish-0.0.0.dev63.dist-info → omlish-0.0.0.dev64.dist-info}/METADATA +1 -1
- {omlish-0.0.0.dev63.dist-info → omlish-0.0.0.dev64.dist-info}/RECORD +8 -8
- {omlish-0.0.0.dev63.dist-info → omlish-0.0.0.dev64.dist-info}/LICENSE +0 -0
- {omlish-0.0.0.dev63.dist-info → omlish-0.0.0.dev64.dist-info}/WHEEL +0 -0
- {omlish-0.0.0.dev63.dist-info → omlish-0.0.0.dev64.dist-info}/entry_points.txt +0 -0
- {omlish-0.0.0.dev63.dist-info → omlish-0.0.0.dev64.dist-info}/top_level.txt +0 -0
omlish/__about__.py
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
__version__ = '0.0.0.
|
2
|
-
__revision__ = '
|
1
|
+
__version__ = '0.0.0.dev64'
|
2
|
+
__revision__ = '65b4d26bc20b482253b288f29eebe58b9ae531dd'
|
3
3
|
|
4
4
|
|
5
5
|
#
|
@@ -92,7 +92,7 @@ class Project(ProjectBase):
|
|
92
92
|
# 'psycopg ~= 3.2',
|
93
93
|
|
94
94
|
'pymysql ~= 1.1',
|
95
|
-
# 'mysql-connector-python ~= 9.
|
95
|
+
# 'mysql-connector-python ~= 9.1',
|
96
96
|
# 'mysqlclient ~= 2.2',
|
97
97
|
|
98
98
|
'aiomysql ~= 0.2',
|
omlish/lang/classes/simple.py
CHANGED
@@ -14,6 +14,17 @@ V = ta.TypeVar('V')
|
|
14
14
|
##
|
15
15
|
|
16
16
|
|
17
|
+
class SimpleMetaDict(dict):
|
18
|
+
def update(self, m: ta.Mapping[K, V], **kwargs: V) -> None: # type: ignore
|
19
|
+
for k, v in m.items():
|
20
|
+
self[k] = v
|
21
|
+
for k, v in kwargs.items(): # type: ignore
|
22
|
+
self[k] = v
|
23
|
+
|
24
|
+
|
25
|
+
##
|
26
|
+
|
27
|
+
|
17
28
|
class _NamespaceMeta(abc.ABCMeta):
|
18
29
|
def __new__(mcls, name, bases, namespace):
|
19
30
|
if bases:
|
@@ -23,9 +34,14 @@ class _NamespaceMeta(abc.ABCMeta):
|
|
23
34
|
return super().__new__(mcls, name, bases, namespace)
|
24
35
|
|
25
36
|
def __iter__(cls) -> ta.Iterator[tuple[str, ta.Any]]:
|
26
|
-
|
27
|
-
|
28
|
-
|
37
|
+
seen: set[str] = set()
|
38
|
+
for bcls in reversed(cls.__mro__):
|
39
|
+
for a in bcls.__dict__:
|
40
|
+
if a in seen:
|
41
|
+
continue
|
42
|
+
seen.add(a)
|
43
|
+
if not a.startswith('_'):
|
44
|
+
yield (a, getattr(cls, a))
|
29
45
|
|
30
46
|
def __getitem__(cls, n: str) -> ta.Any:
|
31
47
|
return getattr(cls, n)
|
@@ -75,17 +91,6 @@ class Marker(NotInstantiable, metaclass=_MarkerMeta):
|
|
75
91
|
##
|
76
92
|
|
77
93
|
|
78
|
-
class SimpleMetaDict(dict):
|
79
|
-
def update(self, m: ta.Mapping[K, V], **kwargs: V) -> None: # type: ignore
|
80
|
-
for k, v in m.items():
|
81
|
-
self[k] = v
|
82
|
-
for k, v in kwargs.items(): # type: ignore
|
83
|
-
self[k] = v
|
84
|
-
|
85
|
-
|
86
|
-
##
|
87
|
-
|
88
|
-
|
89
94
|
_SINGLETON_INSTANCE_ATTR = '__singleton_instance__'
|
90
95
|
_SINGLETON_LOCK = threading.RLock()
|
91
96
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
omlish/.manifests.json,sha256=jvyoQ7x8UJ9lpRgkh7eElwJ8qnzyG5aUGameT9Yk8GM,1419
|
2
|
-
omlish/__about__.py,sha256=
|
2
|
+
omlish/__about__.py,sha256=GXVeIGR5dUduDtgf1PYJSdJKJyBBSxbzWMxY1GQOHN8,3420
|
3
3
|
omlish/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
4
4
|
omlish/argparse.py,sha256=XLrLFCLNY1RfbiXIAELkzHK-vUPum_9dyylEdJi9Pog,7068
|
5
5
|
omlish/c3.py,sha256=4vogWgwPb8TbNS2KkZxpoWbwjj7MuHG2lQG-hdtkvjI,8062
|
@@ -258,7 +258,7 @@ omlish/lang/typing.py,sha256=lJ2NGe4Pmb61I0Tx4A_rOqXNFTws1XHOzafg2knRUio,4155
|
|
258
258
|
omlish/lang/classes/__init__.py,sha256=h9QXrvAKD17_pIog0uF-7BCqZbSpJZYxL7kzVzvljp0,583
|
259
259
|
omlish/lang/classes/abstract.py,sha256=IRnjuLLNwpxvEJsp8fwoQdCIpw0MDAd0TiQfoDMgsn4,2306
|
260
260
|
omlish/lang/classes/restrict.py,sha256=pSK7ZT_kpwqS6lWRrxwuEe-tt07F0-uZVazgGh-HDco,3921
|
261
|
-
omlish/lang/classes/simple.py,sha256=
|
261
|
+
omlish/lang/classes/simple.py,sha256=XQ8b86WvQA0qtSYqlbMOJS7tHgE8sv9onda33uQmbkM,3294
|
262
262
|
omlish/lang/classes/virtual.py,sha256=W-QJuKsDehOcrydwg6eMN0bFPTYbk3Tz84TSH3blb44,3367
|
263
263
|
omlish/lifecycles/__init__.py,sha256=1FjYceXs-4fc-S-C9zFYmc2axHs4znnQHcJVHdY7a6E,578
|
264
264
|
omlish/lifecycles/abstract.py,sha256=70CQyZy-c9a2o0ZJxPeUT7eYjWZTBrp2HpUBnrHdAOM,1109
|
@@ -408,9 +408,9 @@ omlish/text/delimit.py,sha256=ubPXcXQmtbOVrUsNh5gH1mDq5H-n1y2R4cPL5_DQf68,4928
|
|
408
408
|
omlish/text/glyphsplit.py,sha256=Ug-dPRO7x-OrNNr8g1y6DotSZ2KH0S-VcOmUobwa4B0,3296
|
409
409
|
omlish/text/indent.py,sha256=6Jj6TFY9unaPa4xPzrnZemJ-fHsV53IamP93XGjSUHs,1274
|
410
410
|
omlish/text/parts.py,sha256=7vPF1aTZdvLVYJ4EwBZVzRSy8XB3YqPd7JwEnNGGAOo,6495
|
411
|
-
omlish-0.0.0.
|
412
|
-
omlish-0.0.0.
|
413
|
-
omlish-0.0.0.
|
414
|
-
omlish-0.0.0.
|
415
|
-
omlish-0.0.0.
|
416
|
-
omlish-0.0.0.
|
411
|
+
omlish-0.0.0.dev64.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
412
|
+
omlish-0.0.0.dev64.dist-info/METADATA,sha256=fd-7ozSHicCgpU4SOmqEUW7WJAsroSMO531X7vxMDVo,4167
|
413
|
+
omlish-0.0.0.dev64.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
|
414
|
+
omlish-0.0.0.dev64.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
|
415
|
+
omlish-0.0.0.dev64.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
|
416
|
+
omlish-0.0.0.dev64.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|