omlish 0.0.0.dev339__tar.gz → 0.0.0.dev341__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.
Files changed (882) hide show
  1. {omlish-0.0.0.dev339/omlish.egg-info → omlish-0.0.0.dev341}/PKG-INFO +1 -1
  2. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/README.md +1 -1
  3. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/__about__.py +2 -2
  4. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/LICENSE +1 -1
  5. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/api.py +1 -1
  6. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/core.py +1 -1
  7. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/events.py +1 -1
  8. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/files.py +1 -1
  9. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/runner.py +1 -1
  10. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/sockets.py +1 -1
  11. omlish-0.0.0.dev341/omlish/check.py +271 -0
  12. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/__init__.py +19 -0
  13. omlish-0.0.0.dev341/omlish/collections/multimaps.py +151 -0
  14. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/__init__.py +13 -13
  15. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/backends/__init__.py +2 -2
  16. omlish-0.0.0.dev341/omlish/formats/json/backends/default.py +57 -0
  17. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/backends/orjson.py +6 -5
  18. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/backends/std.py +4 -1
  19. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/backends/ujson.py +6 -5
  20. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/codecs.py +4 -4
  21. omlish-0.0.0.dev341/omlish/graphs/dags.py +175 -0
  22. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/domination.py +5 -1
  23. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/dot/items.py +3 -0
  24. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/dot/make.py +3 -0
  25. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/dot/rendering.py +3 -0
  26. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/dot/utils.py +3 -0
  27. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/trees.py +5 -4
  28. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/bindable.py +2 -0
  29. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/check.py +6 -6
  30. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/math/__init__.py +15 -15
  31. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/math/fixed.py +25 -15
  32. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/forkhooks.py +4 -4
  33. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/__init__.py +4 -0
  34. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/collection.py +3 -0
  35. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/consumer.py +12 -0
  36. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341/omlish.egg-info}/PKG-INFO +1 -1
  37. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish.egg-info/SOURCES.txt +1 -1
  38. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/pyproject.toml +1 -1
  39. omlish-0.0.0.dev339/omlish/check.py +0 -104
  40. omlish-0.0.0.dev339/omlish/formats/json/backends/default.py +0 -13
  41. omlish-0.0.0.dev339/omlish/formats/json/json.py +0 -17
  42. omlish-0.0.0.dev339/omlish/graphs/dags.py +0 -111
  43. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/LICENSE +0 -0
  44. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/MANIFEST.in +0 -0
  45. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/.manifests.json +0 -0
  46. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/__init__.py +0 -0
  47. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/algorithm/__init__.py +0 -0
  48. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/algorithm/all.py +0 -0
  49. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/algorithm/distribute.py +0 -0
  50. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/algorithm/toposort.py +0 -0
  51. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/algorithm/unify.py +0 -0
  52. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/argparse/__init__.py +0 -0
  53. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/argparse/all.py +0 -0
  54. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/argparse/cli.py +0 -0
  55. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/__init__.py +0 -0
  56. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/all.py +0 -0
  57. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/__init__.py +0 -0
  58. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/backends.py +0 -0
  59. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/futures.py +0 -0
  60. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/signals.py +0 -0
  61. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/streams.py +0 -0
  62. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/subprocesses.py +0 -0
  63. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/sync.py +0 -0
  64. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/anyio/utils.py +0 -0
  65. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/__init__.py +0 -0
  66. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/all.py +0 -0
  67. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/channels.py +0 -0
  68. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/sockets.py +0 -0
  69. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/streams.py +0 -0
  70. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/subprocesses.py +0 -0
  71. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/timeouts.py +0 -0
  72. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/asyncio/utils.py +0 -0
  73. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/__init__.py +0 -0
  74. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bluelet/all.py +0 -0
  75. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/bridge.py +0 -0
  76. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/buffers.py +0 -0
  77. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/flavors.py +0 -0
  78. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/ioproxy/__init__.py +0 -0
  79. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/ioproxy/all.py +0 -0
  80. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/ioproxy/io.py +0 -0
  81. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/ioproxy/proxier.py +0 -0
  82. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/ioproxy/proxy.py +0 -0
  83. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/ioproxy/typing.py +0 -0
  84. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/sync.py +0 -0
  85. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/trio.py +0 -0
  86. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/trio_asyncio.py +0 -0
  87. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/asyncs/utils.py +0 -0
  88. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/__init__.py +0 -0
  89. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/__main__.py +0 -0
  90. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/base.py +0 -0
  91. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/diag.py +0 -0
  92. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/harness.py +0 -0
  93. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/main.py +0 -0
  94. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/marshal.py +0 -0
  95. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/bootstrap/sys.py +0 -0
  96. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/c3.py +0 -0
  97. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/cached.py +0 -0
  98. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/__init__.py +0 -0
  99. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/base.py +0 -0
  100. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/bytes.py +0 -0
  101. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/chain.py +0 -0
  102. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/funcs.py +0 -0
  103. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/registry.py +0 -0
  104. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/standard.py +0 -0
  105. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/codecs/text.py +0 -0
  106. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/abc.py +0 -0
  107. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/bimap.py +0 -0
  108. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/cache/__init__.py +0 -0
  109. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/cache/descriptor.py +0 -0
  110. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/cache/impl.py +0 -0
  111. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/cache/types.py +0 -0
  112. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/coerce.py +0 -0
  113. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/errors.py +0 -0
  114. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/frozen.py +0 -0
  115. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/hasheq.py +0 -0
  116. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/identity.py +0 -0
  117. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/kv/__init__.py +0 -0
  118. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/kv/base.py +0 -0
  119. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/kv/capabilities.py +0 -0
  120. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/kv/filtered.py +0 -0
  121. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/kv/mappings.py +0 -0
  122. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/kv/transformed.py +0 -0
  123. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/kv/wrappers.py +0 -0
  124. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/mappings.py +0 -0
  125. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/ordered.py +0 -0
  126. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/persistent/__init__.py +0 -0
  127. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/persistent/persistent.py +0 -0
  128. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/persistent/treap.py +0 -0
  129. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/persistent/treapmap.py +0 -0
  130. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/ranked.py +0 -0
  131. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/sorted/__init__.py +0 -0
  132. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/sorted/skiplist.py +0 -0
  133. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/sorted/sorted.py +0 -0
  134. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/unmodifiable.py +0 -0
  135. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/collections/utils.py +0 -0
  136. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/concurrent/__init__.py +0 -0
  137. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/concurrent/executors.py +0 -0
  138. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/concurrent/futures.py +0 -0
  139. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/concurrent/threadlets.py +0 -0
  140. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/__init__.py +0 -0
  141. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/all.py +0 -0
  142. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/classes.py +0 -0
  143. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/formats.py +0 -0
  144. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/nginx.py +0 -0
  145. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/__init__.py +0 -0
  146. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/all.py +0 -0
  147. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/flattening.py +0 -0
  148. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/inheritance.py +0 -0
  149. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/matching.py +0 -0
  150. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/merging.py +0 -0
  151. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/names.py +0 -0
  152. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/rewriting.py +0 -0
  153. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/processing/strings.py +0 -0
  154. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/shadow.py +0 -0
  155. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/configs/types.py +0 -0
  156. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/__init__.py +0 -0
  157. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/daemon.py +0 -0
  158. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/launching.py +0 -0
  159. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/reparent.py +0 -0
  160. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/services.py +0 -0
  161. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/spawning.py +0 -0
  162. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/targets.py +0 -0
  163. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/daemons/waiting.py +0 -0
  164. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/__init__.py +0 -0
  165. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/__init__.py +0 -0
  166. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/classes/__init__.py +0 -0
  167. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/classes/conversion.py +0 -0
  168. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/classes/decorator.py +0 -0
  169. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/classes/make.py +0 -0
  170. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/classes/metadata.py +0 -0
  171. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/classes/params.py +0 -0
  172. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/fields/__init__.py +0 -0
  173. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/fields/building.py +0 -0
  174. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/fields/constructor.py +0 -0
  175. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/fields/conversion.py +0 -0
  176. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/api/fields/metadata.py +0 -0
  177. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/__init__.py +0 -0
  178. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/abc.py +0 -0
  179. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/copy.py +0 -0
  180. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/doc.py +0 -0
  181. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/eq.py +0 -0
  182. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/fields.py +0 -0
  183. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/frozen.py +0 -0
  184. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/hash.py +0 -0
  185. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/init.py +0 -0
  186. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/matchargs.py +0 -0
  187. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/mro.py +0 -0
  188. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/order.py +0 -0
  189. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/override.py +0 -0
  190. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/params.py +0 -0
  191. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/replace.py +0 -0
  192. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/repr.py +0 -0
  193. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/concerns/slots.py +0 -0
  194. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/debug.py +0 -0
  195. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/errors.py +0 -0
  196. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/__init__.py +0 -0
  197. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/base.py +0 -0
  198. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/compilation.py +0 -0
  199. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/execution.py +0 -0
  200. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/globals.py +0 -0
  201. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/idents.py +0 -0
  202. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/mangling.py +0 -0
  203. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/manifests.py +0 -0
  204. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/ops.py +0 -0
  205. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/plans.py +0 -0
  206. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/processor.py +0 -0
  207. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/registry.py +0 -0
  208. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/generation/utils.py +0 -0
  209. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/inspect.py +0 -0
  210. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/internals.py +0 -0
  211. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/metaclass/__init__.py +0 -0
  212. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/metaclass/bases.py +0 -0
  213. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/metaclass/confer.py +0 -0
  214. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/metaclass/meta.py +0 -0
  215. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/metaclass/specs.py +0 -0
  216. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/processing/__init__.py +0 -0
  217. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/processing/base.py +0 -0
  218. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/processing/driving.py +0 -0
  219. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/processing/priority.py +0 -0
  220. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/processing/registry.py +0 -0
  221. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/reflection.py +0 -0
  222. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/specs.py +0 -0
  223. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/__init__.py +0 -0
  224. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/as_.py +0 -0
  225. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/iter.py +0 -0
  226. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/modifiers.py +0 -0
  227. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/only_.py +0 -0
  228. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/replace.py +0 -0
  229. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/repr.py +0 -0
  230. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/tools/static.py +0 -0
  231. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dataclasses/utils.py +0 -0
  232. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/datetimes.py +0 -0
  233. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/defs.py +0 -0
  234. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/__init__.py +0 -0
  235. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/_pycharm/__init__.py +0 -0
  236. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/_pycharm/runhack.py +0 -0
  237. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/asts.py +0 -0
  238. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/debug.py +0 -0
  239. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/lslocks.py +0 -0
  240. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/lsof.py +0 -0
  241. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/procfs.py +0 -0
  242. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/procstats.py +0 -0
  243. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/ps.py +0 -0
  244. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/pycharm.py +0 -0
  245. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/pydevd.py +0 -0
  246. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/replserver/__init__.py +0 -0
  247. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/replserver/__main__.py +0 -0
  248. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/replserver/console.py +0 -0
  249. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/replserver/server.py +0 -0
  250. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/diag/threads.py +0 -0
  251. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dispatch/__init__.py +0 -0
  252. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dispatch/_dispatch2.py +0 -0
  253. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dispatch/_dispatch3.py +0 -0
  254. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dispatch/dispatch.py +0 -0
  255. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dispatch/functions.py +0 -0
  256. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dispatch/impls.py +0 -0
  257. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dispatch/methods.py +0 -0
  258. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/__init__.py +0 -0
  259. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/all.py +0 -0
  260. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/cli.py +0 -0
  261. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/compose.py +0 -0
  262. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/consts.py +0 -0
  263. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/detect.py +0 -0
  264. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/hub.py +0 -0
  265. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/manifests.py +0 -0
  266. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/ns1.py +0 -0
  267. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/ports.py +0 -0
  268. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/docker/timebomb.py +0 -0
  269. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dom/__init__.py +0 -0
  270. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dom/building.py +0 -0
  271. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dom/content.py +0 -0
  272. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dom/rendering.py +0 -0
  273. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/dynamic.py +0 -0
  274. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/__init__.py +0 -0
  275. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/cbor.py +0 -0
  276. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/cloudpickle.py +0 -0
  277. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/codecs.py +0 -0
  278. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/dotenv.py +0 -0
  279. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/edn/__init__.py +0 -0
  280. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/edn/codec.py +0 -0
  281. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/edn/lexing.py +0 -0
  282. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/edn/parsing.py +0 -0
  283. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/edn/values.py +0 -0
  284. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/ini/__init__.py +0 -0
  285. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/ini/codec.py +0 -0
  286. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/ini/sections.py +0 -0
  287. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/backends/base.py +0 -0
  288. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/backends/jiter.py +0 -0
  289. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/consts.py +0 -0
  290. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/encoding.py +0 -0
  291. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/literals.py +0 -0
  292. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/rendering.py +0 -0
  293. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/stream/__init__.py +0 -0
  294. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/stream/building.py +0 -0
  295. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/stream/errors.py +0 -0
  296. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/stream/lexing.py +0 -0
  297. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/stream/parsing.py +0 -0
  298. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/stream/rendering.py +0 -0
  299. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/stream/utils.py +0 -0
  300. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json/types.py +0 -0
  301. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/Json5.g4 +0 -0
  302. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/__init__.py +0 -0
  303. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/_antlr/Json5Lexer.py +0 -0
  304. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/_antlr/Json5Listener.py +0 -0
  305. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/_antlr/Json5Parser.py +0 -0
  306. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/_antlr/Json5Visitor.py +0 -0
  307. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/_antlr/__init__.py +0 -0
  308. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/codec.py +0 -0
  309. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/errors.py +0 -0
  310. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/literals.py +0 -0
  311. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/parsing.py +0 -0
  312. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/json5/rendering.py +0 -0
  313. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/pickle.py +0 -0
  314. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/props.py +0 -0
  315. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/repr.py +0 -0
  316. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/toml/__init__.py +0 -0
  317. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/toml/codec.py +0 -0
  318. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/toml/parser.py +0 -0
  319. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/toml/writer.py +0 -0
  320. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/xml.py +0 -0
  321. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/formats/yaml.py +0 -0
  322. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/funcs/__init__.py +0 -0
  323. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/funcs/genmachine.py +0 -0
  324. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/funcs/match.py +0 -0
  325. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/funcs/pairs.py +0 -0
  326. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/funcs/pipes.py +0 -0
  327. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/__init__.py +0 -0
  328. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/graphs/dot/__init__.py +0 -0
  329. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/__init__.py +0 -0
  330. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/all.py +0 -0
  331. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/asgi.py +0 -0
  332. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/clients/__init__.py +0 -0
  333. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/clients/base.py +0 -0
  334. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/clients/default.py +0 -0
  335. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/clients/httpx.py +0 -0
  336. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/clients/urllib.py +0 -0
  337. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/consts.py +0 -0
  338. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/cookies.py +0 -0
  339. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/coro/__init__.py +0 -0
  340. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/coro/fdio.py +0 -0
  341. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/coro/server.py +0 -0
  342. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/coro/simple.py +0 -0
  343. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/coro/sockets.py +0 -0
  344. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/dates.py +0 -0
  345. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/encodings.py +0 -0
  346. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/handlers.py +0 -0
  347. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/headers.py +0 -0
  348. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/json.py +0 -0
  349. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/jwt.py +0 -0
  350. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/multipart.py +0 -0
  351. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/parsing.py +0 -0
  352. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/sessions.py +0 -0
  353. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/sse.py +0 -0
  354. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/urllib.py +0 -0
  355. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/versions.py +0 -0
  356. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/http/wsgi.py +0 -0
  357. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/__init__.py +0 -0
  358. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/binder.py +0 -0
  359. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/bindings.py +0 -0
  360. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/eagers.py +0 -0
  361. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/elements.py +0 -0
  362. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/errors.py +0 -0
  363. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/__init__.py +0 -0
  364. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/bindings.py +0 -0
  365. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/elements.py +0 -0
  366. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/injector.py +0 -0
  367. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/inspect.py +0 -0
  368. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/multis.py +0 -0
  369. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/origins.py +0 -0
  370. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/privates.py +0 -0
  371. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/providers.py +0 -0
  372. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/proxy.py +0 -0
  373. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/impl/scopes.py +0 -0
  374. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/injector.py +0 -0
  375. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/inspect.py +0 -0
  376. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/keys.py +0 -0
  377. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/listeners.py +0 -0
  378. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/managed.py +0 -0
  379. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/multis.py +0 -0
  380. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/origins.py +0 -0
  381. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/overrides.py +0 -0
  382. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/privates.py +0 -0
  383. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/providers.py +0 -0
  384. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/scopes.py +0 -0
  385. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/types.py +0 -0
  386. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/inject/utils.py +0 -0
  387. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/__init__.py +0 -0
  388. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/abc.py +0 -0
  389. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/buffers.py +0 -0
  390. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/__init__.py +0 -0
  391. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/abc.py +0 -0
  392. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/adapters.py +0 -0
  393. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/base.py +0 -0
  394. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/brotli.py +0 -0
  395. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/bz2.py +0 -0
  396. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/codecs.py +0 -0
  397. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/gzip.py +0 -0
  398. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/lz4.py +0 -0
  399. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/lzma.py +0 -0
  400. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/snappy.py +0 -0
  401. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/zlib.py +0 -0
  402. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/compress/zstd.py +0 -0
  403. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/coro/__init__.py +0 -0
  404. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/coro/consts.py +0 -0
  405. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/coro/direct.py +0 -0
  406. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/coro/readers.py +0 -0
  407. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/coro/stepped.py +0 -0
  408. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/fdio/__init__.py +0 -0
  409. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/fdio/handlers.py +0 -0
  410. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/fdio/kqueue.py +0 -0
  411. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/fdio/manager.py +0 -0
  412. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/fdio/pollers.py +0 -0
  413. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/fileno.py +0 -0
  414. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/pyio.py +0 -0
  415. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/io/trampoline.py +0 -0
  416. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/iterators/__init__.py +0 -0
  417. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/iterators/iterators.py +0 -0
  418. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/iterators/recipes.py +0 -0
  419. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/iterators/tools.py +0 -0
  420. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/iterators/unique.py +0 -0
  421. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/__init__.py +0 -0
  422. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/attrs.py +0 -0
  423. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/cached/__init__.py +0 -0
  424. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/cached/function.py +0 -0
  425. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/cached/property.py +0 -0
  426. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/casing.py +0 -0
  427. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/__init__.py +0 -0
  428. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/abstract.py +0 -0
  429. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/namespaces.py +0 -0
  430. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/protocols.py +0 -0
  431. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/restrict.py +0 -0
  432. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/simple.py +0 -0
  433. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/classes/virtual.py +0 -0
  434. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/clsdct.py +0 -0
  435. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/collections.py +0 -0
  436. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/comparison.py +0 -0
  437. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/contextmanagers.py +0 -0
  438. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/datetimes.py +0 -0
  439. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/descriptors.py +0 -0
  440. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/enums.py +0 -0
  441. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/functions.py +0 -0
  442. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/generators.py +0 -0
  443. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/imports.py +0 -0
  444. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/iterables.py +0 -0
  445. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/objects.py +0 -0
  446. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/outcomes.py +0 -0
  447. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/overrides.py +0 -0
  448. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/params.py +0 -0
  449. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/recursion.py +0 -0
  450. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/resolving.py +0 -0
  451. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/resources.py +0 -0
  452. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/strings.py +0 -0
  453. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/sys.py +0 -0
  454. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lang/typing.py +0 -0
  455. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/libc.py +0 -0
  456. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/__init__.py +0 -0
  457. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/abstract.py +0 -0
  458. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/base.py +0 -0
  459. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/contextmanagers.py +0 -0
  460. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/controller.py +0 -0
  461. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/manager.py +0 -0
  462. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/states.py +0 -0
  463. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lifecycles/transitions.py +0 -0
  464. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/__init__.py +0 -0
  465. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/cached.py +0 -0
  466. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/configs.py +0 -0
  467. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/contextmanagers.py +0 -0
  468. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/dataclasses.py +0 -0
  469. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/imports.py +0 -0
  470. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/inject.py +0 -0
  471. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/json.py +0 -0
  472. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/logs.py +0 -0
  473. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/marshal.py +0 -0
  474. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/maybes.py +0 -0
  475. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/pycharm.py +0 -0
  476. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/reflect.py +0 -0
  477. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/reprs.py +0 -0
  478. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/resources.py +0 -0
  479. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/runtime.py +0 -0
  480. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/secrets.py +0 -0
  481. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/strings.py +0 -0
  482. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/timeouts.py +0 -0
  483. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/timing.py +0 -0
  484. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/types.py +0 -0
  485. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/lite/typing.py +0 -0
  486. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/__init__.py +0 -0
  487. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/abc.py +0 -0
  488. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/all.py +0 -0
  489. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/callers.py +0 -0
  490. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/color.py +0 -0
  491. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/configs.py +0 -0
  492. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/filters.py +0 -0
  493. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/handlers.py +0 -0
  494. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/json.py +0 -0
  495. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/noisy.py +0 -0
  496. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/protocol.py +0 -0
  497. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/proxy.py +0 -0
  498. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/standard.py +0 -0
  499. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/timing.py +0 -0
  500. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/logs/utils.py +0 -0
  501. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/manifests/__init__.py +0 -0
  502. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/manifests/base.py +0 -0
  503. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/manifests/load.py +0 -0
  504. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/manifests/static.py +0 -0
  505. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/manifests/types.py +0 -0
  506. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/__init__.py +0 -0
  507. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/base.py +0 -0
  508. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/__init__.py +0 -0
  509. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/iterables.py +0 -0
  510. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/literals.py +0 -0
  511. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/mappings.py +0 -0
  512. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/maybes.py +0 -0
  513. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/newtypes.py +0 -0
  514. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/optionals.py +0 -0
  515. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/special.py +0 -0
  516. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/composite/wrapped.py +0 -0
  517. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/errors.py +0 -0
  518. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/factories.py +0 -0
  519. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/global_.py +0 -0
  520. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/naming.py +0 -0
  521. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/objects/__init__.py +0 -0
  522. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/objects/dataclasses.py +0 -0
  523. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/objects/helpers.py +0 -0
  524. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/objects/marshal.py +0 -0
  525. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/objects/metadata.py +0 -0
  526. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/objects/namedtuples.py +0 -0
  527. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/objects/unmarshal.py +0 -0
  528. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/polymorphism/__init__.py +0 -0
  529. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/polymorphism/marshal.py +0 -0
  530. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/polymorphism/metadata.py +0 -0
  531. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/polymorphism/unions.py +0 -0
  532. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/polymorphism/unmarshal.py +0 -0
  533. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/proxy.py +0 -0
  534. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/registries.py +0 -0
  535. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/singular/__init__.py +0 -0
  536. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/singular/base64.py +0 -0
  537. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/singular/datetimes.py +0 -0
  538. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/singular/enums.py +0 -0
  539. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/singular/numbers.py +0 -0
  540. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/singular/primitives.py +0 -0
  541. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/singular/uuids.py +0 -0
  542. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/standard.py +0 -0
  543. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/trivial/__init__.py +0 -0
  544. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/trivial/any.py +0 -0
  545. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/trivial/forbidden.py +0 -0
  546. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/trivial/nop.py +0 -0
  547. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/marshal/values.py +0 -0
  548. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/math/bits.py +0 -0
  549. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/math/c.py +0 -0
  550. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/math/floats.py +0 -0
  551. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/math/histogram.py +0 -0
  552. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/math/stats.py +0 -0
  553. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/metadata.py +0 -0
  554. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/multiprocessing/__init__.py +0 -0
  555. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/multiprocessing/proxies.py +0 -0
  556. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/multiprocessing/spawn.py +0 -0
  557. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/__init__.py +0 -0
  558. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/atomics.py +0 -0
  559. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/deathpacts/__init__.py +0 -0
  560. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/deathpacts/base.py +0 -0
  561. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/deathpacts/heartbeatfile.py +0 -0
  562. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/deathpacts/pipe.py +0 -0
  563. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/deathsig.py +0 -0
  564. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/fcntl.py +0 -0
  565. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/filemodes.py +0 -0
  566. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/files.py +0 -0
  567. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/journald.py +0 -0
  568. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/linux.py +0 -0
  569. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/mangle.py +0 -0
  570. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/paths.py +0 -0
  571. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/pidfiles/__init__.py +0 -0
  572. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/pidfiles/__main__.py +0 -0
  573. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/pidfiles/cli.py +0 -0
  574. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/pidfiles/manager.py +0 -0
  575. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/pidfiles/pidfile.py +0 -0
  576. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/pidfiles/pinning.py +0 -0
  577. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/signals.py +0 -0
  578. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/sizes.py +0 -0
  579. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/os/temp.py +0 -0
  580. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/reflect/__init__.py +0 -0
  581. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/reflect/inspect.py +0 -0
  582. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/reflect/ops.py +0 -0
  583. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/reflect/subst.py +0 -0
  584. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/reflect/types.py +0 -0
  585. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/runmodule.py +0 -0
  586. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/__init__.py +0 -0
  587. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/all.py +0 -0
  588. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/crypto.py +0 -0
  589. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/marshal.py +0 -0
  590. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/openssl.py +0 -0
  591. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/pwgen.py +0 -0
  592. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/pwhash.py +0 -0
  593. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/secrets.py +0 -0
  594. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/ssl.py +0 -0
  595. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/subprocesses.py +0 -0
  596. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/secrets/tempssl.py +0 -0
  597. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/shlex.py +0 -0
  598. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/__init__.py +0 -0
  599. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/addresses.py +0 -0
  600. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/bind.py +0 -0
  601. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/handlers.py +0 -0
  602. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/io.py +0 -0
  603. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/ports.py +0 -0
  604. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/server/__init__.py +0 -0
  605. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/server/handlers.py +0 -0
  606. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/server/server.py +0 -0
  607. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/server/ssl.py +0 -0
  608. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/server/threading.py +0 -0
  609. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sockets/wait.py +0 -0
  610. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/__init__.py +0 -0
  611. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/__init__.py +0 -0
  612. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/messages/__init__.py +0 -0
  613. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/messages/base.py +0 -0
  614. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/messages/formats.py +0 -0
  615. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/messages/messages.py +0 -0
  616. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/messages/parsing.py +0 -0
  617. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/numerics/__init__.py +0 -0
  618. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/numerics/formats.py +0 -0
  619. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/numerics/numerics.py +0 -0
  620. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/numerics/types.py +0 -0
  621. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/LICENSE +0 -0
  622. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/__init__.py +0 -0
  623. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/consts.py +0 -0
  624. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/errors.py +0 -0
  625. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/message.py +0 -0
  626. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/nuh.py +0 -0
  627. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/parsing.py +0 -0
  628. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/rendering.py +0 -0
  629. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/tags.py +0 -0
  630. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/irc/protocol/utils.py +0 -0
  631. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/LICENSE +0 -0
  632. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/__init__.py +0 -0
  633. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/__main__.py +0 -0
  634. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/ast.py +0 -0
  635. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/cli.py +0 -0
  636. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/errors.py +0 -0
  637. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/functions.py +0 -0
  638. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/lexer.py +0 -0
  639. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/parser.py +0 -0
  640. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/scope.py +0 -0
  641. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jmespath/visitor.py +0 -0
  642. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonrpc/__init__.py +0 -0
  643. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonrpc/conns.py +0 -0
  644. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonrpc/errors.py +0 -0
  645. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonrpc/marshal.py +0 -0
  646. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonrpc/types.py +0 -0
  647. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/__init__.py +0 -0
  648. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/__init__.py +0 -0
  649. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/base.py +0 -0
  650. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/core.py +0 -0
  651. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/format.py +0 -0
  652. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/metadata.py +0 -0
  653. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/parse.py +0 -0
  654. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/render.py +0 -0
  655. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/keywords/validation.py +0 -0
  656. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/marshal.py +0 -0
  657. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/LICENSE +0 -0
  658. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/__init__.py +0 -0
  659. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/__init__.py +0 -0
  660. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/metaschema.json +0 -0
  661. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/__init__.py +0 -0
  662. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/applicator.json +0 -0
  663. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/content.json +0 -0
  664. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/core.json +0 -0
  665. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/format-annotation.json +0 -0
  666. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/format-assertion.json +0 -0
  667. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/format.json +0 -0
  668. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/meta-data.json +0 -0
  669. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/unevaluated.json +0 -0
  670. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/schemas/draft202012/vocabularies/validation.json +0 -0
  671. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/jsonschema/types.py +0 -0
  672. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/openapi/__init__.py +0 -0
  673. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/openapi/marshal.py +0 -0
  674. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/openapi/openapi.py +0 -0
  675. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/Protobuf3.g4 +0 -0
  676. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/__init__.py +0 -0
  677. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/_antlr/Protobuf3Lexer.py +0 -0
  678. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/_antlr/Protobuf3Listener.py +0 -0
  679. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/_antlr/Protobuf3Parser.py +0 -0
  680. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/_antlr/Protobuf3Visitor.py +0 -0
  681. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/_antlr/__init__.py +0 -0
  682. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/nodes.py +0 -0
  683. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/specs/proto/parsing.py +0 -0
  684. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/__init__.py +0 -0
  685. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/abc.py +0 -0
  686. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/alchemy/__init__.py +0 -0
  687. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/alchemy/apiadapter.py +0 -0
  688. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/alchemy/asyncs.py +0 -0
  689. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/alchemy/duckdb.py +0 -0
  690. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/alchemy/exprs.py +0 -0
  691. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/alchemy/secrets.py +0 -0
  692. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/alchemy/sqlean.py +0 -0
  693. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/__init__.py +0 -0
  694. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/_queries.py +0 -0
  695. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/asquery.py +0 -0
  696. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/base.py +0 -0
  697. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/columns.py +0 -0
  698. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/dbapi.py +0 -0
  699. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/errors.py +0 -0
  700. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/funcs.py +0 -0
  701. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/queries.py +0 -0
  702. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/resources.py +0 -0
  703. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/api/rows.py +0 -0
  704. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/dbapi.py +0 -0
  705. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/dbs.py +0 -0
  706. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/params.py +0 -0
  707. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/Minisql.g4 +0 -0
  708. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/__init__.py +0 -0
  709. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/_antlr/MinisqlLexer.py +0 -0
  710. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/_antlr/MinisqlListener.py +0 -0
  711. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/_antlr/MinisqlParser.py +0 -0
  712. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/_antlr/MinisqlVisitor.py +0 -0
  713. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/_antlr/__init__.py +0 -0
  714. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/parsing/parsing.py +0 -0
  715. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/qualifiedname.py +0 -0
  716. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/__init__.py +0 -0
  717. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/base.py +0 -0
  718. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/binary.py +0 -0
  719. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/exprs.py +0 -0
  720. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/idents.py +0 -0
  721. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/inserts.py +0 -0
  722. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/marshal.py +0 -0
  723. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/multi.py +0 -0
  724. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/names.py +0 -0
  725. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/ops.py +0 -0
  726. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/params.py +0 -0
  727. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/relations.py +0 -0
  728. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/rendering.py +0 -0
  729. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/selects.py +0 -0
  730. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/std.py +0 -0
  731. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/stmts.py +0 -0
  732. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/queries/unary.py +0 -0
  733. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/tabledefs/__init__.py +0 -0
  734. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/tabledefs/alchemy.py +0 -0
  735. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/tabledefs/dtypes.py +0 -0
  736. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/tabledefs/elements.py +0 -0
  737. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/tabledefs/lower.py +0 -0
  738. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/tabledefs/marshal.py +0 -0
  739. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sql/tabledefs/tabledefs.py +0 -0
  740. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/__init__.py +0 -0
  741. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/async_.py +0 -0
  742. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/base.py +0 -0
  743. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/editor.py +0 -0
  744. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/run.py +0 -0
  745. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/sync.py +0 -0
  746. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/utils.py +0 -0
  747. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/subprocesses/wrap.py +0 -0
  748. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/sync.py +0 -0
  749. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/__init__.py +0 -0
  750. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/codes.py +0 -0
  751. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/coloring.py +0 -0
  752. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/progressbar.py +0 -0
  753. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/vt100/__init__.py +0 -0
  754. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/vt100/c.py +0 -0
  755. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/vt100/states.py +0 -0
  756. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/term/vt100/terminal.py +0 -0
  757. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/__init__.py +0 -0
  758. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/__init__.py +0 -0
  759. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/helpers.py +0 -0
  760. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/inject/__init__.py +0 -0
  761. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/inject/harness.py +0 -0
  762. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/marks.py +0 -0
  763. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/__init__.py +0 -0
  764. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/_registry.py +0 -0
  765. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/__init__.py +0 -0
  766. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/backends/__init__.py +0 -0
  767. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/backends/asyncio.py +0 -0
  768. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/backends/base.py +0 -0
  769. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/backends/trio.py +0 -0
  770. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/backends/trio_asyncio.py +0 -0
  771. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/consts.py +0 -0
  772. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/fixtures.py +0 -0
  773. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/plugin.py +0 -0
  774. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/asyncs/utils.py +0 -0
  775. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/depskip.py +0 -0
  776. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/logging.py +0 -0
  777. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/managermarks.py +0 -0
  778. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/pydevd.py +0 -0
  779. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/repeat.py +0 -0
  780. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/skips.py +0 -0
  781. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/spacing.py +0 -0
  782. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/switches/__init__.py +0 -0
  783. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/switches/plugin.py +0 -0
  784. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/switches/switches.py +0 -0
  785. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/plugins/utils.py +0 -0
  786. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/pytest/skip.py +0 -0
  787. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/testing/testing.py +0 -0
  788. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/__init__.py +0 -0
  789. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/__init__.py +0 -0
  790. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/BufferedTokenStream.py +0 -0
  791. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/CommonTokenFactory.py +0 -0
  792. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/CommonTokenStream.py +0 -0
  793. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/FileStream.py +0 -0
  794. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/InputStream.py +0 -0
  795. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/IntervalSet.py +0 -0
  796. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/LICENSE.txt +0 -0
  797. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/LL1Analyzer.py +0 -0
  798. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/Lexer.py +0 -0
  799. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/ListTokenSource.py +0 -0
  800. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/Parser.py +0 -0
  801. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/ParserInterpreter.py +0 -0
  802. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/ParserRuleContext.py +0 -0
  803. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/PredictionContext.py +0 -0
  804. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/Recognizer.py +0 -0
  805. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/RuleContext.py +0 -0
  806. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/StdinStream.py +0 -0
  807. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/Token.py +0 -0
  808. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/TokenStreamRewriter.py +0 -0
  809. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/Utils.py +0 -0
  810. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/__init__.py +0 -0
  811. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/_all.py +0 -0
  812. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/_pygrun.py +0 -0
  813. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATN.py +0 -0
  814. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATNConfig.py +0 -0
  815. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATNConfigSet.py +0 -0
  816. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATNDeserializationOptions.py +0 -0
  817. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATNDeserializer.py +0 -0
  818. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATNSimulator.py +0 -0
  819. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATNState.py +0 -0
  820. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ATNType.py +0 -0
  821. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/LexerATNSimulator.py +0 -0
  822. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/LexerAction.py +0 -0
  823. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/LexerActionExecutor.py +0 -0
  824. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/ParserATNSimulator.py +0 -0
  825. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/PredictionMode.py +0 -0
  826. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/SemanticContext.py +0 -0
  827. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/Transition.py +0 -0
  828. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/atn/__init__.py +0 -0
  829. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/dfa/DFA.py +0 -0
  830. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/dfa/DFASerializer.py +0 -0
  831. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/dfa/DFAState.py +0 -0
  832. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/dfa/__init__.py +0 -0
  833. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/error/DiagnosticErrorListener.py +0 -0
  834. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/error/ErrorListener.py +0 -0
  835. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/error/ErrorStrategy.py +0 -0
  836. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/error/Errors.py +0 -0
  837. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/error/__init__.py +0 -0
  838. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/Chunk.py +0 -0
  839. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/ParseTreeMatch.py +0 -0
  840. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/ParseTreePattern.py +0 -0
  841. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/ParseTreePatternMatcher.py +0 -0
  842. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/RuleTagToken.py +0 -0
  843. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/TokenTagToken.py +0 -0
  844. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/Tree.py +0 -0
  845. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/Trees.py +0 -0
  846. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/tree/__init__.py +0 -0
  847. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/xpath/XPath.py +0 -0
  848. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/xpath/XPathLexer.py +0 -0
  849. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/_runtime/xpath/__init__.py +0 -0
  850. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/delimit.py +0 -0
  851. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/dot.py +0 -0
  852. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/errors.py +0 -0
  853. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/input.py +0 -0
  854. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/parsing.py +0 -0
  855. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/runtime.py +0 -0
  856. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/antlr/utils.py +0 -0
  857. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/asdl.py +0 -0
  858. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/decoding.py +0 -0
  859. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/delimit.py +0 -0
  860. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/filecache.py +0 -0
  861. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/glyphsplit.py +0 -0
  862. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/go/__init__.py +0 -0
  863. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/go/quoting.py +0 -0
  864. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/indent.py +0 -0
  865. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/linecache.py +0 -0
  866. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/mangle.py +0 -0
  867. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/minja.py +0 -0
  868. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/parts.py +0 -0
  869. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/random.py +0 -0
  870. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/text/templating.py +0 -0
  871. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/accessor.py +0 -0
  872. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/generic.py +0 -0
  873. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/holder.py +0 -0
  874. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/marshal.py +0 -0
  875. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/of_.py +0 -0
  876. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/reflect.py +0 -0
  877. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish/typedvalues/values.py +0 -0
  878. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish.egg-info/dependency_links.txt +0 -0
  879. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish.egg-info/entry_points.txt +0 -0
  880. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish.egg-info/requires.txt +0 -0
  881. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/omlish.egg-info/top_level.txt +0 -0
  882. {omlish-0.0.0.dev339 → omlish-0.0.0.dev341}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omlish
