omlish 0.0.0.dev461__tar.gz → 0.0.0.dev506__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 omlish might be problematic. Click here for more details.

Files changed (1049) hide show
  1. omlish-0.0.0.dev506/PKG-INFO +310 -0
  2. omlish-0.0.0.dev506/README.md +199 -0
  3. omlish-0.0.0.dev506/omlish/.omlish-manifests.json +375 -0
  4. omlish-0.0.0.dev506/omlish/CODESTYLE.md +345 -0
  5. omlish-0.0.0.dev506/omlish/README.md +199 -0
  6. omlish-0.0.0.dev506/omlish/__about__.py +200 -0
  7. omlish-0.0.0.dev506/omlish/_check.cc +209 -0
  8. omlish-0.0.0.dev506/omlish/argparse/all.py +54 -0
  9. omlish-0.0.0.dev506/omlish/argparse/cli.py +325 -0
  10. omlish-0.0.0.dev506/omlish/argparse/utils.py +21 -0
  11. omlish-0.0.0.dev506/omlish/asyncs/asyncio/rlock.py +110 -0
  12. omlish-0.0.0.dev506/omlish/asyncs/asyncio/sync.py +43 -0
  13. omlish-0.0.0.dev506/omlish/asyncs/asyncio/utils.py +111 -0
  14. omlish-0.0.0.dev506/omlish/asyncs/sync.py +25 -0
  15. omlish-0.0.0.dev506/omlish/bootstrap/diag.py +207 -0
  16. omlish-0.0.0.dev506/omlish/bootstrap/main.py +206 -0
  17. omlish-0.0.0.dev506/omlish/bootstrap/sys.py +360 -0
  18. omlish-0.0.0.dev506/omlish/check.py +282 -0
  19. omlish-0.0.0.dev506/omlish/collections/__init__.py +164 -0
  20. omlish-0.0.0.dev506/omlish/collections/attrregistry.py +210 -0
  21. omlish-0.0.0.dev506/omlish/collections/cache/impl.py +489 -0
  22. omlish-0.0.0.dev506/omlish/collections/trie.py +160 -0
  23. omlish-0.0.0.dev506/omlish/collections/utils.py +309 -0
  24. omlish-0.0.0.dev506/omlish/concurrent/all.py +18 -0
  25. omlish-0.0.0.dev506/omlish/concurrent/futures.py +161 -0
  26. omlish-0.0.0.dev506/omlish/concurrent/threadlets.py +99 -0
  27. omlish-0.0.0.dev506/omlish/daemons/reparent.py +31 -0
  28. omlish-0.0.0.dev506/omlish/daemons/spawning.py +205 -0
  29. omlish-0.0.0.dev506/omlish/dataclasses/__init__.py +198 -0
  30. omlish-0.0.0.dev506/omlish/dataclasses/impl/api/classes/decorator.py +184 -0
  31. omlish-0.0.0.dev506/omlish/dataclasses/impl/api/classes/make.py +188 -0
  32. omlish-0.0.0.dev506/omlish/dataclasses/impl/concerns/frozen.py +157 -0
  33. omlish-0.0.0.dev506/omlish/dataclasses/impl/concerns/repr.py +128 -0
  34. omlish-0.0.0.dev506/omlish/dataclasses/impl/configs.py +130 -0
  35. omlish-0.0.0.dev506/omlish/dataclasses/impl/generation/compilation.py +261 -0
  36. omlish-0.0.0.dev506/omlish/dataclasses/impl/generation/globals.py +84 -0
  37. omlish-0.0.0.dev506/omlish/dataclasses/impl/generation/ops.py +98 -0
  38. omlish-0.0.0.dev506/omlish/dataclasses/impl/generation/plans.py +20 -0
  39. omlish-0.0.0.dev506/omlish/dataclasses/impl/generation/processor.py +290 -0
  40. omlish-0.0.0.dev506/omlish/dataclasses/impl/processing/base.py +96 -0
  41. omlish-0.0.0.dev506/omlish/dataclasses/impl/processing/driving.py +93 -0
  42. omlish-0.0.0.dev506/omlish/dataclasses/specs.py +261 -0
  43. omlish-0.0.0.dev506/omlish/dataclasses/tools/replace.py +44 -0
  44. omlish-0.0.0.dev506/omlish/diag/_pycharm/runhack.py +1562 -0
  45. omlish-0.0.0.dev506/omlish/diag/cmds/lslocks.py +64 -0
  46. omlish-0.0.0.dev506/omlish/diag/cmds/lsof.py +264 -0
  47. omlish-0.0.0.dev506/omlish/diag/cmds/ps.py +75 -0
  48. omlish-0.0.0.dev506/omlish/diag/replserver/console.py +248 -0
  49. omlish-0.0.0.dev506/omlish/dispatch/__init__.py +18 -0
  50. omlish-0.0.0.dev506/omlish/dispatch/functions.py +55 -0
  51. omlish-0.0.0.dev506/omlish/formats/json/stream/__init__.py +72 -0
  52. omlish-0.0.0.dev506/omlish/formats/json/stream/lexing.py +665 -0
  53. omlish-0.0.0.dev506/omlish/formats/json/stream/parsing.py +291 -0
  54. omlish-0.0.0.dev506/omlish/http/all.py +122 -0
  55. omlish-0.0.0.dev506/omlish/http/clients/asyncs.py +153 -0
  56. omlish-0.0.0.dev506/omlish/http/clients/base.py +146 -0
  57. omlish-0.0.0.dev506/omlish/http/clients/coro/sync.py +171 -0
  58. omlish-0.0.0.dev506/omlish/http/clients/default.py +239 -0
  59. omlish-0.0.0.dev506/omlish/http/clients/executor.py +56 -0
  60. omlish-0.0.0.dev506/omlish/http/clients/httpx.py +133 -0
  61. omlish-0.0.0.dev506/omlish/http/clients/middleware.py +181 -0
  62. omlish-0.0.0.dev506/omlish/http/clients/sync.py +151 -0
  63. omlish-0.0.0.dev506/omlish/http/clients/syncasync.py +49 -0
  64. omlish-0.0.0.dev506/omlish/http/clients/urllib.py +82 -0
  65. omlish-0.0.0.dev506/omlish/http/coro/client/connection.py +801 -0
  66. omlish-0.0.0.dev506/omlish/http/coro/io.py +68 -0
  67. omlish-0.0.0.dev506/omlish/http/flasky/__init__.py +40 -0
  68. omlish-0.0.0.dev506/omlish/http/flasky/_compat.py +2 -0
  69. omlish-0.0.0.dev506/omlish/http/flasky/api.py +82 -0
  70. omlish-0.0.0.dev506/omlish/http/flasky/app.py +203 -0
  71. omlish-0.0.0.dev506/omlish/http/flasky/cvs.py +59 -0
  72. omlish-0.0.0.dev506/omlish/http/flasky/requests.py +20 -0
  73. omlish-0.0.0.dev506/omlish/http/flasky/responses.py +23 -0
  74. omlish-0.0.0.dev506/omlish/http/flasky/routes.py +23 -0
  75. omlish-0.0.0.dev506/omlish/http/flasky/types.py +15 -0
  76. omlish-0.0.0.dev506/omlish/http/urls.py +67 -0
  77. omlish-0.0.0.dev506/omlish/inject/README.md +430 -0
  78. omlish-0.0.0.dev506/omlish/inject/__init__.py +197 -0
  79. omlish-0.0.0.dev506/omlish/inject/_dataclasses.py +5148 -0
  80. omlish-0.0.0.dev506/omlish/inject/binder.py +194 -0
  81. omlish-0.0.0.dev506/omlish/inject/eagers.py +16 -0
  82. omlish-0.0.0.dev506/omlish/inject/elements.py +97 -0
  83. omlish-0.0.0.dev506/omlish/inject/helpers/constfn.py +21 -0
  84. omlish-0.0.0.dev506/omlish/inject/helpers/id.py +22 -0
  85. omlish-0.0.0.dev506/omlish/inject/helpers/late.py +76 -0
  86. omlish-0.0.0.dev506/omlish/inject/helpers/managed.py +129 -0
  87. omlish-0.0.0.dev506/omlish/inject/helpers/multis.py +143 -0
  88. omlish-0.0.0.dev506/omlish/inject/helpers/wrappers.py +54 -0
  89. omlish-0.0.0.dev506/omlish/inject/impl/elements.py +236 -0
  90. omlish-0.0.0.dev506/omlish/inject/impl/injector.py +251 -0
  91. omlish-0.0.0.dev506/omlish/inject/impl/inspect.py +135 -0
  92. omlish-0.0.0.dev506/omlish/inject/impl/maysync.py +43 -0
  93. omlish-0.0.0.dev506/omlish/inject/impl/multis.py +80 -0
  94. omlish-0.0.0.dev506/omlish/inject/impl/origins.py +78 -0
  95. omlish-0.0.0.dev506/omlish/inject/impl/privates.py +105 -0
  96. omlish-0.0.0.dev506/omlish/inject/impl/providers.py +97 -0
  97. omlish-0.0.0.dev506/omlish/inject/impl/scopes.py +205 -0
  98. omlish-0.0.0.dev506/omlish/inject/impl/sync.py +41 -0
  99. omlish-0.0.0.dev506/omlish/inject/injector.py +77 -0
  100. omlish-0.0.0.dev506/omlish/inject/inspect.py +79 -0
  101. omlish-0.0.0.dev506/omlish/inject/maysync.py +27 -0
  102. omlish-0.0.0.dev506/omlish/inject/multis.py +130 -0
  103. omlish-0.0.0.dev506/omlish/inject/overrides.py +22 -0
  104. omlish-0.0.0.dev506/omlish/inject/privates.py +34 -0
  105. omlish-0.0.0.dev506/omlish/inject/providers.py +48 -0
  106. omlish-0.0.0.dev506/omlish/inject/scopes.py +125 -0
  107. omlish-0.0.0.dev506/omlish/inject/sync.py +49 -0
  108. omlish-0.0.0.dev506/omlish/io/buffers.py +438 -0
  109. omlish-0.0.0.dev506/omlish/io/readers.py +29 -0
  110. omlish-0.0.0.dev506/omlish/iterators/transforms.py +204 -0
  111. omlish-0.0.0.dev506/omlish/lang/__init__.py +639 -0
  112. omlish-0.0.0.dev506/omlish/lang/_asyncs.cc +186 -0
  113. omlish-0.0.0.dev506/omlish/lang/asyncs.py +97 -0
  114. omlish-0.0.0.dev506/omlish/lang/casing.py +205 -0
  115. omlish-0.0.0.dev506/omlish/lang/classes/simple.py +132 -0
  116. omlish-0.0.0.dev506/omlish/lang/contextmanagers.py +434 -0
  117. omlish-0.0.0.dev506/omlish/lang/functions.py +279 -0
  118. omlish-0.0.0.dev506/omlish/lang/imports/_capture.cc +103 -0
  119. omlish-0.0.0.dev506/omlish/lang/imports/proxy.py +559 -0
  120. omlish-0.0.0.dev506/omlish/lang/iterables.py +177 -0
  121. omlish-0.0.0.dev506/omlish/lang/objects.py +215 -0
  122. omlish-0.0.0.dev506/omlish/lang/outcomes.py +308 -0
  123. omlish-0.0.0.dev506/omlish/lang/params.py +288 -0
  124. omlish-0.0.0.dev506/omlish/lang/recursion.py +108 -0
  125. omlish-0.0.0.dev506/omlish/lang/sequences.py +157 -0
  126. omlish-0.0.0.dev506/omlish/lifecycles/README.md +30 -0
  127. omlish-0.0.0.dev506/omlish/lifecycles/__init__.py +121 -0
  128. omlish-0.0.0.dev506/omlish/lifecycles/_dataclasses.py +1388 -0
  129. omlish-0.0.0.dev506/omlish/lifecycles/base.py +217 -0
  130. omlish-0.0.0.dev506/omlish/lifecycles/contextmanagers.py +185 -0
  131. omlish-0.0.0.dev506/omlish/lifecycles/controller.py +226 -0
  132. omlish-0.0.0.dev506/omlish/lifecycles/injection.py +143 -0
  133. omlish-0.0.0.dev506/omlish/lifecycles/listeners.py +56 -0
  134. omlish-0.0.0.dev506/omlish/lifecycles/managed.py +142 -0
  135. omlish-0.0.0.dev506/omlish/lifecycles/manager.py +288 -0
  136. omlish-0.0.0.dev506/omlish/lifecycles/states.py +48 -0
  137. omlish-0.0.0.dev506/omlish/lifecycles/transitions.py +70 -0
  138. omlish-0.0.0.dev506/omlish/lifecycles/unwrap.py +57 -0
  139. omlish-0.0.0.dev506/omlish/lite/abstract.py +149 -0
  140. omlish-0.0.0.dev506/omlish/lite/asyncs.py +146 -0
  141. omlish-0.0.0.dev506/omlish/lite/contextmanagers.py +204 -0
  142. omlish-0.0.0.dev506/omlish/lite/dataclasses.py +207 -0
  143. omlish-0.0.0.dev506/omlish/lite/maybes.py +225 -0
  144. omlish-0.0.0.dev506/omlish/lite/typing.py +103 -0
  145. omlish-0.0.0.dev506/omlish/logs/_amalg.py +8 -0
  146. omlish-0.0.0.dev506/omlish/logs/all.py +121 -0
  147. omlish-0.0.0.dev506/omlish/logs/asyncs.py +73 -0
  148. omlish-0.0.0.dev506/omlish/logs/base.py +293 -0
  149. omlish-0.0.0.dev506/omlish/logs/bisync.py +99 -0
  150. omlish-0.0.0.dev506/omlish/logs/contexts.py +174 -0
  151. omlish-0.0.0.dev506/omlish/logs/lists.py +125 -0
  152. omlish-0.0.0.dev506/omlish/logs/modules.py +31 -0
  153. omlish-0.0.0.dev506/omlish/logs/std/loggers.py +53 -0
  154. omlish-0.0.0.dev506/omlish/logs/std/noisy.py +21 -0
  155. omlish-0.0.0.dev506/omlish/logs/std/standard.py +132 -0
  156. omlish-0.0.0.dev506/omlish/logs/utils.py +94 -0
  157. omlish-0.0.0.dev506/omlish/manifests/loading.py +576 -0
  158. omlish-0.0.0.dev506/omlish/marshal/_dataclasses.py +2774 -0
  159. omlish-0.0.0.dev506/omlish/os/pidfiles/pinning.py +261 -0
  160. omlish-0.0.0.dev506/omlish/reflect/__init__.py +77 -0
  161. omlish-0.0.0.dev506/omlish/reflect/ops.py +125 -0
  162. omlish-0.0.0.dev506/omlish/reflect/types.py +654 -0
  163. omlish-0.0.0.dev506/omlish/specs/jmespath/__init__.py +55 -0
  164. omlish-0.0.0.dev506/omlish/specs/jmespath/_dataclasses.py +2893 -0
  165. omlish-0.0.0.dev506/omlish/specs/jmespath/ast.py +301 -0
  166. omlish-0.0.0.dev506/omlish/specs/jsonrpc/__init__.py +54 -0
  167. omlish-0.0.0.dev506/omlish/specs/jsonrpc/conns.py +239 -0
  168. omlish-0.0.0.dev506/omlish/specs/jsonschema/keywords/__init__.py +7 -0
  169. omlish-0.0.0.dev506/omlish/specs/jsonschema/keywords/_dataclasses.py +1644 -0
  170. omlish-0.0.0.dev506/omlish/sql/__init__.py +43 -0
  171. omlish-0.0.0.dev506/omlish/sql/api/dbapi.py +115 -0
  172. omlish-0.0.0.dev506/omlish/sql/dbapi/__init__.py +15 -0
  173. omlish-0.0.0.dev506/omlish/sql/dbapi/drivers.py +147 -0
  174. omlish-0.0.0.dev506/omlish/sql/queries/__init__.py +124 -0
  175. omlish-0.0.0.dev506/omlish/subprocesses/base.py +226 -0
  176. omlish-0.0.0.dev506/omlish/subprocesses/editor.py +112 -0
  177. omlish-0.0.0.dev506/omlish/sync.py +299 -0
  178. omlish-0.0.0.dev506/omlish/term/alt.py +60 -0
  179. omlish-0.0.0.dev506/omlish/term/pager.py +235 -0
  180. omlish-0.0.0.dev506/omlish/term/terminfo.py +935 -0
  181. omlish-0.0.0.dev506/omlish/term/termstate.py +67 -0
  182. omlish-0.0.0.dev506/omlish/testing/pytest/plugins/asyncs/fixtures.py +275 -0
  183. omlish-0.0.0.dev506/omlish/testing/pytest/plugins/asyncs/plugin.py +186 -0
  184. omlish-0.0.0.dev506/omlish/testing/pytest/plugins/skips.py +31 -0
  185. omlish-0.0.0.dev506/omlish/testing/unittest/main.py +277 -0
  186. omlish-0.0.0.dev506/omlish/text/__init__.py +0 -0
  187. omlish-0.0.0.dev506/omlish/text/docwrap/__init__.py +3 -0
  188. omlish-0.0.0.dev506/omlish/text/docwrap/__main__.py +11 -0
  189. omlish-0.0.0.dev506/omlish/text/docwrap/api.py +83 -0
  190. omlish-0.0.0.dev506/omlish/text/docwrap/cli.py +91 -0
  191. omlish-0.0.0.dev506/omlish/text/docwrap/groups.py +84 -0
  192. omlish-0.0.0.dev506/omlish/text/docwrap/lists.py +167 -0
  193. omlish-0.0.0.dev506/omlish/text/docwrap/parts.py +146 -0
  194. omlish-0.0.0.dev506/omlish/text/docwrap/reflowing.py +106 -0
  195. omlish-0.0.0.dev506/omlish/text/docwrap/rendering.py +151 -0
  196. omlish-0.0.0.dev506/omlish/text/docwrap/utils.py +11 -0
  197. omlish-0.0.0.dev506/omlish/text/docwrap/wrapping.py +59 -0
  198. omlish-0.0.0.dev506/omlish/text/filecache.py +235 -0
  199. omlish-0.0.0.dev506/omlish/text/go/__init__.py +0 -0
  200. omlish-0.0.0.dev506/omlish/text/lorem.py +6 -0
  201. omlish-0.0.0.dev506/omlish/text/textwrap.py +51 -0
  202. omlish-0.0.0.dev506/omlish/typedvalues/_collection.cc +500 -0
  203. omlish-0.0.0.dev506/omlish/typedvalues/collection.py +314 -0
  204. omlish-0.0.0.dev506/omlish/typedvalues/generic.py +28 -0
  205. omlish-0.0.0.dev506/omlish/typedvalues/values.py +69 -0
  206. omlish-0.0.0.dev506/omlish.egg-info/PKG-INFO +310 -0
  207. omlish-0.0.0.dev506/omlish.egg-info/SOURCES.txt +898 -0
  208. omlish-0.0.0.dev506/omlish.egg-info/requires.txt +103 -0
  209. omlish-0.0.0.dev506/pyproject.toml +167 -0
  210. omlish-0.0.0.dev461/PKG-INFO +0 -304
  211. omlish-0.0.0.dev461/README.md +0 -195
  212. omlish-0.0.0.dev461/omlish/.omlish-manifests.json +0 -363
  213. omlish-0.0.0.dev461/omlish/__about__.py +0 -193
  214. omlish-0.0.0.dev461/omlish/argparse/all.py +0 -46
  215. omlish-0.0.0.dev461/omlish/argparse/cli.py +0 -312
  216. omlish-0.0.0.dev461/omlish/asyncs/asyncio/utils.py +0 -109
  217. omlish-0.0.0.dev461/omlish/bootstrap/diag.py +0 -216
  218. omlish-0.0.0.dev461/omlish/bootstrap/main.py +0 -209
  219. omlish-0.0.0.dev461/omlish/bootstrap/sys.py +0 -361
  220. omlish-0.0.0.dev461/omlish/check.py +0 -271
  221. omlish-0.0.0.dev461/omlish/collections/__init__.py +0 -158
  222. omlish-0.0.0.dev461/omlish/collections/attrregistry.py +0 -182
  223. omlish-0.0.0.dev461/omlish/collections/cache/impl.py +0 -488
  224. omlish-0.0.0.dev461/omlish/collections/trie.py +0 -156
  225. omlish-0.0.0.dev461/omlish/collections/utils.py +0 -232
  226. omlish-0.0.0.dev461/omlish/concurrent/all.py +0 -17
  227. omlish-0.0.0.dev461/omlish/concurrent/futures.py +0 -136
  228. omlish-0.0.0.dev461/omlish/concurrent/threadlets.py +0 -99
  229. omlish-0.0.0.dev461/omlish/daemons/reparent.py +0 -32
  230. omlish-0.0.0.dev461/omlish/daemons/spawning.py +0 -206
  231. omlish-0.0.0.dev461/omlish/dataclasses/__init__.py +0 -194
  232. omlish-0.0.0.dev461/omlish/dataclasses/impl/api/classes/decorator.py +0 -181
  233. omlish-0.0.0.dev461/omlish/dataclasses/impl/api/classes/make.py +0 -185
  234. omlish-0.0.0.dev461/omlish/dataclasses/impl/concerns/frozen.py +0 -154
  235. omlish-0.0.0.dev461/omlish/dataclasses/impl/concerns/repr.py +0 -115
  236. omlish-0.0.0.dev461/omlish/dataclasses/impl/configs.py +0 -70
  237. omlish-0.0.0.dev461/omlish/dataclasses/impl/generation/compilation.py +0 -259
  238. omlish-0.0.0.dev461/omlish/dataclasses/impl/generation/globals.py +0 -83
  239. omlish-0.0.0.dev461/omlish/dataclasses/impl/generation/mangling.py +0 -18
  240. omlish-0.0.0.dev461/omlish/dataclasses/impl/generation/ops.py +0 -97
  241. omlish-0.0.0.dev461/omlish/dataclasses/impl/generation/plans.py +0 -35
  242. omlish-0.0.0.dev461/omlish/dataclasses/impl/generation/processor.py +0 -209
  243. omlish-0.0.0.dev461/omlish/dataclasses/impl/processing/base.py +0 -88
  244. omlish-0.0.0.dev461/omlish/dataclasses/impl/processing/driving.py +0 -81
  245. omlish-0.0.0.dev461/omlish/dataclasses/specs.py +0 -260
  246. omlish-0.0.0.dev461/omlish/dataclasses/tools/replace.py +0 -17
  247. omlish-0.0.0.dev461/omlish/diag/_pycharm/runhack.py +0 -1562
  248. omlish-0.0.0.dev461/omlish/diag/lslocks.py +0 -64
  249. omlish-0.0.0.dev461/omlish/diag/lsof.py +0 -264
  250. omlish-0.0.0.dev461/omlish/diag/ps.py +0 -75
  251. omlish-0.0.0.dev461/omlish/diag/replserver/console.py +0 -248
  252. omlish-0.0.0.dev461/omlish/dispatch/__init__.py +0 -12
  253. omlish-0.0.0.dev461/omlish/dispatch/functions.py +0 -55
  254. omlish-0.0.0.dev461/omlish/formats/json/stream/__init__.py +0 -59
  255. omlish-0.0.0.dev461/omlish/formats/json/stream/lexing.py +0 -657
  256. omlish-0.0.0.dev461/omlish/formats/json/stream/parsing.py +0 -291
  257. omlish-0.0.0.dev461/omlish/http/all.py +0 -82
  258. omlish-0.0.0.dev461/omlish/http/clients/asyncs.py +0 -147
  259. omlish-0.0.0.dev461/omlish/http/clients/base.py +0 -130
  260. omlish-0.0.0.dev461/omlish/http/clients/default.py +0 -60
  261. omlish-0.0.0.dev461/omlish/http/clients/httpx.py +0 -72
  262. omlish-0.0.0.dev461/omlish/http/clients/sync.py +0 -145
  263. omlish-0.0.0.dev461/omlish/http/clients/urllib.py +0 -79
  264. omlish-0.0.0.dev461/omlish/http/coro/client/connection.py +0 -792
  265. omlish-0.0.0.dev461/omlish/http/coro/io.py +0 -66
  266. omlish-0.0.0.dev461/omlish/inject/__init__.py +0 -168
  267. omlish-0.0.0.dev461/omlish/inject/binder.py +0 -235
  268. omlish-0.0.0.dev461/omlish/inject/eagers.py +0 -18
  269. omlish-0.0.0.dev461/omlish/inject/elements.py +0 -66
  270. omlish-0.0.0.dev461/omlish/inject/impl/elements.py +0 -203
  271. omlish-0.0.0.dev461/omlish/inject/impl/injector.py +0 -262
  272. omlish-0.0.0.dev461/omlish/inject/impl/inspect.py +0 -134
  273. omlish-0.0.0.dev461/omlish/inject/impl/maysync.py +0 -44
  274. omlish-0.0.0.dev461/omlish/inject/impl/multis.py +0 -77
  275. omlish-0.0.0.dev461/omlish/inject/impl/origins.py +0 -77
  276. omlish-0.0.0.dev461/omlish/inject/impl/privates.py +0 -109
  277. omlish-0.0.0.dev461/omlish/inject/impl/providers.py +0 -101
  278. omlish-0.0.0.dev461/omlish/inject/impl/scopes.py +0 -209
  279. omlish-0.0.0.dev461/omlish/inject/impl/sync.py +0 -42
  280. omlish-0.0.0.dev461/omlish/inject/injector.py +0 -48
  281. omlish-0.0.0.dev461/omlish/inject/inspect.py +0 -35
  282. omlish-0.0.0.dev461/omlish/inject/managed.py +0 -126
  283. omlish-0.0.0.dev461/omlish/inject/maysync.py +0 -29
  284. omlish-0.0.0.dev461/omlish/inject/multis.py +0 -125
  285. omlish-0.0.0.dev461/omlish/inject/overrides.py +0 -22
  286. omlish-0.0.0.dev461/omlish/inject/privates.py +0 -28
  287. omlish-0.0.0.dev461/omlish/inject/providers.py +0 -47
  288. omlish-0.0.0.dev461/omlish/inject/scopes.py +0 -123
  289. omlish-0.0.0.dev461/omlish/inject/sync.py +0 -48
  290. omlish-0.0.0.dev461/omlish/inject/tags.py +0 -22
  291. omlish-0.0.0.dev461/omlish/inject/utils.py +0 -21
  292. omlish-0.0.0.dev461/omlish/io/buffers.py +0 -293
  293. omlish-0.0.0.dev461/omlish/iterators/transforms.py +0 -204
  294. omlish-0.0.0.dev461/omlish/lang/__init__.py +0 -621
  295. omlish-0.0.0.dev461/omlish/lang/asyncs.py +0 -80
  296. omlish-0.0.0.dev461/omlish/lang/casing.py +0 -194
  297. omlish-0.0.0.dev461/omlish/lang/classes/simple.py +0 -131
  298. omlish-0.0.0.dev461/omlish/lang/contextmanagers.py +0 -422
  299. omlish-0.0.0.dev461/omlish/lang/functions.py +0 -274
  300. omlish-0.0.0.dev461/omlish/lang/imports/_capture.cc +0 -102
  301. omlish-0.0.0.dev461/omlish/lang/imports/proxy.py +0 -550
  302. omlish-0.0.0.dev461/omlish/lang/iterables.py +0 -171
  303. omlish-0.0.0.dev461/omlish/lang/objects.py +0 -202
  304. omlish-0.0.0.dev461/omlish/lang/outcomes.py +0 -308
  305. omlish-0.0.0.dev461/omlish/lang/params.py +0 -271
  306. omlish-0.0.0.dev461/omlish/lang/recursion.py +0 -109
  307. omlish-0.0.0.dev461/omlish/lang/sequences.py +0 -124
  308. omlish-0.0.0.dev461/omlish/lifecycles/__init__.py +0 -47
  309. omlish-0.0.0.dev461/omlish/lifecycles/abstract.py +0 -86
  310. omlish-0.0.0.dev461/omlish/lifecycles/base.py +0 -103
  311. omlish-0.0.0.dev461/omlish/lifecycles/contextmanagers.py +0 -76
  312. omlish-0.0.0.dev461/omlish/lifecycles/controller.py +0 -163
  313. omlish-0.0.0.dev461/omlish/lifecycles/manager.py +0 -163
  314. omlish-0.0.0.dev461/omlish/lifecycles/states.py +0 -46
  315. omlish-0.0.0.dev461/omlish/lifecycles/transitions.py +0 -67
  316. omlish-0.0.0.dev461/omlish/lite/abstract.py +0 -119
  317. omlish-0.0.0.dev461/omlish/lite/asyncs.py +0 -146
  318. omlish-0.0.0.dev461/omlish/lite/contextmanagers.py +0 -204
  319. omlish-0.0.0.dev461/omlish/lite/dataclasses.py +0 -193
  320. omlish-0.0.0.dev461/omlish/lite/maybes.py +0 -218
  321. omlish-0.0.0.dev461/omlish/lite/typing.py +0 -64
  322. omlish-0.0.0.dev461/omlish/logs/_amalg.py +0 -8
  323. omlish-0.0.0.dev461/omlish/logs/all.py +0 -96
  324. omlish-0.0.0.dev461/omlish/logs/base.py +0 -204
  325. omlish-0.0.0.dev461/omlish/logs/contexts.py +0 -171
  326. omlish-0.0.0.dev461/omlish/logs/modules.py +0 -13
  327. omlish-0.0.0.dev461/omlish/logs/standard.py +0 -133
  328. omlish-0.0.0.dev461/omlish/logs/std/loggers.py +0 -48
  329. omlish-0.0.0.dev461/omlish/logs/std/noisy.py +0 -19
  330. omlish-0.0.0.dev461/omlish/logs/utils.py +0 -79
  331. omlish-0.0.0.dev461/omlish/manifests/loading.py +0 -575
  332. omlish-0.0.0.dev461/omlish/os/pidfiles/pinning.py +0 -261
  333. omlish-0.0.0.dev461/omlish/reflect/__init__.py +0 -60
  334. omlish-0.0.0.dev461/omlish/reflect/ops.py +0 -116
  335. omlish-0.0.0.dev461/omlish/reflect/types.py +0 -653
  336. omlish-0.0.0.dev461/omlish/specs/jmespath/__init__.py +0 -46
  337. omlish-0.0.0.dev461/omlish/specs/jmespath/ast.py +0 -301
  338. omlish-0.0.0.dev461/omlish/specs/jsonrpc/__init__.py +0 -41
  339. omlish-0.0.0.dev461/omlish/specs/jsonrpc/conns.py +0 -236
  340. omlish-0.0.0.dev461/omlish/sql/__init__.py +0 -24
  341. omlish-0.0.0.dev461/omlish/sql/api/dbapi.py +0 -115
  342. omlish-0.0.0.dev461/omlish/sql/dbapi.py +0 -147
  343. omlish-0.0.0.dev461/omlish/sql/queries/__init__.py +0 -121
  344. omlish-0.0.0.dev461/omlish/subprocesses/base.py +0 -222
  345. omlish-0.0.0.dev461/omlish/subprocesses/editor.py +0 -112
  346. omlish-0.0.0.dev461/omlish/sync.py +0 -165
  347. omlish-0.0.0.dev461/omlish/testing/pytest/plugins/asyncs/fixtures.py +0 -272
  348. omlish-0.0.0.dev461/omlish/testing/pytest/plugins/asyncs/plugin.py +0 -184
  349. omlish-0.0.0.dev461/omlish/testing/pytest/plugins/skips.py +0 -30
  350. omlish-0.0.0.dev461/omlish/testing/unittest/main.py +0 -277
  351. omlish-0.0.0.dev461/omlish/text/filecache.py +0 -235
  352. omlish-0.0.0.dev461/omlish/typedvalues/collection.py +0 -217
  353. omlish-0.0.0.dev461/omlish/typedvalues/generic.py +0 -27
  354. omlish-0.0.0.dev461/omlish/typedvalues/values.py +0 -62
  355. omlish-0.0.0.dev461/omlish.egg-info/PKG-INFO +0 -304
  356. omlish-0.0.0.dev461/omlish.egg-info/SOURCES.txt +0 -838
  357. omlish-0.0.0.dev461/omlish.egg-info/requires.txt +0 -101
  358. omlish-0.0.0.dev461/pyproject.toml +0 -161
  359. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/LICENSE +0 -0
  360. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/MANIFEST.in +0 -0
  361. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/__init__.py +0 -0
  362. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/algorithm/__init__.py +0 -0
  363. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/algorithm/all.py +0 -0
  364. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/algorithm/distribute.py +0 -0
  365. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/algorithm/toposort.py +0 -0
  366. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/algorithm/unify.py +0 -0
  367. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/argparse/__init__.py +0 -0
  368. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/__init__.py +0 -0
  369. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/all.py +0 -0
  370. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/__init__.py +0 -0
  371. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/backends.py +0 -0
  372. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/futures.py +0 -0
  373. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/signals.py +0 -0
  374. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/streams.py +0 -0
  375. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/subprocesses.py +0 -0
  376. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/sync.py +0 -0
  377. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/anyio/utils.py +0 -0
  378. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/asyncio/__init__.py +0 -0
  379. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/asyncio/all.py +0 -0
  380. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/asyncio/channels.py +0 -0
  381. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/asyncio/sockets.py +0 -0
  382. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/asyncio/streams.py +0 -0
  383. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/asyncio/subprocesses.py +0 -0
  384. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/asyncio/timeouts.py +0 -0
  385. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/buffers.py +0 -0
  386. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/flavors.py +0 -0
  387. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/ioproxy/__init__.py +0 -0
  388. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/ioproxy/all.py +0 -0
  389. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/ioproxy/io.py +0 -0
  390. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/ioproxy/proxier.py +0 -0
  391. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/ioproxy/proxy.py +0 -0
  392. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/ioproxy/typing.py +0 -0
  393. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/trio.py +0 -0
  394. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/asyncs/trio_asyncio.py +0 -0
  395. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/bootstrap/__init__.py +0 -0
  396. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/bootstrap/__main__.py +0 -0
  397. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/bootstrap/_marshal.py +0 -0
  398. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/bootstrap/base.py +0 -0
  399. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/bootstrap/harness.py +0 -0
  400. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/c3.py +0 -0
  401. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/cached.py +0 -0
  402. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/cexts/__init__.py +0 -0
  403. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/cexts/include/omlish/omlish.hh +0 -0
  404. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/__init__.py +0 -0
  405. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/base.py +0 -0
  406. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/bytes.py +0 -0
  407. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/chain.py +0 -0
  408. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/funcs.py +0 -0
  409. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/registry.py +0 -0
  410. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/standard.py +0 -0
  411. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/codecs/text.py +0 -0
  412. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/abc.py +0 -0
  413. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/bimap.py +0 -0
  414. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/cache/__init__.py +0 -0
  415. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/cache/descriptor.py +0 -0
  416. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/cache/types.py +0 -0
  417. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/coerce.py +0 -0
  418. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/frozen.py +0 -0
  419. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/hasheq.py +0 -0
  420. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/identity.py +0 -0
  421. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/kv/__init__.py +0 -0
  422. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/kv/base.py +0 -0
  423. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/kv/capabilities.py +0 -0
  424. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/kv/filtered.py +0 -0
  425. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/kv/mappings.py +0 -0
  426. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/kv/transformed.py +0 -0
  427. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/kv/wrappers.py +0 -0
  428. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/mappings.py +0 -0
  429. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/multimaps.py +0 -0
  430. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/ordered.py +0 -0
  431. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/persistent/__init__.py +0 -0
  432. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/persistent/persistent.py +0 -0
  433. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/persistent/treap.py +0 -0
  434. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/persistent/treapmap.py +0 -0
  435. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/ranked.py +0 -0
  436. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/sorted/__init__.py +0 -0
  437. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/sorted/skiplist.py +0 -0
  438. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/sorted/sorted.py +0 -0
  439. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/collections/unmodifiable.py +0 -0
  440. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/concurrent/__init__.py +0 -0
  441. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/concurrent/executors.py +0 -0
  442. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/__init__.py +0 -0
  443. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/all.py +0 -0
  444. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/classes.py +0 -0
  445. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/formats.py +0 -0
  446. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/nginx.py +0 -0
  447. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/__init__.py +0 -0
  448. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/all.py +0 -0
  449. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/flattening.py +0 -0
  450. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/inheritance.py +0 -0
  451. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/matching.py +0 -0
  452. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/merging.py +0 -0
  453. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/names.py +0 -0
  454. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/rewriting.py +0 -0
  455. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/processing/strings.py +0 -0
  456. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/shadow.py +0 -0
  457. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/configs/types.py +0 -0
  458. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/daemons/__init__.py +0 -0
  459. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/daemons/daemon.py +0 -0
  460. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/daemons/launching.py +0 -0
  461. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/daemons/services.py +0 -0
  462. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/daemons/targets.py +0 -0
  463. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/daemons/waiting.py +0 -0
  464. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/_internals.py +0 -0
  465. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/debug.py +0 -0
  466. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/errors.py +0 -0
  467. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/__init__.py +0 -0
  468. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/__init__.py +0 -0
  469. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/classes/__init__.py +0 -0
  470. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/classes/conversion.py +0 -0
  471. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/classes/metadata.py +0 -0
  472. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/classes/params.py +0 -0
  473. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/fields/__init__.py +0 -0
  474. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/fields/building.py +0 -0
  475. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/fields/constructor.py +0 -0
  476. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/fields/conversion.py +0 -0
  477. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/api/fields/metadata.py +0 -0
  478. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/__init__.py +0 -0
  479. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/abc.py +0 -0
  480. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/copy.py +0 -0
  481. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/doc.py +0 -0
  482. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/eq.py +0 -0
  483. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/fields.py +0 -0
  484. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/hash.py +0 -0
  485. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/init.py +0 -0
  486. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/matchargs.py +0 -0
  487. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/mro.py +0 -0
  488. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/order.py +0 -0
  489. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/override.py +0 -0
  490. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/params.py +0 -0
  491. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/replace.py +0 -0
  492. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/concerns/slots.py +0 -0
  493. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/generation/__init__.py +0 -0
  494. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/generation/base.py +0 -0
  495. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/generation/execution.py +0 -0
  496. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/generation/idents.py +0 -0
  497. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/generation/manifests.py +0 -0
  498. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/generation/registry.py +0 -0
  499. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/generation/utils.py +0 -0
  500. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/processing/__init__.py +0 -0
  501. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/processing/priority.py +0 -0
  502. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/processing/registry.py +0 -0
  503. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/impl/utils.py +0 -0
  504. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/inspect.py +0 -0
  505. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/metaclass/__init__.py +0 -0
  506. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/metaclass/bases.py +0 -0
  507. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/metaclass/confer.py +0 -0
  508. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/metaclass/meta.py +0 -0
  509. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/metaclass/specs.py +0 -0
  510. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/reflection.py +0 -0
  511. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/tools/__init__.py +0 -0
  512. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/tools/as_.py +0 -0
  513. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/tools/iter.py +0 -0
  514. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/tools/modifiers.py +0 -0
  515. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/tools/only_.py +0 -0
  516. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/tools/repr.py +0 -0
  517. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dataclasses/tools/static.py +0 -0
  518. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/datetimes.py +0 -0
  519. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/__init__.py +0 -0
  520. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/_pycharm/__init__.py +0 -0
  521. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/asts.py +0 -0
  522. {omlish-0.0.0.dev461/omlish/docker → omlish-0.0.0.dev506/omlish/diag/cmds}/__init__.py +0 -0
  523. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/debug.py +0 -0
  524. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/procfs.py +0 -0
  525. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/procstats.py +0 -0
  526. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/pycharm.py +0 -0
  527. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/pydevd.py +0 -0
  528. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/replserver/__init__.py +0 -0
  529. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/replserver/__main__.py +0 -0
  530. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/replserver/server.py +0 -0
  531. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/threads.py +0 -0
  532. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/diag/timers.py +0 -0
  533. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dispatch/dispatch.py +0 -0
  534. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dispatch/impls.py +0 -0
  535. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dispatch/methods.py +0 -0
  536. {omlish-0.0.0.dev461/omlish/formats/ini → omlish-0.0.0.dev506/omlish/docker}/__init__.py +0 -0
  537. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/all.py +0 -0
  538. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/cli.py +0 -0
  539. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/compose.py +0 -0
  540. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/consts.py +0 -0
  541. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/detect.py +0 -0
  542. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/hub.py +0 -0
  543. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/manifests.py +0 -0
  544. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/ns1.py +0 -0
  545. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/ports.py +0 -0
  546. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/docker/timebomb.py +0 -0
  547. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dom/__init__.py +0 -0
  548. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dom/building.py +0 -0
  549. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dom/content.py +0 -0
  550. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/dom/rendering.py +0 -0
  551. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/__init__.py +0 -0
  552. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/cbor.py +0 -0
  553. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/cloudpickle.py +0 -0
  554. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/codecs.py +0 -0
  555. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/dotenv.py +0 -0
  556. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/edn/__init__.py +0 -0
  557. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/edn/codec.py +0 -0
  558. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/edn/lexing.py +0 -0
  559. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/edn/parsing.py +0 -0
  560. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/edn/values.py +0 -0
  561. {omlish-0.0.0.dev461/omlish/formats/toml → omlish-0.0.0.dev506/omlish/formats/ini}/__init__.py +0 -0
  562. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/ini/codec.py +0 -0
  563. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/ini/sections.py +0 -0
  564. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/__init__.py +0 -0
  565. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/backends/__init__.py +0 -0
  566. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/backends/base.py +0 -0
  567. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/backends/default.py +0 -0
  568. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/backends/jiter.py +0 -0
  569. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/backends/orjson.py +0 -0
  570. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/backends/std.py +0 -0
  571. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/backends/ujson.py +0 -0
  572. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/codecs.py +0 -0
  573. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/consts.py +0 -0
  574. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/encoding.py +0 -0
  575. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/literals.py +0 -0
  576. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/rendering.py +0 -0
  577. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/stream/building.py +0 -0
  578. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/stream/errors.py +0 -0
  579. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/stream/rendering.py +0 -0
  580. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/stream/utils.py +0 -0
  581. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json/types.py +0 -0
  582. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json5/__init__.py +0 -0
  583. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json5/codec.py +0 -0
  584. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json5/errors.py +0 -0
  585. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json5/literals.py +0 -0
  586. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json5/parsing.py +0 -0
  587. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json5/rendering.py +0 -0
  588. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/json5/stream.py +0 -0
  589. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/logfmt.py +0 -0
  590. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/pickle.py +0 -0
  591. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/props.py +0 -0
  592. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/repr.py +0 -0
  593. {omlish-0.0.0.dev461/omlish/funcs → omlish-0.0.0.dev506/omlish/formats/toml}/__init__.py +0 -0
  594. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/toml/codec.py +0 -0
  595. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/toml/parser.py +0 -0
  596. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/toml/writer.py +0 -0
  597. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/xml.py +0 -0
  598. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/formats/yaml.py +0 -0
  599. {omlish-0.0.0.dev461/omlish/graphs → omlish-0.0.0.dev506/omlish/funcs}/__init__.py +0 -0
  600. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/funcs/builders.py +0 -0
  601. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/funcs/genmachine.py +0 -0
  602. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/funcs/guard.py +0 -0
  603. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/funcs/pairs.py +0 -0
  604. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/funcs/pipes.py +0 -0
  605. {omlish-0.0.0.dev461/omlish/http → omlish-0.0.0.dev506/omlish/graphs}/__init__.py +0 -0
  606. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/dags.py +0 -0
  607. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/domination.py +0 -0
  608. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/dot/__init__.py +0 -0
  609. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/dot/items.py +0 -0
  610. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/dot/make.py +0 -0
  611. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/dot/rendering.py +0 -0
  612. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/dot/utils.py +0 -0
  613. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/graphs/trees.py +0 -0
  614. {omlish-0.0.0.dev461/omlish/http/clients → omlish-0.0.0.dev506/omlish/http}/__init__.py +0 -0
  615. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/asgi.py +0 -0
  616. {omlish-0.0.0.dev461/omlish/http/coro → omlish-0.0.0.dev506/omlish/http/clients}/__init__.py +0 -0
  617. {omlish-0.0.0.dev461/omlish/http/coro/client → omlish-0.0.0.dev506/omlish/http/clients/coro}/__init__.py +0 -0
  618. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/consts.py +0 -0
  619. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/cookies.py +0 -0
  620. {omlish-0.0.0.dev461/omlish/http/coro/server → omlish-0.0.0.dev506/omlish/http/coro}/__init__.py +0 -0
  621. {omlish-0.0.0.dev461/omlish/inject/impl → omlish-0.0.0.dev506/omlish/http/coro/client}/__init__.py +0 -0
  622. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/client/errors.py +0 -0
  623. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/client/headers.py +0 -0
  624. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/client/response.py +0 -0
  625. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/client/status.py +0 -0
  626. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/client/validation.py +0 -0
  627. {omlish-0.0.0.dev461/omlish/io → omlish-0.0.0.dev506/omlish/http/coro/server}/__init__.py +0 -0
  628. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/server/fdio.py +0 -0
  629. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/server/server.py +0 -0
  630. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/server/simple.py +0 -0
  631. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/coro/server/sockets.py +0 -0
  632. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/dates.py +0 -0
  633. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/encodings.py +0 -0
  634. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/handlers.py +0 -0
  635. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/headers.py +0 -0
  636. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/json.py +0 -0
  637. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/jwt.py +0 -0
  638. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/multipart.py +0 -0
  639. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/parsing.py +0 -0
  640. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/sessions.py +0 -0
  641. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/sse.py +0 -0
  642. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/urllib.py +0 -0
  643. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/versions.py +0 -0
  644. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/http/wsgi.py +0 -0
  645. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/bindings.py +0 -0
  646. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/errors.py +0 -0
  647. {omlish-0.0.0.dev461/omlish/lang/cached → omlish-0.0.0.dev506/omlish/inject/helpers}/__init__.py +0 -0
  648. {omlish-0.0.0.dev461/omlish/inject/impl → omlish-0.0.0.dev506/omlish/inject/helpers}/proxy.py +0 -0
  649. {omlish-0.0.0.dev461/omlish/lang/classes → omlish-0.0.0.dev506/omlish/inject/impl}/__init__.py +0 -0
  650. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/impl/bindings.py +0 -0
  651. /omlish-0.0.0.dev461/omlish/inject/impl/providers2.py → /omlish-0.0.0.dev506/omlish/inject/impl/providersmap.py +0 -0
  652. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/keys.py +0 -0
  653. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/listeners.py +0 -0
  654. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/lite.py +0 -0
  655. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/origins.py +0 -0
  656. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/inject/types.py +0 -0
  657. {omlish-0.0.0.dev461/omlish/lang/imports → omlish-0.0.0.dev506/omlish/io}/__init__.py +0 -0
  658. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/abc.py +0 -0
  659. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/__init__.py +0 -0
  660. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/abc.py +0 -0
  661. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/adapters.py +0 -0
  662. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/base.py +0 -0
  663. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/brotli.py +0 -0
  664. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/bz2.py +0 -0
  665. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/codecs.py +0 -0
  666. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/gzip.py +0 -0
  667. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/lz4.py +0 -0
  668. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/lzma.py +0 -0
  669. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/snappy.py +0 -0
  670. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/zlib.py +0 -0
  671. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/compress/zstd.py +0 -0
  672. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/coro/__init__.py +0 -0
  673. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/coro/consts.py +0 -0
  674. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/coro/direct.py +0 -0
  675. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/coro/readers.py +0 -0
  676. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/coro/stepped.py +0 -0
  677. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/fdio/__init__.py +0 -0
  678. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/fdio/handlers.py +0 -0
  679. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/fdio/kqueue.py +0 -0
  680. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/fdio/manager.py +0 -0
  681. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/fdio/pollers.py +0 -0
  682. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/fileno.py +0 -0
  683. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/io/pyio.py +0 -0
  684. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/iterators/__init__.py +0 -0
  685. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/iterators/iterators.py +0 -0
  686. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/iterators/recipes.py +0 -0
  687. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/iterators/tools.py +0 -0
  688. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/iterators/unique.py +0 -0
  689. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/attrstorage.py +0 -0
  690. {omlish-0.0.0.dev461/omlish/logs → omlish-0.0.0.dev506/omlish/lang/cached}/__init__.py +0 -0
  691. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/cached/function.py +0 -0
  692. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/cached/property.py +0 -0
  693. {omlish-0.0.0.dev461/omlish/logs/std → omlish-0.0.0.dev506/omlish/lang/classes}/__init__.py +0 -0
  694. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/classes/abstract.py +0 -0
  695. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/classes/bindable.py +0 -0
  696. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/classes/namespaces.py +0 -0
  697. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/classes/protocols.py +0 -0
  698. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/classes/restrict.py +0 -0
  699. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/classes/virtual.py +0 -0
  700. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/clsdct.py +0 -0
  701. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/collections.py +0 -0
  702. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/comparison.py +0 -0
  703. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/datetimes.py +0 -0
  704. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/descriptors.py +0 -0
  705. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/enums.py +0 -0
  706. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/errors.py +0 -0
  707. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/generators.py +0 -0
  708. {omlish-0.0.0.dev461/omlish/logs/typed → omlish-0.0.0.dev506/omlish/lang/imports}/__init__.py +0 -0
  709. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/imports/capture.py +0 -0
  710. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/imports/conditional.py +0 -0
  711. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/imports/lazy.py +0 -0
  712. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/imports/resolving.py +0 -0
  713. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/imports/traversal.py +0 -0
  714. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/lazyglobals.py +0 -0
  715. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/maybes.py +0 -0
  716. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/maysync.py +0 -0
  717. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/overrides.py +0 -0
  718. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/resolving.py +0 -0
  719. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/resources.py +0 -0
  720. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/strings.py +0 -0
  721. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/sys.py +0 -0
  722. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lang/typing.py +0 -0
  723. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/libc.py +0 -0
  724. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/__init__.py +0 -0
  725. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/args.py +0 -0
  726. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/attrops.py +0 -0
  727. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/cached.py +0 -0
  728. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/check.py +0 -0
  729. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/configs.py +0 -0
  730. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/imports.py +0 -0
  731. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/inject.py +0 -0
  732. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/json.py +0 -0
  733. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/marshal.py +0 -0
  734. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/maysync.py +0 -0
  735. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/objects.py +0 -0
  736. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/pycharm.py +0 -0
  737. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/reflect.py +0 -0
  738. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/resources.py +0 -0
  739. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/runtime.py +0 -0
  740. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/secrets.py +0 -0
  741. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/strings.py +0 -0
  742. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/timeouts.py +0 -0
  743. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/timing.py +0 -0
  744. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/types.py +0 -0
  745. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/lite/wrappers.py +0 -0
  746. {omlish-0.0.0.dev461/omlish/manifests → omlish-0.0.0.dev506/omlish/logs}/__init__.py +0 -0
  747. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/formatters.py +0 -0
  748. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/infos.py +0 -0
  749. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/levels.py +0 -0
  750. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/protocols.py +0 -0
  751. {omlish-0.0.0.dev461/omlish/marshal/base → omlish-0.0.0.dev506/omlish/logs/std}/__init__.py +0 -0
  752. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/std/configs.py +0 -0
  753. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/std/filters.py +0 -0
  754. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/std/formatters.py +0 -0
  755. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/std/handlers.py +0 -0
  756. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/std/json.py +0 -0
  757. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/std/proxy.py +0 -0
  758. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/std/records.py +0 -0
  759. {omlish-0.0.0.dev461/omlish/marshal/composite → omlish-0.0.0.dev506/omlish/logs/typed}/__init__.py +0 -0
  760. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/typed/bindings.py +0 -0
  761. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/typed/contexts.py +0 -0
  762. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/typed/types.py +0 -0
  763. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/typed/values.py +0 -0
  764. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/logs/warnings.py +0 -0
  765. {omlish-0.0.0.dev461/omlish/marshal/composite/unions → omlish-0.0.0.dev506/omlish/manifests}/__init__.py +0 -0
  766. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/manifests/base.py +0 -0
  767. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/manifests/globals.py +0 -0
  768. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/manifests/static.py +0 -0
  769. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/manifests/types.py +0 -0
  770. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/__init__.py +0 -0
  771. {omlish-0.0.0.dev461/omlish/marshal/factories → omlish-0.0.0.dev506/omlish/marshal/base}/__init__.py +0 -0
  772. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/configs.py +0 -0
  773. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/contexts.py +0 -0
  774. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/errors.py +0 -0
  775. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/funcs.py +0 -0
  776. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/options.py +0 -0
  777. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/overrides.py +0 -0
  778. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/registries.py +0 -0
  779. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/types.py +0 -0
  780. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/base/values.py +0 -0
  781. {omlish-0.0.0.dev461/omlish/marshal/factories/moduleimport → omlish-0.0.0.dev506/omlish/marshal/composite}/__init__.py +0 -0
  782. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/iterables.py +0 -0
  783. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/literals.py +0 -0
  784. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/mappings.py +0 -0
  785. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/maybes.py +0 -0
  786. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/newtypes.py +0 -0
  787. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/optionals.py +0 -0
  788. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/special.py +0 -0
  789. {omlish-0.0.0.dev461/omlish/marshal/singular → omlish-0.0.0.dev506/omlish/marshal/composite/unions}/__init__.py +0 -0
  790. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/unions/literals.py +0 -0
  791. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/unions/primitives.py +0 -0
  792. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/composite/wrapped.py +0 -0
  793. {omlish-0.0.0.dev461/omlish/marshal/trivial → omlish-0.0.0.dev506/omlish/marshal/factories}/__init__.py +0 -0
  794. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/invalidate.py +0 -0
  795. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/method.py +0 -0
  796. {omlish-0.0.0.dev461/omlish/os → omlish-0.0.0.dev506/omlish/marshal/factories/moduleimport}/__init__.py +0 -0
  797. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/moduleimport/configs.py +0 -0
  798. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/moduleimport/factories.py +0 -0
  799. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/multi.py +0 -0
  800. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/recursive.py +0 -0
  801. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/typecache.py +0 -0
  802. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/factories/typemap.py +0 -0
  803. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/globals.py +0 -0
  804. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/naming.py +0 -0
  805. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/objects/__init__.py +0 -0
  806. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/objects/dataclasses.py +0 -0
  807. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/objects/helpers.py +0 -0
  808. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/objects/marshal.py +0 -0
  809. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/objects/metadata.py +0 -0
  810. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/objects/namedtuples.py +0 -0
  811. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/objects/unmarshal.py +0 -0
  812. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/polymorphism/__init__.py +0 -0
  813. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/polymorphism/marshal.py +0 -0
  814. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/polymorphism/metadata.py +0 -0
  815. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/polymorphism/standard.py +0 -0
  816. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/polymorphism/unions.py +0 -0
  817. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/polymorphism/unmarshal.py +0 -0
  818. {omlish-0.0.0.dev461/omlish/os/pidfiles → omlish-0.0.0.dev506/omlish/marshal/singular}/__init__.py +0 -0
  819. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/singular/base64.py +0 -0
  820. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/singular/datetimes.py +0 -0
  821. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/singular/enums.py +0 -0
  822. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/singular/numbers.py +0 -0
  823. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/singular/primitives.py +0 -0
  824. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/singular/uuids.py +0 -0
  825. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/standard.py +0 -0
  826. {omlish-0.0.0.dev461/omlish/secrets → omlish-0.0.0.dev506/omlish/marshal/trivial}/__init__.py +0 -0
  827. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/trivial/any.py +0 -0
  828. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/trivial/forbidden.py +0 -0
  829. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/marshal/trivial/nop.py +0 -0
  830. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/math/__init__.py +0 -0
  831. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/math/bits.py +0 -0
  832. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/math/c.py +0 -0
  833. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/math/fixed.py +0 -0
  834. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/math/floats.py +0 -0
  835. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/math/histogram.py +0 -0
  836. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/math/stats.py +0 -0
  837. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/metadata.py +0 -0
  838. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/multiprocessing/__init__.py +0 -0
  839. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/multiprocessing/proxies.py +0 -0
  840. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/multiprocessing/spawn.py +0 -0
  841. {omlish-0.0.0.dev461/omlish/sockets → omlish-0.0.0.dev506/omlish/os}/__init__.py +0 -0
  842. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/atomics.py +0 -0
  843. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/deathpacts/__init__.py +0 -0
  844. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/deathpacts/base.py +0 -0
  845. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/deathpacts/heartbeatfile.py +0 -0
  846. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/deathpacts/pipe.py +0 -0
  847. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/deathsig.py +0 -0
  848. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/environ.py +0 -0
  849. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/fcntl.py +0 -0
  850. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/filemodes.py +0 -0
  851. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/files.py +0 -0
  852. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/forkhooks.py +0 -0
  853. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/journald.py +0 -0
  854. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/linux.py +0 -0
  855. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/mangle.py +0 -0
  856. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/paths.py +0 -0
  857. {omlish-0.0.0.dev461/omlish/sockets/server → omlish-0.0.0.dev506/omlish/os/pidfiles}/__init__.py +0 -0
  858. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/pidfiles/__main__.py +0 -0
  859. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/pidfiles/cli.py +0 -0
  860. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/pidfiles/manager.py +0 -0
  861. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/pidfiles/pidfile.py +0 -0
  862. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/signals.py +0 -0
  863. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/sizes.py +0 -0
  864. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/os/temp.py +0 -0
  865. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/reflect/inspect.py +0 -0
  866. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/reflect/subst.py +0 -0
  867. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/runmodule.py +0 -0
  868. {omlish-0.0.0.dev461/omlish/specs/jsonschema/keywords → omlish-0.0.0.dev506/omlish/secrets}/__init__.py +0 -0
  869. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/all.py +0 -0
  870. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/crypto.py +0 -0
  871. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/marshal.py +0 -0
  872. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/openssl.py +0 -0
  873. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/pwgen.py +0 -0
  874. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/pwhash.py +0 -0
  875. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/secrets.py +0 -0
  876. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/ssl.py +0 -0
  877. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/subprocesses.py +0 -0
  878. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/secrets/tempssl.py +0 -0
  879. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/shlex.py +0 -0
  880. {omlish-0.0.0.dev461/omlish/specs/jsonschema/schemas → omlish-0.0.0.dev506/omlish/sockets}/__init__.py +0 -0
  881. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/addresses.py +0 -0
  882. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/bind.py +0 -0
  883. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/handlers.py +0 -0
  884. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/io.py +0 -0
  885. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/ports.py +0 -0
  886. {omlish-0.0.0.dev461/omlish/specs/jsonschema/schemas/draft202012 → omlish-0.0.0.dev506/omlish/sockets/server}/__init__.py +0 -0
  887. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/server/handlers.py +0 -0
  888. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/server/server.py +0 -0
  889. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/server/ssl.py +0 -0
  890. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/server/threading.py +0 -0
  891. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sockets/wait.py +0 -0
  892. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/__init__.py +0 -0
  893. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/LICENSE +0 -0
  894. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/__main__.py +0 -0
  895. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/cli.py +0 -0
  896. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/errors.py +0 -0
  897. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/functions.py +0 -0
  898. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/lexer.py +0 -0
  899. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/parser.py +0 -0
  900. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/scope.py +0 -0
  901. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jmespath/visitor.py +0 -0
  902. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonrpc/_marshal.py +0 -0
  903. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonrpc/errors.py +0 -0
  904. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonrpc/types.py +0 -0
  905. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/__init__.py +0 -0
  906. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/_marshal.py +0 -0
  907. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/keywords/base.py +0 -0
  908. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/keywords/core.py +0 -0
  909. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/keywords/format.py +0 -0
  910. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/keywords/metadata.py +0 -0
  911. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/keywords/parse.py +0 -0
  912. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/keywords/render.py +0 -0
  913. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/keywords/validation.py +0 -0
  914. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/LICENSE +0 -0
  915. {omlish-0.0.0.dev461/omlish/specs/jsonschema/schemas/draft202012/vocabularies → omlish-0.0.0.dev506/omlish/specs/jsonschema/schemas}/__init__.py +0 -0
  916. {omlish-0.0.0.dev461/omlish/subprocesses → omlish-0.0.0.dev506/omlish/specs/jsonschema/schemas/draft202012}/__init__.py +0 -0
  917. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/metaschema.json +0 -0
  918. {omlish-0.0.0.dev461/omlish/term → omlish-0.0.0.dev506/omlish/specs/jsonschema/schemas/draft202012/vocabularies}/__init__.py +0 -0
  919. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/applicator.json +0 -0
  920. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/content.json +0 -0
  921. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/core.json +0 -0
  922. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/format-annotation.json +0 -0
  923. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/format-assertion.json +0 -0
  924. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/format.json +0 -0
  925. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/meta-data.json +0 -0
  926. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/unevaluated.json +0 -0
  927. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/validation.json +0 -0
  928. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/jsonschema/types.py +0 -0
  929. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/openapi/__init__.py +0 -0
  930. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/openapi/_marshal.py +0 -0
  931. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/specs/openapi/openapi.py +0 -0
  932. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/__init__.py +0 -0
  933. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/apiadapter.py +0 -0
  934. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/asyncs.py +0 -0
  935. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/duckdb.py +0 -0
  936. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/exprs.py +0 -0
  937. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/secrets.py +0 -0
  938. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/sqlean.py +0 -0
  939. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/alchemy/tabledefs.py +0 -0
  940. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/__init__.py +0 -0
  941. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/_queries.py +0 -0
  942. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/asquery.py +0 -0
  943. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/base.py +0 -0
  944. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/columns.py +0 -0
  945. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/errors.py +0 -0
  946. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/funcs.py +0 -0
  947. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/queries.py +0 -0
  948. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/resources.py +0 -0
  949. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/api/rows.py +0 -0
  950. {omlish-0.0.0.dev461/omlish/sql → omlish-0.0.0.dev506/omlish/sql/dbapi}/abc.py +0 -0
  951. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/dbs.py +0 -0
  952. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/params.py +0 -0
  953. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/qualifiedname.py +0 -0
  954. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/_marshal.py +0 -0
  955. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/base.py +0 -0
  956. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/binary.py +0 -0
  957. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/exprs.py +0 -0
  958. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/idents.py +0 -0
  959. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/inserts.py +0 -0
  960. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/multi.py +0 -0
  961. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/names.py +0 -0
  962. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/ops.py +0 -0
  963. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/params.py +0 -0
  964. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/relations.py +0 -0
  965. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/rendering.py +0 -0
  966. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/selects.py +0 -0
  967. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/std.py +0 -0
  968. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/stmts.py +0 -0
  969. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/unary.py +0 -0
  970. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/queries/unions.py +0 -0
  971. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/tabledefs/__init__.py +0 -0
  972. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/tabledefs/_marshal.py +0 -0
  973. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/tabledefs/dtypes.py +0 -0
  974. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/tabledefs/elements.py +0 -0
  975. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/tabledefs/lower.py +0 -0
  976. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/sql/tabledefs/tabledefs.py +0 -0
  977. {omlish-0.0.0.dev461/omlish/term/vt100 → omlish-0.0.0.dev506/omlish/subprocesses}/__init__.py +0 -0
  978. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/subprocesses/all.py +0 -0
  979. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/subprocesses/asyncs.py +0 -0
  980. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/subprocesses/maysync.py +0 -0
  981. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/subprocesses/run.py +0 -0
  982. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/subprocesses/sync.py +0 -0
  983. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/subprocesses/utils.py +0 -0
  984. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/subprocesses/wrap.py +0 -0
  985. {omlish-0.0.0.dev461/omlish/text → omlish-0.0.0.dev506/omlish/term}/__init__.py +0 -0
  986. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/term/codes.py +0 -0
  987. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/term/coloring.py +0 -0
  988. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/term/confirm.py +0 -0
  989. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/term/progressbar.py +0 -0
  990. {omlish-0.0.0.dev461/omlish/text/go → omlish-0.0.0.dev506/omlish/term/vt100}/__init__.py +0 -0
  991. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/term/vt100/c.py +0 -0
  992. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/term/vt100/states.py +0 -0
  993. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/term/vt100/terminal.py +0 -0
  994. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/__init__.py +0 -0
  995. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/__init__.py +0 -0
  996. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/helpers.py +0 -0
  997. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/inject/__init__.py +0 -0
  998. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/inject/harness.py +0 -0
  999. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/marks.py +0 -0
  1000. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/__init__.py +0 -0
  1001. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/_registry.py +0 -0
  1002. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/__init__.py +0 -0
  1003. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/backends/__init__.py +0 -0
  1004. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/backends/asyncio.py +0 -0
  1005. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/backends/base.py +0 -0
  1006. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/backends/trio.py +0 -0
  1007. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/backends/trio_asyncio.py +0 -0
  1008. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/consts.py +0 -0
  1009. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/asyncs/utils.py +0 -0
  1010. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/depskip.py +0 -0
  1011. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/logging.py +0 -0
  1012. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/managermarks.py +0 -0
  1013. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/pydevd.py +0 -0
  1014. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/repeat.py +0 -0
  1015. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/spacing.py +0 -0
  1016. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/switches/__init__.py +0 -0
  1017. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/switches/plugin.py +0 -0
  1018. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/switches/switches.py +0 -0
  1019. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/plugins/utils.py +0 -0
  1020. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/pytest/skip.py +0 -0
  1021. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/testing.py +0 -0
  1022. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/unittest/__init__.py +0 -0
  1023. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/unittest/__main__.py +0 -0
  1024. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/unittest/loading.py +0 -0
  1025. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/unittest/running.py +0 -0
  1026. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/testing/unittest/types.py +0 -0
  1027. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/asdl.py +0 -0
  1028. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/decoding.py +0 -0
  1029. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/delimit.py +0 -0
  1030. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/glyphsplit.py +0 -0
  1031. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/go/quoting.py +0 -0
  1032. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/indent.py +0 -0
  1033. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/linecache.py +0 -0
  1034. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/mangle.py +0 -0
  1035. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/minja.py +0 -0
  1036. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/parts.py +0 -0
  1037. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/random.py +0 -0
  1038. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/text/templating.py +0 -0
  1039. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/typedvalues/__init__.py +0 -0
  1040. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/typedvalues/accessor.py +0 -0
  1041. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/typedvalues/consumer.py +0 -0
  1042. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/typedvalues/holder.py +0 -0
  1043. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/typedvalues/marshal.py +0 -0
  1044. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/typedvalues/of_.py +0 -0
  1045. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish/typedvalues/reflect.py +0 -0
  1046. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish.egg-info/dependency_links.txt +0 -0
  1047. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish.egg-info/entry_points.txt +0 -0
  1048. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/omlish.egg-info/top_level.txt +0 -0
  1049. {omlish-0.0.0.dev461 → omlish-0.0.0.dev506}/setup.cfg +0 -0
