omdev 0.0.17__tar.gz → 0.0.18__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 (489) hide show
  1. {omdev-0.0.17/omdev.egg-info → omdev-0.0.18}/PKG-INFO +6 -6
  2. {omdev-0.0.17 → omdev-0.0.18}/omdev/.omlish-manifests.json +0 -12
  3. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/data/actions.py +1 -12
  4. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/data/cache.py +1 -1
  5. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/data/specs.py +2 -13
  6. {omdev-0.0.17 → omdev-0.0.18}/omdev/cc/cli.py +1 -1
  7. {omdev-0.0.17 → omdev-0.0.18}/omdev/cmdlog/cli.py +1 -1
  8. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataclasses/codegen.py +2 -2
  9. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/cli.py +4 -0
  10. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/configs/.tmux.conf +1 -0
  11. omdev-0.0.18/omdev/dockerdev/resources/scripts/install-pi +4 -0
  12. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/run.py +45 -5
  13. {omdev-0.0.17 → omdev-0.0.18}/omdev/imgur.py +1 -1
  14. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/marshal.py +2 -2
  15. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tools/pipdepup.py +6 -4
  16. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/docker.py +1 -1
  17. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/git/cli.py +1 -1
  18. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/pip.py +1 -1
  19. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/shell.py +1 -1
  20. {omdev-0.0.17 → omdev-0.0.18/omdev.egg-info}/PKG-INFO +6 -6
  21. {omdev-0.0.17 → omdev-0.0.18}/omdev.egg-info/SOURCES.txt +1 -1
  22. {omdev-0.0.17 → omdev-0.0.18}/omdev.egg-info/requires.txt +5 -5
  23. {omdev-0.0.17 → omdev-0.0.18}/pyproject.toml +6 -6
  24. omdev-0.0.17/omdev/py/scripts/execstat.py +0 -206
  25. {omdev-0.0.17 → omdev-0.0.18}/LICENSE +0 -0
  26. {omdev-0.0.17 → omdev-0.0.18}/MANIFEST.in +0 -0
  27. {omdev-0.0.17 → omdev-0.0.18}/README.md +0 -0
  28. {omdev-0.0.17 → omdev-0.0.18}/omdev/README.md +0 -0
  29. {omdev-0.0.17 → omdev-0.0.18}/omdev/__about__.py +0 -0
  30. {omdev-0.0.17 → omdev-0.0.18}/omdev/__init__.py +0 -0
  31. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/__init__.py +0 -0
  32. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/__main__.py +0 -0
  33. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/cli/__init__.py +0 -0
  34. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/cli/main.py +0 -0
  35. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/__init__.py +0 -0
  36. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/gen.py +0 -0
  37. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/imports.py +0 -0
  38. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/manifests.py +0 -0
  39. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/resources.py +0 -0
  40. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/srcfiles.py +0 -0
  41. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/strip.py +0 -0
  42. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/types.py +0 -0
  43. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/gen/typing.py +0 -0
  44. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/info.py +0 -0
  45. {omdev-0.0.17 → omdev-0.0.18}/omdev/amalg/sources.py +0 -0
  46. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/__init__.py +0 -0
  47. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/__init__.py +0 -0
  48. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/cache.py +0 -0
  49. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/contexts.py +0 -0
  50. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/currents.py +0 -0
  51. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/fns.py +0 -0
  52. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/resolvers.py +0 -0
  53. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/storage.py +0 -0
  54. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/compute/types.py +0 -0
  55. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/data/__init__.py +0 -0
  56. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/data/consts.py +0 -0
  57. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/data/defaults.py +0 -0
  58. {omdev-0.0.17 → omdev-0.0.18}/omdev/cache/data/manifests.py +0 -0
  59. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/__init__.py +0 -0
  60. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/darwin/__init__.py +0 -0
  61. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/darwin/aps.py +0 -0
  62. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/darwin/ax.py +0 -0
  63. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/darwin/cf.py +0 -0
  64. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/darwin/cg.py +0 -0
  65. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/linux/__init__.py +0 -0
  66. {omdev-0.0.17 → omdev-0.0.18}/omdev/capi/linux/x11.py +0 -0
  67. {omdev-0.0.17 → omdev-0.0.18}/omdev/cc/__init__.py +0 -0
  68. {omdev-0.0.17 → omdev-0.0.18}/omdev/cc/__main__.py +0 -0
  69. {omdev-0.0.17 → omdev-0.0.18}/omdev/cc/cdeps.py +0 -0
  70. {omdev-0.0.17 → omdev-0.0.18}/omdev/cc/cdeps.toml +0 -0
  71. {omdev-0.0.17 → omdev-0.0.18}/omdev/cc/srclangs.py +0 -0
  72. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/__init__.py +0 -0
  73. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_boilerplate.cc +0 -0
  74. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/LICENSE +0 -0
  75. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/__init__.py +0 -0
  76. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/build_ext.py +0 -0
  77. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
  78. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/compilers/ccompiler.py +0 -0
  79. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/compilers/options.py +0 -0
  80. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/compilers/unixccompiler.py +0 -0
  81. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/dir_util.py +0 -0
  82. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/errors.py +0 -0
  83. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/extension.py +0 -0
  84. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/file_util.py +0 -0
  85. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/modified.py +0 -0
  86. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/spawn.py +0 -0
  87. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/sysconfig.py +0 -0
  88. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/util.py +0 -0
  89. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/_distutils/version.py +0 -0
  90. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/build.py +0 -0
  91. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/cmake.py +0 -0
  92. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/importhook.py +0 -0
  93. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/magic.py +0 -0
  94. {omdev-0.0.17 → omdev-0.0.18}/omdev/cexts/scan.py +0 -0
  95. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/__init__.py +0 -0
  96. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/__main__.py +0 -0
  97. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/cache.py +0 -0
  98. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/ci.py +0 -0
  99. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/cli.py +0 -0
  100. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/compose.py +0 -0
  101. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/consts.py +0 -0
  102. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/__init__.py +0 -0
  103. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/buildcaching.py +0 -0
  104. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/cache.py +0 -0
  105. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/cacheserved/__init__.py +0 -0
  106. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/cacheserved/cache.py +0 -0
  107. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/cacheserved/manifests.py +0 -0
  108. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/cmds.py +0 -0
  109. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/dataserver.py +0 -0
  110. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/imagepulling.py +0 -0
  111. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/inject.py +0 -0
  112. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/packing.py +0 -0
  113. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/repositories.py +0 -0
  114. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/docker/utils.py +0 -0
  115. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/__init__.py +0 -0
  116. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/__init__.py +0 -0
  117. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/clients.py +0 -0
  118. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/v1/__init__.py +0 -0
  119. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/v1/api.py +0 -0
  120. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/v1/client.py +0 -0
  121. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/v2/__init__.py +0 -0
  122. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/v2/api.py +0 -0
  123. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/v2/azure.py +0 -0
  124. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/api/v2/client.py +0 -0
  125. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/bootstrap.py +0 -0
  126. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/cache.py +0 -0
  127. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/cli.py +0 -0
  128. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/env.py +0 -0
  129. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/github/inject.py +0 -0
  130. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/inject.py +0 -0
  131. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/requirements.py +0 -0
  132. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/shell.py +0 -0
  133. {omdev-0.0.17 → omdev-0.0.18}/omdev/ci/utils.py +0 -0
  134. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/__init__.py +0 -0
  135. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/__main__.py +0 -0
  136. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/_pathhack.py +0 -0
  137. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/clicli.py +0 -0
  138. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/install.py +0 -0
  139. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/main.py +0 -0
  140. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/managers.py +0 -0
  141. {omdev-0.0.17 → omdev-0.0.18}/omdev/cli/types.py +0 -0
  142. {omdev-0.0.17 → omdev-0.0.18}/omdev/clipboard/__init__.py +0 -0
  143. {omdev-0.0.17 → omdev-0.0.18}/omdev/clipboard/capi/__init__.py +0 -0
  144. {omdev-0.0.17 → omdev-0.0.18}/omdev/clipboard/capi/darwin_cf.py +0 -0
  145. {omdev-0.0.17 → omdev-0.0.18}/omdev/clipboard/capi/linux_x11.py +0 -0
  146. {omdev-0.0.17 → omdev-0.0.18}/omdev/clipboard/commands.py +0 -0
  147. {omdev-0.0.17 → omdev-0.0.18}/omdev/clipboard/platform.py +0 -0
  148. {omdev-0.0.17 → omdev-0.0.18}/omdev/clipboard/types.py +0 -0
  149. {omdev-0.0.17 → omdev-0.0.18}/omdev/cmake.py +0 -0
  150. {omdev-0.0.17 → omdev-0.0.18}/omdev/cmdlog/__init__.py +0 -0
  151. {omdev-0.0.17 → omdev-0.0.18}/omdev/cmdlog/__main__.py +0 -0
  152. {omdev-0.0.17 → omdev-0.0.18}/omdev/cmdlog/_cmdlog.py +0 -0
  153. {omdev-0.0.17 → omdev-0.0.18}/omdev/cmdlog/cmdlog.py +0 -0
  154. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataclasses/__init__.py +0 -0
  155. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataclasses/__main__.py +0 -0
  156. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataclasses/_dumping.py +0 -0
  157. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataclasses/_template.py +0 -0
  158. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataclasses/cli.py +0 -0
  159. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataclasses/dumping.py +0 -0
  160. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataserver/__init__.py +0 -0
  161. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataserver/handlers.py +0 -0
  162. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataserver/http.py +0 -0
  163. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataserver/routes.py +0 -0
  164. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataserver/server.py +0 -0
  165. {omdev-0.0.17 → omdev-0.0.18}/omdev/dataserver/targets.py +0 -0
  166. {omdev-0.0.17 → omdev-0.0.18}/omdev/diffs/__init__.py +0 -0
  167. {omdev-0.0.17 → omdev-0.0.18}/omdev/diffs/__main__.py +0 -0
  168. {omdev-0.0.17 → omdev-0.0.18}/omdev/diffs/cli.py +0 -0
  169. {omdev-0.0.17 → omdev-0.0.18}/omdev/diffs/parsing.py +0 -0
  170. {omdev-0.0.17 → omdev-0.0.18}/omdev/diffs/rendering.py +0 -0
  171. {omdev-0.0.17 → omdev-0.0.18}/omdev/diffs/types.py +0 -0
  172. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/__init__.py +0 -0
  173. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/__main__.py +0 -0
  174. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/build.py +0 -0
  175. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/config.py +0 -0
  176. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/config.toml +0 -0
  177. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/content.py +0 -0
  178. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/gen.py +0 -0
  179. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/helpers.py +0 -0
  180. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/ops.py +0 -0
  181. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/rendering.py +0 -0
  182. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/.python-versions.json +0 -0
  183. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/configs/.gdbinit +0 -0
  184. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/configs/.sqliterc +0 -0
  185. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/configs/.vimrc +0 -0
  186. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/depsets/python.toml +0 -0
  187. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/depsets/system.toml +0 -0
  188. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/depsets/x11.toml +0 -0
  189. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/apt.sh +0 -0
  190. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/chgrp.sh +0 -0
  191. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/docker.sh +0 -0
  192. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/firefox.sh +0 -0
  193. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/go.sh +0 -0
  194. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/jdk.sh +0 -0
  195. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/man.sh +0 -0
  196. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/nvm.sh +0 -0
  197. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/pyenv.sh +0 -0
  198. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/rbenv.sh +0 -0
  199. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/rust.sh +0 -0
  200. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/sshd.sh +0 -0
  201. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/user.sh +0 -0
  202. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/uv.sh +0 -0
  203. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/vcpkg.sh +0 -0
  204. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/workdir.sh +0 -0
  205. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/fragments/zig.sh +0 -0
  206. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/scripts/install-claude +0 -0
  207. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/scripts/install-codex +0 -0
  208. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/scripts/run-dbus +0 -0
  209. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/resources/shift-uid.sh +0 -0
  210. {omdev-0.0.17 → omdev-0.0.18}/omdev/dockerdev/utils.py +0 -0
  211. {omdev-0.0.17 → omdev-0.0.18}/omdev/git/__init__.py +0 -0
  212. {omdev-0.0.17 → omdev-0.0.18}/omdev/git/magic.py +0 -0
  213. {omdev-0.0.17 → omdev-0.0.18}/omdev/git/revisions.py +0 -0
  214. {omdev-0.0.17 → omdev-0.0.18}/omdev/git/shallow.py +0 -0
  215. {omdev-0.0.17 → omdev-0.0.18}/omdev/git/status.py +0 -0
  216. {omdev-0.0.17 → omdev-0.0.18}/omdev/home/__init__.py +0 -0
  217. {omdev-0.0.17 → omdev-0.0.18}/omdev/home/paths.py +0 -0
  218. {omdev-0.0.17 → omdev-0.0.18}/omdev/home/secrets.py +0 -0
  219. {omdev-0.0.17 → omdev-0.0.18}/omdev/home/shadow.py +0 -0
  220. {omdev-0.0.17 → omdev-0.0.18}/omdev/intellij/__init__.py +0 -0
  221. {omdev-0.0.17 → omdev-0.0.18}/omdev/intellij/cli.py +0 -0
  222. {omdev-0.0.17 → omdev-0.0.18}/omdev/intellij/ides.py +0 -0
  223. {omdev-0.0.17 → omdev-0.0.18}/omdev/intellij/open.py +0 -0
  224. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/__init__.py +0 -0
  225. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/__main__.py +0 -0
  226. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/cli.py +0 -0
  227. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/default.py +0 -0
  228. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/inject.py +0 -0
  229. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/inspect.py +0 -0
  230. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/providers/__init__.py +0 -0
  231. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/providers/base.py +0 -0
  232. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/providers/inject.py +0 -0
  233. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/providers/running.py +0 -0
  234. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/providers/standalone.py +0 -0
  235. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/providers/system.py +0 -0
  236. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/pyenv/__init__.py +0 -0
  237. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/pyenv/inject.py +0 -0
  238. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/pyenv/install.py +0 -0
  239. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/pyenv/provider.py +0 -0
  240. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/pyenv/pyenv.py +0 -0
  241. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/resolvers.py +0 -0
  242. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/types.py +0 -0
  243. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/uv/__init__.py +0 -0
  244. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/uv/inject.py +0 -0
  245. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/uv/provider.py +0 -0
  246. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/uv/uv.py +0 -0
  247. {omdev-0.0.17 → omdev-0.0.18}/omdev/interp/venvs.py +0 -0
  248. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/__init__.py +0 -0
  249. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/messages/__init__.py +0 -0
  250. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/messages/base.py +0 -0
  251. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/messages/formats.py +0 -0
  252. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/messages/messages.py +0 -0
  253. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/messages/parsing.py +0 -0
  254. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/numerics/__init__.py +0 -0
  255. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/numerics/formats.py +0 -0
  256. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/numerics/numerics.py +0 -0
  257. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/numerics/types.py +0 -0
  258. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/LICENSE +0 -0
  259. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/__init__.py +0 -0
  260. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/consts.py +0 -0
  261. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/errors.py +0 -0
  262. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/message.py +0 -0
  263. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/nuh.py +0 -0
  264. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/parsing.py +0 -0
  265. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/rendering.py +0 -0
  266. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/tags.py +0 -0
  267. {omdev-0.0.17 → omdev-0.0.18}/omdev/irc/protocol/utils.py +0 -0
  268. {omdev-0.0.17 → omdev-0.0.18}/omdev/java/__init__.py +0 -0
  269. {omdev-0.0.17 → omdev-0.0.18}/omdev/java/__main__.py +0 -0
  270. {omdev-0.0.17 → omdev-0.0.18}/omdev/java/cli.py +0 -0
  271. {omdev-0.0.17 → omdev-0.0.18}/omdev/java/pomgen.py +0 -0
  272. {omdev-0.0.17 → omdev-0.0.18}/omdev/java/utils.py +0 -0
  273. {omdev-0.0.17 → omdev-0.0.18}/omdev/java/xml.py +0 -0
  274. {omdev-0.0.17 → omdev-0.0.18}/omdev/magic/__init__.py +0 -0
  275. {omdev-0.0.17 → omdev-0.0.18}/omdev/magic/__main__.py +0 -0
  276. {omdev-0.0.17 → omdev-0.0.18}/omdev/magic/cli.py +0 -0
  277. {omdev-0.0.17 → omdev-0.0.18}/omdev/magic/find.py +0 -0
  278. {omdev-0.0.17 → omdev-0.0.18}/omdev/magic/magic.py +0 -0
  279. {omdev-0.0.17 → omdev-0.0.18}/omdev/magic/prepare.py +0 -0
  280. {omdev-0.0.17 → omdev-0.0.18}/omdev/magic/styles.py +0 -0
  281. {omdev-0.0.17 → omdev-0.0.18}/omdev/manifests/__init__.py +0 -0
  282. {omdev-0.0.17 → omdev-0.0.18}/omdev/manifests/__main__.py +0 -0
  283. {omdev-0.0.17 → omdev-0.0.18}/omdev/manifests/_dumping.py +0 -0
  284. {omdev-0.0.17 → omdev-0.0.18}/omdev/manifests/building.py +0 -0
  285. {omdev-0.0.17 → omdev-0.0.18}/omdev/manifests/dumping.py +0 -0
  286. {omdev-0.0.17 → omdev-0.0.18}/omdev/manifests/main.py +0 -0
  287. {omdev-0.0.17 → omdev-0.0.18}/omdev/markdown/__init__.py +0 -0
  288. {omdev-0.0.17 → omdev-0.0.18}/omdev/markdown/incparse.py +0 -0
  289. {omdev-0.0.17 → omdev-0.0.18}/omdev/markdown/tokens.py +0 -0
  290. {omdev-0.0.17 → omdev-0.0.18}/omdev/mypy/__init__.py +0 -0
  291. {omdev-0.0.17 → omdev-0.0.18}/omdev/mypy/debug.py +0 -0
  292. {omdev-0.0.17 → omdev-0.0.18}/omdev/mypy/report.py +0 -0
  293. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/__init__.py +0 -0
  294. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/building.py +0 -0
  295. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/compression.py +0 -0
  296. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/data.py +0 -0
  297. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/datarefs.py +0 -0
  298. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/dataserver.py +0 -0
  299. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/loading.py +0 -0
  300. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/media.py +0 -0
  301. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/pack/__init__.py +0 -0
  302. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/pack/packing.py +0 -0
  303. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/pack/repositories.py +0 -0
  304. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/pack/unpacking.py +0 -0
  305. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/repositories.py +0 -0
  306. {omdev-0.0.17 → omdev-0.0.18}/omdev/oci/tars.py +0 -0
  307. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/__init__.py +0 -0
  308. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/names.py +0 -0
  309. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/requires.py +0 -0
  310. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/revisions.py +0 -0
  311. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/specifiers.py +0 -0
  312. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/versions.py +0 -0
  313. {omdev-0.0.17 → omdev-0.0.18}/omdev/packaging/wheelfile.py +0 -0
  314. {omdev-0.0.17 → omdev-0.0.18}/omdev/pip.py +0 -0
  315. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/__init__.py +0 -0
  316. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/__main__.py +0 -0
  317. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/base.py +0 -0
  318. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/blanklines.py +0 -0
  319. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/caches.py +0 -0
  320. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/git.py +0 -0
  321. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/imports.py +0 -0
  322. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/lite.py +0 -0
  323. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/main.py +0 -0
  324. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/manifests.py +0 -0
  325. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/scripts.py +0 -0
  326. {omdev-0.0.17 → omdev-0.0.18}/omdev/precheck/unicode.py +0 -0
  327. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/__init__.py +0 -0
  328. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/asts/__init__.py +0 -0
  329. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/asts/parents.py +0 -0
  330. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/asts/toplevel.py +0 -0
  331. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/asts/visitors.py +0 -0
  332. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/attrdocs.py +0 -0
  333. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/bracepy.py +0 -0
  334. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/classdot.py +0 -0
  335. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/LICENSE +0 -0
  336. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/__init__.py +0 -0
  337. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/attrdoc.py +0 -0
  338. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/common.py +0 -0
  339. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/epydoc.py +0 -0
  340. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/google.py +0 -0
  341. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/numpydoc.py +0 -0
  342. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/parser.py +0 -0
  343. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/docstrings/rest.py +0 -0
  344. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/findimports.py +0 -0
  345. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/reprs.py +0 -0
  346. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/scripts/__init__.py +0 -0
  347. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/scripts/bumpversion.py +0 -0
  348. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/scripts/importtrace.py +0 -0
  349. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/srcheaders.py +0 -0
  350. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tokens/__init__.py +0 -0
  351. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tokens/all.py +0 -0
  352. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tokens/tokenizert.py +0 -0
  353. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tokens/utils.py +0 -0
  354. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tools/__init__.py +0 -0
  355. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tools/fixdocstrings.py +0 -0
  356. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tools/importscan.py +0 -0
  357. {omdev-0.0.17 → omdev-0.0.18}/omdev/py/tools/mkrelimp.py +0 -0
  358. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/__init__.py +0 -0
  359. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/__main__.py +0 -0
  360. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/cli.py +0 -0
  361. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/configs.py +0 -0
  362. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/inject.py +0 -0
  363. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/pkg.py +0 -0
  364. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/reqs.py +0 -0
  365. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/resources/dockerdev.sh +0 -0
  366. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/resources/python.sh +0 -0
  367. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/tools/__init__.py +0 -0
  368. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/tools/aboutdeps.py +0 -0
  369. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/tools/buildrs.py +0 -0
  370. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/tools/pyversions.py +0 -0
  371. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/venvs.py +0 -0
  372. {omdev-0.0.17 → omdev-0.0.18}/omdev/pyproject/versions.py +0 -0
  373. {omdev-0.0.17 → omdev-0.0.18}/omdev/rs/__init__.py +0 -0
  374. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/__init__.py +0 -0
  375. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/ci.py +0 -0
  376. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/interp.py +0 -0
  377. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/__init__.py +0 -0
  378. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/formats/__init__.py +0 -0
  379. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/formats/goyaml.py +0 -0
  380. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/inject.py +0 -0
  381. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/io/__init__.py +0 -0
  382. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/io/pipelines.py +0 -0
  383. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/io/streams.py +0 -0
  384. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/logs.py +0 -0
  385. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/lib/marshal.py +0 -0
  386. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/pidfiles.py +0 -0
  387. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/pyproject.py +0 -0
  388. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/slowcat.py +0 -0
  389. {omdev-0.0.17 → omdev-0.0.18}/omdev/scripts/tmpexec.py +0 -0
  390. {omdev-0.0.17 → omdev-0.0.18}/omdev/supervisor/__init__.py +0 -0
  391. {omdev-0.0.17 → omdev-0.0.18}/omdev/supervisor/__main__.py +0 -0
  392. {omdev-0.0.17 → omdev-0.0.18}/omdev/supervisor/cli.py +0 -0
  393. {omdev-0.0.17 → omdev-0.0.18}/omdev/tagstrings.py +0 -0
  394. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/__init__.py +0 -0
  395. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/cloc.py +0 -0
  396. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/diff.py +0 -0
  397. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/doc.py +0 -0
  398. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/git/__init__.py +0 -0
  399. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/git/__main__.py +0 -0
  400. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/git/cloning.py +0 -0
  401. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/git/consts.py +0 -0
  402. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/git/messages.py +0 -0
  403. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/__init__.py +0 -0
  404. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/__main__.py +0 -0
  405. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/cli.py +0 -0
  406. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/formats.py +0 -0
  407. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/io.py +0 -0
  408. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/parsing.py +0 -0
  409. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/processing.py +0 -0
  410. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/json/rendering.py +0 -0
  411. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/jsonview/__init__.py +0 -0
  412. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/jsonview/__main__.py +0 -0
  413. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/jsonview/cli.py +0 -0
  414. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/jsonview/resources/jsonview.css +0 -0
  415. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/jsonview/resources/jsonview.html.j2 +0 -0
  416. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/jsonview/resources/jsonview.js +0 -0
  417. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/linehisto.py +0 -0
  418. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/mkenv.py +0 -0
  419. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/notebook.py +0 -0
  420. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/pawk/README.md +0 -0
  421. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/pawk/__init__.py +0 -0
  422. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/pawk/__main__.py +0 -0
  423. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/pawk/pawk.py +0 -0
  424. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/prof.py +0 -0
  425. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/qr.py +0 -0
  426. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/shadow.py +0 -0
  427. {omdev-0.0.17 → omdev-0.0.18}/omdev/tools/sqlrepl.py +0 -0
  428. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/__init__.py +0 -0
  429. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/__init__.py +0 -0
  430. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/edit/__init__.py +0 -0
  431. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/edit/main.py +0 -0
  432. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/irc/__init__.py +0 -0
  433. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/irc/__main__.py +0 -0
  434. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/irc/app.py +0 -0
  435. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/irc/client.py +0 -0
  436. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/irc/commands.py +0 -0
  437. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/irc/main.py +0 -0
  438. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/LICENSE +0 -0
  439. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/__init__.py +0 -0
  440. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/__main__.py +0 -0
  441. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/app.py +0 -0
  442. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/cli.py +0 -0
  443. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/styles/layout.tcss +0 -0
  444. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/utils.py +0 -0
  445. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/jtree/widgets.py +0 -0
  446. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/markdown/__init__.py +0 -0
  447. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/markdown/__main__.py +0 -0
  448. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/apps/markdown/cli.py +0 -0
  449. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/__init__.py +0 -0
  450. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/console2.py +0 -0
  451. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/LICENSE +0 -0
  452. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/__init__.py +0 -0
  453. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/__main__.py +0 -0
  454. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/_compat.py +0 -0
  455. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/cli.py +0 -0
  456. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/renderables.py +0 -0
  457. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/rendering.py +0 -0
  458. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/diff/underlinebar.py +0 -0
  459. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/markdown2.py +0 -0
  460. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/textual/__init__.py +0 -0
  461. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/textual/dark.py +0 -0
  462. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/textual/dump.py +0 -0
  463. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/textual/themes.py +0 -0
  464. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/rich/trirule.py +0 -0
  465. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/__init__.py +0 -0
  466. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/actionmenu.py +0 -0
  467. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/app2.py +0 -0
  468. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/autocomplete/LICENSE +0 -0
  469. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/autocomplete/__init__.py +0 -0
  470. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/autocomplete/matching.py +0 -0
  471. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/autocomplete/paths.py +0 -0
  472. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/autocomplete/widget.py +0 -0
  473. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/binding2.py +0 -0
  474. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/clipboard.py +0 -0
  475. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/debug/__init__.py +0 -0
  476. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/debug/dominfo.py +0 -0
  477. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/debug/screen.py +0 -0
  478. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/devtools.py +0 -0
  479. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/dom2.py +0 -0
  480. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/drivers2.py +0 -0
  481. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/logging2.py +0 -0
  482. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/render2.py +0 -0
  483. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/screen2.py +0 -0
  484. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/types.py +0 -0
  485. {omdev-0.0.17 → omdev-0.0.18}/omdev/tui/textual/widgets2.py +0 -0
  486. {omdev-0.0.17 → omdev-0.0.18}/omdev.egg-info/dependency_links.txt +0 -0
  487. {omdev-0.0.17 → omdev-0.0.18}/omdev.egg-info/entry_points.txt +0 -0
  488. {omdev-0.0.17 → omdev-0.0.18}/omdev.egg-info/top_level.txt +0 -0
  489. {omdev-0.0.17 → omdev-0.0.18}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omdev
