omdev 0.0.0.dev204__tar.gz → 0.0.0.dev206__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (201) hide show
  1. {omdev-0.0.0.dev204/omdev.egg-info → omdev-0.0.0.dev206}/PKG-INFO +2 -2
  2. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/.manifests.json +12 -12
  3. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/__main__.py +1 -1
  4. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/data/cache.py +2 -5
  5. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/data/specs.py +1 -1
  6. omdev-0.0.0.dev206/omdev/cc/__main__.py +11 -0
  7. omdev-0.0.0.dev206/omdev/cc/cli.py +143 -0
  8. omdev-0.0.0.dev204/omdev/git/subtrees.py → omdev-0.0.0.dev206/omdev/git/shallow.py +18 -17
  9. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/resources/python.sh +5 -2
  10. omdev-0.0.0.dev206/omdev/tools/pawk/__init__.py +0 -0
  11. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206/omdev.egg-info}/PKG-INFO +2 -2
  12. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev.egg-info/SOURCES.txt +4 -2
  13. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev.egg-info/requires.txt +1 -1
  14. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/pyproject.toml +2 -2
  15. omdev-0.0.0.dev204/omdev/tools/cc.py +0 -81
  16. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/LICENSE +0 -0
  17. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/MANIFEST.in +0 -0
  18. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/README.rst +0 -0
  19. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/__about__.py +0 -0
  20. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/__init__.py +0 -0
  21. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/__init__.py +0 -0
  22. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/gen.py +0 -0
  23. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/imports.py +0 -0
  24. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/main.py +0 -0
  25. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/manifests.py +0 -0
  26. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/resources.py +0 -0
  27. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/srcfiles.py +0 -0
  28. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/strip.py +0 -0
  29. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/types.py +0 -0
  30. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/amalg/typing.py +0 -0
  31. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/antlr/__init__.py +0 -0
  32. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/antlr/consts.py +0 -0
  33. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/antlr/gen.py +0 -0
  34. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/bracepy.py +0 -0
  35. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/__init__.py +0 -0
  36. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/__init__.py +0 -0
  37. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/cache.py +0 -0
  38. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/contexts.py +0 -0
  39. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/currents.py +0 -0
  40. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/fns.py +0 -0
  41. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/resolvers.py +0 -0
  42. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/storage.py +0 -0
  43. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/compute/types.py +0 -0
  44. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/data/__init__.py +0 -0
  45. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/data/actions.py +0 -0
  46. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/data/consts.py +0 -0
  47. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/data/defaults.py +0 -0
  48. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cache/data/manifests.py +0 -0
  49. {omdev-0.0.0.dev204/omdev/cexts → omdev-0.0.0.dev206/omdev/cc}/__init__.py +0 -0
  50. {omdev-0.0.0.dev204/omdev/clipboard → omdev-0.0.0.dev206/omdev/cexts}/__init__.py +0 -0
  51. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_boilerplate.cc +0 -0
  52. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/LICENSE +0 -0
  53. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/__init__.py +0 -0
  54. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/build_ext.py +0 -0
  55. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
  56. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/compilers/ccompiler.py +0 -0
  57. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/compilers/options.py +0 -0
  58. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/compilers/unixccompiler.py +0 -0
  59. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/dir_util.py +0 -0
  60. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/errors.py +0 -0
  61. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/extension.py +0 -0
  62. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/file_util.py +0 -0
  63. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/modified.py +0 -0
  64. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/spawn.py +0 -0
  65. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/sysconfig.py +0 -0
  66. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/util.py +0 -0
  67. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/_distutils/version.py +0 -0
  68. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/build.py +0 -0
  69. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/cmake.py +0 -0
  70. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/importhook.py +0 -0
  71. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/magic.py +0 -0
  72. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cexts/scan.py +0 -0
  73. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/classdot.py +0 -0
  74. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/__init__.py +0 -0
  75. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/__main__.py +0 -0
  76. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/_pathhack.py +0 -0
  77. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/clicli.py +0 -0
  78. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/install.py +0 -0
  79. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/main.py +0 -0
  80. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/managers.py +0 -0
  81. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cli/types.py +0 -0
  82. {omdev-0.0.0.dev204/omdev/git → omdev-0.0.0.dev206/omdev/clipboard}/__init__.py +0 -0
  83. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/clipboard/clipboard.py +0 -0
  84. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/clipboard/darwin_cf.py +0 -0
  85. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/clipboard/linux_x11.py +0 -0
  86. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/cmake.py +0 -0
  87. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/findimports.py +0 -0
  88. {omdev-0.0.0.dev204/omdev/interp/providers → omdev-0.0.0.dev206/omdev/git}/__init__.py +0 -0
  89. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/git/revisions.py +0 -0
  90. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/git/status.py +0 -0
  91. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/imgur.py +0 -0
  92. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/__init__.py +0 -0
  93. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/__main__.py +0 -0
  94. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/cli.py +0 -0
  95. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/default.py +0 -0
  96. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/inject.py +0 -0
  97. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/inspect.py +0 -0
  98. {omdev-0.0.0.dev204/omdev/interp/pyenv → omdev-0.0.0.dev206/omdev/interp/providers}/__init__.py +0 -0
  99. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/providers/base.py +0 -0
  100. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/providers/inject.py +0 -0
  101. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/providers/running.py +0 -0
  102. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/providers/standalone.py +0 -0
  103. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/providers/system.py +0 -0
  104. {omdev-0.0.0.dev204/omdev/interp/uv → omdev-0.0.0.dev206/omdev/interp/pyenv}/__init__.py +0 -0
  105. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/pyenv/inject.py +0 -0
  106. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/pyenv/install.py +0 -0
  107. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/pyenv/provider.py +0 -0
  108. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/pyenv/pyenv.py +0 -0
  109. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/resolvers.py +0 -0
  110. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/types.py +0 -0
  111. {omdev-0.0.0.dev204/omdev/mypy → omdev-0.0.0.dev206/omdev/interp/uv}/__init__.py +0 -0
  112. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/uv/inject.py +0 -0
  113. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/uv/provider.py +0 -0
  114. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/uv/uv.py +0 -0
  115. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/interp/venvs.py +0 -0
  116. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/magic/__init__.py +0 -0
  117. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/magic/__main__.py +0 -0
  118. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/magic/cli.py +0 -0
  119. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/magic/find.py +0 -0
  120. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/magic/magic.py +0 -0
  121. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/magic/prepare.py +0 -0
  122. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/magic/styles.py +0 -0
  123. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/manifests/__init__.py +0 -0
  124. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/manifests/__main__.py +0 -0
  125. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/manifests/build.py +0 -0
  126. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/manifests/main.py +0 -0
  127. {omdev-0.0.0.dev204/omdev/packaging → omdev-0.0.0.dev206/omdev/mypy}/__init__.py +0 -0
  128. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/mypy/debug.py +0 -0
  129. {omdev-0.0.0.dev204/omdev/precheck → omdev-0.0.0.dev206/omdev/packaging}/__init__.py +0 -0
  130. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/packaging/marshal.py +0 -0
  131. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/packaging/names.py +0 -0
  132. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/packaging/requires.py +0 -0
  133. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/packaging/specifiers.py +0 -0
  134. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/packaging/versions.py +0 -0
  135. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pip.py +0 -0
  136. {omdev-0.0.0.dev204/omdev/ptk/apps → omdev-0.0.0.dev206/omdev/precheck}/__init__.py +0 -0
  137. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/precheck/__main__.py +0 -0
  138. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/precheck/base.py +0 -0
  139. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/precheck/git.py +0 -0
  140. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/precheck/lite.py +0 -0
  141. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/precheck/main.py +0 -0
  142. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/precheck/manifests.py +0 -0
  143. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/precheck/scripts.py +0 -0
  144. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/ptk/__init__.py +0 -0
  145. {omdev-0.0.0.dev204/omdev/pycharm → omdev-0.0.0.dev206/omdev/ptk/apps}/__init__.py +0 -0
  146. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/ptk/apps/ncdu.py +0 -0
  147. {omdev-0.0.0.dev204/omdev/pyproject/resources → omdev-0.0.0.dev206/omdev/pycharm}/__init__.py +0 -0
  148. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pycharm/__main__.py +0 -0
  149. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pycharm/cli.py +0 -0
  150. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/__init__.py +0 -0
  151. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/__main__.py +0 -0
  152. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/cexts.py +0 -0
  153. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/cli.py +0 -0
  154. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/configs.py +0 -0
  155. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/inject.py +0 -0
  156. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/pkg.py +0 -0
  157. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/reqs.py +0 -0
  158. {omdev-0.0.0.dev204/omdev/tools/json → omdev-0.0.0.dev206/omdev/pyproject/resources}/__init__.py +0 -0
  159. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/resources/docker-dev.sh +0 -0
  160. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/pyproject/venvs.py +0 -0
  161. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/revisions.py +0 -0
  162. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/__init__.py +0 -0
  163. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/bumpversion.py +0 -0
  164. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/execrss.py +0 -0
  165. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/exectime.py +0 -0
  166. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/importtrace.py +0 -0
  167. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/interp.py +0 -0
  168. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/pyproject.py +0 -0
  169. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/slowcat.py +0 -0
  170. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/scripts/tmpexec.py +0 -0
  171. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/secrets.py +0 -0
  172. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tagstrings.py +0 -0
  173. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tokens.py +0 -0
  174. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/__init__.py +0 -0
  175. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/cloc.py +0 -0
  176. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/doc.py +0 -0
  177. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/docker.py +0 -0
  178. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/git.py +0 -0
  179. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/importscan.py +0 -0
  180. {omdev-0.0.0.dev204/omdev/tools/pawk → omdev-0.0.0.dev206/omdev/tools/json}/__init__.py +0 -0
  181. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/json/__main__.py +0 -0
  182. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/json/cli.py +0 -0
  183. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/json/formats.py +0 -0
  184. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/json/io.py +0 -0
  185. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/json/parsing.py +0 -0
  186. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/json/processing.py +0 -0
  187. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/json/rendering.py +0 -0
  188. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/linehisto.py +0 -0
  189. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/mkrelimp.py +0 -0
  190. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/notebook.py +0 -0
  191. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/pawk/__main__.py +0 -0
  192. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/pawk/pawk.py +0 -0
  193. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/pip.py +0 -0
  194. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/prof.py +0 -0
  195. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/qr.py +0 -0
  196. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/tools/sqlrepl.py +0 -0
  197. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev/wheelfile.py +0 -0
  198. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev.egg-info/dependency_links.txt +0 -0
  199. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev.egg-info/entry_points.txt +0 -0
  200. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/omdev.egg-info/top_level.txt +0 -0
  201. {omdev-0.0.0.dev204 → omdev-0.0.0.dev206}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: omdev