@@ -0,0 +1,310 @@
1
+ Metadata-Version: 2.4
2
+ Name: omlish
3
+ Version: 0.0.0.dev506
4
+ Summary: omlish
5
+ Author: wrmsr
6
+ License-Expression: BSD-3-Clause
7
+ Project-URL: source, https://github.com/wrmsr/omlish
8
+ Classifier: Development Status :: 2 - Pre-Alpha
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Operating System :: OS Independent
11
+ Classifier: Operating System :: POSIX
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: Programming Language :: Python :: 3.13
14
+ Requires-Python: >=3.13
15
+ Description-Content-Type: text/markdown
16
+ License-File: LICENSE
17
+ Provides-Extra: all
18
+ Requires-Dist: anyio~=4.11; extra == "all"
19
+ Requires-Dist: sniffio~=1.3; extra == "all"
20
+ Requires-Dist: greenlet~=3.3; extra == "all"
21
+ Requires-Dist: trio~=0.32; extra == "all"
22
+ Requires-Dist: trio-asyncio~=0.15; extra == "all"
23
+ Requires-Dist: lz4~=4.4; extra == "all"
24
+ Requires-Dist: python-snappy~=0.7; extra == "all"
25
+ Requires-Dist: zstandard~=0.25; python_version < "3.14" and extra == "all"
26
+ Requires-Dist: brotli~=1.2; extra == "all"
27
+ Requires-Dist: asttokens~=3.0; extra == "all"
28
+ Requires-Dist: executing~=2.2; extra == "all"
29
+ Requires-Dist: psutil~=7.2; extra == "all"
30
+ Requires-Dist: orjson~=3.11; extra == "all"
31
+ Requires-Dist: ujson~=5.11; extra == "all"
32
+ Requires-Dist: pyyaml~=6.0; extra == "all"
33
+ Requires-Dist: cbor2~=5.8; extra == "all"
34
+ Requires-Dist: cloudpickle~=3.1; extra == "all"
35
+ Requires-Dist: httpx[http2]~=0.28; extra == "all"
36
+ Requires-Dist: wrapt~=2.0; extra == "all"
37
+ Requires-Dist: cryptography~=46.0; extra == "all"
38
+ Requires-Dist: sqlalchemy[asyncio]~=2.0; extra == "all"
39
+ Requires-Dist: pg8000~=1.31; extra == "all"
40
+ Requires-Dist: pymysql~=1.1; extra == "all"
41
+ Requires-Dist: snowflake-connector-python~=4.2; extra == "all"
42
+ Requires-Dist: aiomysql~=0.3; extra == "all"
43
+ Requires-Dist: aiosqlite~=0.22; extra == "all"
44
+ Requires-Dist: asyncpg~=0.31; extra == "all"
45
+ Requires-Dist: apsw~=3.51; extra == "all"
46
+ Requires-Dist: sqlean.py~=3.50; extra == "all"
47
+ Requires-Dist: duckdb~=1.4; extra == "all"
48
+ Requires-Dist: markupsafe~=3.0; extra == "all"
49
+ Requires-Dist: jinja2~=3.1; extra == "all"
50
+ Requires-Dist: pytest~=9.0; extra == "all"
51
+ Requires-Dist: anyio~=4.11; extra == "all"
52
+ Requires-Dist: sniffio~=1.3; extra == "all"
53
+ Requires-Dist: asttokens~=3.0; extra == "all"
54
+ Requires-Dist: executing~=2.2; extra == "all"
55
+ Requires-Dist: orjson~=3.11; extra == "all"
56
+ Requires-Dist: pyyaml~=6.0; extra == "all"
57
+ Requires-Dist: wrapt~=2.0; extra == "all"
58
+ Provides-Extra: async
59
+ Requires-Dist: anyio~=4.11; extra == "async"
60
+ Requires-Dist: sniffio~=1.3; extra == "async"
61
+ Requires-Dist: greenlet~=3.3; extra == "async"
62
+ Requires-Dist: trio~=0.32; extra == "async"
63
+ Requires-Dist: trio-asyncio~=0.15; extra == "async"
64
+ Provides-Extra: compress
65
+ Requires-Dist: lz4~=4.4; extra == "compress"
66
+ Requires-Dist: python-snappy~=0.7; extra == "compress"
67
+ Requires-Dist: zstandard~=0.25; python_version < "3.14" and extra == "compress"
68
+ Requires-Dist: brotli~=1.2; extra == "compress"
69
+ Provides-Extra: diag
70
+ Requires-Dist: asttokens~=3.0; extra == "diag"
71
+ Requires-Dist: executing~=2.2; extra == "diag"
72
+ Requires-Dist: psutil~=7.2; extra == "diag"
73
+ Provides-Extra: formats
74
+ Requires-Dist: orjson~=3.11; extra == "formats"
75
+ Requires-Dist: ujson~=5.11; extra == "formats"
76
+ Requires-Dist: pyyaml~=6.0; extra == "formats"
77
+ Requires-Dist: cbor2~=5.8; extra == "formats"
78
+ Requires-Dist: cloudpickle~=3.1; extra == "formats"
79
+ Provides-Extra: http
80
+ Requires-Dist: httpx[http2]~=0.28; extra == "http"
81
+ Provides-Extra: misc
82
+ Requires-Dist: wrapt~=2.0; extra == "misc"
83
+ Provides-Extra: secrets
84
+ Requires-Dist: cryptography~=46.0; extra == "secrets"
85
+ Provides-Extra: sqlalchemy
86
+ Requires-Dist: sqlalchemy[asyncio]~=2.0; extra == "sqlalchemy"
87
+ Provides-Extra: sqldrivers
88
+ Requires-Dist: pg8000~=1.31; extra == "sqldrivers"
89
+ Requires-Dist: pymysql~=1.1; extra == "sqldrivers"
90
+ Requires-Dist: snowflake-connector-python~=4.2; extra == "sqldrivers"
91
+ Requires-Dist: aiomysql~=0.3; extra == "sqldrivers"
92
+ Requires-Dist: aiosqlite~=0.22; extra == "sqldrivers"
93
+ Requires-Dist: asyncpg~=0.31; extra == "sqldrivers"
94
+ Requires-Dist: apsw~=3.51; extra == "sqldrivers"
95
+ Requires-Dist: sqlean.py~=3.50; extra == "sqldrivers"
96
+ Requires-Dist: duckdb~=1.4; extra == "sqldrivers"
97
+ Provides-Extra: templates
98
+ Requires-Dist: markupsafe~=3.0; extra == "templates"
99
+ Requires-Dist: jinja2~=3.1; extra == "templates"
100
+ Provides-Extra: testing
101
+ Requires-Dist: pytest~=9.0; extra == "testing"
102
+ Provides-Extra: plus
103
+ Requires-Dist: anyio~=4.11; extra == "plus"
104
+ Requires-Dist: sniffio~=1.3; extra == "plus"
105
+ Requires-Dist: asttokens~=3.0; extra == "plus"
106
+ Requires-Dist: executing~=2.2; extra == "plus"
107
+ Requires-Dist: orjson~=3.11; extra == "plus"
108
+ Requires-Dist: pyyaml~=6.0; extra == "plus"
109
+ Requires-Dist: wrapt~=2.0; extra == "plus"
110
+ Dynamic: license-file
111
+
112
+ # Overview
113
+
114
+ Core utilities and foundational code. It's relatively large but completely self-contained, and has **no required
115
+ dependencies of any kind**.
116
+
117
+ # Notable packages
118
+
119
+ - **[lang](https://github.com/wrmsr/omlish/blob/master/omlish/lang)** - The standard library of this standard library.
120
+ Usually imported as a whole (`from omlish import lang`), it contains an array of general purpose utilities used
121
+ practically everywhere. It is kept relatively lightweight: its heaviest import is stdlib dataclasses and its
122
+ transitives. Some of its contents include:
123
+
124
+ - **[cached](https://github.com/wrmsr/omlish/blob/master/omlish/lang/cached)** - The standard `cached_function` /
125
+ `cached_property` tools, which are more capable than
126
+ [`functools.lru_cache`](https://docs.python.org/3/library/functools.html#functools.lru_cache).
127
+ - **[imports](https://github.com/wrmsr/omlish/blob/master/omlish/lang/imports.py)** - Import tools like:
128
+ - `proxy_import` - For late-loaded imports.
129
+ - `proxy_init` - For late-loaded module globals.
130
+ - `auto_proxy_init` - For automatic late-loaded package exports.
131
+ - **[classes](https://github.com/wrmsr/omlish/blob/master/omlish/lang/classes)** - Class tools and bases, such as
132
+ `Abstract` (which checks at subclass definition not instantiation), `Sealed` / `PackageSealed`, and `Final`.
133
+ - **[maybes](https://github.com/wrmsr/omlish/blob/master/omlish/lite/maybes.py)** - A simple, nestable formalization
134
+ of the presence or absence of an object, as in [many](https://en.cppreference.com/w/cpp/utility/optional)
135
+ [other](https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html)
136
+ [languages](https://doc.rust-lang.org/std/option/).
137
+ - **[maysync](https://github.com/wrmsr/omlish/blob/master/omlish/lite/maysync.py)** - A lightweight means of sharing
138
+ code between sync and async contexts, eliminating the need for maintaining sync and async versions of functions.
139
+
140
+ - **[bootstrap](https://github.com/wrmsr/omlish/blob/master/omlish/bootstrap)** - A centralized, configurable,
141
+ all-in-one collection of various process-initialization minutiae like resource limiting, profiling, remote debugging,
142
+ log configuration, environment variables, et cetera. Usable as a context manager or via its
143
+ [cli](https://github.com/wrmsr/omlish/blob/master/omlish/bootstrap/main.py).
144
+
145
+ - **[collections](https://github.com/wrmsr/omlish/blob/master/omlish/collections)** - A handful of collection utilities
146
+ and simple implementations, including:
147
+
148
+ - **[cache](https://github.com/wrmsr/omlish/blob/master/omlish/collections/cache)** - A configurable LRU / LFU cache
149
+ with options like ttl and max size / weight.
150
+ - **[hasheq](https://github.com/wrmsr/omlish/blob/master/omlish/collections/hasheq.py)** - A dict taking an external
151
+ `__hash__` / `__eq__` implementation.
152
+ - **[identity](https://github.com/wrmsr/omlish/blob/master/omlish/collections/identity.py)** - Identity-keyed
153
+ collections.
154
+ - **[sorted](https://github.com/wrmsr/omlish/blob/master/omlish/collections/sorted)** - Interfaces for value-sorted
155
+ collections and key-sorted mappings, and a simple but correct skiplist-backed implementation.
156
+ - **[persistent](https://github.com/wrmsr/omlish/blob/master/omlish/collections/persistent)** - Interfaces for
157
+ [persistent](https://en.wikipedia.org/wiki/Persistent_data_structure) maps, and a simple but correct treap-backed
158
+ implementation.
159
+
160
+ - **[dataclasses](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses)** - A fully-compatible
161
+ reimplementation of stdlib [dataclasses](https://docs.python.org/3/library/dataclasses.html) with numerous
162
+ enhancements and additional features. The
163
+ [full stdlib test suite](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses/tests/cpython) is run against
164
+ it ensuring compatibility - they *are* dataclasses. Current enhancements include:
165
+
166
+ - Simple field coercion and validation.
167
+ - Any number of `@dc.init` or `@dc.validate` methods, not just a central `__post_init__`.
168
+ - Optional generic type parameter substitution in generated `__init__` methods, enabling accurate reflection.
169
+ - An optional [metaclass](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses/metaclass) which removes the
170
+ need for re-decorating subclasses (with support for inheritance of dataclass parameters like `frozen`), and some
171
+ basic [base classes](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses/metaclass/bases.py).
172
+ - Support for ahead-of-time / build-time code generation, significantly reducing import times.
173
+
174
+ The stdlib-equivalent api is exported in such a way as to appear to be direct aliases for the stdlib api itself,
175
+ simplifying tool support.
176
+
177
+ - **[dispatch](https://github.com/wrmsr/omlish/blob/master/omlish/dispatch)** - A beefed-up version of
178
+ [functools.singledispatch](https://docs.python.org/3/library/functools.html#functools.singledispatch), most notably
179
+ supporting MRO-honoring method impl dispatch.
180
+
181
+ - **[formats](https://github.com/wrmsr/omlish/blob/master/omlish/formats)** - Tools for various data formats, including:
182
+
183
+ - **[json](https://github.com/wrmsr/omlish/blob/master/omlish/formats/json)** - Tools for json, including abstraction
184
+ over various backends and a self-contained streaming / incremental parser.
185
+ - **[json5](https://github.com/wrmsr/omlish/blob/master/omlish/formats/json5)** - A self-contained and tested
186
+ [Json5](https://json5.org/) parser.
187
+ - **[toml](https://github.com/wrmsr/omlish/blob/master/omlish/formats/toml)** - Toml tools, including a
188
+ [lite](#lite-code) version of the stdlib parser (for use in older pythons).
189
+
190
+ - **[http](https://github.com/wrmsr/omlish/blob/master/omlish/http)** - HTTP code, including:
191
+
192
+ - **[clients](https://github.com/wrmsr/omlish/blob/master/omlish/http/clients)** - An abstraction over HTTP clients,
193
+ with urllib and httpx implementations.
194
+ - **[coro](https://github.com/wrmsr/omlish/blob/master/omlish/http/coro)** - Coroutine /
195
+ [sans-io](https://sans-io.readthedocs.io/) style reformulation of some stdlib http machinery - namely `http.server`
196
+ (and soon `http.client`). This style of code can run the same in sync, async, or
197
+ [any](https://docs.python.org/3/library/selectors.html)
198
+ [other](https://github.com/wrmsr/omlish/blob/master/omlish/asyncs/bluelet) context.
199
+
200
+ - **[inject](https://github.com/wrmsr/omlish/blob/master/omlish/inject)** - A
201
+ [guice](https://github.com/google/guice)-style dependency injector.
202
+
203
+ - **[io](https://github.com/wrmsr/omlish/blob/master/omlish/io)** - IO tools, including:
204
+
205
+ - **[compress](https://github.com/wrmsr/omlish/blob/master/omlish/io/compress)** - Abstraction over various
206
+ compression schemes, with particular attention to incremental operation. For example it includes
207
+ [an incremental reformulation of stdlib's gzip](https://github.com/wrmsr/omlish/blob/master/omlish/io/compress/gzip.py).
208
+ - **[coro](https://github.com/wrmsr/omlish/blob/master/omlish/io/coro)** - Utilities for coroutine / sans-io style
209
+ code.
210
+ - **[fdio](https://github.com/wrmsr/omlish/blob/master/omlish/io/fdio)** - An implementation of classic
211
+ [selector](https://docs.python.org/3/library/selectors.html)-style IO dispatch, akin to the deprecated
212
+ [asyncore](https://docs.python.org/3.11/library/asyncore.html). While more modern asyncio style code is generally
213
+ preferred, it nearly always involves
214
+ [background threads](https://github.com/python/cpython/blob/95d9dea1c4ed1b1de80074b74301cee0b38d5541/Lib/asyncio/unix_events.py#L1349)
215
+ making it [unsuitable for forking processes](https://rachelbythebay.com/w/2011/06/07/forked/) like
216
+ [process supervisors](https://github.com/wrmsr/omlish/blob/master/ominfra/supervisor).
217
+
218
+ - **[jmespath](https://github.com/wrmsr/omlish/blob/master/omlish/specs/jmespath)** - A vendoring of
219
+ [jmespath community edition](https://github.com/jmespath-community/python-jmespath), modernized and adapted to this
220
+ codebase.
221
+
222
+ - **[marshal](https://github.com/wrmsr/omlish/blob/master/omlish/marshal)** - A
223
+ [jackson](https://github.com/FasterXML/jackson)-style serde system.
224
+
225
+ - **[manifests](https://github.com/wrmsr/omlish/blob/master/omlish/manifests)** - A system for sharing lightweight
226
+ metadata within / across codebases.
227
+
228
+ - **[reflect](https://github.com/wrmsr/omlish/blob/master/omlish/reflect)** - Reflection utilities, including primarily
229
+ a formalization of stdlib type annotations for use at runtime, decoupled from stdlib impl detail. Keeping this working
230
+ is notoriously difficult across python versions (one of the primary reasons for only supporting 3.13+).
231
+
232
+ - **[sql](https://github.com/wrmsr/omlish/blob/master/omlish/sql)** - A collection of SQL utilities, including:
233
+
234
+ - **[api](https://github.com/wrmsr/omlish/blob/master/omlish/sql/api)** - An abstracted api for SQL interaction, with
235
+ support for dbapi compatible drivers (and a SQLAlchemy adapter).
236
+ - **[queries](https://github.com/wrmsr/omlish/blob/master/omlish/sql/queries)** - A SQL query builder with a fluent
237
+ interface.
238
+ - **[alchemy](https://github.com/wrmsr/omlish/blob/master/omlish/sql/alchemy)** - SQLAlchemy utilities. The codebase
239
+ has moved away from SQLAlchemy in favor of its own internal SQL api, but it will likely still remain as an optional
240
+ dep for the api adapter.
241
+
242
+ - **[testing](https://github.com/wrmsr/omlish/blob/master/omlish/testing)** - Test - primarily pytest - helpers,
243
+ including:
244
+
245
+ - **['harness'](https://github.com/wrmsr/omlish/blob/master/omlish/testing/pytest/inject/harness.py)** - An all-in-one
246
+ fixture marrying it to the codebase's dependency injector.
247
+ - **[plugins/async](https://github.com/wrmsr/omlish/blob/master/omlish/testing/pytest/plugins/asyncs)** - An in-house
248
+ async-backend abstraction plugin, capable of handling all of asyncio / trio / trio-asyncio /
249
+ *any-future-event-loop-impl* without having multiple fighting plugins (*[I know, I know](https://xkcd.com/927/)*).
250
+ - **[plugins](https://github.com/wrmsr/omlish/blob/master/omlish/testing/pytest/plugins)** - Various other plugins.
251
+
252
+ - **[typedvalues](https://github.com/wrmsr/omlish/blob/master/omlish/typedvalues)** - A little toolkit around 'boxed'
253
+ values, whose 'box' types convey more information than the bare values themselves. A rebellion against kwargs / env
254
+ vars / giant config objects: instead of `foo(bar=1, baz=2)`, you do `foo(Bar(1), Baz(2))`.
255
+
256
+ - **[lite](https://github.com/wrmsr/omlish/blob/master/omlish/lite)** - The standard library of 'lite' code. This is the
257
+ only package beneath `lang`, and parts of it are re-exported by it for deduplication. On top of miscellaneous
258
+ utilities it contains a handful of independent, self-contained, significantly simplified 'lite' equivalents of some
259
+ major core packages:
260
+
261
+ - **[lite/inject.py](https://github.com/wrmsr/omlish/blob/master/omlish/lite/inject.py)** - The lite injector, which
262
+ is more conservative with features and reflection than the core injector. The codebase's
263
+ [MiniGuice](https://github.com/google/guice/commit/70248eafa90cd70a68b293763e53f6aec656e73c).
264
+ - **[lite/marshal.py](https://github.com/wrmsr/omlish/blob/master/omlish/lite/marshal.py)** - The lite marshalling
265
+ system, which is a classic canned setup of simple type-specific 2-method classes and limited generic handling.
266
+
267
+ # Lite code
268
+
269
+ A subset of this codebase is written in a 'lite' style (non-'lite' code is referred to as *standard* code). While
270
+ standard code is written for python 3.13+, 'lite' code is written for 3.8+, and is written in a style conducive to
271
+ [amalgamation](https://github.com/wrmsr/omlish/blob/master/omdev#amalgamation) in which multiple python source files are
272
+ stitched together into one single self-contained python script.
273
+
274
+ Code written in this style has notable differences from standard code, including (but not limited to):
275
+
276
+ - No name mangling is done in amalgamation, which means (among other things) that code must be written expecting to be
277
+ all dumped into the same giant namespace. Where a standard class might be
278
+ [`omlish.inject.keys.Key`](https://github.com/wrmsr/omlish/blob/master/omlish/inject/keys.py), a lite equivalent might
279
+ be [`omlish.lite.inject.InjectorKey`](https://github.com/wrmsr/omlish/blob/master/omlish/lite/inject.py).
280
+ - All internal imports `import` each individual item out of modules rather than importing the modules and referencing
281
+ their contents. Where standard code would `from .. import x; x.y`, lite code would `from ..x import y; y`. As a result
282
+ there are frequently 'api' non-instantiated namespace classes serving the purpose of modules - just handy bags of
283
+ stuff with shortened names.
284
+ - As lite code is tested in 3.8+ but core code requires 3.13+, packages containing lite code can't import anything
285
+ standard in their (and their ancestors') `__init__.py`'s. Furthermore, `__init__.py` files are omitted outright in
286
+ amalgamation, so they effectively must be empty in any package containing any lite code. As a result there are
287
+ frequently [`all.py`](https://github.com/wrmsr/omlish/blob/master/omlish/configs/all.py) files in mixed-lite packages
288
+ which serve the purpose of `__init__.py` for standard usage - where importing standard packages from standard code
289
+ would be done via `from .. import lang`, importing mixed-lite packages from standard code would be done via
290
+ `from ..configs import all as cfgs`.
291
+
292
+ # Dependencies
293
+
294
+ This library has no required dependencies of any kind, but there are some optional integrations - see
295
+ [`__about__.py`](https://github.com/wrmsr/omlish/blob/master/omlish/__about__.py) for a full list, but some specific
296
+ examples are:
297
+
298
+ - **asttokens / executing** - For getting runtime source representations of function call arguments, an optional
299
+ capability of [check](https://github.com/wrmsr/omlish/blob/master/omlish/check.py).
300
+ - **anyio** - While lite code must use only asyncio, non-trivial async standard code prefers to be written to anyio.
301
+ - **pytest** - What is used for all standard testing - as lite code has no dependencies of any kind its testing uses
302
+ stdlib's [unittest](https://docs.python.org/3/library/unittest.html).
303
+ - **sqlalchemy** - The codebase has migrated away from SQLAlchemy in favor of the internal api but it retains it as an
304
+ optional dep to support adapting the internal api to it.
305
+
306
+ Additionally, some catchall dep categories include:
307
+
308
+ - **compression** - Various preferred compression backends like lz4, python-snappy, zstandard, and brotli.
309
+ - **formats** - Various preferred data format backends like orjson/ujson, pyyaml, cbor2, and cloudpickle.
310
+ - **sql drivers** - Various preferred and tested sql drivers.
@@ -0,0 +1,199 @@
1
+ # Overview
2
+
3
+ Core utilities and foundational code. It's relatively large but completely self-contained, and has **no required
4
+ dependencies of any kind**.
5
+
6
+ # Notable packages
7
+
8
+ - **[lang](https://github.com/wrmsr/omlish/blob/master/omlish/lang)** - The standard library of this standard library.
9
+ Usually imported as a whole (`from omlish import lang`), it contains an array of general purpose utilities used
10
+ practically everywhere. It is kept relatively lightweight: its heaviest import is stdlib dataclasses and its
11
+ transitives. Some of its contents include:
12
+
13
+ - **[cached](https://github.com/wrmsr/omlish/blob/master/omlish/lang/cached)** - The standard `cached_function` /
14
+ `cached_property` tools, which are more capable than
15
+ [`functools.lru_cache`](https://docs.python.org/3/library/functools.html#functools.lru_cache).
16
+ - **[imports](https://github.com/wrmsr/omlish/blob/master/omlish/lang/imports.py)** - Import tools like:
17
+ - `proxy_import` - For late-loaded imports.
18
+ - `proxy_init` - For late-loaded module globals.
19
+ - `auto_proxy_init` - For automatic late-loaded package exports.
20
+ - **[classes](https://github.com/wrmsr/omlish/blob/master/omlish/lang/classes)** - Class tools and bases, such as
21
+ `Abstract` (which checks at subclass definition not instantiation), `Sealed` / `PackageSealed`, and `Final`.
22
+ - **[maybes](https://github.com/wrmsr/omlish/blob/master/omlish/lite/maybes.py)** - A simple, nestable formalization
23
+ of the presence or absence of an object, as in [many](https://en.cppreference.com/w/cpp/utility/optional)
24
+ [other](https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html)
25
+ [languages](https://doc.rust-lang.org/std/option/).
26
+ - **[maysync](https://github.com/wrmsr/omlish/blob/master/omlish/lite/maysync.py)** - A lightweight means of sharing
27
+ code between sync and async contexts, eliminating the need for maintaining sync and async versions of functions.
28
+
29
+ - **[bootstrap](https://github.com/wrmsr/omlish/blob/master/omlish/bootstrap)** - A centralized, configurable,
30
+ all-in-one collection of various process-initialization minutiae like resource limiting, profiling, remote debugging,
31
+ log configuration, environment variables, et cetera. Usable as a context manager or via its
32
+ [cli](https://github.com/wrmsr/omlish/blob/master/omlish/bootstrap/main.py).
33
+
34
+ - **[collections](https://github.com/wrmsr/omlish/blob/master/omlish/collections)** - A handful of collection utilities
35
+ and simple implementations, including:
36
+
37
+ - **[cache](https://github.com/wrmsr/omlish/blob/master/omlish/collections/cache)** - A configurable LRU / LFU cache
38
+ with options like ttl and max size / weight.
39
+ - **[hasheq](https://github.com/wrmsr/omlish/blob/master/omlish/collections/hasheq.py)** - A dict taking an external
40
+ `__hash__` / `__eq__` implementation.
41
+ - **[identity](https://github.com/wrmsr/omlish/blob/master/omlish/collections/identity.py)** - Identity-keyed
42
+ collections.
43
+ - **[sorted](https://github.com/wrmsr/omlish/blob/master/omlish/collections/sorted)** - Interfaces for value-sorted
44
+ collections and key-sorted mappings, and a simple but correct skiplist-backed implementation.
45
+ - **[persistent](https://github.com/wrmsr/omlish/blob/master/omlish/collections/persistent)** - Interfaces for
46
+ [persistent](https://en.wikipedia.org/wiki/Persistent_data_structure) maps, and a simple but correct treap-backed
47
+ implementation.
48
+
49
+ - **[dataclasses](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses)** - A fully-compatible
50
+ reimplementation of stdlib [dataclasses](https://docs.python.org/3/library/dataclasses.html) with numerous
51
+ enhancements and additional features. The
52
+ [full stdlib test suite](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses/tests/cpython) is run against
53
+ it ensuring compatibility - they *are* dataclasses. Current enhancements include:
54
+
55
+ - Simple field coercion and validation.
56
+ - Any number of `@dc.init` or `@dc.validate` methods, not just a central `__post_init__`.
57
+ - Optional generic type parameter substitution in generated `__init__` methods, enabling accurate reflection.
58
+ - An optional [metaclass](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses/metaclass) which removes the
59
+ need for re-decorating subclasses (with support for inheritance of dataclass parameters like `frozen`), and some
60
+ basic [base classes](https://github.com/wrmsr/omlish/blob/master/omlish/dataclasses/metaclass/bases.py).
61
+ - Support for ahead-of-time / build-time code generation, significantly reducing import times.
62
+
63
+ The stdlib-equivalent api is exported in such a way as to appear to be direct aliases for the stdlib api itself,
64
+ simplifying tool support.
65
+
66
+ - **[dispatch](https://github.com/wrmsr/omlish/blob/master/omlish/dispatch)** - A beefed-up version of
67
+ [functools.singledispatch](https://docs.python.org/3/library/functools.html#functools.singledispatch), most notably
68
+ supporting MRO-honoring method impl dispatch.
69
+
70
+ - **[formats](https://github.com/wrmsr/omlish/blob/master/omlish/formats)** - Tools for various data formats, including:
71
+
72
+ - **[json](https://github.com/wrmsr/omlish/blob/master/omlish/formats/json)** - Tools for json, including abstraction
73
+ over various backends and a self-contained streaming / incremental parser.
74
+ - **[json5](https://github.com/wrmsr/omlish/blob/master/omlish/formats/json5)** - A self-contained and tested
75
+ [Json5](https://json5.org/) parser.
76
+ - **[toml](https://github.com/wrmsr/omlish/blob/master/omlish/formats/toml)** - Toml tools, including a
77
+ [lite](#lite-code) version of the stdlib parser (for use in older pythons).
78
+
79
+ - **[http](https://github.com/wrmsr/omlish/blob/master/omlish/http)** - HTTP code, including:
80
+
81
+ - **[clients](https://github.com/wrmsr/omlish/blob/master/omlish/http/clients)** - An abstraction over HTTP clients,
82
+ with urllib and httpx implementations.
83
+ - **[coro](https://github.com/wrmsr/omlish/blob/master/omlish/http/coro)** - Coroutine /
84
+ [sans-io](https://sans-io.readthedocs.io/) style reformulation of some stdlib http machinery - namely `http.server`
85
+ (and soon `http.client`). This style of code can run the same in sync, async, or
86
+ [any](https://docs.python.org/3/library/selectors.html)
87
+ [other](https://github.com/wrmsr/omlish/blob/master/omlish/asyncs/bluelet) context.
88
+
89
+ - **[inject](https://github.com/wrmsr/omlish/blob/master/omlish/inject)** - A
90
+ [guice](https://github.com/google/guice)-style dependency injector.
91
+
92
+ - **[io](https://github.com/wrmsr/omlish/blob/master/omlish/io)** - IO tools, including:
93
+
94
+ - **[compress](https://github.com/wrmsr/omlish/blob/master/omlish/io/compress)** - Abstraction over various
95
+ compression schemes, with particular attention to incremental operation. For example it includes
96
+ [an incremental reformulation of stdlib's gzip](https://github.com/wrmsr/omlish/blob/master/omlish/io/compress/gzip.py).
97
+ - **[coro](https://github.com/wrmsr/omlish/blob/master/omlish/io/coro)** - Utilities for coroutine / sans-io style
98
+ code.
99
+ - **[fdio](https://github.com/wrmsr/omlish/blob/master/omlish/io/fdio)** - An implementation of classic
100
+ [selector](https://docs.python.org/3/library/selectors.html)-style IO dispatch, akin to the deprecated
101
+ [asyncore](https://docs.python.org/3.11/library/asyncore.html). While more modern asyncio style code is generally
102
+ preferred, it nearly always involves
103
+ [background threads](https://github.com/python/cpython/blob/95d9dea1c4ed1b1de80074b74301cee0b38d5541/Lib/asyncio/unix_events.py#L1349)
104
+ making it [unsuitable for forking processes](https://rachelbythebay.com/w/2011/06/07/forked/) like
105
+ [process supervisors](https://github.com/wrmsr/omlish/blob/master/ominfra/supervisor).
106
+
107
+ - **[jmespath](https://github.com/wrmsr/omlish/blob/master/omlish/specs/jmespath)** - A vendoring of
108
+ [jmespath community edition](https://github.com/jmespath-community/python-jmespath), modernized and adapted to this
109
+ codebase.
110
+
111
+ - **[marshal](https://github.com/wrmsr/omlish/blob/master/omlish/marshal)** - A
112
+ [jackson](https://github.com/FasterXML/jackson)-style serde system.
113
+
114
+ - **[manifests](https://github.com/wrmsr/omlish/blob/master/omlish/manifests)** - A system for sharing lightweight
115
+ metadata within / across codebases.
116
+
117
+ - **[reflect](https://github.com/wrmsr/omlish/blob/master/omlish/reflect)** - Reflection utilities, including primarily
118
+ a formalization of stdlib type annotations for use at runtime, decoupled from stdlib impl detail. Keeping this working
119
+ is notoriously difficult across python versions (one of the primary reasons for only supporting 3.13+).
120
+
121
+ - **[sql](https://github.com/wrmsr/omlish/blob/master/omlish/sql)** - A collection of SQL utilities, including:
122
+
123
+ - **[api](https://github.com/wrmsr/omlish/blob/master/omlish/sql/api)** - An abstracted api for SQL interaction, with
124
+ support for dbapi compatible drivers (and a SQLAlchemy adapter).
125
+ - **[queries](https://github.com/wrmsr/omlish/blob/master/omlish/sql/queries)** - A SQL query builder with a fluent
126
+ interface.
127
+ - **[alchemy](https://github.com/wrmsr/omlish/blob/master/omlish/sql/alchemy)** - SQLAlchemy utilities. The codebase
128
+ has moved away from SQLAlchemy in favor of its own internal SQL api, but it will likely still remain as an optional
129
+ dep for the api adapter.
130
+
131
+ - **[testing](https://github.com/wrmsr/omlish/blob/master/omlish/testing)** - Test - primarily pytest - helpers,
132
+ including:
133
+
134
+ - **['harness'](https://github.com/wrmsr/omlish/blob/master/omlish/testing/pytest/inject/harness.py)** - An all-in-one
135
+ fixture marrying it to the codebase's dependency injector.
136
+ - **[plugins/async](https://github.com/wrmsr/omlish/blob/master/omlish/testing/pytest/plugins/asyncs)** - An in-house
137
+ async-backend abstraction plugin, capable of handling all of asyncio / trio / trio-asyncio /
138
+ *any-future-event-loop-impl* without having multiple fighting plugins (*[I know, I know](https://xkcd.com/927/)*).
139
+ - **[plugins](https://github.com/wrmsr/omlish/blob/master/omlish/testing/pytest/plugins)** - Various other plugins.
140
+
141
+ - **[typedvalues](https://github.com/wrmsr/omlish/blob/master/omlish/typedvalues)** - A little toolkit around 'boxed'
142
+ values, whose 'box' types convey more information than the bare values themselves. A rebellion against kwargs / env
143
+ vars / giant config objects: instead of `foo(bar=1, baz=2)`, you do `foo(Bar(1), Baz(2))`.
144
+
145
+ - **[lite](https://github.com/wrmsr/omlish/blob/master/omlish/lite)** - The standard library of 'lite' code. This is the
146
+ only package beneath `lang`, and parts of it are re-exported by it for deduplication. On top of miscellaneous
147
+ utilities it contains a handful of independent, self-contained, significantly simplified 'lite' equivalents of some
148
+ major core packages:
149
+
150
+ - **[lite/inject.py](https://github.com/wrmsr/omlish/blob/master/omlish/lite/inject.py)** - The lite injector, which
151
+ is more conservative with features and reflection than the core injector. The codebase's
152
+ [MiniGuice](https://github.com/google/guice/commit/70248eafa90cd70a68b293763e53f6aec656e73c).
153
+ - **[lite/marshal.py](https://github.com/wrmsr/omlish/blob/master/omlish/lite/marshal.py)** - The lite marshalling
154
+ system, which is a classic canned setup of simple type-specific 2-method classes and limited generic handling.
155
+
156
+ # Lite code
157
+
158
+ A subset of this codebase is written in a 'lite' style (non-'lite' code is referred to as *standard* code). While
159
+ standard code is written for python 3.13+, 'lite' code is written for 3.8+, and is written in a style conducive to
160
+ [amalgamation](https://github.com/wrmsr/omlish/blob/master/omdev#amalgamation) in which multiple python source files are
161
+ stitched together into one single self-contained python script.
162
+
163
+ Code written in this style has notable differences from standard code, including (but not limited to):
164
+
165
+ - No name mangling is done in amalgamation, which means (among other things) that code must be written expecting to be
166
+ all dumped into the same giant namespace. Where a standard class might be
167
+ [`omlish.inject.keys.Key`](https://github.com/wrmsr/omlish/blob/master/omlish/inject/keys.py), a lite equivalent might
168
+ be [`omlish.lite.inject.InjectorKey`](https://github.com/wrmsr/omlish/blob/master/omlish/lite/inject.py).
169
+ - All internal imports `import` each individual item out of modules rather than importing the modules and referencing
170
+ their contents. Where standard code would `from .. import x; x.y`, lite code would `from ..x import y; y`. As a result
171
+ there are frequently 'api' non-instantiated namespace classes serving the purpose of modules - just handy bags of
172
+ stuff with shortened names.
173
+ - As lite code is tested in 3.8+ but core code requires 3.13+, packages containing lite code can't import anything
174
+ standard in their (and their ancestors') `__init__.py`'s. Furthermore, `__init__.py` files are omitted outright in
175
+ amalgamation, so they effectively must be empty in any package containing any lite code. As a result there are
176
+ frequently [`all.py`](https://github.com/wrmsr/omlish/blob/master/omlish/configs/all.py) files in mixed-lite packages
177
+ which serve the purpose of `__init__.py` for standard usage - where importing standard packages from standard code
178
+ would be done via `from .. import lang`, importing mixed-lite packages from standard code would be done via
179
+ `from ..configs import all as cfgs`.
180
+
181
+ # Dependencies
182
+
183
+ This library has no required dependencies of any kind, but there are some optional integrations - see
184
+ [`__about__.py`](https://github.com/wrmsr/omlish/blob/master/omlish/__about__.py) for a full list, but some specific
185
+ examples are:
186
+
187
+ - **asttokens / executing** - For getting runtime source representations of function call arguments, an optional
188
+ capability of [check](https://github.com/wrmsr/omlish/blob/master/omlish/check.py).
189
+ - **anyio** - While lite code must use only asyncio, non-trivial async standard code prefers to be written to anyio.
190
+ - **pytest** - What is used for all standard testing - as lite code has no dependencies of any kind its testing uses
191
+ stdlib's [unittest](https://docs.python.org/3/library/unittest.html).
192
+ - **sqlalchemy** - The codebase has migrated away from SQLAlchemy in favor of the internal api but it retains it as an
193
+ optional dep to support adapting the internal api to it.
194
+
195
+ Additionally, some catchall dep categories include:
196
+
197
+ - **compression** - Various preferred compression backends like lz4, python-snappy, zstandard, and brotli.
198
+ - **formats** - Various preferred data format backends like orjson/ujson, pyyaml, cbor2, and cloudpickle.
199
+ - **sql drivers** - Various preferred and tested sql drivers.