3
- Version: 0.0.17
3
+ Version: 0.0.18
4
4
  Summary: omdev
5
5
  Author: wrmsr
6
6
  License-Expression: BSD-3-Clause
@@ -14,10 +14,10 @@ Classifier: Programming Language :: Python :: 3.14
14
14
  Requires-Python: >=3.14
15
15
  Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
- Requires-Dist: omlish==0.0.17
17
+ Requires-Dist: omlish==0.0.18
18
18
  Provides-Extra: all
19
- Requires-Dist: ominfra==0.0.17; extra == "all"
20
- Requires-Dist: ommlds==0.0.17; extra == "all"
19
+ Requires-Dist: ominfra==0.0.18; extra == "all"
20
+ Requires-Dist: ommlds==0.0.18; extra == "all"
21
21
  Requires-Dist: black~=26.3; extra == "all"
22
22
  Requires-Dist: pycparser~=3.0; extra == "all"
23
23
  Requires-Dist: pcpp~=1.30; extra == "all"
@@ -33,9 +33,9 @@ Requires-Dist: textual~=8.2; extra == "all"
33
33
  Requires-Dist: textual-dev~=1.8; extra == "all"
34
34
  Requires-Dist: textual-speedups~=0.2; extra == "all"
35
35
  Provides-Extra: ominfra