3
- Version: 0.0.0.dev204
3
+ Version: 0.0.0.dev206
4
4
  Summary: omdev
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -12,7 +12,7 @@ Classifier: Operating System :: OS Independent
12
12
  Classifier: Operating System :: POSIX
13
13
  Requires-Python: >=3.12
14
14
  License-File: LICENSE
15
- Requires-Dist: omlish==0.0.0.dev204
15
+ Requires-Dist: omlish==0.0.0.dev206
16
16
  Provides-Extra: all
17
17
  Requires-Dist: black~=24.10; extra == "all"
18
18
  Requires-Dist: pycparser~=2.22; extra == "all"
@@ -23,6 +23,18 @@
23
23
  }
24
24
  }
25
25
  },
26
+ {
27
+ "module": ".cc.__main__",
28
+ "attr": "_CLI_MODULE",
29
+ "file": "omdev/cc/__main__.py",
30
+ "line": 4,
31
+ "value": {
32
+ "$.cli.types.CliModule": {
33
+ "cmd_name": "cc",
34
+ "mod_name": "omdev.cc.__main__"
35
+ }
36
+ }
37
+ },
26
38
  {
27
39
  "module": ".cexts.cmake",
28
40
  "attr": "_CLI_MODULE",
@@ -227,18 +239,6 @@
227
239
  }
