omdev 0.0.27__tar.gz → 0.0.28__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.
- {omdev-0.0.27/omdev.egg-info → omdev-0.0.28}/PKG-INFO +18 -10
- {omdev-0.0.27/omdev → omdev-0.0.28}/README.md +3 -3
- omdev-0.0.27/omdev/.omlish-manifests.json → omdev-0.0.28/omdev/.om-manifests.json +12 -0
- {omdev-0.0.27 → omdev-0.0.28/omdev}/README.md +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/__about__.py +15 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/cli/main.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/gen.py +9 -9
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/imports.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/manifests.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/srcfiles.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/strip.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/typing.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/info.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/sources.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/cache.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/contexts.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/currents.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/fns.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/storage.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/types.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/data/actions.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/data/cache.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/data/defaults.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/data/manifests.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/data/specs.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/darwin/aps.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cc/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cc/cdeps.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cc/cli.py +7 -7
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cc/srclangs.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_boilerplate.cc +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/build_ext.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/compilers/ccompiler.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/compilers/unixccompiler.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/dir_util.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/file_util.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/spawn.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/util.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/build.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/cmake.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/importhook.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/magic.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/scan.py +1 -1
- omdev-0.0.28/omdev/ci/__init__.py +1 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/cache.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/ci.py +7 -7
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/cli.py +8 -8
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/compose.py +8 -8
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/buildcaching.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/cache.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/cacheserved/cache.py +9 -9
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/cacheserved/manifests.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/cmds.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/dataserver.py +10 -10
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/imagepulling.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/inject.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/packing.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/repositories.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/utils.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/clients.py +7 -7
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/v1/api.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/v1/client.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/v2/api.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/v2/azure.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/v2/client.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/cache.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/cli.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/inject.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/inject.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/requirements.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/utils.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/_pathhack.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/clicli.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/install.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/main.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/types.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/clipboard/commands.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/clipboard/platform.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/clipboard/types.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cmake.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cmdlog/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cmdlog/_cmdlog.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cmdlog/cli.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cmdlog/cmdlog.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataclasses/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataclasses/_dumping.py +36 -36
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataclasses/cli.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataclasses/codegen.py +10 -10
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataclasses/dumping.py +15 -15
- omdev-0.0.28/omdev/dataserver/__init__.py +1 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataserver/handlers.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataserver/http.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataserver/routes.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataserver/server.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataserver/targets.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/diffs/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/diffs/cli.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/diffs/parsing.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/diffs/rendering.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/diffs/types.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/build.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/cli.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/config.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/content.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/gen.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/helpers.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/ops.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/rendering.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/run.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/utils.py +1 -1
- omdev-0.0.28/omdev/git/magic.py +5 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/git/revisions.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/git/shallow.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/git/status.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/home/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/home/cli.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/home/paths.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/home/secrets.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/home/shadow.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/imgur.py +7 -7
- {omdev-0.0.27 → omdev-0.0.28}/omdev/intellij/cli.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/intellij/ides.py +1 -1
- omdev-0.0.28/omdev/interp/__init__.py +1 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/cli.py +10 -10
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/default.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/inject.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/inspect.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/providers/base.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/providers/inject.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/providers/running.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/providers/standalone.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/providers/system.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/pyenv/inject.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/pyenv/install.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/pyenv/provider.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/pyenv/pyenv.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/uv/inject.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/uv/provider.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/uv/uv.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/venvs.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/java/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/java/cli.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/java/pomgen.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/java/xml.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/magic/__init__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/magic/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/magic/cli.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/magic/styles.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/manifests/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/manifests/_dumping.py +24 -24
- {omdev-0.0.27 → omdev-0.0.28}/omdev/manifests/building.py +14 -14
- {omdev-0.0.27 → omdev-0.0.28}/omdev/manifests/dumping.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/manifests/main.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/markdown/incparse.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/markdown/tokens.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/marshal.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/names.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/requires.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/revisions.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/specifiers.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/versions.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/wheelfile.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pip.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/base.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/blanklines.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/caches.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/imports.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/lite.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/main.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/manifests.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/scripts.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/unicode.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/asts/parents.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/asts/toplevel.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/asts/visitors.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/attrdocs.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/bracepy.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/classdot.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/findimports.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/scripts/bumpversion.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/scripts/importtrace.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/srcheaders.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tokens/tokenizert.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tools/fixdocstrings.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tools/importscan.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tools/mkrelimp.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tools/pipdepup.py +6 -6
- omdev-0.0.28/omdev/pyproject/__init__.py +1 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/cli.py +11 -11
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/configs.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/inject.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/pkg.py +8 -8
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/reqs.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/tools/aboutdeps.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/tools/buildrs.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/venvs.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/versions.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/ci.py +3386 -3388
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/interp.py +1634 -1634
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/formats/goyaml.py +17 -17
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/inject.py +8 -8
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/io/pipelines.py +49 -49
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/io/streambufs.py +20 -20
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/logs.py +20 -20
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/marshal.py +7 -7
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/pidfiles.py +21 -21
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/pyproject.py +6794 -6794
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/slowcat.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/tmpexec.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/messages/base.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/messages/formats.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/messages/messages.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/messages/parsing.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/numerics/formats.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/numerics/types.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/analysis.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/cli.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/config.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/errors.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/generator.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/ir.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/names.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/rendering.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/transforms.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/building.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/compression.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/data.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/datarefs.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/dataserver.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/loading.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/media.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/pack/packing.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/pack/repositories.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/pack/unpacking.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/repositories.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/tars.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tagstrings.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/cloc.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/diff.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/doc.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/docker.py +11 -11
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/git/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/git/cli.py +11 -11
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/git/cloning.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/git/consts.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/git/messages.py +9 -9
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/cli.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/formats.py +14 -14
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/parsing.py +9 -9
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/processing.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/rendering.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/jsonview/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/jsonview/cli.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/linehisto.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/mkenv.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/notebook.py +3 -3
- omdev-0.0.28/omdev/tools/ocr.py +88 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/pawk/pawk.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/pip.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/prof.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/qr.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/shadow.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/shell.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/sqlrepl.py +6 -6
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/irc/app.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/irc/client.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/irc/commands.py +3 -3
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/irc/main.py +4 -4
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/app.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/markdown/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/__init__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/console2.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/__main__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/_compat.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/cli.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/rendering.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/markdown2.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/textual/__init__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/textual/dark.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/textual/dump.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/textual/themes.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/trirule.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/__init__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/client.py +17 -17
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/previews/colors.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/previews/easing.py +2 -2
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/protocol.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/redirect_output.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/server.py +7 -7
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/service.py +7 -7
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/autocomplete/widget.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/binding2.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/debug/__init__.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/debug/dominfo.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/devtools.py +5 -5
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/drivers2.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/widgets2.py +1 -1
- {omdev-0.0.27 → omdev-0.0.28/omdev.egg-info}/PKG-INFO +18 -10
- {omdev-0.0.27 → omdev-0.0.28}/omdev.egg-info/SOURCES.txt +2 -1
- omdev-0.0.28/omdev.egg-info/entry_points.txt +2 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev.egg-info/requires.txt +15 -5
- {omdev-0.0.27 → omdev-0.0.28}/pyproject.toml +19 -9
- omdev-0.0.27/omdev/ci/__init__.py +0 -1
- omdev-0.0.27/omdev/dataserver/__init__.py +0 -1
- omdev-0.0.27/omdev/git/magic.py +0 -5
- omdev-0.0.27/omdev/interp/__init__.py +0 -1
- omdev-0.0.27/omdev/pyproject/__init__.py +0 -1
- omdev-0.0.27/omdev.egg-info/entry_points.txt +0 -2
- {omdev-0.0.27 → omdev-0.0.28}/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/MANIFEST.in +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/cli/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/resources.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/amalg/gen/types.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/compute/resolvers.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/data/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cache/data/consts.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/darwin/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/darwin/ax.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/darwin/cf.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/darwin/cg.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/linux/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/capi/linux/x11.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cc/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cc/cdeps.toml +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/compilers/options.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/errors.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/extension.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/modified.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/sysconfig.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cexts/_distutils/version.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/__main__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/consts.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/docker/cacheserved/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/v1/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/api/v2/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/bootstrap.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/github/env.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/ci/shell.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/__main__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cli/managers.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/clipboard/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/clipboard/capi/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/clipboard/capi/darwin_cf.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/clipboard/capi/linux_x11.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/cmdlog/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataclasses/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dataclasses/_template.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/diffs/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/config.toml +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/.python-versions.json +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/configs/.gdbinit +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/configs/.sqliterc +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/configs/.tmux.conf +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/configs/.vimrc +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/depsets/python.toml +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/depsets/system.toml +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/depsets/x11.toml +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/apt.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/chgrp.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/docker.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/firefox.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/go.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/jdk.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/man.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/nvm.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/pyenv.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/rbenv.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/rust.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/sshd.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/user.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/uv.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/vcpkg.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/workdir.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/fragments/zig.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/scripts/install-claude +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/scripts/install-codex +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/scripts/install-pi +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/scripts/run-dbus +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/dockerdev/resources/shift-uid.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/git/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/home/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/intellij/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/intellij/open.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/providers/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/pyenv/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/resolvers.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/types.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/interp/uv/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/java/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/java/utils.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/magic/find.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/magic/magic.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/magic/prepare.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/manifests/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/markdown/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/mypy/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/mypy/debug.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/mypy/report.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/packaging/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/precheck/git.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/asts/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/attrdoc.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/common.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/epydoc.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/google.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/numpydoc.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/parser.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/docstrings/rest.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/reprs.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/scripts/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tokens/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tokens/all.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tokens/utils.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py/tools/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/py.typed +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/resources/dockerdev.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/resources/python.sh +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/tools/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/pyproject/tools/pyversions.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/rs/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/formats/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/scripts/lib/io/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/messages/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/numerics/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/numerics/numerics.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/consts.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/errors.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/message.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/nuh.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/parsing.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/rendering.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/tags.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/irc/protocol/utils.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/__main__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/jsonschema/codegen/typing.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/specs/oci/pack/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/git/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/json/io.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/jsonview/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/jsonview/resources/jsonview.css +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/jsonview/resources/jsonview.html.j2 +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/jsonview/resources/jsonview.js +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/pawk/README.md +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/pawk/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tools/pawk/__main__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/edit/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/edit/main.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/irc/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/irc/__main__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/__main__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/cli.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/styles/layout.tcss +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/utils.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/jtree/widgets.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/markdown/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/apps/markdown/cli.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/renderables.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/rich/diff/underlinebar.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/actionmenu.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/previews/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/previews/borders.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/previews/colors.tcss +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/previews/easing.tcss +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/previews/keys.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/renderables.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/tools/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/altdevtools/tools/diagnose.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/app2.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/autocomplete/LICENSE +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/autocomplete/__init__.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/autocomplete/matching.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/autocomplete/paths.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/clipboard.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/debug/screen.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/dom2.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/logging2.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/render2.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/screen2.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev/tui/textual/types.py +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev.egg-info/dependency_links.txt +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/omdev.egg-info/top_level.txt +0 -0
- {omdev-0.0.27 → omdev-0.0.28}/setup.cfg +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: omdev
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.28
|
|
4
4
|
Summary: omdev
|
|
5
5
|
Author: wrmsr
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
7
|
-
Project-URL: source, https://github.com/wrmsr/
|
|
7
|
+
Project-URL: source, https://github.com/wrmsr/omcore
|
|
8
8
|
Classifier: Development Status :: 2 - Pre-Alpha
|
|
9
9
|
Classifier: Intended Audience :: Developers
|
|
10
10
|
Classifier: Operating System :: OS Independent
|
|
@@ -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:
|
|
17
|
+
Requires-Dist: omcore==0.0.28
|
|
18
18
|
Provides-Extra: all
|
|
19
|
-
Requires-Dist: ominfra==0.0.
|
|
20
|
-
Requires-Dist: omllm==0.0.
|
|
19
|
+
Requires-Dist: ominfra==0.0.28; extra == "all"
|
|
20
|
+
Requires-Dist: omllm==0.0.28; extra == "all"
|
|
21
21
|
Requires-Dist: black~=26.5; extra == "all"
|
|
22
22
|
Requires-Dist: pycparser~=3.0; extra == "all"
|
|
23
23
|
Requires-Dist: pcpp~=1.30; extra == "all"
|
|
@@ -26,6 +26,9 @@ Requires-Dist: markdown-it-py~=4.2; extra == "all"
|
|
|
26
26
|
Requires-Dist: mdit-py-plugins~=0.6; extra == "all"
|
|
27
27
|
Requires-Dist: pygments~=2.20; extra == "all"
|
|
28
28
|
Requires-Dist: mypy~=2.3; extra == "all"
|
|
29
|
+
Requires-Dist: pytesseract~=0.3; extra == "all"
|
|
30
|
+
Requires-Dist: rapidocr-onnxruntime~=1.4; extra == "all"
|
|
31
|
+
Requires-Dist: pillow~=12.3; extra == "all"
|
|
29
32
|
Requires-Dist: gprof2dot~=2025.4; extra == "all"
|
|
30
33
|
Requires-Dist: segno~=1.6; extra == "all"
|
|
31
34
|
Requires-Dist: rich~=15.0; extra == "all"
|
|
@@ -33,9 +36,9 @@ Requires-Dist: textual~=8.2; extra == "all"
|
|
|
33
36
|
Requires-Dist: textual-dev~=1.8; extra == "all"
|
|
34
37
|
Requires-Dist: textual-speedups~=0.2; extra == "all"
|
|
35
38
|
Provides-Extra: ominfra
|
|
36
|
-
Requires-Dist: ominfra==0.0.
|
|
39
|
+
Requires-Dist: ominfra==0.0.28; extra == "ominfra"
|
|
37
40
|
Provides-Extra: omllm
|
|
38
|
-
Requires-Dist: omllm==0.0.
|
|
41
|
+
Requires-Dist: omllm==0.0.28; extra == "omllm"
|
|
39
42
|
Provides-Extra: black
|
|
40
43
|
Requires-Dist: black~=26.5; extra == "black"
|
|
41
44
|
Provides-Extra: c
|
|
@@ -48,6 +51,11 @@ Requires-Dist: mdit-py-plugins~=0.6; extra == "doc"
|
|
|
48
51
|
Requires-Dist: pygments~=2.20; extra == "doc"
|
|
49
52
|
Provides-Extra: mypy
|
|
50
53
|
Requires-Dist: mypy~=2.3; extra == "mypy"
|
|
54
|
+
Provides-Extra: ocr
|
|
55
|
+
Requires-Dist: pytesseract~=0.3; extra == "ocr"
|
|
56
|
+
Requires-Dist: rapidocr-onnxruntime~=1.4; extra == "ocr"
|
|
57
|
+
Provides-Extra: pillow
|
|
58
|
+
Requires-Dist: pillow~=12.3; extra == "pillow"
|
|
51
59
|
Provides-Extra: prof
|
|
52
60
|
Requires-Dist: gprof2dot~=2025.4; extra == "prof"
|
|
53
61
|
Provides-Extra: qr
|
|
@@ -87,8 +95,8 @@ Development utilities and support code.
|
|
|
87
95
|
|
|
88
96
|
- **[tools.json](https://github.com/wrmsr/omlish/blob/master/omdev/tools/json)** (cli: `om j`) - a tool for json-like
|
|
89
97
|
data, obviously in the vein of [jq](https://github.com/jqlang/jq) but using the internal
|
|
90
|
-
[jmespath](https://github.com/wrmsr/omlish/blob/master/
|
|
91
|
-
[true streaming](https://github.com/wrmsr/omlish/blob/master/
|
|
98
|
+
[jmespath](https://github.com/wrmsr/omlish/blob/master/omcore/specs/jmespath) engine. supports
|
|
99
|
+
[true streaming](https://github.com/wrmsr/omlish/blob/master/omcore/formats/json/stream) json input and output, as
|
|
92
100
|
well as [various other](https://github.com/wrmsr/omlish/blob/master/omdev/tools/json/formats.py) non-streaming input
|
|
93
101
|
formats.
|
|
94
102
|
|
|
@@ -98,7 +106,7 @@ Development utilities and support code.
|
|
|
98
106
|
# Amalgamation
|
|
99
107
|
|
|
100
108
|
Amalgamation is the process of stitching together multiple python source files into a single self-contained python
|
|
101
|
-
script. ['lite'](https://github.com/wrmsr/omlish/blob/master/
|
|
109
|
+
script. ['lite'](https://github.com/wrmsr/omlish/blob/master/omcore#lite-code) code is written in a style conducive to
|
|
102
110
|
this.
|
|
103
111
|
|
|
104
112
|
# Local storage
|
|
@@ -26,8 +26,8 @@ Development utilities and support code.
|
|
|
26
26
|
|
|
27
27
|
- **[tools.json](https://github.com/wrmsr/omlish/blob/master/omdev/tools/json)** (cli: `om j`) - a tool for json-like
|
|
28
28
|
data, obviously in the vein of [jq](https://github.com/jqlang/jq) but using the internal
|
|
29
|
-
[jmespath](https://github.com/wrmsr/omlish/blob/master/
|
|
30
|
-
[true streaming](https://github.com/wrmsr/omlish/blob/master/
|
|
29
|
+
[jmespath](https://github.com/wrmsr/omlish/blob/master/omcore/specs/jmespath) engine. supports
|
|
30
|
+
[true streaming](https://github.com/wrmsr/omlish/blob/master/omcore/formats/json/stream) json input and output, as
|
|
31
31
|
well as [various other](https://github.com/wrmsr/omlish/blob/master/omdev/tools/json/formats.py) non-streaming input
|
|
32
32
|
formats.
|
|
33
33
|
|
|
@@ -37,7 +37,7 @@ Development utilities and support code.
|
|
|
37
37
|
# Amalgamation
|
|
38
38
|
|
|
39
39
|
Amalgamation is the process of stitching together multiple python source files into a single self-contained python
|
|
40
|
-
script. ['lite'](https://github.com/wrmsr/omlish/blob/master/
|
|
40
|
+
script. ['lite'](https://github.com/wrmsr/omlish/blob/master/omcore#lite-code) code is written in a style conducive to
|
|
41
41
|
this.
|
|
42
42
|
|
|
43
43
|
# Local storage
|
|
@@ -486,6 +486,18 @@
|
|
|
486
486
|
}
|
|
487
487
|
}
|
|
488
488
|
},
|
|
489
|
+
{
|
|
490
|
+
"module": ".tools.ocr",
|
|
491
|
+
"attr": "_CLI_MODULE",
|
|
492
|
+
"file": "omdev/tools/ocr.py",
|
|
493
|
+
"line": 83,
|
|
494
|
+
"value": {
|
|
495
|
+
"!.cli.types.CliModule": {
|
|
496
|
+
"name": "ocr",
|
|
497
|
+
"module": "omdev.tools.ocr"
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
},
|
|
489
501
|
{
|
|
490
502
|
"module": ".tools.pawk.pawk",
|
|
491
503
|
"attr": "_CLI_MODULE",
|
|
@@ -26,8 +26,8 @@ Development utilities and support code.
|
|
|
26
26
|
|
|
27
27
|
- **[tools.json](https://github.com/wrmsr/omlish/blob/master/omdev/tools/json)** (cli: `om j`) - a tool for json-like
|
|
28
28
|
data, obviously in the vein of [jq](https://github.com/jqlang/jq) but using the internal
|
|
29
|
-
[jmespath](https://github.com/wrmsr/omlish/blob/master/
|
|
30
|
-
[true streaming](https://github.com/wrmsr/omlish/blob/master/
|
|
29
|
+
[jmespath](https://github.com/wrmsr/omlish/blob/master/omcore/specs/jmespath) engine. supports
|
|
30
|
+
[true streaming](https://github.com/wrmsr/omlish/blob/master/omcore/formats/json/stream) json input and output, as
|
|
31
31
|
well as [various other](https://github.com/wrmsr/omlish/blob/master/omdev/tools/json/formats.py) non-streaming input
|
|
32
32
|
formats.
|
|
33
33
|
|
|
@@ -37,7 +37,7 @@ Development utilities and support code.
|
|
|
37
37
|
# Amalgamation
|
|
38
38
|
|
|
39
39
|
Amalgamation is the process of stitching together multiple python source files into a single self-contained python
|
|
40
|
-
script. ['lite'](https://github.com/wrmsr/omlish/blob/master/
|
|
40
|
+
script. ['lite'](https://github.com/wrmsr/omlish/blob/master/omcore#lite-code) code is written in a style conducive to
|
|
41
41
|
this.
|
|
42
42
|
|
|
43
43
|
# Local storage
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
from
|
|
2
|
-
from
|
|
3
|
-
from
|
|
1
|
+
from omcore.__about__ import ProjectBase
|
|
2
|
+
from omcore.__about__ import SetuptoolsBase
|
|
3
|
+
from omcore.__about__ import __version__
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
class Project(ProjectBase):
|
|
@@ -8,7 +8,7 @@ class Project(ProjectBase):
|
|
|
8
8
|
description = 'omdev'
|
|
9
9
|
|
|
10
10
|
dependencies = [
|
|
11
|
-
f'
|
|
11
|
+
f'omcore == {__version__}',
|
|
12
12
|
]
|
|
13
13
|
|
|
14
14
|
optional_dependencies = {
|
|
@@ -44,6 +44,16 @@ class Project(ProjectBase):
|
|
|
44
44
|
'mypy ~= 2.3',
|
|
45
45
|
],
|
|
46
46
|
|
|
47
|
+
'ocr': [
|
|
48
|
+
'pytesseract ~= 0.3',
|
|
49
|
+
|
|
50
|
+
'rapidocr-onnxruntime ~= 1.4',
|
|
51
|
+
],
|
|
52
|
+
|
|
53
|
+
'pillow': [
|
|
54
|
+
'pillow ~= 12.3',
|
|
55
|
+
],
|
|
56
|
+
|
|
47
57
|
'prof': [
|
|
48
58
|
'gprof2dot ~= 2025.4',
|
|
49
59
|
],
|
|
@@ -61,7 +71,7 @@ class Project(ProjectBase):
|
|
|
61
71
|
}
|
|
62
72
|
|
|
63
73
|
entry_points = {
|
|
64
|
-
'
|
|
74
|
+
'omcore.manifests': {name: name},
|
|
65
75
|
}
|
|
66
76
|
|
|
67
77
|
cli_scripts = {
|
|
@@ -7,7 +7,7 @@ TODO:
|
|
|
7
7
|
- !! check only importing lite code
|
|
8
8
|
- check no rel impots
|
|
9
9
|
- !! strip manifests? or relegate them to a separate tiny module ala __main__.py?
|
|
10
|
-
- # @
|
|
10
|
+
- # @om-no-amalg ? in cli.types? will strip stmt (more than 1 line) following @manifest, so shouldn't import
|
|
11
11
|
- more sanity checks lol
|
|
12
12
|
- typealias - support # noqa, other comments, and lamely support multiline by just stealing lines till it parses
|
|
13
13
|
- remove `if __name__ == '__main__':` blocks - thus, convention: no def _main() for these
|
|
@@ -31,8 +31,8 @@ import os.path
|
|
|
31
31
|
import stat
|
|
32
32
|
import typing as ta
|
|
33
33
|
|
|
34
|
-
from
|
|
35
|
-
from
|
|
34
|
+
from omcore import check
|
|
35
|
+
from omcore.logs import all as logs
|
|
36
36
|
|
|
37
37
|
from ..gen.gen import SCAN_COMMENT
|
|
38
38
|
from ..gen.gen import AmalgGenerator
|
|
@@ -3,10 +3,10 @@ import os.path
|
|
|
3
3
|
import textwrap
|
|
4
4
|
import typing as ta
|
|
5
5
|
|
|
6
|
-
from
|
|
7
|
-
from
|
|
8
|
-
from
|
|
9
|
-
from
|
|
6
|
+
from omcore import cached
|
|
7
|
+
from omcore import lang
|
|
8
|
+
from omcore.algorithm import all as alg
|
|
9
|
+
from omcore.lite.runtime import LITE_REQUIRED_PYTHON_VERSION
|
|
10
10
|
|
|
11
11
|
from ...git.magic import GIT_DIFF_OMIT_MAGIC
|
|
12
12
|
from ...py.tokens import all as tks
|
|
@@ -28,8 +28,8 @@ RUFF_DISABLES: ta.AbstractSet[str] = {
|
|
|
28
28
|
'UP036', # outdated-version-block
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
OUTPUT_COMMENT = '# @
|
|
32
|
-
SCAN_COMMENT = '# @
|
|
31
|
+
OUTPUT_COMMENT = '# @om-amalg-output '
|
|
32
|
+
SCAN_COMMENT = '# @om-amalg '
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
class AmalgGenerator:
|
|
@@ -94,9 +94,9 @@ class AmalgGenerator:
|
|
|
94
94
|
additional_header_lines = [
|
|
95
95
|
'#!/usr/bin/env python3\n',
|
|
96
96
|
'# noinspection DuplicatedCode\n',
|
|
97
|
-
'# @
|
|
98
|
-
'# @
|
|
99
|
-
'# @
|
|
97
|
+
'# @om-lite\n',
|
|
98
|
+
'# @om-script\n',
|
|
99
|
+
'# @om-generated\n',
|
|
100
100
|
f'{OUTPUT_COMMENT.strip()} {ogf}\n',
|
|
101
101
|
f'# {GIT_DIFF_OMIT_MAGIC}\n',
|
|
102
102
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import ast
|
|
2
2
|
|
|
3
|
-
from
|
|
3
|
+
from omcore import check
|
|
4
4
|
|
|
5
5
|
from ...py.tokens import all as tks
|
|
6
6
|
|
|
@@ -14,7 +14,7 @@ def is_manifest_comment(line: tks.Tokens) -> bool:
|
|
|
14
14
|
|
|
15
15
|
return (
|
|
16
16
|
(ft := line[0]).name == 'COMMENT' and
|
|
17
|
-
ft.src.startswith('# @
|
|
17
|
+
ft.src.startswith('# @om-manifest')
|
|
18
18
|
)
|
|
19
19
|
|
|
20
20
|
|
|
@@ -2,8 +2,8 @@ import dataclasses as dc
|
|
|
2
2
|
import hashlib
|
|
3
3
|
import typing as ta
|
|
4
4
|
|
|
5
|
-
from
|
|
6
|
-
from
|
|
5
|
+
from omcore import collections as col
|
|
6
|
+
from omcore import lang
|
|
7
7
|
|
|
8
8
|
from ...py.tokens import all as tks
|
|
9
9
|
from .imports import Import
|
|
@@ -49,7 +49,7 @@ def drop_amalg_comment_lines(lines: ta.Iterable[tks.Tokens]) -> list[tks.Tokens]
|
|
|
49
49
|
for l in lines:
|
|
50
50
|
cl = list(tks.ignore_ws(l, drop_nl=True, keep=['COMMENT']))
|
|
51
51
|
if len(cl) == 1 and (t := cl[0]).name == 'COMMENT':
|
|
52
|
-
if t.src.split()[1:2] == ['@
|
|
52
|
+
if t.src.split()[1:2] == ['@om-amalg']:
|
|
53
53
|
continue
|
|
54
54
|
out.append(l)
|
|
55
55
|
return out
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import dataclasses as dc
|
|
2
2
|
|
|
3
|
-
from
|
|
3
|
+
from omcore import check
|
|
4
4
|
|
|
5
5
|
from ...py.tokens import all as tks
|
|
6
6
|
|
|
@@ -11,7 +11,7 @@ from ...py.tokens import all as tks
|
|
|
11
11
|
TYPE_ALIAS_COMMENT = '# ta.TypeAlias'
|
|
12
12
|
NOQA_TYPE_ALIAS_COMMENT = TYPE_ALIAS_COMMENT + ' # noqa'
|
|
13
13
|
|
|
14
|
-
NO_MOVE_COMMENT = '#
|
|
14
|
+
NO_MOVE_COMMENT = '# om-amalg-typing-no-move'
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
@dc.dataclass(frozen=True, kw_only=True)
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# ruff: noqa: UP045
|
|
2
|
-
# @
|
|
2
|
+
# @om-lite
|
|
3
3
|
import typing as ta
|
|
4
4
|
|
|
5
|
-
from
|
|
5
|
+
from omcore.lite.cached import cached_nullary
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
##
|
|
@@ -33,7 +33,7 @@ class AmalgSources:
|
|
|
33
33
|
@classmethod
|
|
34
34
|
def is_src_amalg(cls, src: str) -> bool:
|
|
35
35
|
for l in src.splitlines(): # noqa
|
|
36
|
-
if l.startswith('# @
|
|
36
|
+
if l.startswith('# @om-amalg-output '):
|
|
37
37
|
return True
|
|
38
38
|
return False
|
|
39
39
|
|
|
@@ -41,7 +41,7 @@ class AmalgSources:
|
|
|
41
41
|
def is_amalg(self) -> bool:
|
|
42
42
|
return self.is_src_amalg(self.get_src())
|
|
43
43
|
|
|
44
|
-
# TODO: read `@
|
|
44
|
+
# TODO: read `@om-amalg ../scripts/manage.py`, given self._name/self._package, convert to resources path to read
|
|
45
45
|
# @cached_nullary
|
|
46
46
|
# def get_amalg_src(self) -> str:
|
|
47
47
|
# if _is_self_amalg():
|
|
@@ -5,9 +5,9 @@ TODO:
|
|
|
5
5
|
import abc
|
|
6
6
|
import typing as ta
|
|
7
7
|
|
|
8
|
-
from
|
|
9
|
-
from
|
|
10
|
-
from
|
|
8
|
+
from omcore import check
|
|
9
|
+
from omcore import collections as col
|
|
10
|
+
from omcore import lang
|
|
11
11
|
|
|
12
12
|
from .types import CacheKey
|
|
13
13
|
from .types import CacheResult
|
|
@@ -18,10 +18,10 @@ import functools
|
|
|
18
18
|
import importlib
|
|
19
19
|
import typing as ta
|
|
20
20
|
|
|
21
|
-
from
|
|
22
|
-
from
|
|
23
|
-
from
|
|
24
|
-
from
|
|
21
|
+
from omcore import check
|
|
22
|
+
from omcore import collections as col
|
|
23
|
+
from omcore import dataclasses as dc
|
|
24
|
+
from omcore import lang
|
|
25
25
|
|
|
26
26
|
from .contexts import ActiveContext
|
|
27
27
|
from .contexts import PassiveContext
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import abc
|
|
2
2
|
import typing as ta
|
|
3
3
|
|
|
4
|
-
from
|
|
5
|
-
from
|
|
6
|
-
from
|
|
7
|
-
from
|
|
4
|
+
from omcore import cached
|
|
5
|
+
from omcore import collections as col
|
|
6
|
+
from omcore import dataclasses as dc
|
|
7
|
+
from omcore import lang
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
T = ta.TypeVar('T')
|
|
@@ -6,10 +6,10 @@ TODO:
|
|
|
6
6
|
"""
|
|
7
7
|
import typing as ta
|
|
8
8
|
|
|
9
|
-
from
|
|
10
|
-
from
|
|
11
|
-
from
|
|
12
|
-
from
|
|
9
|
+
from omcore import check
|
|
10
|
+
from omcore import dataclasses as dc
|
|
11
|
+
from omcore import lang
|
|
12
|
+
from omcore import marshal as msh
|
|
13
13
|
|
|
14
14
|
from .consts import SERIALIZATION_VERSION
|
|
15
15
|
|
|
@@ -20,12 +20,12 @@ import urllib.error
|
|
|
20
20
|
import urllib.parse
|
|
21
21
|
import urllib.request
|
|
22
22
|
|
|
23
|
-
from
|
|
24
|
-
from
|
|
25
|
-
from
|
|
26
|
-
from
|
|
27
|
-
from
|
|
28
|
-
from
|
|
23
|
+
from omcore import check
|
|
24
|
+
from omcore import lang
|
|
25
|
+
from omcore import marshal as msh
|
|
26
|
+
from omcore.formats.json import all as json
|
|
27
|
+
from omcore.logs import all as logs
|
|
28
|
+
from omcore.os.files import touch
|
|
29
29
|
|
|
30
30
|
from ...git.shallow import git_shallow_clone
|
|
31
31
|
from .actions import Action
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import datetime
|
|
2
2
|
|
|
3
|
-
from
|
|
4
|
-
from
|
|
5
|
-
from
|
|
3
|
+
from omcore import __about__ as about
|
|
4
|
+
from omcore import cached
|
|
5
|
+
from omcore import dataclasses as dc
|
|
6
6
|
|
|
7
7
|
from ...git.revisions import get_git_revision
|
|
8
8
|
from .consts import SERIALIZATION_VERSION
|
|
@@ -5,12 +5,12 @@ import typing as ta
|
|
|
5
5
|
import urllib.parse
|
|
6
6
|
import urllib.request
|
|
7
7
|
|
|
8
|
-
from
|
|
9
|
-
from
|
|
10
|
-
from
|
|
11
|
-
from
|
|
12
|
-
from
|
|
13
|
-
from
|
|
8
|
+
from omcore import cached
|
|
9
|
+
from omcore import check
|
|
10
|
+
from omcore import dataclasses as dc
|
|
11
|
+
from omcore import lang
|
|
12
|
+
from omcore import marshal as msh
|
|
13
|
+
from omcore.formats.json import all as jf
|
|
14
14
|
|
|
15
15
|
from .actions import Action
|
|
16
16
|
from .consts import SERIALIZATION_VERSION
|
|
@@ -2,10 +2,10 @@ import dataclasses as dc
|
|
|
2
2
|
import tomllib
|
|
3
3
|
import typing as ta
|
|
4
4
|
|
|
5
|
-
from
|
|
6
|
-
from
|
|
7
|
-
from
|
|
8
|
-
from
|
|
5
|
+
from omcore import cached
|
|
6
|
+
from omcore import lang
|
|
7
|
+
from omcore import marshal as msh
|
|
8
|
+
from omcore.configs import all as cfgs
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
##
|
|
@@ -36,10 +36,10 @@ import tempfile
|
|
|
36
36
|
import textwrap
|
|
37
37
|
import typing as ta
|
|
38
38
|
|
|
39
|
-
from
|
|
40
|
-
from
|
|
41
|
-
from
|
|
42
|
-
from
|
|
39
|
+
from omcore import check
|
|
40
|
+
from omcore import marshal as msh
|
|
41
|
+
from omcore.argparse import all as ap
|
|
42
|
+
from omcore.formats.json import all as json
|
|
43
43
|
|
|
44
44
|
from .. import intellij as ij
|
|
45
45
|
from .. import magic
|
|
@@ -79,7 +79,7 @@ class Cli(ap.Cli):
|
|
|
79
79
|
include_dirs: list[str] = []
|
|
80
80
|
|
|
81
81
|
for src_magic in src_magics:
|
|
82
|
-
if src_magic.key == '@
|
|
82
|
+
if src_magic.key == '@om-cdeps':
|
|
83
83
|
for dep in check.isinstance(src_magic.prepared, ta.Sequence):
|
|
84
84
|
if isinstance(dep, ta.Mapping):
|
|
85
85
|
dep = process_marshaled_cdep(dep)
|
|
@@ -103,10 +103,10 @@ class Cli(ap.Cli):
|
|
|
103
103
|
check.state(os.path.isdir(inc_dir))
|
|
104
104
|
include_dirs.append(inc_dir)
|
|
105
105
|
|
|
106
|
-
elif src_magic.key == '@
|
|
106
|
+
elif src_magic.key == '@om-llm-author':
|
|
107
107
|
pass
|
|
108
108
|
|
|
109
|
-
elif src_magic.key == '@
|
|
109
|
+
elif src_magic.key == '@om-cext':
|
|
110
110
|
# FIXME: lol - usecase for non-cext bins?
|
|
111
111
|
pass
|
|
112
112
|
|
|
@@ -42,10 +42,10 @@ import site
|
|
|
42
42
|
import sys
|
|
43
43
|
import typing as ta
|
|
44
44
|
|
|
45
|
-
from
|
|
46
|
-
from
|
|
47
|
-
from
|
|
48
|
-
from
|
|
45
|
+
from omcore import cached
|
|
46
|
+
from omcore import check
|
|
47
|
+
from omcore import lang
|
|
48
|
+
from omcore.logs import all as logs
|
|
49
49
|
|
|
50
50
|
from . import compilers
|
|
51
51
|
from . import errors
|