36
- Requires-Dist: ominfra==0.0.17; extra == "ominfra"
36
+ Requires-Dist: ominfra==0.0.18; extra == "ominfra"
37
37
  Provides-Extra: ommlds
38
- Requires-Dist: ommlds==0.0.17; extra == "ommlds"
38
+ Requires-Dist: ommlds==0.0.18; extra == "ommlds"
39
39
  Provides-Extra: black
40
40
  Requires-Dist: black~=26.3; extra == "black"
41
41
  Provides-Extra: c
@@ -241,18 +241,6 @@
241
241
  }
242
242
  }
243
243
  },
244
- {
245
- "module": ".py.scripts.execstat",
246
- "attr": "_CLI_MODULE",
247
- "file": "omdev/py/scripts/execstat.py",
248
- "line": 92,
249
- "value": {
250
- "!.cli.types.CliModule": {
251
- "name": "py/execstat",
252
- "module": "omdev.py.scripts.execstat"
253
- }
254
- }
255
- },
256
244
  {
257
245
  "module": ".py.scripts.importtrace",
258
246
  "attr": "_CLI_MODULE",
@@ -18,6 +18,7 @@ from .consts import SERIALIZATION_VERSION
18
18
 
19
19
 
20
20
  @dc.dataclass(frozen=True)
21
+ @msh.set_polymorphic_from_subclasses(naming=msh.Naming.SNAKE, strip_suffix=True)
21
22
  class Action(lang.Abstract, lang.Sealed):
22
23
  serialization_version: int = dc.field(default=SERIALIZATION_VERSION, kw_only=True)
23
24
 
@@ -33,15 +34,3 @@ def _non_empty_strs(v: ta.Sequence[str]) -> ta.Sequence[str]:
33
34
  class ExtractAction(Action, lang.Final):
34
35
  files: ta.Sequence[str] = dc.xfield(coerce=_non_empty_strs)
35
36
  keep_archive: bool = False
36
-
37
-
38
- ##
39
-
40
-
41
- @lang.static_init
42
- def _install_standard_marshaling() -> None:
43
- actions_poly = msh.polymorphism_from_subclasses(Action, naming=msh.Naming.SNAKE, strip_suffix=True)
44
- msh.install_standard_factories(
45
- msh.PolymorphismMarshalerFactory(actions_poly),
46
- msh.PolymorphismUnmarshalerFactory(actions_poly),
47
- )
@@ -23,7 +23,7 @@ import urllib.request
23
23
  from omlish import check
24
24
  from omlish import lang
25
25
  from omlish import marshal as msh
26
- from omlish.formats import json
26
+ from omlish.formats.json import all as json
27
27
  from omlish.logs import all as logs
28
28
  from omlish.os.files import touch
29
29
 
@@ -10,7 +10,7 @@ from omlish import check
10
10
  from omlish import dataclasses as dc
11
11
  from omlish import lang
12
12
  from omlish import marshal as msh
13
- from omlish.formats import json as jf
13
+ from omlish.formats.json import all as jf
14
14
 
15
15
  from .actions import Action
16
16
  from .consts import SERIALIZATION_VERSION
@@ -20,6 +20,7 @@ from .consts import SERIALIZATION_VERSION
20
20
 
21
21
 
22
22
  @dc.dataclass(frozen=True)
23
+ @msh.set_polymorphic_from_subclasses(naming=msh.Naming.SNAKE, strip_suffix=True)
23
24
  class Spec(lang.Abstract, lang.Sealed):
24
25
  serialization_version: int = dc.field(default=SERIALIZATION_VERSION, kw_only=True)
25
26
 
@@ -87,15 +88,3 @@ class GithubContentSpec(Spec):
87
88
  repo: str = dc.field(validate=_repo_str) # type: ignore
88
89
  rev: str
89
90
  files: lang.SequenceNotStr[str]
90
-
91
-
92
- ##
93
-
94
-
95
- @lang.static_init
96
- def _install_standard_marshaling() -> None:
97
- specs_poly = msh.polymorphism_from_subclasses(Spec, naming=msh.Naming.SNAKE, strip_suffix=True)
98
- msh.install_standard_factories(
99
- msh.PolymorphismMarshalerFactory(specs_poly),
100
- msh.PolymorphismUnmarshalerFactory(specs_poly),
101
- )
@@ -39,7 +39,7 @@ import typing as ta
39
39
  from omlish import check
40
40
  from omlish import marshal as msh
41
41
  from omlish.argparse import all as ap
42
- from omlish.formats import json
42
+ from omlish.formats.json import all as json
43
43
 
44
44
  from .. import intellij as ij
45
45
  from .. import magic
@@ -3,7 +3,7 @@ import os.path
3
3
  import subprocess
4
4
  import typing as ta
5
5
 
6
- from omlish.formats import json
6
+ from omlish.formats.json import all as json
7
7
 
8
8
  from .cmdlog import CmdLog
9
9
 
@@ -291,7 +291,7 @@ class DataclassCodeGen:
291
291
  # Sorted by first cls name for more stable diffs than say sha1
292
292
  for grp in sorted(
293
293
  dumped_by_plan_repr.values(),
294
- key=lambda grp: sorted([(y.mod_name, y.cls_qualname) for y in grp])[0],
294
+ key=lambda grp: sorted([(y.cls_module, y.cls_qualname) for y in grp])[0],
295
295
  ):
296
296
  x = grp[0]
297
297
  pr = x.plan_repr
@@ -335,7 +335,7 @@ class DataclassCodeGen:
335
335
  *[
336
336
  f' {cn!r},'
337
337
  for cn in sorted([
338
- (y.mod_name, y.cls_qualname)
338
+ (y.cls_module, y.cls_qualname)
339
339
  for y in grp
340
340
  ])
341
341
  ],
@@ -100,6 +100,8 @@ class Cli(ap.Cli):
100
100
 
101
101
  ap.arg('-X', '--x11', action='store_true'),
102
102
 
103
+ ap.arg('--inject-secrets', action='append'),
104
+
103
105
  ap.arg('--shift-uid'),
104
106
  ap.arg('-U', '--auto-shift-uid', action='store_true'),
105
107
 
@@ -137,6 +139,8 @@ class Cli(ap.Cli):
137
139
 
138
140
  x11=bool(self.args.x11),
139
141
 
142
+ inject_secrets_pats=self.args.inject_secrets,
143
+
140
144
  shift_uid=shift_uid,
141
145
 
142
146
  unknown_args=self.unknown_args,
@@ -5,3 +5,4 @@ set -g status-fg black
5
5
  set -g history-limit 50000
6
6
  set -g update-environment "DISPLAY"
7
7
  set -sg default-terminal "xterm-256color"
8
+ set -g extended-keys on
@@ -0,0 +1,4 @@
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ curl -fsSL https://pi.dev/install.sh | sh
@@ -44,6 +44,7 @@ exec gosu omlish bash # "$@"
44
44
  """
45
45
  import os.path
46
46
  import platform
47
+ import re
47
48
  import shutil
48
49
  import sys
49
50
  import tempfile
@@ -53,8 +54,10 @@ from omlish import check
53
54
  from omlish import dataclasses as dc
54
55
  from omlish import lang
55
56
  from omlish.os.paths import is_path_in_dir
57
+ from omlish.secrets import all as sec
56
58
 
57
59
  from ..home.paths import get_cache_dir
60
+ from ..home.secrets import load_secrets
58
61
  from .build import build_image
59
62
  from .config import Config
60
63
 
@@ -84,6 +87,9 @@ class RunArgs:
84
87
 
85
88
  no_default_labels: bool = False
86
89
 
90
+ # TODO: k=v? currently hardcodes env key as `sk.upper()`
91
+ inject_secrets_pats: ta.Sequence[str | re.Pattern[str]] | None = None
92
+
87
93
  shift_uid: tuple[int, int] | None = None
88
94
 
89
95
  unknown_args: ta.Sequence[str] | None = None
@@ -93,11 +99,21 @@ class RunArgs:
93
99
  LABEL_PREFIX = 'omlish.dockerdev'
94
100
 
95
101
 
102
+ @dc.dataclass(frozen=True)
103
+ @dc.extra_class_params(default_repr_fn=lang.opt_repr)
104
+ class ProcessedRunArgs:
105
+ args: list[str]
106
+
107
+ _: dc.KW_ONLY
108
+
109
+ env: dict[str, str | sec.Secret] | None = None
110
+
111
+
96
112
  def process_run_args(
97
113
  cfg: Config,
98
114
  args: RunArgs,
99
115
  sha: str,
100
- ) -> list[str]:
116
+ ) -> ProcessedRunArgs:
101
117
  run_args: list[str] = []
102
118
 
103
119
  if args.unknown_args:
@@ -209,6 +225,20 @@ def process_run_args(
209
225
  if not args.no_default_labels:
210
226
  run_args.append(f'--label={LABEL_PREFIX}')
211
227
 
228
+ env: dict[str, str | sec.Secret] = {}
229
+
230
+ if isp_lst := args.inject_secrets_pats:
231
+ secrets = check.isinstance(load_secrets(), sec.IterableSecrets)
232
+
233
+ isp_pats: list[re.Pattern[str]] = [x if isinstance(x, re.Pattern) else re.compile(x) for x in isp_lst]
234
+
235
+ for sk in secrets:
236
+ if any(xp.fullmatch(sk) for xp in isp_pats):
237
+ ek = sk.upper()
238
+ env[ek] = secrets.get(sk)
239
+ run_args.append(f'--env={ek}')
240
+ break
241
+
212
242
  run_args.append(sha)
213
243
 
214
244
  if args.extra_args:
@@ -216,7 +246,10 @@ def process_run_args(
216
246
  else:
217
247
  run_args.append('bash')
218
248
 
219
- return run_args
249
+ return ProcessedRunArgs(
250
+ run_args,
251
+ env=env or None,
252
+ )
220
253
 
221
254
 
222
255
  def run_image(
@@ -233,7 +266,7 @@ def run_image(
233
266
 
234
267
  #
235
268
 
236
- run_args = process_run_args(
269
+ p_args = process_run_args(
237
270
  cfg,
238
271
  args,
239
272
  sha,
@@ -241,9 +274,16 @@ def run_image(
241
274
 
242
275
  #
243
276
 
244
- os.execl(
277
+ os.execle(
245
278
  docker := check.not_none(shutil.which('docker')),
246
279
  docker,
247
280
  'run',
248
- *run_args,
281
+ *p_args.args,
282
+ {
283
+ **os.environ,
284
+ **({
285
+ ek: ev.reveal() if isinstance(ev, sec.Secret) else ev
286
+ for ek, ev in p_args.env.items()
287
+ } if p_args.env else {}),
288
+ },
249
289
  )
@@ -28,7 +28,7 @@ import typing as ta
28
28
 
29
29
  from omlish import check
30
30
  from omlish import marshal as msh
31
- from omlish.formats import json
31
+ from omlish.formats.json import all as json
32
32
  from omlish.http import all as hu
33
33
  from omlish.secrets.secrets import Secret
34
34
 
@@ -86,8 +86,8 @@ def _install_standard_marshaling() -> None:
86
86
  msh.ObjectOptions(
87
87
  fields=dict(
88
88
  marker=msh.FieldOptions(
89
- marshal_as=RequiresMarkerList | None,
90
- unmarshal_as=RequiresMarkerList | None,
89
+ marshal_via=msh.MarshalVia(RequiresMarkerList | None),
90
+ unmarshal_via=msh.UnmarshalVia(RequiresMarkerList | None),
91
91
  ),
92
92
  ),
93
93
  ),
@@ -49,7 +49,7 @@ from omlish import cached
49
49
  from omlish import check
50
50
  from omlish import collections as col
51
51
  from omlish.concurrent import all as conc
52
- from omlish.formats import json
52
+ from omlish.formats.json import all as json
53
53
  from omlish.sync.objectpools import ObjectPool
54
54
 
55
55
 
@@ -684,11 +684,13 @@ def _main() -> None:
684
684
 
685
685
  #
686
686
 
687
+ show_latest = args.show_latest or (args.min_age_h is None)
688
+
687
689
  outdated_pkgs = [
688
690
  pkg
689
691
  for pkg in pkgs
690
- if (li := pkg.latest_candidate) is not None
691
- and li.version > pkg.dist.version
692
+ if (xi := pkg.latest_candidate if show_latest else pkg.suggested_candidate) is not None
693
+ and xi.version > pkg.dist.version
692
694
  ]
693
695
 
694
696
  outdated_pkgs.sort(key=lambda x: x.dist.raw_name)
@@ -706,7 +708,7 @@ def _main() -> None:
706
708
 
707
709
  print('\n'.join(render_package_listing_columns(*format_for_columns(
708
710
  outdated_pkgs,
709
- show_latest=args.show_latest or (args.min_age_h is None),
711
+ show_latest=show_latest,
710
712
  ))))
711
713
 
712
714
 
@@ -24,7 +24,7 @@ from omlish.argparse import all as ap
24
24
  from omlish.concurrent import all as conc
25
25
  from omlish.docker import all as dck
26
26
  from omlish.docker.ns1 import build_docker_ns1_run_cmd
27
- from omlish.formats import json
27
+ from omlish.formats.json import all as json
28
28
  from omlish.formats.yaml import pyyaml
29
29
  from omlish.logs import all as logs
30
30
 
@@ -32,7 +32,7 @@ from omlish import check
32
32
  from omlish import lang
33
33
  from omlish.argparse import all as ap
34
34
  from omlish.configs.processing.merging import merge_configs
35
- from omlish.formats import json
35
+ from omlish.formats.json import all as json
36
36
  from omlish.formats.yaml import all as yaml
37
37
  from omlish.logs import all as logs
38
38
  from omlish.subprocesses.sync import subprocesses
@@ -9,7 +9,7 @@ import typing as ta
9
9
 
10
10
  from omlish import marshal as msh
11
11
  from omlish.argparse import all as ap
12
- from omlish.formats import json
12
+ from omlish.formats.json import all as json
13
13
 
14
14
  from ..cli import CliModule
15
15
  from ..packaging import marshal as _ # noqa
@@ -3,7 +3,7 @@ import typing as ta
3
3
 
4
4
  from omlish import check
5
5
  from omlish.argparse import all as ap
6
- from omlish.formats import json
6
+ from omlish.formats.json import all as json
7
7
 
8
8
  from ..cli.types import CliModule
9
9
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omdev
3
- Version: 0.0.17
3
+ Version: 0.0.18
4
4
  Summary: omdev
5
5
  Author: wrmsr
6
6
  License-Expression: BSD-3-Clause
@@ -14,10 +14,10 @@ Classifier: Programming Language :: Python :: 3.14
14
14
  Requires-Python: >=3.14
15
15
  Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
- Requires-Dist: omlish==0.0.17
17
+ Requires-Dist: omlish==0.0.18
18
18
  Provides-Extra: all
19
- Requires-Dist: ominfra==0.0.17; extra == "all"
20
- Requires-Dist: ommlds==0.0.17; extra == "all"
19
+ Requires-Dist: ominfra==0.0.18; extra == "all"
20
+ Requires-Dist: ommlds==0.0.18; extra == "all"
21
21
  Requires-Dist: black~=26.3; extra == "all"
22
22
  Requires-Dist: pycparser~=3.0; extra == "all"
23
23
  Requires-Dist: pcpp~=1.30; extra == "all"
@@ -33,9 +33,9 @@ Requires-Dist: textual~=8.2; extra == "all"
33
33
  Requires-Dist: textual-dev~=1.8; extra == "all"
34
34
  Requires-Dist: textual-speedups~=0.2; extra == "all"
35
35
  Provides-Extra: ominfra
36
- Requires-Dist: ominfra==0.0.17; extra == "ominfra"
36
+ Requires-Dist: ominfra==0.0.18; extra == "ominfra"
37
37
  Provides-Extra: ommlds
38
- Requires-Dist: ommlds==0.0.17; extra == "ommlds"
38
+ Requires-Dist: ommlds==0.0.18; extra == "ommlds"
39
39
  Provides-Extra: black
40
40
  Requires-Dist: black~=26.3; extra == "black"
41
41
  Provides-Extra: c
@@ -203,6 +203,7 @@ omdev/dockerdev/resources/fragments/workdir.sh
203
203
  omdev/dockerdev/resources/fragments/zig.sh
204
204
  omdev/dockerdev/resources/scripts/install-claude
205
205
  omdev/dockerdev/resources/scripts/install-codex
206
+ omdev/dockerdev/resources/scripts/install-pi
206
207
  omdev/dockerdev/resources/scripts/run-dbus
207
208
  omdev/git/__init__.py
208
209
  omdev/git/magic.py
@@ -342,7 +343,6 @@ omdev/py/docstrings/parser.py
342
343
  omdev/py/docstrings/rest.py
343
344
  omdev/py/scripts/__init__.py
344
345
  omdev/py/scripts/bumpversion.py
345
- omdev/py/scripts/execstat.py
346
346
  omdev/py/scripts/importtrace.py
347
347
  omdev/py/tokens/__init__.py
348
348
  omdev/py/tokens/all.py
@@ -1,8 +1,8 @@
1
- omlish==0.0.17
1
+ omlish==0.0.18
2
2
 
3
3
  [all]
4
- ominfra==0.0.17
5
- ommlds==0.0.17
4
+ ominfra==0.0.18
5
+ ommlds==0.0.18
6
6
  black~=26.3
7
7
  pycparser~=3.0
8
8
  pcpp~=1.30
@@ -35,10 +35,10 @@ pygments~=2.20
35
35
  mypy~=1.20
36
36
 
37
37
  [ominfra]
38
- ominfra==0.0.17
38
+ ominfra==0.0.18
39
39
 
40
40
  [ommlds]
41
- ommlds==0.0.17
41
+ ommlds==0.0.18
42
42
 
43
43
  [prof]
44
44
  gprof2dot~=2025.4
@@ -13,7 +13,7 @@ urls = {source = 'https://github.com/wrmsr/omlish'}
13
13
  license = 'BSD-3-Clause'
14
14
  readme = 'README.md'
15
15
  requires-python = '>=3.14'
16
- version = '0.0.17'
16
+ version = '0.0.18'
17
17
  classifiers = [
18
18
  'Development Status :: 2 - Pre-Alpha',
19
19
  'Intended Audience :: Developers',
@@ -24,13 +24,13 @@ classifiers = [
24
24
  ]
25
25
  description = 'omdev'
26
26
  dependencies = [
27
- 'omlish == 0.0.17',
27
+ 'omlish == 0.0.18',
28
28
  ]
29
29
 
30
30
  [project.optional-dependencies]
31
31
  all = [
32
- 'ominfra == 0.0.17',
33
- 'ommlds == 0.0.17',
32
+ 'ominfra == 0.0.18',
33
+ 'ommlds == 0.0.18',
34
34
  'black ~= 26.3',
35
35
  'pycparser ~= 3.0',
36
36
  'pcpp ~= 1.30',
@@ -47,10 +47,10 @@ all = [
47
47
  'textual-speedups ~= 0.2',
48
48
  ]
49
49
  ominfra = [
50
- 'ominfra == 0.0.17',
50
+ 'ominfra == 0.0.18',
51
51
  ]
52
52
  ommlds = [
53
- 'ommlds == 0.0.17',
53
+ 'ommlds == 0.0.18',
54
54
  ]
55
55
  black = [
56
56
  'black ~= 26.3',