omdev 0.0.0.dev241__tar.gz → 0.0.0.dev242__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.0.dev241/omdev.egg-info → omdev-0.0.0.dev242}/PKG-INFO +2 -2
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/ci.py +28 -3
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/cli.py +4 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/cmds.py +18 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/ci.py +49 -3
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242/omdev.egg-info}/PKG-INFO +2 -2
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev.egg-info/requires.txt +1 -1
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/pyproject.toml +2 -2
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/LICENSE +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/MANIFEST.in +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/README.rst +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/.manifests.json +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/__about__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/gen.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/imports.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/main.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/manifests.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/resources.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/srcfiles.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/strip.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/types.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/amalg/typing.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/antlr/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/antlr/consts.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/antlr/gen.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/bracepy.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/cache.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/contexts.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/currents.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/fns.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/resolvers.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/storage.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/compute/types.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/data/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/data/actions.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/data/cache.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/data/consts.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/data/defaults.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/data/manifests.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cache/data/specs.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cc/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cc/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cc/cdeps.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cc/cdeps.toml +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cc/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_boilerplate.cc +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/LICENSE +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/build_ext.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/compilers/ccompiler.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/compilers/options.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/compilers/unixccompiler.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/dir_util.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/errors.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/extension.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/file_util.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/modified.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/spawn.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/sysconfig.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/util.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/_distutils/version.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/build.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/cmake.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/importhook.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/magic.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cexts/scan.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/cache.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/compose.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/consts.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/buildcaching.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/cache.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/cacheserved/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/cacheserved/cache.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/cacheserved/manifests.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/dataserver.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/imagepulling.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/packing.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/repositories.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/docker/utils.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/api.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/bootstrap.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/cache.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/client.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/env.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/github/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/requirements.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/shell.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ci/utils.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/classdot.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/_pathhack.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/clicli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/install.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/main.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/managers.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cli/types.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/clipboard/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/clipboard/clipboard.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/clipboard/darwin_cf.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/clipboard/linux_x11.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/cmake.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/dataserver/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/dataserver/handlers.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/dataserver/http.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/dataserver/routes.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/dataserver/server.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/dataserver/targets.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/findimports.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/git/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/git/revisions.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/git/shallow.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/git/status.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/home/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/home/paths.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/home/secrets.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/home/shadow.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/imgur.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/default.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/inspect.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/providers/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/providers/base.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/providers/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/providers/running.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/providers/standalone.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/providers/system.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/pyenv/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/pyenv/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/pyenv/install.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/pyenv/provider.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/pyenv/pyenv.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/resolvers.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/types.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/uv/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/uv/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/uv/provider.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/uv/uv.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/interp/venvs.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/magic/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/magic/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/magic/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/magic/find.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/magic/magic.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/magic/prepare.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/magic/styles.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/manifests/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/manifests/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/manifests/build.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/manifests/dumping.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/manifests/main.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/mypy/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/mypy/debug.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/building.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/compression.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/data.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/datarefs.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/dataserver.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/loading.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/media.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/pack/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/pack/packing.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/pack/repositories.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/pack/unpacking.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/repositories.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/oci/tars.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/marshal.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/names.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/requires.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/revisions.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/specifiers.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/versions.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/packaging/wheelfile.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pip.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/base.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/git.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/lite.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/main.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/manifests.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/precheck/scripts.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ptk/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ptk/apps/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/ptk/apps/ncdu.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pycharm/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pycharm/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pycharm/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/cexts.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/configs.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/inject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/pkg.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/reqs.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/resources/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/resources/docker-dev.sh +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/resources/python.sh +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/pyproject/venvs.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/bumpversion.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/execrss.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/exectime.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/importtrace.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/interp.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/pyproject.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/slowcat.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/scripts/tmpexec.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tagstrings.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tokens/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tokens/all.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tokens/tokenizert.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tokens/utils.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/cloc.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/doc.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/docker.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/git/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/git/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/git/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/git/consts.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/git/messages.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/importscan.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/cli.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/formats.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/io.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/parsing.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/processing.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/json/rendering.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/linehisto.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/mkenv.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/mkrelimp.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/notebook.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/pawk/__init__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/pawk/__main__.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/pawk/pawk.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/pip.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/prof.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/qr.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/shadow.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev/tools/sqlrepl.py +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev.egg-info/SOURCES.txt +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev.egg-info/dependency_links.txt +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev.egg-info/entry_points.txt +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/omdev.egg-info/top_level.txt +0 -0
- {omdev-0.0.0.dev241 → omdev-0.0.0.dev242}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: omdev
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev242
|
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.
|
15
|
+
Requires-Dist: omlish==0.0.0.dev242
|
16
16
|
Provides-Extra: all
|
17
17
|
Requires-Dist: black~=25.1; extra == "all"
|
18
18
|
Requires-Dist: pycparser~=2.22; extra == "all"
|
@@ -17,6 +17,7 @@ from .compose import get_compose_service_dependencies
|
|
17
17
|
from .docker.buildcaching import DockerBuildCaching
|
18
18
|
from .docker.cache import DockerCacheKey
|
19
19
|
from .docker.cmds import build_docker_image
|
20
|
+
from .docker.cmds import ensure_docker_image_setup
|
20
21
|
from .docker.imagepulling import DockerImagePulling
|
21
22
|
from .docker.utils import build_docker_file_hash
|
22
23
|
from .requirements import build_requirements_hash
|
@@ -51,6 +52,8 @@ class Ci(AsyncExitStacked):
|
|
51
52
|
|
52
53
|
no_dependencies: bool = False
|
53
54
|
|
55
|
+
setup_only: bool = False
|
56
|
+
|
54
57
|
run_options: ta.Optional[ta.Sequence[str]] = None
|
55
58
|
|
56
59
|
#
|
@@ -174,18 +177,21 @@ class Ci(AsyncExitStacked):
|
|
174
177
|
#
|
175
178
|
|
176
179
|
@cached_nullary
|
177
|
-
def
|
180
|
+
def get_dependency_images(self) -> ta.Sequence[str]:
|
178
181
|
deps = get_compose_service_dependencies(
|
179
182
|
self._config.compose_file,
|
180
183
|
self._config.service,
|
181
184
|
)
|
185
|
+
return sorted(deps.values())
|
182
186
|
|
187
|
+
@cached_nullary
|
188
|
+
def pull_dependencies_funcs(self) -> ta.Sequence[ta.Callable[[], ta.Awaitable]]:
|
183
189
|
return [
|
184
190
|
async_cached_nullary(functools.partial(
|
185
191
|
self._docker_image_pulling.pull_docker_image,
|
186
192
|
dep_image,
|
187
193
|
))
|
188
|
-
for dep_image in
|
194
|
+
for dep_image in self.get_dependency_images()
|
189
195
|
]
|
190
196
|
|
191
197
|
#
|
@@ -233,7 +239,26 @@ class Ci(AsyncExitStacked):
|
|
233
239
|
|
234
240
|
#
|
235
241
|
|
242
|
+
async def _run_setup_only(self) -> None:
|
243
|
+
image_ids = [
|
244
|
+
await self.resolve_ci_image(),
|
245
|
+
|
246
|
+
*(self.get_dependency_images() if not self._config.no_dependencies else []),
|
247
|
+
]
|
248
|
+
|
249
|
+
for image_id in image_ids:
|
250
|
+
with log_timing_context(f'Run setup only: {image_id}'):
|
251
|
+
await ensure_docker_image_setup(
|
252
|
+
image_id,
|
253
|
+
cwd=self._config.project_dir,
|
254
|
+
)
|
255
|
+
|
256
|
+
#
|
257
|
+
|
236
258
|
async def run(self) -> None:
|
237
259
|
await self.setup()
|
238
260
|
|
239
|
-
|
261
|
+
if self._config.setup_only:
|
262
|
+
await self._run_setup_only()
|
263
|
+
else:
|
264
|
+
await self._run_compose()
|
@@ -97,6 +97,8 @@ class CiCli(ArgparseCli):
|
|
97
97
|
|
98
98
|
argparse_arg('--no-dependencies', action='store_true'),
|
99
99
|
|
100
|
+
argparse_arg('--setup-only', action='store_true'),
|
101
|
+
|
100
102
|
argparse_arg('-e', '--env', action='append'),
|
101
103
|
argparse_arg('-v', '--volume', action='append'),
|
102
104
|
|
@@ -211,6 +213,8 @@ class CiCli(ArgparseCli):
|
|
211
213
|
|
212
214
|
no_dependencies=self.args.no_dependencies,
|
213
215
|
|
216
|
+
setup_only=self.args.setup_only,
|
217
|
+
|
214
218
|
run_options=run_options,
|
215
219
|
)
|
216
220
|
|
@@ -123,3 +123,21 @@ async def load_docker_tar(
|
|
123
123
|
tar_file: str,
|
124
124
|
) -> str:
|
125
125
|
return await load_docker_tar_cmd(ShellCmd(f'cat {shlex.quote(tar_file)}'))
|
126
|
+
|
127
|
+
|
128
|
+
##
|
129
|
+
|
130
|
+
|
131
|
+
async def ensure_docker_image_setup(
|
132
|
+
image: str,
|
133
|
+
*,
|
134
|
+
cwd: ta.Optional[str] = None,
|
135
|
+
) -> None:
|
136
|
+
await asyncio_subprocesses.check_call(
|
137
|
+
'docker',
|
138
|
+
'run',
|
139
|
+
'--rm',
|
140
|
+
'--entrypoint', '/bin/true', # FIXME: lol
|
141
|
+
image,
|
142
|
+
**(dict(cwd=cwd) if cwd is not None else {}),
|
143
|
+
)
|
@@ -10983,6 +10983,24 @@ async def load_docker_tar(
|
|
10983
10983
|
return await load_docker_tar_cmd(ShellCmd(f'cat {shlex.quote(tar_file)}'))
|
10984
10984
|
|
10985
10985
|
|
10986
|
+
##
|
10987
|
+
|
10988
|
+
|
10989
|
+
async def ensure_docker_image_setup(
|
10990
|
+
image: str,
|
10991
|
+
*,
|
10992
|
+
cwd: ta.Optional[str] = None,
|
10993
|
+
) -> None:
|
10994
|
+
await asyncio_subprocesses.check_call(
|
10995
|
+
'docker',
|
10996
|
+
'run',
|
10997
|
+
'--rm',
|
10998
|
+
'--entrypoint', '/bin/true', # FIXME: lol
|
10999
|
+
image,
|
11000
|
+
**(dict(cwd=cwd) if cwd is not None else {}),
|
11001
|
+
)
|
11002
|
+
|
11003
|
+
|
10986
11004
|
########################################
|
10987
11005
|
# ../docker/dataserver.py
|
10988
11006
|
|
@@ -11613,6 +11631,8 @@ class Ci(AsyncExitStacked):
|
|
11613
11631
|
|
11614
11632
|
no_dependencies: bool = False
|
11615
11633
|
|
11634
|
+
setup_only: bool = False
|
11635
|
+
|
11616
11636
|
run_options: ta.Optional[ta.Sequence[str]] = None
|
11617
11637
|
|
11618
11638
|
#
|
@@ -11736,18 +11756,21 @@ class Ci(AsyncExitStacked):
|
|
11736
11756
|
#
|
11737
11757
|
|
11738
11758
|
@cached_nullary
|
11739
|
-
def
|
11759
|
+
def get_dependency_images(self) -> ta.Sequence[str]:
|
11740
11760
|
deps = get_compose_service_dependencies(
|
11741
11761
|
self._config.compose_file,
|
11742
11762
|
self._config.service,
|
11743
11763
|
)
|
11764
|
+
return sorted(deps.values())
|
11744
11765
|
|
11766
|
+
@cached_nullary
|
11767
|
+
def pull_dependencies_funcs(self) -> ta.Sequence[ta.Callable[[], ta.Awaitable]]:
|
11745
11768
|
return [
|
11746
11769
|
async_cached_nullary(functools.partial(
|
11747
11770
|
self._docker_image_pulling.pull_docker_image,
|
11748
11771
|
dep_image,
|
11749
11772
|
))
|
11750
|
-
for dep_image in
|
11773
|
+
for dep_image in self.get_dependency_images()
|
11751
11774
|
]
|
11752
11775
|
|
11753
11776
|
#
|
@@ -11795,10 +11818,29 @@ class Ci(AsyncExitStacked):
|
|
11795
11818
|
|
11796
11819
|
#
|
11797
11820
|
|
11821
|
+
async def _run_setup_only(self) -> None:
|
11822
|
+
image_ids = [
|
11823
|
+
await self.resolve_ci_image(),
|
11824
|
+
|
11825
|
+
*(self.get_dependency_images() if not self._config.no_dependencies else []),
|
11826
|
+
]
|
11827
|
+
|
11828
|
+
for image_id in image_ids:
|
11829
|
+
with log_timing_context(f'Run setup only: {image_id}'):
|
11830
|
+
await ensure_docker_image_setup(
|
11831
|
+
image_id,
|
11832
|
+
cwd=self._config.project_dir,
|
11833
|
+
)
|
11834
|
+
|
11835
|
+
#
|
11836
|
+
|
11798
11837
|
async def run(self) -> None:
|
11799
11838
|
await self.setup()
|
11800
11839
|
|
11801
|
-
|
11840
|
+
if self._config.setup_only:
|
11841
|
+
await self._run_setup_only()
|
11842
|
+
else:
|
11843
|
+
await self._run_compose()
|
11802
11844
|
|
11803
11845
|
|
11804
11846
|
########################################
|
@@ -11979,6 +12021,8 @@ class CiCli(ArgparseCli):
|
|
11979
12021
|
|
11980
12022
|
argparse_arg('--no-dependencies', action='store_true'),
|
11981
12023
|
|
12024
|
+
argparse_arg('--setup-only', action='store_true'),
|
12025
|
+
|
11982
12026
|
argparse_arg('-e', '--env', action='append'),
|
11983
12027
|
argparse_arg('-v', '--volume', action='append'),
|
11984
12028
|
|
@@ -12093,6 +12137,8 @@ class CiCli(ArgparseCli):
|
|
12093
12137
|
|
12094
12138
|
no_dependencies=self.args.no_dependencies,
|
12095
12139
|
|
12140
|
+
setup_only=self.args.setup_only,
|
12141
|
+
|
12096
12142
|
run_options=run_options,
|
12097
12143
|
)
|
12098
12144
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: omdev
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev242
|
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.
|
15
|
+
Requires-Dist: omlish==0.0.0.dev242
|
16
16
|
Provides-Extra: all
|
17
17
|
Requires-Dist: black~=25.1; extra == "all"
|
18
18
|
Requires-Dist: pycparser~=2.22; extra == "all"
|
@@ -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.
|
15
|
+
version = '0.0.0.dev242'
|
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.
|
25
|
+
'omlish == 0.0.0.dev242',
|
26
26
|
]
|
27
27
|
|
28
28
|
[project.optional-dependencies]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|