3
- Version: 0.0.0.dev339
3
+ Version: 0.0.0.dev341
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -14,7 +14,7 @@ Core utilities and foundational code. It's relatively large but completely self-
14
14
  late-loaded module globals.
15
15
  - **[classes](lang/classes)** - Class tools and bases, such as `Abstract` (which checks at subclass definition not
16
16
  instantiation), `Sealed` / `PackageSealed`, and `Final`.
17
- - **[maybes](lang/maybes.py)** - A simple, nestable formalization of the presence or absence of an object, as in
17
+ - **[maybes](lite/maybes.py)** - A simple, nestable formalization of the presence or absence of an object, as in
18
18
  [many](https://en.cppreference.com/w/cpp/utility/optional)
19
19
  [other](https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html)
20
20
  [languages](https://doc.rust-lang.org/std/option/).
@@ -1,5 +1,5 @@
1
- __version__ = '0.0.0.dev339'
2
- __revision__ = '0d8d4714d9a9ea7145586e0bce55833b86e980bd'
1
+ __version__ = '0.0.0.dev341'
2
+ __revision__ = '4154c2c5976e0a4a31e0d9647362a710be0805fa'
3
3
 
4
4
 
5
5
  #
@@ -1,6 +1,6 @@
1
1
  Based on bluelet ( https://github.com/sampsyo/bluelet ) by Adrian Sampson, original license:
2
2
 
3
- THE SOFTWARE IS PROVIDED AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
3
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
4
4
  WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
5
5
  COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
6
6
  OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,7 +1,7 @@
1
1
  # ruff: noqa: UP006 UP007
2
2
  # @omlish-lite
3
3
  # Based on bluelet ( https://github.com/sampsyo/bluelet ) by Adrian Sampson, original license:
4
- # THE SOFTWARE IS PROVIDED AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
4
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
5
5
  # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
6
6
  # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
7
7
  # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,7 +1,7 @@
1
1
  # ruff: noqa: UP006 UP007
2
2
  # @omlish-lite
3
3
  # Based on bluelet ( https://github.com/sampsyo/bluelet ) by Adrian Sampson, original license:
4
- # THE SOFTWARE IS PROVIDED AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
4
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
5
5
  # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
6
6
  # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
7
7
  # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,7 +1,7 @@
1
1
  # ruff: noqa: UP007
2
2
  # @omlish-lite
3
3
  # Based on bluelet ( https://github.com/sampsyo/bluelet ) by Adrian Sampson, original license:
4
- # THE SOFTWARE IS PROVIDED AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
4
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
5
5
  # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
6
6
  # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
7
7
  # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,7 +1,7 @@
1
1
  # ruff: noqa: UP006 UP007
2
2
  # @omlish-lite
3
3
  # Based on bluelet ( https://github.com/sampsyo/bluelet ) by Adrian Sampson, original license:
4
- # THE SOFTWARE IS PROVIDED AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
4
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
5
5
  # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
6
6
  # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
7
7
  # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,7 +1,7 @@
1
1
  # ruff: noqa: UP006 UP007
2
2
  # @omlish-lite
3
3
  # Based on bluelet ( https://github.com/sampsyo/bluelet ) by Adrian Sampson, original license:
4
- # THE SOFTWARE IS PROVIDED AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
4
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
5
5
  # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
6
6
  # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
7
7
  # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,7 +1,7 @@
1
1
  # ruff: noqa: UP006 UP007
2
2
  # @omlish-lite
3
3
  # Based on bluelet ( https://github.com/sampsyo/bluelet ) by Adrian Sampson, original license:
4
- # THE SOFTWARE IS PROVIDED AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
4
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
5
5
  # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
6
6
  # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
7
7
  # OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,271 @@
1
+ """
2
+ While the core functionality lives in `lite/check.py` and is available in lite code, this module re-exports the contents
3
+ of its `check` API object as module-globals for convenience. It also sets up some non-lite integration, most notably
4
+ `ArgsRenderer` for rendering the AST's and values of failed checks (if the necessary optional dependencies are present).
5
+ """
6
+ import typing as ta
7
+
8
+ from .lite.check import CheckArgsRenderer as ArgsRenderer # noqa
9
+ from .lite.check import CheckExceptionFactory as ExceptionFactory # noqa
10
+ from .lite.check import CheckLateConfigureFn as LateConfigureFn # noqa
11
+ from .lite.check import CheckMessage as Message # noqa
12
+ from .lite.check import CheckOnRaiseFn as OnRaiseFn # noqa
13
+ from .lite.check import Checks
14
+ from .lite.check import check
15
+
16
+
17
+ T = ta.TypeVar('T')
18
+ SizedT = ta.TypeVar('SizedT', bound=ta.Sized)
19
+
20
+
21
+ _isinstance = isinstance
22
+ _issubclass = issubclass
23
+ _callable = callable
24
+
25
+
26
+ ##
27
+
28
+
29
+ def register_on_raise(fn: OnRaiseFn) -> None:
30
+ check.register_on_raise(fn)
31
+
32
+
33
+ def unregister_on_raise(fn: OnRaiseFn) -> None:
34
+ check.unregister_on_raise(fn)
35
+
36
+
37
+ ##
38
+
39
+
40
+ def _try_get_args_rendering() -> ArgsRenderer | None:
41
+ try:
42
+ from .diag.asts import ArgsRenderer
43
+
44
+ ArgsRenderer.smoketest()
45
+
46
+ except Exception: # noqa
47
+ return None
48
+
49
+ def _real_render_args(fmt: str, *args: ta.Any) -> str | None:
50
+ ra = ArgsRenderer(back=3).render_args(*args)
51
+ if ra is None:
52
+ return None
53
+
54
+ return fmt % tuple(str(a) for a in ra)
55
+
56
+ return _real_render_args
57
+
58
+
59
+ def _try_enable_args_rendering(c: Checks) -> None:
60
+ if (rf := _try_get_args_rendering()) is not None:
61
+ c.set_args_renderer(rf)
62
+
63
+
64
+ check.register_late_configure(_try_enable_args_rendering)
65
+
66
+
67
+ ##
68
+ # The following code manually proxies to the lite code, as opposed to simply assigning global names to instance methods
69
+ # of `check`, to assist type analysis in tools - pycharm for example has a hard time deducing the return types in such
70
+ # cases. The functions are however dynamically overwritten below with direct references to the method to remove one
71
+ # layer of call indirection at runtime.
72
+
73
+
74
+ _CHECK_PROXY_FUNCTIONS: dict[str, ta.Any] = {}
75
+
76
+
77
+ def _check_proxy_function(fn: T) -> T:
78
+ name = fn.__name__ # type: ignore[attr-defined]
79
+ if name in _CHECK_PROXY_FUNCTIONS:
80
+ raise NameError(fn)
81
+ _CHECK_PROXY_FUNCTIONS[name] = fn
82
+ return fn
83
+
84
+
85
+ ##
86
+
87
+
88
+ @ta.overload
89
+ def isinstance(v: ta.Any, spec: type[T], msg: Message = None) -> T: # noqa
90
+ ...
91
+
92
+
93
+ @ta.overload
94
+ def isinstance(v: ta.Any, spec: ta.Any, msg: Message = None) -> ta.Any: # noqa
95
+ ...
96
+
97
+
98
+ @_check_proxy_function
99
+ def isinstance(v, spec, msg=None): # noqa
100
+ return check.isinstance(v, spec, msg=msg)
101
+
102
+
103
+ @ta.overload
104
+ def of_isinstance(spec: type[T], msg: Message = None) -> ta.Callable[[ta.Any], T]:
105
+ ...
106
+
107
+
108
+ @ta.overload
109
+ def of_isinstance(spec: ta.Any, msg: Message = None) -> ta.Callable[[ta.Any], ta.Any]:
110
+ ...
111
+
112
+
113
+ @_check_proxy_function
114
+ def of_isinstance(spec, msg=None):
115
+ return check.of_isinstance(spec, msg=msg)
116
+
117
+
118
+ @_check_proxy_function
119
+ def cast(v: ta.Any, cls: type[T], msg: Message = None) -> T:
120
+ return check.cast(v, cls, msg=msg)
121
+
122
+
123
+ @_check_proxy_function
124
+ def of_cast(cls: type[T], msg: Message = None) -> ta.Callable[[T], T]:
125
+ return check.of_cast(cls, msg=msg)
126
+
127
+
128
+ @_check_proxy_function
129
+ def not_isinstance(v: T, spec: ta.Any, msg: Message = None) -> T:
130
+ return check.not_isinstance(v, spec, msg=msg)
131
+
132
+
133
+ @_check_proxy_function
134
+ def of_not_isinstance(spec: ta.Any, msg: Message = None) -> ta.Callable[[T], T]:
135
+ return check.of_not_isinstance(spec, msg=msg)
136
+
137
+
138
+ #
139
+
140
+
141
+ @_check_proxy_function
142
+ def issubclass(v: type[T], spec: ta.Any, msg: Message = None) -> type[T]: # noqa
143
+ return check.issubclass(v, spec, msg=msg)
144
+
145
+
146
+ @_check_proxy_function
147
+ def not_issubclass(v: type[T], spec: ta.Any, msg: Message = None) -> type[T]:
148
+ return check.not_issubclass(v, spec, msg=msg)
149
+
150
+
151
+ #
152
+
153
+
154
+ @_check_proxy_function
155
+ def in_(v: T, c: ta.Container[T], msg: Message = None) -> T:
156
+ return check.in_(v, c, msg=msg)
157
+
158
+
159
+ @_check_proxy_function
160
+ def not_in(v: T, c: ta.Container[T], msg: Message = None) -> T:
161
+ return check.not_in(v, c, msg=msg)
162
+
163
+
164
+ @_check_proxy_function
165
+ def empty(v: SizedT, msg: Message = None) -> SizedT:
166
+ return check.empty(v, msg=msg)
167
+
168
+
169
+ @_check_proxy_function
170
+ def iterempty(v: ta.Iterable[T], msg: Message = None) -> ta.Iterable[T]:
171
+ return check.iterempty(v, msg=msg)
172
+
173
+
174
+ @_check_proxy_function
175
+ def not_empty(v: SizedT, msg: Message = None) -> SizedT:
176
+ return check.not_empty(v, msg=msg)
177
+
178
+
179
+ @_check_proxy_function
180
+ def unique(it: ta.Iterable[T], msg: Message = None) -> ta.Iterable[T]:
181
+ return check.unique(it, msg=msg)
182
+
183
+
184
+ @_check_proxy_function
185
+ def single(obj: ta.Iterable[T], msg: Message = None) -> T:
186
+ return check.single(obj, msg=msg)
187
+
188
+
189
+ @_check_proxy_function
190
+ def opt_single(obj: ta.Iterable[T], msg: Message = None) -> T | None:
191
+ return check.opt_single(obj, msg=msg)
192
+
193
+
194
+ #
195
+
196
+
197
+ @_check_proxy_function
198
+ def none(v: ta.Any, msg: Message = None) -> None:
199
+ return check.none(v, msg=msg)
200
+
201
+
202
+ @_check_proxy_function
203
+ def not_none(v: T | None, msg: Message = None) -> T:
204
+ return check.not_none(v, msg=msg)
205
+
206
+
207
+ #
208
+
209
+
210
+ @_check_proxy_function
211
+ def equal(v: T, o: ta.Any, msg: Message = None) -> T:
212
+ return check.equal(v, o, msg=msg)
213
+
214
+
215
+ @_check_proxy_function
216
+ def not_equal(v: T, o: ta.Any, msg: Message = None) -> T:
217
+ return check.not_equal(v, o, msg=msg)
218
+
219
+
220
+ @_check_proxy_function
221
+ def is_(v: T, o: ta.Any, msg: Message = None) -> T:
222
+ return check.is_(v, o, msg=msg)
223
+
224
+
225
+ @_check_proxy_function
226
+ def is_not(v: T, o: ta.Any, msg: Message = None) -> T:
227
+ return check.is_not(v, o, msg=msg)
228
+
229
+
230
+ @_check_proxy_function
231
+ def callable(v: T, msg: Message = None) -> T: # noqa
232
+ return check.callable(v, msg=msg)
233
+
234
+
235
+ @_check_proxy_function
236
+ def non_empty_str(v: str | None, msg: Message = None) -> str:
237
+ return check.non_empty_str(v, msg=msg)
238
+
239
+
240
+ @_check_proxy_function
241
+ def replacing(expected: ta.Any, old: ta.Any, new: T, msg: Message = None) -> T:
242
+ return check.replacing(expected, old, new, msg=msg)
243
+
244
+
245
+ @_check_proxy_function
246
+ def replacing_none(old: ta.Any, new: T, msg: Message = None) -> T:
247
+ return check.replacing_none(old, new, msg=msg)
248
+
249
+
250
+ #
251
+
252
+
253
+ @_check_proxy_function
254
+ def arg(v: bool, msg: Message = None) -> None:
255
+ return check.arg(v, msg=msg)
256
+
257
+
258
+ @_check_proxy_function
259
+ def state(v: bool, msg: Message = None) -> None:
260
+ return check.state(v, msg=msg)
261
+
262
+
263
+ ##
264
+
265
+
266
+ def _install_direct_check_proxy_functions() -> None:
267
+ for n in _CHECK_PROXY_FUNCTIONS:
268
+ globals()[n] = getattr(check, n)
269
+
270
+
271
+ _install_direct_check_proxy_functions()
@@ -76,6 +76,25 @@ from .mappings import ( # noqa
76
76
  multikey_dict,
77
77
  )
78
78
 
79
+ from .multimaps import ( # noqa
80
+ MultiMap,
81
+
82
+ SequenceMultiMap,
83
+ AbstractSetMultiMap,
84
+
85
+ BiMultiMap,
86
+ InverseBiMultiMap,
87
+
88
+ SequenceBiMultiMap,
89
+ AbstractSetBiMultiMap,
90
+
91
+ TupleBiMultiMap,
92
+ seq_bi_multi_map,
93
+
94
+ FrozensetBiMultiMap,
95
+ abs_set_bi_multi_map,
96
+ )
97
+
79
98
  from .ordered import ( # noqa
80
99
  OrderedFrozenSet,
81
100
  OrderedSet,
@@ -0,0 +1,151 @@
1
+ import abc
2
+ import typing as ta
3
+
4
+ from .. import lang
5
+
6
+
7
+ K = ta.TypeVar('K')
8
+ V = ta.TypeVar('V')
9
+ MV = ta.TypeVar('MV', bound=ta.Iterable)
10
+
11
+
12
+ ##
13
+
14
+
15
+ class MultiMap(ta.Mapping[K, MV], abc.ABC, ta.Generic[K, V, MV]):
16
+ pass
17
+
18
+
19
+ SequenceMultiMap: ta.TypeAlias = MultiMap[K, V, ta.Sequence[V]]
20
+ AbstractSetMultiMap: ta.TypeAlias = MultiMap[K, V, ta.AbstractSet[V]]
21
+
22
+
23
+ ##
24
+
25
+
26
+ class BiMultiMap(MultiMap[K, V, MV], abc.ABC, ta.Generic[K, V, MV]):
27
+ @abc.abstractmethod
28
+ def inverse(self) -> 'InverseBiMultiMap[K, V, MV]':
29
+ raise NotImplementedError
30
+
31
+
32
+ class InverseBiMultiMap(ta.Mapping[V, K], abc.ABC, ta.Generic[K, V, MV]):
33
+ @abc.abstractmethod
34
+ def inverse(self) -> BiMultiMap[K, V, MV]:
35
+ raise NotImplementedError
36
+
37
+
38
+ SequenceBiMultiMap: ta.TypeAlias = BiMultiMap[K, V, ta.Sequence[V]]
39
+ AbstractSetBiMultiMap: ta.TypeAlias = BiMultiMap[K, V, ta.AbstractSet[V]]
40
+
41
+
42
+ ##
43
+
44
+
45
+ class InverseBiMultiMapImpl(InverseBiMultiMap[K, V, MV], ta.Generic[K, V, MV]):
46
+ def __init__(self, m: BiMultiMap[K, V, MV], dct: ta.Mapping[V, K]) -> None:
47
+ super().__init__()
48
+
49
+ self._m = m
50
+ self._dct = dct
51
+
52
+ def inverse(self) -> BiMultiMap[K, V, MV]:
53
+ return self._m
54
+
55
+ def __getitem__(self, key: V, /) -> K:
56
+ return self._dct[key]
57
+
58
+ def __len__(self) -> int:
59
+ return len(self._dct)
60
+
61
+ def __iter__(self) -> ta.Iterator[V]:
62
+ return iter(self._dct)
63
+
64
+
65
+ class BaseBiMultiMap(BiMultiMap[K, V, MV], abc.ABC, ta.Generic[K, V, MV]):
66
+ def __init__(self, *args: ta.Any, **kwargs: ta.Any) -> None:
67
+ super().__init__()
68
+
69
+ dct: dict[K, MV] = {}
70
+ i_dct: dict[V, K] = {}
71
+ for k, mv in lang.yield_dict_init(*args, **kwargs):
72
+ l: list[V] = []
73
+ for v in mv:
74
+ if v in i_dct:
75
+ raise KeyError(v)
76
+ l.append(v)
77
+ i_dct[v] = k
78
+ dct[k] = self._aggregate_values(l)
79
+
80
+ self._dct = dct
81
+ self._i: InverseBiMultiMap[K, V, MV] = InverseBiMultiMapImpl(self, i_dct)
82
+
83
+ @abc.abstractmethod
84
+ def _aggregate_values(self, vs: list[V]) -> MV:
85
+ raise NotImplementedError
86
+
87
+ def inverse(self) -> 'InverseBiMultiMap[K, V, MV]':
88
+ return self._i
89
+
90
+ def __getitem__(self, key: K, /) -> MV:
91
+ return self._dct[key]
92
+
93
+ def __len__(self) -> int:
94
+ return len(self._dct)
95
+
96
+ def __iter__(self) -> ta.Iterator[K]:
97
+ return iter(self._dct)
98
+
99
+
100
+ #
101
+
102
+
103
+ class TupleBiMultiMap(BaseBiMultiMap[K, V, tuple[V, ...]], ta.Generic[K, V]):
104
+ def _aggregate_values(self, vs: list[V]) -> tuple[V, ...]:
105
+ return tuple(vs)
106
+
107
+
108
+ # FIXME: lame
109
+ # lang.static_check_issubclass[BiMultiMap[int, str, tuple[str, ...]]](TupleBiMultiMap[int, str])
110
+ # lang.static_check_issubclass[BiMultiMap[int, str, ta.Sequence[str]]](TupleBiMultiMap[int, str])
111
+ # lang.static_check_issubclass[SequenceBiMultiMap[int, str]](TupleBiMultiMap[int, str])
112
+
113
+
114
+ @ta.overload
115
+ def seq_bi_multi_map(dct: ta.Mapping[K, ta.Iterable[V]]) -> SequenceBiMultiMap[K, V]:
116
+ ...
117
+
118
+
119
+ @ta.overload
120
+ def seq_bi_multi_map(items: ta.Iterable[tuple[K, ta.Iterable[V]]]) -> SequenceBiMultiMap[K, V]:
121
+ ...
122
+
123
+
124
+ def seq_bi_multi_map(*args, **kwargs):
125
+ return TupleBiMultiMap(*args, **kwargs)
126
+
127
+
128
+ #
129
+
130
+
131
+ class FrozensetBiMultiMap(BaseBiMultiMap[K, V, frozenset[V]], ta.Generic[K, V]):
132
+ def _aggregate_values(self, vs: list[V]) -> frozenset[V]:
133
+ return frozenset(vs)
134
+
135
+
136
+ # FIXME: lame
137
+ # lang.static_check_issubclass[AbstractSetBiMultiMap[int, str]](FrozensetBiMultiMap[int, str])
138
+
139
+
140
+ @ta.overload
141
+ def abs_set_bi_multi_map(dct: ta.Mapping[K, ta.Iterable[V]]) -> AbstractSetBiMultiMap[K, V]:
142
+ ...
143
+
144
+
145
+ @ta.overload
146
+ def abs_set_bi_multi_map(items: ta.Iterable[tuple[K, ta.Iterable[V]]]) -> AbstractSetBiMultiMap[K, V]:
147
+ ...
148
+
149
+
150
+ def abs_set_bi_multi_map(*args, **kwargs):
151
+ return FrozensetBiMultiMap(*args, **kwargs)
@@ -12,10 +12,21 @@ from ... import lang as _lang
12
12
  from .backends import ( # noqa
13
13
  Backend,
14
14
 
15
- DEFAULT_BACKED,
15
+ default_backend,
16
16
 
17
17
  StdBackend,
18
- STD_BACKEND,
18
+ std_backend,
19
+ )
20
+
21
+ from .backends.default import ( # noqa
22
+ dump,
23
+ dump_compact,
24
+ dump_pretty,
25
+ dumps,
26
+ dumps_compact,
27
+ dumps_pretty,
28
+ load,
29
+ loads,
19
30
  )
20
31
 
21
32
  from .consts import ( # noqa
@@ -32,17 +43,6 @@ from .encoding import ( # noqa
32
43
  detect_encoding,
33
44
  )
34
45
 
35
- from .json import ( # noqa
36
- dump,
37
- dump_compact,
38
- dump_pretty,
39
- dumps,
40
- dumps_compact,
41
- dumps_pretty,
42
- load,
43
- loads,
44
- )
45
-
46
46
  if _ta.TYPE_CHECKING:
47
47
  from .rendering import ( # noqa
48
48
  JsonRenderer,
@@ -3,10 +3,10 @@ from .base import ( # noqa
3
3
  )
4
4
 
5
5
  from .default import ( # noqa
6
- DEFAULT_BACKED,
6
+ default_backend,
7
7
  )
8
8
 
9
9
  from .std import ( # noqa
10
10
  StdBackend,
11
- STD_BACKEND,
11
+ std_backend,
12
12
  )
@@ -0,0 +1,57 @@
1
+ import typing as ta
2
+
3
+ from .... import lang
4
+ from .base import Backend
5
+ from .orjson import orjson_backend
6
+ from .std import std_backend
7
+ from .ujson import ujson_backend
8
+
9
+
10
+ ##
11
+
12
+
13
+ @lang.cached_function
14
+ def default_backend() -> Backend:
15
+ for fn in [
16
+ orjson_backend,
17
+ ujson_backend,
18
+ ]:
19
+ if (be := fn()) is not None:
20
+ return be
21
+
22
+ return std_backend()
23
+
24
+
25
+ ##
26
+
27
+
28
+ def dump(obj: ta.Any, fp: ta.Any, **kwargs: ta.Any) -> None:
29
+ return default_backend().dump(obj, fp, **kwargs)
30
+
31
+
32
+ def dumps(obj: ta.Any, **kwargs: ta.Any) -> str:
33
+ return default_backend().dumps(obj, **kwargs)
34
+
35
+
36
+ def load(fp: ta.Any, **kwargs: ta.Any) -> ta.Any:
37
+ return default_backend().load(fp, **kwargs)
38
+
39
+
40
+ def loads(s: str | bytes | bytearray, **kwargs: ta.Any) -> ta.Any:
41
+ return default_backend().loads(s, **kwargs)
42
+
43
+
44
+ def dump_pretty(obj: ta.Any, fp: ta.Any, **kwargs: ta.Any) -> None:
45
+ return default_backend().dump_pretty(obj, fp, **kwargs)
46
+
47
+
48
+ def dumps_pretty(obj: ta.Any, **kwargs: ta.Any) -> str:
49
+ return default_backend().dumps_pretty(obj, **kwargs)
50
+
51
+
52
+ def dump_compact(obj: ta.Any, fp: ta.Any, **kwargs: ta.Any) -> None:
53
+ return default_backend().dump_compact(obj, fp, **kwargs)
54
+
55
+
56
+ def dumps_compact(obj: ta.Any, **kwargs: ta.Any) -> str:
57
+ return default_backend().dumps_compact(obj, **kwargs)
@@ -109,8 +109,9 @@ class OrjsonBackend(Backend):
109
109
  return self.dumps(obj, **kwargs)
110
110
 
111
111
 
112
- ORJSON_BACKEND: OrjsonBackend | None
113
- if lang.can_import('orjson'):
114
- ORJSON_BACKEND = OrjsonBackend()
115
- else:
116
- ORJSON_BACKEND = None
112
+ @lang.cached_function
113
+ def orjson_backend() -> OrjsonBackend | None:
114
+ if lang.can_import('orjson'):
115
+ return OrjsonBackend()
116
+ else:
117
+ return None
@@ -8,6 +8,7 @@ import dataclasses as dc
8
8
  import json
9
9
  import typing as ta
10
10
 
11
+ from .... import lang
11
12
  from ..consts import COMPACT_KWARGS
12
13
  from ..consts import PRETTY_KWARGS
13
14
  from .base import Backend
@@ -73,4 +74,6 @@ class StdBackend(Backend):
73
74
  return json.dumps(obj, **COMPACT_KWARGS, **kwargs)
74
75
 
75
76
 
76
- STD_BACKEND = StdBackend()
77
+ @lang.cached_function
78
+ def std_backend() -> StdBackend:
79
+ return StdBackend()