228
240
  }
229
241
  },
230
- {
231
- "module": ".tools.cc",
232
- "attr": "_CLI_MODULE",
233
- "file": "omdev/tools/cc.py",
234
- "line": 76,
235
- "value": {
236
- "$.cli.types.CliModule": {
237
- "cmd_name": "cc",
238
- "mod_name": "omdev.tools.cc"
239
- }
240
- }
241
- },
242
242
  {
243
243
  "module": ".tools.cloc",
244
244
  "attr": "_CLI_MODULE",
@@ -6,6 +6,6 @@ _CLI_MODULE = CliModule('amalg', __name__)
6
6
 
7
7
 
8
8
  if __name__ == '__main__':
9
- from .main import _main
9
+ from .main import _main # noqa
10
10
 
11
11
  _main()
@@ -27,7 +27,7 @@ from omlish import marshal as msh
27
27
  from omlish.formats import json
28
28
  from omlish.os.files import touch
29
29
 
30
- from ...git.subtrees import git_clone_subtree
30
+ from ...git.shallow import git_shallow_clone
31
31
  from .actions import Action
32
32
  from .actions import ExtractAction
33
33
  from .manifests import Manifest
@@ -141,14 +141,11 @@ class Cache:
141
141
  self._fetch_url(url, os.path.join(data_dir, out_file))
142
142
 
143
143
  elif isinstance(spec, GitSpec):
144
- if not spec.subtrees:
145
- raise NotImplementedError
146
-
147
144
  tmp_dir = tempfile.mkdtemp()
148
145
 
149
146
  log.info('Cloning git repo: %s -> %s', spec.url, tmp_dir)
150
147
 
151
- git_clone_subtree(
148
+ git_shallow_clone(
152
149
  base_dir=tmp_dir,
153
150
  repo_url=spec.url,
154
151
  repo_dir='data',
@@ -50,7 +50,7 @@ class GitSpec(Spec):
50
50
  branch: str | None = dc.field(default=None, kw_only=True)
51
51
  rev: str | None = dc.field(default=None, kw_only=True)
52
52
 
53
- subtrees: ta.Sequence[str] = dc.xfield(default=None, kw_only=True, coerce=_maybe_sorted_strs)
53
+ subtrees: ta.Sequence[str] | None = dc.xfield(default=None, kw_only=True, coerce=_maybe_sorted_strs)
54
54
 
55
55
 
56
56
  ##
@@ -0,0 +1,11 @@
1
+ from ..cli import CliModule
2
+
3
+
4
+ # @omlish-manifest
5
+ _CLI_MODULE = CliModule('cc', __name__)
6
+
7
+
8
+ if __name__ == '__main__':
9
+ from .cli import _main # noqa
10
+
11
+ _main()
@@ -0,0 +1,143 @@
1
+ """
2
+ //$(which true); exec om cc run "$0" "$@"
3
+ or
4
+ //usr/bin/true; exec om cc run "$0" "$@"
5
+
6
+ See: https://gist.github.com/jdarpinian/1952a58b823222627cc1a8b83a7aa4e2
7
+
8
+ ==
9
+
10
+ Freestanding options:
11
+
12
+ //usr/bin/env clang++ -std=c++20 -o ${X=`mktemp`} "$0" && exec -a "$0" "$X" "$@"
13
+ //usr/bin/env clang++ -std=c++20 -o ${D=`mktemp -d`}/x "$0" && ${D}/x ${@:1}; R=$?; rm -rf ${D}; exit $R
14
+ //$(which true); clang++ -std=c++20 -o ${D=`mktemp -d`}/x ${0} && ${D}/x ${@:1}; R=${?}; rm -rf ${D}; exit ${R}
15
+
16
+ ==
17
+
18
+ TODO:
19
+ - standard deps - cdeps.toml
20
+ - cext interop
21
+ - gen cmake
22
+ """
23
+ import os
24
+ import shlex
25
+ import shutil
26
+ import subprocess
27
+ import tempfile
28
+ import typing as ta
29
+
30
+ from omlish import check
31
+ from omlish.argparse import all as ap
32
+
33
+ from .. import magic
34
+ from ..cache import data as dcache
35
+
36
+
37
+ class Cli(ap.Cli):
38
+ @ap.cmd(
39
+ ap.arg('--cwd'),
40
+ ap.arg('src-file'),
41
+ ap.arg('args', nargs=ap.REMAINDER),
42
+ )
43
+ def run(self) -> int:
44
+ src_file = self.args.src_file
45
+
46
+ #
47
+
48
+ with open(src_file) as f:
49
+ src = f.read()
50
+
51
+ src_magics = magic.find_magic( # noqa
52
+ magic.C_MAGIC_STYLE,
53
+ src.splitlines(),
54
+ file=src_file,
55
+ preparer=magic.json_magic_preparer,
56
+ )
57
+
58
+ include_dirs: list[str] = []
59
+
60
+ for src_magic in src_magics:
61
+ if src_magic.key == '@omlish-cdeps':
62
+ for dep in check.isinstance(src_magic.prepared, ta.Sequence):
63
+ dep_git = dep['git']
64
+ dep_spec = dcache.GitSpec(
65
+ url=dep_git['url'],
66
+ rev=dep_git['rev'],
67
+ subtrees=dep_git.get('subtrees'),
68
+ )
69
+ dep_dir = dcache.default().get(dep_spec)
70
+ for dep_inc in dep.get('include', []):
71
+ inc_dir = os.path.join(dep_dir, dep_inc)
72
+ check.state(os.path.isdir(inc_dir))
73
+ include_dirs.append(inc_dir)
74
+
75
+ else:
76
+ raise KeyError(src_magic.key)
77
+
78
+ #
79
+
80
+ src_file_name = os.path.basename(src_file)
81
+
82
+ sh_parts: list[str] = [
83
+ 'clang++',
84
+ ]
85
+
86
+ for inc_dir in include_dirs:
87
+ sh_parts.append(f'-I{shlex.quote(inc_dir)}')
88
+
89
+ if cflags := os.environ.get('CFLAGS'):
90
+ sh_parts.append(cflags) # Explicitly shell-unquoted
91
+
92
+ sh_parts.extend([
93
+ '-std=c++20',
94
+ shlex.quote(os.path.abspath(src_file)),
95
+ '-o',
96
+ shlex.quote(src_file_name),
97
+ ])
98
+
99
+ #
100
+
101
+ tmp_dir = tempfile.mkdtemp()
102
+ try:
103
+ proc = subprocess.run( # noqa
104
+ ' '.join(sh_parts),
105
+ cwd=tmp_dir,
106
+ shell=True,
107
+ check=False,
108
+ )
109
+
110
+ if rc := proc.returncode:
111
+ return rc
112
+
113
+ exe_file = os.path.join(tmp_dir, src_file_name)
114
+ check.state(os.path.isfile(exe_file))
115
+
116
+ proc = subprocess.run(
117
+ [
118
+ exe_file,
119
+ *self.args.args,
120
+ ],
121
+ cwd=self.args.cwd,
122
+ check=False,
123
+ )
124
+
125
+ finally:
126
+ shutil.rmtree(tmp_dir)
127
+
128
+ return proc.returncode
129
+
130
+ # @ap.cmd(
131
+ # ap.arg('src-file', nargs='+'),
132
+ # )
133
+ # def add_shebang(self) -> None:
134
+ # # //$(which true); exec om cc run "$0" "$@"
135
+ # print(self.args.src_file)
136
+
137
+
138
+ def _main() -> None:
139
+ Cli().cli_run_and_exit()
140
+
141
+
142
+ if __name__ == '__main__':
143
+ _main()
@@ -8,7 +8,7 @@ from omlish.subprocesses import subprocesses
8
8
 
9
9
 
10
10
  @dc.dataclass(frozen=True)
11
- class GitSubtreeCloner:
11
+ class GitShallowCloner:
12
12
  base_dir: str
13
13
  repo_url: str
14
14
  repo_dir: str
@@ -37,14 +37,14 @@ class GitSubtreeCloner:
37
37
  '-c', 'advice.detachedHead=false',
38
38
  ]
39
39
 
40
- yield GitSubtreeCloner.Command(
40
+ yield GitShallowCloner.Command(
41
41
  cmd=(
42
42
  'git',
43
43
  *git_opts,
44
44
  'clone',
45
45
  '-n',
46
46
  '--depth=1',
47
- '--filter=tree:0',
47
+ *(['--filter=tree:0'] if self.repo_subtrees is not None else []),
48
48
  *(['-b', self.branch] if self.branch else []),
49
49
  '--single-branch',
50
50
  self.repo_url,
@@ -54,19 +54,20 @@ class GitSubtreeCloner:
54
54
  )
55
55
 
56
56
  rd = os.path.join(self.base_dir, self.repo_dir)
57
- yield GitSubtreeCloner.Command(
58
- cmd=(
59
- 'git',
60
- *git_opts,
61
- 'sparse-checkout',
62
- 'set',
63
- '--no-cone',
64
- *(self.repo_subtrees or []),
65
- ),
66
- cwd=rd,
67
- )
57
+ if self.repo_subtrees is not None:
58
+ yield GitShallowCloner.Command(
59
+ cmd=(
60
+ 'git',
61
+ *git_opts,
62
+ 'sparse-checkout',
63
+ 'set',
64
+ '--no-cone',
65
+ *self.repo_subtrees,
66
+ ),
67
+ cwd=rd,
68
+ )
68
69
 
69
- yield GitSubtreeCloner.Command(
70
+ yield GitShallowCloner.Command(
70
71
  cmd=(
71
72
  'git',
72
73
  *git_opts,
@@ -77,7 +78,7 @@ class GitSubtreeCloner:
77
78
  )
78
79
 
79
80
 
80
- def git_clone_subtree(
81
+ def git_shallow_clone(
81
82
  *,
82
83
  base_dir: str,
83
84
  repo_url: str,
@@ -86,7 +87,7 @@ def git_clone_subtree(
86
87
  rev: ta.Optional[str] = None,
87
88
  repo_subtrees: ta.Optional[ta.Sequence[str]] = None,
88
89
  ) -> None:
89
- for cmd in GitSubtreeCloner(
90
+ for cmd in GitShallowCloner(
90
91
  base_dir=base_dir,
91
92
  repo_url=repo_url,
92
93
  repo_dir=repo_dir,
@@ -9,7 +9,10 @@ if [ -z "${VENV}" ] ; then
9
9
  fi
10
10
  fi
11
11
 
12
- SCRIPT_DIR=$(dirname "$0")
12
+ SCRIPT_PATH=$(cd -- "$(dirname -- "$0")" && pwd)
13
+ SCRIPT_PATH="$SCRIPT_PATH/$(basename -- "$0")"
14
+ SCRIPT_DIR=$(dirname "$SCRIPT_PATH")
15
+
13
16
  VENV_PYTHON_PATH="$SCRIPT_DIR/.venvs/$VENV/bin/python"
14
17
  if [ -f "$VENV_PYTHON_PATH" ] ; then
15
18
  PYTHON="$VENV_PYTHON_PATH"
@@ -19,7 +22,7 @@ else
19
22
  PYTHON=python
20
23
  fi
21
24
 
22
- export PYTHONPATH="$PYTHONPATH:."
25
+ export PYTHONPATH="$PYTHONPATH:$SCRIPT_DIR:."
23
26
 
24
27
  if [ $# -eq 0 ] && "$PYTHON" -c "import IPython" 2> /dev/null ; then
25
28
  exec "$PYTHON" -m IPython
File without changes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: omdev
3
- Version: 0.0.0.dev204
3
+ Version: 0.0.0.dev206
4
4
  Summary: omdev
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -12,7 +12,7 @@ Classifier: Operating System :: OS Independent
12
12
  Classifier: Operating System :: POSIX
13
13
  Requires-Python: >=3.12
14
14
  License-File: LICENSE
15
- Requires-Dist: omlish==0.0.0.dev204
15
+ Requires-Dist: omlish==0.0.0.dev206
16
16
  Provides-Extra: all
17
17
  Requires-Dist: black~=24.10; extra == "all"
18
18
  Requires-Dist: pycparser~=2.22; extra == "all"
@@ -52,6 +52,9 @@ omdev/cache/data/consts.py
52
52
  omdev/cache/data/defaults.py
53
53
  omdev/cache/data/manifests.py
54
54
  omdev/cache/data/specs.py
55
+ omdev/cc/__init__.py
56
+ omdev/cc/__main__.py
57
+ omdev/cc/cli.py
55
58
  omdev/cexts/__init__.py
56
59
  omdev/cexts/_boilerplate.cc
57
60
  omdev/cexts/build.py
@@ -89,8 +92,8 @@ omdev/clipboard/darwin_cf.py
89
92
  omdev/clipboard/linux_x11.py
90
93
  omdev/git/__init__.py
91
94
  omdev/git/revisions.py
95
+ omdev/git/shallow.py
92
96
  omdev/git/status.py
93
- omdev/git/subtrees.py
94
97
  omdev/interp/__init__.py
95
98
  omdev/interp/__main__.py
96
99
  omdev/interp/cli.py
@@ -170,7 +173,6 @@ omdev/scripts/pyproject.py
170
173
  omdev/scripts/slowcat.py
171
174
  omdev/scripts/tmpexec.py
172
175
  omdev/tools/__init__.py
173
- omdev/tools/cc.py
174
176
  omdev/tools/cloc.py
175
177
  omdev/tools/doc.py
176
178
  omdev/tools/docker.py
@@ -1,4 +1,4 @@
1
- omlish==0.0.0.dev204
1
+ omlish==0.0.0.dev206
2
2
 
3
3
  [all]
4
4
  black~=24.10
@@ -12,7 +12,7 @@ authors = [
12
12
  urls = {source = 'https://github.com/wrmsr/omlish'}
13
13
  license = {text = 'BSD-3-Clause'}
14
14
  requires-python = '>=3.12'
15
- version = '0.0.0.dev204'
15
+ version = '0.0.0.dev206'
16
16
  classifiers = [
17
17
  'License :: OSI Approved :: BSD License',
18
18
  'Development Status :: 2 - Pre-Alpha',
@@ -22,7 +22,7 @@ classifiers = [
22
22
  ]
23
23
  description = 'omdev'
24
24
  dependencies = [
25
- 'omlish == 0.0.0.dev204',
25
+ 'omlish == 0.0.0.dev206',
26
26
  ]
27
27
 
28
28
  [project.optional-dependencies]
@@ -1,81 +0,0 @@
1
- """
2
- //$(which true); exec om cc run "$0" "$@"
3
- or
4
- //usr/bin/true; exec om cc run "$0" "$@"
5
-
6
- See: https://gist.github.com/jdarpinian/1952a58b823222627cc1a8b83a7aa4e2
7
-
8
- ==
9
-
10
- Freestanding options:
11
-
12
- //usr/bin/env clang++ -std=c++20 -o ${X=`mktemp`} "$0" && exec -a "$0" "$X" "$@"
13
- //usr/bin/env clang++ -std=c++20 -o ${D=`mktemp -d`}/x "$0" && ${D}/x ${@:1}; R=$?; rm -rf ${D}; exit $R
14
- //$(which true); clang++ -std=c++20 -o ${D=`mktemp -d`}/x ${0} && ${D}/x ${@:1}; R=${?}; rm -rf ${D}; exit ${R}
15
- """
16
- import os
17
- import shutil
18
- import subprocess
19
- import tempfile
20
-
21
- from omlish import check
22
- from omlish.argparse import all as ap
23
-
24
- from ..cli import CliModule
25
-
26
-
27
- class Cli(ap.Cli):
28
- @ap.cmd(
29
- ap.arg('src-file'),
30
- ap.arg('args', nargs=ap.REMAINDER),
31
- )
32
- def run(self) -> int:
33
- src_file = self.args.src_file
34
- check.state(os.path.isfile(src_file))
35
-
36
- src_file_name = os.path.basename(src_file)
37
-
38
- tmp_dir = tempfile.mkdtemp()
39
- try:
40
- proc = subprocess.run(
41
- [
42
- check.non_empty_str(shutil.which('clang++')),
43
- '-std=c++20',
44
- os.path.abspath(src_file),
45
- '-o',
46
- src_file_name,
47
- ],
48
- cwd=tmp_dir,
49
- check=False,
50
- )
51
-
52
- if rc := proc.returncode:
53
- return rc
54
-
55
- exe_file = os.path.join(tmp_dir, src_file_name)
56
- check.state(os.path.isfile(exe_file))
57
-
58
- proc = subprocess.run(
59
- [
60
- exe_file,
61
- *self.args.args,
62
- ],
63
- check=False,
64
- )
65
-
66
- finally:
67
- shutil.rmtree(tmp_dir)
68
-
69
- return proc.returncode
70
-
71
-
72
- def _main() -> None:
73
- Cli().cli_run_and_exit()
74
-
75
-
76
- # @omlish-manifest
77
- _CLI_MODULE = CliModule('cc', __name__)
78
-
79
-
80
- if __name__ == '__main__':
81
- _main()
File without changes
File without changes
File without changes